Mu Sybsc CS Syllabus 2022
Mu Sybsc CS Syllabus 2022
Syllabus for
Program: Bachelor of Science
Course: Computer Science
The revised and restructured curriculum for the Three-year integrated course is systematically designed
considering the current industry needs in terms of skills sets demanded under new technological
environment. It also endeavors to align the programme structure and course curriculum with student
aspirations and corporate expectations. The proposed curriculum is more contextual, industry affable and
suitable to cater the needs of society and nation in present day context.
The Core Subjects offers to develop strong theoretical foundations in Computer Science to build
computational thinking, analytical, and problem solving skills. Principles of Operating Systems course
provides an overview of computer operating systems, their functionalities, processes, and computing
resource management. Linear Algebra course covers concepts crucial to many areas of computer science,
such as graphics, image processing, cryptography, machine learning, computer vision, optimization, graph
algorithms, quantum computation, computational biology, information retrieval and web search. Data
Structures course provides an understanding of different types of data structures and how to use them per
the requirements of a given application. Advanced Database Concepts course touches the touches security,
recovery, and transaction aspects of database. Theory of Computation course helps to develop capabilities
to design and develop formulations for computing models and identify its applications in diverse areas.
Computer Networks course include topics such as application layer protocols, Internet protocols, network
interfaces, local and wide area networks, wireless networks, bridging and routing, among other current
topics. Software Engineering course embodies an engineering approach to the development of software. It
discusses the nature of software and software projects, software development models, software process
maturity, project planning, management, and estimations along with topics on software testing and quality
assurance. The course on IoT Technologies will definitely open future area as Embedded Engineer,
involvement in IoT projects, Robotics and many more.
Skill Enhancement courses such as Java based Application Development, Web Technologies, Android
Application Development and Advanced Application Development cater to present day needs of web and
mobile based platforms and applications. These courses aims to produce skilled graduates with a creative
mind-set who can recognize a computational problem either in IT industry or society, and develop effective
solutions.
The General Elective courses offers the students the option to explore disciplines of interest beyond the
choices they make in Core and Discipline Specific Elective papers. The course on Creative Content Writing
prepare students to comprehend, refine, and enhance their writing abilities and enter the industry with
enhanced skill and substantial competence. The course on Green Technologies emphasizes the use of
principles and practices of green services and regulatory standards for addressing the carbon issues and
related concerns. The Research Methodology instills basic research skills for students who wish to pursue
a research or an academic career. Management & Entrepreneurship course aims to focus on giving students
the business management and innovation skills required to succeed in a startup.
We sincerely believe that any student taking this programme will get very strong foundation and exposure
to basics, advanced and emerging trends of the subject.
We wholeheartedly thank all experts who shared their valuable feedbacks and suggestions in order to
improvise the contents, we have sincerely attempted to incorporate each of them. We further thank
Chairperson and members of Board of Studies for their confidence in us.
Special thanks to University Department of Computer Science and colleagues from various colleges, who
volunteered or have indirectly helped designing certain specialized courses and the syllabus as a whole.
Page 2 of 51
S.Y.B.Sc. Computer Science Syllabus
Choice Based Credit System (CBCS)
with effect from
Semester – III
Course
Course Type Course Title Credits Lectures/Week
Code
USCS301 Core Subject Principles of Operating Systems 2 3
Core Subject Principles of Operating Systems –
USCSP301 1 3
Practical Practical
USCS302 Core Subject Linear Algebra 2 3
Core Subject
USCSP302 Linear Algebra – Practical 1 3
Practical
USCS303 Core Subject Data Structures 2 3
Core Subject
USCSP303 Data Structures – Practical 1 3
Practical
USCS304 Core Subject Advanced Database Concepts 2 3
Core Subject Advanced Database Concepts –
USCSP304 1 3
Practical Practical
Skill Enhancement
USCS305 Java based Application Development 2 3
Course (SEC)
Skill Enhancement
Java based Application Development –
USCSP305 Course (SEC) 1 3
Practical
Practical
Skill Enhancement
USCS306 Web Technologies 2 3
Course (SEC)
Skill Enhancement
USCSP306 Course (SEC) Web Technologies – Practical 1 3
Practical
USCS3071 Generic Elective Creative Content Writing 2 3
Page 3 of 51
S.Y.B.Sc. Computer Science Syllabus
Choice Based Credit System (CBCS)
with effect from
Semester – IV
Course
Course Type Course Title Credits Lectures/Week
Code
USCS401 Core Subject Theory of Computation 2 3
Core Subject
USCSP401 Theory of Computation – Practical 1 3
Practical
USCS402 Core Subject Computer Networks 2 3
Core Subject
USCSP402 Computer Networks – Practical 1 3
Practical
USCS403 Core Subject Software Engineering 2 3
Core Subject
USCSP403 Software Engineering – Practical 1 3
Practical
USCS404 Core Subject IoT Technologies 2 3
Core Subject
USCSP404 IoT Technologies – Practical 1 3
Practical
Skill Enhancement
USCS405 Android Application Development 2 3
Course (SEC)
Skill Enhancement
Android Application Development –
USCSP405 Course (SEC) 1 3
Practical
Practical
Skill Enhancement
USCS406 Advanced Application Development 2 3
Course (SEC)
Skill Enhancement
Advanced Application Development –
USCSP406 Course (SEC) 1 3
Practical
Practical
USCS4071 Generic Elective* Research Methodology 2 3
Page 4 of 51
Semester III
Lectures
Course Code Course Title Credits
/Week
About the Course: The purpose of this course is to provide an overview of computer operating systems,
their functionalities, processes, and computing resource management. In particular, the course will cover
processes and threads, mutual exclusion, CPU scheduling, deadlock, memory management, and file
systems.
Course Objectives:
To learn basic concepts and structure of operating systems
To learn about process and synchronization in operating system level
To learn CPU scheduling algorithms
To learn Memory and File system management
Learning Outcomes:
After successful completion of this course, students would be able to
Work with any type of operating system
Handle threads, processes, process synchronization
Implement CPU scheduling algorithms
Understand the background role of memory management
Design file system.
Topics No of
Unit
Lectures
Introduction to Operating-Systems: Definition of Operating System,
Operating System's role, Operating-System Operations, Functions of
Operating System, Computing Environments
Page 5 of 51
CPU Scheduling: Basic Concepts, Scheduling Criteria, Scheduling
Algorithms (FCFS, SJF, SRTF, Priority, RR, Multilevel Queue Scheduling,
Multilevel Feedback Queue Scheduling), Thread Scheduling
Textbook(s):
1. Abraham Silberschatz, Peter Galvin, Greg Gagne, Operating System Concepts, Wiley, 2021
Additional Reference(s):
1. Achyut S. Godbole, Atul Kahate, Operating Systems, Tata McGraw Hill, 2017
2. Naresh Chauhan, Principles of Operating Systems, Oxford Press, 2014
3. Andrew S Tanenbaum, Herbert Bos, Modern Operating Systems, 4e Fourth Edition, Pearson
Education, 2016
Page 6 of 51
Lectures
Course Code Course Title Credits
/Week
Process Communication:
a. Write a program to give a solution to the producer–consumer problem using
1 shared memory.
b. Write a program to give a solution to the producer–consumer problem using
message passing.
Threads:
a. Write a program to work with a single thread.
b. Write a program to work with multi threads.
2
c. The Fibonacci sequence is the series of numbers 0, 1, 1, 2, 3, 5. 8, ... Formally,
it can be expressed as: fib0 = 0, fib1 = 1, fibn = fibn-1 + fibn-2. Write a
multithreaded program that generates the Fibonacci sequence.
Synchronization:
3 a. Write a program to give a solution to the Bounded buffer problem.
b. Write a program to give a solution to the readers–writers problem.
Page 7 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To offer the learner the relevant Linear Algebra concepts through Computer Science applications.
To interpret existence and analyze the solution set of a system of linear equations.
To formulate, solve, apply, and interpret properties of linear systems.
To learn about the concept of linear independence of vectors over a field, and the dimension of a
vector space.
To interpret basic concepts of linear transformations, dimension, matrix representation of a linear
transformation, and the change of coordinate matrix.
Learning Outcomes:
After successful completion of this course, students would be able to
Appreciate the relevance and applications of Linear Algebra in the field of Computer Science.
Understand the concepts through program implementation.
Instill a computational thinking while learning linear algebra.
Express clear understanding of the concept of a solution to a system of equations.
Find eigenvalues and corresponding eigenvectors for a square matrix.
Topics No of
Unit
Lectures
Page 8 of 51
Basis: Coordinate systems, two greedy algorithms for finding a set of
generators, Linear dependence, Basis, Unique representation, Change of
basis, first look, Computational problems involving finding a basis
Inner Product: The inner product for vectors over the reals, Orthogonality.
Textbooks:
1. Coding the Matrix Linear Algebra through Applications to Computer Science, First Edition,
Philip N. Klein, Newtonian Press 2013
2. Schaum's Outline of Linear Algebra, Sixth Edition by Seymour Lipschutz, Marc Lipson,
McGraw Hill 2017
Additional References:
1. Linear Algebra and Probability for Computer Science Applications, First Edition, Ernest Davis,
A K Peters/CRC Press, 2012.
2. Linear Algebra and Its Applications, Gilbert Strang, Cengage Learning, 4th Edition, 2007
3. Linear Algebra and Its Applications, David C Lay, Pearson Education India; 3rd Edition, 2002
4. Introduction to Information Retrieval, Christopher D. Manning, Prabhakar Raghavan and Hinrich
Schütze, Cambridge University Press, 2008.
5. Computer Networking With Internet Protocols and Technology, William Stallings, Pearson
Education India, 2013.
Page 9 of 51
Lectures
Course Code Course Title Credits
/Week
Vector Applications:
3
Classify given data using support vector machines (SVM)
Write a program to convert a matrix into its row echelon form. (Order 2).
5
Write a program to find rank of a matrix.
Page 10 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
● To introduce data abstraction and data representation in memory
● To describe, design and use of elementary data structures such as stack, queue, linked list, tree
and graph
● How and why different data structures are used for different types of problems.
Learning Outcomes:
After successful completion of this course, students would be able to-
● Create different types of data structures.
● Understand which data structure to be used based on the type of the problem.
● Apply combined knowledge of algorithms and data structures to write highly effective
programs in various domains.
Topics No of
Unit
Lectures
Abstract Data Type: Different Data Types, different types of data structures
& their classifications, Introduction to ADT, Creating user-specific ADT
Trees: ADT for Tree Structure. Advantages & disadvantages, Binary Tree-
II
Properties, Implementation and Traversals, Binary Search Tree, Balanced
BST, Threaded Binary Trees, AVL Trees, Applications of Tree like Huffman
Coding,
Page 11 of 51
Priority Queues & Heaps: Priority Queue, Priority Queue ADT,
Advantages and Disadvantages, Applications, Heaps, types of heaps,
Heapifying the element,
Textbooks:
1. Introduction to Algorithm, Thomas H Cormen, PHI
2. Data Structures And Algorithms Made Easy, Narasimha Karumanchi, 2021
Additional References:
1. Fundamentals of Computer Algorithms, Sartaj Sahni and Sanguthevar Rajasekaran Ellis
Horowitz, Universities Press, 2018
2. Data Structures and Algorithms in Python, Michael T. Goodrich, Roberto Tamassia, Michael H.
Goldwasser, Wiley, 2016
Page 12 of 51
Lectures
Course Code Course Title Credits
/Week
Write a program to implement Singly Linked list with insertion, deletion, traversal
2
operations
Write a program to implement Doubly Linked list with insertion, deletion, traversal
3
operations
7 Write a program to implement Binary Tree with insertion, deletion, traversal operations
Write a program to create basic Hash Table for insertion, deletion, traversal
11
operations(assume that there are no collisions)
12 Write a program to create hash table to handle collisions using overflow chaining
Page 13 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To develop understanding of concepts and techniques for data management and learn
about widely used systems for implementation and usage.
To develop understanding of Transaction management and crash recovery.
To develop concepts of programming concepts of database.
Learning Outcomes:
After successful completion of this course, students would be able to
Master concepts of stored procedure, functions, cursors and triggers and its use.
Learn about using PL/SQL for data management.
Use efficiently Collections and records.
Understand concepts and implementations of transaction management and crash
recovery.
Topics No of
Unit
Lectures
Overview of PL/SQL: Advantages of PL/SQL, Main Features of PL/SQL,
Architecture of PL/SQL
Page 14 of 51
Comparisons, Collection Methods, Collection Types Defined in Package
Specifications, Record Variables, Assigning Values to Record Variables.
Static and Dynamic SQL: Static SQL: Description of Static SQL, Cursors
Overview, Processing Query Result Sets, Cursor Variables, CURSOR
Expressions, Transaction Processing and Control, Autonomous
Transactions. Dynamic SQL: Native Dynamic SQL, DBMS_SQL Package,
SQL Injection.
Textbooks:
1. Mastering PL/SQL Through Illustrations: From Learning Fundamentals to Developing Efficient
PL/SQL Blocks, Dr. B. Chandra, BPB Publication, 2020
2. Oracle Pl/Sql Training Guide., Training guide, BPB Publications, 2016
3. Raghu Ramakrishnam, Gehrke, Database Management Systems, McGraw‐Hill,3rd Edition, 2014
4. Abraham Silberschatz, Henry F. Korth,S. Sudarshan , Database System Concepts, 6th Edition
2019
Additional References:
1. Ivan Bayross, “SQL, PL/SQL -The Programming language of Oracle”, B.P.B. Publications 2009
2. Ramez Elmasri & Shamkant B.Navathe, Fundamentals of Database Systems, Pearson Education,
2008
Page 15 of 51
Lectures
Course Code Course Title Credits
/Week
Sequences:
a. Creating simple Sequences with clauses like START WITH, INCREMENT BY,
2 MAXVALUE, MINVALUE, CYCLE | NOCYCLE, CACHE | NOCACHE,
ORDER | NOORECER.
b. Creating and using Sequences for tables.
Writing PL/SQL Blocks with basic programming constructs for following Iterative
Structure:
4
a. While-loop Statements
b. For-loop Statements.
Page 16 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To provide insight into java based applications using OOP concepts.
To provide understanding of developing GUI based desktop applications in java.
To provide knowledge of web based applications through servlet and jsp.
To provide understanding and implementation of basic JSON
Learning Outcomes:
After successful completion of this course, students would be able to
Design basic application in java using Graphical User Interface.
The learner will be able to develop applications using swings
The learner will be able to develop web based applications using servlet and jsp
The learner will be able to connect databases with java through
The learner will be able to perform programs using JSON objects
Topics No of
Unit
Lectures
Introduction: History, Features of Java, Java Development Kit, Java
Application Programming Interface, Java Virtual Machine Java Program
Structure, Java Tokens.
Page 17 of 51
Introduction to JFC and Swing- Features of the Java Foundation Classes,
Swing API Components, JComponent Class, Windows, Dialog Boxes, and
Panels, Labels, Buttons, Check Boxes, Menus, Toolbars, Implementing
Action interface, Pane, JScrollPane, Desktop pane, Scrollbars, Lists and
Combo Boxes, Text-Entry Components, Colors and File Choosers, Tables
and Trees, Printing with 2D API and Java Print Service API.
Textbooks:
1. Herbert Schildt, Java The Complete Reference, Eleventh Edition, McGraw-Hill Education, 2020
2. Bryan Basham, Kathy Sierra, Bert Bates, Head First Servlets and JSP, O’reilly (SPD), 2018
3. Cay S. Horstmann, Gary Cornell, Core Java™ 2: Volume II–Advanced Features Prentice Hall
PTR, 2004
4. Ivan Bayross, Web Enabled Commercial Applications Development Using Java 2, BPB
Publications
5. Java XML and JSON: Document Processing for Java SE by Jeff Friesen January 2019, Apress
Additional References:
1. E. Balagurusamy, Programming with Java- A Primer, Tata McGraw-Hill Education India, 2014
2. Programming in JAVA, 2nd Ed, Sachin Malhotra & Saurabh Choudhary, Oxford Press, 2018
3. Joe Wigglesworth and Paula McMillan, Java Programming: Advanced Topics, Thomson Course
Technology (SPD)
4. Eric Jendrock, Jennifer Ball, D Carson and others, The Java EE 5 Tutorial, Pearson Education
5. The Java Tutorials: http://docs.oracle.com/javase/tutorial/
6. Java Parsing Collection XML JSON: Map List XML JSON Transform by Yang Hu, 2019
Page 18 of 51
Lectures
Course Code Course Title Credits
/Week
3 Write a program to define user defined exceptions and raise them as per the requirements
Write a program using various swing components design Java application to accept a
5
student's resume. (Design form)
a. Write a Servlet that accepts a User Name from a HTML form and stores it as a
cookie. Write another Servlet that returns the value of this cookie and displays
it.
b. Write a Servlet that displays the names and values of the cookie stored on the
8
client.
c. Write a Servlet that accepts a User Name from a HTML form and stores it as a
session variable. Write another Servlet that returns the value of this session
variable and displays it.
a. Write a registration Servlet that accepts the data for a given table and stores it in
9 the database.
b. Write a Servlet that displays all the records of a table.
a. Write a JSP that accepts a User Name from a HTML form and stores it as a
cookie. Write another JSP that returns the value of this cookie and displays it.
b. Write a JSP that displays the names and values of the cookie stored on the client.
10
c. Write a JSP that accepts a User Name from a HTML form and stores it as a
session variable. Write another JSP that returns the value of this session variable
and displays it.
Page 19 of 51
a. Write a JSP code that accepts username and password from HTML file and
validates the user from the database
11 b. Write a registration JSP that accept the data for a given table and stores it in the
database.
c. Write a JSP that displays all the records of a table
Page 20 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To understand the concepts of Hyper Text Markup Language and Cascading Style Sheets.
To learn JavaScript for creating dynamic websites.
To learn various operations performed on data among web applications using XML
To learn Server-Side Programming using PHP
Learning Outcomes:
After successful completion of this course, students would be able to
Design valid, well-formed, scalable, and meaningful pages using emerging technologies.
Understand the various platforms, devices, display resolutions, viewports, and browsers that
render websites
Develop and implement client-side and server-side scripting language programs.
Develop and implement Database Driven Websites.
Design and apply XML to create a markup language for data and document centric applications.
Topics No of
Unit
Lectures
HTML5: Fundamental Elements of HTML, Formatting Text in HTML,
Organizing Text in HTML, Links and URLs in HTML, Tables in HTML,
Images on a Web Page, Image Formats, Image Maps, Colors, FORMs in
HTML, Interactive Elements, Working with Multimedia - Audio and Video
File Formats, HTML elements for inserting Audio / Video on a web page
I 15
CSS: Understanding the Syntax of CSS, CSS Selectors, Inserting CSS in an
HTML Document, CSS properties to work with background of a Page, CSS
properties to work with Fonts and Text Styles, CSS properties for positioning
an element.
Page 21 of 51
XSLT: XSLT Elements and Attributes - xsl:template, xsl:apply-templates,
xsl:import, xsl:call-template, xsl:include, xsl:element, xsl:attribute,
xsl:attribute-set, xsl:value-of
PHP: Variables and Operators, Program Flow, Arrays, working with Files
III and Directories, working with Databases, Working with Cookies, Sessions 15
and Headers
Textbooks:
1. HTML 5 Black Book, Covers CSS 3, JavaScript, XML, XHTML, AJAX, PHP and jQuery, 2ed,
Dreamtech Press, 2016
2. Web Programming and Interactive Technologies, scriptDemics, StarEdu Solutions India, 2018
3. PHP: A Beginners Guide, Vikram Vaswani, TMH
Additional References:
1. HTML, XHTML, and CSS Bible Fifth Edition, Steven M. Schafer, WILEY, 2011
2. Learning PHP, MySQL, JavaScript, CSS & HTML5, Robin Nixon, O’Reilly, 2018
3. PHP, MySQL, JavaScript & HTML5 All-in-one for Dummies, Steve Suehring, Janet Valade
Wiley, 2018
Page 22 of 51
Lectures
Course Code Course Title Credits
/Week
Create a XML file with Internal / External DTD and display it using
6 a. CSS
b. XSL
Page 23 of 51
a. Working with Databases (Storing Records / Reprieving Records and Display
them)
b. Storing and Retrieving Cookies
c. Storing and Retrieving Sessions
Page 24 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To introduce students to the concepts of content writing.
To connect them with various writing and editing styles and techniques.
To help them develop their creative abilities.
To improve the learners' employability
Learning Outcomes:
After successful completion of this course, students would be able to
Understand the fundamentals of content creation for Blog, Website etc.
Acquire the ability to write and edit in a variety of styles and procedures
To develop the creative abilities.
To acquire essential language skills for editors.
Topics No of
Unit
Lectures
Best Practices for Writing for the Web: Making our story Elegant,
I Professional, Write with an Attitude, Keep Verbs Active, List Items, Chunk 15
Information, Title and Subtitle, Organize for Your Audience.
Things Marketers Write: The Ideal Length for Blog Posts, Podcast,
Facebook Posts, Tweets, and Other Marketing Content.
Social Media Writing: Writing for Twitter, writing with Hashtags, Writing
Social Media with Humor, writing for Facebook, writing for LinkedIn,
Writing Your LinkedIn Profile, writing for Email, Writing Landing Pages,
Writing Headlines, writing a Home Page, Writing the About Us Page,
Writing Better Blog Posts, Writing Annual Reports.
II 15
Infographics: Visual Communication- What Are Infographics?, The
Science of Visualization, Creating Infographics- Purpose, The Art of
Observation, Processing Your Ideas, Designing Your Infographics,
Publishing Your Infographics.
Page 25 of 51
Content Tools: Research and Knowledge Management Tools, Writing
Tools, Productivity Tools, Editing Tools, A Few Great Style Guides, Non-
Text Writing Tools, Blog Idea Generators, Google Authorship, Image
Sources, Tools for Content Writing.
III 15
Ethical and Legal aspects of content writing: Learn Legal English, Learn
Legal Vocabulary In Legal Writing, IPR Laws, and Copywriting, Plagiarism
laws in Content Writing.
Textbooks:
1. Content Writing Handbook, Author:Kounal Gupta, 2020, Henry Harvin.
2. Feldar, Lynda. Writing for the Web: Creating Compelling Web Content Using Words, Pictures,
and Sound. New Riders, CA, USA, 2011
Additional References:
1. Everybody Writes: Your Go-To Guide to Creating Ridiculously Good Content Paperback Ann
Handley Pan Macmillan India 2016
2. The Power of Infographics: Using Pictures to Communicate and Connect With Your Audiences
Paperback – 15 June 2012 Mark Smiciklas
3. Law Relating to Intellectual Property Rights Book by V. K. Ahuja, 2017
Web Resources:
1. https://www.locationrebel.com/b2b-writing/
2. https://www.mindler.com/blog/how-to-become-a-content-writer-in-india/
3. https://study.com/articles/What_is_a_Content_Writer.html
4. https://www.mondaq.com/india/contracts-and-commercial-law/445620/legal-
contractsagreements-drafting-and-legal-vetting
5. https://www.crazyegg.com/blog/copywriting/
Page 26 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
Know about Green IT Fundamentals: Business, IT, and the Environment
Green IT Strategies and Significance of Green IT Strategies
Green Enterprise Architecture and Green Information Systems
Sociocultural Aspects of Green IT and Green Compliance
Learning Outcomes:
After successful completion of this course, students would be able to
Explain drivers and dimensions of change for Green Technology
Appreciate Virtualization; smart meters and optimization in achieving green IT
Gain knowledge about green assets, green processes, and green enterprise architecture
ISO 14001 and related standards for Audit for Green Compliance
Topics No of
Unit
Lectures
Page 27 of 51
Devices for Central Green Services, Devices and Organizational Boundaries
for Measurements, Mobile Devices, and Sustainability
Textbooks:
1. Green IT Strategies and Applications Using Environmental Intelligence, Bhuvan Unhelkar, CRC
Press, 2016
2. Green Information and Communication Systems for a Sustainable Future, Rajshree Srivastava,
Sandeep Kautish, Rajeev Tiwari. CRC Press, 2020
Additional References:
1. Emerging Green Technologies, Matthew N. O. Sadiku, Taylor and Francis (CRC Press), 2022
2. Sustainability Awareness and Green Information Technologies, Tomayess Issa, Springer, 2021
3. Environmental Sustainability Role of Green Technologies, P. Thangavel, and G. Sridevi,
Springer, 2016
Page 28 of 51
Semester IV
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To give an overview of the theoretical foundations of computer science from the perspective
of formal languages
To illustrate finite state machines to solve problems in computing
To explain the hierarchy of problems arising in the computer sciences.
To familiarize Regular grammars, context frees grammar.
Learning Outcomes:
After successful completion of this course, students would be able to
Understand Grammar and Languages
Learn about Automata theory and its application in Language Design
Learn about Turing Machines and Pushdown Automata
Understand Linear Bound Automata and its applications
Topics No of
Unit
Lectures
Page 29 of 51
Linear Bound Automata: The Linear Bound Automata Model, Linear
Bound Automata and Languages.
Textbooks:
1. Theory of Computer Science, K. L. P Mishra, Chandrasekharan, PHI,3rd Edition 2019
2. Introduction to Computer Theory, Daniel Cohen, Wiley, 2nd Edition, 2007
3. Introductory Theory of Computer Science, E.V. Krishnamurthy, Affiliated East-West Press, 2009
Additional References:
1. Theory of Computation, Kavi Mahesh, Wiley India, 2018
2. Elements of The Theory of Computation, Lewis, Papadimitriou, PHI, 2015
3. Introduction to Languages and the Theory of Computation, John E Martin, McGraw-Hill
Education, 2010
4. Introduction to Theory of Computation, Michel Sipser, Thomson
5. Introduction to Automata Theory, Languages and Computation, John E. Hopcroft, Pearson
Education, 2014
Page 30 of 51
Lectures
Course Code Course Title Credits
/Week
Write a program for generating derivation sequence / language for the given sequence of
3
productions
4 Design a Program for creating machine that accepts three consecutive one.
5 Design a Program for creating machine that accepts the string always ending with 101.
Design a program for creating a machine which accepts string having equal no. of 1’s
7
and 0’s.
Design a program for creating a machine which count number of 1’s and 0’s in a given
8
string.
Design a PDA to accept WCWR where w is any string and WR is reverse of that string
9
and C is a Special symbol.
10 Design a Turing machine that’s accepts the following language an b n c n where n>0
Page 31 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To Understand Basic Concepts of Networking.
To Understand Working of Network Layer Architecture.
To Learn Practical Implementation of Basic Routing Algorithms.
To Learn Different Networking Protocols.
Learning Outcomes:
After successful completion of this course, students would be able to
Learn basic networking concepts and layered architecture.
Understand the concepts of networking, which are important for them to be known as a
‘networking professionals’.
Topics No of
Unit
Lectures
Introduction: Networking standards and Administrations, networks,
network types – LAN, MAN, WAN.
Introduction to Data Link Layer: Link layer addressing, Data Link Layer
Design Issues.
II 15
Error detection and correction: -Block coding, cyclic codes, checksum,
forward error correction, error correcting codes, error detecting codes.
Page 32 of 51
Data Link Control: DLC services, data link layer protocols, HDLC, Point-
to-point protocol.
Textbooks:
1. Data Communications and Networking, Behrouz A. Forouzan, Fifth Edition, TMH, 2018.
2. Computer Network, Andrew S. Tanenbaum, David J. Wetherall, Fifth Edition, Pearson
Education, 2018.
Additional References:
1. Computer Network, Bhushan Trivedi, Oxford University Press, 2016
2. Data and Computer Communication, William Stallings, PHI, 2017
Page 33 of 51
Lectures
Course Code Course Title Credits
/Week
Using Packet Tracer, create a basic network of two computers using appropriate
2
network wire. Use Static IP address allocation and show connectivity
Using Packet Tracer, create a basic network of One server and two computers using
3
appropriate network wire. Use Dynamic IP address allocation and show connectivity
Using Packet Tracer, create a basic network of One server and two computers and two
4
mobile / movable devices using appropriate network wire. Show connectivity
Using Packet Tracer, create a network with three routers with RIPv1 and each router
5
associated network will have minimum three PC. Show Connectivity
Using Packet Tracer, create a network with three routers with RIPv2 and each router
6
associated network will have minimum three PC. Show Connectivity
Using Packet Tracer, create a network with three routers with OSPF and each router
7
associated network will have minimum three PC. Show Connectivity
Using Packet Tracer, create a network with three routers with BGP and each router
8
associated network will have minimum three PC. Show Connectivity
Using Packet Tracer, create a wireless network of multiple PCs using appropriate
9
access point.
Using Wireshark, network analyzer, set the filter for ICMP, TCP, HTTP, UDP, FTP
10 and perform respective protocol transactions to show/prove that the network analyzer is
working
Page 34 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To learn and understand the Concepts of Software Engineering
To learn and understand Software Development Life Cycle
To apply the project management and analysis principles to software project development.
To apply the design & testing principles to software project development.
Learning Outcomes:
After successful completion of this course, students would be able to
Plan a software engineering process life cycle, including the specification, design,
implementation, and testing of software systems that meet specification, performance,
maintenance and quality requirements
Analyze and translate a specification into a design, and then realize that design practically, using
an appropriate software engineering methodology.
Know how to develop the code from the design and effectively apply relevant standards and
perform testing, and quality management and practice
Able to use modern engineering tools necessary for software project management, time
management and software reuse.
Topics No of
Unit
Lectures
Introduction: The Nature of Software, Software Engineering,
Professional Software Development, Layered Technology, Process
framework, CMM, Process Patterns and Assessment Prescriptive Models:
Waterfall Model, Incremental, RAD Models Evolutionary Process
Models: Prototyping, Spiral and Concurrent Development Model
Specialized Models: Component based, Aspect Oriented development,
The Unified Process Phases, Agile Development- Agility, Agile Process,
I Extreme Programming 15
Requirement Analysis and System Modeling:
Requirements Engineering, Eliciting Requirements, SRS Validation,
Components of SRS, Characteristics of SRS, Object-oriented design using
the UML - Class diagram, Object diagram, Use case diagram, Sequence
diagram, Collaboration diagram, State chart diagram, Activity diagram,
Component diagram, Deployment diagram
Page 35 of 51
System Design: System/Software Design, Architectural Design, Low-
Level Design Coupling and Cohesion, Functional-Oriented Versus Object-
Oriented Approach, Design Specifications, Verification for Design,
Monitoring and Control for Design
Textbooks:
1. Software Engineering, A Practitioner’s Approach, Roger S, Pressman, 2019
2. Software Engineering: principles and Practices, Deepak Jain, OXFORD University Press, 2008
Additional References:
1. Software Engineering, Ian Sommerville, Pearson Education, 2017
2. Fundamentals of Software Engineering, Fourth Edition, Rajib Mall, PHI, 2018
3. Software Engineering: Principles and Practices, Hans Van Vliet, John Wiley & Sons, 2010
4. A Concise Introduction to Software Engineering, Pankaj Jalote, Springer
Page 36 of 51
Lectures
Course Code Course Title Credits
/Week
Perform the following exercises for any two projects given in the list of sample projects or any other
projects:
3 Draw the function oriented diagram: Data Flow Diagram (DFD) and Structured chart.
4 Draw the user‘s view analysis for the suggested system: Use case diagram.
5 Draw the structural view diagram for the system: Class diagram, object diagram.
Draw the behavioral view diagram for the suggested system: Sequence diagram,
7
Collaboration diagram
12 Develop test cases for various white box and black box testing
Page 37 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
● Introduce concepts of SoC and IoT
● Introduce various types of IoT platforms
● Interfacing various types of devices using different protocols with IoT
● Understand practical applications of IoT in real life world
Learning Outcomes:
After successful completion of this course, students would be able to
● understand SoC and IoT
● use different types of IoT Platforms and interfaces
● understand and implement an idea of various types of applications built using IoT
Topics No of
Unit
Lectures
IoT and Protocols IoT Security: HTTP, UPnP, CoAP, MQTT, XMPP,
Privacy and Security Issues in IoT.
Page 38 of 51
IoT & Web: Web server for IoT, Sending/Receiving data between web
server & IoT device, Cloud for IoT, Node RED, M2M vs IoT
Communication Protocols, Basics of WSNs, WSN architecture and types,
IoT Applications: Modern IoT case studies / applications used in the areas
III 15
of transportation, agriculture, health care etc
Textbooks:
1. Introduction to IoT Paperback by Sudip Misra , Anandarup Mukherjee , Arijit Roy , Cambridge
Press, 2022
2. Jain, Prof. Satish, Singh, Shashi, “Internet of Things and its Applications”, 1st Edition, BPB,
2020.
3. Shriram K Vasudevan, Abhishek S Nagarajan, RMD Sundaram, Internet of Things, Wiley, India,
2019
4. IoT and Edge Computing for Architects - Second Edition, by Perry Lea, Publisher: Packt
Publishing, 2020
Additional References:
1. Internet of Things by Vinayak Shinde, SYBGEN Learning India Pvt. Ltd, 2020
2. Internet of things, Dr. Kamlesh Lakhwani, Dr. Hemant kumar Gianey, Josef Kofi Wireko,
Kamalkant Hiran, BPB Publication, 2020
3. Arduino, Raspberry Pi, NodeMCU Simple projects in easy way by Anbazhagan k and Ambika
Parameswari k, 2019.
4. IoT based Projects: Realization with Raspberry Pi, NodeMCU Paperback – February 2020, by
Rajesh Singh Anita Gehlot, 2020
5. Mastering the Raspberry Pi, Warren Gay, Apress, 2014
Page 39 of 51
Lectures
Course Code Course Title Credits
/Week
GPIO: Light the LED with Python with/without a button using either Uno/Raspberry
3
Pi.
5 GPIO: LED Grid Module: Program the 8X8 Grid with Different Formulas
6 Stepper Motor Control: PWM to manage stepper motor speed using Uno/Raspberry Pi.
9 Trigger a set of led GPIO on any IoT platform via any related web server
Interface with any sensor and send its value over the internet to the server using any
10
suitable protocol
Page 40 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
Kotlin Programming Language for application development
Creating robust mobile applications on simulators and physical devices
Creating intuitive, reliable mobile apps using the android services and components
Handling data local and remote data storage
Create a seamless user interface that works with different mobile screens
Learning Outcomes:
After successful completion of this course, students would be able to
Build useful mobile applications using Kotlin language on Android
Install and configure Android Studio for application development
Master basic to intermediate concepts of Kotlin required for mobile application development
Use built-in widgets and components, work with the database to store data
Master key Android programming concepts and deploy the application on Google Play
Topics No of
Unit
Lectures
Introduction to Kotlin: Basics of Kotlin, type conversions, comments,
Kotlin operators, variables in Kotlin, packages, visibility modifiers, control
flow statements, Concept of OOPS in Kotlin, classes in Kotlin, delegation
and extension functions, the companion object,
Page 41 of 51
Designing Android UI: User Interface (UI), Layout and Its Types, Layout
Attribute, working with Views, Android UI Controls, Styles and Themes,
Event Handler, setting up themes in Manifest and from the application,
dialog in activity, using intents, fragments
Textbooks:
1. How to Build Android Apps with Kotlin: A hands-on guide to developing, testing, and publishing
your first apps with Android, Alex Forrester, Packt Publishing, 2021
2. Android Programming: Crafting UI/UX using Kotlin, SYBGEN Learning, 2020
Additional References:
1. Head First Android Development: A Learner's Guide to Building Android Apps with Kotlin
Dawn Griffiths, 3rd Edition, O'Reilly Media, 2021
2. Android Studio 4.2 Development Essentials - Kotlin Edition: Developing Android Apps Using
Android Studio 4.2, Kotlin and Android Jetpack, Neil Smyth, Payload Media, 2021
3. Android Programming with Kotlin for Beginners, John Horton, Packt Publishing, 2019
4. Android Development with Kotlin: Enhance your skills for Android development using Kotlin,
Marcin Moskala, Packt Publishing
Page 42 of 51
Lectures
Course Code Course Title Credits
/Week
i. Create an application to create Image Flipper and Image Gallery. On click on the
3 image display the information about the image.
ii. Create an application to use Gridview for shopping cart application.
i. Create a media player application in android that plays audio. Implement play,
pause, and loop features.
7
ii. Create an Android application to use a camera and capture image/video and
display them on the screen.
Create an Android application to record the current location. Based on the current location
9
allow the user to use some useful services/applications
10 Create a suitable Android application to store and retrieve data in the SQLite database.
Create a suitable Android application to work with Firebase for storing and manipulating
11
data.
Page 43 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To understand all the necessary and important technologies such as MongoDB, Express.js,
AngularJS, and Node.js.
To understand modern app development using Flutter
Learning Outcomes:
After successful completion of this course, students would be able to
Store the data in NoSQL, document-oriented MongoDB database that brings performance and
scalability.
Use Node.js and Express Framework for building fast, scalable network applications
Use AngularJS framework that offers declarative, two-way data binding for web applications.
Integrate the front-end and back-end components of the MEAN stack.
Develop robust mobile applications using Flutter.
Topics No of
Unit
Lectures
Node.js (N): Introduction to Node.js. Installing Node.js. The package.json
File. The Node.js Event Loop. The I/O Cycle. The Anatomy of a Node.js
Module. Creating Node Modules. Exploring the Node.js HTTP Module.
Creating an HTTP Webserver with Node.js. Responding to HTTP Requests.
Routing in Node.js. Creating a Sample Node.js Application.
Page 44 of 51
Component. One-way Data Binding. Two-way Data Binding. Using Nglf
Directive. Using NgForOf Directive. Angular Modules. Creating
NgModules Using Angular Router. Configuring Templates. Creating
Navigations. Working with Template-driven Forms. Working with Reactive
Forms. Validating Form Data. Services Dependency Injection (DI). Reading
Data from Database. Inserting Data into Database. Updating Data in the
Database. Delete Data from Database.
Dart Programming: main() function, Dart Variables, Dart Data Types, Dart
Conditional Operators, Control Flow & Loops. Dart Functions - Functions,
Function Structure, creating a Function, Function Returning Expression.
Object-Oriented Programming (OOP) - Creating a Class, Adding Methods to
Classes, Class — Getters and Setters, Class Inheritance, Abstract Class.
III 15
Flutter Widgets Fundamentals: Scaffold Widget, Image Widget, Container
Widget, Column and Row Widgets, Icon Widget, Layouts in Flutter, Card
Widget, Hot Reload and Hot Restart, Stateful and Stateless Widgets
Textbooks:
1. Node.js, MongoDB and Angular Web Development: The definitive guide to using the MEAN
stack to build web applications by Brad Dayley, Brendan Dayley, Caleb Dayley, Pearson, 2018.
2. Beginning Flutter: A Hands On Guide to App Development by Marco L. Napoli, Wrox, 2019
Additional References:
1. Full Stack Javascript Development with Mean - MongoDB, Express, AngularJS, and Node.JS by
Adam Bretz, Colin J Ihrig, Shroff/SitePoint, 2015
2. Practical Flutter by Zammetti Frank, Apress, 2019
Page 45 of 51
Lectures
Course Code Course Title Credits
/Week
Write a program to create a simple web application using Express, Node JS and Angular
7
JS
Create a simple HTML “Hello World” Project using AngularJS Framework and apply
8
ng-controller, ng-model and expressions
Page 46 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
The research methodology course is proposed to assist students in planning and carrying out
research projects.
The students are exposed to the principles, procedures and techniques of implementing research
project.
The course starts with an introduction to research and carries through the various methodologies
involved.
It continues with finding out the literature using technology, basic statistics required for research
and finally report writing.
Learning Outcomes:
After successful completion of this course, students would be able to
Define research, formulate problem and describe the research process and research methods.
Understand and apply basic research methods including research design, data analysis and
interpretation.
Understand ethical issues in research, write research report, research paper and publish the paper.
Topics No of
Unit
Lectures
Introduction to Research Methodology: Meaning of Research, Objectives
of Research, Motivations in Research, types of Research, Research
Approaches, Significance of Research, Research Methods v/s Methodology,
Research and Scientific Methods, Research Process, Criteria of Good
Research.
Page 47 of 51
Collection of Secondary Data, Selection of appropriate method for data
collection, Case Study, Focus Group Discussion, Techniques of developing
research tools, viz. Questionnaire and rating scales etc. Reliability and
validity of Research tools.
Preparing the Text: How to Prepare the Title, how to List the Authors and
Addresses, how to Prepare the Abstract, how to Write the Introduction, how
to Write the Materials and Methods Section, how to Write the Results, how
to Write the Discussion, how to State the Acknowledgments, how to Cite the
III References. 15
Preparing the Tables and Figures: How to Design Effective Tables, how
to Prepare Effective Graphs, how to Prepare Effective Photographs.
Textbooks:
1. Kothari C.R., Research Methodology, New Age International Publication, 2019
2. Research Methodology-A Step-by-Step Guide for Beginners, (4th ed.), Ranjit Kumar, Singapore,
Pearson Education, 2018
3. Research Methodology, Vaishali Khairnar, Staredu Solutions India Pvt Ltd, 2020
Additional References:
1. Research Methodology: Methods and Techniques, Dr. R. K. Jain, , Fifth Edition, VEI, 2021
2. Research Methodology, R. Panneerselvam, Second Edition, PHI, 2014
3. Dr. Rachna Jain, Research Methodology, Maximax Publishing House
4. How to Write and Publish a Scientific Paper, Cambridge University Press, Barbara Gastel and
Robert A. Day, 2017
Page 48 of 51
Lectures
Course Code Course Title Credits
/Week
Course Objectives:
To understand the idea of management, process and its levels.
To understand the perception of entrepreneurship, process and its types.
To understand the concept SSI and steps to start SSI.
To understand the selection of project, project report, project appraisal, and its feasibility.
Learning Outcomes:
After successful completion of this course, students would be able to
Understand the meaning of management, functions, administration and its process.
Understand the foundation of entrepreneurship and its theory, types and its process.
Identify the steps involved in an entrepreneurial venture (SSI).
Understand an entrepreneur is converting his business ideas into running concern by selecting the
project.
Topics No of
Unit
Lectures
Page 49 of 51
of Coordination, Techniques of Coordination, Managerial Control, Steps in
a Control Process, Essentials of a Sound Control System, Control Methods.
Textbooks:
1. Havinal Veerabhadrappa, Management and Entrepreneurship, New Age International Publishers.
2. Kanishka Bedi, Management and Entrepreneurship, Oxford University Press
3. Dr. R. K. Singal, Entrepreneurship Development and Management
Additional References:
1. P. N. Singh, J. C. Saboo, Entrepreneurship Management, 6th Edition, Dr. P. N. Singh Centre for
Hrd Publications.
2. Donald L. Sexton & Raymond W. Smilor, The Art and Science of Entrepreneurship, Ballinger,
2022
3. Clifford M.Baumback & Joseph R.Mancuso, Entrepreneurship And Venture Management,
Prentice Hall
Page 50 of 51
Evaluation Scheme
All questions shall be compulsory with internal choice within the questions.
Each Question may be sub-divided into sub questions as a, b, c, d, etc. & the
allocation of Marks depends on the weightage of the topic.
-----------
Page 51 of 51