0% found this document useful (0 votes)
62 views

3rd and 4th Sem Curriculum and Syllabus CSE

The document provides course details for the Operating Systems course offered in the 3rd semester of the Computer Science & Engineering program. It includes 5 units covering key topics like processes, threads, scheduling, synchronization, memory management, storage management, virtual machines, and mobile operating systems. Some of the major topics covered are CPU scheduling algorithms, process synchronization techniques, paging, segmentation, virtual memory, file systems, I/O systems, and mobile operating systems like iOS and Android. The course aims to help students understand the basics and functions of operating systems along with analyzing important concepts like scheduling, synchronization, memory management, and more. It includes both theory and practical sessions with exercises on process management, CPU scheduling, inter-process communication, and

Uploaded by

ravi
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
62 views

3rd and 4th Sem Curriculum and Syllabus CSE

The document provides course details for the Operating Systems course offered in the 3rd semester of the Computer Science & Engineering program. It includes 5 units covering key topics like processes, threads, scheduling, synchronization, memory management, storage management, virtual machines, and mobile operating systems. Some of the major topics covered are CPU scheduling algorithms, process synchronization techniques, paging, segmentation, virtual memory, file systems, I/O systems, and mobile operating systems like iOS and Android. The course aims to help students understand the basics and functions of operating systems along with analyzing important concepts like scheduling, synchronization, memory management, and more. It includes both theory and practical sessions with exercises on process management, CPU scheduling, inter-process communication, and

Uploaded by

ravi
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 31

Chennai Institute of Technology (Autonomous)

B.E. Computer Science &Engineering Curriculum and Syllabi


CHOICE BASED CREDIT SYSTEM

3rd Semester Course Structure

Semester III
Periods per
Sl.
Course Code Course Category Week Credits
No. L T P
Theory
1. MA2301 Linear Algebra BSC 3 1 0 4
Theory Cum Practical
2. CS2301 Operating Systems PCC 3 0 2 4
3. CS2302 Modern Database Technology PCC 3 0 2 4
4. CS2303 Server-Side Programming PCC 3 0 2 4
5. CS2304 Embedded Programming ESC 2 0 2 3
6. CS2305 Advanced Programming PCC 3 0 2 4
Practical
7. ES2301 Employability Enhancement Skills - III EEC 0 0 2 1
Mandatory Course
Introduction to Women and Gender
MC2307 MC 2 0 0 0
8. Studies - Mandatory Course – 1I
Total 25

4th Semester Course Structure

Periods per
Sl.
Subject Code Subject Category Week Credits
No. L T P
Theory
1. MA2401 Discrete Mathematics PCC 2 1 0 3
Theory Cum Practical
CS2401 Advanced Data Structures and
2. PCC 3 0 2 4
Algorithms
CS2402 Introduction to Artificial Intelligence and
3. PCC 3 0 2 4
Machine Learning
4. CS2403 Computer Networks PCC 3 0 2 4
5. CS2404 Web Frameworks PCC 3 0 2 4
6. CS2405 Software Engineering PCC 3 0 2 4
Practical
7. ES2401 Employability Enhancement Skills - IV EEC 0 0 2 1
Total 24
Course Code L T P C
LINEAR ALGEBRA
MA2301 3 0 2 4

COURSE OBJECTIVES:

1. To find the basis and dimension of vector space


2. To obtain the matrix of linear transformation and its Eigen values and eigenvectors
3. To find orthonormal basis of inner product space and find least square approximation
4. To find Eigen values of a matrix using numerical techniques and perform matrix
decomposition
5. To solve QR and LU decomposition and to learn the applications of linear algebra in
computer Science.

UNIT - I VECTOR SPACES 12 (9+3)

Real and Complex fields - Vector spaces over Real and Complex fields - Subspace - Linear space -
Linear independence and dependence - Basis and dimension.

UNIT - II LINEAR TRANSFORMATION 12 (9+3)

Linear transformation - Rank space and null space - Rank and nullity - Dimension theorem -
Matrix representation of linear transformation – Eigen values and eigenvectors of linear
transformation

UNIT - III INNER PRODUCT SPACES 12 (9+3)

Inner product and norms - Properties - Orthogonal, Ortho normal vectors - Gram Schmidt ortho
normalization process - Least square approximation.

UNIT - IV EIGEN VALUE PROBLEMS AND MATRIX DECOMPOSITION 12 (9+3)

Eigen value Problems: Power method, Jacobi rotation method - Singular value decomposition -
QR decomposition.

UNIT - V APPLICATIONS OF LINEAR ALGEBRA 12 (9+3)

Singular value decomposition and principal component analysis - Introduction to their


applications in image processing and machine learning - Coding and Decoding - Least Square
solutions

60 PERIODS
COURSE OUTCOMES:

After the completion of the course the student will be able to

1. CO1 : Find the basis and dimension of vector space


2. CO2 : Obtain the matrix of linear transformation and its Eigen values and eigenvectors
3. CO3 : Find orthonormal basis of inner product space and find least square approximation
4. CO4 : Find Eigen values of a matrix using numerical techniques and perform matrix
decomposition
5. CO5 : Learning the applications in Image processing, Machine learning and Cryptography

TOTAL: 60 PERIODS

TEXT BOOKS:
1. Friedberg A.H, Insel A.J. and Spence L, Linear Algebra, Prentice Hall of India, New Delhi,
2004.
2. Faires J.D. and Burden R., Numerical Methods, Brooks/Cole (Thomson Publications), New
Delhi, 2002.

REFERENCES:
1. Kumaresan S, Linear Algebra - A geometric approach, Prentice Hall of India, New Delhi,
Reprint, 2010.
2. Strang G, Linear Algebra and its applications, Thomson (Brooks / Cole) New Delhi, 2005.
3. Gerald C.F. and Wheatley P.O, Applied Numerical Analysis, Pearson Educations, New Delhi,
2002.
4. Sundarapandian V, Numerical Linear Algebra, Prentice Hall of India, New Delhi, 2008.
5. Richard Branson, Matrix Operations, Schaum's outline series, 1989
6. Bernard Kolman, David R. Hill, Introductory Linear Algebra, Pearson Educations, New Delhi,
First Reprint, 2009.
7. R C Gonzalez and R E Woods, Digital Image Processing
Course Code L T P C
OPERATING SYSTEMS
CS2301 3 0 2 4

COURSE OBJECTIVES:
The main objectives of this course are to:
1. To understand the basics and functions of operating systems.
2. To understand processes and threads
3. To analyze scheduling algorithms and process synchronization.
4. To understand the concept of deadlocks.
5. To analyze various memory management schemes.
6. To be familiar with I/O management and file systems.
7. To be familiar with the basics of virtual machines and Mobile OS like iOS and Android.

