M.Tech IT
M.Tech IT
M.Tech IT
UNIVERSITY DEPARTMENTS
M.TECH. INFORMATION TECHNOLOGY
REGULATIONS - 2019
CHOICE BASED CREDIT SYSTEM
To educate students with conceptual knowledge and technical skills in the field of
Information Technology with moral and ethical values to achieve excellence in academic,
industry and research centric environments.
PO # Programme Outcome
An ability to recognize the need for applying efficient software and hardware
5
based solutions to improve the quality of life.
Programme
Educational
Objectives PO1 PO2 PO3 PO4 PO5 PO6
PE01
PE02
PE03
PE04
PE05
4. Mapping of Course Outcome and Programme Outcome
Year Semester Course Name PO1 PO2 PO3 PO4 PO5 PO6
Probability and
Statistical Methods
Advanced Data
Structures and ✓ ✓ ✓ ✓ ✓ ✓
Algorithmics
Web Technologies ✓ ✓ ✓ ✓ ✓ ✓
Advanced Networks ✓ ✓ ✓ ✓
Research Methodology
✓ ✓
and IPR
Audit Course I ✓ ✓
YEAR 1
SEM 1
Advanced Data
Structures and ✓ ✓ ✓ ✓ ✓
Algorithms Laboratory
Web Technologies
✓ ✓ ✓ ✓ ✓ ✓
Laboratory
Software Design
✓ ✓ ✓ ✓ ✓
Methodologies
Advances in Operating
✓ ✓ ✓ ✓ ✓
Systems
Data Engineering
Laboratory
Program Elective I
Program Elective II
Audit Course II
Program Elective III
Program Elective IV
SEM 3
Program Elective V
YEAR 2
Dissertation II ✓ ✓ ✓ ✓ ✓ ✓
3
ANNA UNIVERSITY, CHENNAI
UNIVERSITY DEPARTMENTS
M.TECH. INFORMATION TECHNOLOGY
REGULATIONS - 2019
CHOICE BASED CREDIT SYSTEM
I – IV CURRICULA AND SYLLABI
SEMESTER I
PERIODS TOTAL
S. COURSE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
THEORY
Probability and Statistical
1. MA5156 FC 3 1 0 4 4
Methods
Advanced Data Structures
2. IF5151 PCC 3 0 0 3 3
and Algorithmics
3. IF5152 Web Technologies PCC 3 0 0 3 3
5. Open Elective OE 3 0 0 3 3
6. Audit Course –II* AC 2 0 0 2 0
PRACTICALS
IF5261 Data Engineering
7. PCC 0 0 2 2 1
Laboratory
8. IF5211 Mini Project with Seminar EEC 0 0 2 2 1
TOTAL 17 0 10 27 20
*Audit course is optional
4
SEMESTER III
PERIODS TOTAL
S. COURSE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
THEORY
1. Program Elective III PEC 3 0 2 5 4
2. Program Elective IV PEC 3 0 2 5 4
3. Program Elective V PEC 3 0 2 5 4
PRACTICALS
TOTAL 9 0 16 25 17
SEMESTER IV
PERIODS TOTAL
S. COURSE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
PRACTICALS
TOTAL 0 0 24 24 12
5
ANNA UNIVERSITY, CHENNAI
UNIVERSITY DEPARTMENTS
M.TECH. INFORMATION TECHNOLOGY (PART-TIME)
REGULATIONS - 2019
CHOICE BASED CREDIT SYSTEM
I - VI SEMESTER CURRICULA AND SYLLABI
SEMESTER I
PERIODS TOTAL
S. COURSE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
THEORY
Probability and Statistical
1. MA5156 PCC 3 1 0 4 4
Methods
Advanced Data Structures
2. IF5151 PCC 3 0 0 3 3
and Algorithmics
Research Methodology
3. RM5151 AC 2 0 0 2 2
and IPR
PRACTICALS
Advanced Data Structures
4. IF5161 PCC 0 0 4 4 2
and Algorithms Laboratory
TOTAL 8 1 4 13 11
SEMESTER II
PERIODS TOTAL
S. COURSE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
THEORY
Software Design
1. IF5201 PCC 3 0 2 5 4
Methodologies
Advances in Operating
2. IF5202 PCC 3 0 2 5 4
Systems
3. Open Elective I OE 3 0 0 3 3
4. Audit Course - I* AC 2 0 0 2 0
PRACTICALS
TOTAL 11 0 6 17 12
6
SEMESTER III
PERIODS TOTAL
S. COURSE CATE
COURSE TITLE PER WEEK CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
THEORY
1. IF5152 Web Technologies PCC 3 0 0 3 3
2. IF5101 Advanced Networks PCC 3 0 2 5 4
3. Audit Course –II* AC 2 0 0 2 0
PRACTICALS
Web Technologies
4. IF5162 PCC 0 0 4 4 2
Laboratory
TOTAL 8 0 6 14 9
*Audit course is optional
SEMESTER IV
PERIODS TOTAL
S. COURSE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
THEORY
1. Program Elective I PEC 3 0 0 3 3
2. Program Elective II PEC 3 0 2 5 4
3. Program Elective III PEC 3 0 2 5 4
TOTAL 9 0 4 13 11
SEMESTER V
PERIODS TOTAL
S. COURSE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
THEORY
1. Program Elective IV PEC 3 0 2 5 4
TOTAL 6 0 16 22 14
7
SEMESTER VI
PERIODS TOTAL
S. COURSE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. CODE GORY
L T P PERIODS
PRACTICALS
TOTAL 0 0 24 24 12
8
PROGRAM ELECTIVE COURSE (PEC)
PERIODS TOTAL
S. COURSE CATE CREDITS
COURSE TITLE PER WEEK CONTACT
NO. CODE GORY
L T P PERIODS
ELECTIVES I
1. IF5086 Virtualization PEC 3 0 0 3 3
2. IF5089 Unix Internals PEC 3 0 0 3 3
Next Generation Wireless
3. IF5082 PEC 3 0 0 3 3
Networks
Wireless Sensor Networks
4. IF5091 PEC 3 0 0 3 3
and Protocols
Software Architecture and
5. IF5084 PEC 3 0 0 3 3
Principles
6. IF5072 Artificial Intelligence PEC 3 0 0 3 3
Advanced Computer
7. IF5071 PEC 3 0 0 3 3
Architecture
Reasoning Methods in
8. IF5001 PEC 3 0 0 3 3
Computer Science
ELECTIVES II
Distributed and Cloud
1. IF5078 PEC 3 0 2 5 4
Computing
2. IF5074 Building Internet of Things PEC 3 0 2 5 4
3. IF5081 Information Retrieval PEC 3 0 2 5 4
Analysis of Social
4. IF5092 PEC 3 0 2 5 4
Networks
Digital Image Processing
5. IF5077 PEC 3 0 2 5 4
Techniques
6. IF5075 Computer Vision PEC 3 0 2 5 4
7. IF5076 Deep Learning PEC 3 0 2 5 4
Human Computer
8. IF5080 PEC 3 0 2 5 4
Interaction Techniques
9. IF5083 Pattern Recognition PEC 3 0 2 5 4
IF5073 Autonomous Ground
10. Vehicle Systems PEC 3 0 2 5 4
PERIODS TOTAL
S. COURSE CATE CREDITS
COURSE TITLE PER WEEK CONTACT
NO. CODE GORY
L T P PERIODS
ELECTIVES III, IV, V
11. IF5002 Open Source Technologies PEC 3 0 2 5 4
GPU Architecture and
12. IF5079 PEC 3 0 2 5 4
Programming
Service Oriented
13. IF5003 Architecture and PEC 3 0 2 5 4
Microservices
9
Cryptography and
14. IF5004 PEC 3 0 2 5 4
Information Security
Software Quality Assurance
15. IF5005 PEC 3 0 2 5 4
and Testing
Soft Computing and Its
16. IF5006 PEC 3 0 2 5 4
Applications
Machine Learning
17. IF5007 PEC 3 0 2 5 4
Techniques
18. IF5090 Semantic Web PEC 3 0 2 5 4
19. IF5008 Text Mining PEC 3 0 2 5 4
20. IF5009 E-Learning Techniques PEC 3 0 2 5 4
Data Warehousing and
21. IF5010 PEC 3 0 2 5 4
Data Mining
22. IF5011 Bioinformatics PEC 3 0 2 5 4
23. IF5012 Compiler Engineering PEC 3 0 2 5 4
Mobile Application
24. IF5088 PEC 3 0 2 5 4
Development
25. IF5013 Cyber Forensics PEC 3 0 2 5 4
26. IF5014 Biometrics PEC 3 0 2 5 4
27. IF5015 Blockchain Technologies PEC 3 0 2 5 4
28. IF5016 Multimedia Technologies PEC 3 0 2 5 4
Advanced Database
29. IF5017 PEC 3 0 2 5 4
Systems
30. IF5018 Linked Open Data PEC 3 0 2 5 4
Video Processing and
31. IF5085 PEC 3 0 2 5 4
Analytics
32. MM5072 Mixed Reality PEC 3 0 2 5 4
33. IF5087 Visualization Techniques PEC 3 0 2 5 4
Advanced Computer
34. MM5071 PEC 3 0 2 5 4
Graphics and Animations
Multimedia Coding
35. MM5073 PEC 3 0 2 5 4
Techniques
10
OPEN ELECTIVE COURSES (OEC)
*(out of 6 courses one course must be selected)
PERIODS
SI. COURSE COURSE PER WEEK CONTACT
CATEGORY CREDITS
NO CODE TITLE PERIODS
L T P
1. OE5091 Business Data
OEC 3 0 0 3 3
Analytics
2. OE5092 Industrial Safety OEC 3 0 0 3 3
3. OE5093 Operations
OEC 3 0 0 3 3
Research
4. OE5094 Cost
Management of
OEC 3 0 0 3 3
Engineering
Projects
5. OE5095 Composite
OEC 3 0 0 3 3
Materials
6. OE5096 Waste to Energy
OEC 3 0 0 3 3
11
EMPLOYABILITY ENHANCEMENT COURSES (EEC)
PERIODS TOTAL
S. CODE CATE PER WEEK
COURSE TITLE CONTACT CREDITS
NO. NO. GORY
L T P PERIODS
12
MA5156 PROBABILITY AND STATISTICAL METHODS LTPC
310 4
OBJECTIVES:
I. This course provides a sound and rigorous treatment of the basic principles for a proper
understanding of the subject matter and for confidence in applying these principles to
practical problem solving
II. This course provides a solid undergraduate foundation in both probability theory and
mathematical statistics and at the same time provides an indication of the relevance and
importance of the theory in solving problems in the real world
III. To introduce the basic concepts of one dimensional and two dimensional Random
Variables
IV. To provide information about Estimation theory, Correlation, Regression and Testing of
hypothesis
V. To enable the students to use the concepts of multivariate normal distribution and
principal components analysis
TOTAL: 60 PERIODS
OUTCOMES:
At the end of the course, students will be able to
Use the appropriate and relevant, fundamental and applied mathematical and statistics
knowledge and methodologies in solving practical problem.
Bring together and flexibly apply knowledge to characterize, analyse and solve a wide
range of problems.
Understand the balance between the complexity/accuracy of the mathematical/statistical
models used and the timeliness of the delivery of the solution.
Steeped in research methods and rigor.
Develop critical thinking based on empirical evidence and the scientific approach to
knowledge development.
13
REFERENCES:
1. Dallas E Johnson , “Applied multivariate methods for data analysis”, Thomson and
Duxbury press, Singapore, 1998.
2. Gupta S.C. and Kapoor V.K. “Fundamentals of Mathematical Statistics”, Sultan and
Sons, 11th Edition, Reprint, New Delhi, 2019.
3. Jay L. Devore, “Probability and statistics for Engineering and Sciences”, Thomson and
Duxbury, 9th Edition, Singapore, Boston, 2016.
4. Krishnaiah K. and Shahabudeen P, “Applied Design of Experiments and Taguchi
Methods”, PHI, New Delhi, 2012.
5. Richard A. Johnson and Dean W. Wichern, “Applied Multivariate Statistical Analysis”,
Pearson Education, Fifth Edition, 6th Edition, New Delhi, 2013.
6. Richard Johnson. ”Miller & Freund‟s Probability and Statistics for Engineer”, Prentice
Hall of India Private Ltd., 8th Edition, New Delhi, 2011.
OBJECTIVES:
To understand the usage of algorithms in computing.
To understand and learn the algorithm design techniques.
To learn and use hierarchical data structures and its operations.
To learn the usage of graphs and its applications.
To study about NP Completeness of problems.
Suggested Activities:
Flipped classroom on divide & conquer strategy (Merge Sort, Quick Sort).
External learning – Solving recurrence relations using Master’s method.
Formulation of recurrence relations for various recursive algorithms (such as Tower
of Hanoi, Staircase problem).
Assignment on finding order of growth for exponent and logarithmic time algorithms.
14
Suggested Activities:
Flipped classroom on basics of algorithm design strategies.
External learning – String edit distance and Knapsack problem.
Assignment on applying suitable algorithm design technique for solving real time
problems/scenario such as Checker Board/Sequence Alignment/Puzzle Solving/Data
Compression.
Assignment on analysis of time complexity for memorization algorithms and Huffman
Coding.
Suggested Activities:
Flipped classroom on AVL trees and binary heap concepts.
External learning – Fibonacci heap operations.
Assignment on choosing and apply a suitable tree/heap structure for solving a given
real time problem/scenario such as the implementation of trees/heaps/PDF
document creation.
Assignment on analysis of time complexity for B-Trees and Binomial Heaps.
Suggested Activities:
Flipped classroom on basics of graphs and graph operations.
External learning – Applications of graphs and DFS.
Analysis of time complexity for Dijkstra’s algorithm and Floyd Warshall algorithm.
Practical – To choose and apply a suitable graph algorithms for solving a real time
problem/scenario such as network routing/shortest path updation in
maps/relationship mining in graphs.
15
UNIT V NP-COMPLETE AND NP –HARD 9
NP-Completeness – Polynomial Time – Polynomial-Time Verification – NP Completeness
and Reducibility – NP-Completeness Proofs – NP-Complete Problems – Clique Problem –
The Hamiltonian Cycle Problem – Approximation Algorithms – Vertex Cover Problem.
Suggested Activities:
Flipped classroom on basics of approximation algorithms.
External learning – Subset sum problem.
Assignments on solving traveling salesman problem using approximation technique.
Exploration of any two NP-complete problems with proofs.
REFERENCES:
1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein,
“Introduction to Algorithms”, Third Edition, Prentice-Hall, 2011.
2. Alfred V. Aho, John E. Hopcroft, Jeffrey D. Ullman, “Data Structures and Algorithms”,
Pearson Education, 2006.
3. Robert Sedgewick, Kevin Wayne, “Algorithms”, Fourth Edition, Pearson Education.
2011.
4. S. Sridhar, “Design and Analysis of Algorithms”, Second Edition, Oxford University
Press, 2014.
CO1 3 1 3 3 3 2
CO2 3 1 3 3 3 2
CO3 3 2 3 3 3 2
CO4 3 2 3 3 3 2
CO5 3 1 3 3 3 2
CO6 3 2 3 3 3 3
16
IF5152 WEB TECHNOLOGIES LTPC
3 00 3
OBJECTIVES:
To understand the object oriented concepts of Java and learn GUI based application
development and network programming.
To learn client side scripting languages to create dynamic web pages.
To build dynamic web sites using databases and server side technologies.
To understand the importance of advanced frameworks.
To integrate all the features of web technologies for application development.
Suggested Activities:
Learning and implementation of the following topics
o Developing complex web forms using HTML5 and validating using Javascript.
o Enhancing website appearance with style sheets.
o Validating sting data using regular expressions.
o Traversal of HTML5 document using HTML DOM.
External learning – Usage of Angular JS in simple web applications.
17
Suggested Activities:
Learning and Implementation of the following topics
o Develop a database application using JDBC.
o Develop a servlet program that illustrates the usage of cookies and sessions.
o Create a shopping cart application and guest book web apps using JSF.
o Validate user input of an application such as singing contest using JSP.
Flipped classroom on MVC architecture.
External learning – Development of dynamic web applications.
Suggested Evaluation Methods:
Quiz on JDBC.
Quiz on cookies, JSF and Java Beans.
Demonstration of web applications developed using servlets, JSP and JSF.
Suggested Activities:
Learning and Implementation of the following topics
Create a simple application using struts.
Hibernate framework based O/R mapping.
To create simple applications using Spring framework.
Suggested Evaluation Methods:
Demonstration of Hibernate, Struts and Spring framework based application.
TOTAL: 45 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Have knowledge on Java based implementation of object oriented features.
2. Develop dynamic websites using client side technologies.
3. Develop dynamic web applications with database connectivity using server side
technologies.
4. Create distributed applications using RMI and web services.
18
5. Design and develop applications using advanced frameworks.
6. Apply client and server side technologies for developing web applications with
distributed objects and advanced framework features.
REFERENCES:
1. “Core and Advanced Java, Black Book”, Dreamtech Press, 2018.
2. Paul J. Deitel and Harvey Deitel, “Java How to Program”, Eleventh Edition, Pearson
Education, 2017.
3. Harvey Deitel, Abbey Deitel, “Internet and World Wide Web, How to Program”, Fifth
Edition, Pearson Education, 2012.
4. Cay S. Horstmann, “Core Java” Volume I & II, Pearson Education, 2018
5. Marty Hall and Larry Brown, “Core Servlets And Javaserver Pages”, Second Edition,
Pearson Education, 2008.
6. Uttam K Roy, “Web Technologies”, Oxford University Press, 2011.
7. http://nptel.ac.in/courses/106105084/
CO1 2 1 2 2 2 2
CO2 2 2 2 2 1 2
CO3 2 2 2 2 1 2
CO4 2 2 2 2 1 2
CO5 2 2 2 2 2 2
CO6 2 2 2 2 2 2
OBJECTIVES:
To learn about the principles and practices of advanced computer networking
concepts.
To understand the importance of Quality of Service in IP networks.
To explore the need for Ipv6 and manage the MPLS technology in networks.
To learn about SDN architecture and OpenFlow for network virtualization.
To gain an in-depth knowledge of Network Virtualization Function.
UNIT I INTRODUCTION 9
Switched Networks and Shared Media Networks – Circuit Switching, Packet Switching and
Virtual Circuits – Flow Control and Congestion Control – TCP/IP Reference Model –Network
Externalities – Service Integration – Elastic and Inelastic Traffic – Playback Applications –
Additional Requirements for Inelastic Traffic – Core Networks and Access/Edge.
Suggested Activities:
Flipped classroom on network externalities and economies of scale.
External learning – Inter-continental backbone network and Autonomous Systems
model of the Internet.
Computing the playout time of packets.
19
Suggested Evaluation Methods:
Quiz and discussion on network externalities and economies of scale.
Assignments on inter-continental backbone network and autonomous systems.
Suggested Activities:
Configure OpenFlow switches.
View switch configuration and capability using dpctl command in mininet.
20
Suggested Activities:
Create and manipulate software defined components.
Developing SDN in a big data application (application-driven network control).
PRACTICAL EXERCISES: 30
1. Generate network traffic with a Web Browser. Using Wireshark capture the traffic
flow for various protocols.
2. Build a simple network in Packet Tracer and observe how data flows in the network.
3. Analyze traffic flows statistics during network tests.
4. Start capturing packets and use telnet to login and enter the password. Use
Wireshark and capture in order to identify and reassemble the password from the
captured network traffic.
5. Configure MPLS LDP sessions between two directly connected routers.
6. Write a simple monitoring module that counts all packets going to or leaving host
(mininet/ryu).
7. Configure Openflow switches with dpctl command.
8. Create a simple_switch application that keeps track of where the host with each MAC
address is located and accordingly sends packets towards the destination and not
flood all ports.
9. Develop a Ryu SDN switch application with load balancing. Implement a round robin
mechanism for deciding the forwarding port when installing the flows in the switch.
10. Write a simple firewalling module that blocks traffic between 2 hosts.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the student will be able to:
Explain the advancements in Ethernet Technologies.
Configure and manage different concepts of QoS polices in IP networks.
Configure and manage the Ipv6 addressing based network.
Design a MPLS based network and able to provide QoS, TE services.
Implement the SDN concepts and manage SDN controller.
Explain network function virtualization techniques and apply the emerging
technologies for various case studies.
REFERENCES:
1. Larry L. Peterson, Bruce S. Davie, “Computer Networks: A Systems Approach”, Fifth
Edition, Elsevier/Morgan Kaufmann Publishers, 2011.
2. Bruce S. Davie, Adrian Farrel, “MPLS: Next Steps”, Morgan Kaufmann Publishers,
2011.
3. Paul Goransson, Chuck Black, “Software Defined Networks: A Comprehensive
Approach”, Morgan Kaufmann Publisher, June 2014.
4. Thomas D. Nadeau, Ken Gray, “SDN: Software Defined Networks, An Authoritative
Review of Network Programmability Technologies”, O’Reilly Media, August 2013.
5. William Stallings, “Foundations of Modern Networking – SDN, NFC, QoE, IoT and
Cloud” Third Edition, Pearson Education, 2019.
21
PO1 PO2 PO3 PO4 PO5 PO6
CO1 2 1 1 3 1 1
CO2 3 1 2 3 2 2
CO3 3 1 2 3 2 2
CO4 2 2 2 3 2 2
CO5 2 3 2 2 1 2
CO6 3 2 3 2 1 2
OBJECTIVES:
To impart knowledge and skills required for research and IPR:
Problem formulation, analysis and solutions.
Technical paper writing / presentation without violating professional ethics
Patent drafting and filing patents.
22
OUTCOMES:
1. Ability to formulate research problem
2. Ability to carry out research analysis
3. Ability to follow research ethics
4. Ability to understand that today’s world is controlled by Computer, Information
Technology, but tomorrow world will be ruled by ideas, concept, and creativity
5. Ability to understand about IPR and filing patents in R & D.
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
REFERENCES:
1. Asimov, “Introduction to Design”, Prentice Hall, 1962.
2. Halbert, “Resisting Intellectual Property”, Taylor & Francis Ltd ,2007.
3. Mayall, “Industrial Design”, McGraw Hill, 1992.
4. Niebel, “Product Design”, McGraw Hill, 1974.
5. Ranjit Kumar, 2nd Edition, “Research Methodology: A Step by Step Guide for
beginners” 2010
OBJECTIVES:
To learn the design strategies of various algorithms.
To learn how to analyze the complexities of algorithms.
To learn and understand the usage of advanced tree structures.
To familiarize with the usage of heap structures.
To understand the usage of graph structures and spanning trees.
LIST OF EXPERIMENTS:
Implement the following programs using C/ Python:
1. Iterative and recursive algorithms and its complexity analysis.
2. Merge sort algorithm analysis using divide and conquer approach.
3. Quick sort algorithm using randomized algorithmic approach.
4. Matrix chain multiplication using dynamic programming approach.
5. Activity selection and Huffman coding using greedy approach.
6. Binary search tree and a Red-Black tree.
7. Basic heaps operations.
8. Binomial heap operations.
9. Representation of graphs and graph traversals
10. A spanning tree for a given graph using Prim’s algorithm.
11. Shortest path of a given graph using Dijkstra’s algorithm and Bellman Ford algorithm.
12. All pair shortest path of a given graph using Floyd Warshall’s algorithm.
TOTAL: 60 PERIODS
23
OUTCOMES:
On completion of the course, the students will be able to:
1. Design and implement iterative and recursive algorithms with minimum complexity.
2. Design and develop efficient algorithms for practical problems by adopting suitable
algorithm design strategies.
3. Design and implement basic and advanced data structures extensively.
4. Apply suitable hierarchical data structures based on real time problems.
5. Design algorithms using graph structures.
6. Implement real world applications by proper usage of data structures and algorithms.
CO1 3 2 3 3 3 2
CO2 3 3 3 3 3 3
CO3 3 1 3 3 3 2
CO4 3 1 3 3 3 2
CO5 3 1 3 3 3 2
CO6 3 3 3 3 3 3
LIST OF EXPERIMENTS:
1. Simple Java programs using arrays and lists.
2. Object orientation program using inheritance and polymorphism.
3. Simple association using objects (pass & return by reference).
4. Simple GUI application development using applet and SWING.
5. Implement multithread program for concurrent operations.
6. Develop program to set priority and synchronize java threads.
7. Input and Output manipulation on files (Read/Write).
8. Java programs on generic and collections.
9. Client Server network application using java sockets.
10. Dynamic web page creation using Javascript, Jquery and AJAX.
11. Develop servlet and JSF application with JDBC access.
12. Manage sessions in JSP using cookies.
13. Create simple Node Javascript functions for server.
14. Android application for location based service.
15. Develop cloud based web application.
TOTAL: 60 PERIODS
24
OUTCOMES:
On completion of the course, the students will be able to:
1. Implement object oriented concepts using Java language
2. Develop GUI application by including I/O streams and threads.
3. Create web pages with proper client-side features
4. Design dynamic web pages with server-side and other technologies
5. Develop simple android based mobile application
6. Deploy web applications in a cloud based environment.
Suggested Activities:
Identify and propose ways to build quality software to stop deterioration due to
change.
Assignments like the following: Giving reasons for your answer based on the type of
system being developed, suggest the most appropriate generic software process
model that might be used as a basis for managing the development of the following
systems (not limited to):
- A system to control anti-lock braking in a car.
- A virtual reality system to support software maintenance.
- A university accounting system that replaces an existing system.
25
- An interactive travel planning system that helps users plan journeys with the
lowest environment impact.
Using the FDD feature template, define a feature set for a web browser.
Suggested Activities:
External Learning – Using open-source tools for RE to understand the requirements
traceability and interdependency among the functionalities provided by the software
project.
External Learning – Requirements elicitation mechanisms and selection of an
appropriate strategy.
Suggested Activities:
Design and model for any project (Software Project Categories – Php Projects, Data
Mining, Android Projects, Smart Card/ Biometrics, Dotnet Projects, Web Based
Projects, Information Security, Ios Projects, Artificial Intelligence, Embedded
Projects).
Draw the activity network representation of the tasks.
Determine ES, EF, and LS, LF for every task.
Develop the Gantt chart representation for the project.
26
UNIT IV SOFTWARE PRACTICES, PROCESSES AND ARCHITECTURE 9
Software Engineering Practices – Essence – Core Principles – Communication Practice –
Planning Practice – General Structure of a Process – Process Framework – Process
Improvements – Software Development Methodologies – Object Oriented Development
Process – Unified Process – RAD Model – Software Testing.
Suggested Activities:
In-class activity on application specific product and process view.
Develop a complete process framework for any project like healthcare system.
A class project may be given as follows: Develop a debugging plan that will provide
language and system oriented hints that have been learnt. Begin with the outline of
topics that will be revived by the class and your instructor. Publish the debugging
plan for others in your local environment.
Suggested Activities:
Perform software project management for any project like automobile in which the
driver commands the steering wheel and provides vision.
Develop a schedule timeline.
Develop Mini projects (Software Project Categories – PHP Projects, Data Mining,
Android Projects, Smart Card/ Biometrics, Dotnet Projects, Web Based Projects,
Information Security, IOS Projects, Artificial Intelligence, Embedded Projects)
PRACTICAL EXERCISES: 30
Design, develop, implement and test any one of the following projects:
1. Data Mining.
2. Embedded Projects, Smart Card/Biometrics.
3. Web Based Projects.
4. Information Security.
5. Artificial Intelligence.
27
chosen project.
Using the FDD feature template, define a feature set for the chosen project.
Perform requirements elicitation mechanisms on the selected project and justify the
selection of an appropriate strategy.
Categorize the requirements (considering contradicting, omission, commission of
requirements) in a software project.
Perform analysis.
Develop a complete process framework.
Design and model for the chosen project.
Draw the activity network representation of the tasks for the chosen project.
Determine ES, EF, and LS, LF for every task.
Develop the Gantt chart representation for the project.
Perform software project management tasks.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
Analytically apply general principles of software development in the development
of complex software and software- intensive systems.
Understand methods and techniques for advanced software development and
also be able to use these in various development situations.
Apply testing techniques for object oriented software and web-based systems.
Familiarize with the basic concepts of Software design and implementation.
Apply various software metrics on software quality products.
Apply various skills on real-time projects.
REFERENCES:
1. Roger S. Pressman, “Software Engineering – A Practitioner’s Approach”, Seventh
Edition, Tata McGraw-Hill, 2009.
2. Ian Sommerville, “Software engineering”, Ninth Edition, Pearson Education, 2010.
3. S. A. Kelkar, “Software Engineering A Concise Study”, PHI Learning, 2010.
4. Ali Behforooz, Frederick J. Hudson, “Software Engineering Fundamentals”, Oxford
University, 1996.
CO1 3 1 3 3 3 1
CO2 3 1 3 3 3 1
CO3 3 1 3 3 3 1
CO4 3 1 3 3 3 1
CO5 3 1 3 2 3 1
CO6 3 1 3 2 3 1
28
IF5202 ADVANCES IN OPERATING SYSTEMS LTPC
3 02 4
OBJECTIVES:
To expose students to real-world systems artifacts in operating systems.
To understand the solutions for critical problems of an Operating system.
To gain knowledge on Distributed operating system concepts that includes
architecture, Mutual exclusion algorithms, Deadlock detection algorithms and
agreement protocols.
To gain insight on to the distributed resource management components viz. the
algorithms for implementation of distributed shared memory, recovery and commit
protocols.
To know the components and management aspects of Real time, Mobile operating
systems.
Suggested Activities:
Practical – Solution to producer consumer problem in communicating sequential
processes.
Assignment on deadlock prevention.
External learning – Models of deadlock and resources.
Suggested Activities:
Practical – Write a program in any language for clock synchronization of events
occur during chat based on time stamp and a logical counter.
Practical – Write a program to enforce causal ordering of messages of a system with
multiple processes.
External learning – Global state recording algorithm to identify deadlocks in
distributed systems.
29
UNIT III DISTRIBUTEDRESOURCE MANAGEMENT 11
Distributed File System – Design Issues – Distributed Shared Memory – Algorithms for
Implementing Distributed Shared memory–Issues in Load Distributing – Load Distributing
Algorithms – Failure Recovery: Synchronous and Asynchronous Check Pointing and
Recovery – Fault Tolerance: Two-Phase Commit Protocol – Non-blocking Commit Protocol –
Security and Protection.
Suggested Activities:
Practical – Implementing a system for resource management in distributed
environment with appropriate modules to access files from a remote system using
any programming language. Use multithreading concept and ensure provisions for
new user registration and authentication of existing users.
Practical – Create a file in FreeBSD and perform read and write operations.
Study the following files in FreeBSD: file.c, sysfile.c [file creation, reading and writing]
Suggested Activities:
Mini project (group) for developing real time application.
Assignments on file systems.
Suggested Activities:
External learning – Process start up and disk partion in FreeBSD
Study of the following files in FreeBSD:
o proc.c[set up first user process, create new process, allocating process, exit
of process, process states and scheduling], swtch.S [context switch]
o proc.h [per-CPU state and per-process state],
o vectors.S [trap handler]-> trapasm.S [build trap frame]->trap.c[Interrupt
Descriptor Table] -> traps.h[Interrupt constants] -> syscall.c [system call
handler]
Write a user program to check and print the state of a process (current/all/specified)
in FreeBSD.
30
SUGGESTED EVALUATION METHODS:
Quiz on FreeBSD study files and other parts of the Module.
PRACTICAL EXERCISES: 30
1. Introduction to Linux and shell programming. (4 hours)
2. Write a program to implement a distributed chat server using TCP socket.
3. Write a program to implement client server RPC and client server based program
using RMI.
4. Write a multi threaded client server program.
5. Write a program to simulate the functioning of lamports logical clock and lamports
vector clock.
6. Write a program to implement Christian’s algorithm and Berkeley algorithm.
7. Write a program to check grep and pipe commands in FreeBSD.
8. Write a program to do file permission and directory file permission in free BSD.
9. Write a program to building multi-threaded and multi-process application.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Articulate the main concepts, key ideas, strengths and limitations of operating
systems.
2. Analyze the structure and basic architectural components of OS.
3. Have an understanding of high-level OS kernel structure.
4. Used gained insight into hardware-software interactions for compute and I/O.
5. Acquire practical skills in system tracing and performance analysis.
6. Explore research ideas in system structure and behaviour.
REFERENCES:
1. Mukesh Singhal, Niranjan G. Shivaratri, “Advanced Concepts in Operating Systems –
Distributed, Database, and Multiprocessor Operating Systems”, Tata McGraw-Hill,
2001.
2. Abraham Silberschatz, Peter Baer Galvin, Greg Gagne, “Operating System
Concepts”, Ninth Edition, John Wiley, 2012.
3. Andrew S. Tanenbaum, “Modern Operating System”, Third Edition, Prentice Hall,
2008.
4. Rajib Mall, “Real-Time Systems: Theory and Practice”, Pearson Education, 2006.
5. H. M. Deitel, P. J. Deitel, D. R. Choffnes, “Operating Systems”, Pearson Education,
2004.
6. Neil Smyth, “iPhone Ios 4 Development Essentials – Xcode”, Fourth Edition, Payload
Media, 2011.
7. Neil Smyth, “Android 4.4 for App Development Essentials”, Payload Media, 2014.
CO1 2 2 2 1 1 2
CO2 1 2 3 1 1 1
CO3 2 2 3 1 1 1
CO4 1 2 3 2 1 1
CO5 1 2 2 3 1 1
CO6 3 2 3 3 2 1
31
IF5261 DATA ENGINEERING LABORATORY LT PC
0 0 21
OBJECTIVES:
To provide a hands-on experience in R and Weka tool.
To use the R packages for performing data preprocessing.
To learn using Weka tool for data preprocessing.
To familiarize the usage of R commands for visualizing data.
To write and deploy simple algorithms as Map-Reduce tasks.
LIST OF EXPERIEMNTS:
1. Install standalone R. Install and configure Hadoop. Finally install Rhadoop.
2. Use R tool to explore various commands for descriptive data analytics using bench mark
datasets.
3. Explore various variable and row filters in R for cleaning data.
4. Use R commands for probability distributions and probability statistics.
5. Formulate real business problems scenarios to hypothesis and solve using R statistical
testing features.
6. Apply various plot features in R on sample data sets and visualize.
7. Write and execute word count, word search and pattern search problems from large text
files using Map Reduce programs.
8. Write simple Map Reduce functions for sorting, grouping, joining, projecting, and filtering
bench mark data sets.
9. Implement Relational Algebra Operations, Grouping and Aggregation as Map-Reduce
tasks.
10. Install Weka tool and explore various data preprocessing options using bench mark data
sets.
TOTAL: 30 PERIODS
OUTCOME:
On completion of the course, the students will be able to:
1. Learn to install and use R.
2. Write and execute various data preprocessing experiments in the R platform.
3. Execute data cleaning processes on voluminous data sets.
4. Develop, implement and deploy simple data handling algorithms such as Map
Reduce functions.
5. Learn to apply R functions on various applications.
6. Learn to install and use Weka tool.
CO4 2 1 1 3 2 1
CO5 2 1 2 3 3 2
CO6 1 1 1 2 2 2
32
IF5086 VIRTUALIZATION LTPC
3 00 3
OBJECTIVES:
To understand the concept of virtualization.
To understand the various issues in virtualization.
To familiarize themselves with the types of virtualization.
To compare and analyze various virtual machines.
To explore the virtualization tools and products.
Suggested Activities:
Quizzes on process virtual machines and system virtual machines.
Practical – Install Oracle Virtual Box/Vmware Workstation and create a blackboard
application [Hint: One VM should act as a master and other VMs acts as a listeners,
when any content is written by the master VM, the content should be displayed in all
the Listener VMs].
Suggested Activities
Install any one Sever Virtualization Tool (Vmware Esx,Xen,KVM) and run and create
two VM and configure one vm as Web Server and another as File Server.
Suggested Activities:
Create and configure a VLAN using Cisco packet tracer.
Connect the Created VLANs using router in Cisco packet tracer.
33
UNIT IV STORAGE VIRTUALIZATION 8
Hardware Devices – SCSI– Speaking SCSI– Using SCSI buses – Fiber Channel – Fiber
Channel Cables –Fiber Channel Hardware Devices – Iscsi Architecture – Securing Iscsi
SAN Backup & Recovery Techniques – RAID – Classic Storage Model – SNIA Shared
Storage Model Host based Architecture – Storage based architecture – Network based
Architecture – Fault tolerance to SAN – Performing Backups – Virtual tape libraries.
Suggested Activities:
Setup Iscsi in Linux Machine.
Suggested Activities:
Mini project – Must use any virtualization Concept.
TOTAL: 45 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
Create a virtual machine and to extend it to a virtual network.
Discuss on various virtual machine.
Compile all types of virtualization techniques and utilize them in design of virtual
machines.
Apply the concepts of virtualization in network and storage.
Explore the various virtualization tools.
Be able to use cisco packet tracer to simulate network virtualization.
REFERENCES:
1. William von Hagen, “Professional Xen Virtualization”, Wrox Publications, January,
2008.
2. Chris Wolf, Erick M. Halter, “Virtualization: From the Desktop to the Enterprise”,
Apress 2005.
3. Kumar Reddy, Victor Moreno, “Network virtualization”, Cisco Press, July, 2006.
4. James E. Smith, Ravi Nair, “Virtual Machines: Versatile Platforms for Systems and
Processes”, Elsevier/Morgan Kaufmann, 2005.
5. David Marshall, Wade A. Reynolds, “Advanced Server Virtualization: Vmware and
Microsoft Platform in the Virtual Data Center”, Auerbach Publications, 2006.
34
PO1 PO2 PO3 PO4 PO5 PO6
CO1 3 1 2 3 1 1
CO2 3 3 3 2 1 1
CO3 3 1 3 3 1 1
CO4 3 1 3 3 3 1
CO5 3 1 3 3 2 3
CO6 3 1 3 2 2 1
UNIT I OVERVIEW 9
General Overview of the System – System Structure – User Perspective – Operating System
Services – Assumptions about Hardware – Introduction to the Kernel Architecture of the
UNIX Operating System – Introduction to System Concept – The Buffer Cache – Buffer
Headers – Structure of the Buffer Pool – Scenarios for Retrieval of a Buffer – Reading and
Writing Disk Blocks – Advantages and Disadvantages of the Buffer Cache.
Suggested Activities:
External learning – Usage of disk blocks and buffer cache.
Assignment on system calls related to various UNIX commands.
Suggested Activities:
Quizzes on inode.
Practical – Implement superblock structure to handle the allocation and releasing of
inode.
35
Suggested Evaluation Methods:
Demonstration of the practical implementation.
Assignment on disk block allocation.
Suggested Activities:
Practical – Implement the following UNIX commands using System calls in C
Program: cat and mv
Practical – Write a C program to determine the size of a file using the lseek
command. Once you found out the size, calculate the number of blocks assigned for
the file.
Practical – Write two simple programs pipe reader.c and pipe writer.c that use a
named pipe to communicate. The pipe reader program will set up a named pipe
using mkfifo(), open it read only, and read strings from it until it nalyzin the string
exit. The writer will open the named pipe file, read strings from the user and write
them to the named pipe. When the user enters exit, the program will write the string
to the pipe and then exit.
UNIT IV PROCESSES 10
Process States and Transitions – Layout of System Memory – The Context of a Process –
Saving the Context of a Process – Manipulation of the Process Address Space – Process
Control –process Creation – Signals – Process Termination – Awaiting Process Termination
– Invoking other programs – User Id of a Process – Changing the size of a Process – Shell –
System Boot and the INIT Process.
Suggested Activities:
Practical – Write a program in C that creates a child process, waits for the
termination of the child and lists its PID, together with the state in which the process
was terminated (in decimal and hexadecimal)
Practical – In a C program, print the address of the variable and enter into a long loop
(say using while (1)). Start three to four processes of the same program and observe
the printed address values. Show how two processes which are members of the
relationship parent child are concurrent from execution point of view, initially the child
is copy of the parent, but every process has its own data.
Suggested Activities:
Practical – Implement memory management Policies (Group Activity)
Practical – Modify the functionality of basic commands in xv6 system (Group
Activity)
36
Suggested Evaluation Methods:
Demonstration of the mini project.
TOTAL: 45 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand UNIX architecture and describe the component of operating system
2. Explain how they interact with computer hardware.
3. Deeper understanding of system calls in Unix operating system.
4. Apply the concepts of operating systems design to practical problems.
5. Design and implement the subsystems of an operating system.
6. Critically analyze different data structures and algorithms used in the building of a
kernel.
REFERENCES:
1. Maurice J. Bach, “The Design of the Unix Operating System”, First Edition, Pearson
Education, 1999.
2. B. Goodheart, J. Cox, “The Magic Garden Explained”, Prentice Hall of India,1986.
3. S. J. Leffler, M. K. Mckusick, M. J. Karels, J. S. Quarterman, “The Design and
Implementation of the 4.3 BSD Unix Operating System”, Addison Wesley, 1998.
4. Robert Love, “Linux Kernel Development”, Third Edition, Addison Wesley, 2010.
OBJECTIVES:
To learn the fundamentals of 5G internet.
To understand the concept of small cells in 5G mobile networks.
To learn the mobile clouds in 5G network context.
To understand the role of cognitive radios in 5G networks.
To learn the security issues in 5G networks.
37
Suggested Activities:
Flipped classroom on Ten Pillars of 5G.
Assignment on millimeter wave mobile communication.
External learning – 5G in global level.
Suggested Activities:
Flipped classroom on types of small cells.
Assignments on issues in fem to cells.
External learning – Small cell challenges.
Suggested Activities:
Flipped classroom on network coding.
External learning – Cooperative MAC protocols.
Assignment on packet exchange in PRCSMA.
Suggested Activities:
External learning – Network coding.
Assignment on spectrum optimization using cognitive radio.
External learning – Key Requirements and Challenges for 5G Cognitive Terminals.
Assignment on component of a cognitive radio terminal.
38
Suggested Evaluation Methods:
● Viva voce on assignment topics.
● Quiz on carrier aggregation.
REFERENCES:
1. Jonathan Rodriguez, “Fundamentals of 5G Mobile Networks”, Wiley, 2015.
2. Yin Zhang, Min Chen, “Cloud Based 5G Wireless Networks”, SpringerBriefs in
Computer Science, Springer, 2016.
3. Athanasios G. Kanatas, Konstantina S. Nikita, Panagiotis Takis Mathiopoulos, “New
Directions in Wireless Communications Systems: From Mobile to 5G”, CRC Press,
2017.
PO1 PO2 PO3 PO4 PO5 PO6
CO1 1 1 1 2 1 1
CO2 2 1 1 2 3 2
CO3 1 2 1 2 2 1
CO4 1 1 2 2 2 3
CO5 2 1 2 2 2 3
CO6 2 2 2 2 2 1
39
IF5091 WIRELESS SENSOR NETWORKS AND PROTOCOLS LTPC
3 0 03
OBJECTIVES:
● To learn about the physical layer and MAC layer of WSNs.
● To understand the data centric computing to be followed in WSNs.
● To study about the routing protocols followed in WSNs.
● To study about data aggregation and in–network processing.
● To explore various motes, sensor network operating systems, databases and
development platforms.
Suggested Activities:
External learning – Exploring various sensors, the corresponding actuators, various
motes and their configuration (sensors supported, microcontroller and the clock
speed, Flash, RAM, Battery capacity, RF transceivers and data rate supported).
Flipped classroom on accuracy, hysteresis and resolution of sensors.
Exploring energy required for transmission, receiving and channel sensing.
Suggested Activities:
External learning – A study of Wireless HART, 6LoWPAN and ISA 100.11a
standards.
Flipped classroom on different roles of nodes in WSNs and different types of ZigBee
devices.
Analyzing duty cycle and sleep cycle of S–MAC protocol.
40
Suggested Activities:
Flipped classroom on data centric computing and information centric networks.
Assignments on analyzing the generation and consumption of energy with non-
conventional energy sources.
External learning – Sensor network platforms and tools and sensor network
databases.
Suggested Activities:
External learning – Exploring tracking of objects using ultrasonic sensors and camera
nodes.
Exploring the idea of smart cities using Object Tracking Sensor Networks (OTSN).
Flipped classroom on scene analysis, GPS, RFID and location based services.
Suggested Activities:
Explore various network simulators available to carry out experiments in WSNs and
various WSN testbeds: WISBED, SensLAB, MoteLAB, CitySense and Sensei
Flipped classroom on Contiki OS and COOJA IDE
Practical – Developing Arduino sketches and WSN simulation in ns-3.
Evaluation Methods:
Assignments on various WSN simulators and WSN testbeds
Quiz and discussion on Contiki OS and COOJA IDE
Writing Arduino sketches for socially relevant projects and creating a sensor network
topology in ns–2.35 with Mannasim patch or in ns–3
TOTAL: 45 PERIODS
41
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand different types of sensors, their actuators and the architecture of motes.
2. Design the topology of WSNs using different types of ZigBee devices and
understanding their roles.
3. Understand apply data centric computing in wireless sensor networks.
4. Apply appropriate localization techniques for different scenarios.
5. Manage sensor networks by synchronizing the time, locating and tracking objects.
6. Carry out experiments in simulators and real sensors.
REFERENCES:
1. Mohammed A. Matin, “Wireless Sensor Networks: Technology and Protocols”,
InTech, 2012
2. Holger Karl, Andreas Willig, “Protocols and Architectures for Wireless Sensor
Networks”, John Wiley, 2005.
3. Robert Faludi, “Building Wireless Sensor Networks”, O‘Reilly Media, 2011.
4. Feng Zhao, Leonidas Guibas, “Wireless Sensor Networks”, Morgan Kaufmann, 2004
5. Bob Tucker, “Wireless Sensor Networks: Signals and Communication Technology”,
NY Research Press, 2015
CO5 1 1 2 2 2 2
CO6 2 2 1 2 3 2
OBJECTIVES:
To study the basics of software architecture and drivers.
To be exposed to architectural styles and views.
To study the need for software architectural standards.
To be familiar with architectural patterns.
To understand the basics of software architecture documentation and tools.
UNIT I INTRODUCTION 9
Introduction to Software Architecture – Importance of Software Architecture – Standard
Definitions – Architectural Drivers – Architectural Structures and Views – Architectural
Patterns – Software Processes and Architecture Business Cycle.
Suggested Activities:
Study of the problem in a detailed fashion.
Identifying the underlying software architecture.
42
Suggested Evaluation Methods:
Case studies evaluation – Keyword in Context; Mobile robotics; Cruise control.
Suggested Activities:
Draw a mind map of quality attributes.
Identify the quality attributes of a given system.
Suggested Activities:
Case studies for styles like Data flow systems, Call-and-return systems, Virtual
machines, Independent components, Data-centered systems (repositories) etc.
Match appropriate software architectures to applications.
Suggested Activities:
Study of need for organizational standards.
Case studies for understanding the choice of architectural views.
Suggested Activities:
Documentation for Keyword in Context; Mobile robotics; Cruise control.
In class discussion for identifying tools that match the current style in software
architecture design.
43
Suggested Evaluation Methods:
Documentation of Software architecture systems like internet information systems,
automotive systems, scenario-based architectural analysis etc...
Exploring tools like Open Model Sphere etc
TOTAL: 45 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Explain influence of software architecture on business and technical activities.
2. Identify key architectural structures.
3. Use styles and views to specify architecture.
4. Design document for a given architecture.
5. Able to match appropriate software architectures to applications.
6. Develop standard process and to follow standard practices.
REFERENCES:
1. Len Bass, Paul Clements, Rick Kazman, “Software Architectures Principles and
Practices”, Second Edition, Addison-Wesley, 2003.
2. Anthony J. Lattanze, “Architecting Software Intensive System. A Practitioner’s
Guide”, Auerbach Publications, 2010.
3. Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little,
Paulo Merson, Robert Nord, Judith Stafford, “Documenting Software Architectures.
Views and Beyond”, Second Edition, Addison-Wesley, 2010.
4. Mary Shaw and David Garlan, “Software Architecture: Perspectives on an Emerging
Discipline”, Prentice Hall, 1996.
44
UNIT I INTELLIGENT AGENTS AND KNOWLEDGE REPRESENTATION 9
Agents and Environments – Good Behavior: The concepts of Rationality – The Nature of
Environments – The Structure of Agents – Knowledge Representation – Object Oriented
Approach – Semantic Nets – Frames – Semantic Web – Ontology.
Suggested Activities:
Flipped classroom on intelligent agents, means o knowledge representation
Assignment on exercise questions on PEAS formulation from the text-book.
Examples of knowledge representation through different methods and reasoning.
Practical – Ontology creation using Protégé.
Suggested Activities:
Flipped classroom on uninformed search and searching with costs.
In-class activity – Solve puzzles with uninformed and informed searches.
Practical – Implementation of search through Python/ Other languages.
Suggested Activities:
Reasoning methods through puzzles and real life scenarios.
Implementation: Inference through prolog/ python.
45
Suggested Activities:
Flipped classroom on planning methods.
Assignments on derivation of plan through partial order plan, graph plan and
hierarchical plan.
Suggested Activities:
Flipped classroom on theoretical study of learning methods
Assignment on solving problem in statistical learning
Practical – Programming exercises using Python/ other programming languages.
TOTAL: 45 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand the search techniques.
2. Apply the search techniques to real–time problems.
3. Apply the reasoning techniques to real world problems.
4. Understand the representation of knowledge.
5. Understand the learning techniques.
6. Apply AI techniques in developing real world applications.
REFERENCES:
1. Stuart J. Russell, Peter Norvig, “Artificial Intelligence – A Modern Approach”, Third
Edition, Pearson Education, 2015.
2. Elaine Rich, Kevin Knight, Shivashankar B. Nair, “Artificial Intelligence”, Third Edition,
Tata McGraw-Hill, 2008.
3. Dheepak Khermani, “A First Course in Artificial Intelligence”, McGraw-Hill, 2013.
4. NPTEL Artificial Intelligence Course by Prof. Dasgupta –
http://nptel.ac.in/courses/106105079/2
5. Sebastian Thrun, Peter Norvig, Udacity: Introduction to Artificial Intelligence,
https://in.udacity.com/course/intro–to–artificial–intelligence––cs271
46
PO1 PO2 PO3 PO4 PO5 PO6
CO1 1 1 1 2 1 1
CO2 3 1 2 2 2 1
CO3 3 1 3 3 2 1
CO4 1 1 2 1 2 1
CO5 2 1 3 3 2 1
CO6 2 1 1 2 3 2
OBJECTIVES:
To evaluate different computer systems based on performance metrics.
To explore parallelism in instruction and processor functional block.
To understand the fundamentals of Graphics processing unit.
To compare different approaches of memory interfacing in multiprocessor.
To understand and analyze interconnection in multicore.
Suggested Activities:
Flipped classroom on classes of processor.
External learning – Static (compiler) scheduling for instruction execution.
Survey on multi core and draw a mind map on trends of multicore processor.
Tutorial – Measuring processor performance.
47
Suggested Activities:
Flipped classroom on Flynn taxonomy.
External learning – True and false sharing.
Survey on memory consistency protocol.
Suggested Activities:
Flipped class on evolution of GPU.
External learning – Vector architecture.
Survey on multi core and draw a mind map on trends of multicore.
Suggested Activities:
Flipped classroom on memory hierarchy in Intel i7 and ARM Cortex.
Practical – Implement a simple functional model for memory mapping in cache using
C/C++.
Study hit/miss rates for various access patterns. Experiment with different
replacement policies.
Suggested Activities:
Flipped classroom on static and dynamic interconnection.
Practical – Implement a simple map reduce program for counting a word.
Case study on ware house scale computers
TOTAL: 45 PERIODS
48
OUTCOMES:
On completion of the course, the students should be able to:
1. Compare and evaluate the performance of various architectures.
2. Design a coherent and consistent memory system for multiprocessor.
3. Analyze the requirements of large systems to select and build the right infrastructure
4. Design and analyze memory and interconnection system for processor.
5. Distinguish and model multiprocessor architecture styles.
6. Point out the hazards present in a pipeline and suggest remedies
REFERENCES:
1. John L. Hennessey, David A. Patterson, “Computer Architecture – A Quantitative
Approach”, Morgan Kaufmann/Elsevier, Fifth Edition, 2012.
2. Richard Y. Kain, “Advanced Computer Architecture – A Systems Design Approach”,
PHI, 2011.
3. Hwang Kai, A. Ramachandran, R. Purushothaman, “Advanced Computer
Architecture: Parallelism, Scalability, Programmability” McGraw-Hill, 1993.
CO1 2 2 2 1 1 1
CO2 1 2 3 1 1 1
CO3 2 2 3 1 1 1
CO4 1 2 3 1 1 1
CO5 1 2 2 1 1 1
CO6 1 2 3 1 1 1
OBJECTIVES:
To know the mathematical background of Logic.
To learn the basics of Lower Order Logic.
To study the background of Higher Order Logic.
To explore the real world applications with Lower Order Logic.
To explore the real world applications with Higher Order Logic.
Suggested Activities:
Flipped classroom on natural deduction.
In-class activity – Solving puzzles through proposition logic.
Practical – Programming exercises for SAT solver.
49
Suggested Evaluation Methods
Quiz on formal proof methods.
Assignments on natural deduction and SAT Solvers.
Programming exercises on resolution and SAT Solvers.
UNIT II PREDICATE LOGIC 9
Syntax and semantics – Natural Deduction rules – Expressiveness –Micromodels of
software – Inference mechanisms in AI.
Suggested Activities:
Flipped classroom on micromodels of software.
In-class activity – Problem solving exercise on natural deduction rules.
Suggested Activities:
Flipped classroom on applications.
In-class activity – Solving problems with model checking.
Suggested Activities:
Flipped classroom on multi-agent reasoning.
In-class activity – Solving puzzles like Muddy Children and Three Wise Men
puzzle.
Suggested Evaluation Methods:
Quiz on Reasoning methods using Muddy Children and Three Wise Men puzzle.
Assignment on deduction and other reasoning methods.
TOTAL: 45 PERIODS
50
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand the mathematical underpinnings of Logic
2. Apply Proposition Logic to Computer Science domains
3. Understand the reasoning process of Predicate Logic
4. Understand the advantages of Higher Order Logic over Lower Order Logic
5. Apply Temporal Logic to Distributed Systems
6. Design Multiagent systems using Epistemic Logic
REFERENCES:
1. Michael Huth, Mark Ryan, “Logic in Computer Science: Modeling and Reasoning
about Systems”, Second Edition, Cambridge University Press, 2005.
2. Johan van Benthem, Hans van Ditmarsch, Jan van Eijck, Jan Jaspars, “Logic in
Action”, Open Course and ebook, 2016. http://www.logicinaction.org/.
3. Mordechai Ben-Ari, “Mathematical Logic for Computer Science”, Third Edition,
Springer, 2012.
4. Michael Fisher, “An Introduction to Practical Formal Methods using Temporal Logic”,
John Wiley, 2011.
PO1 PO2 PO3 PO4 PO5 PO6
CO1 2 1 2 1 1 1
CO2 1 1 3 2 2 1
CO3 1 1 3 2 2 1
CO4 1 1 3 2 2 1
CO5 3 1 3 2 2 1
CO6 3 1 3 2 2 1
OBJECTIVES:
To learn distributed communication.
To understand distributed resource management.
To study the basics of cloud computing.
To study about virtualization and cloud resource management.
Be able to install and use current cloud technologies.
51
Suggested Activities:
Practical – Implement clock synchronization in distributed system using Lamport’s
algorithm.
Practical – Create and distribute a Torrent file to share a file in LAN environment.
Suggested Activities:
Practical – Implement Election Algorithm.
Practical – Implement any one deadlock detection Algorithm.
Suggested Activities:
Practical – Use Google Collaboration Tools: Create Google Docs, Sheets, and Slides
and share it with others.
Practical – Explore public cloud services including Amazon, Google, Sales force, and
Digital Ocean etc.
Suggested Activities:
Create a simple web service using Python Flask /Java /any language [Web Service:
Client-server model should be implemented using socket/http].
Install Oracle Virtual Box/Vmware Workstation and Create a blackboard
application[Hint: One VM should act as a master and other VMs acts as a listeners,
when any content is written by the master VM, the content should be displayed in all
the Listener VMs].
52
Suggested Evaluation Methods:
Review of the Web Service Implementation: Proper Connection should be
established between the client and server to make use of the service offered by the
Server.
Assessment of the workings of installed Virtualization Tools.
Review the workings of application in virtual environment [Implemented using basic
echo and chat concepts].
Suggested Activities:
Practical – Use security tools like ACUNETIX, ETTERCAP to scan web applications
on the cloud, cloud networks for finding vulnerabilities, verifying leakage of
information to an unauthorized third party.
Practical – Install and configure OpenStack all– in– one using Devstack/Packstack
and Launch VMs in OpenStack through dashboard:
PRACTICAL EXECISES: 30
1. Connect a minimum of 3 nodes and implement a group chat amongst them.
2. Implement any one of the message ordering algorithms on the previously
implemented system.
3. Implement an election algorithm to elect a co– ordinator for the system.
4. Perform clock synchronization on the system, with the co– ordinator node’s time as
reference.Create a VM image which has a C compiler along with an operating
system and do the following experiments
a. Fibonacci Series. B. File Operations.
5. Install Virtualbox with different flavours of linux or windows OS on top of windows7 or
8.
6. Install Google App Engine/Heroku and run a run a simple webapp using python/java.
7. Install and run Openstack using Packstack/Devstack
8. Create two VMs in Openstack and exchange data.
9. Simulate a cloud scenario using Cloud Sim and run a scheduling algorithm not
present in Cloud Sim.
10. Install hadoop and manipulate a large dataset and run on Hadoop.
TOTAL: 75 PERIODS
53
OUTCOMES:
On completion of the course, the students will be able to:
1. Appreciate distributed communication, distributed resource management.
2. Articulate the main concepts, key technologies, strengths and limitations of cloud
computing.
3. Learn the key and enabling technologies that help in the development of cloud.
4. Develop the ability to understand and use the architecture of compute and storage
cloud, service and delivery models.
5. Explain the core issues of cloud computing such as resource management and
security.
6. Choose the appropriate technologies, algorithms and approaches for implementation
and use of cloud.
REFERENCES:
1. Andrew S. Tanenbaum, Maarten Van Steen, “Distributed Systems – Principles and
Paradigms”, Second Edition, Pearson Education, 2006.
2. Kai Hwang, Geoffrey C. Fox, Jack G. Dongarra, “Distributed and Cloud Computing,
From Parallel Processing to the Internet of Things”, Morgan Kaufmann, 2012.
3. Barrie Sosinky, “Cloud Computing bible”, Wiley, 2010.
4. Buyya R., Broberg J., Goscinski A., “Cloud Computing: Principles and Paradigm”,
John Wiley, 2011.
5. Mukesh Singhal, “Advanced Concepts in Operating Systems”, McGraw-Hill Series in
Computer Science, 1994.
6. John W. Rittinghouse, James F. Ransome, “Cloud Computing: Implementation
Management, and Security”, CRC Press, 2010.
OBJECTIVES:
To understand the fundamentals of Internet of Things.
To build a small low cost embedded system using Arduino / Raspberry Pi or
equivalent boards.
To learn communication protocols that is frequently used in IoT ecosystems.
To explore the ways of processing enormous amount of data generated in IoT based
systems.
To understand the role of cloud computing in IoT and to become familiar with various
cloud offerings.
54
UNIT I ENABLING TECHNOLOGIES AND REFERENCE MODELS 9
Sensors and Actuators – Centralized Sensing vs Distributed Sensing – Making Physical
Objects as Smart Objects – Enabling Technologies – Wireless Sensor Networks, Cloud
Computing and Data Analytics – IoTVs M2M – Possible IoT Reference Models – Domain
Specific IoTs – Levels of IoT Based Systems.
Suggested Activities:
Flipped classroom on enabling technologies.
External learning – Exploring proprietary protocols used in IoT and M2M.
Analyzing the required level of design for different IoT based ecosystems.
Suggested Activities:
Flipped classroom on open source movement in hardware and SDLC for embedded
systems.
Explore the variants of Arduino Boards, Atmel Microcontrollers, Cypress Pioneer and
NXP Freedom.
Learning to write Arduino Sketches and Python Programs.
Suggested Activities:
External learning – Explore various software tools that support Coap and MQTT.
Flipped classroom on role of Ipv6 in designing IoT based systems.
Analyze Cisco Reference Model and IBM Reference Models.
55
UNIT IV DATA ANALYTICS 9
Structured vs. Unstructured Data – Data in Motion vs. Transit – Machine Learning Overview
– Big Data Tools and Technologies – Hadoop – Map Reduce Programming Model, Job
Execution and Work Flow, Cluster Setup – Lambda Architecture – Flexible Netflow
Architecture – Providing Multiservice in IoT using FNF Components.
Suggested Activities:
External learning – Exploring popular machine learning algorithms (both supervised
and unsupervised).
Flipped classroom on MapReduce programming.
Learning dataflow programming using open source software library.
Suggested Activities:
Flipped classroom on cloud models and type of clouds.
External learning – Django framework.
PRACTICAL EXERCISE: 30
1. Develop a BLINK sketch in Arduino.
2. Develop an Arduino sketch that repeats an LED to glow brightly, decrease the
brightness, switches off the LED, increases the brightness and LED glows with
maximum intensity (a sketch for fading).
3. Develop an Arduino sketch that takes sensor readings for five seconds during the
startup, and tracks the highest and lowest values it gets. These sensor readings
during the first five seconds of the sketch execution define the minimum and
maximum of expected values for the readings taken during the loop (a sketch for
calibrating a sensor).
4. Develop an Arduino sketch that reads the value of a variable resistor as an analog
input and changes blink rate of the LED.
5. Develop an Arduino sketch to use a piezo element to detect the vibration.
6. Develop a Python program to control an LED using Rapberry Pi.
7. Develop a Python program to interface an LED with a switch using Rapberry Pi.
8. Implement a map reduce program that produces a weather data set.
9. Implement an application that stores big data in Hbase/Mongo DB using Hadoop/R.
10. Use Google Collaboration Tools: Create Google Docs, Sheets, and Slides and share
it with others.
11. Miniproject.
TOTAL: 75 PERIODS
56
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand the enabling technologies and reference models of IoT.
2. Design portable IoT devices using Arduino IDE/ Raspberry Pi with Python.
3. Apply appropriate protocols in various parts of IoTbased systems.
4. Understand Big Data tools and technologies and apply them in IoT based systems.
5. Design and deploy IoT based systems and connect them to cloud offerings.
6. Design IoT systems for various real time applications.
REFERENCES:
1. Arshdeep Bahga, Vijay Madisetti, “Internet of Things – A Hands-On Approach”,
Universities Press, 2015.
2. Manoel Carlos Ramon, “Intel® Galileo and Intel® Galileo Gen 2: API Features and
Arduino Projects for Linux Programmers”, Apress, 2014.
3. David Hanes, Gonzalo Salguerio, Patrick Grossetete, Rob Barton, Jerome Henry,
“IoT Fundamentals: Networking Technologies, Protocols, and Use Cases for Internet
of Things”, Cisco Press, 2017.
4. Perry Lea, “Internet of Things for Architects”, PACKT, 2018.
UNIT I INTRODUCTION 9
Introduction – Goals And History of IR – The Impact of the Web on IR – The Role of Artificial
Intelligence (AI) in IR – Basic IR Models Boolean and Vector Space Retrieval Models –
Ranked Retrieval – Text Similarity Metrics – TF-IDF (term frequency/inverse document
frequency) Weighting – Cosine Similarity.
57
Suggested Activities:
Install Lucene, LingPipe, and Gate.
UNIT II PREPROCESSING 9
Basic Tokenizing – Indexing and Implementation of Vector Space Retrieval – Simple
Tokenizing – Stop Word Removal and Stemming – Inverted Indices – Efficient Processing
with Sparse Vectors – Query Operations and Languages – Relevance Feedback – Query
Expansion – Query Languages.
Suggested Activities:
Construct manually a frequency table for the collection of documents after removing
stop words.
Index the frequency table using Latent semantic indexing techniques.
Suggested Activities:
Assignments on problems on precision and recall like the following:
An IR system returns 8 relevant documents and 10 non-relevant documents. There
are a total of 20 relevant documents in the collection. What is the precision of the
system on this search and what is its recall?
Suggested Activities:
Categorize documents by topic using classifiers and build groups of self-organized
documents using clustering algorithms.
58
UNIT V EXTRACTION AND INTEGRATION 9
Recommender Systems – Collaborative Filtering – Content Based Recommendation of
Documents and Products – Information Extraction and Integration – Extracting Data from
Text – XML – Semantic Web – Collecting and Integrating Specialized Information on the
Web.
Suggested Activities:
External learning – Survey on recommendation process that takes place in various
online shopping portals.
PRACTICAL EXERCISES: 30
Implement the following exercises using python libraries.
1. Construct a vector space model for the collection of text documents and also
compute the similarity between them. (4 hrs)
2. Perform the preprocessing on any text document collection. (4 hrs)
3. Classification and clustering approach on standard text database and also compute
performance measures Precision, Recall and F- measure (4 hrs)
4. Construct a search engine index with an optional backend database to manage large
document collections. (4 hrs)
5. Parse XML text and compute topic specific page rank. (4 hrs)
6. Mini project. (10 hrs)
TOTAL: 75PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Build an Information Retrieval system using the available tools.
2. Identify and design the various components of an Information Retrieval system.
3. Apply machine learning techniques to text classification and clustering which is used
for efficient Information Retrieval.
4. Analyze the Web content structure.
5. Analyze the approaches used for recommendation systems.
6. Design an efficient search engine.
REFERENCES:
1. Christopher D. Manning, Prabhakar Raghavan, HinrichSchütze, ”Introduction to
Information Retrieval” , Cambridge University Press, 2008.
2. F. Ricci, L. Rokach, B. Shapira, P. B. Kantor, “Recommender Systems Handbook”,
Springer, 2011.
3. Peter Brusilovsky, “The Adaptive Web Methods and Strategies of Web
Personalization”, Springer, 2007.
4. Manu Konchady, “Building Search Applications: Lucene, LingPipe, and Gate”,
Mustru Publishing 2008.
59
PO1 PO2 PO3 PO4 PO5 PO6
CO1 3 2 3 2 2 1
CO2 2 1 2 2 2 1
CO3 3 2 3 2 2 2
CO4 1 2 2 2 2 2
CO5 1 2 2 2 1 2
CO6 2 2 2 2 2 2
OBJECTIVES:
To understand the concept of semantic web and related applications.
To learn knowledge representation using ontology.
To understand human behavior in social web and related communities.
To learn visualization of social networks.
To understand the importance of security and privacy in social networks.
Suggested Activities:
Given a social graph derive the various graph metrics.
Group discussion on pros and cons of various online discussion forums.
Convert a graph into equivalent matrix representation.
60
UNIT II ONTOLOGY FOR SOCIAL NETWORK ANALYSIS 9
RDFS – Plus – Using RDFS – SKOS – Managing vocabularies with RDFS–Plus –
Introduction to Ontology– OWL–Web Ontology Language– Basic OWL– Bibliographic
Ontology (BIBO) – FOAF Good Relations– CIDOC’s Conceptual Reference Model (CRM) –
Digital Public Library (DPLA) – Counting and Sets in OWL – Ontologies on the Web–Putting
it all Together – Ontology Mapping –Good and Bad Modeling Practices – Expert Modeling in
OWL The Future Of The Semantic Web – RDF Parser/Serializer– RDF Store – Querying the
Semantic Web– SPARQL–Query Language for RDF–Advanced Features of SPARQL – RDF
and Inference.
Suggested Activities:
Group activity – Defining concepts and relations for sample scenarios using
benchmark ontology.
Practical – Developing ontology using tools.
Assignment on inferring the entities involved from a sample RDF schema.
Suggested Activities:
Group discussion on the pros and cons of communities in social networks.
Charting the metrics for evaluating real time online communities.
Suggested Activities:
User interaction data collection from real time social network applications.
Comparison of behavior models in social networks using sample data.
61
UNIT V PRIVACY IN SOCIAL NETWORKS AND VISUALIZATION 9
Introduction to Security and Privacy in Online Social Networks – Key Player Problem –
Intrusion Detection on Social Networks – Security Requirements for Social Networks –
Visualizing Online Social Networks – Novel Visualizations and Interactions for Social
Networks Exploration.
Suggested Activities:
Case studies on applications of social network analysis.
In-class activities – Network visualization using benchmark data and network
visualization tools.
PRACTICAL EXERCISES: 30
1. Download and install open source social network analysis tools like UCINET, Net
Miner, Smart Network Analyzer, Pajek, Gephi and explore the visualization and
analytical features of that tool using sample real world data.
2. Construct any graph representing a real life social network scenario, feed the same
as a matrix input to any tool and explore the graph theoretical metrics of the graph
and note down your observations and inferences on those values.
3. Download any RDF schema on tourism and explore various tags in the schema. To
nalyzing, open them using a Word Editor. Highlight the subject, predicate and
object in each file. If necessary use the RDF validator service by W3C to obtain the
triplets.
4. Download and install any open source RDF/Ontology editing tool like protégé, Onto
Studio, etc. Try the following in that tool: (i) Load existing RDF schema and visualize
and (ii) Add, modify and delete RDF
5. Do the following using W3C RDF Validator: (i) Enter a URI or paste an RDF/XML
document and parse the RDF and (ii) Visualize the RDF/XML as Triples and/or
Graph.
6. Download any benchmark FOAF ontology/RDF and study the various FOAF classes
used in that RDF/Ontology.
7. Download and install Gephi tool and explore importing graph file formats from (i)
Spreadsheet import wizard, (ii) Database import. Also use the statistics and metrics
framework in Gephi to calculate the following: Betweenness Centrality, Closeness,
Diameter, Clustering Coefficient, Page Rank.
8. Load different social network data into Gephi tool and perform community detection
using the features available and also compute the shortest path.
9. Explore various forced layout and random forest algorithms in Gephi tool to create a
network layout. Compare the outputs of various layouts algorithms.
10. Study of various bibliometric RDFs and visualization of citation networks.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Convert a social network data into its equivalent graph data and derive social graph
metrics.
2. Develop social blogs with necessary tags.
3. Design and develop ontology for various domains.
4. Predict human behavior in social web and related communities using community
prediction and mining algorithms.
5. Design and develop trust models for social networks.
6. Visualize social network data and quantify its structural properties.
62
REFERENCES:
1. Peter Mika, “Social Networks and the Semantic Web”, Springer 2007.
2. Borko Furht, “Handbook of Social Network Technologies and Applications”, Springer,
2010.
3. Guandong Xu ,Yanchun Zhang, Lin Li, “Web Mining and Social Networking –
Techniques and Applications”, Springer, 2011.
4. Dion Goh, Schubert Foo, “Social Information Retrieval Systems: Emerging
Technologies and Applications for Searching the Web Effectively”, IGI Global
Snippet, 2008.
5. Max Chevalier, Christine Julien, Chantal Soulé-Dupuy, “Collaborative and Social
Information Retrieval and Access: Techniques for Improved user Modelling”, IGI
Global Snippet, 2009.
6. John G. Breslin, Alexander Passant, Stefan Decker, “The Social Semantic Web”,
Springer, 2009.
CO6 1 2 2 2 2 2
OBJECTIVES:
To learn about the basic concepts of Digital Image Processing and various Image
Transforms.
To familiarize the student with the Image Enhancement Techniques.
To expose the student to a broad range of Image Processing Techniques and their
Applications.
To appreciate the use of current technologies those are specific to Image Processing
Systems.
To expose the students to real-world applications of Image Processing.
63
External learning – Matlab/Octave Toolboxes.
Installation of OpenCV/SciLab.
Numerical Problems in Pixel connectivity and Distance measures.
Suggested Activities:
Discussion of Mathematical Transforms.
Numerical problem solving using Fourier Transform.
Numerical problem solving in Image Enhancement.
External learning – Image Noise and its types.
Suggested Activities:
Discussion on Image Arte facts and Blur.
Discussion of Role of Wavelet Transforms in Filter and Analysis.
Numerical problem solving in Wavelet Transforms.
External learning – Image restoration algorithms.
UNIT IV IMAGESEGMENTATIONANDFEATUREEXTRACTION 9
Image Segmentation – Detection of Discontinuities – Edge Operators – Edge Linking and
Boundary Detection – Thresholding – Region based Segmentation –Image Features and
Extraction–Image Features– Types of Features–Feature Extraction–SIFT, SURF and
Texture–Feature Reduction Algorithms.
Suggested Activities:
Flipped classroom on importance of segmentation.
External learning – Feature selection and reduction.
External learning – Image salient features.
Assignment on numerical problems in texture computation.
64
Suggested Evaluation Methods:
Tutorial – Image segmentation and edge detection.
Assignment problems on feature extraction and reduction.
Quizzes on feature selection and extraction.
Suggested Activities:
Discussion on machine learning in image processing.
Discussion on image classifiers.
External learning – Study of visual effects, image processing in security, forensic
applications.
PRACTICAL EXERCISES:
1. Implementation of Reading and Writing of Images in Matlab and
OpenCV/Octave/SciLab.
2. Implementation of simple spatial filters like Low Pass Filters and High Pass Filters in
Matlab/OpenCV.
3. Implementation of Histogram Techniques in Matlab/Octave/OpenCV.
4. Implementation of noise modelling in Matlab/Octave/SciLab.
5. Implementation of Wavelet Transforms and Deconvolution Algorithms in
Matlab/Octave.
6. Implementation of SIFT, SURF in Matlab/Octave/SciLab.
7. Implementation of PCA in Matlab/Octave.
8. Implementation of Image Classifier using SVM in Matlab/Octave.
9. Implementation of Image Clustering algorithms in Matlab/Octave.
10. Implementation of Feature extraction Fingerprint using Matlab/Octave.
TOTAL: 75PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Implement basic Image Processing Operations.
2. Apply and develop new techniques in the areas of Image Enhancement and
Restoration.
3. Understand the Image segmentation algorithms.
4. Extract features from Images.
5. Apply classifier and Clustering algorithms for Image classification and Clustering.
6. Design and develop an image processing application that uses different concepts of
Image Processing.
65
REFERENCES:
1. Rafael Gonzalez, Richard E. Woods, “Digital Image Processing”, Fourth Edition,
Pearson Education, 2018.
2. S. Sridhar, “Digital Image Processing”, Second Edition, Oxford University Press,
2016.
3. Milan Sonka, Vaclav Hlavac, Roger Boyle, “Image Processing, Analysis and Machine
Vision”, Second Edition, Thompson Learning, 2007.
4. Anil K. Jain, “Fundamentals of Digital Image Processing”, Pearson Education, 2011.
CO1 2 1 1 1 1 1
CO2 2 1 1 1 1 1
CO3 2 1 1 1 1 1
CO4 2 1 1 1 1 1
CO5 2 1 1 1 1 1
CO6 3 1 2 3 2 1
Suggested Activities:
Installation of OpenCV.
Numerical Problems on Filtering, Masking, Smoothing and sharpening.
66
UNIT II IMAGE SEGMENTATION and CAMERA CALLIBRATION 9
Point and Line Detection – Hough Transform and Shape detection – Edge Detection –
Corner Detection – Harris Detector- Stereopsis – Correspondence Problem –RANSAC and
Alignment –Epipolar Geometry.
Suggested Activities
Flipped classroom on importance of segmentation.
External learning – Various camera calibration methods.
Suggested Activities
Flipped classroom on various feature reduction methods.
External learning – Optical flow algorithms.
Suggested Activities
Flipped classroom on pedestrian detection methods.
Assignments on numerical problems on Shading and Texture Model based Vision.
Assignments on numerical problems on AdaBoost and Random Decision Forests.
Suggested Activities
External learning – Exploring advancement in computer vision.
Discussion on Emotion Recognition methods.
67
PRACTICAL EXERCISE: 30
1. Implementation of Noise removal algorithms using OpenCV.
2. Implementation of Object detection based on Edge detection algorithms on any
application using OpenCV.
3. Implementation of Perspective projection of the lane borders using OpenCV.
4. Implementations of Feature Extraction of an object using SIFT in OpenCV.
5. Implementation of Feature Extraction of an object using SURF in OpenCV.
6. Implementation of Emotion Recognitionin OpenCV.
7. Implementation of Gesture Recognitionin OpenCV.
8. Implementation of Face Detection in OpenCV.
9. Implementation of Object detection using AdaBoost in OpenCV
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Implement basic computer vision algorithms.
2. Familiar with the use of MATLAB and OpenCV environment.
3. Apply and develop various object detection methods.
4. Design and implement industrial applications that incorporate different concepts of
Image Processing.
5. Analyze different Object detection algorithms used in Computer Vision.
6. Understand the proper use of shape and Shape related cue features for Computer
Vision Applications.
REFERENCES:
1. Richard Szeliski, “Computer Vision: Algorithms and Applications”, Springer
International, 2011.
2. Reinhard Klette, “Concise Computer Vision: An Introduction into Theory and
Algorithms”, Springer, 2014.
3. E. R. Davies, “Computer and Machine Vision”, Fourth Edition, Elsevier, 2012.
68
IF5076 DEEP LEARNING LTPC
3 0 24
OBJECTIVES:
To understand the basic ideas and principles of Neural Networks
To understand the basic concepts of Big Data and Statistical Data Analysis
To familiarize the student with The Image Processing facilities like Tensorflow and
Keras
To appreciate the use of Deep Learning Applications
To understand and implement Deep Learning Architectures
Suggested Activities:
Discussion of role of Neural Networks.
External learning – Boltzmann Machine and Perceptron.
Practical – Installation of TensorFlow and Keras.
Suggested Activities:
Discussion of role of Gradient Descent in Deep Learning.
External learning – Feature extraction and feature learning.
Survey of Deep Learning Development Frameworks.
Discussion of Gradient Descent Problem.
Suggested Evaluation Methods
Tutorial – Gradient descent in deep learning.
Assignment problems in optimization.
Quizzes on deep learning regularization and optimization.
69
UNIT IV MORE DEEP LEARNING ARCHITECTURES 9
LSTM, GRU, Encoder/Decoder Architectures – Autoencoders – Standard- Sparse –
Denoising – Contractive- Variational Autoencoders – Adversarial Generative Networks –
Autoencoder and DBM
Suggested Activities:
Discussion of role of Deep Learning architectures.
External learning – Compression of features using Autoencoders.
Suggested Activities:
Discussion of role of Deep Learning in Image and NLP applications.
External learning – NLP concepts.
PRACTICAL EXERCISES:
1. Implement Simple Programs like vector addition in TensorFlow.
2. Implement a simple problem like regression model in Keras.
3. Implement a perceptron in TensorFlow/Keras Environment.
4. Implement a Feed-Forward Network in TensorFlow/Keras.
5. Implement an Image Classifier using CNN in TensorFlow/Keras.
6. Implement a Transfer Learning concept in Image Classification.
7. Implement an Autoencoder in TensorFlow/Keras.
8. Implement a SimpleLSTM using TensorFlow/Keras.
9. Implement an Opinion Mining in Recurrent Neural network.
10. Implement an Object Detection using CNN.
11. Mini Project
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand the role of Deep learning in Machine Learning Applications.
2. To get familiar with the use of TensorFlow/Keras in Deep Learning Applications.
3. To design and implement Deep Learning Applications.
4. Critically Analyse Different Deep Learning Models in Image Related Projects.
5. To design and implement Convolutional Neural Networks.
6. To know about applications of Deep Learning in NLP and Image Processing.
70
REFERENCES:
1. Ian Good Fellow, Yoshua Bengio, Aaron Courville, “Deep Learning”, MIT Press,
2017.
2. Francois Chollet, “Deep Learning with Python”, Manning Publications, 2018.
3. Phil Kim, “Matlab Deep Learning: With Machine Learning, Neural Networks and
Artificial Intelligence”, Apress , 2017.
4. Ragav Venkatesan, Baoxin Li, “Convolutional Neural Networks in Visual Computing”,
CRC Press, 2018.
5. Navin Kumar Manaswi, “Deep Learning with Applications Using Python”, Apress,
2018.
6. Joshua F. Wiley, “R Deep Learning Essentials”, Packt Publications, 2016.
CO1 2 1 1 1 1 1
CO2 1 1 1 1 3 1
CO3 1 1 1 1 1 3
CO4 1 2 1 2 1 1
CO5 2 1 1 1 3 3
CO6 1 3 1 1 1 2
OBJECTIVES:
To learn the principles and fundamentals of HCI.
To understand components of interfaces and screens, including windows, menus and
controls.
To understand user interface design principles, and apply them to designing an
interface.
To learn user interface designs through usability inspection and user models.
To understand the rationale and guidelines for an effective interface design
methodology.
71
Suggested Activities:
Flipped classroom on knowledge on the HCI design process.
External learning – Exploration of various human computer interfaces.
Suggested Activities:
Flipped classroom on designing a good User Interface system based on design rules.
External learning – Techniques related to evaluation of HCI design.
Suggested Activities:
Flipped classroom on basic knowledge of various models used in HCI design.
External learning – Design and implementation of various models used in HCI
design.
Suggested Activities:
Flipped classroom on basic concepts of probability and statistics.
External learning – Practical problems related to hypothesis testing.
72
UNIT V DIALOGUE AND CURRENT TRENDS 9
Dialogue Notations and Design – Dialogue Need – Dialogue Design Notations – Graphical –
Textual – Representing Dialogue – Formal Descriptions – Dialogue Analysis – System
Models – Interaction Models – Relationship with Dialogue – Formalisms – Formal Notations
– Interstitial Behavior – Virtual Reality – Devices for Virtual Reality and 3D Interaction –
Modeling Rich Interaction – Status Event Analysis – Properties – Rich Contexts – Sensor-
Based systems – Groupware – Applications – Ubiquitous Computing – Applications – HCI
for Smart Environment – HCI for Scientific Applications, Medical Applications – HCI for
Assistive Technology.
Suggested Activities:
Flipped classroom on basic concepts of dialogue notations and design.
External learning – Study of how Virtual Reality interface are used in various real
time applications.
Suggested Evaluation Methods:
Tutorial – Recent trends in human computer interface systems.
Assignment on dialogue notation representation for various interfaces.
PRACTICAL EXERCISES: 30
1. Study of UI Development Tools like scratch, React, Adobe XD, Flash, Wix, Bootstrap
and Angular js.
2. Study of user interfaces of common applications like Facebook, UberEats, Twitter,
IRCTC, Anna university Sems, Amazon etc. Prepare a comparative Design
document.
3. Design and development of simple user interface for an E-commerce website.
4. Design and development of the user interface of a university Web portal.
5. Design and development of movie ticket booking interface for Physically Challenged
people. Prepare design document for the following interfaces which should include
the design process, design methodology and the design rules used in the
development of the UI application. The document should also justify the chosen
methodology for the given application. Using an evaluation technique, evaluate the
way in which user experiences with your proposed design would be satisfiable to the
end user.
6. Implementation of Mixed Reality based visual interface for dialogue based systems.
7. Implementation of user interfaces for video streaming application which caters to the
need of older people.
8. Design and development of mobile application interfaces for chat bots.
9. Design and development of novel user interfaces for any wearable device.
10. Design and develop an interface for geographical information system.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Interpret the contributions of human factors and technical constraints on human-
computer interaction.
2. Evaluate the role of current HCI theories in the design of software.
3. Design and develop interfaces related to real applications.
4. Apply exploratory and experimental research methods in HCI.
5. Familiarize with principles and guidelines of user centered interface design process,
evaluation methodologies and tools to analyze the interfaces.
6. Implement human computer interfaces for different applications using various tools
and technologies.
73
REFERENCES:
1. Alan Dix, Janet Finlay, Gregory Abowd, Russell Beale, “Human Computer
Interaction”, Third Edition, Prentice Hall, 2004.
2. Preece, J., Sharp, H., Rogers, Y. “Interaction Design: Beyond Human-Computer
Interaction”, Fourth Edition, John Wiley, 2015.
3. Jonathan Lazar Jinjuan Heidi Feng, Harry Hochheiser, “Research Methods in
Human-Computer Interaction”, Wiley, 2010.
4. Ben Shneiderman, Catherine Plaisant, “Designing the User Interface: Strategies for
Effective Human-Computer Interaction”, Fifth Edition, Reading, Addison Wesley,
2009.
5. Jeff Johnson, “Designing with the Mind in Mind: Simple Guide to Understanding User
Interface Design Rules”, Morgan Kauffman, 2010.
CO1 3 1 1 1 1 1
CO2 3 2` 1 1 3 1
CO3 3 2 2 1 3 1
CO4 3 1 2 2 1 1
CO5 3 1 3 2 3 2
CO6 2 1 2 3 3 1
OBJECTIVES:
To provide basic knowledge about the fundamentals of pattern recognition and its
application.
To understand about unsupervised algorithms suitable for pattern classification.
To familiarize with the feature selection algorithms and method of implementing them
in applications.
To learn about the basis of algorithm used for training and testing the dataset.
To learn basic fuzzy system and neural network architectures, for applications in
pattern recognition, image processing, and computer vision.
Suggested Activities:
Discussion on pattern recognition application like image classification .
Installation of Matlab.
Assignment on numerical problem solving on Naive Bayesian classifier.
74
Suggested Evaluation Methods:
Quizzes on importance of classifier in recognizing various patterns.
Practical – Programming assignments on implementation of Bayes theorem.
UNIT II CLUSTERING 9
Clustering Concept – Hierarchical Clustering Procedures – Partitional Clustering – Clustering
of Large Data Sets – EM Algorithm – Grid Based Clustering– Density Based Clustering.
Suggested Activities:
Assignments on numerical problem solving using hierarchical Clustering in Matlab.
Assignments on numerical problem solving using EM Algorithm in Matlab.
Suggested Activities:
Assignment on numerical problem solving using K-NN algorithm.
Assignment on numerical problem solving using Decision Tree algorithm.
Suggested Activities:
Assignments on numerical problem solving using HMM algorithm in Matlab.
Assignments on numerical problem solving using SVM classifier in Matlab.
Suggested Activities:
Numerical problem solving on simple neuron in Matlab.
Numerical problem solving on custom neural networks in Matlab.
75
Suggested Evaluation Methods:
Quizzes on various fuzzy classification methods.
Practical – Programming assignments on neural network for pattern recognition
applications.
PRACTICAL EXERCISE: 30
1. Implementation of Image classification using Hebbnet method inMatlab.
2. Implementation of Image classification using Perceptron method in Matlab.
3. Implementation of Fuzzy pattern recognition in Matlab/OpenCV.
4. Implementation of Feature extraction using KL transform Matlab/OpenCV.
5. Implementation of Clustering using partitional based clustering in Matlab/OpenCV.
6. Implementation of Clustering using density based clustering in Matlab/OpenCV.
7. Implementation of Classification using SVM in Matlab/OpenCV.
8. Implementation of Classification using HMM in Matlab/OpenCV.
9. Implementation of Classification using Bayes in Matlab/OpenCV.
10. Implementation of Neural Network methods using OpenCV.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Implement basic pattern classifier algorithms.
2. Have knowledge about the working principle of unsupervised algorithm
3. Have knowledge about functionality of classifiers
4. Perceive the recent advancement in pattern recognition
5. Apply SVM and HMM algorithms for real time applications.
6. Implement advanced methodologies over image processing applications.
REFERENCES:
1. C. M. Bishop, “Pattern Recognition and Machine Learning”, Springer, 2006.
2. M. Narasimha Murthy, V. Susheela Devi, “Pattern Recognition”, Springer, 2011.
3. Andrew Webb, “Statistical Pattern Recognition”, Arnold Publishers, 1999.
4. R. O. Duda, P. E. Hart, D. G. Stork, “Pattern Classification”, John Wiley, 2001.
5. S. Rajasekaran, G. A. Vijayalakshmi Pai, “Neural Networks, Fuzzy Logic and Genetic
Algorithm: Synthesis and Applications”, Prentice Hall, 2010.
CO2 2 1 1 1 1 1
CO3 2 1 1 1 1 3
CO4 2 1 2 3 1 2
CO5 2 1 1 1 1 1
CO6 2 1 2 2 1 3
76
IF5073 AUTONOMOUS GROUND VEHICLE SYSTEMS LT PC
3 0 2 4
OBJECTIVES:
To learn the fundamentals of autonomous driving.
To study the different ways of sensing internal states of Autonomous Ground
Vehicles (AGVs).
To learn the environment perception for autonomous driving.
To explore the navigation techniques of AGVs.
To learn the fundamentals of vehicle control systems and connected vehicles.
UNIT I INTRODUCTION TO AUTONOMOUS DRIVING 9
Autonomous Driving Technologies Overview – Autonomous Driving Algorithms –
Autonomous Driving Client System – Autonomous Driving Cloud Platform – Components of
autonomy – Difference between Unmanned and Autonomous Vehicles – Introduction to
Unmanned Aerial Vehicles (UAVs).
Suggested Activities:
Flipped classroom on autonomous driving system architecture.
External learning – Building blocks of typical Unmanned Aerial Vehicles.
Flipped classroom onrobot operating system.
External learning – Applications of autonomous vehicles (aerial, under water, ground
vehicles).
Assignment on the design requirement specifications of autonomous vehicles (aerial,
under water, ground vehicles).
Suggested Activities:
Flipped Classroom on sensor characteristics.
External learning – Working principle of IMU/GPS/RADAR sensors.
External learning – Exploring Velodyne Lidar sensor dataset in Veloview software.
77
Suggested Activities:
Flipped classroom onBasic Mean Shift Algorithm.
External learning – Lane detection algorithm.
Flipped classroom onvehicle tracking.
Suggested Activities:
Flipped classroom on GPS orbits/GPS Signals.
External learning – Indian Regional Navigation Satellite System (IRNSS).
Assignment onthe working principles of Google Map.
Suggested Activities:
Flipped classroom on cruise control.
External learning – Study on proportional integral derivative (PID) control.
Assignment – Communication protocols for connected vehicles.
PRACTICAL EXERCISES: 30
1. Write a python program to read Lidar sensor data and write it in a text file.
2. Write an Arduino sketch to operate DC motors through motor driver.
3. Write a python program on Raspberry Pi board to control the movement of pan-tilt
platform with 5v dc motors.
4. Write a python program to read the IMU sensor values through I2C bus in Raspberry
Pi board.
5. Develop an Arduino application to drive a simple rover with four wheels in a random
path.
6. Write a python program to send the location of a rover with GPS to Firebase real-
time database.
7. Develop a Lidar sensor assisted application to implement 2D collision cone based
obstacle avoidance for rovers.
78
8. Develop an application using python program to control the pan-tilt motion of a
camera and to take pictures/videos in the field of view of the camera.
9. Develop a convolutional neural network model to detect cars in videos.
10. Develop a convolutional neural network model to detect road lanes in videos.
11. Mini Project.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Identify the requirements and design challenges of AGVs.
2. Select suitable sensors to sense the internal state and external world of AGVs.
3. Implement lane detection, road detection & vehicle detection algorithms.
4. Simulate/implement ground vehicle navigation algorithms.
5. Simulate/implement ground vehicle control systems.
6. Design communication protocols for connected vehicles.
TEXT BOOKS:
1. Shaoshan Liu, Liyun Li, Jie Tang, Shuang Wu, Jean-Luc Gaudiot, “Creating
Autonomous Vehicle Systems”, Morgan & Claypool, 2018.
2. UmitOzguner, TankutAcarman, Keith Redmill, “Autonomous Ground Vehicles”,
Artech House, 2011.
REFERENCES:
1. Hong Cheng, “Autonomous Intelligent Vehicles Theory, Algorithms, and
Implementation”, Springer, 2011.
2. Mohinder S. Grewal, Angus P. Andrews, Chris G. Bartone, “Global Navigation
Satellite Systems, Inertial Navigation, and Integration”, Third Edition, John Wiley &
Sons, 2013.
CO1 3 2 2 2 1
3
CO2 1 3 2 2 3 1
CO3 3 2 2 2 3 1
CO4 3 3 2 2 3 1
CO5 3 2 2 2 3 1
CO6 3 2 2 2 3 3
79
UNIT I INTRODUCTION 9
Need for Free and Open Source Software – Overview of Linux – Distributions – Licensing
Schemes – Versions – Collaborative Version Control Systems – Shell Commands – LAMP.
Suggested Activities:
Flipped classroom on free software varieties, GPL.
Programming small pieces of fresh snippets.
Complete the program from the given starter code.
Suggested Activities:
Flipped classroom on overview of Python
In-class activity – Programming small pieces of fresh snippets.
In-class activity – Complete the program from the given starter code.
Suggested Activities:
Flipped classroom on working with relational databases.
Programming small pieces of fresh snippets.
Complete the program from the given starter code.
80
UNIT V OPEN HARDWARE 9
Raspberry Pi – Arduino – Installation of Portable OS – Building Web Applications with
Raspberry Pi and Arduino
Suggested Activities:
Flipped classroom on overview of available portable devices
Programming small pieces of fresh snippets.
Practical – Complete the program from the given starter code.
PRACTICAL EXERCISES: 30
1. Use of Linux shell commands.
2. Programming a simple application such as a calendar using Python.
3. Working with git commands.
4. Working with dynamic websites using HTML.
5. Working with HTML – bootstrap strategies.
6. Installation of Flask and creating websites with Flask.
7. Design a website with Flask – HTML – Bootstrap.
8. Installation and working with Mongodb.
9. Creation of website with Flask+Mongodb+HTML.
10. Installation of Linux OS in open hardware.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Use shell commands for executing programs and applications.
2. Use Git for collaboration and maintaining different versions.
3. Develop a web application using Flask framework.
4. Work with NoSQL structures.
5. Develop a server side web application using Python.
6. Explore the features of open hardware.
REFERENCES:
1. Jesus M. Gonzalez Barahona, Joaquin Seoane Pascual, Gregorio Robles,
“Introduction to Free Software”, Third Edition, Free Technology Academy, 2009.
2. http://ftacademy.org/sites/ftacademy.org/files/materials/fta–m1–intro_to_FS–v1.pdf
3. https://getbootstrap.com/
4. Peter Wentworth, Jeffrey Elkner, Allen B. Downey, Chris Meyers, “How to Think Like
a Computer Scientist”, Open Book, 2012.
5. Scott Chacon, Ben Straub, “Pro Git”, Free ebook under Creative Commons, Second
Edition, Apress, 2016.
6. Miguel Grinberg, “Flask Web Development Developing Web Applications with
Python”, O’Reilly, 2014.
7. Karl Seguin, “The Little Mongo DB Book”, https://github.com/karlseguin/the–little–
mongodb–book.
8. Charles Bell, “Beginning Sensor Networks with Arduino and Raspberry Pi”, Apress,
2013.
81
PO1 PO2 PO3 PO4 PO5 PO6
CO1 2 1 3 2 3 1
CO2 2 2 3 3 3 3
CO3 1 1 3 3 3 2
CO4 1 1 3 1 2 1
CO5 2 1 3 3 3 1
CO6 1 1 2 1 3 1
OBJECTIVES:
To understand the basics of GPU architectures.
To write programs for massively parallel processors using CUDA/OpenCL.
To understand the issues in mapping algorithms for GPUs.
To understand different GPU programming models.
To analyze performance of algorithms on GPUs.
UNIT I GPU ARCHITECTURE 12
Evolution of GPU Architectures – Understanding Parallelism with GPU – Typical GPU
Architecture – CUDA Hardware Overview – Threads, Blocks, Grids, Warps, Scheduling –
Memory Handling with CUDA: Shared Memory, Global Memory, Constant Memory and
Texture Memory.
Suggested Activities:
Assignment on surveying machines in the lab and identifying the configuration of the
GPUs in them.
Practical – Download the CUDA toolkit and setup the CUDA environment.
Practical – Write simple CUDA code and vary the parameters to understand the
concept of threads, blocks and grids.
82
Suggested Activities:
Code walkthrough of sample CUDA programs.
Practical – Execute sample CUDA programs with different memory options.
Suggested Activities:
Code walkthrough of sample CUDA programs with synchronization within thread
blocks and across thread blocks.
Practical – Write CUDA programs with and without pitched memory and compare.
Suggested Activities:
Code walkthrough of sample OpenCL programs.
Practical – Execute sample OpenCL programs with different memory options.
Suggested Evaluation Methods:
Evaluation of the practical by checking the trace of the OpenCL programs.
Evaluation of the practical by checking the output corresponding to different memory
options.
Suggested Activities:
Assignment on studying and analyzing programs in CUDA/OpenCL to perform graph
traversal, tree traversal.
Assignment on studying and analyzing sample programs for matrix multiplication and
analyzing their performance.
83
5. Implement matrix multiplication using OpenCL.
6. Implement vector reduction using OpenCL.
7. Implement graph traversal using CUDA
8. Implement image processing algorithms using CUDA
9. Experiment with advanced features such as dynamic parallelism
10. Mini project: Choose an application and implement using GPU and do performance
analysis.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Describe GPU Architecture.
2. Write programs using CUDA, identify issues and debug them.
3. Implement efficient algorithms in GPUs for common application kernels, such as
matrix multiplication.
4. Write simple programs using OpenCL.
5. Given a problem, identify efficient parallel programming patterns to solve it.
6. Compare different GPU programming paradigms.
REFERENCES:
1. Shane Cook, “CUDA Programming: A Developer’s Guide to Parallel Computing with
GPUs”, Morgan Kaufmann, 2013.
2. David R. Kaeli, Perhaad Mistry, Dana Schaa, Dong Ping Zhang, “Heterogeneous
Computing with OpenCL 2.0”, Morgan Kauffman, 2015.
3. David B. Kirk, Wen-mei W. Hwu, “Programming Massively Parallel Processors – A
Hands-on Approach”, Third Edition, Morgan Kaufmann, 2016.
4. Nicholas Wilt, “CUDA Handbook: A Comprehensive Guide to GPU Programming”,
Addison Wesley, 2013.
5. Jason Sanders, Edward Kandrot, “CUDA by Example: An Introduction to General
Purpose GPU Programming”, Addison Wesley, 2011.
6. http://www.nvidia.com/object/cuda_home_new.html.
7. http://www.openCL.org.
84
IF5003 SERVICE ORIENTED ARCHITECTURE AND LTPC
MICROSERVICES 3 02 4
OBJECTIVES:
To understand the basic principles of service orientation.
To analyze various software architectures.
To introduce service oriented and microservices architecture.
To analyze and implement a web service based applications.
To understand the technology underlying service design and microservices
applications.
Suggested Activities:
Sample application for each type of architecture.
Study of popular enterprise applications.
Cloud computing platforms comparison.
DevOPs solution fundamentals.
Suggested Activities:
Applications of SOA and MSA.
OOAD and SOAD comparison.
Identifying simple services based on SOA and MSA.
85
Suggested Evaluation Methods:
Implementing XML, DOM and SAX.
Programming exercises.
Suggested Activities:
Study for various service design.
SOA best practices case studies.
Suggested Activities:
Implementation of microservices architecture with python.
Creation of container services.
Cloud deployment.
PRACTICAL EXERCISES: 30
1. Exploring DevOps based Application Development tools in Open Source
Environment.
2. Creation of XML Document and manipulate using DOM and SAX parser in Java /.Net
/Python framework.
3. Creation of WSDL and SOAP Request and Response and exploring UDDI.
4. Developing RESTful web services in Java / Python framework, deploy and consume
in different environment using Web Service Interoperable Technology (WSIT)
5. Developing RESTful web services in .NET framework, deploy and consume in
different environment using Web Service Interoperable Technology (WSIT).
6. Creation of a web service based application incorporating WS-Security standards.
7. Composing web services using BPEL workflow engine.
8. Creation of an application following Micro Service Architecture (MSA) using HTTP
(and REST) and Remote Procedure Call (RPC) over Advanced Message Queuing
Protocol (AMQP) in Python environment with Flask-Nameko framework.
9. Creation of an application following Micro Service Architecture (MSA) using
Microservices frameworks for Java (Spring Boot, Jersey, Swagger)
10. Mini project.
Requirements:
86
a. Java
b. .Net Visual Studio
c. Python (Latest version)
d. Flask-Nameko
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Analyze and design SOA based solutions.
2. Understand the basic principles of service orientation.
3. Analyze and implement a web service based applications.
4. Understand the technology underlying service design.
5. Implement SOA with Microservices applications.
6. Classify and make reasonable decision on the adoption of different SOA platforms.
REFERENCES:
1. Shankar Kambhampaty, “Service-Oriented Architecture and Microservice
Architecture: For Enterprise, Cloud, Big Data and Mobile”, Third Edition, Wiley, 2018.
2. Tarek Ziadé , “Python Microservices Development”, O’REILLY publication,2017.
3. Thomas Erl, “Service Oriented Architecture: Concepts, Technology, and Design”,
Pearson Education, 2005.
4. Ron Schmelzer et.al, “XML and Web Services”, Pearson Education, 2002.
5. Leonard Richardson, Sam Ruby, “RESTful Web Services”, O’REILLY publication,
2007.
6. Nicolai M. Josuttis, “SOA in Design – The Art of Distributed System Design”,
O’REILLY publication, 2007.
7. Raj Balasubramanian, Benjamin Carlyle, Thomas Erl, Cesare Pautasso, “SOA with
REST – Principles, Patterns & Constraints for Building Enterprise Solutions with
REST”, Prentice Hall, 2013.
CO1 1 1 1 2 1 1
CO2 1 1 1 2 1 1
CO3 2 2 2 2 1 1
CO4 1 1 1 1 1 1
CO5 2 2 2 2 1 1
CO6 2 1 2 1 1 1
87
UNIT I INTRODUCTION TO SECURITY AND MATHEMATICAL FOUNDATIONS 9
Introduction to Security – Mathematics of Security: Number theory – Modular Arithmetic –
Extended Euclidean Theorem – Algebraic structures – Galois field – Primality test – Fermat
and Euler’s theorem – Legendre and Jacobi symbols – Chinese Remainder theorem –
Discrete Logarithms – Elliptic Curves – Classical Cryptosystems.
Suggested Activities:
In-class activity – Cryptanalysis of classical cryptography.
In-class activity – Solve some examples related to number theory and the theorem.
External learning – Evolution of computer systems, identification of benchmarks.
Demonstration on Cryptool.
Suggested Activities:
External learning – Attacks on DES and AES and Crptanalysis.
Practical – Study of a various attacks related to symmetric key encryption.
Suggested Activities:
External learning – Familiarizing with public and private key in asymmetric
cryptography.
Practical – Verify the message integrity using hashing techniques.
88
Suggested Activities:
Understand the components of x.509 certificate.
Demonstration of email security.
Practical – Experiment with SSL in web server.
External learning – Understanding how the existing firewalls work and their
usages.
Suggested Activities:
External learning – Designing trusted OS.
Case study – Applications that use Blockchain technology.
PRACTICAL EXERCISES: 30
1. Write a program to perform encryption and decryption using the following algorithms.
a. Caesar cipher, Affine Cipher.
b. Hill Cipher, Playfair Cipher.
c. Transposition Cipher.
2. Perform Cryptographic attack on the ciphertext generated using any of the algorithm
implemented in exercise 1.
3. Implementation of symmetric cryptographic algorithms such as DES, AES, etc.
4. Implementation of RSA algorithm and demonstration of the key generation and
encryption process.
5. Generation of Keys between two end parties using Diffie Hellman Key Exchange.
6. Write a program to generate message digest for the given message using the
SHA/MD5 algorithm and verify the integrity of message.
7. Write a program to sign and verify a document using DSA algorithm.
8. Perform Penetration testing on a web application to gather information about the
system, then initiate XSS and SQL injection attacks using tools in kali Linux.
9. Hands–on with Software and Hardware firewall configuration and intrusion detection
using SNORT
10. Configuring and utilizing network protection components like VPNs, anti–virus
software, anti–spyware, etc.
TOTAL: 75 PERIODS
89
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand the fundamentals of network security, security architecture, threats and
vulnerabilities.
2. Apply the different cryptographic operations of symmetric cryptographic algorithms.
3. Apply the different cryptographic operations of public key cryptography.
4. Apply the various Authentication schemes to simulate different applications.
5. Understand various Security practices and System security standards
6. Know the state of art technologies like Ethical Hacking, Block chain etc.
REFERENCES:
1. William Stallings, “Crpyptography and Network security Principles and Practices”,
Pearson Education/PHI, Fourth Edition, 2006.
2. Behourz Forouzan, Debdeep Mukhopadyay, “Cryptography & Network Security” Tata
MCGraw-Hill Education, 2010
3. Charles P. Pfleeger, Shari L. Pfleeger, “Security in Computing”, Third Edition,
PHI/Pearson Education, 2003.
4. Wenbo Mao, “Modern Cryptography Theory and Practice”, Pearson Education, 2004.
CO2 3 2 3 2 3 3
CO3 2 3 2 2 3 3
CO4 3 2 2 2 3 3
CO5 1 2 3 3 3 3
CO6 1 3 3 3 3 3
90
Suggested Activities:
External learning – Software Quality models.
Preparation of Report on Quality plans.
Suggested Activities:
Discussion Forum – Software Quality Assurance Components.
External learning – Quality assurance tools.
Suggested Activities:
Discussion forum – Configuration management audit.
Discussion forum – Documentation control.
91
UNIT V SOFTWARE TESTING 9
Definition and objectives – Software testing strategies – Software test classifications – White
box testing: Data processing, Calculation correctness tests, McCabe’s cyclomatic complexity
metrics, Software qualification and reusability testing, Advantages and disadvantages of
white box testing – Black box testing: Equivalence classes for output correctness tests,
Revision factor testing classes, Transition factor testing classes, Advantages and
disadvantages of black box testing– Implementation: The testing process – Test case design
– Automated testing – Alpha and beta site testing programs.
Suggested Activities:
Discussion on Test case generation and testing methods.
PRACTICAL EXERCISES: 30
1. Generation of Quality assessment report of Contract documents.
2. Generation of Quality Assessment report of Plan documents.
3. Quality assessment report of Design work products.
4. Quality assessment of Risk management documents.
5. Quality Assessment of Configuration management documents.
6. Quality Assessment of Cost models.
7. Automatic Test case generation for Black box testing.
8. Automatic Test case generation for White box testing.
9. Automation of Black box testing.
10. Automation of White box testing.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Learn document, control and manage software quality with the aid of tools and
standards.
2. Distinguish various software quality models.
3. Measure and assess Software Quality through process and product metrics.
4. Distinguish the Software quality standards.
5. Perform automated testing using test tools.
6. Document the testing procedures.
REFERENCES:
1. Daniel Galin, “Software Quality Assurance: From theory to implementation”, Pearson
Education, 2004.
2. Stephen H. Kan, “Metrics and Models in Software Quality Engineering”, Pearson
Education, 2002.
3. Mordechai Ben – Menachem and Garry S.Marliss, “Software Quality”, CL EMEA,
2009.
4. Allan C. Gillies, “Software Quality: Theory and Management”, Thomson Learning,
2003.
5. Glenford J. Myers, Tom Badgett, Corey Sandler, “The Art of Software Testing”, Third
Edition, John Wiley, 2012.
6. Ron Patton, “Software testing”, Second edition, Pearson Education, 2009.
7. Srinivasan Desikan, Gopalaswamy Ramesh, “Software testing- Principles and
Practices”, Pearson Education, 2009.
92
PO1 PO2 PO3 PO4 PO5 PO6
CO1 3 3 3 3 2 3
CO2 3 3 3 1 2 3
CO3 3 3 3 3 2 3
CO4 3 3 3 2 2 3
CO5 3 3 3 2 3 3
CO6 1 3 3 1 1 3
OBJECTIVES:
To learn fuzzy logic, fuzzification and defuzzification.
To design a soft computing system required to address a computational task.
To learn and apply artificial neural networks, fuzzy sets and fuzzy logic, and genetic
algorithms in problem solving and use of heuristics based on human experience.
To introduce the ideas of fuzzy sets, fuzzy logic To become familiar with neural
networks that can learn from available examples and generalize to form appropriate
rules for inferencing systems.
To familiarize with genetic algorithms and other random search procedures useful
while seeking global optimum in self-learning situations.
Suggested Activities:
Practical – Install MatLab Fuzzy Logic toolbox and ANN toolbox to design and
simulate systems.
93
Suggested Activities:
Practical – Develop a supervised model to train neural net that uses the
AND/OR/XOR two input binary/bipolar input and output data and learn linear models
to understand the importance of initialization parameters.
Suggested Activities:
Practical – Develop an unsupervised model to train neural net that uses any dataset
and plot the cluster of patterns.
Suggested Activities:
Practical – Implement GA for the Travelling Salesman problem to find the shortest
path that visits all cities in a set exactly once.
Suggested Activities:
Practical – Develop adaptive neuro-fuzzy hybrid technique to train NAND gate with
two binary and targets and observe the training performance.
PRACTICAL EXERCISES: 30
Implement the following exercises using any programming language:
1. Develop an application that fraud detection systems from data using fuzzy logic.
2. Develop a system to implement Neural Networks techniques to define predictive
models for fraud detection.
3. Develop a system that can optimize the solution of the fraud detection system
developed by fuzzy logic.
94
4. Implement Pareto-based approaches to solve MOOPs.
5. Develop a hybrid system by integrating neural networks, fuzzy logic and genetic
algorithms for any real time application.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Identify and describe soft computing techniques and their roles in building intelligent
machines.
2. Recognize the feasibility of applying a soft computing methodology for a particular
problem.
3. Apply fuzzy logic and reasoning to handle uncertainty and solve engineering
problems.
4. Apply genetic algorithms to optimization problems.
5. Design neural networks to pattern classification and regression problems using soft
computing approach.
6. Describe the importance of tolerance of imprecision and uncertainty to a design of
robust and low-cost intelligent machines.
REFERENCES:
1. S. Rajasekaran, G.A. Vijayalakshmi Pai, “Neural Networks, Fuzzy Logic and Genetic
Algorithm: Synthesis and Applications”, Prentice Hall, 2010.
2. J. S. R. Jang, C. T. Sun, E. Mizutani, “Neuro-Fuzzy and Soft Computing”, Pearson
Education, 2004.
3. S. N. Sivanandam, S. N. Deepa, “Principles of Soft Computing”, Second Edition,
Wiley, 2007.
4. Siman Haykin, “Neural Networks”, Prentice Hall, 1999.
5. Timothy Ross, “Fuzzy Logic with Engineering Applications”, Wiley, 2016.
6. David E. Goldberg, “Genetic Algorithms in Search, Optimization and Machine
Learning”, Pearson Education, 2008.
7. Frank Neumann, Carsten Witt, “Bioinspired Computation in Combinational
Optimization – Algorithm and their Optimization Complexity”, Natural Computing
Series, Springer, 2010.
CO1 3 2 2 1 1 1
CO2 3 2 1 1 2 1
CO3 1 2 2 1 2 2
CO4 1 2 2 1 2 2
CO5 1 2 2 2 2 2
CO6 2 1 1 2 2 1
95
IF5007 MACHINE LEARNING TECHNIQUES LTPC
3 02 4
OBJECTIVES:
To understand the concepts of machine learning.
To appreciate supervised and unsupervised learning and their applications.
To understand the theoretical and practical aspects of Probabilistic Graphical
Models.
To appreciate the concepts and algorithms of reinforcement learning.
To learn aspects of computational learning theory.
UNIT I INTRODUCTION 9
Machine Learning – Basic Concepts in Machine Learning – Types of Machine Learning –
Examples of Machine Learning – Applications – Linear Models for Regression – Linear
Basis Function Models – The Bias-Variance Decomposition – Bayesian Linear Regression –
Bayesian Model Comparison – Dimensionality Reduction.
Suggested Activities:
Install python and explore the packages required for machine learning including
numpy, scikit-learn, and matplotlib, Ipython, hmmpytk and pgmpy.
Suggested Activities:
Practical – Collection of data from different recourses and summarize the data.
Practical – Build linear, multi-linear, logistic Regression model to predict the data.
Suggested Activities:
Practical – Develop SVM model for a two class problem, whose training points are
distributed in a 2D plane and improve the performance of the model by applying
kernel methods.
Practical – Implement bagging approach for credit card analysis.
96
UNIT IV UNSUPERVISED LEARNING 8
Clustering– K-means – Hierarchical Clustering – EM – Mixtures of Gaussians – The EM
Algorithm in General – Model Selection for Latent Variable Models.
Suggested Activities:
Implement k means algorithm to cluster the traffic data set based on accident type.
Suggested Activities:
Assignment on solving numerical problem using HMM.
PRACTICAL EXERCISES: 30
Implement the following exercise using python libraries on UCI Machine Learning
Repository.
1. Develop an application that makes predictions from data using Linear Regression.
2. Develop an application that makes predictions from data using Logistic Regression.
3. Develop a system to implement classifier using SVM / Neural Networks.
4. Develop a system that can automatically group articles by similarity using K–Means
Clustering & PCA.
5. Develop a system that can extract the word from the given sentences using Hidden
Markov model.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Implement a neural network for an application of your choice using an available tool.
2. Implement probabilistic discriminative and generative algorithms for an application of
your choice and analyze the results.
3. Use a tool to implement typical clustering algorithms for different types of
applications.
4. Design and implement an HMM for a sequence model type of application
5. Implement a PGM for any real time application using an open source tool.
6. Identify applications suitable for different types of machine learning with suitable
justification.
REFERENCES:
1. Christopher Bishop, “Pattern Recognition and Machine Learning”, Springer, 2006.
2. Kevin P. Murphy, “Machine Learning: A Probabilistic Perspective”, MIT Press, 2012.
3. Ethem Alpaydin, “Introduction to Machine Learning”, Prentice Hall of India, 2005.
4. Tom Mitchell, “Machine Learning”, McGraw-Hill, 1997.
97
5. T. Hastie, R. Tibshirani, J. Friedman, “The Elements of Statistical Learning”, Second
Edition, Springer, 2008.
6. Stephen Marsland, “Machine Learning – An Algorithmic Perspective”, CRC Press,
2009.
7. Daphne Koller, N. Friedman, Francis Bach, “Probabilistic Graphical Models –
Principles and Techniques”, MIT Press,2009.
CO3 2 1 3 2 1 1
CO4 2 2 2 1 2 1
CO5 2 2 2 2 1 2
CO6 3 2 1 2 1 1
Suggested Activities:
Flipped classroom on semantic web background and tutorial activity in class.
Brainstorming session on various knowledge representation formats in class.
98
UNIT II LANGUAGES FOR SEMANTIC WEB AND ONTOLOGIES 9
Web Documents in XML – RDF – Schema – Web Resource Description using RDF – RDF
Properties – Topic Maps and RDF – Overview – Syntax Structure – Semantics – Pragmatics
–Traditional Ontology Languages – LOOM – OKBC – OCML – Flogic Ontology Markup
Languages – SHOE – OIL – DAML+OIL – OWL.
Suggested Activities:
Flipped classroom on comparison of various semantic web related languages
and tutorial activity in class.
Suggested Activities:
Flipped classroom on natural language processing techniques like statistical text
analysis, term extraction, Word sense disambiguation, concept extraction and
tutorial activity in class.
External reading – https://nlp.stanford.edu/fsnlp/
Suggested Activities:
Flipped classroom on study of various ontology related tools.
UNIT V APPLICATIONS 9
Web Services – Semantic Web Services – Case Study for specific domain – Security issues
– Web Data Exchange and Syndication – Semantic Wikis – Semantic Portals – Semantic
Metadata in Data Formats – Semantic Web in Life Sciences – Ontologies for
Standardizations – Rule Interchange Format.
Suggested Activities:
Flipped classroom on other applications of semantic web.
PRACTICAL EXERCISES: 30
1. Design of simple ontology on their domain of interest using Protege like tool.
2. Create RDF document using PHP library EasyRdf.
99
3. Use OWL language to represent relationships, properties and to provide inferences
from created ontology.
4. Term extraction and Term disambiguation from corpus using Alchemy like API.
5. Use of any tool to apply SAPRQL queries and implement reasoning for avoiding
inconsistencies.
6. Exercises on Merging two ontologies, Applying association rules and Applying
clustering algorithms.
7. Development of Simple application like chat bot, semantic search engine creation
using Topic map data models extracted from Ontopia/Mappa.
8. Creating intelligent expert systems using semantic Wikis like SMW+.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Create ontology for a given domain.
2. Develop an application using ontology languages and tools.
3. Understand the concepts of semantic Web.
4. Use ontology related tools and technologies for application creation.
5. Design and develop applications using semantic web.
6. Understand the standards related to semantic web.
REFERENCES:
1. Pascal Hitzler, Markus Krötzsch, Sebastian Rudolph, “Foundations of Semantic Web
Technologies”, Chapman & Hall/CRC, 2009.
2. Asuncion Gomez-Perez, Oscar Corcho, Mariano Fernandez-Lopez, “Ontological
Engineering: with Examples from the Areas of Knowledge Management, e-
Commerce and the Semantic Web”, Springer, 2004.
3. Grigoris Antoniou, Frank van Harmelen, “A Semantic Web Primer (Cooperative
Information Systems)”, MIT Press, 2004.
4. Alexander Maedche, “Ontology Learning for the Semantic Web”, First Edition,
Springer. 2002.
5. John Davies, Dieter Fensel, Frank Van Harmelen, “Towards the Semantic Web:
Ontology Driven Knowledge Management”, John Wiley, 2003.
6. John Davies, Rudi Studer, Paul Warren, (Editor), “Semantic Web Technologies:
Trends and Research in Ontology-Based Systems”, Wiley, 2006.
CO1 3 1 2 2 1 1
CO2 3 1 2 3 3 1
CO3 2 2 2 3 1 1
CO4 3 1 2 3 3 2
CO5 3 1 2 3 3 2
CO6 2 2 1 2 2 3
Overall 3 1 2 3 3 2
100
IF5008 TEXT MINING LTPC
3 02 4
OBJECTIVES:
To understand the basic issues and needs of text mining.
To appreciate the different aspects of text categorization and clustering.
To understand the role played by text mining in Information retrieval and extraction.
To appreciate the use of probabilistic models and its principles applicable in text
mining.
To appreciate the current trends in text mining on various systems.
UNIT I INTRODUCTION 8
Overview of Text Mining – Definition – General Architecture – Algorithms – Core Operations
– Preprocessing – Types of Problems – Basics of Document Classification – Information
Retrieval – Clustering and Organizing Documents – Information extraction – Prediction and
Evaluation – Textual Information to Numerical Vectors – Collecting Documents – Document
Standardization – Tokenization – Lemmatization Vector Generation for Prediction –
Sentence Boundary Determination – Evaluation Performance.
Suggested Activities:
Develop a web application for search engine.
Tokenize the given text information using any parser.
Practical – Implement all the preprocessing steps needed for text mining.
Suggested Activities:
Role playing to be carried out for groups of students for the understanding of the
working principles of clustering and classification.
101
Suggested Activities:
In class activity – Name entity and relation extraction using role play game.
In class activity – Show the working principle of searching technique.
Suggested Evaluation Methods:
Assignment on developing Flash or animated presentation for explaining the working
principles of any one algorithm for information retrieval and extraction.
UNIT IV PROBABILISTIC MODELS 9
Probabilistic Models for Text Mining – Mixture Models – Stochastic Processes in Bayesian
Nonparametric Models – Graphical Models –Relationship Between Clustering – Dimension
Reduction and Topic Modeling – Latent Semantic Indexing – Latent Dirichlet Allocation–
Interpretation and Evaluation – Probabilistic Document Clustering and Topic Models –
Probabilistic Models for Information Extraction – Hidden Markov Models – Conditional
Random Fields.
Suggested Activities:
In-class activity – Document clustering and Information Extraction.
External learning – Markov models and entropy models.
Suggested Activities:
In-class activity – Visualization Approaches.
External learning – Understanding text mining applications and case studies.
PRACTICAL EXERCISES: 30
1. Study Natural Language toolkit (NLTK) and explore the features within that.
2. Study experiment for implement simple text processing operations like character
count, word count, stop word removal, etc.,
3. Write a Java program for parsing and tokenizing the given text using NLTK.
4. Write a Java program to implement the named entity recognition and part of speech
tagging.
5. Write a Java program to extract the specific pattern for gene – gene and protein –
protein interaction information
6. Install RapidMiner and Vega tools and explore the features.
7. Classify any given data set using two classification algorithms using RapidMiner.
8. Clustering the given data set using two clustering algorithms using RapidMiner.
9. Classify any given data set using two classification algorithms using Vega Tool.
10. Clustering the given data set using two clustering algorithms using Vega Tool.
TOTAL: 75 PERIODS
102
OUTCOMES:
On completion of the course, the students will be able to:
1. Identify the different features that can be mined from text and web documents.
2. Use available open source classification and clustering tools on some standard text
data sets.
3. Modify existing classification/clustering algorithms in terms of functionality or features
used.
4. Design a system that uses text mining to improve the functions of an existing open
source search engine.
5. Implement a text mining system that can be used for an application of your choice.
6. Use the opinion mining concepts to extract the sentiment from the large database.
REFERENCES:
1. S. M. Weiss, N. Indurkhya, T. Zhang, F. Damerau, “Text Mining: Predictive Methods
for Analyzing Unstructured Information”, Springer, 2005.
2. Ronen Feldman, James Sanger, “The Text Mining Handbook: Advanced Approaches
in Analyzing Unstructured Data”, Cambridge University Press, 2009.
3. Michael Berry, “Survey of Text Mining: Clustering, Classification and Retrieval”,
Springer, 2004.
4. Hercules Antonio do Prado, Edilson Ferneda, “Emerging Technologies of Text
Mining: Techniques and Applications”, Information Science Reference (IGI), 2008.
5. Charu C. Aggarwal, Cheng Xiang Zhai, “Mining Text Data”, Springer, 2012.
CO1 3 2 2 2 2 2
CO2 3 2 2 2 2 2
CO3 3 2 2 3 2 2
CO4 3 1 2 3 2 2
CO5 3 2 2 3 2 2
CO6 3 2 2 2 2 3
UNIT I INTRODUCTION 9
Need for E-learning – Approaches of E-learning – Components of E-learning – Synchronous
and Asynchronous Modes of Learning – Quality of E-learning – Blended Learning: Activities,
Team and Technology – Work Flow to Produce and Deliver E-learning Content – Design
Thinking: Introduction – Actionable Strategy – Act to Learn – Leading Teams to Win.
103
Suggested Activities:
External learning – E-learning approaches and Components.
Discussion on design thinking.
Suggested Activities:
Discussion – Design models.
External learning – E-learning instructional methods.
Suggested Activities:
Discussion – Creation of story boards.
External learning – Types of authoring tools.
Suggested Activities:
Discussion – LMS categories for E-learning.
External learning – Functional areas e-learning.
104
Suggested Activities:
Discussion – Planning and Documentation.
External learning – Evaluation and delivery methods.
PRACTICAL EXERCISES: 30
1. Creation of Users and Schedule users Vs Courses in Moodle.
2. Preparation and Organization of Course Contents in Moodle.
3. Aligning the course objectives, Assessments and evaluation methods of Courseware
in Moodle.
4. Courseware Content generation with various instructional formats.
5. Adding communication tools in Moodle for effective collaboration.
6. Creation of instructor led courses in Moodle.
7. Creation of self-learning courses in Moodle.
8. Implementation of various Evaluation strategies of Courseware in Moodle.
9. Implementation of various delivery strategies in Moodle.
10. Assessing the Quality of Multimedia Courseware in Moodle.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of course, the students will be able to:
1. Distinguish the phases of activities in models of E-learning.
2. Identify appropriate instructional methods and delivery strategies.
3. Choose appropriate E-learning Authoring tools.
4. Create interactive E-Learning courseware.
5. Evaluate the E-learning courseware.
6. Manage the E-learning courseware.
REFERENCES:
1. Clark, R. C. and Mayer, R. E, “eLearning and the Science of Instruction”, Third
Edition, John Wiley, 2016.
2. Means, B., Toyama, Y., and Murphy, R, “Evaluation of Evidence – Based Practices in
Online Learning: A Meta – Analysis and Review of Online Learning Studies”, Centre
for Learning Technologies, 2010.
3. Crews, T. B., Sheth, S. N., and Horne, T. M, “Understanding the Learning
Personalities of Successful Online Students”, Educause Review, 2014.
4. Johnny Schneider, “Understanding Design Thinking, Lean and Agile”, O’Riley Media,
2011.
5. Madhuri Dubey, “Effective E – learning Design, Development and Delivery”,
University Press, 2011.
105
IF5010 DATA WAREHOUSING AND DATA MINING LTPC
3 02 4
OBJECTIVES:
To get exposed to the concepts of Data warehousing Architecture and
Implementation.
To analyze the mining techniques for realistic data, and also to conceptualize Data
Mining and the need for pre-processing.
To characterize the kinds of patterns that can be discovered by association rule
mining.
To implement classification and clustering techniques on large datasets.
To identify Business applications and Trends of Data mining.
Suggested Activities:
Practical – Data warehouse modeling using a real time scenario.
Assignment on describing the similarities and the differences of the multidimensional
models, and analyzing their respective advantages and disadvantages.
Practical – Implementing various OLAP operations on a multidimensional data.
Practical – Execute multi-dimensional data model using SQL queries.
Discussion on the advantages of indexing structures.
Suggested Activities:
Discussion on Knowledge Discovery Database.
Assignments on numerical problems on smoothing, normalization and attribute
subset selection.
Assignments on evaluation of attribute relevance analysis on a real time application
data warehouse.
Assignments on evaluation of information gain of an attribute in a real time database.
106
UNIT III ASSOCIATION RULE MINING 9
Introduction – Data Mining Functionalities – Association Rule Mining – Mining Frequent
Itemsets with and without Candidate Generation – Mining Various Kinds of Association
Rules – Constraint – Based Association Mining.
Suggested Activities:
Discussion and problem solving of different association rule mining algorithms
(Apriori algorithms and FP-Growth algorithms).
Practical – Implementation of association rule mining using data mining tools such as
Weka.
Practical – Comparing the performance of each algorithm with various kinds of large
data sets.
Suggested Activities:
Discussion on tree pruning.
Assignment on calculation of the computational complexities and accuracy of the
classification algorithms.
Discussion on different real-time applications of classification and evaluating the
accuracy of a classifier.
Assignment on solving classification algorithms.
Assignment on Comparativel study on different classification algorithms.
UNIT V CLUSTERING 9
Cluster Analysis – Types of Data in Cluster Analysis – A Categorization of Major Clustering
Methods – Partitioning Methods – Hierarchical methods – Density-Based Methods – Grid-
Based Methods – Model-Based Clustering Methods – Clustering High- Dimensional Data –
Constraint Based Cluster Analysis – Outlier Analysis.
Suggested Activities:
Comparative study on the various clustering algorithms.
Discussion on real time applications of outlier analysis.
Practical – Implementation of clustering algorithms using data mining tools.
Practical – Design and implement a clustering method that finds clusters in large data
cubes effectively and efficiently.
Assignment on comparative study of clustering algorithms in terms of the following
criteria: shapes of clusters that can be determined, input parameters that must be
specified and limitations.
107
Assignment on categorizing kinds of constraints that can be imposed on the clusters
produced and analyzing how to perform clustering efficiently under such kinds of
constraints.
Practical – Develop an application where the border between normal objects and
outliers is often unclear, so that the degree to which an object is an outlier has to be
well estimated.
PRACTICAL EXERCISES: 30
1. Design and implement multi-dimensional data models namely Star, Snowflake and
Fact Constellation schemas for any one enterprise (ex. Banking, Insurance, Finance,
Healthcare, manufacturing, Automobiles, sales etc) using open source tools like
Pentaho Data Integration Tool, Pentaho Business Analytics; or other data warehouse
tools like Microsoft-SSIS,Informatica,Business Objects,etc.
2. Install and explore the explorer, experimenter, knowledge flow and simple CLI
features of Weka.
3. Create new .arff files and try loading the same in weka tool. Try importing sample
data sets from the following data sources using Weka: File, Database, and
Websource.
4. Open IRIS data set and explore the various descriptive data metrics available in
Weka. Try different data sets and compare the descriptive metrics.
5. Explore various options in Weka for preprocessing data and apply (like Discretization
Filters, Resample filter, etc.) on each dataset.
6. Load retail dataset into Weka and run Aprior algorithm with different support and
confidence values. Study the rules generated. Apply different discretization filters on
numerical attributes and run the Aprior association rule algorithm. Study the rules
generated. Derive interesting insights and observe the effect of discretization in the
rule generation process.
7. Load IRIS dataset into Weka and run ID3, J48 classification algorithm, study the
classifier output. Compute entropy values, Kappa statistic. Extract if-then rues from
decision tree generated by classifier, observe the confusion matrix and derive
Accuracy, F- measure, TP rate, FP rate, Precision and recall values. Apply cross-
validation strategy with various fold levels and compare the accuracy results.
8. Load the IRIS each dataset into Weka and perform Naïve-bayes classification and k-
Nearest Neighbor classification, Interpret the results obtained. Compare classification
results of ID3, J48, Naïve-Bayes and k-NN classifiers for each dataset, and reduce
which classifier is performing best and poor for each dataset and justify.
9. Load each dataset into Weka and run simple k-means clustering algorithm with
different values of k (number of desired clusters). Study the clusters formed. Observe
the sum of squared errors and centroids, and derive insights. Explore visualization
features of weka to visualize the clusters.
10. Load any weather dataset into Weka and build Linear Regression model. Study the
cluster formed. Use training set option. Interpret the regression model and derive
patterns and conclusions from the regression results.
11. Use options cross-validation and percentage split and repeat running the Linear
Regression Model. Observe the results and derive meaningful results.
12. Try few of the above exercises using Orange Canvas Tool.
TOTAL: 75 PERIODS
108
OUTCOMES:
On completion of the course, the students will be able to:
1. Design, create and maintain data warehouses.
2. Understand large data sets and data preprocessing.
3. Characterize the kinds of patterns that can be discovered by association rule mining.
4. Evaluate various mining techniques on complex data.
5. Discover the knowledge imbibed in the high dimensional system.
6. Evolve multidimensional intelligent model from typical system.
REFERENCES:
1. Jiawei Han, Micheline Kamber, “Data Mining Concepts and Techniques”, Third
Edition, Elsevier, 2012.
2. K. P. Soman, Shyam Diwakar, V. Ajay, “Insight into Data Mining Theory and
Practice”, Prentice Hall, 2006.
3. G. K. Gupta, “Introduction to Data Min Data Mining with Case Studies”, Prentice Hall
of India, Third Edition, 2014.
4. Colleen Mccue, “Data Mining and Predictive Analysis: Intelligence Gathering and
Crime Analysis”, Second Edition, Elsevier, 2015.
5. Anand Rajaraman, Jeffrey David Ullman, “Mining of Massive Datasets”, Cambridge
University Press, 2014.
6. Ian H. Witten, Eibe Frank, Mark A. Hall, “Data Mining: Practical Machine Learning
Tools and Techniques”, Third Edition, Morgan Kaufmann, 2011.
7. George M. Marakas, “Modern Data Warehousing, Mining and Visualization: Core
Concepts”, Prentice Hall, 2002.
8. Bruce Ratner, “Statistical and Machine – Learning Data Mining: Techniques for
Better Predictive Modeling and Analysis of Big Data”, Second Edition, CRC Press,
2012.
CO1 1 1 2 1 2 2
CO2 1 2 2 2 2 3
CO3 2 1 1 3 2 3
CO4 1 1 2 3 3 2
CO5 2 1 3 2 3 3
CO6 2 3 3 3 2 3
OBJECTIVES:
To get exposed to Bioinformatics Technologies.
To solve various problems in biologicalsciences- sequence analysis.
To solve various problems in gene expression analysis, biomedicalimage analysis.
To solve various problems in metabolic pathway analysis.
To be familiar with working of bioinformatics models in MatLab.
109
UNIT I INTRODUCTION 9
Need for Bioinformatics Technologies – Overview of Bioinformatics Technologies –
Structural Bioinformatics – Data Format and Processing – Secondary Resources and
Applications – Role of Structural Bioinformatics – Biological Data Integration System.
Suggested Activities:
Exploring about Biological Data Integration System.
Suggested Activities:
Analyzing biomedical data using data mining tool in MatLab.
Suggested Activities:
Flipped classroom on statistical classification of biological data.
Suggested Activities:
Extract the key features for biological image in MatLab.
Implementing Spatial Transformations for imageinMatLab.
110
UNIT V SYSTEMS BIOLOGY 9
Basics of Enzyme Kinetics – Kinetic Laws – Modeling Biological System: Simulation,
Sensitivity Analysis, Parameter Estimation using Simbiology – Pharmacokinetic Modeling:
Simulation, Population Study – Model of the Yeast Heterotrimeric G Protein Cycle and
Glycolysis.
Suggested Activities
Implementing sensitivity analysis for biology data in MatLab.
PRACTICAL EXERCISES: 30
1. MATLAB basic commands.
2. Sequence analysis tools including functions for pairwise, MSA and phylogenetic tree
construction.
3. Microarray data import from GEO and affymetrix and expression analysis and
normalization.
4. Microarray image analysis.
5. Gene expression data analysis from gene ontology.
6. Mass spectrometry data import and base line correction and normalization.
7. Model creation and simulation using simbiology.
8. Node knock out of model generated in simbiology using graph theory.
9. Pharmakokinetic model building.
10. Pharmakokinetic population fitting.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Develop models for Biological Data.
2. Implement image processing Techniques to Bioinformatics Data.
3. Implement Micro Array analysis over Genome Expression.
4. Understand the study of simbiology.
5. Understand the pharmacokinetic modeling.
6. Understand the working model of biological data in Matlab.
REFERENCES:
1. Michael R. King, Nipa A. Mody, “Numerical and Statistical Methods for
Bioengineering: Applications in MATLAB”, Cambridge University Press, 2011.
2. G. Alterovitz, M. F. Ramoni, “Systems Bioinformatics: An Engineering Case-Based
Approach”, Artech House, 2007.
3. John L. Semmlow, “Biosignal and Medical Image Processing”, CRC Press, 2004.
4. Frank C. Hoppensteadt, Charles S. Peskin, “Modeling and Simulation in Medicine
and Life Sciences”, Springer, 2010.
5. C. Gibas, Per Jambeck, “Developing bioinformatics computer skills”, O’Reilly Media,
2001.
111
PO1 PO2 PO3 PO4 PO5 PO6
CO1 3 1 1 2 1 1
CO2 3 1 1 3 1 1
CO3 2 2 1 3 1 1
CO4 2 1 1 3 1 1
CO5 3 1 1 2 1 1
CO6 3 2 1 3 1 1
Suggested Activities:
Flipped classroom on Finite Automata and Regular Expressions.
External learning -
Automata, basics of finite automata, NFA, DFA.
Finite state machines – regular expressions.
Installation of Ubuntu and study of lexical analysis tools and generators.
112
Suggested Activities:
Flipped classroom:
Compilers and interpreters.
The compilation process and the anatomy of a compiler.
Bootstrapping.
External learning – The role of the lexical analyzer, Finite state machines and
Regular expressions.
Assignment on numerical problems in State reduction.
Suggested Activities:
Flipped classroom:
Languages.
Writing grammars for programming languages.
Transformations on grammars.
External learning – Parser generators and writing grammars for programming
language constructs.
Assignment on numeric problems in parser construction.
Suggested Activities:
Flipped classroom on attributes grammars.
External learning – Type checking, intermediate code and abstract machines.
Assignment on numerical problems in syntax directed translation.
113
UNIT V CODE GENERATION AND OPTIMIZATION 9
Issues – Design of Code Generator – Addresses in the Target Code – Basic Blocks in Flow
Graph – Simple Code Generator – Peephole Optimization – Machine Independent
Optimization – Principal Sources of Optimizations – Bootstrapping a Compiler – Compiling
Compilers – Full Bootstrap.
Suggested Activities:
Flipped classroom on target machine.
External learning –
Code generation.
Elementary optimizations. Basic blocks.
Dataflow analysis.
Assignment on numerical problems in code generation.
PRACTICAL EXERCISES: 30
1. Implement and perform Lexical analysis of a sample text file consisting of some
random texts.
2. Write a C program for a simple calculator.
3. Implementation of Lexers using FLEXfor the above simple calculator.
4. Implementation of Parsers using YACC in Linux/Unix Environment.
5. Use Parser of YACC and check out the output of simple calculator.
6. Implementation of Semantic Analyzers using YACC.
7. Write a C program for a symbol table and integrate it with YACC.
8. Perform semantic analysis including static checking, intermediate representations
and attribute grammars.
9. Implement code generators for performing code generation.
10. Implement a simple code optimization routine.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand the concept of lexical analysis and construction of deterministic and non-
deterministic automata.
2. Understand the concept of parsing and construction of parser.
3. Study the concept of intermediate code generation techniques.
4. Study the programming language design, target machine design and run time
environment of compilers.
5. Study the compiler construction tools.
6. Obtain knowledge to construct a prototype compiler for a subset of a programming
language.
REFERENCES:
1. Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman, “Compilers:
Principles, Techniques, and Tools”, Second Edition, Pearson Education, 2009.
2. John Hopcroft, Rajeev Motwani, Jeffrey Ullman, “Introduction To Automata Theory
Languages, and Computation”, Third Edition, Pearson Education, 2007.
3. Torbengidius Mogensen, “Basics of Compiler Design”, Springer, 2011.
4. LeBlanc Jr., Richard J., Cytron, Ron K., Fischer, Charles N., “Crafting a Complier”,
First Edition, Addison Wesley, 2009.
114
5. K. D. Cooper, L. Torczon, “Engineering a Compiler”, Second Edition, Morgan-
Kaufmann, 2011.
6. Micheal Sipser, “Introduction to the Theory of Computation” Third Edition, Cenage,
2014.
7. K. Muneeswaran, “Compiler Design”, Oxford University Press, 2013.
CO1 2 1 1 1 1 1
CO2 2 1 1 1 1 1
CO3 2 1 1 1 1 1
CO4 3 1 1 1 1 1
O5 1 3 1 1 1 1
CO6 2 1 1 1 2 3
OBJECTIVES:
To understand the need and characteristics of mobile applications.
To design the right user interface for mobile application.
To understand the design issues in the development of mobile applications.
To understand the development procedures for mobile application.
To develop mobile applications using various tools and platforms.
UNIT I INTRODUCTION 9
Mobile applications – Characteristics and Benefits – Application Model – Infrastructure and
Managing Resources – Mobile Device Profiles – Frameworks and Tools.
Suggested Activities:
Flipped classroom on survey on mobile application models.
External learning - mobile application design using frameworks and tools.
Suggested Activities:
Flipped classroom on discussion on UI for mobile application like voice and gestures.
External learning - survey on different view elements for mobile application.
115
Suggested Evaluation Methods:
Quiz - questionnaire related to user interface design for mobile applications.
Assignment - evaluate using learning content management system like Moodle.
Suggested Activities:
Flipped classroom on discussion on memory constraints for mobile application
design.
External learning - survey on resource management and concurrent operations.
Suggested Activities:
Simple Android application development like user account creation.
Android application accessing the mobile database to view user data.
Suggested Activities:
Application accessing Internet for communication like web application.
Android application accessing GPS for location based service.
PRACTICAL EXERCISES: 30
1. Develop an application that uses GUI components, Font and Colours.
2. Develop an application that uses Layout Managers and event listeners.
3. Develop a native calculator application.
4. Write an application that draws basic graphical primitives on the screen.
5. Develop an application that makes use of database.
6. Write an application that makes use of internet for communication (mobile web app).
7. Develop a native application that uses GPS location information.
8. Implement an application that writes data to the SD card.
9. Implement an application that creates an alert upon receiving a message.
10. Write a mobile application that creates alarm clock.
TOTAL: 75 PERIODS
116
OUTCOMES:
On completion of the course, the students will be able to:
1. Design the right user interface for mobile application.
2. Implement mobile application using UI toolkits and frameworks.
3. Design a mobile application that is aware of the resource constraints of mobile
devices.
4. Develop web based mobile application that accesses internet and location data.
5. Implement android application to use telephony for SMS communication.
6. Implement android application with multimedia support.
REFERENCES:
1. Reto Meier, “Professional Android 4 Application Development”, Wiley, 2012.
2. Zigurd Mednieks, Laird Dornin, G. Blake Meike, Masumi Nakamura, “Programming
Android”, O’Reilly, 2011.
3. Alasdair Allan, “iPhone Programming”, O’Reilly, 2010.
CO1 3 3 3 3 3 1
CO2 3 3 3 3 3 3
CO3 3 3 3 1 3 1
CO4 3 3 3 3 1 1
CO5 3 3 3 1 3 3
CO6 3 3 3 3 3 3
117
Suggested Activities:
Survey of forensics tools such as WinHex, EnCase, FTK, or ProDiscover.
External learning - Demonstrate some of the mechanisms used by malicious
attackers as well as forensic experts to disrupt computer networks and manipulate
information access.
Suggested Activities:
Flipped classroom and activity.
External learning - Tools for data storage and access, bypassing filtered [blocked]
ports, reviewing Internet activity, open source forensic tools for file storage and data
recovery will be introduced.
Suggested Activities:
External learning - Familiarizing with Port Redirection tools: Quick 'n Easy FTP
Server, FPIPE and FPORT.
Practical - Study of the forensics tools.
Suggested Activities:
Demonstration of MD5Hash tool.
Practical - IE Activity analysis.
118
UNIT V IMAGE AND VIDEO FORENSICS 9
Recognizing a Graphics File – Data Compression – Locating and Recovering Graphics Files
– Identifying Unknown File Formats – Copyright Issues with Graphics – Fraud using Image
and Video – Detection of Fraud in Images and Video.
Suggested Activities:
External learning - Steganography.
Practical – Install and use Steganalysis tool.
PRACTICAL EXCERCISES: 30
1. Demonstrate some of the mechanisms used by malicious attackers as well as
forensic experts to disrupt computer networks and manipulate information access.
2. Demonstrate FTK Imager to access data's evidence. It is used to quickly preview and
create a forensically sound image of the disk if the preview warrants such action.
3. Demonstrate how data can be modified within a file or hidden on a disk without the
data being saved as a file.
a. Hex Workshop v4.23 hex editor (Shareware download from
www.hexworkshop.com).
b. MD5Hash (Freeware download from www.digitaldetective.
co.uk/freetools/md5.asp).
c. Text editor (Notepad is good enough).
4. Demonstrate how an attacker could exploit a machine and obtain access to a server
with a filtered port by piping another unfiltered port.
a. Quick 'n Easy FTP Server (Freeware download from
http://www.pablovandermeer.nl).
b. FPIPE (Freeware download from http://www.foundstone.com)
c. FPORT (Freeware download from
www.digitaldetective.co.uk/freetools/md5.asp).
5. Show how the encrypted Internet Explorer cache may be viewed using some freely
available tools.
a. Pasco (Freeware download from http://www.foundstone.com).
b. Galleta (Freeware download from http://www.foundstone.com).
6. Demonstrate the typical use of steganography.
7. Demonstrate mobile forensics with software:
a. BitPim.
b. Mobile Phone Examiner (MPE+).
8. Trace an Email.
a. eMailTrackerPro.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Recognize attacks on systems.
2. Design a counter attack incident response and incident-response methodology.
3. Illustrate the methods for data recovery, evidence collection and data seizure.
4. Understand network and email attacks and forensic investigation with tools.
5. Use Forensic tools and collect evidences of a computer crime.
6. Analyze various image encryption/decryption, steganography and fraud in image.
119
REFERENCES:
1. Kevin Mandia, T. Jason Luttgens, Matthew Pepe, “Incident Response and Computer
Forensics”, Tata McGraw-Hill, 2014.
2. Bill Nelson, Amelia Philips, Christopher Stueart, “Guide to Computer Forensics and
Investigations”, Cengage Learning, 2018.
3. John R. Vacca, “Computer Forensics”, Firewall Media, 2009.
4. Eoghan Casey, “Handbook of Computer Crime Investigation's Forensic Tools and
Technology”, Academic Press, 2001.
5. Davide Cowen, “Computer Forensics: A Beginners Guide”, McGraw-Hill Education,
2011.
6. Rafay Baloch, “Ethical Hacking and Penetration Testing Guide”, Auerbach
Publications, 2014
CO1 2 1 2 2 1 2
CO2 2 2 2 2 1 2
CO3 2 1 2 1 3 2
CO4 2 2 3 2 2 2
CO5 2 2 3 2 2 2
CO6 2 2 3 2 2 2
UNIT I BIOMETRICSFUNDAMENTALS 9
Introduction to Biometrics – Benefits of Biometric Security – Types of Biometric Traits –
Physiological and Behavioral Biometrics – General Architecture of Biometrics – Biometric
Error and Performance Measures –Accuracy – Falsematchrate – Falsenon - matchrate –
Failureto Enrolmentrate – Derived metrics – Applications of Biometrics.
Suggested Activities:
Flipped classroom on applications of biometrics.
External learning - Practical problems in accuracy computations.
Numerical Problems in Biometrics accuracy computations.
120
UNIT II FINGERPRINT AND FACIAL SCAN 9
Finger Scan – Features – Components – Operation Steps – Competing Finger Scan
Technologies Strength and Weakness – Types of Algorithms Used for Interpretation. Facial
Scan – Features Components – Operation Steps – Competing Facial Scan Technologies –
Strength – Weakness.
Suggested Activities:
Flipped classroom on applications of fingerprint and face biometrics applications.
External learning - Physiological biometrics.
Suggested Activities:
Discussion of iris identification in Matlab.
Discussion of sound production mechanisms.
External learning - Practical problems on iris localization and Indian Sign Language.
Suggested Activities:
Discussion of biometric standards.
External learning - Practical issues of privacy and confidentiality.
External Learning - Biometric standards.
121
Suggested Evaluation Methods:
Tutorial - Information security.
Assignment problems in privacy in biometric systems.
Quizzes on biometrics standards.
PRACTICAL EXERCISES: 30
1. Reading and writing of a biometric image like fingerprint or face.
2. Image Enhancement of biometric image by removing blur and noise.
3. Implementation of finger localization in OpenCV.
4. Implementation of face localizations in OpenCV .
5. Implementation of simple fingerprint and face identification.
6. Extraction of IRIS features in Matlab/OpenCV.
7. Implementation of voice acquisition in Matlab.
8. Implementation of fusion of biometrics in Matlab/OpenCV.
9. Extraction of features of signature in Matlab/Octave.
10. Develop an authentication system using keyboard strokes in Matlab/Octave.
11. Mini project.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Implement basic biometrics related algorithms.
2. Familiar with the types of Physiological and Behavioral Biometrics.
3. Design and implement an industrial application that incorporates different concepts of
biometrics.
4. Critically analyze different approaches of Biometrics to implement mini projects in
industrial environment and in security related projects.
5. Know the Biometric standards.
6. Know the Biometrics Application development.
REFERENCES:
1. Anil K. Jain, Arun A. Rossand, Karthik Nandakumar, “Introduction to Biometrics”,
Springer, 2011.
2. G. R. Sinha, Sandeep B. Patil, “Biometrics: Concepts and Applications”, Wiley, 2013.
3. James L. Wayman, Anil K. Jain, Davide Maltoni, Dario Maio, “Biometric Systems:
Technology, Design and Performance Evaluation”, Springer, 2004.
4. Samir Nanavati, Michael Thieme, Raj Nanavati, “Biometrics: Identity Verification in a
Networked World”, John WILEY, 2002.
CO1 2 1 1 1 1 1
CO2 1 2 1 2 1 1
CO3 2 1 1 1 1 2
CO4 2 1 1 2 1 2
CO5 1 3 1 1 1 2
CO6 2 1 1 2 1 3
122
IF5015 BLOCKCHAIN TECHNOLOGIES LTPC
3 02 4
OBJECTIVES:
To decompose a blockchain system’s fundamental components, how they fit together
and examine a decentralization using blockchain.
To explain how Cryptocurrency works, from when a transaction is created to when it
is considered part of the blockchain.
To explain the components of Ethereum and Programming Languages for Ethereum.
To study the basics Hyperledger and Web3.
To provide a details of alternative blockchain and blockchain projects in different
perspective.
Suggested Activities:
External learning - programming to create your own blockchain.
Flipped classroom on studying blockchain security issues.
Suggested Activities:
External learning - creating the Wallets.
Flipped classroom on showing the tracking process of transaction in Cryptocurrency.
Suggested Activities:
External learning - For exploring Ethereum tools like Ganache and GO.
Implement Ethereum development environment.
123
UNIT IV WEB3 AND HYPERLEDGER 9
Introduction to Web3 – Contract Deployment – POST Requests – Development frameworks
– Hyperledger as a protocol – The Reference Architecture – Hyperledger Fabric –
Distributed Ledger – Corda.
Suggested Activities:
Creating and deploying a business network on Hyperledger Composer Playground.
Implementing Business Network in Blockchain using HyperLedger Fabric.
Suggested Activities:
External learning - blockchain using Multichain.
Study about blockchain frameworks and business applications.
PRACTICAL EXERCISES: 30
1. Construct the simple blockchain based application to store and retrieve the crypto-
currencies.
2. Create the wallet to send the digital currencies from one account to another account.
3. Perform bitcoin transactions using Python - bitcoinlib.
4. Develop the environment for Ethereum by using Ganache.
5. Create the nodes on Ethereum blockchain and mine the blockchain.
6. Learn Solidity programming language and develop simple Ethereum based
applications.
7. Build the decentralized app and deploy it to provide Ethereum environment.
8. Build a simple application using hyperledger in blockchain environment.
9. Design a smart contract and test it in a Ethereum environment.
10. Develop a block chain based applications which is suitable for your online shopping
services.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Understand the technology components of Blockchain and how it works behind-the
scenes.
2. Aware of different approaches to developing decentralized applications.
3. Understand the Bitcoin and its limitations by comparing with other alternative coins.
4. Establish deep understanding of the Ethereum model, its consensus model, code
execution.
5. Understand the architectural components of a Hyperledger and its development
framework.
6. Come to know the Alternative blockchains and emerging trends in blockchain.
124
REFERENCES:
1. Imran Bashir, “Mastering Blockchain: Distributed Ledger Technology,
Decentralization, and Smart Contracts Explained”, Second Edition, Packt Publishing.
2. Arshdeep Bahga, Vijay Madisetti, “Blockchain Applications: A Hands-On Approach”,
VPT, 2017.
3. Andreas Antonopoulos, Satoshi Nakamoto, “Mastering Bitcoin”, O’Reilly Publishing,
2014.
4. Roger Wattenhofer, “The Science of the Blockchain” CreateSpace Independent
Publishing Platform, 2016.
5. A. Narayanan, J. Bonneau, E. Felten, A. Miller, S. Goldfeder, “Bitcoin and
Cryptocurrency Technologies: A Comprehensive Introduction”, Princeton University
Press, 2016.
6. Alex Leverington, “Ethereum Programming”, Packt Publishing, 2017.
OBJECTIVES:
To enrich student learning in Multimedia systems.
To train the students to acquire knowledge in multimedia related technologies.
To acquire knowledge about multimedia techniques to enhance quality of service.
To acquire knowledge in the development of multimedia systems.
To learn about the multimedia elements in a comprehensive way.
Suggested Activities:
Flipped classroom on multimedia primitives.
Suggested Activities:
Flipped classroom on compression of different techniques.
External learning - Adobe After Effects, Adobe Media Encoder, Adobe Audition.
125
UNIT III MULTIMEDIA ARCHITECTURES 9
User Interfaces – OS Multimedia Support – Multimedia Extensions – Hardware Support –
Distributed Multimedia Applications – Real Time Protocols – Play Back Architectures –
Synchronization – Document and Document Architecture – Hypermedia Concepts –
Hypermedia Design – Digital Copyrights – Digital Library – Multimedia Archives.
Suggested Activities:
Flipped classroom on concepts of Multimedia hardware architectures.
External learning - Digital Repositories.
Suggested Evaluation Methods:
Tutorial - Digital copyrights.
Quizzes on different architectures.
UNIT IV MULTIMEDIA OPERATING SYSTEM AND DATABASES 9
Real Time-Resource Management – Process Management – File systems – Inter Process
Communication and Synchronization – Memory Management – Device Management –
Characteristics of MDBMS – Data Analysis – Data Structures – Operations on Data –
Integration in a Database Model.
Suggested Activities:
Flipped classroom on multimedia database and indexing structures.
External learning - Data structures for storing multimedia data.
126
OUTCOMES:
On completion of the course, the students will be able to:
1. Handle the multimedia elements effectively.
2. Encode and decode the multimedia elements.
3. Understand the underlying multimedia computing architectures used for media
development.
4. Develop effective strategies to deliver Quality-of-Experience in Multimedia
applications.
5. Design and implement algorithms and techniques related to multimedia objects.
6. Design and develop multimedia applications in various domains.
REFERENCES:
1. Ralf Steinmetz, Klara Nahrstedt, “Multimedia computing, communications, and
applications”, Pearson Education, 2009.
2. Ranjan Parekh, “Principles of Multimedia”, Second Edition, McGraw-Hill Education,
2017.
3. Ralf Steinmetz, Klara Nahrstedt, “Multimedia Systems”, Springer IE, 2004.
4. Tay Vaughan, “Multimedia: Making it Work”, Ninth Edition, McGraw-Hill Education,
2014.
5. Mark S. Drew, Zee Nian Li, “Fundamentals of Multimedia”, Prentice Hall, 2006.
6. Jerry D. Gibson, Toby Berger, Tom Lookabaugh, Dave Lindergh and Richard L.
Baker “Digital Compression for Multimedia: Principles and Standards”, Elsevier,
2006.
CO1 2 1 3 2 2 1
CO2 3 1 3 2 1 1
CO3 3 1 3 3 3 1
CO4 3 1 2 2 3 3
CO5 3 1 3 3 3 2
CO6 2 1 3 3 2 2
OBJECTIVES:
To learn the fundamentals of data modeling and design in advanced databases.
To study the working principles of distributed databases.
To have an introductory knowledge about the query processing in Object-based
databases and its usage.
To understand the basics of Spatial, temporal and Mobile Databases and their
applications.
To learn emerging databases such as XML, Data warehouse and NoSQL.
127
UNIT I DISTRIBUTED DATABASES 9
Distributed Systems – Introduction – Architecture; Distributed Database Concepts -
Distributed Data Storage – Distributed Transactions – Commit Protocols – Concurrency
Control – Distributed Query Processing.
Suggested Activities:
Practical - Design of distributed database with fragmentation using any DBMS.
Flipped classroom on distributed transaction protocols.
Practical - Writing distributed queries and optimizing the queries.
Suggested Activities:
Practical - Exploring MongoDB using JAVA/Python/Ruby/PHP.
Practical - Perform database operations using MongoDB/Cassandra/HYPE.
Practical - Scenario based query development for database applications.
Suggested Activities:
Individual/group activities for application specific data handling.
Discussion about advantages and drawbacks of transaction models for different
applications involving spatial-temporal data.
128
Suggested Activities:
Flipped classroom on demonstrate the operations on XML data and data warehouse.
Practical - Use tools to solve data access scenarios.
Suggested Activities:
Flipped classroom on basics of IR concepts.
Practical - Evaluation measures of IR.
PRACTICAL EXERCISES: 30
1. Create a distributed database using horizontal and vertical fragmentation in any
DBMS.
2. Creation of distributed queries using the fragmented data created.
3. Create a document based database using mongodb and manipulate the data.
4. Create a data warehouse and perform OLAP operations in an unstructured data
environment.
5. Create a database to store multimedia elements and perform data retrieval
operations.
6. Create a temporal database and explore the usage of temporal queries in it.
7. Creation of an XML document and validate it using an XML schema.
8. Given an XML document, traverse the document using DOM and SAX parser.
9. Design a web crawler to extract the information from the websites containing product
reviews and classify the reviews as either positive or negative.
10. Create an information retrieval system which processes the corpus of documents and
create TF/IDF for the keywords extracted from the documents. Create an inverted
index to enable an efficient retrieval process.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Design a distributed database system and execute distributed queries.
2. Use NoSQL database systems and manipulate the data associated with it.
3. Have knowledge on advanced database system concepts.
4. Design a data warehouse system and apply OLAP operations.
5. Design XML database systems and validating with XML schema.
6. Have knowledge on information retrieval concepts and apply it in web databases.
129
REFERENCES:
1. Henry F. Korth, Abraham Silberschatz, S. Sudharshan, “Database System
Concepts”, Sixth Edition, McGraw-Hill, 2011.
2. R. Elmasri, S. B. Navathe, “Fundamentals of Database Systems”, Seventh Edition,
Pearson Education/Addison Wesley, 2017.
3. C. J. Date, A. Kannan, S. Swamynathan, “An Introduction to Database Systems”,
Eighth Edition, Pearson Education, 2006.
4. Jiawei Han, Micheline Kamber, Jian Pei, “Data Mining: Concepts and Techniques”,
Third Edition, Morgan Kaufmann, 2012.
5. Brad Dayley, “Teach Yourself NoSQL with MongoDB in 24 Hours”, Sams, 2014.
6. Shashank Tiwari, “Professional NoSQL”, O’Reilly Media, 2011.
7. Vijay Kumar, “Mobile Database Systems”, John Wiley, 2006.
CO1 2 2 1 2 1 2
CO2 2 2 2 2 2 2
CO3 2 1 1 1 2 2
CO4 2 2 2 2 2 2
CO5 1 1 2 2 1 1
CO6 2 1 1 2 2 1
OBJECTIVES:
To understand the computational aspects of creation, storage & retrieval of Linked
Open Data (LOD).
To learn about Web of Data.
To understand knowledge representation languages like RDF and OWL.
To learn about querying using SPARQL.
To understand the publishing & consumption of LOD in WWW.
Suggested Activities:
Study on various RDF literals with examples.
Browsing for various linked open data on the web.
Sample scenarios and RDF construction.
130
Suggested Evaluation Methods:
Assignments on RDF literals and open data.
Quiz on all topics of the Unit.
Suggested Activities:
Data collection using tools.
Use tools to understand properties of collected data.
Create simple applications using open data.
Suggested Activities:
Study of ontology development tools.
Case studies on real time domain specific ontology.
Simple ontology creation using open source (Protégé and OntoStudio) tool.
Suggested Activities:
Exercises on basics of SPARQL like data type, query types, etc.
Solving exercises on graph data and querying.
Exercises on SPARQL operators.
131
UNIT V PUBLISHING & CONSUMING LINKED OPEN DATA 9
Linked Data Publishing Patterns – The Recipes – Serving Linked Data as Static RDF/XML
Files – Serving Linked Data as RDF Embedded in HTML Files – Serving RDF and HTML
with Custom Server-Side Scripts – Serving Linked Data from Relational Databases –
Serving Linked Data from RDF Triple Stores – Serving Linked Data by Wrapping Existing
Application or Web APIs – Linked Data Publishing Checklist Consuming Linked Data –
Deployed Linked Data Applications – Generic Applications – Domain-specific Applications –
Developing a Linked Data Mashup – Architecture of Linked Data Applications – Effort
Distribution between Publishers-Consumers and Third Parties.
Suggested Activities:
Survey exercise on real RDF/XML files.
Case studies on Linked Data Applications.
Student Presentation on applications.
PRACTICAL EXERCISES: 30
1. Download any RDF schema on tourism and explore various tags in the schema. To
visualise, open them using a Word Editor. Highlight the subject, predicate and object
in each file. If necessary use the RDF validtor service by W3C to obtain the triplets.
2. Convert any RDF into graph.
3. Handling RDF in java: Set up Jena in Eclipse. Then create and manipulate RDF
graphs for domains like tourism, festivals, living thing, etc.
4. Download and install any open source RDF/Ontology editing tool like protégé, Onto
Studio, etc. Try the following in that tool:
a. Load existing RDF schema and visualize.
b. Add, modify and delete RDF.
5. Do the following using W3C RDF Validator:
a. Enter a URI or paste an RDF/XML document and parse the RDF.
b. Visualize the RDF/XML as Triples and/or Graph.
6. Formulate natural language queries as SPARQL 1.0 queries and execute them
against the DBpedia SPARQL endpoint (http://dbpedia.org/isparql).
7. Interpret the SPARQL queries executed in DBpedia SPARQL endpoint in natural
language.
8. Create a simple RDFS forward-chaining inference engine with the following
requirements:
a. Use Jena to store and load triples.
b. Use SPARQL queries to infer all new triples.
9. Open the pizza ontology in Protégé. Run Protégé on a linux computer with the
command protege. The pizza ontology is found in the bookmarks in the “Open OWL
ontology from URI” menu. Browse the class hierarchy, the property hierarchies and
the individuals and note how the ontology describes the domain of pizzas.
a. Find hasIngredient. What is the domain and range of this property? What are
the subproperties of hasIngredient? What is the inverse property of
hasIngredient? What property characteristics does hasIngredient have?.
b. Find Margherita and see how it is defined as a pizza with only cheese and
tomato topping. Look at the definition of VegetarianPizza. Is a Margherita
pizza a vegetarian pizza? Why why not?.
10. Mini projects on developing simple applications Serving RDF and HTML with Custom
Server Side Scripts and serving Linked Data from Relational Databases.
TOTAL: 75 PERIODS
132
OUTCOMES:
On completion of the course, the students will be able to:
1. Design methodologies for publishing & consuming LOD.
2. Construct RDF for domain specific data using tools.
3. Use SPARQL to query LOD.
4. Infer and reason from Domain specific RDF data.
5. Create and deploy simple applications using web open data.
6. Design algorithms for handling LOD using large scale machine learning.
REFERENCES:
1. Tom Heath, Christian Bizer, “Linked Data: Evolving the Web into a Global Data
Space”, Morgan and Claypool, 2011.
2. David Wood, “Linking Government Data”, Springer Science and Business Media,
2011.
3. Dean Allemang, James Hendle, “Semantic Web for the Working Ontologist: Effective
Modeling in RDFS and OWL”, Second Edition, Elsevier, 2011.
4. Bob DuCharme, “Learning SPARQL: Querying and Updating SPARQL 1.1”, Second
Edition, O’Reilly Media, 2013.
5. Jure Leskovec, Anand Rajaraman, Jeffrey David Ullman, “Mining of Massive
Datasets”, Cambridge University Press, 2014.
6. Olivier Curé, Guillaume Blin, “RDF Database Systems: Triples Storage and SPARQL
Query Processing”, Morgan Kaufmann, 2014.
7. Bob DuCharme, “Learnig SPARQL”, O'Reilly Media, 2011.
OBJECTIVES:
To have a better knowledge about video representation and its formats.
To know the fundamental concepts of data science and analytics.
To enrich students familiar with video processing tools for analytics.
To understand the data analytics for processing video content.
To expose the student to emerging trends in video analytics.
133
UNIT I VIDEO FUNDAMENTALS 9
Basic Concepts and Terminology – Analog Video Standards – Digital Video Basics –
Analogto Digital Conversion – Color Representation and Chroma Sub Sampling – Video
Sampling Rate and Standards Conversion – Digital Video Formats – Video Features –
Colour, Shape and Textural Features.
Suggested Activities:
In-class activity - Numerical problems on sampling and standard conversions.
Flipped classroom on description about video features.
Suggested Activities:
In-class activity - Numerical problems on motion estimation.
External learning - Survey on optical flow techniques.
Suggested Activities:
In-class activity - Graphical presentation of data for visualization.
Flipped classroom on description about analytic processes and tools.
Suggested Activities:
Flipped classroom on discussion on streaming data.
External learning - Survey on video based content retrieval.
134
UNIT V EMERGING TRENDS 9
Affective Video Content Analysis – Parsing a Video into Semantic Segments – Video
Indexing and Abstraction for Retrieval – Automatic Video Trailer Generation– Video
Inpainting – Forensic Video Analysis.
Suggested Activities:
External learning - Survey on Affective Video Content Analysis.
Flipped classroom on discussion on forensic video analysis.
PRACTICAL EXERCISES: 30
1. Choose appropriate features for video segmentation for given sample video.
2. Compute two dimension motion estimation using block based match technique.
3. Calculate the motion estimation based on Frequency domain.
4. Compare the video features extracted from a given video dataset using graphical
representation.
5. Compute the number of distinct elements found in the given sample data stream.
6. Detect shot boundary for given sample video.
7. Parse the given sample video for indexing and faster retrieval.
8. Generate an automatic video trailer for given sample video.
9. Design simple application using video inpainting technique.
10. Mini project for video categorization based on content analysis.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Compute basic video processing functions.
2. Segment video based on its features.
3. Compute optical flow and motion estimation.
4. Visualize data using graphical presentation for analysis.
5. Index and retrieve videos for faster access.
6. Design applications for video analytics in current trend.
REFERENCES:
1. A. Roy, R. Dixit, R. Naskar, R. S. Chakraborty, “Digital Image Forensics: Theory and
Implementation”, Springer, 2018.
2. Paul Kinley, “Data Analytics for Beginners: Basic Guide to Master Data Analytics”,
CreateSpace Independent Publishing, 2016.
3. A. Murat Tekalp, “Digital Video Processing”, Second Edition, Prentice Hall, 2015.
4. Henrique C. M. Andrade, Bugra Gedik, Deepak S. Turaga, “Fundamentals of Stream
Processing: Application Design, Systems, and Analytics”, Cambridge University
Press, 2014.
5. Bart Baesens, “Analytics in a Big Data World: The Essential Guide to Data Science
and its Applications“, Wiley, 2014.
6. Oges Marques, “Practical Image and Video Processing Using MATLAB”, Wiley-IEEE
Press, 2011.
135
PO1 PO2 PO3 PO4 PO5 PO6
CO1 2 1 1 1 2 3
CO2 2 1 1 1 2 3
CO3 2 1 1 1 2 3
CO4 1 2 2 2 2 3
CO5 1 2 2 3 3 3
CO6 2 2 3 3 3 3
UNIT I INTRODUCTION 9
Introduction to Virtual Reality and Mixed Reality – Definition – Introduction to Trajectories
and Hybrid Space – Three I‟S of Virtual Reality – Virtual Reality vs 3D Computer Graphics –
Benefits of Virtual Reality – Components of VR System – Introduction to AR-AR
Technologies – Input Devices – 3D Position Trackers – Performance Parameters – Types of
Trackers – Navigation And Manipulation Interfaces – Gesture Interfaces – Types of Gesture
Input Devices. Output Devices – Graphics Display – Human Visual System – Personal
Graphics Displays – Large Volume Displays – Sound Displays – Human Auditory System.
Suggested Activities:
Flipped classroom on Uses of MR applications.
Videos-Experience the virtual reality effect.
Assignment on comparison of VR with traditional multimedia applications.
136
Suggested Activities:
Flipped classroom on basic graphics pipeline.
External learning - Different types of Graphics architectures and workstations.
Practical - GPU programming on simple modeling and rendering.
Suggested Activities:
Flipped classroom on modeling three dimensional objects.
External learning - Collision detection algorithms.
Practical - Creating three dimensional models.
Suggested Activities:
External learning - Different types of programming toolkits and Learn different types
of available VR applications.
Practical - Create VR scenes using any toolkit and develop applications.
137
Suggested Activities:
External learning - Different types of sensing and tracking devices for creating mixed
reality environments.
Practical - Create MR scenes using any toolkit and develop applications.
PRACTICAL EXERCISES: 30
1. Study of tools like Unity, Maya, 3DS MAX, AR toolkit, Vuforia and Blender.
2. Use the primitive objects and apply various projection methods by handling camera.
3. Download objects from asset store and apply various lighting and shading effects.
4. Model three dimensional objects using various modelling techniques and apply
textures over them.
5. Create three dimensional realistic scenes and develop simple virtual reality enabled
mobile applications which have limited interactivity.
6. Add audio and text special effects to the developed application.
7. Develop VR enabled applications using motion trackers and sensors incorporating
full haptic interactivity.
8. Develop AR enabled applications with interactivity like E learning environment,
Virtual walkthroughs and visualization of historic places.
9. Develop MR enabled simple applications like human anatomy visualization,
DNA/RNA structure visualization and surgery simulation.
10. Develop simple MR enabled gaming applications.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Familiarize with the basic concepts of mixed reality.
2. Understand the tools and technologies related to Mixed Reality.
3. Know the working principle of mixed reality related Sensor devices.
4. Develop the Virtual Reality applications in different domains.
5. Design of various models using modeling techniques.
6. Expose the concept of Virtual Reality and Mixed reality Programming with toolkits.
REFERENCES:
1. Charles Palmer, John Williamson, “Virtual Reality Blueprints: Create Compelling VR
Experiences for Mobile”, Packt Publisher, 2018
2. John Vince, “Introduction to Virtual Reality”, Springer-Verlag, 2004.
3. William R. Sherman, Alan B. Craig, “Understanding Virtual Reality – Interface,
Application, Design”, Morgan Kaufmann, 2003.
138
PO1 PO2 PO3 PO4 PO5 PO6
CO1 2 1 1 1 1 1
CO2 2 1 3 3 3 1
CO3 2 1 2 2 2 1
CO4 2 1 3 3 3 1
CO5 2 1 3 3 3 1
CO6 2 1 3 3 3 1
OBJECTIVES:
To understand the fundamentals of data visualization.
To know the working principles of various information visualization tools.
To acquire knowledge about the issues in data representation.
To visualize the complex engineering design.
To gain skill in designing real time interactive information visualization system.
UNIT I INTRODUCTION 9
Introduction – Visualization Stages – Computational Support – Issues – Different Types of
Tasks – Data representation – Limitation: Display Space, Rendering Time, Navigation Link.
Suggested Activities:
Blended Learning - Displaying Different types visualization images.
Flipped classroom on task of representing information.
External learning - Problems related to acquiring data.
Suggested Activities:
Blended learning - Human visual and auditory system.
Flipped classroom on color formats.
External learning - Survey on different human computer interaction and types of user
interface.
139
Suggested Evaluation Methods:
Assignment on human visual and auditory system.
Quizzes on various color format.
Assignment on human computer interaction user interface.
Suggested Activities:
Blended learning - Drawing charts for display.
Flipped classroom on various presentation techniques.
External learning - Different font and font styles, symbols and Gesture
representation.
Suggested Activities:
Flipped classroom on various interacting techniques.
External learning - Interaction facilities and high level support for animation design.
Suggested Activities:
External learning - Mini project for designing and implementing a innovative
interfaces.
Flipped classroom on implementation of virtual reality environment.
140
PRACTICAL EXERCISES: 30
1. Creating Interoperable Web Visualization Components using Candela tool.
2. Implementing Line and Stacked charts with Labels and Notes using Datawrapper
tool.
3. Creating Interactive Charts using Google Chart tool.
4. Use Myheatmap tool to View Geographic Data Interactively.
5. Visualizing TSV, CSV, DSV data using Rawgraph.
6. Working with animation using Chartist.js tool.
7. Visualizing Image data using Matlab.
8. Visualizing Complex Historical Data using Palladio tool.
9. Creating Mobile Friendly Interactive Maps using Leaflet tool.
10. Implementing a Real Time Application using VTK tool as mini project.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Apply mathematics and basic science knowledge for designing information
visualizing System.
2. Collect data ethically and solve engineering problem in visualizing the information.
3. Implement algorithms and techniques for interactive information visualization.
4. Conduct experiments by applying various modern visualization tool and solve the
space layout problem.
5. Analyze and design system to visualize multidisciplinary multivariate Data individually
or in teams.
6. Develop a cost effective and a scalable information visualization system.
REFERENCES:
1. Robert Spence, “Information Visualization An Introduction”, Third Edition, Pearson
Education, 2014.
2. Colin Ware, “Information Visualization Perception for Design”, Third edition, Margon
Kaufmann Publishers, 2012.
3. Robert Spence, “Information Visualization Design for Interaction”, Second Edition,
Pearson Education, 2006.
4. Benjamin B. Bederson and Ben shneiderman, “The Craft of Information
Visualization”, Morgan Kaufmann Publishers, 2003.
5. Thomas strothotte, “Computational Visualization: Graphics, Abstraction and
Interactivity”, Springer, 1998.
6. Matthew O. Ward, George Grinstein, Daniel Keim, “Interactive Data Visualization:
Foundation, Techniques and Applications”, Second Edition, A. K. Peters/CRC Press,
2015.
7. Joerg Osarek, “Virtual Reality Analytics”, Gordon’s Arcade, 2016.
CO1 3 2 2 2 2 2
CO2 2 2 2 3 2 2
CO3 3 2 2 3 2 2
CO4 3 2 2 3 2 2
CO5 3 2 2 3 3 3
CO6 3 2 2 3 3 3
141
MM5071 ADVANCED COMPUTER GRAPHICS AND ANIMATIONS LTPC
3 02 4
OBJECTIVES:
To understand the basics of geometry processing.
To understand the fundamentals of pipelined rasterization rendering of meshed
objects and curved surfaces.
To understand and work with advanced rendering methods such as radiosity.
To design programs for advanced animation methods.
To become proficient in graphics programming using OpenGL.
UNIT I FUNDAMENTALS 9
Basics - Scope and Applications – Graphics Standards – Display Systems – Image
Formation – Graphics Systems – 2D and 3D Coordinate Systems – Vectors – Matrices and
Basic Vector/Matrix Operations – Line Drawing – Object Representation – Anti-Aliasing.
Suggested Activities:
Practical - Basic application to be implemented for vectors and matrices.
Practical - Apply various implementations of the graphics algorithms and analyze.
Practical - Execute some shader application and fix the warnings and errors.
UNIT II TRANSFORMATIONS 9
2D and 3D Geometric Transformations: Translation, Rotation, Scaling, Affine – Hierarchical
Modelling & viewing – The Camera Transformation – Perspective – Orthographic and
Stereographic Views.
Suggested Activities:
Flipped classroom on rasterization.
Practical - Execute any shader application and set viewports, windows, draw
polylines and explore the keyboard and mouse interaction routines.
Familiarize with transformations and hierarchical in OpenGL using a matrix stack.
142
Suggested Activities:
Flipped classroom on various algorithms used to generate the fractals.
Practical - Generation of fractals using Python and Numpy
Practical - Run any shader application and set viewports, windows, fractal rendering
and explore the keyboard and mouse interaction routines.
Suggested Activities:
Flipped classroom on Texture Synthesis and photo realistic rendering
Run the shader application and add the texture and shadow.
Analyze few more shaders - Toon/Cell, Cook-Torrance, Oren-Nayar, Gradient.
UNIT V ANIMATION 9
Overview of Animation Techniques – Key framing, Computer Animation – Motion Capture
and Editing–Forward/Inverse Kinematics– 3D Computer Animation for Applications Such as
Games and Virtual Environments – Character Animation Techniques Such as Synthesizing
their Body Movements – Facial Expressions and Skin Movements – Behaviors in Crowded
Scenes.
Suggested Activities:
Exploration of various animation techniques and tools (Self Study).
Carry out small projects like Design of small animation movies using any tools with
good aesthetic sense.
PRACTICAL EXERCISE: 30
1. Introduction to Programming in OpenGL.
2. Write a program to draw the following points: (0.0,0.0), (20.0,0.0), (20.0,20.0),
(0.0,20.0) and (10.0,25.0). For this purpose, use the GL_POINTS primitive.
3. Re-write the previous program in order to draw a house. The house consists of two
figures: a square and a triangle. The first four points given above define the square,
while the last three points define the triangle. For this purpose, use the GL_QUADS
and GL_TRIANGLES primitives.
143
4. Write a program to color to primitives like cube, triangle and perform 2D rotation
using OpenGL.
5. Modify the above program extending the 2D rotation to 3D with a simple 3D
Orthographic Projection.
6. Write a program to roll a wheel on a horizontal line using OpenGL.
7. Draw the Koch snowflake (or some other variation of the Koch curve) using python.
8. Create a rotating cube with lighting using OpenGL.
9. Create a scene consisting of multiple spheres and cubes, apply a different texture to
each object, and give a bumpy-looking appearance to each surface using normal
mapping.
10. Create 10 seconds Walking animation with a rigged character using any animation
tool.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Prepare for the emerging field of digital modelling and fabrication based on the
competence gained.
2. Understand and apply 3d graphics algorithms related to transformations, illumination,
texturing, etc. With the aid of software libraries.
3. Develop interactive applications using 3d graphics
4. Investigate and apply software libraries for 3d graphics and related software needs.
5. Understand the issues relevant to computer animation.
6. Describe and synthesise character animation techniques, including motion, changing
their facial expressions and crowd behaviour.
REFERENCES:
1. Donald D. Hearn, M. Pauline Baker, Warren Carithers, “Computer Graphics with
Open GL”, Fourth Edition, Prentice Hall, 2011.
2. Foley van Dam, Feiner Hughes, “Computer Graphics Principles and Practice”, Third
Edition, Addison Wesley, 2014.
3. Alan Watt, Mark Watt, “Advanced Animation and Rendering Techniques: Theory and
Practice”, Addison Wesley, 1992.
4. Rick Parent, “Computer Animation – Algorithms and Techniques”, Third Edition,
Morgan Kaufman, 2012.
5. Edward Angel, Dave Shreiner, “Interactive Computer Graphics: A Top-Down
Approach with OpenGL”, Sixth Edition, Addison Wesley, 2012.
CO4 3 2 2 1 1 1
CO5 1 1 1 1 1 1
CO6 1 1 2 2 1 1
144
MM5073 MULTIMEDIA CODING TECHNIQUES LTPC
3 02 4
OBJECTIVES:
To enrich student learning in fundamentals of multimedia coding and standards.
To train the students to acquire knowledge in text coding.
To acquire knowledge behind theory of image and video coding & decoding with
standards.
To learn principles of audio coding and standards.
To get comprehensive learning in multimedia standard content description and
formats.
Suggested Activities:
Flipped classroom on text coding concepts.
Practical - Implement basic text coding and decoding algorithm using Python.
Case study of WinZip, RAR.
Suggested Activities:
Flipped classroom on different image coding techniques.
Practical - Demonstration of EXIF format for given camera.
Practical - Implementing effects quantization, color change.
Analyze effects of change in RGB components in a digital color image.
Case study of Google’s WebP image format.
145
Suggested Activities:
Flipped classroom on concepts of video coding standards.
Assignment on calculation of file size in different resolution and standards.
Assignment on complexity estimation of different motion vector search methods.
Assignment on measurement of video quality using tools.
Practical - Implementation of effects quantization, Chroma sub-sampling etc.
Case study of Google’s WebM video format.
Mini project on processing of coded video.
Suggested Activities:
Flipped classroom on audio coding standards.
External learning - Dolby, DTS systems in Cinema theatres.
Assignment on numerical problems on digital audio.
Practical - Implementation of surround sound.
Case study of a multi-channel home theatre system.
Suggested Activities:
Designing the structure and user interface.
Case study of media coding used by YouTube, Netflix.
External learning - Media streaming for TV.
PRACTICAL EXERCISES: 30
1. Implement Shannon Fano, Huffman, and adaptive Huffman coding techniques.
2. Develop and implement Dictionary based coding and decoding methods.
3. Implement Arithmetic coding and decoding algorithms.
4. Develop and implement transform coding with DCT / Wavelet based algorithm.
5. Implement color balancing and Gamma correction methods.
146
6. Implement different modules of JPEG algorithms.
7. Implement color processing in video.
8. Implement different modules of MPEG–1 / H.261 standards.
9. Develop tool for editing MIDI musical files.
10. Implement different modules of MP–3, AAC standards.
11. Create multimedia contents with standard multimedia content description interface
and frameworks.
TOTAL: 75 PERIODS
OUTCOMES:
On completion of the course, the students will be able to:
1. Articulate the concepts and techniques used in multimedia basics and standard
coding techniques.
2. Develop competence in implementing text coding.
3. Design and implement algorithms for image and video coding.
4. Choose and analyze suitable audio coding for a given multimedia application.
5. Design and develop multimedia projects with standard content formats and
frameworks.
REFERENCES:
1. Mark S. Drew, Zee Nian Li, “Fundamentals of multimedia”, Prentice Hall, 2014.
2. Ralf Steinmetz, Klara Nahrstedt, “Multimedia Computing, Communications and
Applications”, Innovative Technology Series, Prentice Hall, 1995.
3. Jerry D. Gibson, Toby Berger, Tom Lookabaugh, Dave Lindergh, Richard L. Baker,
“Digital Compression for Multimedia: Principles and Standards”, Elsevier, 2006.
4. Ranjan Parekh, “Principles of Multimedia”, McGraw-Hill, Second Edition, 2017.
5. Fred Halsall, “Multimedia Communications: Applications, Networks, Protocols and
Standards”, Pearson Education, 2002.
CO5 2 1 1 1 1 1
CO6 2 1 1 3 1 3
147
OE5091 BUSINESS DATA ANALYTICS LTPC
3 003
OBJECTIVES:
To understand the basics of business analytics and its life cycle.
To gain knowledge about fundamental business analytics.
To learn modeling for uncertainty and statistical inference.
To understand analytics using Hadoop and Map Reduce frameworks.
To acquire insight on other analytical frameworks.
Suggested Activities:
Case studies on applications involving business analytics.
Converting real time decision making problems into hypothesis.
Group discussion on entrepreneurial opportunities in Business Analytics.
Suggested Activities:
Solve numerical problems on basic statistics.
Explore chart wizard in MS Excel Case using sample real time data for data
visualization.
Use R tool for data visualization.
Suggested Activities:
Solving numerical problems in sampling, probability, probability distributions and
hypothesis testing.
Converting real time decision making problems into hypothesis.
148
Suggested Evaluation Methods:
Assignments on hypothesis testing.
Group presentation on real time applications involving data sampling and hypothesis
testing.
Quizzes on topics like sampling and probability.
UNIT IV ANALYTICS USING HADOOP AND MAPREDUCE FRAMEWORK 9
Introducing Hadoop – RDBMS versus Hadoop – Hadoop Overview – HDFS (Hadoop
Distributed File System) – Processing Data with Hadoop – Introduction to MapReduce –
Features of MapReduce – Algorithms Using Map-Reduce: Matrix-Vector Multiplication,
Relational Algebra Operations, Grouping and Aggregation – Extensions to MapReduce.
Suggested Activities:
Practical – Install and configure Hadoop.
Practical – Use web based tools to monitor Hadoop setup.
Practical – Design and develop MapReduce tasks for word count, searching involving
text corpus etc.
Suggested Evaluation Methods:
Evaluation of the practical implementations.
Quizzes on topics like HDFS and extensions to MapReduce.
UNIT V OTHER DATA ANALYTICAL FRAMEWORKS 9
Overview of Application development Languages for Hadoop – PigLatin – Hive – Hive Query
Language (HQL) – Introduction to Pentaho, JAQL – Introduction to Apache: Sqoop, Drill and
Spark, Cloudera Impala – Introduction to NoSQL Databases – Hbase and MongoDB.
Suggested Activities:
Practical – Installation of NoSQL database like MongoDB.
Practical – Demonstration on Sharding in MongoDB.
Practical – Install and run Pig
Practical – Write PigLatin scripts to sort, group, join, project, and filter data.
Design and develop algorithms to be executed in MapReduce involving numerical
methods for analytics.
TOTAL: 45 PERIODS
OUTCOMES:
On completion of the course, the student will be able to:
Identify the real world business problems and model with analytical solutions.
Solve analytical problem with relevant mathematics background knowledge.
Convert any real world decision making problem to hypothesis and apply suitable
statistical testing.
Write and Demonstrate simple applications involving analytics using Hadoop and
MapReduce
Use open source frameworks for modeling and storing data.
Apply suitable visualization technique using R for visualizing voluminous data.
149
REFERENCES:
1. Vignesh Prajapati, “Big Data Analytics with R and Hadoop”, Packt Publishing,
2013.
2. Umesh R Hodeghatta, Umesha Nayak, “Business Analytics Using R – A Practical
Approach”, Apress, 2017.
3. Anand Rajaraman, Jeffrey David Ullman, “Mining of Massive Datasets”, Cambridge
University Press, 2012.
4. Jeffrey D. Camm, James J. Cochran, Michael J. Fry, Jeffrey W. Ohlmann, David R.
Anderson, “Essentials of Business Analytics”, Cengage Learning, second Edition,
2016.
5. U. Dinesh Kumar, “Business Analytics: The Science of Data-Driven Decision
Making”, Wiley, 2017.
6. A. Ohri, “R for Business Analytics”, Springer, 2012
7. Rui Miguel Forte, “Mastering Predictive Analytics with R”, Packt Publication, 2015.
CO1 1 1 1 2 3 1
CO2 2 1 1 2 1 1
CO3 1 1 2 3 3 1
CO4 2 2 1 2 1 1
CO5 1 1 2 2 1 1
CO6 1 1 1 3 2 1
OBJECTIVES:
Summarize basics of industrial safety
Describe fundamentals of maintenance engineering
Explain wear and corrosion
Illustrate fault tracing
Identify preventive and periodic maintenance
UNIT I INTRODUCTION 9
Accident, causes, types, results and control, mechanical and electrical hazards, types,
causes and preventive steps/procedure, describe salient points of factories act 1948 for
health and safety, wash rooms, drinking water layouts, light, cleanliness, fire, guarding,
pressure vessels, etc, Safety color codes. Fire prevention and firefighting, equipment and
methods.
150
UNIT II FUNDAMENTALS OF MAINTENANCE ENGINEERING 9
Definition and aim of maintenance engineering, Primary and secondary functions and
responsibility of maintenance department, Types of maintenance, Types and applications
of tools used for maintenance, Maintenance cost & its relation with replacement economy,
Service life of equipment.
TOTAL: 45 PERIODS
OUTCOMES:
Students will be able to:
CO1: Ability to summarize basics of industrial safety
CO2: Ability to describe fundamentals of maintenance engineering
CO3: Ability to explain wear and corrosion
CO4: Ability to illustrate fault tracing
CO5: Ability to identify preventive and periodic maintenance
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
151
REFERENCES:
1. Audels, Pump-hydraulic Compressors, Mcgrew Hill Publication, 1978.
2. Garg H P,Maintenance Engineering, S. Chand and Company,1987.
3. Hans F. Winterkorn, Foundation Engineering Handbook, Chapman & Hall London,
2013.
4. Higgins & Morrow, Maintenance Engineering Handbook, Eighth Edition,2008
OBJECTIVES:
Solve linear programming problem and solve using graphical method.
Solve LPP using simplex method
Solve transportation, assignment problems
Solve project management problems
Solve scheduling problems
UNIT I LINEAR PROGRAMMING 9
Introduction to Operations Research – assumptions of linear programming problems -
Formulations of linear programming problem – Graphical method
UNIT II ADVANCES IN LINEAR PROGRAMMING 9
Solutions to LPP using simplex algorithm- Revised simplex method - primal dual
relationships – Dual simplex algorithm - Sensitivity analysis
UNIT III NETWORK ANALYSIS – I 9
Transportation problems -Northwest corner rule, least cost method, Voges’s approximation
method - Assignment problem -Hungarian algorithm
UNIT IV NETWORK ANALYSIS – II 9
Shortest path problem: Dijkstra’s algorithms, Floyds algorithm, systematic method -
CPM/PERT
TOTAL: 45 PERIODS
OUTCOMES:
Students will be able to:
CO1: To formulate linear programming problem and solve using graphical method.
CO2: To solve LPP using simplex method
CO3: To formulate and solve transportation, assignment problems
CO4: To solve project management problems
CO5: To solve scheduling problems
152
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
REFERENCES:
1. Harvey M Wagner, Principles of Operations Research: Prentice Hall of India 2010
2. Hitler Libermann, Operations Research: McGraw Hill Pub. 2009
3. Pant J C, Introduction to Optimisation: Operations Research, Jain Brothers, Delhi,
2008
4. Pannerselvam, Operations Research: Prentice Hall of India 2010
5. Taha H A, Operations Research, An Introduction, PHI, 2008
OBJECTIVES:
Summarize the costing concepts and their role in decision making
Infer the project management concepts and their various aspects in selection
Interpret costing concepts with project execution
Develop knowledge of costing techniques in service sector and various budgetary
control techniques
Illustrate with quantitative techniques in cost management
153
UNIT IV COSTING OF SERVICE SECTOR AND BUDGETERY CONTROL 9
Just-in-time approach, Material Requirement Planning, Enterprise Resource Planning,
Activity-Based Cost Management, Bench Marking; Balanced Score Card and Value-Chain
Analysis, Budgetary Control: Flexible Budgets; Performance budgets; Zero-based budgets.
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
REFERENCES:
1.Ashish K. Bhattacharya, Principles & Practices of Cost Accounting A. H. Wheeler
publisher,1991
2. Charles T. Horngren and George Foster, Advanced Management Accounting, 1988
3. Charles T. Horngren et al Cost Accounting A Managerial Emphasis, Prentice Hall of India,
New Delhi, 2011
4. Robert S Kaplan Anthony A. Alkinson, Management & Cost Accounting, 2003
5. Vohra N.D., Quantitative Techniques in Management, Tata McGraw Hill Book Co. Ltd,
2007
OBJECTIVES:
Summarize the characteristics of composite materials and effect of reinforcement in
composite materials.
Identify the various reinforcements used in composite materials.
Compare the manufacturing process of metal matrix composites.
Understand the manufacturing processes of polymer matrix composites.
Analyze the strength of composite materials.
UNIT–I INTRODUCTION 9
Definition – Classification and characteristics of Composite materials - Advantages and
application of composites - Functional requirements of reinforcement and matrix - Effect of
reinforcement (size, shape, distribution, volume fraction) on overall composite performance.
154
UNIT – II REINFORCEMENTS 9
Preparation-layup, curing, properties and applications of glass fibers, carbon fibers, Kevlar
fibers and Boron fibers - Properties and applications of whiskers, particle reinforcements -
Mechanical Behavior of composites: Rule of mixtures, Inverse rule of mixtures - Isostrain
and Isostress conditions.
UNIT – V STRENGTH 9
Laminar Failure Criteria-strength ratio, maximum stress criteria, maximum strain criteria,
interacting failure criteria, hygrothermal failure. Laminate first play failure-insight strength;
Laminate strength-ply discount truncated maximum strain criterion; strength design using
caplet plots; stress concentrations.
TOTAL: 45 PERIODS
OUTCOMES:
Students will be able to:
CO1 - Know the characteristics of composite materials and effect of reinforcement in
composite materials.
CO2 – Know the various reinforcements used in composite materials.
CO3 – Understand the manufacturing processes of metal matrix composites.
CO4 – Understand the manufacturing processes of polymer matrix composites.
CO5 – Analyze the strength of composite materials.
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
REFERENCES:
1. Cahn R.W. - Material Science and Technology – Vol 13 – Composites, VCH, West
Germany.
2. Callister, W.D Jr., Adapted by Balasubramaniam R, Materials Science and Engineering,
An introduction, John Wiley & Sons, NY, Indian edition, 2007.
3. Chawla K.K., Composite Materials, 2013.
4. Lubin.G, Hand Book of Composite Materials, 2013.
155
OE5096 WASTE TO ENERGY LTPC
3 0 03
OBJECTIVES:
Interpret the various types of wastes from which energy can be generated
Develop knowledge on biomass pyrolysis process and its applications
Develop knowledge on various types of biomass gasifiers and their operations
Invent knowledge on biomass combustors and its applications on generating energy
Summarize the principles of bio-energy systems and their features
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
156
REFERENCES:
1. Biogas Technology - A Practical Hand Book - Khandelwal, K. C. and Mahdi, S. S., Vol. I &
II, Tata McGraw Hill Publishing Co. Ltd., 1983.
2. Biomass Conversion and Technology, C. Y. WereKo-Brobby and E. B. Hagan, John Wiley
& Sons, 1996.
3. Food, Feed and Fuel from Biomass, Challal, D. S., IBH Publishing Co. Pvt. Ltd., 1991.
4. Non Conventional Energy, Desai, Ashok V., Wiley Eastern Ltd., 1990.
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
157
REFERENCES
1. Adrian Wallwork , English for Writing Research Papers, Springer New York Dordrecht
Heidelberg London, 2011
2. Day R How to Write and Publish a Scientific Paper, Cambridge University Press 2006
3. Goldbort R Writing for Science, Yale University Press (available on Google Books)
2006
4. Highman N, Handbook of Writing for the Mathematical Sciences, SIAM. Highman’s
book 1998.
UNIT I INTRODUCTION 6
Disaster: Definition, Factors and Significance; Difference between Hazard And Disaster;
Natural and Manmade Disasters: Difference, Nature, Types and Magnitude.
TOTAL : 30 PERIODS
158
OUTCOMES
CO1: Ability to summarize basics of disaster
CO2: Ability to explain a critical understanding of key concepts in disaster risk reduction
and humanitarian response.
CO3: Ability to illustrate disaster risk reduction and humanitarian response policy and
practice from multiple perspectives.
CO4: Ability to describe an understanding of standards of humanitarian response and
practical relevance in specific types of disasters and conflict situations.
CO5: Ability to develop the strengths and weaknesses of disaster management
approaches
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
REFERENCES
1. Goel S. L., Disaster Administration And Management Text And Case Studies”,Deep &
Deep Publication Pvt. Ltd., New Delhi,2009.
2. NishithaRai, Singh AK, “Disaster Management in India: Perspectives, issues and
strategies “’NewRoyal book Company,2007.
3. Sahni, PardeepEt.Al. ,” Disaster Mitigation Experiences And Reflections”, Prentice Hall
OfIndia, New Delhi,2001.
UNIT I ALPHABETS 6
Alphabets in Sanskrit
159
UNIT V TECHNICAL CONCEPTS OF ENGINEERING 6
Technical concepts of Engineering-Electrical, Mechanical, Architecture, Mathematics
TOTAL: 30 PERIODS
OUTCOMES
CO1 - Understanding basic Sanskrit language.
CO2 - Write sentences.
CO3 - Know the order and roots of Sanskrit.
CO4 - Know about technical information about Sanskrit literature.
CO5 - Understand the technical concepts of Engineering.
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12
CO1
CO2
CO3
CO4
CO5
REFERENCES
1. “Abhyaspustakam” – Dr. Vishwas, Samskrita-Bharti Publication, New Delhi
2. “Teach Yourself Sanskrit” Prathama Deeksha-Vempati Kutumbshastri, Rashtriya
Sanskrit Sansthanam, New Delhi Publication
3. “India’s Glorious Scientific Tradition” Suresh Soni, Ocean books (P) Ltd., New Delhi,
2017.
UNIT I
Values and self-development–Social values and individual attitudes. Work ethics, Indian
vision of humanism. Moral and non-moral valuation. Standards and principles. Value
judgements
UNIT II
Importance of cultivation of values. Sense of duty. Devotion, Self-reliance. Confidence,
Concentration. Truthfulness, Cleanliness. Honesty, Humanity. Power of faith, National Unity.
Patriotism. Love for nature, Discipline
UNIT III
Personality and Behavior Development-Soul and Scientific attitude. Positive Thinking.
Integrity and discipline. Punctuality, Love and Kindness. Avoid fault Thinking. Free from
anger, Dignity of labour.
Universal brother hood and religious tolerance. True friendship. Happiness Vs suffering, love
for truth. Aware of self-destructive habits. Association and Cooperation. Doing best for saving
nature
160
UNIT IV
Character and Competence–Holy books vs Blind faith. Self-management and Good health.
Science of reincarnation. Equality, Nonviolence, Humility, Role of Women. All religions and
same message. Mind your Mind, Self-control. Honesty, Studying effectively.
TOTAL: 30 PERIODS
OUTCOMES
Students will be able to
Knowledge of self-development.
Learn the importance of Human values.
Developing the overall personality.
SUGGESTED READING
1. Chakroborty, S.K.“Values and Ethics for organizations Theory and practice”, Oxford
University Press, New Delhi
161
UNIT VI ELECTION COMMISSION:
Election Commission: Role and Functioning. Chief Election Commissioner and Election
Commissioners - Institute and Bodies for the welfare of SC/ST/OBC and women.
TOTAL: 30 PERIODS
OUTCOMES
Students will be able to:
Discuss the growth of the demand for civil rights in India for the bulk of Indians before
the arrival of Gandhi in Indian politics.
Discuss the intellectual origins of the framework of argument that informed the
conceptualization
of social reforms leading to revolution in India.
Discuss the circumstances surrounding the foundation of the Congress Socialist
Party[CSP] under the leadership of Jawaharlal Nehru and the eventual failure of the
proposal of direct elections through adult suffrage in the Indian Constitution.
Discuss the passage of the Hindu Code Bill of 1956.
SUGGESTED READING
1. The Constitution of India,1950(Bare Act),Government Publication.
2. Dr.S.N.Busi, Dr.B. R.Ambedkar framing of Indian Constitution,1st Edition, 2015.
3. M.P. Jain, Indian Constitution Law, 7th Edn., Lexis Nexis,2014.
4. D.D. Basu, Introduction to the Constitution of India, Lexis Nexis, 2015.
162
UNIT IV PROFESSIONAL DEVELOPMENT
Professional development: alignment with classroom practices and follow up support - Peer
support - Support from the head teacher and the community - Curriculum and assessment -
Barriers to learning: limited resources and large class sizes
SUGGESTED READING
1. Ackers J, HardmanF (2001) Classroom interaction in Kenyan primary schools,
Compare, 31(2): 245-261.
2. Agrawal M (2004)Curricular reform in schools: The importance of evaluation, Journal
of Curriculum Studies, 36(3):361-379.
3. Akyeampong K (2003) Teacher training in Ghana-does it count? Multi-site teacher
education research project (MUSTER) country report 1.London:DFID.
4. Akyeampong K, Lussier K, Pryor J, Westbrook J (2013) Improving teaching and
learning of basic maths and reading in Africa: Does teacher preparation count?
International Journal Educational Development, 33(3): 272–282.
5. Alexander RJ(2001) Culture and pedagogy: International comparisons in primary
education. Oxford and Boston: Blackwell.
6. Chavan M(2003) Read India: Amass scale, rapid, ‘learning to read’ campaign.
7. www.pratham.org/images/resource%20working%20paper%202.pdf
UNIT I
Definitions of Eight parts of yoga.(Ashtanga)
UNIT II
Yam and Niyam - Do`s and Don’t’s in life - i) Ahinsa, satya, astheya, bramhacharya and
aparigraha, ii) Ahinsa, satya, astheya, bramhacharya and aparigraha.
UNIT III
Asan and Pranayam - Various yog poses and their benefits for mind & body - Regularization
of breathing techniques and its effects-Types of pranayam
TOTAL: 30 PERIODS
163
OUTCOMES
Students will be able to:
Develop healthy mind in a healthy body thus improving social health also
Improve efficiency
SUGGESTED READING
1. ‘Yogic Asanas for Group Tarining-Part-I”:Janardan Swami Yoga bhyasi Mandal,
Nagpur
2. “Rajayoga or conquering the Internal Nature” by Swami Vivekananda, Advaita
Ashrama
(Publication Department), Kolkata
UNIT I
Neetisatakam-holistic development of personality - Verses- 19,20,21,22 (wisdom) - Verses-
29,31,32 (pride & heroism) – Verses- 26,28,63,65 (virtue) - Verses- 52,53,59 (dont’s) -
Verses- 71,73,75,78 (do’s)
UNIT II
Approach to day to day work and duties - Shrimad Bhagwad Geeta: Chapter 2-Verses 41,
47,48 - Chapter 3-Verses 13, 21, 27, 35 Chapter 6-Verses 5,13,17,23, 35 - Chapter 18-
Verses 45, 46, 48.
UNIT III
Statements of basic knowledge - Shrimad Bhagwad Geeta: Chapter2-Verses 56, 62, 68
Chapter 12 -Verses 13, 14, 15, 16,17, 18 - Personality of role model - shrimad bhagwad
geeta - Chapter2-Verses 17, Chapter 3-Verses 36,37,42 - Chapter 4-Verses 18, 38,39
Chapter18 – Verses 37,38,63
TOTAL: 30 PERIODS
OUTCOMES
Students will be able to
Study of Shrimad-Bhagwad-Geeta will help the student in developing his personality
and achieve the highest goal in life
The person who has studied Geeta will lead the nation and mankind to peace and
prosperity
Study of Neet is hatakam will help in developing versatile personality of students.
SUGGESTED READING
1. Gopinath, Rashtriya Sanskrit Sansthanam P, Bhartrihari’s Three Satakam, Niti-sringar-
vairagya, New Delhi,2010
2. Swami Swarupananda , Srimad Bhagavad Gita, Advaita Ashram, Publication
Department, Kolkata, 2016.
164