Mit Sy
Mit Sy
UNIVERSITY OF MADRAS
M.Sc. DEGREE COURSE IN INFORMATION TECHNOLOGY
REVISED SYLLABUS
Choice Based Credit System
(Effective from the academic year 2022-2023)
Objectives:
Object oriented concepts, C++ language.
Classes & Objects, Inheritance, Polymorphism.
Templates, Streams, Files.
Able to Design & implement various forms of inheritance, String class.
To teach efficient storage mechanisms of data for an easy access.
To design and implementation of various basic and advanced data structures.
To introduce various techniques for representation of the data in the real world.
To develop application using data structures.
Outcomes:
learn Object Oriented concepts, C++ language.
Learn and analyze various problems using C++ program.
Learn to choose appropriate data structure as applied to specified problem definition.
Learn to handle operations like searching, insertion, deletion, traversing mechanism.
Able to use linear and non-linear data structures like stacks, queues, and linked list.
1
Unit 3: Working with Files: Classes for File Stream Operations - Opening and Closing a File -
End-of-File Deduction - File Pointers - Updating a File - Error Handling during File
Operations - Command-line Arguments. Data Structures: Definition of a Data structure -
primitive and composite Data Types, Asymptotic notations, Arrays, Operations on Arrays,
Order lists.
Unit-4:Stacks - Applications of Stack - Infix to Postfix Conversion, Recursion, Maze
Problems - Queues- Operations on Queues, Queue Applications, Circular Queue. Singly
Linked List- Operations, Application - Representation of a Polynomial, Polynomial
Addition; Doubly Linked List - Operations, Applications.
Unit-5 : Trees and Graphs: Binary Trees - Conversion of Forest to Binary Tree, Operations -
Tree Traversals; Graph - Definition, Types of Graphs, Hashing Tables and Hashing
Functions, Traversal - Shortest Path; Dijkstra's Algorithm.
Recommended Texts :
1. E.Horowitz, S.Sahni and Mehta, 1999, Fundamentals of Data Structures in C++,
Galgotia.
2. Herbert Schildt, 1999, C++ - The complete Reference, Third Edition, Tata McGraw
–Hill.
Reference Books:
1. GregoryL.Heileman, 1996, Data Structures , Algorithms and Object Oriented
Programming – Mc-Graw Hill International Editions.
2. A.V.Aho, J.D. Ullman, J.E. Hopcraft: Data Structures and Algorithms-Adisson
Wesley Pub.
E-learning resources:
1) https://nptel.ac.in/courses/106105151
2) https://onlinecourses.nptel.ac.in/noc21_cs02/preview
3) https://nptel.ac.in/courses/106101208
4) https://nptel.ac.in/courses/106102064
5) https://nptel.ac.in/courses/106106127
PO 1 PO 2 PO 3 PO 4 PO 5 PO 6 PO 7 PO 8 PO 9 PO 10
CO 1 S S S M M M M M M L
CO 2 S M S S L S S L M M
CO 3 S S S S S L S M L M
CO 4 S S M S L S S M M S
CO 5 S S M L S M S S L S
S-Strong M-Medium L-Low
2
Title of the Computer Architecture
Course/ Paper
Core – 2 I Year & I Semester Credit: 4
Objectives:
The objective of this course is to provide the fundamental concepts associated
with the digital logic and circuit design.
To introduce the basic concepts and laws involved in the Boolean algebra and
logic families and digital circuits.
To familiarize with the different number systems, logic gates, and combinational
and sequential circuits utilized in the different digital circuits and systems.
The course will help in design and analysis of the digital circuit and system.
Outcomes:
1: Became familiar with the digital signal, positive and negative logic, Boolean
algebra, logic gates, logical variables, the truth table, number systems, codes, and
their conversion from to others.
2: Learn the minimization techniques to simply the hardware requirements of
digital circuits, implement it, design and apply for real time digital systems.
3: Understand the working mechanism and design guidelines of different
combinational, sequential circuits and their role in the digital system design
Unit – I Data and Information Features of Digital Systems, Number Systems. Decimal,
Binary, Octal, Hexadecimal and their inter conversions, Representation of Data: Signed
Magnitude, one’s complement and two’s complement, Binary Arithmetic, Fixed point
representation and Floating point representation of numbers. Codes BCD, XS-3, Gray
code, hamming code, alphanumeric codes (ASCII, EBCDIC, UNICODE), Error detecting
and error correcting codes.
Unit- II Boolean Algebra: Basic gates (AND, OR, NOT gates), Universal gates (NAND
and NOR gates), other gates (XOR, XNOR gates). Boolean identities, De Morgan Laws.
Karnaugh maps: SOP and POS forms, Quine McClusky method.
Unit -III Combinational Circuits: Half adder, full adder, code converters, combinational
circuit design, Multiplexers and demultiplexers, encoders, decoders, Combinational
design using mux and demux, PLA.
Unit - IV Sequential Circuit Design: Flip flops (RS, Clocked RS, D, JK, JK Master Slave,
T, Counters, Shift registers and their types, Counters: Synchronous and Asynchronous
counters.
Unit- V ALU Structure - Memory: ROM, RAM, PROM, EPROM, EEPROM, Secondary
Memory: Hard Disk and optical Disk, Cache Memory, I/O devices.
3
Text books:
Modern Digital Electronics by R. P. Jain, 3rd Edition, McGraw Hill
Digital Design and Computer Organisation by Dr. N. S. Gill and J. B. Dixit, University
Science Press
Linux Commands by Bryan Pfaffaenberger BPB Publications
UNIX by Sumitabha Das, TMH
References Books:
Digital Principles and Applications by Malvino and Leach, McGrawHill
Introduction to Computers by Peter Norton, McGraw Hill
Introduction to Computers by Balagurusamy
4
Title of the Relational Database Management System
Course/ Paper
Core – 3 I Year & I Semester Credit: 3-1-0-4
OBJECTIVES
To learn the fundamentals of data models and to represent a database system using
ER diagrams.
To study SQL and relational database design.
To understand the internal storage structures using different file and indexing
techniques which will help in physical DB design.
To understand the fundamental concepts of transaction processing- concurrency
control techniques and recovery procedures.
To have an introductory knowledge about the Storage and Query processing
Techniques
OUTCOMES: Upon completion of the course, the students will be able to:
Classify the modern and futuristic database applications based on size and complexity
Map ER model to Relational model to perform database design effectively
Write queries using normalization criteria and optimize queries
Compare and contrast various indexing strategies in different database systems
Appraise how advanced databases differ from traditional databases.
6
Title of the Practical – I: Data Structures using C++ Lab
Course/ Paper
Core – 4 I Year & I Semester Credit: 0-0-4-2
Objectives:
The course is designed to develop skills to design and analyze simple linear and non
linear data structures. It strengthen the ability to the students to identify and apply the
suitable data structure for the given real world problem. It enables them to gain
knowledge in practical applications of data structures
Outcomes:
At the end of this lab session, the student will
Be able to design and analyze the time and space efficiency of the data structure
Be capable to identity the appropriate data structure for given problem
Have practical knowledge on the applications of data structures
For the implementation of the following problems, the students are advised to use all
possible object oriented features. The implementation based on structured concepts will not
accepted.
1. Implementation of Arrays (Single and Multi-Dimensional)
2. Polynomial Object and necessary overloaded operators.
3. Singly Linked Lists.
4. Circular Linked Lists.
5. Doubly Linked Lists.
6. Implementation of Stack (using Arrays and Pointers)
7
7. Implementation of Queue (Using Arrays and Pointers)
8. Implementation of Circular Queue (using Arrays and Pointers)
9. Evaluation of Expressions.
10. Binary Tree implementations and Traversals.
11. Binary Search Trees.
8
Title of the Practical – II: RDBMS Lab.
Course/ Paper
Core – 5 I Year & I Semester Credit: 0-0-4-2
OBJECTIVES:
To understand data definitions and data manipulation commands To learn the use of
nested and join queries
To understand functions, procedures and procedural extensions of data bases To be
familiar with the use of a front end tool
To understand design and implementation of typical database applications
OUTCOMES: Upon completion of the course, the students will be able to:
Use typical data definitions and manipulation commands.
Design applications to test Nested and Join Queries
Implement simple applications that use Views
Implement applications that require a Front-end Tool
Critically analyze the use of Tables, Views, Functions and Procedures
9
Mapping with Programme Outcomes:
10
Title of the Design and Analysis of Algorithms
Course/ Paper
Core – 6 I Year & II Semester Credit: 3-1-0-4
Outcomes:
Learn about simple problems and complexity of their solutions.
To understand the role of algorithms in problem solving. Learn and understand the
asymptotic analysis of algorithms.
Learn and analyze various algorithm design methods through general principles and with
selected set of example problems.
Conceptualize and use these methods to solve complex real world problems particularly
problems involved in industrial projects.
Critically analyze and compare the algorithms for a set of selected example problems
which are hard in nature with design approaches like greedy, dynamic programming and
branch and bound etc.
Objectives:
To define the term Algorithm in the context of problem solving. To make students
understand the design and analysis process of algorithms for simple problems.
Understand various algorithm design methods, apply them for problem solving and
analyze the complexity for simple problems.
Study algorithm design methods for complex problems and compare and analyze the
complexity of approximate and exact algorithms.
Calculate and measure the performance of algorithms and compare the results. Critically
assess the performance.
Differentiate the concepts studied with certain selected examples and compare and
generalize.
Unit 1: Introduction - Definition of Algorithm – pseudocode conventions – recursive algorithms
– time and space complexity – big-“oh” notation – exponentiation - practical complexities –
randomized algorithms – repeated element – primality testing - Disjoint Sets- disjoint set
operations, union and find algorithms,
Unit-2: Divide and Conquer: General Method - Finding maximum and minimum – merge sort -
Quicksort, Selection, Strassen's matrix multiplication.
Unit 3: – Greedy Method: General Method – knapsack problem - Tree vertex splitting -
minimum cost spanning trees - Job sequencing with deadlines – single source shortest paths.
Dynamic Programming: General Method - multistage graphs – all pairs shortest paths –– 0/1
knapsack .
Unit 4: Search techniques for graphs –DFS-BFS-connected components – Spanning trees–
biconnected components. Back Tracking: General Method – 8-queens - Sum of subsets - Graph
11
Coloring – Hamiltonian cycles.
Unit 5: Branch and Bound: General Method - Job sequencing with deadlines – 0/1 knapsack
problem - Traveling Salesperson problem. - Basic Concepts of NP-Hard and NP-Complete
problems.
Recommended Texts:
1) E. Horowitz, S. Sahni and S. Rajasekaran, 2008, Computer Algorithms, 2nd Edition,
Universities Press, India.
Reference Books
1) G. Brassard and P. Bratley, 1997, Fundamentals of Algorithms, PHI, New Delhi.
2) A.V. Aho, J.E. Hopcroft, J.D. Ullmann, 1974, The Design and Analysis of
Computer Algorithms, Addison Wesley, Boston.
3) S.E.Goodman and S.T.Hedetniemi, 1977, Introduction to the Design and Analysis
of algorithms, Tata McGraw Hill Int. Edn, New Delhi.
E-learning resources
1) http://www.cise.ufl.edu/~raj/BOOK.html
12
Title of the Programming in Java
Course/ Paper
Core – 7 I Year & II Semester Credit: 3-1-0-4
OBJECTIVES:
To understand the concepts of Object Oriented Programming.
To learn about the control structures, class with attributes and methods used in Java
OUTCOMES:
Knowledge of the structure and model of the Java programming language.
Understand the basic principles of creating Java applications with GUI.
Demonstrate use of string and String Buffers, develop multithreaded programs in Java
Unit – I
The History and Evolution of Java – Object Oriented Programming - Data Types, Variables and
Arrays - Operators – Control Statements.
Unit – II
Introducing Classes - Class Fundamentals – Declaring Objects –Introducing Methods -
Constructors – this Keyword - Garbage Collection – Finalize() Method – Methods and Classes –
Inheritance – Packages and Interfaces.
Unit – III
Exception Handling – The Java Thread Model – Enumeration Fundamentals – String Handling –
The Stream Classes – Byte Stream – Character Streams.
unit – IV
The Applet Class – Event Handling - Introducing the AWT: Working with Windows, Graphics
and Text – AWT Controls, Layout Managers and Menus- Networking.
Unit – V
Java Beans – Advantages of Java Bean – Introducing Swing – Swing Buttons – Servlets – JDBC
– Applications on databases - Multimedia streaming applications – Java Media Framework.
Text Book
1. The Complete Reference - Java – Seventh Edition , Herbt Schildt- ISBN 978-0-07-
163177-8
Reference Book
2. Hortsmann & Cornell, “Core Java2 Advanced Features, Vol II”, Pearson Education,
2002.
Mapping with Programme Outcomes:
13
Mapping with Programmers outcomes*
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10
CO1 S S M S M M L M L L
CO2 S S M S S M L L M L
CO3 L M S L M S S L S M
CO4 S L L M M L L S M S
CO5 M S M L S M M L M L
S-Strong M-Medium L-Low
14
Title of the Practical – III : Java Programming Lab.
Course/ Paper
Core – 8 I Year & II Semester Credit: 0-0-4-2
Objectives:
Outcomes:
Develop program using Oops concept of Java
Develop program using GUI framework (AWT and Swing)
Handle events of AWT and Swing Components.
Develop programs to handle events in Java Programming.
Develop Java Programs using Networking Concepts.
Develop programs using Database.
Develop programs using Servlets.
List of Exercise:
1. Write a Java program to find area and perimeter of different shapes.
2. Write a java Program to find sum of n prime numbers.
3. Write a java program to find simple and compound Interest using this keyword.
4. Write a Java program to create a class account using the inheritance and static that show
all function of the bank(Withdrawal, Deposit) .
5. Write a Java program to perform different string manipulation.
6. Write a Java program to handle exception using try and multiple catch block.
7. Write a java program that connects to a database using JDBC and perform add, deletes,
modify and retrieve operations
8. Write a program to demonstrate the use of AWT components like Label, Textfield,
TextArea, Button, Checkbox, RadioButtonetc
9. Write a program using AWT to create a menubar where menubar contains menu items
such as File, Edit, View and create a submenu under the File menu: New and Open.
10. Develop an Applet that receives an integer in one text field & compute its factorial value
& returns it in another text filed when the button “Compute” is clicked.
11. Write a program to demonstrate status of key on Applet window such as KeyPressed,
KeyReleased, KeyUp, KeyDown
15
12. Write a program to demonstrate various mouse events using MouseListener and
MouseMotionListener interface
13. Write a Servlet program to send username and password using HTML forms and
authenticate the user
16
Title of the Practical – IV : Based on Elective III Lab.
Course/ Paper
Core – 9 I Year & II Semester Credit: 0-0-4-2
OBJECTIVES
To explore about JavaScript objects
To implement XML and Web services
Explain how to create dynamic Web pages by using ASP.NET.
Create a user interface on an ASP.NET page by using standard Web server controls.
Create a user control and a custom server control and add them to an ASP.NET page.
Display dynamic data from a data source by using ADO.Net
OUTCOMES:
At the end of this Lab course students will be able to
Create Web Pages using Javascript object
Design web pages using xml and webservices
Create user interactive web pages using ASP.Net.
Create simple data binding applications using ADO.Net connectivity.
LIST OF PROGRAMS:
1. Validate the Registration, user login and payment by credit card pages using JavaScript.
2. Write a JavaScript to design a simple calculator to perform the following operations:
sum, product, difference and quotient
3. Write a program to implement XML Document Creation
4. Write a program to implement Internal DTD Creation
5. Write a program to implement External DTD Creation
6. Write a program to implement XML Schema Creation
7. Write a program to implement WSDL Service (HelloService.WSDL File)
8. Write a program the service provider can be implement a single get price (), static
9. Write a program to implement to create a simple web service that converts the
temperature from Fahrenheit to Celsius (using HTTP Post Protocol)
10. Write a program to study the Validation controls in asp.net.
11. Write a program to study the grid view control in asp.net.
12. Write a program to study the ADO.net and Stored procedure in asp.net.
13. Write a program to access data sources through ADO.NET
17
14. R.CHERAN [M.Sc Computer Science] Page 3
17. SYLLABUS
19. ASP.NET Lab
18
Title of the Practical – IV : Based on Elective III Lab.
Course/ Paper Python Programming Lab
Core – 9B I Year & II Semester Credit: 0-0-4-2
OBJECTIVE:
To implement the python programming features in practical applications.
To write, test, and debug simple Python programs.
To implement Python programs with conditionals and loops.
Use functions for structuring Python programs.
Represent compound data using Python lists, tuples, dictionaries, turtles, Files and
modules.
OUTCOMES:
Understand the numeric or real life application problems and solve them
Apply a solution clearly and accurately in a program using Python.
Apply the best features available in Python to solve the situational problems
List of Exercise:
1. Design a script in Scratch to make a sprite to draw geometrical shapes such as Circle,
Triangle, Square, and Pentagon.
2. Design a script in Scratch to make a sprite to ask the user to enter two different numbers and
an arithmetic operator and then calculate and display the result
3. Design a Python Script to convert a given number to words
4. Design a Python script to convert a Binary number to Decimal number and verify if it is a
Perfect number.
5. Design a Python script to sort numbers specified in a text file using lists.
6. Design a Python script to determine the difference in date for given two dates in
YYYY:MM:DD format 0 <= YYYY <= 9999, 1 <= MM <= 12, 1 <= DD <= 31 following
the leap year rules.
7. Design a Python Script to determine the Square Root of a given number without using
inbuilt functions in Python
8. Design a Python Script to generate the frequency count of words in a text file.
9. Design a Python Script to print a spiral pattern for a 2 dimensional matrix
10. Write a Python program to create a dictionary grouping a sequence of key-value pairs into a
dictionary of lists. Original list: [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
Grouping a sequence of key-value pairs into a dictionary of lists: {'yellow': [1, 3], 'blue': [2,
4], 'red': [1]}
11. Design a Python script to generate statistical reports (Minimum, Maximum, Count, Average
19
& Sum) on public datasets
12. Write a Python program to check that a string contains only a certain set of characters in this
case a-z, A-Z and 0-9
13. Write a Python program to find the occurrence and position of the substrings within a string.
20
Title of the Practical – IV : Based on Elective III Lab.
Course/ Paper Mobile Application Development Lab.
Core – 9C I Year & II Semester Credit: 0-0-4-2
Objective:
The objective of this lab is to get an overview of the various application techniques and can able
to demonstrate them using android.
Outcomes:
After the completion of the course the student can able to:
Understand complexity of android application and techniques and their limitations.
Capable of confidently applying common android application in practice and
implementing their own.
Capable of performing experiments in android application using virtual games.
List of Exercise:
1. Develop an application that uses GUI components, Font and Colors.
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. Implement an application that implements Multithreading.
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.
21
Title of the Computing Networks
Course/ Paper
Core – 10 II Year & III Semester Credit: 3-1-0-4
Course Objectives
1 To define the computer networks and identify the taxonomy of computer networks in
terms of its transmission technology and scalability. Outline the features of the OSI and
TCP/IP network architectures
2 Critically understand and assess various transmission media and algorithms for
modulation and multiplexing.
3 Understand , apply and analyze various algorithms used for error correction and
detection and transmission protocols in point to point for broad cast communication
systems.
4 Understand and evaluate well known algorithms used for routing packets and avoid
congestion in complex internetworks.
5 Conceptually understand the protocols used in end to end communication to establish,
and release connection and segment transmission to provide reliable service to
applications. Create sample protocols and evaluate the performance.
Course Outcomes:
1 Learn and understand the basic concepts of networking and its applications. To
understand well established layered architectures in computer networks
2 Understand the concepts of the transmission medium, modulation and multiplexing
techniques
3 Learn and understand well established error detection and correction codes and various
protocols used in dealing with point to point and broad cast communications systems data
link layer.
4 Comprehend the design issues and to assess the routing and congestion control
algorithms.
5 Enumerate the transport layer service, conceptualize the internet transport protocols and
the network security.
Unit 1: Introduction - Uses of networks - Network architectures - OSI and TCP/IP reference
model and services – Example Networks.
Unit 2: Physical layer - Transmission media - Guided and wireless – Digital Modulation and
multiplexing – Public switched Telephone network.
Unit 3: Data link layer Design issues - error detection and correction - elementary data link
22
protocols - sliding window protocols - Packet over SONET- ADSL. MAC sublayer protocols.
Unit 4: Network layer-design issues – Routing and congestion control algorithms, Quality of
service, internetworking – Network layer in the INTERNET.
Unit 5: Transport layer – transport service - Addressing, Establishing & Releasing a connection,
Multiplexing, Crash Recovery, Internet transport protocol TCP, Network security-cryptography.
Text book: 1. A. S. Tanenbaum, N. Feamster and D.J. Wetherall, 2021, Computer Networks, 6th
Edition, Pearson Education.
Reference books:
1. D. Bertsekas and R. Gallagher, 1992, Data Networks, Prentice hall of India, New Delhi.
2. L. L Peterson and B. S Davie, “Computer Networks – A Systems Approach”, MK Publishers,
Fifth Edition, 2012
3.J. F Kurose and K. W Ross, “Computer Networking – A Top Down Approach”, Eigth Edition,
Pearson Education, 2021.
E-learning resources
1 https://nptel.ac.in/courses/106/105/106105183/
2 https://nptel.ac.in/courses/106/105/106105081/
3. https://nptel.ac.in/courses/106/105/106105080/
4. http://intronetworks.cs.luc.edu/current/ComputerNetworks.pdf
5. Linux Network Administrators Guide, http://tldp.org/LDP/nag2/index.html
23
Title of the Operating Systems
Course/ Paper
Core – 11 II Year & III Semester Credit: 3-1-0-4
OBJECTIVES
To understand the basic concepts and functions of operating systems
To understand Processes and Threads
To analyze Scheduling algorithms.
To understand the concept of Deadlocks.
To analyze various memory management schemes.
To understand I/O management and File systems.
OUTCOMES
At the end of the course, the students should be able to:
Unit II: Threads- Multicore Programming- Multithreading Model- Threading Issues- Process
Synchronization- The Critical-Section Problem- Peterson’s Solution- Synchronization Hardware
- Mutex Locks- Semaphores- Monitors- CPU Scheduling- Scheduling Criteria- Scheduling
Algorithm- Thread Scheduling- Multiple Processor Scheduling- System Model- Methods for
Handling Deadlocks- Deadlock Prevention- Deadlock Avoidance- Deadlock Detection.
TEXT BOOK :
1. Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, ―Operating System Concepts‖,
9th Edition, John Wiley and Sons Inc., 2012.
REFERENCES :
25
Title of the Machine Learning
Course/ Paper
Core – 12 II Year & III Semester Credit: 3-1-0-4
Objectives:
● To provide mathematical base for Machine learning
● To provide theoretical knowledge on setting hypothesis for pattern recognition.
● To impart Knowledge of machine learning techniques for data handling
● To provide the skill to evaluate the performance of algorithms and to provide
solution for various real-world applications.
● To impart the knowledge of identifying similarities and differences in various
patterns of data
Outcomes:
● Recognize the characteristics of machine learning strategies.
● Apply various supervised learning methods to appropriate problems.
● Identify and integrate more than one technique to enhance the performance of
learning.
● Create probabilistic and unsupervised learning models for handling unknown
pattern.
● Analyze the co-occurrence of data to find interesting frequent patterns.
● Preprocess the data before applying to any real-world problem and can evaluate
its performance.
Unit 1: The Fundamentals of Machine Learning: The Machine Learning Landscape - Types of
Machine Learning Systems - Main Challenges of Machine Learning - Testing and Validating.
End-to-End Machine Learning Project - Look at the Big Picture - Get the Data - Discover and
Visualize the Data to Gain Insights - Prepare the Data for Machine Learning Algorithms - Select
and Train a Model - Fine-Tune Your Model - Launch, Monitor, and Maintain Your System.
Unit 2: Ingredients of machine learning: Tasks – Models – Features. Supervised Learning:
Classification – Binary classification and related tasks – Scoring and ranking – class probability
estimation – Multi-class classification. Unsupervised Learning: Regression – Unsupervised and
descriptive learning. Concept Learning: The hypothesis space – paths through the hypothesis
space – beyond conjunctive concepts – learnability.
Unit 3: Tree Models: Decision trees – Ranking and probability estimation trees – tree learning
as variance reduction. Rule Models: Learning ordered rule lists – learning unordered rule sets –
descriptive rule learning – first–order rule learning. Linear Models: The least-squares method –
The perceptron – Support vector machines.
Unit 4: Distance-based Models: Neighbours and exemplars – Nearest-neighbour classification –
26
Distance-based clustering – K-Means algorithm – Hierarchical clustering. Probabilistic Models:
The normal distribution and its geometric interpretations – probabilistic models for categorical
data – Naïve Bayes model for classification – probabilistic models with hidden values –
Expectation-Maximization.
Unit 5: Features: Kinds of features – Feature transformations – Feature construction and
selection. Model ensembles: Bagging and random forests – Boosting – Mapping the ensemble
landscape. Machine Learning experiments: What to measure – How to measure it – How to
interpret it.
Text Books:
1. Flach, P, “Machine Learning: The Art and Science of Algorithms that Make Sense of Data”,
Cambridge University Press, 2012
2. Aurélien Géron, “Hands-On Machine Learning with Scikit-Learn and Tensor Flow: Concepts,
Tools, and Techniques to Build Intelligent Systems”, First Edition, 2017 (Chapters 1 and 2)
References
1. John D. Kelleher, Brian Mac Namee, Aoife D'Arcy, “Fundamentals of Machine Learning for
Predictive Data Analytics: Algorithms, Worked Examples, and Case Studies”, The MIT Press,
First Edition, 2012
2. Kevin P. Murphy, “Machine Learning: A Probabilistic Perspective”, MIT Press, 2012
3. Ethem Alpaydin, “Introduction to Machine Learning”, MIT Press, Third Edition, 2014
4. Tom Mitchell, "Machine Learning", McGraw-Hill, 1997
5. Stephen Marsland, “Machine Learning - An Algorithmic Perspective”, Chapman and
Hall/CRC Press, Second Edition, 2014.
Web References:
● https://www.youtube.com/watch?v=r4sgKrRL2Ys&list=PL1xHD4vteKYVpaIiy2
95pg6_SY5qznc77
27
Title of the Information Security
Course/ Paper
Extra- II Year & III Semester Credit: 3-1-0-4
Disciplinary
Objectives:
● To acquire knowledge of cryptography and network security
● To acquire knowledge of security management and incident response
● To acquire knowledge of security in software and operating systems
● To acquire knowledge of data security and secure system development
● To acquire knowledge of privacy and data protection
● To provide the ability to examine and analyze real-life security cases.
Outcomes:
● Test and evaluate security in systems and networks
● Use methods for planning and designing secure systems
● Apply techniques and tools for secure system deployment and operation
● Perform continuous testing, assessment and updating of system security
● Evaluate vulnerability of an information system and establish a plan for risk management.
● Demonstrate how to secure a network. Evaluate a company’s security policies and
procedures.
28
Recommended Text
1) C. P. Pfleeger, and S. L. Pfleeger, Security in Computing, Pearson Education, 4th
Edition, 2003
2) Matt Bishop, Computer Security: Art and Science, Pearson Education, 2003.
Reference Books
1) Stallings, Cryptography & N/w Security: Principles and practice, 4th Edition, 2006
2) Kaufman, Perlman, Speciner, Network Security, Prentice Hall, 2nd Edition, 2003
3) Eric Maiwald, Network Security : A Beginner’s Guide, TMH, 1999
4) Macro Pistoia, Java Network Security, Pearson Education, 2nd Edition, 1999
5) Whitman, Mattord, Principles of Information Security, Thomson, 2nd Edition, 2005
29
Title of the Practical – V: Machine Learning Lab.
Course/ Paper
Core-13 II Year & III Semester Credit: 0-0-4-2
Objectives:
● Make use of Data sets in implementing the machine learning algorithms
● Implement the machine learning concepts and algorithms in any suitable language
of choice.
● The programs can be implemented in either JAVA or Python.
● For Problems 1 to 6 and 10, programs are to be developed without using the
builtin classes or APIs of Java/Python.
● Data sets can be taken from standard repositories
(https://archive.ics.uci.edu/ml/datasets.html) or constructed by the students.
Outcomes:
● Understand the implementation procedures for the machine learning algorithms.
● Design Java/Python programs for various Learning algorithms.
● Apply appropriate data sets to the Machine Learning algorithms.
● Identify and apply Machine Learning algorithms to solve real world problems.
● be capable of confidently applying common Machine Learning algorithms in
practice and implementing their own;
1. Implement and demonstrate the FIND-S algorithm for finding the most specific
hypothesis based on a given set of training data samples. Read the training data
from a .CSV file
2. For a given set of training data examples stored in a .CSV file, implement and
demonstrate the Candidate-Elimination algorithm to output a description of the set
of all hypotheses consistent with the training examples.
3. Write a program to demonstrate the working of the decision tree based ID3
algorithm. Use an appropriate data set for building the decision tree and apply this
knowledge to classify a new sample.
5. Write a program to implement the naïve Bayesian classifier for a sample training
data set stored as a .CSV file. Compute the accuracy of the classifier, considering
30
few test data sets.
6. Assuming a set of documents that need to be classified, use the naïve Bayesian
Classifier model to perform this task. Built-in Java classes/API can be used to
write the program. Calculate the accuracy, precision, and recall for your data set.
Reference Books:
● Introduction to Machine Learning with Python by Andreas C. Müller, Sarah
Guido Released October 2016 Publisher(s): O'Reilly Media, Inc. ISBN:
9781449369415
Web References:
● https://www.youtube.com/watch?v=RnFGwxJwx-0
Objectives:
To provide the hands on experience in analyzing, designing and implementing various
projects.
To assign minor projects based on the languages they have learned so far.
To comprehend technical literature and document project work
To create test cases and implement different testing strategies
To provide software development skill for a given problem
Outcomes:
Mini Project: Each student will develop and implement application software based on any
emerging latest technologies.
32
Title of the Project & Viva-Voce
Course/ Paper
Core- 15 II Year & IV Semester Credit: 20
Objectives:
To make the project an extended piece of individual work.
To work on a topic that interests the student
To have regular meetings with their supervisor and/or external project provider to discuss
progress
To produce dissertations that contain some element of original work.
To encourage and reward individual inventiveness and application of effort
Outcomes:
Construct a project from initial ideas;
Plan, schedule, monitor and control their own work;
Defend their ideas in discussions and presentations;
Use libraries and other information resources;
Apply tools and techniques from taught courses
Communicate their findings through a written report.
Project: The project work is to be carried out either in a software industry or in an academic
institution for the entire semester and the report of work done is to be submitted to the
University.
33
Syllabus of Elective courses.
Title of the Course / Paper Data Mining and Data Warehousing
Elective-1 I Year & I Semester Credit: 3
Objective:
To understand the principles of Data warehousing and Data Mining.
To be familiar with the Data warehouse architecture and its Implementation.
To know the Architecture of a Data Mining system.
To understand the various Data preprocessing Methods.
To perform classification and prediction of data.
Outcomes:
Define the scope and necessity of Data Mining & Warehousing for the society.
Modeling and design of data warehouses.
Comparing the design of data warehousing techniques so that it can be able to solve the
root problem.
Apply various tools of Data Mining and their techniques to solve the real time problems.
To analyze and design various algorithms based on data mining tools.
To evaluate research and design of new Data Mining Techniques.
Unit 1: Data Warehousing and Business Analysis: - Data warehousing Components –Building a
Data warehouse –Data Warehouse Architecture – DBMS Schemas for Decision Support – Data
Extraction, Cleanup, and Transformation Tools –Metadata – reporting – Query tools and
Applications – Online Analytical Processing (OLAP) – OLAP and Multidimensional Data
Analysis.
Unit 2: Data Mining: - Data Mining Functionalities – Data Preprocessing – Data Cleaning – Data
Integration and Transformation – Data Reduction – Data Discretization and Concept Hierarchy
Generation- Architecture Of A Typical Data Mining Systems- Classification Of Data Mining
Systems. Association Rule Mining: - Efficient and Scalable Frequent Item set Mining Methods –
Mining Various Kinds of Association Rules – Association Mining to Correlation Analysis –
Constraint-Based Association Mining.
34
Unit 4: 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.
Unit 5: Mining Object, Spatial, Multimedia, Text and Web Data: Multidimensional Analysis and
Descriptive Mining of Complex Data Objects – Spatial Data Mining – Multimedia Data Mining
– Text Mining – Mining the World Wide Web.
Recommended Texts:
1) Jiawei Han, Micheline Kamber and Jian Pei“Data Mining Concepts and Techniques”,
Third Edition, Elsevier, 2011.
Reference Books:
1) Alex Berson and Stephen J. Smith “Data Warehousing, Data Mining & OLAP”, Tata
McGraw – Hill Edition, Tenth Reprint 2007.
2) K.P. Soman, Shyam Diwakar and V. Ajay “Insight into Data mining Theory and
Practice”, Easter Economy Edition, Prentice Hall of India, 2006.
3) G. K. Gupta “Introduction to Data Mining with Case Studies”, Easter Economy Edition,
Prentice Hall of India, 2006.
4) Pang-Ning Tan, Michael Steinbach and Vipin Kumar “Introduction to Data Mining”,
Pearson Education, 2007.
E-learning resources:
1) https://nptel.ac.in/courses/106105174
2) https://onlinecourses.nptel.ac.in/noc21_cs06/preview
3) https://onlinecourses.swayam2.ac.in/cec20_cs12/preview
Mapping with Programme Outcomes:
35
Title of the E-Commerce
Course/ Paper
Elective-1 I Year & I Semester Credit: 3
OBJECTIVES:
• To Learn the E-Commerce Platform and its concepts
• To Understand the Technology, infrastructure and Business in E-Commerce
• To Understand the Security and Challenges in E-Commerce
• To Build an Own E-Commerce using Open Source Frameworks
36
Business model of any e-commerce website - Mini Project : Develop E-Commerce
project in any one of Platforms like Woo-Commerce, Magento or Opencart
TEXT BOOK:
1. Kenneth C.Laudon, Carol Guercio Traver ―E-Commerce‖, Pearson, 10th Edition,
2016
REFERENCES
1. http://docs.opencart.com/
2. http://devdocs.magento.com/
3. http://doc.prestashop.com/display/PS15/Developer+tutorials
4. Robbert Ravensbergen, ―Building E-Commerce Solutions with WooCommerce‖,
PACKT, 2nd Edition
37
Title of the Agile Software Engineering
Course/ Paper
Elective-1 I Year & I Semester Credit: 3
Objectives:
● To provide students with a theoretical as well as practical understanding of agile
software development practices and how small teams can apply them to create
high-quality software.
● To provide a good understanding of software design and a set of software
technologies and APIs.
● To do a detailed examination and demonstration of Agile development and testing
techniques.
● To understand the benefits and pitfalls of working in an Agile team.
● To understand Agile development and testing.
Outcomes:
● Upon completion of the course, the students will be able to:
● Realize the importance of interacting with business stakeholders in determining
the requirements for a software system
● Perform iterative software development processes: how to plan them, how to
execute them.
● Point out the impact of social aspects on software development success.
● Develop techniques and tools for improving team collaboration and software
quality.
● Perform Software process improvement as an ongoing task for development
teams.
● Show how agile approaches can be scaled up to the enterprise level.
Reference Books:
● Craig Larman, ―Agile and Iterative Development: A Manager‗s Guide,
Addison-Wesley, 2004.
● Kevin C. Desouza, ―Agile Information Systems: Conceptualization,
Construction, and Management, Butterworth-Heinemann, 2007.
Web References:
● https://www.youtube.com/watch?v=x90kIAFGYKE&t=8s
39
Title of the Cloud Computing
Course/ Paper
Elective-II I Year & II Semester Credit: 3
Objectives:
● To introduce the cloud computing concepts and map reduce programming model.
● To provide skills and knowledge about operations and management in cloud
technologies so as to implement large scale systems.
● To provide skills to design suitable cloud infrastructure that meets the business
services and customer needs.
● To provide Knowledge of different CPU, memory and I/O virtualization
techniques that serve in offering software, computation and storage services on
the cloud; Software Defined Networks (SDN) and Software Defined Storage
(SDS); cloud storage technologies and relevant distributed file systems, NoSQL
databases and object storage;
● To introduce the variety of programming models and develop working
experience in several of them.
Outcomes:
● Understand the evolution, principles, and benefits of Cloud Computing in order to
assess existing cloud infrastructures to choose an appropriate architecture that
meets business needs.
● Decide a suitable model to capture the business needs by interpreting different
service delivery and deployment models.
● Understand virtualization foundations to cater the needs of elasticity, portability
and resilience by cloud service providers.
● Infer architectural style, work flow of real-world applications and to implement
the cloud applications using map reduce programming models.
● Compare operation and economic models of various trending cloud platforms
prevailing in IT industry.
Unit I: Foundations of cloud: Inception and need for cloud computing: Motivations from
distributed computing predecessors - Evolution - Characteristics - Business Benefits –
Challenges in cloud computing - Exploring the Cloud Computing Stack - Fundamental
Cloud Architectures – Advanced Cloud Architectures - Specialized Cloud Architectures
Unit II: Service Delivery and Deployment Models: Service Models (XaaS):
Infrastructure as a Service (IaaS) - Platform as a Service (PaaS) - Software as a
Service(SaaS) - Deployment Models: Types of cloud - Public cloud - Private cloud -
Hybrid cloud – Service level agreements - Types of SLA – Lifecycle of SLA- SLA
Management
40
Unit III: Cloud Resource Virtualization: Virtualization as Foundation of Cloud –
Understanding Hypervisors – Understanding Machine Image and Instances - Managing
Instances – Virtual Machine Provisioning and Service Migrations Cloud Computing
Applications and Paradigms: Existing Cloud Applications and Opportunities for New
Applications - Architectural Styles for Cloud Applications - Workflows: Coordination of
Multiple Activities - Coordination Based on a State Machine Model: The ZooKeeper -
The MapReduce Programming Model - A Case Study: The Grep The Web Application
Unit IV: Resource Management and Scheduling in Cloud: Policies and Mechanisms for
Resource Management – Stability of a Two-Level Resource Allocation Architecture-
Feedback Control Based on Dynamic Thresholds - Coordination of Specialized
Autonomic Performance Managers - A Utility-Based Model for Cloud-Based Web
Services - Resource Bundling: Combinatorial Auctions for Cloud Resources –
Scheduling Algorithms for Computing Clouds - Resource Management and Dynamic
Application Scaling
Reference Books:
1. Marinescu, Dan C. Cloud Computing: Theory and Practice. Morgan
Kaufmann, 2017.
2. Toby Velte, Anthony Velte, Robert Elsenpeter, Cloud Computing: A Practical
Approach, Mc Graw Hill Education, 1st Edition, 2017.
3. Buyya, Rajkumar, Christian Vecchiola, and S. Thamarai Selvi. Mastering
Cloud Computing: Foundations and Applications Programming, Tata Mcgraw
Hill, 1st Edition, 2017.
Web References:
1. https://www.youtube.com/watch?v=-8O32k26RWA
2. Mapping with Programme Outcomes:
41
Mapping with Programmers outcomes*
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10
CO1 S S M M S M L L S L
CO2 S M S M S L M L M L
CO3 M S M S M S L L L M
CO4 S L M S S L L M M S
CO5 S S M S L M M L M L
3. S-Strong M-Medium L-Low
42
Title of the Software Testing
Course/
Paper
Elective-II I Year & II Semester Credit: 3
Objectives:
To understand the principles of Software Testing and tools..
Enable the students to learn about the principle and tools of Software testing.
Improve knowledge in software testing tools.
Outcomes:
Understand the fundamentals of software testing.
Gain software testing experience by applying software testing knowledge and methods to
practice-oriented software testing projects.
Analyze path testing concept. Analyze state testing concept. Execute programs and test
data in Client-Server Architecture.
Able to debug the project and to test the entire computer based systems at all levels.
Able to apply quality and reliability metrics to ensure the performance of the software.
Able to evaluate the web applications using bug tracking tools.
Unit 1: Purpose of Software testing – Some Dichotomies – a model for testing – Playing pool
and consulting oracles – Is complete testing possible – The Consequence of bugs – Taxonomy of
Bugs.
Unit 2: Testing Fundamentals– Test case Design – Introduction of Black Box Testing and White
Box testing – Flow Graphs and Path testing – Path testing Basics - Predicates, Path Predicates
and Achievable Paths - Path Sensitizing – Path Instrumentation – Implementation and
Application of Path Testing.
Unit 3: Transaction Flow testing – Transaction Flows – techniques – Implementation Comments
– Data Flow Testing – Basics – Strategies – Applications, Tools and effectiveness – Syntax
Testing – Why, What, How – Grammar for formats – Implementation – Tips.
Unit 4: Logic Based Testing – Motivational Overview – Decision tables – Path Expressions –
KV Charts – Specifications – States, State Graphs and transition Testing – State Graphs – Good
& bad states – state testing Metrics and Complexity.
Unit 5: Testing Types -Testing GUIs – Testing Client – Server Architecture – Testing for Real-
time System – A Strategic Approach to Software testing – issues – unit testing – Integration
Testing – Validation testing – System testing – The art of Debugging.
Recommended Texts:
1) Boris Beizer, Software testing techniques, DreamTech Press, Second Edition – 2003.
2) Myers and Glenford.J., The Art of Software Testing, John-Wiley & Sons,1979.
43
Reference Books:
1) Roger.S.Pressman, Software Engineering – A Practitioner’s Approach,McGraw Hill, 5th
edition, 2001.
2) Marnie.L. Hutcheson, Software Testing Fundamentals, Wiley-India, 2007.
E-learning resources:
1) https://www.tutorialspoint.com/software_testing/index.htm
2) https://www.guru99.com/software-testing-introduction-importance.html
3) https://nptel.ac.in/courses/106/105/106105150/ Course
44
Title of the Course/Paper Big Data Analytics
Elective II I Year & II Semester Credit:3
Objectives:
● To gives an overview of Big Data, i.e. storage, retrieval and processing of big
data.
● To focus on the “technologies”, i.e., the tools/algorithms that are available for
storage, processing of Big Data.
● To help a student to perform a variety of “analytics” on different data sets and to
arrive at positive conclusions.
● To introduce the tools required to manage and analyze big data like Hadoop,
NoSql MapReduce.
● To teach the fundamental techniques and principles in achieving big data
analytics with scalability and streaming capability
Outcomes:
● Understand Big Data and its analytics in the real world
● Analyze the Big Data framework like Hadoop and NOSQL to efficiently store and
process Big Data to generate analytics
● Design of Algorithms to solve Data Intensive Problems using Map Reduce
Paradigm
● Design and Implementation of Big Data Analytics using pig and spark to solve
data intensive problems and to generate analytics
● To have skills that will help them to solve complex real-world problems in for
decision support.
UNIT – I: ESSENTIALS OF BIG DATA AND ANALYTICS: Data, Characteristics of
data and Types of digital data, Sources of data, Working with unstructured data,
Evolution and Definition of big data, Characteristics and Need of big data, Challenges of
big data; Overview of business intelligence, Data science and Analytics, Meaning and
Characteristics of big data analytics, Need of big data analytics, Classification of
analytics, Challenges to big data analytics, Importance of big data analytics, Basic
terminologies in big data environment.
UNIT –II: HADOOP: Introducing Hadoop, Need of Hadoop, limitations of RDBMS,
RDBMS versus Hadoop, Distributed computing challenges, History of Hadoop, Hadoop
overview, Use case of Hadoop, Hadoop distributors, HDFS (Hadoop Distributed File
System) , Processing data with Hadoop, Managing resources and applications with
Hadoop YARN (Yet another Resource Negotiator), Interacting with Hadoop Ecosystem.
UNIT – III: MAPREDUCE PROGRAMMING: Introduction, Mapper, Reducer,
45
Combiner, Partitioner, Searching, Sorting, Compression, Real time applications using
MapReduce, Data serialization and Working with common serialization formats, Big data
serialization formats.
UNIT – IV: HIVE: Introduction to Hive, Hive architecture, Hive data types, Hive file
format, Hive Query Language (HQL), User-Defined Function (UDF) in Hive;
UNIT – V: PIG: The anatomy of Pig , Pig on Hadoop, Pig Philosophy, Use case for Pig;
ETL Processing , Pig Latin overview , Data types in Pig , Running Pig , Execution modes
of Pig, HDFS commands, Relational operators, Piggy Bank , Word count example using
Pig.
Recommended Texts:
1. Seema Acharya, Subhashini Chellappan, “Big Data Analytics”, 1st Edition,
Wiley, 2015.
Reference Books:
1. Boris lublinsky, Kevin t. Smith, Alexey Yakubovich, “Professional Hadoop
Solutions”,1st Edition, Wrox, 2013.
2. Chris Eaton, Dirk Deroos et. al., “Understanding Big data”, Indian Edition,
McGraw Hill, 2015.
3. Tom White, “HADOOP: The definitive Guide”, 3rd Edition, O Reilly, 2012.
4. Vignesh Prajapati, “Big Data Analytics with R and Hadoop”, 1st Edition, Packet
Publishing Limited, 2013.
Web References:
1. https://www.youtube.com/watch?v=xvEKQefqQ7A
Mapping with Programme Outcomes:
46
Title of the Course/Paper Web Technology
Elective -III I Year & II Semester Credit:3
Objectives:
To understand the basics of Javascript and to acquire the knowledge about
XML,Webservies
and ASP.NET in Web technology
To understand about the internet technologies and Client side programming javascript
To Empower the websites with use of XML and web services
To Identify the Basics of ASP.Net Framework Architecture and its controls
To Learn the Database connection architecture using ADO.net
Outcome:
At the end of the course, the students should be able to:
Acquire vast knowledge of Javascript and Internet Technologies
Understand and explore various Features of ASP.Net Framework
Understand the details of XML and Webservices
Apply the knowledge of ASP.NET object, ADO.NET data access to develop a client
server model
Unit I: Understanding Internet , Difference between websites and web server, Internet
technologies Overview. Understanding websites and web servers: Understanding the difference
between internet and intranet. Web 2.0: Basics, RIA Rich Internet Applications , collaborations
tools .HTML and CSS: HTML 5.0. XHTML, CSS 3. An introduction to JavaScript, JavaScript
DOM Model- Built-in objects, Date and Objects -Regular Expressions -Exception Handling,
Validation. Event Handling , DHTML with JavaScript.
Unit II: XML : Introduction to XML, DTD, CSS, Namespace, Schema, XSD, XSL- Introduction
to Web Services : The Web Services Type System, Data Type Mappings - SOAP :
Communication on the Web -WSDL : Describing Web Services.
Unit III: Understanding ASP.NET Controls: Web forms, Buttons, Text Box, Labels, Checkbox,
Radio Buttons, List Box etc. Running a web Application, creating a multiform web project.
Unit IV: Form Validation Controls- Required Field, Compare, Range. Calendar Control, Ad
Rotator Control, State Management-View State, Session State, Application State.
Textbook :
1. Deitel, Deiteland Nieto, Internet and World Wide Web : How to Program, 5 thEdition, 2012,
Prentice Hall,. ISBN-13: 978-0-13-215100-9
2. Jeffrey C. Jackson, “Web Technologies A computer Science Perspective”, 2011, Pearson,
ISBN 9780133001976.
3. Beginning XML by David Hunter, Andrew Watt (Wrox P ublication)
4. Teach yourself ASP programming in 21 days – Fleet, Warret, Hen Stojanovic , Techmedia.
Reference book:
1. XML, Web Services, and the Data Revolution, F.P.Coyle, Pearson Education. 2. ASP.NET
Developer’s Guide By G Buezek (TMH)
Web References:
1.https://www.w3schools.com/js/
2.https://www.w3schools.com/xml/xml_services.asp
3.https://www.tutorialspoint.com/asp.net/index.htm
48
Mapping with Programme Outcomes:
49
Title of the Course/Paper Python Programming
Elective –III I Year & II Semester Credit:3
OBJECTIVES:
1. To teach problem solving through flow charting tool-Raptor.
2. To elucidate problem solving through python programming language.
3. To introduce function oriented programming paradigm through python.
4. To train in development of solutions using modular concepts.
OUTCOMES:
After successful completion of this course, the students would be able to:
1. Summarize the fundamental concepts of python programming.
2. Interpret object oriented and event driven programming in python.
3. Apply the suitable data structures to solve the real time problems.
4. Apply regular expressions for many different situations.
UNIT-I
Introduction to python: Numbers, strings, variables, operators, expressions, Indentation, String
operations and functions, math function calls, Input/output statements, conditional if, while and
for loops.
UNIT-II
Functions: user defined functions, parameters to functions, recursive functions, and lambda
function. Event driven programming: Turtle graphics, Turtle bar chart, Widgets, key press
events, mouse events, timer events.
50
UNIT-III
Data structures: List- list methods & functions, Tuple-tuple methods & functions, Dictionaries-
dictionary methods & functions, traversing dictionaries. Sets-methods & functions, Files.
UNIT-IV
OOP: class, object, methods, constructors, inheritance, inheritance types, polymorphism,
operator overloading, abstract classes, exception handling.
UNIT-V
Regular expressions: Power of pattern matching and searching using RegEx in python, Meta
characters and Sequences used in Patterns, Password, email, URL validation using regular
expression, Pattern finding programs using regular expression.
TEXT BOOKS:
1. Kenneth Lambert,”Fundamentals of Python: First Programs” , ISBN-13: 978-
1337560092,cengage learning publishers, first edition,2012.
2. Allen B. Downey, “think python: how to think like a computer scientist”, ISBN-13: 978-
1491939369, O’reilly, 2nd edition, 2016.
3. Reema Thareja, “Python Programming using Problem Solving Approach”, ISBN-13:978-0-
19-948017-3, Oxford University Press, 2017.
REFERENCE BOOKS:
1. Vamsikurama, “Python programming : A modern approach”, ISBN-978-93-325-8752-
6,pearson,2018.
2. Mark Lutz , “Learning python”, ISBN: 1-56592-464-9,Orielly, 4th edition, 1999 .
3. W.Chun, “Core python programming”, ISBN-13: 978-0132269933, pearson, Second Edition,
2016.
51
Title of the Course/Paper Mobile Application Development
Elective -III I Year & II Semester Credit:3
OBJECTIVES:
1. To facilitate students to understand android SDK
2. To help students to gain a basic understanding of Android application development
3. To inculcate working knowledge of Android Studio development tool
OUTCOMES:
At the end of this course, students will be able to:
1. Identify various concepts of mobile programming that make it unique from programming for
other platforms.
2. Critique mobile applications on their design pros and cons.
3. Utilize rapid prototyping techniques to design and develop sophisticated mobile interfaces
4. Program mobile applications for the Android operating system that use basic and advanced
phone features
5. Deploy applications to the Android marketplace for distribution.
Unit- I
Introduction- The Mobile Ecosystem: Operators - Networks - Devices - Platforms – Operating
Systems - Application Frameworks - Applications – Services- Mobile Devices Profiles - Options
for development - Categories of Mobile Applications: SMS - Mobile Websites - Mobile Web
Widgets - Native Applications - Games - Utility Apps- Location, Based Services(LBS) Apps -
Informative Apps - Enterprise Apps
Unit- II
Mobile Information Architecture: Introduction - Sitemaps - Click Streams - Wireframes -
Prototyping - Architecture for Different Devices. Mobile Design: Interpreting Design – Elements
of Mobile Design - Mobile Design Tools - Designing for Different Device/ Screens
Unit– III
Introduction to Android: The Android Platform-Android SDK-Eclipse Installation-Android
Installation- Building you First Android application-Understanding Anatomy of Android
Application-Android Manifest file
Unit –IV
Android Application Design Essentials: Anatomy of an Android applications-Android
52
terminologies-Application Context- Activities-Services-Intents-Receiving and Broadcasting
Intents-Android Manifest File and its common settings-Using Intent Filter- Permissions.
Unit – V
Android User Interface Design Essentials: User Interface Screen elements-Designing User
Interfaces with Layouts-Drawing and Working with Animation-Testing Android applications:
Publishing Android application-Using Android preferences-Managing Application resources in a
hierarchy-working with different types of resources.
TEXT BOOKS:
1. Mobile Design and Development by Brian Fling, O’Reilly Media, Inc 2009
2. Lauren Darcey and Shane Conder, “Android Wireless Application Development”, Pearson
Education, 2nd ed. (2011)
3. 3. J2ME: The Complete Reference, James Keogh, Tata McGrawHill 2003
REFERENCE BOOKS:
1. Reto Meier, “Professional Android 2 Application Development”, Wiley India Pvt Ltd
2. Mark L Murphy, “Beginning Android”, Wiley India Pvt Ltd
3.Android Application Development All in one for Dummies by Barry Burd, Edition: I
E-Resource:
https://www.tutorialspoint.com/android/android_resources.htm
53
Title of the Internet of Things
Course/ Paper
Elective – IV II Year & III Semester Credit: 3
Objectives:
To understand the concepts of Internet of Things and the application of IoT.
To Determine the Market Perspective of IoT.
To Understand the vision of IoT from a global context
To learn how to integrate IoT with the environment; communicate from and to machines
and some aspects of security of IoT.
Outcomes:
Students would have become familiar with IoT and its flavors; realised the IoT ecosystem
and topologies; learnt how to integrate IoT with the environment; communicate from and
to machines and some aspects of security of IoT.
Implement basic IoT applications on embedded platforms.
Design IoT applications in different domain and be able to analyze their performance.
Unit 1: Introduction: Defining Internet of Things (IoT) – IoT: AWeb 3.0 View – Ubiquitous IoT
Applications – Important vertical IoT applications - Four Pillars of IoT: M2M, RFID, WSN and
SCADA – DNA of IoT: Device, Connect and Manage.
Unit 2: Middleware for IoT: An Overview of middleware – Communication middleware for IoT
– LBS and Surveillance middleware. Protocol Standardization for IoT - IoT Protocol
Standardization Efforts: M2M and WSN Protocols – SCADA and RFID Protocols – Issues with
IoT Standardization – Unified Data Standards.
Unit 3: Architecture Standardization for Web of Things (WoT): Web of Things versus Internet
of Things –– Platform Middleware for WoT – Unified Multitier WoT Architecture – WoT
Portals and Business Intelligence
Unit 4: Cloud of Things: Cloud Computing - Grid/SOA and Cloud Computing - Cloud
Middleware - NIST’s SPI Architecture and Cloud Standards - Cloud Providers and Systems. IoT
and Cloud Computing - Mobile Cloud Computing – The Cloud of Things Architecture - Four
Deployment Models - Vertical Applications - Fifteen Essential Features - Four Technological
Pillars - Three Layers of IoT Systems - Foundational Technological Enablers
Unit 5: Applications: Case Studies illustrating IoT design – Smart lighting and intrusion
detection in Home – Smart parking in cities – Weather Monitoring System and Forest Fire
detection – Smart irrigation – IoT printer.
54
Text Books:
1. Honbo Zhou, “The Internet of Things in the Cloud: A Middleware Perspective”, CRC
Press, Taylor and Francis Group, 2012
2. Arshdeep Bahga , Vijay Madisetti , “Internet of Things: A Hands-on-Approach”, 2014.
(Chapter 9)
References
1. Jean-Philippe Vasseur, Adam Dunkels,,”Interconnecting Smart Objects with IP: The
Next Internet”, Morgan Kuffmann, 2010.
2. Dieter Uckelmann; Mark Harrison; Florian Michahelles-(Editors), Architecting the
Internet of Things, First Edition, Springer – 2011
3. Adrian McEwen, Hakim Cassimally, Designing the Internet of Things, First Edition,
Wiley, 2014.
4. Olivier Hersent, David Boswarthick, Omar Elloumi , “The Internet of Things – Key
applications and Protocols”, Wiley, 2012
55
Title of the Computer vision
Course/Paper
57
Title of the Data Visualization
Course/ Paper
Elective - IV II Year & III Semester Credit: 3
Course Objectives:
To understand the various types of data, apply and evaluate the principles of data
visualization
Acquire skills to apply visualization techniques to a problem and its associated dataset
To apply structured approach to create effective visualizations
To learn how to bring valuable insight from the massive dataset using visualization
To learn how to build visualization dashboard to support decision making
6.To create interactive visualization for better insight using various visualization tools
58
Text Books
1. Tamara Munzer, Visualization Analysis and Design, CRC Press 2014.
2. Aragues, Anthony. Visualizing Streaming Data: Interactive Analysis Beyond Static Limits.
O‟Reilly Media, Inc., 2018
Reference Books
1. Chun-hauh Chen, W.K.Hardle, A.Unwin, Hand book of Data Visualization, Springer
publication, 2016.
2. Christian Toninski, Heidrun Schumann, Interactive Visual Data Analysis, CRC press
publication,2020
3. Alexandru C. Telea, Data Visualization: Principles and Practice, AK Peters, 2014.
59
Syllabus of Soft Skill Courses
Title of the
Course/Paper Communication Skills for Software Engineers - I
1 Basics of Communication
1.1 Definition and process of communication
1.2 Types of communication - formal and informal, oral and written, verbal and non-verbal
1.3 Communications barriers and how to overcome them
1.4 Barriers to Communication, Tools of Communication
2 Application of Grammar
2.1 Parts of Speech (Noun, verb, adjective, adverb) and modals
2.2 Sentences and its types
2.3 Tenses
2.4 Active and Passive Voice
2.5 Punctuation
2.6 Direct and Indirect Speech
3 Reading Skill
Unseen passage for comprehension (one word substitution, prefixes, suffixes, antonyms,
synonyms etc. based upon the passage to be covered under this topic)
60
4 Writing Skill
4.1 Picture composition
4.2 Writing paragraph
4.3 Notice writing
5 Listening and Speaking Exercises
1. Self and peer introduction
2. Newspaper reading
3. Just a minute session-Extempore
4. Greeting and starting a conversation
5. Leave taking
6. Thanking
7. Wishing well
8. Talking about likes and dislikes
9. Group Discussion
10. Listening Exercises.
● Student should be encouraged to participate in role play and other student centred
activities in class room and actively participate in listening exercises
● Assignments and quiz/class tests, mid-semester and end-semester written tests − Actual
practical work, exercises and viva-voce − Presentation and viva-voce
Recommended Texts:
1. Communicating Effectively in English, Book-I by RevathiSrinivas; Abhishek
Publications, Chandigarh.
2. Communication Techniques and Skills by R. K. Chadha; DhanpatRai
Publications, New Delhi.
Reference Books:
1. High School English Grammar and Composition by Wren & Martin; S. Chand &
Company Ltd., Delhi.
2. Excellent General English-R.B.Varshnay, R.K. Bansal, Mittal Book Depot,
Malhotra
3. The Functional aspects of Communication Skills – Dr. P. Prsad, S.K. Katria &
Sons, New Delhi
4. Q. Skills for success – Level & Margaret Books, Oxford University Press.
5. e-books/e-tools/relevant software to be used as recommended by AICTE/
NITTTR, Chandigarh.
61
Web References:
1. http://www.mindtools.com
2. http://www.letstalk.com.in
3. http://www.englishlearning.com
4. http://learnenglish.britishcouncil.org/en/
5. http://swayam.gov.in
62
Title of the
Course/Paper Communication Skills for Software Engineers - II
Objectives:
● Knowledge of English Language plays an important role in career development.
● This subject aims at introducing basic concepts of communication besides laying
emphasis on developing listening, speaking, reading and writing skills as parts of
Communication Skill.
Outcomes:
63
4 Speaking and Listening Skills
1. Debate
2. Telephonic Conversation: general etiquette for making and receiving calls
3. Offering- Responding to offers.
4. Requesting – Responding to requests
5. Congratulating
6. Exploring sympathy and condolences
7. Asking Questions- Polite Responses
8. Apologizing, forgiving
9. Complaining
10. Warning
11. Asking and giving information
12. Getting and giving permission
13. Asking for and giving opinions
● Students should be encouraged to participate in role play and other student-centered
activities in class rooms and actively participate in listening exercises
● Assignments and quiz/class tests, mid-semester and end-semester written tests - Actual
practical work, exercises and viva-voce - Presentation and viva-voce
Recommended Texts:
1. Communicating Effectively in English, Book-I by RevathiSrinivas; Abhishek
Publications, Chandigarh.
2. Communication Techniques and Skills by R. K. Chadha; Dhanpat Rai
Publications, New Delhi.
Reference Books:
1. High School English Grammar and Composition by Wren & Martin; S. Chand &
Company Ltd., Delhi.
2. e-books/e-tools/relevant software to be used as recommended by
AICTE/NITTTR, Chandigarh.
Web References:
1. http://www.mindtools.com
2. http://www.letstalk.com.in
3. http://www.englishlearning.com
4. http://learnenglish.britishcouncil.org/en/
5. http://swayam.gov.in
64
Mapping with Programmers outcomes*
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10
CO1 L L M S M S L S S M
CO2 S M L M L S M L M S
CO3 M S S L M S L M S M
CO4 S L S M S L L M M S
CO5 S M L S L M S L M S
S-Strong M-Medium L-Low
65
Title of the Course/Paper Personality Development and other Soft Skills for Software
Engineers
Soft skill Credit:2
Objectives:
● The course intends to develop talent, facilitate employability enabling the incumbent to
excel and sustain in a highly competitive world of business.
● The programme aims to bring about personality development with regard to the different
behavioural dimensions that have far reaching significance in the direction of
organisational effectiveness.
● To make students know about self-awareness, life skills, soft skills, need for personal
development etc.
Outcomes:
● The student will be able to understand, analyse develop and exhibit accurate sense of self.
● Think critically.
● Demonstrate knowledge of personal beliefs and values and a commitment to continuing
personal reflection and reassessment.
● Learn to balance confidence with humility and overcome problems associated with
personality
Recommended Texts:
1. Personality Development and SOFT SKILLS, BARUN K. MITRA, Oxford
University Press
Reference Books:
1. Communicating Effectively in English, Book-I by Revathi Srinivas; Abhishek
Publications, Chandigarh.
2. Communication Techniques and Skills by R. K. Chadha; Dhanpat Rai
Publications, New Delhi.
Web References:
1. http://www.mindtools.com
2. http://www.letstalk.com.in
67
3. http://www.englishlearning.com
4. http://learnenglish.britishcouncil.org/en/
5. http://swayam.gov.in
Mapping with Programme Outcomes:
68
Title of the Documentation and Interview skills for Software Engineers
Course/Paper
Objectives:
● Ensure that you understand what the job involves, and that you have the necessary skills
● Make sure you do want to work for the company
● Check that the philosophy/values of the company match your personal requirements
● Find out more about the job, training, career structure etc.
Outcomes:
● Understand the purpose of interviews
● Be aware of the processes involved in different types of interviews
● Know how to prepare for interview
● Be clear about the importance of self presentation
69
Language— Eyes— A Powerful Reflection of One’s Inner Self —Entry to My Space—
Personal Zones May Vary: Intimate Zone - Personal Zone - Social Zone - Public Zone -
Typical Body Language when Zones are Intruded — Body Language Exhibited During
Different Professional Interactions -Interview - Manager’s Discussions with a Subordinate
Employee - Discussions with Supervisor - Presentation to a Large Audience - Group
Discussions - Video-conference
Unit 3: Enhance Your Writing Skill to Create an Impression
Fifteen Principles to Increase Clarity of Communication - Use Short, Simple and Clear
Words - Use Short Sentences - Do not Cram Di erent Points into One Sentence - Using
Compact Substitutes for Wordy Phrases - Remove Redundant Words and Expressions -
Avoid Use of Mixed Metaphors - Avoid Hackneyed and Stilted Phrases - Avoid
Verbosity in the Use of Common Prepositions - Do not Twist the Word Order - Present
Similar Ideas in a Sentence with Same Structural and Grammatical Form - Make Positive
Statements Without Being Hesitant or Non-committal - e Statements Without Being
Hesitant or Non-committal - Avoid Pompous Words and Phrases - Use Active Instead of
Passive Voice - Ensure Correct Spelling and Grammar in the Text - Substitute Easily-
understood Words for Words Imported from Other Fields - Edit-Edit-Edit - The Reader’s
Perspective - Clarity of Thought - Clarity of Text - Example of Poorly and Well-written
Texts
Unit 4: Fog Index: Provides Guidance for Proper Writing
Fog Index or Clarity Index -Examples of Passages with High and LowFog Index -
Infogineering Clarity Rating - Flesch Kincaid Reading Ease Index - Other Readability
Indices - Checking Grammar, Spelling and Voice - Clarity of Verbal Communication -
Case 1 - Case 2
Recommended Texts:
1. Personality Development and SOFT SKILLS, BARUN K. MITRA, Oxford
University Press
Reference Books:
1. Communicating Effectively in English, Book-I by Revathi Srinivas; Abhishek
Publications, Chandigarh.
2. Communication Techniques and Skills by R. K. Chadha; Dhanpat Rai
Publications, New Delhi.
Web References:
1. http://www.mindtools.com
2. http://www.letstalk.com.in
3. http://www.englishlearning.com
4. http://learnenglish.britishcouncil.org/en/
5. http://swayam.gov.in
70
Mapping with Programme Outcomes:
71
Title of the Team Project
Course/Paper
Objectives:
● Understand programming language concepts, particularly object-oriented concepts or go
through research activities.
● Plan, analyze, design and implement a software project or gather knowledge over the
field of research and design or plan about the proposed work.
● Learn to work as a team and to focus on getting a working project done on time with each
student being held accountable for their part of the project.
● Learn about and go through the software development cycle with emphasis on different
processes - requirements, design, and implementation phases.
Outcomes:
● Demonstrate the ability to locate and use technical information from multiple sources.
● Demonstrate the ability to communicate effectively in speech and writing.
● To demonstrate a depth of knowledge of modern technology.
● To do the Project Scheduling, tracking, Risk analysis, Quality management and Project
Cost estimation using different techniques.
● To complete an independent research project, resulting in at least a thesis publication, and
research outputs in terms of publications in high impact factor journals, conference
proceedings.
Project:
● Any Computer related project has to be developed using latest software as a team.
● The project must be presented for viva-voce at the end of the semester.
● Students will write up a project report, which is an essay to provide a complete record of
all the work carried out in their projects.
● The student project reports will be assessed solely according to academic marking
guidelines by the supervisor(s) of the student project.
● If the work of the candidate is found to be insufficient and plagiarism, the supervisor(s)
will decide the further process.
72
Mapping with Programmers outcomes*
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10
CO1 L L M S M S L S S M
CO2 S M L M L S M L M S
CO3 L S S L M L M S S M
CO4 S L S M S L L M M S
CO5 S M L S L M S L M S
● S-Strong M-Medium L-Low
*****
S.A.C. SEPT’2022
73