UNIT I INTRODUCTION 9
Computer System - Elements and organization; Operating System Overview - Objectives and
Functions - Evolution of Operating System; Operating System Structures – Operating System
Services - User Operating System Interface - System Calls – System Programs - Design and
Implementation - Structuring methods.
UNIT II PROCESS MANAGEMENT 9
Processes - Process Concept - Process Scheduling - Operations on Processes - Inter-process
Communication; CPU Scheduling - Scheduling criteria - Scheduling algorithms: Threads -
Multithread Models – Threading issues; Process Synchronization - The Critical-Section
problem - Synchronization hardware – Semaphores – Mutex - Classical problems of
synchronization - Monitors; Deadlock - Methods for handling deadlocks, Deadlock
prevention, Deadlock avoidance, Deadlock detection, Recovery from deadlock.
UNIT III MEMORY MANAGEMENT 9
Main Memory - Swapping - Contiguous Memory Allocation – Paging - Structure of the Page
Table - Segmentation, Segmentation with paging; Virtual Memory - Demand Paging – Copy
on Write - Page Replacement - Allocation of Frames –Thrashing.
UNIT IV STORAGE MANAGEMENT 9
Mass Storage system – Disk Structure - Disk Scheduling and Management; File-System
Interface - File concept - Access methods - Directory Structure - Directory organization - File
system mounting - File Sharing and Protection; File System Implementation - File System
Structure - Directory implementation - Allocation Methods - Free Space Management; I/O
Systems – I/O Hardware, Application I/O interface, Kernel I/O subsystem.
UNIT V VIRTUAL MACHINES AND MOBILE OS 9
Virtual Machines – History, Benefits and Features, Building Blocks, Types of Virtual Machines
and their Implementations, Virtualization and Operating-System Components; Mobile OS -
iOS and Android.
45 PERIODS
PRACTICAL EXERCISES: 30 PERIODS
1. Installation of windows operating system
2. Illustrate UNIX commands and Shell Programming
3. Process Management using System Calls : Fork, Exit, Getpid, Wait, Close
4. Write C programs to implement the various CPU Scheduling Algorithms
5. Illustrate the inter process communication strategy
6. Implement mutual exclusion by Semaphore
7. Write C programs to avoid Deadlock using Banker's Algorithm
8. Write a C program to Implement Deadlock Detection Algorithm
9. Write C program to implement Threading
10. Implement the paging Technique using C program
11. Write C programs to implement the following Memory Allocation Methods
a. First Fit b. Worst Fit c. Best Fit
12. Write C programs to implement the various Page Replacement Algorithms
13. Write C programs to Implement the various File Organization Techniques
14. Implement the following File Allocation Strategies using C programs a. Sequential b.
Indexed c. Linked
15. Write C programs for the implementation of various disk scheduling algorithms

COURSE OUTCOMES:
At the end of this course, the students will be able to:
1. CO1 : Analyze various scheduling algorithms and process synchronization.
2. CO2 : Explain deadlock prevention and avoidance algorithms.
3. CO3 : Compare and contrast various memory management schemes.
4. CO4 : Explain the functionality of file systems, I/O systems, and Virtualization
5. CO5 : Compare iOS and Android Operating Systems.
TOTAL:75 PERIODS
TEXT BOOKS:
1. Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, “Operating System Concepts”,
10th Edition, John Wiley and Sons Inc., 2018.
2. Andrew S Tanenbaum, "Modern Operating Systems", Pearson, 5th Edition, 2022 New
Delhi.
REFERENCES:
1. Ramaz Elmasri, A. Gil Carrick, David Levine, “Operating Systems – A Spiral Approach”,
Tata McGraw Hill Edition, 2010.
2. William Stallings, "Operating Systems: Internals and Design Principles", 7 th Edition,
Prentice Hall, 2018.
3. Achyut S.Godbole, Atul Kahate, “Operating Systems”, McGraw Hill Education, 2016.
Course Code L T P C
MODERN DATABASE TECHNOLOGY
CS2302 3 0 2 4

COURSE OBJECTIVES

1. Describe the fundamental elements of relational database management systems


2. Explain the basic concepts of entity-relationship model, relational database design and
transactions.
3. Create well-formed XML documents and understand the Object-oriented Database
4. Distinguish the different types of databases namely distributed and NoSQL databases
5. To understand the different models involved in database security and their applications in
real time world to protect the database

Unit I RELATIONAL DATABASES 9

Purpose of Database System – Views of data – Data Models – Database System Architecture –
Keys – Relational Algebra – SQL fundamentals – Advanced SQL features – Embedded SQL–
Dynamic SQL

Unit II DATABASE DESIGN AND TRANSACTIONS 9

Entity-Relationship model – E-R Diagrams – Enhanced-ER Model – Normalization. Transaction


Concepts – ACID Properties – Schedules – Serializability – Transaction support in SQL – Need for
Concurrency – Concurrency control –Two Phase Locking- Timestamp

Unit III WEB AND OBJECT-ORIENTED DATABASES 9

XML Data Model – DTD – XML Schema – XML Querying – Web Databases – Open Database
Connectivity. The Object Oriented DBMS Architecture – Performance Issue in Object Oriented
DBMS – The Database Design for an Object Relational DBMS.

Unit IV DISTRIBUTED AND NOSQL DATABASES 9

Distributed Databases: Architecture, Data Storage, Transaction Processing, Query processing


and optimization – NOSQL Databases: Introduction – CAP Theorem – Document-Based NoSQL
Systems and MongoDB – MongoDB Data Model – MongoDB Distributed Systems Characteristics
– Key value Stores – Column Based Systems – Graph Databases.
Unit V DATABASE SECURITY 9

Security issues – Access control based on privileges – Role Based access Injection control – SQL
– Statistical Database security – Flow control – Encryption and Public Key infrastructures –
Challenges.

45 PERIODS

PRACTICAL EXERCISES 30 PERIODS

1. Create a database table, add constraints (primary key, unique, check, Not null), insert
rows, update and delete rows using SQL DDL and DML commands.
2. Create a set of tables, add foreign key constraints and incorporate referential integrity.
3. Query the database tables using different ‘where’ clause conditions and also implement
aggregate functions.
4. Query the database tables and explore sub queries and join operations.
5. Write user defined functions and stored procedures in SQL.
6. Execute complex transactions and realize DCL and TCL commands.
7. Write SQL Triggers for insert, delete, and update operations in a database table.
8. Create View and index for database tables with a large number of records.
9. Create an XML database and validate it using XML schema.
10. Create a database table, insert rows, update and delete rows using PostgreSQL an open
source Object-Relational Database Management Systems (ORDBMS )
11. Installation of NoSQL database like MongoDB
12. Create Document, column and graph-based data using NOSQL database tools.
13. Develop a simple GUI based database application and incorporate all the above-mentioned
features
14. Case Study using any of the real-life database applications.

COURSE OUTCOMES

At the end of the course, the students will be able to :


1. CO1: Construct SQL Queries using relational algebra
2. CO2: Design database using ER model, normalize the database and construct queries to
handle transaction processing
3. CO3: Understand and write well-formed XML documents
4. CO4: Use the data control, definition, and manipulation languages of the NoSQL databases
5. CO5: Design and Implement secure database systems.

