Mtech (Software Engineering)
Mtech (Software Engineering)
FOR
MUKESH Digitally signed by
MUKESH KUMAR
MASTER OF TECHNOLOGY KUMAR PARASHAR
Date: 2023.08.18
PARASHAR 17:36:45 +05'30'
Software Engineering
(2 Year Course)
Paper
Subject L T P Marks(ISA) Marks(ESE) Total Credit
code
SPCT1 Programming in Java
3 0 0 40 60 100 3
SPCT2 Advanced Data Structures
3 0 0 40 60 100 3
Program Elective I
[Link] Learning
SPC1x [Link] oriented SE
3 0 0 40 60 100 3
3. Introduction to Intelligent
Systems
[Link] DBMS
Program Elective II
1. Data Science
SPE2x [Link] Systems
3. Advanced Wireless and Mobile 3 0 0 40 60 100 3
Networks
4. Advanced Software Engineering
MTC01 Research Methodology and IPR 2 0 0 40 60 100 2
MACO1 Audit Course-1 2 0 0 40 60 100 0
SPCL1 Programming in Java Lab
0 0 4 40 60 100 2
SPCL2 Advanced Data Structures Lab
0 0 4 40 60 100 2
Total 800 18
Semester-2
Paper
Subject L T P Marks(ISA) Marks(ESE) Total Credit
code
SPCT3 Advanced algorithm 3 0 0 40 60 100 3
SPCT4 Soft Computing 3 0 0 40 60 100 3
Program Elective III
1. Data Preparation and Analysis
2. Secure Software Design &
SPE3x Enterprise Computing 3 0 0 40 60 100 3
3. Computer Vision
4. Advanced operating system
Program Elective IV
1. Human and Computer
Interaction
SPE4x 3 0 0 40 60 100 3
2. GPU Computing
3. Digital Forensics
4. Component Based SE
MACO2 Audit Course-2 2 0 0 40 60 100 0
MTC02 Mini Project with Seminar 0 0 4 100 0 100 2
SPCL3 Advanced Algorithm Lab 0 0 4 40 60 100 2
SPCL4 Soft Computing Lab 0 0 4 40 60 100 2
Total 800 18
Semester-4
Paper
Subject L T P Marks(ISA) Marks(ESE) Total Credit
code
MTC04 Dissertation Phase-2 0 0 32 500 200 700 16
Total 700 16
Open Elective
MOE01. Business Analytics
MOE02. Industrial Safety
MOE03. Operations Research
MOE04. Cost Management of Engineering Projects
MOE05. Composite Materials
MOE06. Waste to Energy
DETAILED 2-YEAR CURRICULUM CONTENTS
Software Engineering
Course Code: SPCT1 Course Name: Programming in Java
Course Credit: 3 Total Contact Hour: 30hr
Course Objective:
Use an integrated development environment to write, compile, run, and test simple object-oriented Java programs.
Read and make elementary modifications to Java programs that solve real-world problems.
Validate input in a Java program.
Identify and fix defects and common security issues in code.
Course Description:
The fundamentals of Java Programming are taught in this course. The contrast between classical and object-oriented programming
will be examined, with emphasis on the latter. The latest additions to the Java language specification will be additionally covered.
A comparison between C++ and Java will also be discussed, to develop an appreciation of the rationale for the emergence of these
two object-oriented languages
Course Contents:
Unit-I Introduction: Introduction to Java - Features of Java - Object Oriented Concepts - Lexical Issues - Data Types -
Variables - Arrays - Operators - Control Statements.
Unit-II Class: Classes - Objects - Constructors - Overloading method - Access Control- Static and fixed methods - Inner Classes
- String Class - Inheritance - Overriding methods - Using super-Abstractclass.
Unit-III Packages: - Access Protection - Importing Packages - interfaces - Exception Handling - Throw and Throws - Thread -
Synchronization - Messaging - Runnable Interface - Inter thread Communication - Deadlock - Suspending, Resuming and
stopping threads - Multithreading.
Unit-IV I/O Streams: I/O Streams - File Streams - Applets - String Objects - String Buffer - Char Array - Java Utilities - Code
Documentation.
Unit-V Socket Programming: Networks basics - Socket Programming - Proxy Servers - TCP/IP Sockets - Net Address - URL
-Datagrams - Working with windows using AWT Classes - AWT Controls - Layout Managers and Menus.
Summarize the strengths and weaknesses of Java programming and the basic concepts of object-oriented programming.
Identify Java code utilities in applets, Java packages, and classes.
Write Java code using advanced Java features.
Text books:
Cay [Link], Gary Cornell - Core Java 2 Volume I Fundamentals,5th Edn. PHI,2000.
P. Naughton and H. Schildt - Java2 (The Complete Reference) - Third Edition,TMH 1999.
Reference books:
K. Arnold and J. Gosling - The Java Programming Language - Second Edition, Addison Wesley, 1996.
[Link]
Assessment method:(Continuous Internal Assessment = 40% , Final Examination = 60%)
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3(Midexam) - 20%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
The course is intended to provide the foundations of the practical implementation and usage of Algorithms and Data Structures.
Main aim is to ensure that the student evolves into designing and analyzing of advanced algorithms and data structures for
different kinds of problems. The second objective is to expose the student to the advanced algorithm and analysis techniques.
Course Description:
This course builds on the first year Design and Analysis of Algorithm course. It introduces students to a number of highly
efficient algorithm and data structure for fundamentals computational problems across the variety of areas. Students are
also introduced to techniques such as Hashing, Skip Lists, Text Processing and Computational Geometry.
Course Contents:
Hashing: Review of Hashing, Hash Function, Collision Resolution Techniques in Hashing, Separate Chaining, Open Addressing,
Linear Probing, Quadratic Probing, Double Hashing,Rehashing, Extendible Hashing.
Unit 2
Skip Lists: Need for Randomizing Data Structures and Algorithms, Search and Update Operations on Skip Lists,
Probabilistic Analysis of Skip Lists, Deterministic Skip Lists
Unit 3
Trees: Binary Search Trees, AVL Trees, Red Black Trees, 2-3 Trees, B-Trees, Splay Trees
Unit 4
Text Processing: Sting Operations, Brute-Force Pattern Matching, The Boyer-Moore Algorithm, The Knuth-Morris-Pratt
Algorithm, Standard Tries, Compressed Tries, Suffix Tries, The Huffman Coding Algorithm, The Longest Common Subsequence
Problem (LCS), applying dynamic Programming to the LCS Problem.
Unit 5
Computational Geometry: One Dimensional Range Searching, Two Dimensional Range Searching, Constructing a Priority Search
Tree, Searching a Priority Search Tree, Priority Range Trees, Quadtrees, k-D Trees.
Unit 6
Recent Trends in Hashing, Trees, and various computational geometry methods for efficientlysolving the new evolving problem
CLO-1: Able to understand and apply various hashing techniques on different set of data.
CLO-2: Able understand and apply various skip list operations on various data structure elements.
CLO-3: Able to understand and apply various computational geometrical methods like Two Dimensional Range Searching,
Priority Search Tree, Quadtrees, and k-D Trees on various data.
CLO-4: To apply various data storage algorithms on data like, BST, Red Black Tree, and Splay Tree.
Text books:
Reference books:
[Link]
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) - 20%
Assignment-4 - 05%
Assignment-5 - 05%
Course Objective:
⮚ The course aims to provide basic understanding of issues and challenges of Machine Learning. It aims to train
the student to the basic and advanced models and algorithms of the core field of machine learning. This course
also involves understanding of the strengths and weaknesses of many popular machine learning approaches.
Course Description:
⮚ The course covers the basic concepts and techniques of Machine Learning from both theoretical and practical
perspective. The material includes Introduction to machine learning and different types of learning, Linear
Regression, Decision Trees, Instance based learning, Feature Selection, Neural Network, Clustering and Support
Vector Machines. The students will be able to understand almost all algorithms required to develop ML
applications.
Course Contents:
Unit-1: Introduction to machine learning and different types of learning: Brief Introduction to Machine Learning; Definition,
Components of a learning problem, Applications, Choosing a Model Representation, Types of learning: Supervised Learning,
Unsupervised Learning, Semi-supervised learning, Reinforcement Learning, Inductive Learning or Prediction,
Unit-2: Linear Regression and Decision Trees, Instance based learning and Feature Selection: Regression, Types of
Regression Models (Linear Classification, Logistic Regression, Components Regression, Bias – Variance Linear Regression
Multivariate Regression etc), Dimensionality Reduction Subset Selection, Shrinkage Methods, Principle Linear Discriminant
Analysis Optimization, Classification-Separating Hyperplanes Classification, LMS Algorithm, Decision Tree, Over fitting,
Instance- Based Learning, Basic k-nearest neighbor classification, kNN, Euclidean Distance, Feature Reduction in ML, Subset
selection, Feature extraction, PCA
Unit-3: Probability and Bayes Learning, Support Vector Machines, Clustering: Probability for Learning, Bayes Theorem,
MAP Learner, Naïve Bayes, Bayesian Network, Logistic Regression for classification, Support Vector Machines, Unsupervised
learning, Partitioning Algorithms, Hierarchical Clustering, Density based Clustering, K-means algorithm.
Unit-4: Neural Network: Neuron, ANNs, Perceptrons, Gradient Descent, Early models, Back propagation, Initialization,
Training & Validation, Parameter Estimation (Maximum Likelihood Estimation, Bayesian Parameter Estimation) Decision Trees
Evaluation Measures, Hypothesis Testing Ensemble Methods, Graphical, Deep Learning, Deep Neural Network, Hierarchical
Representation, Unsupervised Pre-training, Activation Functions.
Unit-5: Clustering, Gaussian Mixture Models, Spectral Clustering Ensemble Methods Learning Theory, Reinforcement Learning.
⮚ CLO-1: Have a good understanding of the fundamental issues and challenges of machine learning: data, model selection,
model complexity etc,
⮚ CLO-2: Have an understanding of the strength and weaknesses of many popular machine learning approaches.
⮚ CLO-3: Appreciate the underlying mathematical relationship within and across Machine Learning Algorithms and the
paradigm of supervised and un-supervised learning.
⮚ CLO-4: Be able to design various machine learning algorithms in a range of real world applications.
Text books:
[Link]
Assignment-1 - 05%
Assignment-2 - 05%
Assignment-3 - 05%
Assignment-1/Quiz - 05%
Course Objective: Learn new skills in software development which allow you to develop significantly more flexible software.
Acquire a working understanding of AOP through the use of AspectJ. Acquire a clear understanding of the adaptive object-
oriented paradigm through five architectural patterns; Structure-Shy Traversal, Selective Visitor, Structure-Shy Object, Class
Graph and Growth Plan. Apply the aspect-oriented paradigm and the adaptive object-oriented paradigm to problems solving,
including the implementation of a project. Understand the connections between the adaptive object-oriented approach and the
aspect-oriented approach and how they fit into generative programming.
Course Description: This course provides state-of-the-art techniques and concepts for software development with a focus on
proper separation of concerns. We will review the history of software development and encounter different techniques for
separation of concerns like functions and objects. We will identify limitations in current software development practice that lead
to bad separation of concerns. We will touch on general-purpose aspect-oriented techniques (AspectJ) that lead to better
separation of concerns. Then we will identify limitations in those general-purpose techniques and point to special purpose aspect-
oriented techniques. We will use the Demeter Method as an example of a special purpose aspect-oriented technique.
This course introduces both the aspect-oriented and adaptive approach to software development and compares them to other
approaches in the context of Generative Programming. Loose coupling between software artifacts is a theme used throughout the
course. Specifically, we will learn about loose coupling between structure and behavior which leads to adaptiveness. Adaptive
programming views "structure" as an aspect which crosscuts behavior. We will also look at many other aspects such as
synchronization and remote invocation. We will study the basic concepts of aspect-oriented programming (an AOP system has
five key ingredients) and how they relate to the concepts of adaptive programming.
Course Contents:
UNIT 1: Introduction to Aspect Oriented Paradigm, Introduction to Software Architecture, Architecture models - 4+1 views,
Architecture.
UNIT2: Definition Language, Evolution – Model Driven Architecture, Component Based architecture, Service Oriented
Architecture, Event Driven Architecture, Architecture models .
UNIT3: Coding Standards and Guidelines, Code reviews & Walkthroughs, Coding Principles, Code reuse ,Program analysis –
slicing and merging, Correctness proof, Symbolic execution, Formal Verification Software testing objectives and principles,
Verification vs. Validation, Types of testing, Cyclomatic complexity, Test Case Generation, Test tools & Models, Object-oriented
Testing, Model Based testing, Test automation.
UNIT4: Software Quality Assurance and Quality control, Software Process Control, Quality factors, Quality standards – TQM,
ISO, SEI CMM, PCMM, Six sigma, Reliability, Hazard, Availability, Steady State Availability, Estimation of Residual Errors,
Reliability Models.
UNIT5: Software Project Management concepts, Software Project Management Plan, Tools for project plan – WBS, PERT,
GANTT, Project Scheduling & Monitoring, Risk Management, Software Project Complexity, Estimation Metrics –Size Oriented
and Function Point Oriented; Cost Estimation - Algorithmic Cost Modeling, COCOMO Model (including COCOMO II and
advanced COCOMO), Personnel Productivity & team structure [6L]
UNIT6: Software Metrics, Significance, Project, process and product metrics, Halstead’s metrics, OO metrics –Performance
Metrics, Defect Metrics Software maintenance and types, Software reengineering process model; Computer Aided Software
Engineering,, building blocks for CASE, Taxonomy of CASE tools
Text Books
1. Aspect-Oriented Software Development by Robert E. Filman , Tzilla Elrad , Siobhán Clarke , Mehmet Aksit
2. Aspect-Oriented Software Development Ivan Kiselev
Online links for study & reference materials
1. NPTEL
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3(Mid-exam) - 20%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
Demonstrate good knowledge of basic theoretical foundations of the following common intelligent systems methodologies: -
Rule-based systems - Fuzzy inferencing - Artificial neural networks - Evolutionary computation - Data Mining 2 - Case-based
reasoning - Probabilistic reasoning - Intelligent agents
Determine which type of intelligent system methodology would be suitable for a given type of application problem
Demonstrate, in the form of a major project work, the ability to design and develop an intelligent system for a selected
application.
Course Description:
This course introduces students to the field of Artificial Intelligence (AI) with emphasis on its use to solve real world problems for
which solutions are difficult to express using the traditional algorithmic approach. It explores the essential theory behind
methodologies for developing systems that demonstrate intelligent behavior including dealing with uncertainty, learning from
experience and following problem solving strategies found in nature.
Course Contents:
UNITI
(Introduction to AI, Intelligent Agents and Searching) Definition of AI, birth of AI, brief history, Turing test, Types of environment,
Types of agents, PEAS (Performance measure , Environment, Actuators, Sensors), Introduction to searching, State Space, SAGP
(State, Action, Goal test, Path cost), DFS, BFS (Completeness, Time complexity, Space complexity, Optimality), Heuristics, Local
Search Algorithm, Hill [Link] of Artificial Intelligence in real word.
Unit II
(CSP, Game Playing and Logics) Constrain Satisfaction Problems examples, Approaches to solve CSPs, Test and generate method,
back tracking. Game Playing, Optimal decision in games, Min Max algorithm, Evaluation functions, Introduction to Propositional
Logic and First Order Logic, Syntax, Substitution, Unification, Deduction, Soundness, Completeness, Consistency, Satisfiability,
Expert Systems.
Unit III
(Uncertain Knowledge, Reasoning and Machine Learning) Probabilistic Reasoning, Review of Probability Theory, Probabilistic
Inference Rules, Bayes Theorem,examples of Bayes theorem, Introduction to Learning, Taxonomy of Learning Systems,Concept
Learning, Find-S algorithm, Candidate Elimination [Link] to Neural Networks, Biological Neural Networks,
Artificial Neural Networks, Perceptron, Perceptron Learning Rule, Delta Rule,Applications of Neural Networks.
CO1:Understand concepts of Artificial Intelligence and different types of intelligent agents and their architecture.
CO2:Formulate problems as state space search problem & efficiently solve them.
CO3. Understand the working of various informed and uninformed searching algorithms and different heuristics
CO4:Understand concept of knowledge representation i.e. propositional logic, first order logic.
1. Stuart Russell and Peter Norvig – Artificial Intelligence A Modern Approach, PEARSON Education.
Reference Books
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3(Mid-exam) - 20%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
To understand the different issues involved in the design and implementation of a database system.
To study the physical and logical database designs, database modeling, relational, hierarchical, and network models.
To understand and use data manipulation language to query, update, and manage a database
To develop an understanding of essential DBMS concepts such as: database security, integrity, concurrency, distributed
database, and intelligent database, Client/Server (Database Server), Data ware housing.
To design and build a simple database system and demonstrate competence with the fundamental tasks involved with
modeling, designing, and implementing a DBMS.
Course Description:
Focuses on concepts and structures necessary to design and implement a database management system. Various modern data
models, data security and integrity, and concurrency are discussed. An SQL database system is designed and implemented as a
group project.
Course Contents:
Module I Formal review of relational database and FDs Implication, Closure, its correctness
Module II 3NF and BCNF, Decomposition and synthesis approaches, Review of SQL99, Basics of query processing, external
sorting, file scans.
Module III Processing of joins, materialized vs. pipelined processing, query transformation rules, DB transactions, ACID
properties, interleaved executions, schedules, Serializability.
Module IV Correctness of interleaved execution, Locking and management of locks, 2PL, deadlocks, multiple level granularity,
CC on B+ trees, Optimistic CC.
Module V T/O based techniques, Multi version approaches, Comparison of CC methods, dynamic databases, Failure
classification, recovery algorithm, XML and relational databases
CLO1. For a given query write relational algebra expressions for that query and optimize the developed expressions
CLO2. For a given specification of the requirement design the databases using E R method and normalization.
CLO3. For a given specification construct the SQL queries for Open source and Commercial DBMS -MYSQL, ORACLE, and
DB2.
CLO4. For a given query optimize its execution using Query optimization algorithms
CLO5. For a given transaction-processing system, determine the transaction atomicity, consistency, isolation, and durability.
CLO6. Implement the isolation property, including locking, time stamping based on concurrency control and Serializability
of scheduling.
Text books :
1. Abraham Silberschatz, Henry F. Korth, S. Sudarshan, “Database System Concepts” , 6th Edition, McGraw-Hill,
9780078022159, 0078022150.
Reference books :
1 J. D. Ullman, “Principles of Database and Knowledge – Base Systems”, Vol 1, Computer SciencePress,
788175155459, 8175155450
2 R. Elmasri and S. Navathe, “Fundamentals of Database Systems” , 5th Edition, PearsonEducation
9788131716250, 8131716252
3 Serge Abiteboul, Richard Hull, Victor Vianu,Addison-Wesley “Foundations of Databases”, 9780201537710.
Online links for study & reference materials:
[Link]
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
Course Description: Get a solid basis in the informatics and statistical methodology necessary for working within Data
Science.
Course Content:
Unit I Introduction to core concepts and technologies: Introduction, Terminology, data science process, data science toolkit,
Types of data, Example applications.
Unit II Data collection and management: Introduction, Sources of data, Data collection and APIs, Exploring and fixing data, Data
storage and management, using multiple data sources.
Unit III Data analysis: Introduction, Terminology and concepts, Introduction to statistics, Central tendencies and distributions,
Variance, Distribution properties and arithmetic, Samples/CLT, Basic machine learning algorithms, Linear regression, SVM,
Naive Bayes.
Unit IV Data visualisation: Introduction, Types of data visualisation, Data for visualisation: Data types, Data encodings, Retinal
variables, mapping variables to encodings, Visual encodings.
Unit V Applications of Data Science, Technologies for visualisation, Bokeh (Python), recent trends invarious data collection and
analysis techniques, various visualization techniques, application development methods of used in data science.
CLO6: Apply data science concepts and methods to solve problems in real-world contexts and will communicate these solutions
effectively.
Textbooks:
1. Cathy O’Neil, Rachel Schutt, Doing Data Science, Straight Talk from The Frontline. O’Reilly, 2013.
References:
1. Jure Leskovek, Anand Rajaraman, Jeffrey Ullman, Mining of Massive Datasets. v2.1, Cambridge University
Press, 2014.
Online links for study & reference materials:
[Link]
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3(Mid-exam) - 20%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective: To provide hardware and software issues in modern distributed systems.
To get knowledge in distributed architecture, naming, synchronization, consistency and replication, fault tolerance, security, and
distributed file systems.
To analyze the current popular distributed systems such as peer-to-peer (P2P) systems will also be analyzed.
Course Description: This course provides a hands-on the challenges faced in constructing client/server software: partial system
failures, multiple address spaces, absence of a single clock, latency of communication, heterogeneity, absence of a trusted operating
system, system management, binding and naming. Techniques for meeting these challenges: RPC and middleware, naming and
directory services, distributed transaction processing, 'thin' clients, data replication, cryptographic security, mobile code.
Introduction to Java RMI.
Course Contents:
Unit I Characterization of Distributed Systems: Introduction, Examples of distributed Systems, Resource sharing and the Web
Challenges. Architectural models, Fundamental Models. TheoreticalFoundation for Distributed System: Limitation of Distributed
system, absence of global clock,shared memory, Logical clocks, Lamport’s& vectors logical clocks. Concepts in Message
PassingSystems: causal order, total order, total causal order, Techniques for Message Ordering, Causalordering of messages, global
state, termination detection.
Unit II Distributed Mutual Exclusion: Classification of distributed mutual exclusion, requirement ofmutualexclusion theorem,
Token based and non-token-based algorithms, performance metric fordistributed mutual exclusion algorithms. Distributed
Deadlock Detection: system model, resourceVs communication deadlocks, deadlock prevention, avoidance, detection & resolution,
centralizeddead lock detection, distributed dead lock detection, path pushing algorithms, edge chasingalgorithms.
Unit III Agreement Protocols: Introduction, System models, classification of Agreement Problem,Byzantine agreement problem,
Consensus problem, Interactive consistency Problem, Solution toByzantine Agreement problem, Application of Agreement
problem, Atomic Commit in DistributedDatabase system. Distributed Resource Management: Issues in distributed File
Systems,Mechanism for building distributed file systems, Design issues in Distributed Shared Memory,Algorithm for
Implementation of Distributed Shared Memory.
Unit IV Failure Recovery in Distributed Systems: Concepts in Backward and Forward recovery, Recovery in Concurrent systems,
Obtaining consistent Checkpoints, Recovery in Distributed Database [Link] Tolerance: Issues in Fault Tolerance, Commit
Protocols, Voting protocols, Dynamic voting protocols
Unit V Transactions and Concurrency Control: Transactions, Nested transactions, Locks, OptimisticConcurrency control,
Timestamp ordering, Comparison of methods for concurrency [Link] Transactions: Flat and nested distributed
transactions, Atomic Commit protocols, Concurrency control in distributed transactions, Distributed deadlocks, Transaction
recovery. Replication: System model and group communication, Fault - tolerant services, highly available services, Transactions
with replicated data.
CO2: To get knowledge in distributed architecture, naming, synchronization, consistency and replication, fault tolerance, security,
and distributed file systems.
CO3: To analyze the current popular distributed systems such as peer-to-peer (P2P) systems will also be analyzed.
Reference books:
1. Distributed Systems, Principles and Paradigms, Andrew S. Tanenbaum, Maarten Van Steen, 2nd Edition, PHI.
2. Distributed Systems, An Algorithm Approach, Sukumar Ghosh, Chapman&Hall/CRC, Taylor &Fransis Group, 2007.
1. [Link]
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3(Mid-exam) - 20%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective: Signal Processing For Wireless Communication is a course offered to 1st semester [Link] in Wireless
Networks & Applications. It provides an insight into signals and system and their significance in Wireless Communication.A
thorough understanding of digital signal processing fundamentals and techniques is essential for anyone whose work is concerned
with signal processing applications in Wireless Communication. Digital Signal Processing begins with a discussion of the analysis
and representation of discrete-time signal systems, including discrete-time convolution, difference equations, the z-transform, and
the discrete-time Fourier transform. Emphasis is placed on the similarities and distinctions between discrete-time. The course
proceeds to cover digital network and nonrecursive (finite impulse response) digital filters. Digital Signal Processing concludes
with digital filter design and a discussion of the fast Fourier transform algorithm for computation of the discrete Fourier transform.
MATLAB demos and simulation assignments will aid the students to get a deeper understanding about the concept of Signal
Processing in Wireless Communication.
Course Content:
UNIT -I The Cellular Concept-System Design Fundamentals: Introduction, Frequency Reuse, Channel Assignment Strategies,
Handoff Strategies- Prioritizing Handoffs, Practical Handoff Considerations, Interference and system capacity – Co channel
Interference and system capacity, Channel planning for Wireless Systems, Adjacent Channel interference, Power Control for
Reducing interference, Trunking and Grade of Service, Improving Coverage & Capacity in Cellular Systems- Cell Splitting,
Sectoring.
UNIT –II Mobile Radio Propagation: Large-Scale Path Loss: Introduction to Radio Wave Propagation, Free Space Propagation
Model, Relating Power to Electric Field, The Three Basic Propagation Mechanisms, Reflection-Reflection from Dielectrics,
Brewster Angle, Reflection from prefect conductors, Ground Reflection (Two-Ray) Model, Diffraction-Fresnel Zone Geometry,
Knife-edge Diffraction Model, Multiple knife-edge Diffraction, Scattering, Outdoor Propagation Models- LongleyRyce Model,
Okumura Model, Hata Model, PCS Extension to Hata Model, Walfisch and Bertoni Model, Wideband PCS Microcell Model,
Indoor Propagation Models-Partition losses (Same Floor), Partition losses between Floors, Log-distance path loss model, Ericsson
Multiple Breakpoint Model, Attenuation Factor Model, Signal penetration into buildings, Ray Tracing and Site Specific
Modeling.
UNIT –III Mobile Radio Propagation: Small –Scale Fading and Multipath: Small Scale Multipath propagation-Factors
influencing small scale fading, Doppler shift, Impulse Response Model of a multipath channel- Relationship between Bandwidth
and Received power, Small-Scale Multipath Measurements-Direct RF Pulse System, Spread Spectrum Sliding Correlator Channel
Sounding, Frequency Domain Channels Sounding, Parameters of Mobile Multipath Channels-Time Dispersion Parameters,
Coherence Bandwidth, Doppler Spread and Coherence Time, Types of Small-Scale Fading-Fading effects Due to Multipath Time
Delay Spread, Flat fading, Frequency selective fading, Fading effects Due to Doppler Spread-Fast fading, slow fading, Statistical
Models for multipath Fading Channels-Clarke’s model for flat fading, spectral shape due to Doppler spread in Clarke’s model,
Simulation of Clarke and Gans Fading Model, Level crossing and fading statistics, Two-ray Rayleigh Fading Model.
UNIT -IV Equalization and Diversity: Introduction, Fundamentals of Equalization, Training A Generic Adaptive Equalizer,
Equalizers in a communication Receiver, Linear Equalizers, Nonlinear Equalization- Decision Feedback Equalization (DFE),
Maximum Likelihood Sequence Estimation (MLSE) Equalizer, Algorithms for adaptive equalization-Zero Forcing Algorithm,
Least Mean Square Algorithm, Recursive least squares algorithm. Diversity Techniques-Derivation of selection Diversity
improvement, Derivation of Maximal Ratio Combining improvement, Practical Space Diversity Consideration-Selection
Diversity, Feedback or Scanning Diversity, Maximal Ratio Combining, Equal Gain Combining, Polarization Diversity, Frequency
Diversity, Time Diversity, RAKE Receiver.
UNIT -V Wireless Networks: Introduction to wireless Networks, Advantages and disadvantages of Wireless Local Area
Networks, WLAN Topologies, WLAN Standard IEEE 802.11, IEEE 802.11 Medium Access Control, Comparison of IEEE
802.11 a,b,g and n standards, IEEE 802.16 and its enhancements, Wireless PANs, Hiper Lan, WLL.
TEXT BOOKS
1. Wireless Communications, Principles, Practice – Theodore, S. Rappaport, 2nd Ed., 2002, PHI.
2. Wireless Communications-Andrea Goldsmith, 2005 Cambridge University Press.
3. Principles of Wireless Networks – Kaveh Pah Laven and P. Krishna Murthy, 2002, PE
4. 4. Mobile Cellular Communication – Gottapu Sasibhushana Rao, Pearson Education, 2012
REFERENCES:
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) - 20%
Assignment-4 - 05%
Assignment-5/Quiz - 05%
Course Objective:
To provide an advanced understanding and knowledge of the software engineering techniques, techniques to collect
software requirements from client, testing , design and CASE tools and to understand the importance of these case tools
in software development
Course Description:
The course introduces advanced concepts in advanced software engineering including Introduction, Software
Requirement Specification, Architecture and Design, Testing and CASE study. Not only do they form basic models of
computation, they are also the foundation of many branches of computer science.
Course Contents:
UNIT-1 Introduction: Software engineering concepts – Development activities – Software lifecycle models - Classical waterfall -
Iterative waterfall – Prototyping – Evolutionary - Spiral – Software project management – Project planning – Estimation –
Scheduling – Risk management – Software configuration management.
UNIT-2:Software Requirement Specification: Requirement analysis and specification – Requirements gathering and analysis –
Software Requirement Specification – Formal system specification – Finite State Machines – Petrinets – Object modelling using
UML – Use case Model – Class diagrams – Interaction diagrams – Activity diagrams – State chart diagrams – Functional
modelling – Data Flow Diagram.
UNIT-3 Architecture and Design: Software design – Design process – Design concepts – Coupling – Cohesion – Functional
independence – Design patterns – Model-view-controller – Publish-subscribe – Adapter – Command – Strategy – Observer –
Proxy – Facade – Architectural styles – Layered - Client- server - Tiered - Pipe and filter.- User interface design.
UNIT-4: Testing: Testing – Unit testing – Black box testing– White box testing – Integration and System testing– Regression
testing – Debugging - Program analysis – Symbolic execution – Model Checking.
UNIT-5: DEVOPS: DevOps: Motivation-Cloud as a platform-Operations- Deployment Pipeline: Overall Architecture - Building
and Testing-Deployment- Case study: Migrating to Micro services.
Text books:
Reference books:
M. Dyer, The Cleanroon Approach to Quality Software Development, Wiley.
Prowell, S., Trammell, C.J. and Poore, J.H, Cleanroom Software Engineering: Technology and Process, Addison-
Wesley.
Online links for study & reference materials:
1. [Link]
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) - 20%
Assignment-4 - 05%
Assignment-5/Quiz - 05%
Course Objective :
Course Description:
This course emphasizes on the fundamental of research. The student first taught about research formulation and then what are the
research designs needed according to research formulation. To understand and formulate the research problem the student should
be aware of the aspect of effective literature review and the sources of [Link] be taken to conduct literature review.
Students are exposed to application of research design through which they understand that how, when and which design is
[Link] concurrence with this , the analysis part will be taught. Finally concepts related to patents, trademark and copyright
will be taught.
Course Content:
UNIT 1: Meaning of research problem, sources of research problem, characteristics of good research problem, errors in selecting
a research problem, scope and objectives of research problem. Appraches of investigation of solutions for research problem, data
collection, analysis, interpretation. Necessary instrumentation
UNIT 2: Effective literature studies approaches, analysis, plagiarism and research ethics
UNIT-3 Effective technical writing, how to write report, paper Developing a Research Proposal, Format of research proposal, a
presentation and assessment by a review committee
UNIT -4 Nature of Intellectual property; patents, designs, trade and copyright. Process of patenting and development:
technological research, innovation, patenting, development, International Scenario; International cooperation on Intellectual
Property. Procedure for grants of patents, patenting under PCT.
UNIT-5 Patent Rights; Scope of Patents Rights, Licensing and transfer of technology; Patent information and databases,
geographical Indications.
UNIT-6 New development in IPR, Administrationof patent system, New developments in IPR, IPR of Biological system,
Computer software etc. Traditional knowledge case studies, IPR and IITs.
Text books:
Stuart Melville and Wayne Goddard,’’ Research methodology: an introduction for science and engineering student’’
Wayne Goddard and Stuart Melville, ‘’ Research Methodology: An Introduction’’
Reference books:
1. [Link]
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3(Midexam) - 20%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
Course Description:
The course is an appropriate combination of theoretical and industry specific contents on values and works ethics aimed
at developing students into professionals. The course enables students learn concepts related to values and description of
different types of values like individual values, social values, organizational values, etc. The course emphasizes on significance
of cultivation of individual values that are essential in a personality and lists out various individual values to be imbibed in a
student preparing for professional world. The course also describes various practical aspects of value education like managing
good health, self-control, science of reincarnation, religious tolerance and role of women, which are pre-requisites for
good moral character and competence.
Unit-1: Values and Self-development, Social Values and Individual attitudes, work ethics and Indian vision of humanism,
moral and non-moral valuation, standards and principles, valuejudgments,
Unit-2: Importance of cultivation of values, sense of duty, devotion, self-reliance, confidence, concentration, truthfulness,
cleanlinesss, honesty, humanity, power of faith, national unity, patriotism, love for nature, discipline.
Unit-3: Personality and Behaviour Development, soul and scientific attitude, positive thinking, integrity and discipline,
punctuality, love and kindness, avoid fault thinking, freedom from anger, dignity of labour, universal brotherhood, religious
tolerance, true friendship, happiness vs suffering, love for truth, aware of self-destructive habits, association and cooperation,
doing best for saving nature.
Unit-4: Character and Competence, holy book vs blind faith, self-management and good health, science of reincarnation,
equality, non-violence, humility, role of women, all religions and same message, mind your self, self-control, honesty, studying
effectively
Text books:
1. Indrani Majhi, Ganesh Das, VALUE EDUCATION, 1, 2017, Laxmi Publications Pvt Ltd, ISBN: 9789352741120,
9352741129
2. Sharma Sandeep, Encyclopedia of Indian Ethos and Values in Management, Anmol Publications Pvt Ltd, ISBN:
9788126139187, 9788126139187
Reference books:
1. UN-HABITAT, Human Values And Ethics In Workplace: Improving Leadership And Performance In The Water
Education, Water Supply And Sanitation Sector, 2006, United Nations Human Settlements Programme (UN-
HABITAT)
2. Ganesh A. Gayatri, Values Attitude and Practices, Publisher: Discovery Publishing Pvt. Ltd, ISBN: 9789350561287,
9789350561287
3. Atkinson Camille E., Women, Ethics and the Workplace, ABC-CLIO, ISBN: 9780275960919,9780275960919
4. Green Connie Ragen, Rethinking the Work Ethic, Hunter's Moon Publishing, ISBN: 9781937988333,
9781937988333
1. [Link]
2. [Link]
3. [Link]
4. [Link]
5. [Link]
List of Experiments
11. Create text area, Button, Scrollbar & Menu using AWT.
2. WAP IN C for AVL Tree to implement following operations: (For nodes as integers)
Create a node
Right Rotate
Left Rotate
Get the balance factor
Insert Node
Delete a node
Update a balance factor
Print the tree
3. WAP in python to perform string matching using Rabin-Karp algorithm.
4. WAP to perform string matching using Knuth-Morris-Pratt algorithm.
7. Write Python Program to Count the Number of Characters in a string using dictionaries. Display the
Keys and their values in alphabetical order.
8. Write Python program to generate a dictionary that contains (i: i*i). Such that i is a number ranging
from 1 to n.
Course Objective:
Course Description:
This course is concerned with the study of algorithms for solving practical problems efficiently, and the theoretical analysis of
their behavior. There will also be a brief introduction to complexity theory, the formal study of algorithm performance. A large
variety of algorithms are candidates for study. These include, but are not limited to, the following: greedy algorithms, dynamic
programming, network flow algorithms, algorithms for string matching, parallel algorithms, graph algorithms and approximation
algorithms.
Course Contents:
Unit-I
Unit-II
Matroids: Introduction to greedy paradigm, algorithm to compute a maximum weight maximal independent set. Application to
MST.
Graph Matching: Algorithm to compute maximum matching. Characterization of maximum matching by augmenting paths,
Edmond's Blossom algorithm to compute augmenting path.
Unit-III
Flow-Networks: Maxflow-mincut theorem, Ford-Fulkerson Method to compute maximum flow, Edmond-Karp maximum-flow
algorithm.
Matrix Computations: Strassen's algorithm and introduction to divide and conquer paradigm, inverse of a triangular matrix,
relation between the time complexities of basic matrix operations,LUP-decomposition
Unit-IV
Shortest Path in Graphs: Floyd-Warshall algorithm and introduction to dynamic programming paradigm. More examples of
dynamic programming.
Modulo Representation of integers/polynomials: Chinese Remainder Theorem, Conversion between base-representation and
modulo-representation. Extension to polynomials. Application:Interpolation problem.
Discrete Fourier Transform (DFT): In complex field, DFT in modulo ring. Fast Fourier Transform algorithm. Schonhage-
Strassen Integer Multiplication algorithm
Unit-V
Unit-VI
Recent Trands in problem solving paradigms using recent searching and sorting techniques by applying recently proposed
data structures.
Text books:
Dasgupta, Sanjoy, Christos Papadimitriou, and Umesh Vazirani. Algorithms. McGraw-Hill, 2006. ISBN:
9780073523408.
Kleinberg, Jon, and Eva Tardos. Algorithm Design. Addison-Wesley, 2005. ISBN: 9780321295354.
Reference books:
Even, Shimon. Graph Algorithms. Computer Science Press, 1979. ISBN: 9780914894216.
[Link]
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3(Midexam) - 20%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
The primary objective of this course is to provide an introduction to the basic principles, techniques, and applications of
soft computing.
Upon successful completion of the course, students will have an understanding of the basic areas of Soft Computing
including Artificial Neural Networks, Fuzzy Logic, Genetic Algorithms and Deep Learning.
Provide the mathematical background for carrying out the optimization associated with neural network learning.
Course Description:
The course introduces fundamental concepts in Soft Computing including Artificial Neural Networks, Fuzzy Logic,
Genetic Algorithms and Deep Learning. The properties of these concepts will be studied and various rigorous techniques
for analyzing and comparing them will be discussed and implemented by using Python and MATLAB.
Course Contents:
Unit-1 INTRODUCTION TO SOFT COMPUTING AND NEURAL NETWORKS: Evolution of Computing: Soft Computing
Constituents, From Conventional AI to Computational Intelligence: Machine Learning Basics.
Unit-2 FUZZY LOGIC: Fuzzy Sets, Operations on Fuzzy Sets, Fuzzy Relations, Membership Functions: Fuzzy Rules and Fuzzy
Reasoning, Fuzzy Inference Systems, Fuzzy Expert Systems,Fuzzy Decision Making.
Unit-3 NEURAL NETWORKS: Machine Learning Using Neural Network, Adaptive Networks, Feed forward Networks,
Supervised Learning Neural Networks, Radial Basis Function Networks : Reinforcement Learning, Unsupervised Learning Neural
Networks, Adaptive Resonance architectures, Advances in Neural networks.
Unit-4 GENETIC ALGORITHMS: Introduction to Genetic Algorithms (GA), Applications of GA in Machine Learning : Machine
Learning Approach to Knowledge Acquisition.
Unit-5 Matlab/Python Lib: Introduction to Matlab/Python, Arrays and array operations, Functions and Files, Study of neural
network toolbox and fuzzy logic toolbox, Simple implementation of Artificial Neural Network and Fuzzy Logic.
Unit-6 Recent Trends in deep learning, various classifiers, neural networks and genetic algorithm. Implementation of recently
proposed soft computing techniques.
Course Learning Outcomes (CLOs) :
CLO-1: Describe human intelligence and AI Explain how intelligent system works.
CLO-2: Apply basics of Fuzzy logic and neural networks.
CLO-3 : Discuss the ideas of fuzzy sets, fuzzy logic and use of heuristics based on human experience
CLO-4 : Relate with neural networks that can learn from available examples and generalize to form appropriate rules for
inference systems
CLO-5: Implement Fuzzy logic and ANN methods using Python/MATLAB.
Text books:
[Link], [Link] and [Link], “Neuro-Fuzzy and Soft Computing”, Pearson Education.
Simon O. Haykin “Artificial Neural Network”, PHI.
Elaine Rich, Kevin Knight, Artificial Intelligence, TMH.
Reference books:
[Link]
Assessment method: (Continuous Internal Assessment = 40%, Final Examination = 60%)
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) - 20%
Assignment-4 - 05%
Assignment-5/Quiz - 05%
Course Objective:
Recognize the relative impact of data quality and size to algorithms.
Set informed and realistic expectations for the time to transform the data.
Explain a typical process for data collection and transformation within the overall ML workflow.
Collect raw data and construct a data set.
Sample and split your data set with considerations for imbalanced data.
Transform numerical and categorical data.
Course Contents:
Unit I : Data Gathering and Preparation: Data formats, parsing and transformation, Scalability andreal-time issues.
Unit II : Data Cleaning: Consistency checking, Heterogeneous and missing data, Data Transformationand segmentation.
Unit III: Exploratory Analysis: Descriptive and comparative statistics, Clustering and association,Hypothesis generation.
UnitIV : Visualization: Designing visualizations, Time series, Geolocated data, Correlations and connections, Hierarchies and
networks, interactivity.
CLO1: Engage in continuous reflective learning in the context of technology and scientific advancement.
CLO3: Enhance research culture and uphold the scientific integrity and objectivity
CLO5: Understand the importance and the judicious use of technology for the sustainability of the environment
Text books:
1. Glenn J. Myatt, Making sense of Data: A practical Guide to Exploratory Data Analysis and Data Mining, John Wiley
Publishers, 2007.
1. NPTEL
Assessment method: (Continuous Internal Assessment = 40%, Final Examination = 60%)
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) - 20%
Assignment-4 - 05%
Assignment-5/Quiz - 05%
Course Objective: Students will learn that how the security aspects of software development are embedded into the system to be
developed. It includes secure architecture design, secure coding, secure deployment and secure software development
methodologies.
Course Contents:
Unit-I Secure Software Design: Identify software vulnerabilities and perform software security analysis, Master security
programming practices, Master fundamental software security design concepts, Perform security testing and quality assurance.
Unit –II Enterprise Application Development: Describe the nature and scope of enterprise software applications, Design
distributed N-tier software application, Business and data tiers of an enterprise software application, Design and build a database
using an enterprise database system, Present software solution.
Unit –III Enterprise Network Management: Obtain the ability to manage and troubleshoot a network running multiple services,
Understand the requirements of an enterprise network and how to go about managing them, Handle insecure exceptions and
command/SQL injection, Defend web and mobile applications against attackers, software containing minimum Vulnerabilities and
flaws.
Unit –IV Enterprise Systems Administration: Design, implement and maintain a directorybased server infrastructure in a
heterogeneous systems environment, Monitor server resource utilization for system reliability and availability, Install and
administer network services (DNS/DHCP/Terminal Services/Clustering/Web/Email).
Unit –V Software Security in Business Enterprise: Identification and authentication, Enterprise Information Security, Symmetric
and asymmetric cryptography, Access control models, Kerberos protocol, Protocols specially designed for e-commerce and web
applications, firewalls and VPNs. Management issues, technologies, and systems related to information security management at
enterprises.
Unit –VI Case Studies: Case study of DNS server, Case study on DHCP configuration and Case study on SQL injection attack,
Case study on Terminal services.
Text books:
1. Theodor Richardson, Charles N Thies, Secure Software Design, Jones & Bartlett
2. Kenneth R. van Wyk, Mark G. Graff, Dan S. Peters, Diana L. Burley, Enterprise Software Security, Addison Wesley
3. W. Stallings, Cryptography and network security: Principles and practice, Prentice Hall.
Reference books:
1. C. P. Pfleeger, S. L. Pfleeger, Security in Computing, Prentice Hall
2. Gary McGraw, Software Security: Building Security In, Addison-Wesley
Online links for study & reference materials:
1. NPTEL
Assessment method : (Continuous Internal Assessment = 40% , Final Examination = 60%)
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
To introduce students the fundamentals of image formation; To introduce students the major ideas, methods, and techniques of
computer vision and pattern recognition; To develop an appreciation for various issues in the design of computer vision and object
recognition systems; and To provide the student with programming experience from implementing computer vision and object
recognition applications
Course Contents:
UNIT1 :- Image Formation Models: Monocular imaging system, Orthographic& Perspective Projection, Camera model and
Camera calibration, Binocular imaging systems
UNIT II:- Image Processing and Feature Extraction: mage representations (continuous and discrete), Edge detection.
UNIT III:- Motion Estimation: Regularization theory, Optical computation, Stereo Vision, Motionestimation, Structure from
motion
UNIT IV :-Shape Representation and Segmentation: Deformable curves and surfaces, Snakes and active contours, Level set
representations, Fourier and wavelet descriptors, Medial representations, Multi Resolution analysis
UNIT V:- Object recognition: Hough transforms and other simple object recognition methods, Shape correspondence and shape
matching, Principal Component analysis, Shape priors for recognition.
CLO1: Identify basic concepts, terminology, theories, models and methods in the field of computer vision.
CLO3: describe basic methods of computer vision related to multi-scale representation, edge detection and detection of other
primitives, stereo, motion and object recognition.
Text books:
1. Computer Vision - A modern approach, by D. Forsyth and J. Ponce, Prentice Hall Robot Vision, by B. K. P. Horn, McGraw-
Hill.
Reference books:
1. Richard Szeliksy “Computer Vision: Algorithms and Applications” ([Link]
2. Haralick& Shapiro, “Computer and Robot Vision”, Vol II
. G_erardMedioni and Sing Bing Kang “Emerging topics in computer vision”
4. Emanuele Trucco and AllessandroVerri “Introductory Techniques for 3-D Computer Vision”, Prentice Hall, 1998.
5. Olivier Faugeras, “Three-Dimensional Computer Vision”, The MIT Press, 1993.
1. NPTEL
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
To learn the mechanisms of OS to handle processes and threads and their communication
To learn the mechanisms involved in memory management in contemporary OS
To gain knowledge on distributed operating system concepts that includes architecture, Mutual exclusion algorithms, deadlock
detection algorithms and agreement protocols
To know the components and management aspects of concurrency management
Course Description:
Covers the classical internal algorithms and structures of operating systems, including CPU scheduling, memory
management, and device management.
Considers the unifying concept of the operating system as a collection of cooperating sequential processes.
Covers topics including file systems, virtual memory, disk request scheduling, concurrent processes, deadlocks, security, and
integrity.
Course Contents:
ModuleII:DISTRIBUTEDOPERATING SYSTEMS
Issues in Distributed Operating System , Architecture , Communication Primitives , Lamport’s Logical clocks, Causal Ordering
of Messages, Distributed Mutual Exclusion Algorithms, Centralized and Distributed Deadlock Detection Algorithms,
Agreement Protocols.
ModuleIII:DISTRIBUTEDRESOURCEMANAGEMENT
Distributed File Systems, Design Issues, Distributed Shared Memory, Algorithms for Implementing Distributed Shared memory,
Issues in Load Distributing, Scheduling Algorithms, Synchronous and Asynchronous Check Pointing and Recovery,
Fault Tolerance , Two-Phase Commit Protocol, Non blocking Commit Protocol , Security and Protection.
Reference books:
1. Operating System: A Design-oriented Approach, 1st Edition by Charles Crowley, Irwin Publishing
2. Operating Systems: A Modern Perspective, 2nd Edition by Gary J. Nutt,Addison-Wesley
3. Design of the Unix Operating Systems, 8th Edition by Maurice Bach, Prentice-Hall ofIndia
4. Understanding the Linux Kernel, 3rd Edition, Daniel P. Bovet, Marco Cesati, O'Reilly andAssociates
[Link]
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective:
Provide an overview of the concepts relating to the design of human-computer interfaces in ways making
computer-based systems comprehensive, friendly and usable.
Identify the various tools and techniques for interface analysis, design, and evaluation.
Course Description:
Course Contents:
Unit 1 Introduction: Importance of user Interface – definition, importance of 8 good design. Benefits ofgood design. A
brief history of Screen design. The graphical user interface – popularity of
graphics,theconceptofdirectmanipulation,graphicalsystem,Characteristics,Webuser Interfacepopularity,characteristics-
Principles of user interface.
Unit 2 Designprocess: Human interaction with computers, importance of 8 human characteristics human
consideration,Human interaction speeds,understanding business [Link] Designing:Design goals.
Unit 4 Windows:New and Navigation schemes selection of window, 8 selection of devices based and screen based
controls. Components – text and messages, Icons and increases – Multimedia, colors ,uses problems, choosing colors.
Unit 5
Softwaretools: Specificationmethods,interface–BuildingTools.8InteractionDevices– Keyboardandfunctionkeys–
pointingdevices–speechrecognitiondigitizationandgeneration–image and video displays –drivers.
CLO1: Understand fundamental design and evaluation methodologies of human computer interaction.
CLO2: Demonstrate knowledge of human computer interaction design concepts and related methodologies.
CLO3: Apply theories and concepts associated with effective work design to real-world application
Text books:
1. AlanDix,JanetFinlay,GregoryAbowd,RussellBealeHumanComputer Interaction,3rdEditionPrenticeHall,2004.
2. JonathanLazarJinjuanHeidiFeng,HarryHochheiser,ResearchMethodsinHumanComputerInteraction,Wiley,2010.
3. BenShneidermanandCatherinePlaisantDesigningtheUserInterface:StrategiesforEffectiveHuman-
ComputerInteraction(5thEdition,pp.672,ISBN0-321-53735-1,March2009),Reading,MA:Addison-WesleyPublishingCo.
Reference books:
[Link]
Assessment -1 - 05%
Assessment-2 - 05%
Assessment-3(Mid-exam) - 20%
Assessment-3 - 05%
Assessment-4 - 05%
Course Objective: General Purpose Graphical Processing Units (GPGPU) primarily refers to the use of GPUs for
computationally intensive mathematical and scientific computing. The enormous peak performance of GPUs for arithmetically
intensive computations relatively at a much lower cost compared to CPUs makes GPU computing a very attractive new
alternative for computationally demanding problems.
Course Description: Understanding the basic concepts of GPU programming, CUDA (Compute Unified Device Architecture)
parallel computing platform and hands-on experience on implementing some standard CUDA programs. Finally the course will
give a brief overview of the current applications and future trends of GPU computing in scientific research.
Course Contents:
Introduction (2 + 1): History, graphics processors, graphics processing units, GPGPUs. Clock speeds, CPU / GPU
comparisons, heterogeneity. Accelerators, parallel programming, CUDA / OpenCL / OpenACC,
Hello World Computation (3 + 1) Kernels, launch parameters, thread hierarchy, warps / wavefronts, thread blocks /
workgroups, streaming multiprocessors, 1D / 2D / 3D thread mapping, device properties, simple programs
Memory (8 + 2) : Memory hierarchy, DRAM / global, local / shared, private / local, textures, constant memory. Pointers,
parameter passing, arrays and dynamic memory, multi-dimensional arrays. Memory allocation, memory copying across
devices. Programs with matrices, performance evaluation with different memories
Synchronization (6 + 2): Memory consistency. Barriers (local versus global), atomics, memory fence. Prefix sum,
reduction. Programs for concurrent data structures such as worklists, linked-lists. Synchronization across CPU and GPU
Functions (3 + 1): Device functions, host functions, kernels, functors. Using libraries (such as Thrust), developing
libraries.
Support (1 + 2): Debugging GPU programs. Profiling, profile tools, performance aspects
Streams (3 + 1): Asynchronous processing, tasks, task-dependence. Overlapped data transfers, default stream,
synchronization with streams. Events, event-based-synchronization
- overlapping data transfer and kernel execution, pitfalls.
Case studies (3 + 2) : Image processing. Graph algorithms. Simulations. Deep learning.
Advanced topics (8 + 2) : Dynamic parallelism. Unified virtual memory. Multi-GPU processing. Peer access.
Heterogeneous processing
CLO3: Implement efficient algorithms for common application kernels, such as matrix multiplication.
CLO5: Given a problem, implement an efficient and correct code to solve it, analyze its performance, and give convincing written
and oral presentations explaining your achievements.
Reference Books:
1. Programming Massively Parallel Processors: A Hands-On Approach, 2nd Edition, David Kirk and Wen-mei Hwu, Publisher:
Morgan Kaufman, 2012, ISBN: 9780124159921
1. MPI: [Link]/mpi/
Assessment method: (Continuous Internal Assessment = 40%, Final Examination = 60%)
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) `- 20%
Assignment-3 - 05%
Assignment-4 - 05%
Course Objective: Student can identify, analyze and remediate computer security breaches by learning and implementing the
real-world scenarios in Cyber Investigations Laboratory, Network Security Laboratory and in Security and Penetration Testing
Laboratory. Exhibit knowledge to secure corrupted systems, protect personal data, and secure computer
Networks in an Organization.
Course Description: Introduces computer security administrators to computer forensics. Includes setup and use of an
investigator's laboratory, computer investigations using digital evidence controls, processing crime and incident scenes,
performing data acquisition, computer forensic analysis, e-mail investigations, image file recovery, investigative report writing,
and expert witness testimony.
Course Contents:
B. Evidence gathering
D. Conducting an investigation
A. Review of file structures, boot processes, and data structures of popular operating systems.
B. NTFS
C. Macintosh
D. Linux
A. Create a partition
A. Concepts
A. Linux Distributions
C. Understanding inodes
A. HFS, HFS+
A. Reporting guidelines
B. Witness Requirements
A. Traditional methods
B. Non-traditional methods
b) Determine and analyze software vulnerabilities and security solutions to reduce the risk of exploitation.
d) Implement cyber security solutions and use of cyber security, information assurance, and cyber/computer forensics
software/tools.
e) Comprehend and execute risk management processes, risk treatment methods, and key risk and performance indicators
Text Books:
1. “Digital Forensics and Cyber Crime” by Joshua I James and Frank Breitinger
2. “Forensics Computer Investigator, Digital Forensics Analyst, Job Interview Bottom Line Practical Questions and
Answers” by M Kumar
3. “Digital Forensic and Cyber Crime” by R K Jha
Reference Books:
1. “National Security and Counterintelligence in the Era of Cyber Espionage (Advances in Digital Crime, Forensics, and Cyber
Terrorism)” by Eugenie de Silva.
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) `- 20%
Assignment-3 - 05%
Assignment-4 - 05%
Course Objective:
The aim is to gain the knowledge of current component based models in terms of their design, management and
implemented issues. This course will provide in depth knowledge of all the component based so0ftware engineering
practices.
Course Description:
The course introduces fundamental concepts in component based software engineering theory and implementation issues.
It includes Component-oriented programming, CBSE process and life cycle models, Component-based design and reuse
and Component technologies.
Course Contents:
Component-Based Software Engineering (CBSE), CBSE vs. Object-Oriented Software Engineering, CBSE methodology, domain
engineering, component engineering, component vs. object, Component, component technology, software component,
specification of software component, measurement and metrics for CBSE, challenge of CBSE, advantages and disadvantages of
CBSE.
CBSE processes, component-based software life cycle, component selection, component adaptability, component certification,
component composition.
Principles of component design and reuse, design prototyping, design production, design refactoring, design documentation,
component-based software reuse, reusable component, component-based reuse metrics.
Component technologies: Component Object Model (COM), Distributed Component Object Model (DCOM), Common Object
Requesting Broker Architecture (CORBA), Enterprise Java Beans (EJB).
CLO-1: Understand and analyze various methods and techniques of CBSE life cycle models.
CLO-2: Design and implement all modules related to Component –Oriented Programming
CLO-3: Get in depth knowledge of all issues related to Component based design and reuse.
CLO-4: Get in depth knowledge of all latest technologies of component technologies like, COM, DCOM, CORBA and
EJB.
Text Books:
George T. Heineman, William T. Councill, Component-Based Software Engineering: Putting the Pieces Together,
Addision Wesley
Andy JuAn Wang, Kai Qian, Component-Oriented Programming, Willey Interscience
Reference Books:
[Link]
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) `- 20%
Assignment-3 - 05%
Assignment-4 - 05%
Course Content:
1 Introduction
Disaster: Definition, Factors And Significance; Difference Between Hazard And Disaster; Natural And Manmade Disasters:
Difference, Nature, Types And Magnitude.
5 Risk Assessment
Disaster Risk: Concept And Elements, Disaster Risk Reduction, Global And National Disaster Risk Situation. Techniques Of
Risk Assessment, Global Co- Assessment. Strategies for Survival.
6 Disaster Mitigation
Meaning, Concept And Strategies Of Disaster Mitigation, Emerging Trends In Mitigation. Structural Mitigation And Non-
Structural Mitigation, Programs Of Disaster Mitigation In India.
SUGGESTED READINGS:
1. R. Nishith, Singh AK, “Disaster Management in India: Perspectives, issues and strategies “’New Royal book Company.
2. Sahni, [Link]. (Eds.),” Disaster Mitigation Experiences And Reflections”, Prentice Hall Of India, New Delhi.
3. Goel S. L., Disaster Administration And Management Text And Case Studies”, Deep &Deep publication Pvt. Ltd., New Delhi.
Course Code: SPCL3 Course Name: Advanced Algorithm Lab
List of Experiments
4. Write a program to print all the nodes reachable from a given starting node in a digraph using BFS method
5. Write a program to find shortest paths to other vertices using Dijkstra's algorithm., rom a given vertex in a weighted
connected graph,
6. Write a program to find a subset of a given set S = {s1,s2,.....,sn} of n positive integers whose sum is equal to a given
positive integer d. For example, if S= {1, 2, 5, 6, 8} and d = 9 there are two solutions {1,2,6} and {1,8}.A suitable
message is to be displayed if the given problem instance doesn't have a solution.
List of Practical
Course Objective:
Course Description:
Catalog description: Mobile application development frameworks; Architecture, design and engineering issues, techniques,
methodologies for mobile application development. – Additional Notes: Course material includes readings from textbooks,
reference books, and research papers and articles.
Course Contents:
Unit-1
Get started, Build your first app, Activities, Testing, debugging and using support libraries
Unit-2
User Interaction, Delightful user experience, Testing your UI
Unit-3
Background Tasks, Triggering, scheduling and optimizing background tasks
Unit-4
All about data, Preferences and Settings, Storing data using SQLite, Sharing data with content providers, Loading data using
Loaders
Unit-5
Permissions, Performance and Security, Firebase and AdMob, Publish
CLO-1: Able to understand to Create, test and debug Android application by setting up Android development environment
CLO-2: Able understand to Implement adaptive, responsive user interfaces that work across a wide range of devices.
CLO-3: Able to analyze performance of android applications and understand the role of permissions and security
CLO-4: Demonstrate methods in storing, sharing and retrieving data in Android applications.
Text books:
Google Developer Training, "Android Developer Fundamentals Course – Concept Reference”, Google Developer
Training Team, 2017. [Link]
concepts/details (Download pdf file from the above link)
Reference books:
Erik Hellman, “Android Programming – Pushing the Limits”, 1st Edition, Wiley India Pvt Ltd, 2014.
Dawn Griffiths and David Griffiths, “Head First Android Development”, 1st Edition, O’Reilly SPD Publishers, 2015.
J F DiMarzio, “Beginning Android Programming with Android Studio”, 4th Edition, Wiley India Pvt Ltd, 2016. ISBN-
13: 978-8126565580
Anubhav Pradhan, Anil V Deshpande, “ Composing Mobile Apps” using Android, Wiley 2014, ISBN: 978-81-265-4660-
2
Online links for study & reference materials:
[Link]
Course Objective:
Course Description:
This course is using the concepts of compilers and its related topic in context of high performance computing (includes
Parallel Processing Concepts, Design Issues in HPC, Synchronization and related algorithms, Advanced tools, techniques and
applications).
Course Contents:
Unit-1
Parallel Processing Concepts: Introduction to Parallel Computing: Motivating Parallelism, Scope of Parallel Computing,
Organization and Contents of the Text, Parallel Programming Platforms: Implicit Parallelism: Trends in Microprocessor &
Architectures, Limitations of Memory System Performance, Dichotomy of Parallel Computing Platforms, Physical Organization
of Parallel Platforms, Communication Costs in Parallel Machines Levels of parallelism (instruction, transaction, task, thread,
memory, function) Models (SIMD, MIMD, SIMT, SPMD, Dataflow Models, Demand-driven Comp.
Unit-2
Parallel Programming: Principles of Parallel Algorithm Design: Preliminaries, Decomposition Techniques, Characteristics of
Tasks and Interactions, Mapping Techniques for Load Balancing, Methods for Containing Interaction Overheads, Parallel
Algorithm Models, Processor Architecture, Interconnect, Communication, Memory Organization, and Programming Models in
high performance computing architecture examples: IBM CELL BE, Nvidia Tesla GPU, Intel Larra bee Micro architecture and
Intel Nehalem micro-architecture Memory hierarchy and transaction specific memory design, Thread Organization.
Unit-3
Fundamental Design Issues in HPC: Programming Using the Message-Passing Paradigm: Principles of Message Passing
Programming, The Building Blocks: Send and Receive Operations, MPI: the Message Passing Interface, Topology and
Embedding, Overlapping Communication with Computation, Collective Communication and Computation Operations, One-
Dimensional Matrix-Vector Multiplication, Single-Source Shortest-Path, Sample Sort, Groups and Communicators, Two-
Dimensional Matrix-Vector Multiplication
Unit-4
Synchronization and related algorithms : Synchronization: Scheduling, Job Allocation, Job Partitioning, Dependency Analysis
Mapping Parallel Algorithms onto Parallel Architectures, Performance Analysis of Parallel Algorithms Programming Shared
Address Space Platforms: Thread Basics, Why Threads?, The POSIX Thread API, Thread Basics: Creation and Termination,
Synchronization Primitives in Pthreads, Controlling Thread and Synchronization Attributes, Thread Cancellation, Composite
Synchronization Constructs, Tips for Designing Asynchronous Programs, Open MP: a Standard for Directive Based Parallel
Programming.
Unit-5
Advanced tools, techniques and applications: Bandwidth Limitations, Latency Limitations, Latency Hiding/Tolerating Techniques
and their limitations, Dense Matrix Algorithms: Matrix-Vector Multiplication, Matrix-Matrix Multiplication, Sorting: Issues,
Sorting on Parallel Computers, Sorting Networks, Bubble Sort and its Variants, Quicksort, Bucket and Sample Sort, Shared-
Address-Space Parallel Formulation, Single -Source Shortest Paths- Distributed Memory Formulation. HPC enabled Advanced
technologies : Search Algorithms for Discrete Optimization Problems: Search Overhead Factor, Parallel Depth-First Search,
Parallel Best-First Search, Introduction to (Block Diagrams only if any) Peta scale Computing, Optics in Parallel Computing
Quantum Computers, Recent developments in Nanotechnology and its impact on HPC Power-aware Processing Techniques in
HPC .
Course Learning Outcomes (CLOs):
Kai Hwang,”Advanced Computer Architecture: Parallelism, Scalability, Programmability”, McGraw Hill 1993
David Culler Jaswinder Pal Singh, ”Parallel Computer Architecture: A hardware/Software Approach”, Morgan
Kaufmann,1999.
Reference books:
Kai Hwang,, ”Scalable Parallel Computing”, McGraw Hill 1998
Peter Pacheco, Introduction to Parallel Programming, Morgan Kaufmann Publishers, 2011;
Michael J. Quinn, Parallel programming in C with MPI and OpenMP, McGraw-Hill Higher Education, 2004;
William Gropp, Using MPI: portable parallel programming with the message-passing interface, MIT press, 1999;
Online links for study & reference materials:
[Link]
Course Objective:
Learn to Scope of Operations Research: Introduction to linear and non-linear programming formulation of different models.
Linear Programming: Geometry of linear programming, Graphical method, Linear programming (LP) in standard form,
Solution of LP by simplex and revised simplex methods, Exceptional cases in LP, Duality theory, Dual Simple method,
Sensitivity analysis. Network Analysis: Transportation problem (with transshipment).
Course Description:
This course deals with optimization techniques (linear and non-linear) used in [Link] slack, Total slack, Crashing,
Resource allocation. Non-Linear Programming: Characteristics, Concepts of convexity, maxima and minima of functions of
n-variables using Lagrange multipliers and Kuhn-Tuker conditions.
Course Contents:
Unit-1
Introduction to Optimization: Historical Development, Engineering applications of Optimization, Design, vector and constraints,
Constraint surface, Objective function, Classification of Optimization Problems
Unit-2
Classical Optimization Techniques: Single variable optimization, Constrained and unconstrained multi-variable, optimization,
Direct substitution method, Lagrange’s method of multipliers, Karush-Kuhn-Tucker conditions
Unit-3
Linear Programming: Statement of an LP problem, Graphical Solution of an LP problem, Simplex, method, Dual simplex
method
Non-linear Programming: One-dimensional minimization method Unimodal function, Unrestricted search, Exhaustive search,
Dichotomous search, 06 Interval halving method, Fibonacci method, Golden section method, Direct root methods
Unit-4
Non-linear Programming: Unconstrained Optimization Techniques Direct Search Methods: Random search methods, Grid
search method, Univariate method, Hookes and Jeeves’ method, Powell’s method, Indirect Search Methods: Steepest descent
method, Fletcher-Reeves method, Newton’s method. Non-linear Programming: Constrained Optimization Techniques Direct
Methods: Random search method, Sequential linear programming, Indirect methods: Transformation techniques, Exterior penalty
function method, Interior penalty function method
Unit-5
Evolutionary Algorithms An overview of evolutionary algorithms, Simulated annealing algorithm, Genetic algorithm, Particle
swarm optimization
CLO-1:Students will be able to understand basic theoretical principles for formulation of optimization models and its
solution.
CLO-2:Students will be able to learn the unified and exact mathematical basis as well as the general principles of various
soft computing techniques.
CLO-3:Students should be able to apply detailed theoretical and practical aspects of 35% intelligent modelling,
optimization and control of linear and non-linear systems
Text books:
Taha, H.A., Operations Research: An Introduction, Prentice Hall of India (2007) 8th ed. Kasana, H.S., Introductory
Operation Research: Theory and Applications, Springer Verlag (2005).
Rardin, Ronald L., Optimization in Operations research, Pearson Education (2005). Ravindran A, Phllips D.T. and
Solberg J.J. Operation Research: Principles and Practice, John Wiley (2007).
Reference books:
Dawn Griffiths and David Griffiths, “Head First Android Development”, 1st Edition, O’Reilly SPD Engineering
Optimization Theory and Practice, [Link], New Age International (P) Ltd, Publishers
Kalyanmoy Deb Multi-objective optimization using evolutionary algorithms John Wiley Publicationsposing Mobile
Apps” using Android, Wiley 2014, ISBN: 978-81-265-4660-2.
Jasbir S. Arora Introduction to Optimum Design McGraw Hill Publication
Online links for study & reference materials:
1. [Link]
Course Objective:
The aim is to gain the knowledge of current object- based models in terms of their design, management and implemented
issues. This course will provide in depth knowledge of all the object- based software engineering practices.
Course Description:
The course introduces fundamental concepts in object- based software engineering theory and implementation issues. It
includes Object-oriented programming, OOSE process and life cycle models, COCOMO Model, Requirement
Elicitation, Component Inspection, Usability Testing and UML Technologies.
Course Contents:
UNIT -1: Basic Concepts; Project Organization; Communication - Synchronous, Asynchronous; Life Cycle Model - Sequential,
Iterative, Entity centered Model; Project Estimation - COCOMO, COCOMO– II, Agile Process.
UNIT -2: Requirement Elicitation - Concepts, Activities, Managing; Analysis - Concept, Activities; Design - Concepts,
Activities. Object Design Specifying Interfaces – Interfaces Specification Concepts, Interface Specification Activities.
UNIT -3: Mapping Concepts; Testing – Concepts, Activities – Component Inspection, Usability Testing, Unit Testing, Integration
Testing, System Testing, Configuration Management Concepts.
UNIT -4: UML Diagrams – Use Case, Class, Interaction, State Chart, Activity Diagrams. Case Study – Problem Statements &
UML Diagrams of Library Management, ATM Management, and Railway Ticket Reservation Systems.
Course Learning Outcomes (CLOs): On completion of the course students will be able to:
CLO-1: Understand and analyze various methods and techniques of OOSE life cycle models.
CLO-2: Understand various requirement elicitation techniques using various methods.
CLO-3: Design various kinds of test cases using various testing techniques like, Component Inspection, Usability
Testing, Unit Testing, Integration Testing, System Testing, and Configuration Management.
CLO-4: Get in depth knowledge regarding UML diagrams using Use Case, Class, Interaction, and State Chart.
Text books :
Bernd Bruegge, Alan H Dutoit, “Object Oriented Software Engineering” Second Edition, Pearson
Education.
Stephen Schach, “Applying UML and Patterns”, Third Edition, Pearson Education.
Reference books :
[Link]
Assessment method: (Continuous Internal Assessment = 40%, Final Examination = 60%)
Assignment-1 - 05%
Assignment-2 - 05%
Assessment-3(Midexam) - 20%
Assignment-3 - 05%
Assignment-4 - 05%
Unit-I:
Unit-II:
Unit-III:
Thermo chemical conversion - Direct combustion - biomass gasification - pyrolysis and liquefaction - biochemical
References:
1. Non Conventional Energy, Desai, Ashok V., Wiley Eastern Ltd., 1990.
2. Biogas Technology - A Practical Hand Book - Khandelwal, K. C. and Mahdi, S. S., Vol. I & II, Tata McGraw Hill
Publishing Co. Ltd., 1983.
3. Food, Feed and Fuel from Biomass, Challal, D. S., IBH Publishing Co. Pvt. Ltd., 1991.
4. Biomass Conversion and Technology, C. Y. WereKo-Brobby and E. B. Hagan, John Wiley &Sons, 1996.