TOTAL 75 PERIODS
TEXT BOOKS

1. Silberschatz, A., Korth, H. F., and Sudarshan, S. Database System Concepts, McGraw-Hill, 7th
Edition. 2019.
2. Elmasri, R., &Navathe, S. B. Fundamentals of database systems, 7th Edition, Pearson
Education , 2017.

REFERENCE BOOKS

1. C.J.Date, A.Kannan, S.Swamynathan, “An Introduction to Database Systems, Eighth Edition,


Pearson Education, 2006
2. Raghu Ramakrishnan , Johannes Gehrke “Database Management Systems”, Fourth Edition,
McGraw Hill Education, 2015
3. Thomas Cannolly and Carolyn Begg, “Database Systems, A Practical Approach to Design,
Implementation and Management”, Sixth Edition, Pearson Education, 2015
Course Code L T P C
SERVER-SIDE PROGRAMMING
CS2303 3 0 2 4

Course Objectives:
1. To understand the difference between web based and server-side programming.
2. To create awareness on web technology.
3. To create full stack application using java script-based frameworks.
4. To develop Python based innovative full stack applications.
5. To develop java applications using Spring boot and Hibernate.

UNIT I – NODE.JS 9
Introduction to Server-side programming – multi-tier architecture - Node.Js architecture –
npm – Development environment – API
UNIT II – EXPRESS.JS 9
Express JS and features – Routing – HTTP request and response – Middleware – Error
Handling.
UNIT III – PYTHON FRAMEWORKS 9
Introduction to frameworks on Python – Flask and Django
Django: Creating web application – handle request and response – views and templates –
Forms and generic views - SQLAlchemy
UNIT IV – MONGODB 9
SQL and NoSQL concepts – Create and manage MongoDB – Migration of Data into MongoDB
– MongoDB with Node.js – Services offered by MongoDB.

UNIT V – JAVA DEVELOPMENT ENVIRONMENT 9


Introduction to Spring Boot – Creating Project – Spring Initializer – Download and Install STS
IDE – Spring Boot Example – Spring Boot CLI - Spring Boot Annotations - Spring Boot
Application Properties - Spring Boot Starter Web - Spring Boot AOP
Hibernate – Hibernate Architecture - Hibernate with eclipse – Hibernate web application
example – Hibernate Log4j – Hibernate Inheritance Mapping – Hibernate and Spring
Integration.
45 PERIODS

PRACTICAL EXERCISES: 30
PERIODS
1. Project – Simple weather application using MongoDB
2. Project – URL shortener Application using SQL.
3. Project - Flight Ticket Booking
Create a web application for flight ticket booking. Use any tech stack for the backend
and db. A console-based application would work. Submissions with a very basic UI is
mandatory.

Type of Users

a. User
b. Admin

User Use Cases

● Login
● Sign up
● Searching for flights based on date and time
● Booking tickets on a flight based on availability (assuming
the defaultseat count is 60)
● My Booking -> to list out all the bookings made by that user
● Logout

Admin Use Cases

● Login (Seperate login for Admin)


● Add Flights
● Remove flights
● View all the booking based on flight number and time
Course Outcomes:
Upon completion of the course, students will be able to:
1. CO1: Develop business logic for back end using Node.js.
2. CO2: Create full stack application using Express.js.
3. CO3: Develop Python based full stack applications.
4. CO4: Develop strong querying and analytics using MongoDB.
5. CO5: Develop robust java applications using Spring boot and hibernate.
TOTAL 75 PERIODS
Text Books:
1. Jonathan Wexler, “Get Programming with Node.js”, Manning Publications, 2019.
2. Beginning Node.js, Express & MongoDB Development, Greg Lim, 1st Edition, 2019.

Online Resources:
1. Django documentation - https://docs.djangoproject.com/en/4.2/
2. MongoDB documentation - https://www.mongodb.com/docs/
3. Spring boot documentation - https://spring.io/guides/gs/spring-boot/
4. Hibernate documentation - https://hibernate.org/
Course Code L T P C
EMBEDDED PROGRAMMING
CS2304 3 0 2 4

COURSE OBJECTIVES:
1. To expose the addressing modes & instruction set of 8085.
2. To study the architecture and embedded C programming and its salient features
for embedded systems
3. To learn about various IOT-related protocols.
4. To develop IoT infrastructure for different applications.
5. To involve Discussions/ Practice/Exercise in revising & familiarizing the concepts
acquired over the 5 Units of the subject for improved employability skills.

UNIT-I 8086 MICROPROCESSOR 9


8086 Architecture – Memory interfacing–I/O ports and data transfer concepts – Timing Diagram
– Interrupt structure- DMA - Instruction set and addressing modes - Interfacing: 8255 PPI, 8279
Keyboard display controller, and 8254 Timer/Counter.
UNIT-II 8-BIT EMBEDDED PROCESSOR 9
8-Bit Microcontroller – Architecture – Instruction Set and Programming –Pipelining -
Programming Parallel Ports – Timers and Serial Port – Interrupt Handling - ARM Architecture.
UNIT-III EMBEDDED C PROGRAMMING 9
Memory And I/O Devices Interfacing – Programming Embedded Systems in C – Need for RTOS –
Multiple Tasks and Processes – Context Switching – Priority Based Scheduling Policies.
UNIT-IV IoT ARCHITECTURE AND PROTOCOLS 9
Definition & Characteristics of IoT - Challenges and Issues - Physical Design of IoT - Logical
Design of IoT - IoT Enabling Technologies – Domain Specific IoTs – IoT and M2M - IoT
Communication Models and APIs – IoT Protocols – LoRaWAN, 6LoWPAN, CoAP, MQTT.
UNIT V IoT SYSTEM DESIGN 9
IoT Systems logic design using Python–packages for IoT- IoT Physical device & Endpoints- Basic
building blocks of an IoT Device – Single board computer.
45 PERIODS
PRACTICAL EXERCISES: 30 PERIODS
Laboratory exercise: Use any Embedded processor/IDE/open source platform to give hands-on
training on basic concepts of embedded system design:

1. Write 8051 Assembly Language experiments using simulator.


2. Data transfer between registers and memory.
3. Write Basic and arithmetic Programs Using Embedded C.
4. Programming with IDE - ARM
5. Introduction to Raspberry PI platform and python programming
6. Interfacing sensors with Raspberry PI
7. Design IoT applications using STM32 /Jetson Nano/open platform.

Seminar: Students are able to give the seminar on recent trends in Embedded
Processor/IoT/Applications of IoT and other Programming tools etc.

Mini Project: Applications of IoT & Embedded System.

COURSE OUTCOMES:
After completion of the above subject, students will be able to understand
1. CO1: Understand the addressing modes & instruction set of 8085.
2. CO2: Deliver insight into architecture and embedded C programming and its salient
features for embedded systems.
3. CO3: Analyze various protocols for IoT.
4. CO4: Design an IoT based system for any applications.
5. CO5: Improved Employability and entrepreneurship capacity due to knowledge
upgradation on recent trends in embedded programming skills.

TOTAL: 75 PERIODS
TEXTBOOKS:

1. Marilyn Wolf, Computers as Components – Principles of Embedded Computing System


Design, Third Edition, Morgan Kaufmann, 2012.
2. Muhammed Ali Mazidi, Janice Gillispie Mazidi, Rolin D. McKinlay, “The 8051 Microcontroller
and Embedded Systems”, Pearson Education, Second Edition, 2014
3. Robert Barton, Patrick Grossetete, David Hanes, Jerome Henry, Gonzalo Salgueiro, “IoT
Fundamentals: Networking Technologies, Protocols, and Use Cases for the Internet of
Things”, CISCO Press, 2017

REFERENCES:
1. Ramesh S. Gaonkar, ‘Microprocessor Architecture Programming and Application’, Penram
International (P)ltd., Mumbai, 6th Education, 2013.
2. Michael J. Pont, “Embedded C”, Pearson Education, 2007.
3. Arshdeep Bahga, Vijay Madisetti, “Internet of Things – A hands-on approach”,
Universities Press,2015
4. Mayur Ramgir, Internet – of – Things, Architecture, Implementation and Security,
First Edition, Pearson Education, 2020.
Course Code L T P C
ADVANCED PROGRAMMING
CS2305 3 0 2 4

COURSE OBJECTIVES:
The main objectives of this course are to:
1. To understand Object Oriented Programming concepts and basics of Java programming
language
2. To know the principles of packages, inheritance and interfaces.
3. To develop a java application with threads and generics classes.
4. To define exceptions and use I/O streams.
5. To understand the fundamentals of collection framework and JDBC connectivity and
implement in small applications.
UNIT I FUNDAMENTALS OF JAVA 9
Overview of Object-Oriented Programming –– Features of Object-Oriented Programming –
Java Buzzwords –The Java Programming Environment– Data Types, Variables, constants –
Operators – Mathematical Functions and Constants-Conversions between Numeric Types-
Casts- Parentheses and Operator Hierarchy- Enumerated Types-Control flow Statements –
Arrays- Programming Structures in Java.
UNIT II IMPLEMENTATION OF OOP CONCEPTS 9
Defining classes in Java – Constructors -Methods -Access specifiers – Static members- Java
Doc comments-Overloading Methods – Objects as Parameters – Returning Objects –Static,
Nested and Inner Classes. Inheritance: Basics– Types of Inheritance -Super keyword -
Method Overriding – Dynamic Method Dispatch –Abstract Classes – final with Inheritance.
Packages and Interfaces: Packages – Packages and Member Access –Importing Packages –
Interfaces.
UNIT III EXCEPTION HANDLING AND MULTITHREADING 9
Exception Handling basics – Multiple catch Clauses – Nested try Statements – Java’s Built-in
Exceptions – User defined Exception. Multithreaded Programming: Java Thread Model–
Creating a Thread and Multiple Threads – Priorities – Synchronization – Inter Thread
Communication- Suspending –Resuming, and Stopping Threads –Multithreading.
UNIT IV I/O, GENERICS, STRING HANDLING 9
I/O Basics – Reading and Writing Console I/O – Reading and Writing Files. Generics: Generic
Programming – Generic classes – Generic Methods – Bounded Types – Restrictions and
Limitations. Strings: Basic String class, methods ,String Buffer Class & StringBuilder class.
UNIT V COLLECTIONS FRAMEWORK & DATABASE CONNECTIVITY 9
Collections Framework-Autoboxing -For-Each Style for Loop-Collection Interfaces-Collection
Interface-List Interface-Set Interface -Sorted Set Interface-Collection Classes-Array List Class-
LinkedList Class-HashSet Class-LinkedHashSet Class-Tree Set Class- Enum Set Class-Accessing
a Collection via an Iterator-Using an Iterator-The For-Each Alternative to Iterators-Storing
User-Defined Classes in Collections-Working with Maps-The Map Interfaces-The Map
Classes-Arrays- Accessing databases using JDBC connectivity - DAO
45 PERIODS
PRACTICAL EXERCISES: 30 PERIODS
1. Write a program to demonstrate the use of multidimensional arrays and looping
constructs.
2. Write a program to demonstrate the application of String handling functions.
3. Write a program to demonstrate the use of Inheritance.
4. Write a program to demonstrate the application of user-defined packages and sub-
packages.
5. Write a program to demonstrate the use of Java Exception handling methods.
6. Write a program to demonstrate the use of threads in Java.
7. Demonstrate with a program the use of File handling methods in Java.
8. Demonstrate the use of Java collection frameworks in reducing application development
time.
9. Write a program to register students data using JDBC with MySQL Database.
10. Develop applications to demonstrate the features of generics classes.
11. Develop a mini project for any application using Java concepts.

Lab Requirements: for a batch of 30 students


Operating Systems: Linux / Windows
Front End Tools: Eclipse IDE / Netbeans IDE

COURSE OUTCOMES:
At the end of this course, the students will be able to:
1. CO1: Apply the concepts of classes and objects to solve simple problems
2. CO2: Develop programs using inheritance, packages and interfaces
3. CO3: Make use of exception handling mechanisms and multithreaded model to solve
real world problems
4. CO4: Build Java applications with I/O packages, string classes, Collections and generics
concepts
5. CO5: Develop small applications with collection framework elements and manipulate
with the SQL database
TOTAL:75 PERIODS
TEXT BOOKS:
1. Herbert Schildt, “Java: The Complete Reference”, 11 th Edition, McGraw Hill Education,
New Delhi, 2019
2. Cay S. Horstmann, “Core Java Fundamentals”, Volume 1, 11 th Edition, Prentice Hall,
2018.
REFERENCES:
1. Paul Deitel Harvey Deitel, Java, How to Program, Prentice Hall; 9th edition, 201
Course Code L T P C
Employability Enhancement Skills - III
ES2301 0 0 2 1

COURSE OBJECTIVES:

The main objectives of this course are to:


1. To give the exposure to solve the real time problems related to company test questions.
2. To train the students to provide solutions for the assigned tasks.

PRACTICAL EXERCISES: 30 PERIODS


Questions from top notch industries – Programming, Quantitative Aptitude – Verbal Ability
– Numerical Ability – Reasoning Ability – Mock Test.

COURSE OUTCOMES:
At the end of this course, the students will be able to:
1. CO1: To solve the real time programming problems related to company test questions.
2. CO2: To solve Quantitative Aptitude – Verbal Ability – Numerical Ability – Reasoning
Ability Questions.
Course Code L T P C
INTRODUCTION TO WOMEN AND GENDER STUDIES
MC2301 2 0 0 0

Upon successful completion of this course, students should be able to:

1. Understand and engage with central debates in the field of Women’s and Gender
Studies.
2. Define and apply basic terms and concepts central to this field.
3. Apply a variety of methods of analyzing gender in society, drawing upon both primary
and secondary sources.
4. Apply concepts and theories of Women’s and Gender Studies to life experiences and
historical events and processes.
5. Communicate effectively about gender issues in both writing and speech, drawing upon
Women’s and Gender Studies scholarship and addressing a public audience.

UNIT I CONCEPTS 9
Sex vs. Gender, masculinity, femininity, socialization, patriarchy, public/ private,
essentialism, binaryism, power, hegemony, hierarchy, stereotype, gender roles, gender
relation, deconstruction, resistance, sexual division of labour.

UNIT II FEMINIST THEORY 9


Liberal, Marxist, Socialist, Radical, Psychoanalytic, postmodernist, ecofeminist.

UNIT III WOMEN’S MOVEMENTS: GLOBAL, NATIONAL AND LOCAL 9


Rise of Feminism in Europe and America. Women’s Movement in India.

UNIT IV GENDER AND LANGUAGE 9


Linguistic Forms and Gender. Gender and narratives.

UNIT V GENDER AND REPRESENTATION 9


Advertising and popular visual media. Gender and Representation in Alternative Media.
Gender and social media.

COURSE OUTCOMES:
At the end of this course, the students will be able to:
1. CO1: To understand and engage with central debates in the field of Women’s and
Gender Studies and basic terms and concepts.
2. CO2: To aapply a variety of methods of analyzing gender in society, drawing upon both
primary and secondary sources.
3. CO3: To apply concepts and theories of Women’s and Gender Studies to life
experiences and historical events and processes.
4. CO4: To communicate effectively about gender issues in both writing and speech,
drawing upon Women’s and Gender Studies scholarship and addressing a public
audience
TOTAL:45 PERIODS
REFERENCE BOOK:

1. Gilman, Charlotte Perkins. The Yellow Wallpaper. 1892.Taylor, Verta, Nancy Whittier,
and Leila J. Rupp, eds. Feminist Frontiers. 9th ed. McGraw Hill Humanities, 2011. ISBN:
9780078026621.

2. Schneir, Miriam, ed. Feminism in Our Time: The Essential Writings, World War II to the
Present. Vintage Books, 1994. ISBN: 9780679745082.
Course Code L T P C
DISCRETE MATHEMATICS
MA2401 3 1 0 4

COURSE OBJECTIVES:

1. To familiarize the applications of algebraic structures


2. To introduce most of the basic terminologies used in computer science courses and
application of ideas to solve practical problems
3. To understand the graph models and basic concepts of graphs
4. To study the characterization and properties of trees and graph connectivity
5. To extend student’s logical and mathematical maturity and ability to deal with abstraction
and understand the concepts, significance of boolean algebra which are widely used in
computer science and engineering.

UNIT - I ALGEBRAIC STRUCTURES 12 (9+3)


Semigroup – Monoids – Groups – Subgroups – Abelian groups – Lagrange’s theorem – Rings
(examples only) – Integral domain – Fields – Definition and examples.

UNIT - II COMBINATORICS 12 (9+3)


Introduction to Basic Counting Principles, Formulae behind nPr, nCr - Balls and Pins problems -
PigeonHole Principle - Recurrence relations – Generating Functions - Introduction to Proof
Techniques - Mathematical Induction

UNIT - III BASIC GRAPH THEORY 12 (9+3)


Graphs and digraphs, complement, isomorphism, connectedness and reachability, adjacency
matrix, Eulerian paths and circuits in graphs and digraphs, Hamiltonian paths and circuits in
graphs and tournaments

UNIT - IV TREES, PLANER GRAPH AND COLOURING OF A GRAPH 12 (9+3)


Trees; Planar graphs, Euler’s formula, dual of a planer graph, independence number and clique
number, chromatic number, statement of Four-color theorem

UNIT - V LOGIC AND BOOLEAN ALGEBRA 12 (9+3)


Propositional calculus - propositions and connectives, syntax; Semantics - truth assignments
and truth tables, validity and satisfiability, tautology; Adequate set of connectives; Equivalence
and normal forms; Compactness and resolution; Formal reducibility - natural deduction system
and axiom system; Soundness and completeness. Introduction of Boolean algebra, truth table,
basic logic gate, basic postulates of Boolean algebra, principle of duality, canonical form,
Karnaugh map

TOTAL: 60 PERIODS
COURSE OUTCOMES:

After the completion of the course the student will be able to

1. Have an understanding in identifying structures on many levels


2. Understand the concepts of combinatorics
3. Understand the concepts of graph theory and its applications
4. Understand the importance of the natural applications of trees and apply the graph coloring
concepts in partitioning problems
5. Learning logic and Boolean algebra and using these concepts to solve the problems

TEXT BOOKS:

1. Rosen. K.H., "Discrete Mathematics and its Applications", 7th Edition, Tata McGraw Hill
Pub. Co. Ltd., New Delhi, Special Indian Edition, 2017
2. Tremblay. J.P. and Manohar. R, "Discrete Mathematical Structures with Applications to
Computer Science", Tata McGraw Hill Pub. Co. Ltd, New Delhi, 30th Reprint, 2011.

REFERENCES:

1. Grimaldi. R.P. "Discrete and Combinatorial Mathematics: An Applied Introduction", 5


thEdition, Pearson Education Asia, Delhi, 2013.
2. Koshy. T. "Discrete Mathematics with Applications", Elsevier Publications, 2006
3. Lipschutz. S. and Mark Lipson., "Discrete Mathematics", Schaum’s Outlines, Tata McGraw Hill
Pub. Co. Ltd., New Delhi, 3rd Edition, 2010
4. Gilberft Strang, “Introduction to Linear Algebra”.
5. R. A. Brualdi, “Introductory Combinatorics”, , North-Holland, New York.
6. N. Deo, “Graph Theory with Applications to Engineering and Computer Science”, Prentice
Hall, Englewood Cliffs.
Course Code L T P C
ADVANCED DATA STRUCTURES AND ALGORITHMS
CS2401 3 1 0 4

COURSE OBJECTIVES:

The main objectives of this course are to:

1. To apply the different non-linear data structures to problem solutions.


2. To demonstrate performance of algorithms with respect to time and space complexity.
3. To illustrate Iterative algorithms and Divide and Conquer Algorithm
4. To know the concepts of Greedy method and Dynamic programming.
5. To Illustrate the methods of Backtracking and Branch & bound techniques.

UNIT I INTRODUCTION TO NON-LINEAR DATA STRUCTURES – TREES 9

Tree ADT – tree traversals – Binary Tree ADT – expression trees – applications of trees – binary
search tree ADT –Threaded Binary Trees- AVL Trees – B-Tree – B+ Tree – Heap – Applications of
heap.

UNIT II GRAPHS AND HASHING TECHNIQUES 9

Definition – Representation of Graph – Types of graphs – Breadth-first traversal – Depth-first


traversal – Topological Sort – Bi-connectivity – Cut vertex – Euler circuits – Applications of graphs.

Hashing- Hash Functions – Separate Chaining – Open Addressing – Rehashing – Extendible Hashing.

UNIT III FOUNDATION OF ALGORITHM ANALYSIS 9

Complexity Notations - Big-O, Big-Omega, Big-Theta and others, Complexity Analysis techniques -

Basic Algorithms- Algorithm for GCD, Fibonacci Number and analysis of their time and space
complexity, Searching Algorithms- Sequential Search and its analysis, Sorting Algorithms- Bubble
Sort, Selection Sort, and their Analysis

Divide and Conquer – Binary Search, Min-Max Finding and their Analysis, Sorting Algorithms- Merge
Sort and Analysis, Quick Sort and Analysis, Randomized Quick sort and its Analysis.

UNIT IV DYNAMIC PROGRAMMING & GREEDY ALGORITHM 9


Introduction, The Principle of Optimality, Problem Solving using Dynamic Programming – Knapsack
problem, All Points Shortest path, Matrix chain multiplication.

General Characteristics of greedy algorithms, Problem solving using Greedy Algorithm - Activity
selection problem, Knapsack Problem, Minimum Spanning trees - Kruskal’s algorithm, Prim’s
algorithm.

UNIT V BACKTRACKING & BRANCH AND BOUND ALGORITHM 9

Backtracking Algorithm – n-Queen’s Problem – Hamiltonian Circuit problem – Subset-Sum problem.


Branch and bound Algorithm – Assignment problem – Knapsack problem – Traveling salesman
problem.

45 PERIODS
PRACTICAL EXERCISES: 30 PERIODS

For the laboratory work, students should implement the following algorithms in C/ C++/python and
perform their analysis for time and space complexity.

1. Implementation of Tree traversal


2. Implementation of Binary Tree and operations
3. Implementation of Tree traversal
4. Basic iterative algorithms GCD algorithm, Fibonacci Sequences, Sequential and Binary Search.
5. Basic iterative sorting algorithms: Bubble Sort, selection Sort, Insertion Sort.
6. Binary Search with Divide and conquer approach.
7. Merge Sort, Heap sort, Quick Sort, Randomized Quick Sort.
8. Selection Problem with divide and Conquer approach
9. Fractional Knapsack Problem, Job sequencing with deadline, Kruskal’s algorithm, Prims
algorithm, Dijkstra’s Algorithm
10. Implement the dynamic programming algorithms.
11. Algorithms using Backtracking approach.
Design based Problems (DP)/Open Ended Problem:

1. From the given string find maximum size possible palindrome sequence
2. Explore the application of Knapsack in human resource selection and courier loading system
using dynamic programming and greedy algorithm
3. BRTS route design, considering traffic, traffic on road, and benefits

COURSE OUTCOMES:

At the end of this course, the students will be able to:

1. CO1: Identify various Time and Space complexities of various algorithms


2. CO2: Understand Iterative /Divide and Conquer Algorithm to solve various problems.
3. CO3: Apply Dynamic Programming / Greedy concept to solve various problems.
4. CO4: Apply Backtracking, Branch and Bound concept to solve various problems.
5. CO5: Understand the approximation /randomized algorithm to solve various problems

TOTAL:75 PERIODS
REFERENCES:

1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein, “Introduction to
algorithms”, Third Edition.. The MIT Press, 2009.
2. Ellis Horowitz, SartajSahni, SanguthevarRajasekiaran, “Computer Algorithms”, Second Edition,
Silicon Press, 2007.
3. Kleinberg, Jon, and Eva Tardos, “Algorithm Design”, Addison-Wesley, First Edition, 2005
4. R. C. T. Lee, S. S. Tseng, R.C. Chang and T. Tsai (2006), Introduction to Design and Analysis
5. of Algorithms A strategic approach, McGraw Hill, India.
6. Allen Weiss (2009), Data structures and Algorithm Analysis in C++, 2nd edition, Pearson
Education, New Delhi.
Course Code INTRODUCTION TO ARTIFICIAL INTELLIGENCE AND MACHINE L T P C
CS2402 LEARNING 3 1 0 4

COURSE OBJECTIVES:

The main objectives of this course are to:

1. Study about uninformed and Heuristic search techniques.


2. Learn Knowledge Representation and reasoning under uncertainty
3. Introduce Machine Learning and supervised learning algorithms
4. Study about ensembling and unsupervised learning algorithms
5. Learn the basics of deep learning using neural networks

UNIT I PROBLEM SOLVING 9

Introduction to AI - AI Applications - Problem solving agents – search algorithms – uninformed


search strategies – Heuristic search strategies – Local search and optimization problems –
adversarial search – constraint satisfaction problems (CSP).

UNIT II KNOWLEDGE REPRESENTATION 9

Knowledge, reasoning, and planning. Logical Agents, Knowledge-Based Agents, Propositional Logic: A
Very Simple Logic Propositional Theorem Proving, Effective Propositional Model Checking, Agents
Based on Propositional Logic, First-Order Logic, Representation Revisited, Syntax and Semantics of
First-Order Logic, Using First-Order Logic, Knowledge Engineering in First-Order Logic.
PROBABILISTIC REASONING: Acting under uncertainty – Bayesian inference – naïve bayes models.
Probabilistic reasoning, Bayesian networks – exact inference in BN – approximate inference in BN –
causal networks

UNIT III SUPERVISED LEARNING 9

Introduction- Machine Learning, Designing a Learning Model – Examples of Machine Learning


Applications- Supervised Learning, Learning a Class from Examples, Vapnik-Chervonenkis (VC)
Dimension, PAC Learning, Noise Learning Multiple Classes, Regression , Model Selection and
Generalization, Dimensions of a Supervised Machine Learning Algorithm– Linear Regression Models:
Least squares, single & multiple variables, Bayesian linear regression, gradient descent, Linear
Classification Models: Discriminant function – Probabilistic discriminative model - Logistic regression,
Probabilistic generative model – Naive Bayes, Maximum margin classifier – Support vector machine,
Decision Tree, Random forests.

UNIT IV ENSEMBLE TECHNIQUES AND UNSUPERVISED LEARNING 9

Combining multiple learners: Model combination schemes, Voting, Ensemble Learning - bagging,
boosting, stacking, Unsupervised learning: K-means, Instance Based Learning: KNN, Gaussian mixture
models and Expectation maximization. k-Nearest Neighbour Estimator, Generalization to
Multivariate Data, Nonparametric Classification, Condensed Nearest Neighbour. Multiple Classes,
Discrimination by Regression, Support Vector Machines, Optimal Separating Hyperplane, The Non-
separable Case: Soft Margin Hyperplane, Kernel Functions, Support Vector Machines for Regression.

UNIT V NEURAL NETWORKS 9


Perceptron - Multilayer perceptron, activation functions, network training – gradient descent
optimization – stochastic gradient descent, error backpropagation, from shallow networks to deep
networks –Unit saturation (aka the vanishing gradient problem) – ReLU, hyperparameter tuning,
batch normalization, regularization, dropout.

45 PERIODS

PRACTICAL EXERCISES: 30 PERIODS

1. Implementation of Uninformed search algorithms (BFS, DFS)


2. Implementation of Informed search algorithms (A*, memory-bounded A*)
3. Implement naïve Bayes models
4. Implement Bayesian Networks
5. Build Regression models
6. Build decision trees and random forests
7. Build SVM models
8. Implement ensembling techniques
9. Implement clustering algorithms
10. Implement EM for Bayesian networks
11. Build simple NN models
12. Build deep learning NN models
COURSE OUTCOMES:

At the end of this course, the students will be able to:

1. CO1: Use appropriate search algorithms for problem solving


2. CO2: Knowledge representation and apply reasoning under uncertainty
3. CO3: Build supervised learning models
4. CO4: Build ensembling and unsupervised models
5. CO5: Build deep learning neural network models

TOTAL:75 PERIODS
TEXT BOOKS:
1. Stuart Russell and Peter Norvig, “Artificial Intelligence – A Modern Approach”, Fourth Edition,
Pearson Education, 2021.
2. Ethem Alpaydin, “Introduction to Machine Learning”, MIT Press, Fourth Edition, 2020.
REFERENCES:

1. Dan W. Patterson, “Introduction to Artificial Intelligence and Expert Systems”, Pearson


Education,2007
2. Kevin Night, Elaine Rich, and Nair B., “Artificial Intelligence”, McGraw Hill, 2008
3. Patrick H. Winston, "Artificial Intelligence", Third Edition, Pearson Education, 2006
4. Deepak Khemani, “Artificial Intelligence”, Tata McGraw Hill Education, 2013 (http://nptel.ac.in/)
5. Christopher M. Bishop, “Pattern Recognition and Machine Learning”, Springer, 2006.
6. Tom Mitchell, “Machine Learning”, McGraw Hill, 3rd Edition,1997.
7. Charu C. Aggarwal, “Data Classification Algorithms and Applications”, CRC Press, 2014
8. Mehryar Mohri, Afshin Rostamizadeh, Ameet Talwalkar, “Foundations of Machine Learning”,
MIT Press, 2012.
9. Ian Goodfellow, Yoshua Bengio, Aaron Courville, “Deep Learning”, MIT Press, 2016.
10. S Sridhar, M Vijayalakshmi, Machine Learning, First Edition, Oxford University Press.
Course Code L T P C
CS2403 COMPUTER NETWORKS
3 0 2 4

COURSE OBJECTIVES:
1. To understand the concept of layering in networks.
2. To know the functions of protocols of each layer of TCP/IP protocol suite.
3. To visualize the end-to-end flow of information.
4. To learn the functions of network layer and the various routing protocols
5. To familiarize the functions and protocols of the Transport layer

Unit 1: DATA COMMUNICATION COMPONENTS 9


Introduction: Data Communications, Networks, Network Types, Network Models: Protocol Layering,
TCP/IP Protocol Suite, OSI Model Introduction to Physical Layer: Data and signals Digital Transmission,
Bandwidth Utilization: Multiplexing and Spectrum Spreading. Switching: Introduction, Circuit Switched
Networks, Packet Switching

Unit 2: DATA LINK LAYER AND MEDIUM ACCESS CONTROL 10


Introduction to Data Link Layer. Error Detection and Correction: Introduction, Block Coding, Cyclic Codes,
Checksum Data Link Control: DLC Services, Data-Link Layer Protocols Media Access Control. Wired LANs:
Ethernet-Ethernet Protocol, Standard Ethernet: Characteristics, Addressing

Unit 3: NETWORK LAYER 9


Introduction To Network Layer: Network Layer Services, Packet Switching, Network Layer Performance,
IPV4 Addresses Network Layer Protocols: Internet Protocol, ICMPV4, Unicast Routing: Introduction,
Routing algorithms, Unicast routing protocols: Internet Structure, Routing Information Protocol (RIP) Next
Generation IP: IPV6 Addressing, IPV6 Protocol, Transition from IPV4 to IPV6

Unit 4: TRANSPORT LAYER 9


Introduction to Transport Layer. Transport Layer Protocols Transport Layer Protocols: Introduction, User
Datagram Protocol, Transmission Control Protocol.

Unit 5: APPLICATION LAYER 9


Domain Name Space (DNS), DDNS, TELNET, EMAIL, File Transfer Protocol (FTP), WWW, HTTP, SNMP,
Bluetooth, Firewalls, Basic concepts of Cryptography.
45 PERIODS
PRACTICAL EXERCISES: 30 PERIODS

1. Learn to use commands like tcpdump, netstat, ifconfig, nslookup and traceroute. Capture
pingand trace route PDUs using a network protocol analyzer and examine.
2. Write a HTTP web client program to download a web page using TCP sockets.
3. Applications using TCP sockets like: a) Echo client and echo server b) Chat
4. Simulation of DNS using UDP sockets.
5. Use a tool like Wireshark to capture packets and examine the packets
6. Write a code simulating ARP /RARP protocols.
7. Study of Network simulator (NS) and Simulation of Congestion Control Algorithms using NS.
8. Study of TCP/UDP performance using Simulation tool.
9. Simulation of Distance Vector/ Link State Routing algorithm.
10. Simulation of an error correction code (like CRC)

Course Outcomes: The student will be able to:

1. CO1 - Apply the fundamentals of communication in networking aspects


2. CO2 - Analyze the various protocols in Physical, Data link, Network, Transport and Application layers
and their mechanisms.
3. CO3 - Design functional aspects for network applications.
4. CO4 - Develop programs that demonstrate the operations of physical, Data Link, Network, Transport
layers.
5. CO4 - Develop programs that demonstrate the operations Application layers.

TEXT BOOKS

1. Data Communication and Networking, 4th Edition, Behrouz A. Forouzan, McGrawHill.


2. Data and Computer Communication, 8th Edition, William Stallings, Pearson Prentice Hall India.
3. Computer Networks – A Systems Approach, 4th Edition, Larry L. Peterson and Bruce S. Davie, Elsevier

Reference Books:

1. Computer Networks, 8th Edition, Andrew S. Tanenbaum, Pearson New International Edition. Course
Code: BTCS 504-18 Course Title: Computer Networks 3L:1T:0P 3Credits 42 Hours
2. Internetworking with TCP/IP, Volume 1, 6th Edition Douglas Comer, Prentice Hall of India.
3. TCP/IP Illustrated, Volume 1, W. Richard Stevens, Addison-Wesley, United States of America.

E-Book

1. An Introduction to Computer Networks Peter L Dordal First - 2020 http://intronetworks.cs.luc.edu


/current/ComputerNetworks
Course Code L T P C
WEB FRAMEWORKS
CS2404 3 0 2 4

Course Objectives:
1. To build scalable web applications using Angular
2. To import and export functionalities of modules using Angular
3. To create reusable UI components using React
4. To manage state of the application more efficiently using React Hook
5. To containerize the applications using Docker ad Kubernetes

UNIT I – ANGULAR V 12 9

Introduction to Angular – Typescript (Arrays, Functions, classes) – JS vs TS – Angular CLI Installation –


Components – Data Binding – Routing on Angular - Directives

UNIT II – ANGULAR MODULES AND MATERIAL 9

Angular Modules – HTTP client, Forms Module – Angular Service Files – Dependancy Injection –
Angular Material – Connecting Angular with Back End

UNIT III – REACT V 18 9

Introduction to React – Setting development environment – create app – JSX syntax – properties and
states – components – React routing – API request

UNIT IV – REACT HOOKS 9

React Hooks – useState – useEffect – useCallback – useMemo – useContext – useReducer –


Introduction to React Native

UNIT V – CONTAINERIZATION 9

Introduction to Image and Container – Docker – Containers – Docker Images, Docker file, Docker
Network – Docker Compose - Kubernetes

45 PERIODS

PRACTICAL EXERCISES: 30 PERIODS

1. Project – Create an angular app with n components and add routing


2. Project – Add functionalities, validation and database with above components
3. Project – Create Login System using React
4. Project – Create Flight Management system

COURSE OUTCOMES:

Upon completion of the course, students will be able to:

1. CO1: Build scalable web applications using Angular


2. CO2: Import and export functionalities of modules using Angular
3. CO3: Create reusable UI components using React
4. CO4: Manage state of the application more efficiently using React Hook
5. CO5: Containerize the applications using Docker ad Kubernetes

TEXT BOOKS:

1. Nate Murray, Felipe Coury, Ari Lerner, Carlos Taborda, “ The Ng book — The Complete Book
on Angular”
2. The Road to React, Robin Wieruch,2023.
3. The Docker Book: Containerization is the new virtualization, James Turnbull, 2014.
4. The Kubernetes Book, Nigel Poulton, 2023.

ONLINE RESOURCES:

1. https://angular.io/docs
2. https://react.dev/
3. https://react.dev/reference/react
4. https://docs.docker.com/
5. https://kubernetes.io/docs/home/
Course Code L T P C
SOFTWARE ENGINEERING
CS2405 3 0 2 4

COURSE OBJECTIVES:

1. To understand Software Engineering Lifecycle Models


2. To Perform software requirements analysis
3. To gain knowledge of the System Analysis and Design concepts using UML.
4. To understand software testing and maintenance approaches
5. To work on project management scheduling using DevOps

UNIT I SOFTWARE PROCESS AND AGILE DEVELOPMENT 9


Introduction to Software Engineering, Software Process, Perspective and Specialized Process Models –
Introduction to Agility-Agile process-Extreme programming-XP Process-Case Study.

UNIT II REQUIREMENTS ANALYSIS AND SPECIFICATION 9


Requirement analysis and specification – Requirements gathering and analysis – Functional and Non
Functional requirements – Software Requirement Specification – Formal system specification – Finite State
Machines – Petrinets – Object modelling using UML – Use case Model – Class diagrams – Interaction
diagrams – Activity diagrams – Functional modelling – Data Flow Diagram- CASE TOOLS.

UNIT III SOFTWARE DESIGN 9


Software design – Design process – Design concepts – Coupling – Cohesion – Functional independence –
Design patterns – Model-view-controller – Publish-subscribe – Adapter – Command
– Strategy – Observer – Proxy – Facade – Architectural styles – Layered - Client Server - Tiered - Pipe and
filter- User interface design-Case Study.

UNIT IV SOFTWARE TESTING AND MAINTENANCE 9


Testing – Unit testing – Black box testing– White box testing – Integration and System testing– Regression
testing – Debugging - Program analysis – Symbolic execution – Model Checking-Case Study – Release
Management

UNIT V PROJECT MANAGEMENT 9


Software Project Management- Software Configuration Management - Project Scheduling- DevOps:
Motivation-Cloud as a platform-Operations- Deployment Pipeline: Overall Architecture Building and
Testing-Deployment- Tools- Case Study

COURSE OUTCOMES:

1. CO1: Compare various Software Development Lifecycle Models


2. CO2: Evaluate project management approaches as well as cost and schedule estimation
strategies.
3. CO3: Perform formal analysis on specifications.
4. CO4: Use UML diagrams for analysis and design.
5. CO5: Architect and design using architectural styles and design patterns, and test the system
45 PERIODS
PRACTICAL EXERCISES: 30 PERIODS
1. Identify a software system that needs to be developed.
2. Document the Software Requirements Specification (SRS) for the identified system.
3. Identify use cases and develop the Use Case model.
4. Identify the conceptual classes and develop a Domain Model and also derive a ClassDiagram
from that.
5. Using the identified scenarios, find the interaction between objects and represent them
usingUML Sequence and Collaboration Diagrams
6. Draw relevant State Chart and Activity Diagrams for the same system.
7. Implement the system as per the detailed design
8. Test the software system for all the scenarios identified as per the use case diagram
9. Improve the reusability and maintainability of the software system by applying appropriatedesign
patterns.
10. Implement the modified system and test it for various scenarios.

SUGGESTED DOMAINS FOR MINI-PROJECT:


1. Passport automation system.
2. Book bank
3. Exam registration
4. Stock maintenance system.
5. Online course reservation system
6. Airline/Railway reservation system
7. Software personnel management system
8. Credit card processing
9. e-book management system
10. Recruitment system
11. Foreign trading system
12. Conference management system
13. BPO management system
14. Library management system TOTAL:75 PERIODS
15. Student information system
TEXT BOOKS
1. Bernd Bruegge and Allen H. Dutoit, “Object-Oriented Software Engineering: Using UML,Patterns
and Java”, Third Edition, Pearson Education, 2009.
2. Roger S. Pressman, Object-Oriented Software Engineering: An Agile Unified Methodology,First
Edition, Mc Graw-Hill International Edition, 2014.

REFERENCES
1. Carlo Ghezzi, Mehdi Jazayeri, Dino Mandrioli, Fundamentals of Software Engineering, 2ndedition,
PHI Learning Pvt. Ltd., 2010.
2. Craig Larman, Applying UML and Patterns, 3rd ed, Pearson Education, 2005.
3. Len Bass, Ingo Weber and Liming Zhu, “DevOps: A Software Architect‘s Perspective”,Pearson
Education, 2016
4. Rajib Mall, Fundamentals of Software Engineering, 3rd edition, PHI Learning Pvt. Ltd., 2009.
5. Stephen Schach, Object-Oriented and Classical Software Engineering, 8th ed, McGraw-Hil
Course Code L T P C
Employability Enhancement Skills - IV
ES2401 0 0 2 1

COURSE OBJECTIVES:

The main objectives of this course are to:


1. To give the exposure to solve the real time problems related to company test questions.
2. To train the students to provide solutions for the assigned tasks.

PRACTICAL EXERCISES: 30 PERIODS


Questions from top notch industries – Programming, Quantitative Aptitude – Verbal Ability –
Numerical Ability – Reasoning Ability – Mock Test.

COURSE OUTCOMES:
At the end of this course, the students will be able to:
1. CO1: To solve the real time programming problems related to company test questions.
2. CO2: To solve Quantitative Aptitude – Verbal Ability – Numerical Ability – Reasoning Ability
Questions.

You might also like