0% found this document useful (0 votes)
24 views95 pages

B.tech CSE 2018 Batch Onwards Syllabus

Uploaded by

xmanhans1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views95 pages

B.tech CSE 2018 Batch Onwards Syllabus

Uploaded by

xmanhans1
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 95

Scanned by CamScanner

Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scanned by CamScanner
Scheme and Syllabus for B. Tech. (Computer
Science and Engineering) (3rd Year)

(Semester 5th and Semester 6th)

W.e.f. Session 2020-21

Department of Computer Science and Engineering


School of Engineering and Technology

CENTRAL UNIVERSITY OF HARYANA


MAHENDERGARH-123031
HARYANA
Scheme B.Tech. (CSE-3rd Year)
Fifth Semester

Code Subject L T P Credit


BT CS 501A Analysis and Design of Algorithms 3 1 0 4
BT CS 502A Theory of Computation 3 1 0 4
BT CS 503A Computer Network 3 0 0 3
BT CS 504A Microprocessor and Interfacing 3 0 0 3
Analysis and Design of Algorithms
BT CS 505A 0 0 2 1
Laboratory
BT CS 506A Computer Network Laboratory 0 0 2 1
BT CS 507A Microprocessor and Interfacing Laboratory 0 0 2 1
BT CS 508A Summer Training * 0 2 0 2
DCEC-1
BT CS 521 Programming with Python 3 0 0 3
BT CS 522 Mobile Application Development 3 0 0 3
BT CS 523 Programming Concept using Java 3 0 0 3
DCEC-1 Laboratory
BT CS 526 Programming with Python Laboratory 0 0 2 1
BT CS 527 Mobile Application Development Laboratory 0 0 2 1
BT CS 528 Programming Concept using Java Laboratory 0 0 2 1
Total 15 4 8 23
* Students will undergo six weeks summer training during summer vacation after the 4th semester and
its evaluation will be carried out in 5th semester
Scheme B.Tech. (CSE-3rd Year)
Sixth Semester

Code Subject L T P Credit


BT CS 601A Principle of Operating System 3 0 0 3
BT CS 602A Compiler Design 3 0 0 3
BT CS 603A Software Engineering 3 0 0 3
BT CS 604A Data Warehousing and Data Mining 3 0 0 3
BT CS 605A Principle of Operating System Laboratory 0 0 2 1
BT CS 606A Software Engineering Laboratory 0 0 2 1
BT CS 607A Seminar 0 2 0 2
DCEC-2
BT CS 621 Computer Graphics 3 0 0 3
BT CS 622 Unix and Linux Programming 3 0 0 3
DCEC-2 Laboratory(As per DCEC-2)
BT CS 626 Computer Graphics Laboratory 0 0 2 1
BT CS 627 Unix and Linux Programming Laboratory 0 0 2 1
DCEC-3
BT CS 631 Stochastic Processes and Queueing Theory 3 0 0 3
BT CS 632 Wireless Communication 3 0 0 3
BT CS 633 Distributed Systems 3 0 0 3
BT CS 634 Unified Modeling Language and Agile Technology 3 0 0 3
Total 18 2 6 23
* Students will undergo six weeks summer training during summer vacation after the 6th semester and
its evaluation will be carried out in 7th semester
Analysis and Design of Algorithm
Course Code: BT CS 501A
L T P Credits: 04
3 1 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● analyze the time and space complexity of algorithm
● develop systematically an algorithm for a problem
● apply the algorithms in solving real world problems

Unit-1
Introduction: Algorithms, Analysis of Algorithms, Design of Algorithms, Complexity of
Algorithms, Asymptotic Notations, Growth of function, Recurrences and their solution methods.
Divide and Conquer: General method, Binary Search, Exponentiation problem, Merge Sort, Quick
Sort, Selection Sort, Strassen’s Matrix Multiplication algorithms and analysis of algorithms for these
problems.
Unit-2
Greedy Method: General method, Knapsack Problem, Job sequencing with deadlines, Minimum
Spanning trees, Single source shortest path and analysis of these algorithms.
Unit-3
Dynamic Programming: General method, 0/1 Knapsack problem, Optimal BST, All Pairs shortest
path, Traveling Salesman Problem, Longest common subsequence (LCS).
Back Tracking: General method, 8 Queen’s problem, Graph Coloring, Hamiltonian cycles and
analysis of these problems.
Unit-4
Primality testing, Integer factorization, Randomized algorithms, Probabilistic algorithms. String
Matching algorithms: Rabin Karp, KMP, Boyer Moore. Introduction to problem classes – NP, NPC,
NP-Hard.
Suggested Readings:
1. Aho, A.V., Hopcroft, J.E. and Ullman, J.D., The Design and Analysis of Algorithms, 2nd Edition,
Pearson, 2009.
2. Cormen, T.H., Leiserson, C.E., Rivest, R.L. and Stein, C., Introduction to Algorithms, 3rd Edition,
PHI, 2010.
3. Goodrich, M.T., and Tamassia, R., Algorithm Design: Foundation, Analysis and Internet
Examples, 1st Edition, John Wiley & Sons, 2006.
4. Horowitz, E., and Sahni, S., Fundamental of Computer Algorithms, 2nd Edition, Universities
Press, 2008.
5. Kleinberg, J., and Tardos, E., Algorithm Design, 1st Edition, Pearson, 2013.
Theory of Computation
Course Code: BT CS 502A
L T P Credits: 04
3 1 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● relate practical problems to languages, automata, and computability
● demonstrate an increased level of mathematical sophistication
● apply mathematical and formal techniques for solving problems

Unit -1: Finite Automata and Regular Languages


Finite automata, DFA, NFA, Equivalence of NDFA and DFA, FA with null moves, Myhill-Nerode
Theorem and minimization of FA.
FA with outputs: Moore and mealy Machines, Equivalence of Moore and Mealy machines.
Regular Expressions, Regular languages and FA, Arden theorem: Equivalence of FA and Regular
Expressions, Closure properties of regular sets, Pumping Lemma for Regular Sets, Applications of
the pumping lemma.
Unit 2: Chomsky classification of Grammars
Unrestricted languages, Context sensitive languages, Context free languages and regular languages,
Relation between classes of languages, Parse trees, Ambiguity in CFG, Reduced forms, Removal of
useless Symbols and unit production, Chomsky Normal Form (CNF), Greibach Normal Form
(GNF).
Unit 3: Pushdown Automata and Turing machines
Basic Structure of PDA, Acceptance by PDA, PDA and Context Free Languages, Design of PDA
corresponding to a grammar, LL(k) parsing, LBA.
Basic structure and working of Turing Machine, Nondeterministic and deterministic Turing
Machine, Role of TM as language recognizer, Space and time complexity of TM, binary coding of
TM, Universal Turing Machine, halting problem of TM, Multitrack and Multitape TM.
Unit 4: Undecidability and Advancement in Automata Theory
Decidability: Decidable languages, decidable problems concerning Context free languages.
Recursive and recursive enumerable languages, Post Correspondence Problem, A simple
undecidable problem (PCP), Primitive recursive functions.
Suggested Readings:
1. Cohen, D.I., Introduction to Computer Theory, 2nd Edition, Wiley India, 2007.
2. Hopcroft, J.E., Motwani, R. and Ullman, J.D., Introduction to Automata Theory Language and
Computation, Pearson Education, 2008.
3. Martin, J.C., Introduction to Languages and The Theory of Computation, 4th Edition, Tata
McGraw Hill, 2010.
4. Mishra, K.L.P., and Chandrasekaran, N., Theory of Computer Science: Automata Language and
Computation, 3rd Edition, Prentice Hall of India, 2006.
5. Nagpal, C.K., Formal Languages and Automata Theory, Oxford University Press, 2012.
Computer Network
Course Code: BT CS 503A
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● gain insight about basic network theory and layered communication architectures
● provide solutions to various problems in network theory
● conceptualize and design a network stack

Unit-1: Computer Networks, the Internet, and Application Layer


About The Internet its Protocols, the Network Edge, the Network Core, Access Networks and
Physical Media (Transmission Media, Guided Media and Unguided Media), Switching technique
(Circuit Switching, Message Switching, Packet Switching), Delay and Loss in Packet-Switched
Networks, Protocol Layers and Their Service Models (Layered Architecture, function of the layers,
OSI & TCP/IP Reference model).
Principles of Application-Layer Protocols, the World Wide Web: HTTP, File Transfer: FTP,
Electronic Mail in the Internet: SMTP, the Internet's Directory Service: DNS,DHCP.

Unit-2: Transport Layer


Transport-Layer Services and Principles, Multiplexing and Demultiplexing, Connectionless
Transport: UDP, Principles of Reliable of Data Transfer, Connection-Oriented Transport: TCP,
Principles of Congestion Control, TCP Congestion Control.

Unit-3: Network Layer and Routing


Introduction and Network Service Model, Internetworking & devices: Repeaters, Hubs, Bridges,
Switches, Router, Gateway; Addressing: IPv4 address, classful address, subnetting, classless address,
Routing : techniques, static vs. dynamic routing, routing table; Routing algorithms: shortest path
algorithm, distance vector routing, link state routing; Hierarchical Routing.

Unit-4: Link Layer and Local Area Networks


The Data Link Layer: Introduction, Services, Flow Control: Stop and wait Protocols, Sliding Window
Protocols; Error Detection and Correction, Multiple Access Protocols (Pure ALOHA & Slotted
ALOHA, CSMA, CSMA/CD) and LANs, LAN Addresses and ARP, Ethernet, Point-to-Point
Protocol, ATM, X.25 and Frame Relay.

Suggested Readings:
1. Forouzan, B.A., Data Communication and Networking, 4th Edition, Tata McGraw Hill, 2017.
2. Keshav, S., An Engineering Approach to Computer Network, Pearson Education, 2002.
3. Kurose, J., and Ross, K., Computer Networking – A Top-Down Approach Featuring the Internet,
7th Edition, Pearson Education, 2016.
4. Stallings, W., Data and Computer Communications, 10th Edition, Pearson Education, 2013
5. Tanenbaum, A.S., Computer Networks, 5th Edition, Pearson Education, 2010.
Microprocessor and Interfacing
Course Code: BT CS 504A
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● design and implement programs on 8086 microprocessor
● design I/O circuits and Memory Interfacing circuits
● implement modular programming

Unit-1: Introduction & Architecture


Overview of 8086 microprocessor. Signals and pin diagram of 8086, 8086 architecture, internal
operation, Register structure, ALU, Bus Organization, Physical memory organization, BIU, EU,
Minimum mode and Maximum mode, Instruction execution time (Timing Diagram: Fetch Cycle,
Execution Cycle).

Unit-2: Assembly Language Programming

Addressing modes, Instruction format, Instruction Types (data transfer instruction, arithmetic
instructions, branch instruction, NOP & HLT instructions, flag manipulation instruction, logical
instruction, shift and rotate instruction, String instructions), Assembler directions and operators.

Unit-3: Memory Interfacing and Modular Programming

Memory Interfacing (Static RAMs & ROMs), Stacks, Procedures, macros –local labels and nested
macros.

Unit-4: I/O Interface and I/O Programming

I/O consideration, programmed I/O block transfer, Serial communication, asynchronous,


synchronous, physical, 8251A; Parallel communication: 8255 A, 16-bit bus interface, Basic Interrupt
processing, Interrupt and interrupt routines, 8259A Programmable Interrupt Controller, DMA with
controller (8237), 8254 Programmable interval Timer (8253/8254), Interfacing to A/D and D/A
converters, Stepper motor interfacing.

Suggested Readings:
1. Antonakos, J. L., The Intel Microprocessor Family H/W and S/W Principles and Applications, 1st
Edition, Cengage Learning, 2007.
2. Bray, B.B., The Intel Microprocessor 8086/8088-Pentium: Architecture, Programming and
Interfacing, 8th Edition, PHI, 2009.
3. Hall, D.V., Microprocessors and Interfacing, Revised 2nd Edition, Tata McGraw Hill, 2010.
4. Liu, Y.C., and Gibson, G.A., Microcomputer Systems: 8086/8088 Family: Architecture,
Programming and Design, 2nd Edition, PHI, 2006.
5. Ray, A.K., and Bhurchandi, K.M., Advanced Microprocessors and Peripherals: Architecture,
Programming and Interfacing, 3rd Edition, Tata McGraw Hill, 2006.
Analysis and Design of Algorithm Laboratory
Course Code: BT CS 505A
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● apply and implement the algorithm for problem solving
● identify the data structure to develop program for real time applications
● design and develop optimal algorithms

List of Practicals:

1. Implement recursive binary search and linear search and determine the time required to search
an element. Repeat the experiment for different values of n, the number of elements in the list
to be searched and plot a graph of the time taken versus n.
2. Sort a given set of elements using heap sort method and determine the time required to sort
the elements. Repeat the experiment for different values of n, the number of elements in the
list to be sorted and plot a graph of the time taken versus n.
3. Sort a given set of elements using merge sort method and determine the time required to sort
the elements. Repeat the experiment for different values of n, the number of elements in the
list to be sorted and plot a graph of the time taken versus n.
4. Sort a given set of elements using a selection sort method and determine the time required to
sort the elements. Repeat the experiment for different values of n, the number of elements in
the list to be sorted and plot a graph of the time taken versus n.
5. Implement 0/1 knapsack using dynamic programming.
6. From a given vertex in a weighted connected graph, find shortest paths to other vertices using
Dijkstra's algorithm.
7. Sort a given set of elements using a quick sort method and determine the time required to sort
the elements. Repeat the experiment for different values of n, the number of elements in the
list to be sorted and plot a graph of the time taken versus n.
8. Find the minimum cost spanning tree of a given undirected graph using Kruskal's algorithm.
9. a) Print all the nodes reachable from a given starting node in a digraph using BFS method.

b) Check whether a given graph is connected or not using the DFS method.

10. Find a subset of a given set S={s1,s2,s3,.....,sn} of n positive integers whose sum is equal to a
given positive integer d. For example, if S={1,2,5,6,8} and d=9 there are 2 solutions {1,2,6}
and {1,8}. A suitable message is to be displayed if the given problem instance does not have a
solution.
11. Find the minimum cost spanning tree of a given undirected graph using Prim's algorithm.
12. Implement N Queens problem using backtracking.

Note: This is only the suggested list of practical. Instructor may frame additional practicals relevant to
the course contents.
Computer Network Laboratory
Course Code: BT CS 506A
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● invoke analytical studies of Computer Networks through network simulation
● design a network using simulator and configure a real world network
● write a network program and implement network concept like RPC, Client- Server

List of Practicals:

1. To implement date and time display from localhost to server using TCP.
2. To write a client-server application for chat using TCP.
3. Programs to implement error correction and detection.
4. Connection oriented Client server applications with TCP.
5. Connectionless Client server applications with UDP.
6. Study of routing protocols using Cisco Packet Tracer.
7. Implement a chat and mail server.
8. Compare and contrast Network Topologies (Star, Mesh, Ring, Bus) using Cisco Packet
Tracer.
9. Implement Configure enterprise network and show different subnet, private network using
Cisco Packet Tracer.
10. To write a program to develop a DNS client server to resolve the given hostname.
11. Programs using RPC remote procedure call.

Note: This is only the suggested list of practical. Instructor may frame additional practicals relevant to
the course contents.
Microprocessor and Interfacing Laboratory
Course Code: BT CS 507A
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● write programs in assembly language using trainer kits/simulator
● interface development kits effectively for the real time applications of various peripheral
devices with the processor
● handle arithmetic/logical operations using assembly language programming

List of Practicals:
1 a Write an ALP to move block of data without overlap.
b Write an ALP to move block of data with overlap.
c Write an ALP to interchange a block of data.
2 a Write an ALP to add 2 Multibyte numbers.
b Write an ALP to subtract two Multibyte numbers.
c Write an ALP to multiply two 16-bit numbers.
d Write an ALP to perform the conversion from BCD to binary.
3 a Write an ALP to separate odd and even numbers.
b Write an ALP to separate positive and negative numbers.
c Write an ALP to check bitwise palindrome or not.
4 a Write an ALP to find largest number from a given array.
b Write an ALP to find smallest number from a given array.
c Write an ALP to sort a given set of 16bit unsigned integers into ascending order
using bubble/insertion sort algorithm.
5 a Write an ALP to search a character in a string.
b Write an ALP to check whether a given string is palindrome or not.
6 a Write an ALP to read a character from keyboard.
b Write an ALP to read buffered input from the keyboard using dos interrupts.
c Write an ALP to display single character.
7 a Scan 4*4 keyboard for key closure and display the corresponding key code.
b Write an ALP for Seven segment LED display through 8255 (PCI based).
8 Program to rotate the Stepper motor in Clock-Wise direction(8steps).

Note: This is only the suggested list of practical. Instructor may frame additional practicals relevant to
the course contents.
Summer Training
Course Code: BT CS 508A
L T P Credits: 02
0 2 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● get exposure to industry practices
● apply the knowledge to the real world industrial problems
● get hands-on experience on latest industrial equipment/machinery

Methodology
● To identify industries offering internship by students
● To avail the training during summer vacation
● To submit a report based on the work done during internship to the department
● Non-Industry Internship students will take up the internship with a faculty member in the
department
Programming with Python
Course Code: BT CS 521
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● explain basic principles of Python programming language
● write programs using object oriented concepts
● implement GUI applications

Unit -1
The concept of data types; variables, assignments; immutable variables; numerical types; arithmetic
operators and expressions; comments in the program; understanding error messages; Conditions,
boolean logic, logical operators; ranges; Control statements: if-else, loops (for, while); short-circuit
(lazy) evaluation; Strings and text files; manipulating files and directories, os and sys modules; text
files: reading/writing text and numbers from/to a file; creating and reading a formatted file (csv or tab
separated); String manipulations: subscript operator, indexing, slicing a string.
Unit -2
Lists, tuples, and dictionaries; basic list operators, replacing, inserting, removing an element;
searching and sorting lists; dictionary literals, adding and removing keys, accessing and replacing
values; traversing dictionaries; Design with functions: hiding redundancy, complexity; arguments and
return values; formal vs actual arguments, named arguments.
Unit -3
Simple Graphics and Image Processing: “turtle” module; simple 2d drawing - colors, shapes; digital
images, image file formats, image processing: Simple image manipulations with 'image' module
(convert to bw, greyscale, blur, etc.). Classes and OOP: classes, objects, attributes and methods;
defining classes; design with classes, data modeling; persistent storage of objects; inheritance,
polymorphism, operator overloading (_eq_, _str_, etc.); abstract classes; exception handling, try block

Unit -4
Graphical user interfaces; event-driven programming paradigm; tkinter module, creating simple GUI;
buttons, labels, entry fields, dialogs; widget attributes - sizes, fonts, colors layouts, nested frames.

Suggested Readings:
1. Rossum, G.V., and Drank, F.L., An Introduction to Python, 1st Edition, Network Theory Ltd,
2011.
2. Lambert, K., Fundamentals of Python: First Programs, 1st Edition, Cengage Learning, 2012.
3. Lutz, M., Programming Python, 4th Edition, O’Reilly, 2011.
4. Padmanabhan, T.R., Programming with Python, 1st Edition, Springer, 2016.
5. The Python Tutorial Online Book, Python Software Foundation
(http://docs.python.org/3/tutorial/index.html)
Mobile Application Development
Course Code: BT CS 522
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● comprehend Android platform and its usefulness in application development
● acquire skill set to execute applications in Android based devices
● design and develop deployable Android applications

Unit-1: Introduction to mobile devices


Introduction to Mobile Computing, Introduction to Android Development Environment, Mobile
devices vs. desktop devices, ARM and intel architectures, Power Management, Screen resolution,
Touch interfaces, Application deployment, App Store, Google Play, Windows Store, Development
environments: XCode, Eclipse, VS2012, PhoneGAP, etc.; Native vs. web applications. Factors in
Developing Mobile Applications: Mobile Software Engineering, Frameworks and Tools, Generic UI
Development, Android User; Graphics and Multimedia: Performance and Multithreading, Graphics
and UI Performance, Android Graphics, Mobile Agents and Peer-to-Peer Architecture, Android
Multimedia.

Unit-2: Mobile OS Architectures


Comparing and contrasting architectures of all three – Android, iOS and Windows, Underlying OS,
Kernel structure and native level programming. Approaches to power management, Security.
Android/iOS/Win 8 Survival and basic apps: Building a simple “Hello World” App in all three
applications, App-structure, built-in Controls, file access, basic graphics. Platforms and Additional
Issues: Development Process, Architecture, Design, Technology Selection, Mobile App Development
Hurdles, Testing.

Unit-3: Android/iOS/Win8 Apps


DB access, network access, contacts/photos/etc. Underneath the frameworks: Native level
programming on Android, Low-level programming on (jailbroken) iOS, Windows low level APIs.
Intents and Services: Android Intents and Services, Characteristics of Mobile Applications, Successful
Mobile Development; Storing and Retrieving Data: Synchronization and Replication of Mobile Data,
Getting the Model Right, Android Storing and Retrieving Data, working with a Content Provider;
Putting It All Together: Packaging and Deploying, Performance Best Practices, Android Field Service
App.

Unit-4: Advanced Topics


Power Management: Wake locks and assertions, Low-level OS support, Writing power-smart
applications. Augmented Reality via GPS and other sensors: GPS, Accelerometer, Camera. Mobile
device security, in depth: Mobile malware, Device protections, iOS “Jailbreaking”, Android “rooting”
and Windows’ “defenestration”; Security and Hacking: Active Transactions, More on Security,
Hacking Android.
Suggested Readings:
1. Hardy, B., and Phillips, B., Android Programming: The Big Nerd Ranch Guide, 4th Edition, Big
Nerd Ranch LLC, 2019.
2. Fling, B., Mobile Design and Development, O’Reilly Media Inc, 2009.
3. Crumlish, C., and Malone, E., Designing Social Interfaces, 2nd Edition, O’Reilly Media, Inc.
4. Firtman, M., Programming the Mobile Web, 2nd Edition, O’Reilly Media Inc, 2013.
5. Ginsburg, S., Designing The iPhone User Experience: A User-Centered Approach to Sketching
and Prototyping iPhone Apps, Addison-Wesley Professional, 2010.
6. Nurkiewicz, T. and Christensen, B., Reactive Programming with RxJava, O’Reilly Media, 2016.
7. Lee, V., Schneider, H., and Schell, R., Mobile Applications: Architecture, Design and
Development, Prentice Hall, 2004.
Programming Concepts using Java
Course Code: BT CS 523
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● identify classes, objects, members of a class and relationships among them needed for a
specific problem
● write Java application programs using OOP principles and proper program structuring
● demonstrate the concepts of polymorphism, inheritance and error handling techniques using
exception handling

Unit-1: Overview of class, object and methods


The overview of Java’s architecture and the architecture of the Java Virtual Machine (JVM).
Classes: Declaring Members (Fields and Methods), Instance Members, Static Members.
Objects: Class Instantiation, Reference Values, and References. Primitive Data Types, Variable
Declarations, Initial Values for Variables, Class Declarations, Method Declarations, this reference,
Method Overloading, Constructors, The Default Constructor and Constructors overloading. Arrays,
Anonymous Arrays, Multidimensional Arrays, The main() Method, Program Arguments.

Unit-2: Inheritance and Packages


Object-Oriented Programming: Single Implementation Inheritance, Overriding Methods, Hiding
Members, The Object Reference super, Chaining Constructors Using this() and super().
Packages: Defining Packages, Using Packages, Compiling Code into Packages, Running Code from
Packages. Scope Rules, Accessibility Modifiers, Overview of other Modifiers for Members. Operators
and Expressions, Overview of Control Flow Statements.

Unit-3: Interfaces and Exception Handling


Interfaces: Defining Interfaces, Abstract Method Declarations, Implementing Interfaces, Extending
Interfaces, Interface References, Constants in Interfaces, Polymorphism and Dynamic Method
Lookup.
Exception Handling: The try Block, the catch Block, the finally Block, the throw Statement, the
throws Clause, Checked and Unchecked Exceptions, Defining New Exceptions.

Unit-4: Fundamental Classes and Multithreading


Fundamental Classes: Overview of the java.lang Package, The Object Class, The Wrapper Classes,
The String Class, The StringBuilder and the StringBuffer Classes.
Multithreading: Overview of Threads, the Main Thread, Thread Creation, Synchronization, Thread
Transitions. Basics of Event Handling, Graphics Programming using AWT and Swing.
Suggested Readings:
1. Deitel, P., and Deitel, H., Java How to Program, 10th Edition, Pearson Education, 2015.
2. Eckel, B., Thinking in Java, 4th Edition, Pearson Education, 2006.
3. Horstmann, C.S., and Cornell, G., Core Java Volume I (Fundamentals), 11th Edition, Pearson,
2019.
4. Naughton, P., and Schildt, H., The Complete Reference Java, 9th Edition, Tata McGraw Hill,
2017.
5. Sierra, K., and Bates, B., Head First Java, 2nd Edition, O’Reilly, 2005.
Programming with Python Laboratory
Course Code: BT CS 526
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● write, test and debug python programs
● implement conditionals and loops for python programs using object oriented programming
concepts
● implement string and function for python programs

List of Practicals:
1. Write python program to print Hello World
2. Write python program to Hello World using string variable
3. Write a python program to store data in list and then try to print them.
4. Write a python program to do basic trim and slice on string.
5. Write python program to print list of numbers using range and for loop
6. Write a python program to store strings in a list and then print them.
7. Write a python program to let the user enter some data in string and then verify data and print
welcome to the user.
8. Write python program in which a function is defined and calling that function prints Hello World
9. Write a python program in which a function (with single string parameter) is defined and calling
that function prints the string parameters given to the function.
10. Write a python program in which a class is defined, then create an object of that class and call a
simple print function defined in the class.

Note: This is only the suggested list of practical. Instructor may frame additional practicals relevant
to the course contents.
Mobile Application Development Laboratory
Course Code: BT CS 527
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● to gain hands on experience in Android SDK
● design and develop applications in Android based devices
● design and develop deployable Android applications

List of Practicals:
1. a) Build your first simple Hello world application using android studio.
b) Build Hello world application using Toast in android studio.
2. Build an application that contains a TextView with value “Hello world”.
3. a) Add background to textView created in above question 3
b) Using color.xml values
4. Add margins to TextView in question3
a) Using hexadecimal value in xml layout
b) Using dimens.xml values
5. Try Linear Layout that contains 4 buttons as UI Components with following attribute properties set
– Layout, Button, Text.
6. Using Relative Layout Design a form that inputs first name , last name , Gender( using
radioButton) and Date of Birth (Using Date Picker ) with following attribute properties set –
Layout, RadioButton, EditText.
7 a). Try Table Layout and design following using EditText
b). Design Following using Grid Layout and use ImageView and TextView UI Controls for its
designing
8. Create a Login page for Online Shopping using any learned Layouts
a. Create TextView for the title
b. Add two EditText for username and password
c. Add Login button
d. Create checkbox
e. Create Radio button
9. Create an application to show the lifecycle of an activity. Include the following functions:
A. onCreate B. onStartC. onResumed. D. onPause E. OnStop F. OnRestartG. OnDestroy
10 a). Use Toast and logcat to show when each function gets calledactivity_main.xml
b). Create a calculator App with buttons for each operation using Event Delegation Model
11. Dice Roller : On Button click Application will display any random number between 1 to 6
OnClick Method
12. Create an application that lists the states of India using ListView.
Note: This is only the suggested list of practical. Instructor may frame additional practicals
relevant to the course contents.
Programming Concept using Java Laboratory
Course Code: BT CS 528
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● write, test and debug java programs
● implement conditionals and loops for java programs using object oriented programming
concepts
● implement function and handle exception function for python programs

List of Practicals:
1. WAP to use various data types and type casting in Java.
2. WAP for if-else looping and break-continue statements in Java.
3. WAP for implementing For and While loop in Java.
4. WAP to implement constructors and inheritance in Java.
5. Implement Method overloading and overriding using Java.
6. WAP to implement garbage collection in Java.
7. Implement try-catch using Java program.
8. Implement exception handling using Java.
9. Use Java programming for accessing and performing operations on file.
10. Implement Fibonacci series and string reversal using Java.

Note: This is only the suggested list of practical. Instructor may frame additional practicals relevant to
the course contents.
Principle of Operating Systems
Course Code: BT CS 601A
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● comprehend the techniques used to implement the process manager
● comprehend virtual memory abstractions in operating systems
● design and develop file system interfaces

Unit-1
Overview of operating systems: Batch, iterative, time sharing, multiprocessor, distributed, cluster and
real-time systems, Unix system introduction and commands, Operating system structure. Processes:
states, synchronisation and scheduling. Deadlocks and deadlock handling. Memory management.
Input-output management. Disk devices and file systems.

Unit-2

Inter-process Communication Race Conditions, Critical Section, Mutual Exclusion, Hardware


Solution, Strict Alternation, Peterson’s Solution, The Producer Consumer Problem, Semaphores,
Event Counters, Monitors, Message Passing. Classical IPC Problems: Reader’s & Writer Problem,
Dining Philosopher Problem etc., Scheduling, Scheduling Algorithms.

Unit-3

File concept, Access methods, File types, File operation, Directory structure, File System structure,
Allocation methods (contiguous, linked, indexed), Free-space management (bit vector, linked list,
grouping), directory implementation (linear list, hash table), efficiency & performance.

Unit-4

Security & Protection Security Environment, Design Principles Of Security, User Authentication, and
Protection Mechanism: Protection Domain, Access Control List.

Suggested Readings:
1. Dhamdhere, D.M., Operating Systems: A Concept Based Approach, 3rd Edition, Tata
McGraw Hill, 2017.
2. Dietel, H. M., An Introduction to Operating System, 5th Edition, Pearson, 2009.
3. Silberschatz, A., and Galvin, P.B., Operating System Concepts, 10th Edition, Wiley, 2018.
4. Stalling, W., Operating Systems: Internals and Design Principles, 9th Edition, Pearson, 2018.
5. Tanenbaum, A.S., Modern Operating System, 4th Edition, Pearson, 2014.
Compiler Design
Course Code: BT CS 602A
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● apply the knowledge of lexical tool to develop a scanner & parser
● design and develop software system for backend of the compiler
● comprehend and adapt to new tools and technologies in compiler design

Unit-1
Compiler structure: Analysis-Synthesis model of compilation, Various phases of a compiler, Tool
based approach to Compiler Construction.
Lexical analysis: Interface with input, Parser and Symbol table, Token, Lexeme and Patterns.
Difficulties in Lexical Analysis. Error reporting. Implementation. Regular definition, Transition
diagrams, LEX.
Unit-2
Syntax analysis: CFGs, Ambiguity, Associativity, Precedence, Top Down Parsing, Recursive
Descent Parsing, Transformation on the grammars, Predictive Parsing, Bottom Up Parsing, Operator
Precedence grammars, LR parsers (SLR, LALR, LR), YACC.
Syntax directed definitions: Inherited and Synthesized Attributes, Dependency Graph, Bottom Up
and Top Down Evaluation of Attributes, L- and S-Attributed Definitions.
Unit-3
Type checking: Type System, Type Expressions, Structural and Name Equivalence of types, Type
Conversion, Overloaded Functions and Operators.
Run time system: Storage Organization, Activation Tree, Activation Record, Parameter Passing,
Symbol Table, Dynamic Storage Allocation.
Unit-4
Intermediate code generation: Intermediate Representations, Translation of Declarations,
Assignments, Control Flow, Boolean Expressions and Procedure Calls.
Code generation and instruction selection: Issues, Basic Blocks and Flow Graphs, Register
Allocation, Code Generation, DAG representation of programs, Code Generation from DAGS, Peep-
Hole Optimization, Code Generators, Specifications of machine.
Suggested Readings:
1. Aho, A.V., Sethi, R. and Ullman, J.D., Compilers: Principles, Techniques and Tools, 2nd Edition,
Pearson, 2008.
2. Appel, A.W., Modern Compiler Implementation in C, 1st Edition, Cambridge University Press,
2004.
3. Dhamdhere, D.M., Compiler Construction – Principles & Practice, 2nd Edition, Macmillan India,
2008.
4. Fischer, C.N., and Leblanc, R.J., Crafting a Compiler, 1st Edition, Pearson, 2011.
5. Holub, A.I., Compiler Design in C, 1st Edition, PHI, 1992.
Software Engineering
Course Code: BT CS 603A
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● enhance the software project management skills
● comprehend the systematic methodologies involved in SE
● design and develop a software product in accordance with SE principles

Unit-1
Problem domain, software engineering challenges, software engineering approach, Software process,
characteristics of software process, software development process models, other processes. Software
requirements, problem analysis, requirements specification, functional specification with use cases,
validation, matrices.

Unit-2

Role of software architect, architecture views, component and connector view, architecture style for C
& C view, discussion and evaluating architectures. Effort estimation, project scheduling and staffing,
software configuration management plan, quality assurance plan, risk management, project
monitoring plan.

Unit-3

Design principles, design notation and specification, structured design methodology, verification,
metrics.OO concepts, design concept, design methodology, metrics. Detailed design and PDL,
verification, Metrics and their scope, Qualities of a good Software metrics, classification of metrics,
Cost estimation models COCOMO, Quality attributes, SQA, Quality Standards, ISO 9000 and CMM.

Unit-4

Programming principles and guidelines, coding process, refactoring, verification, metrics. Testing
fundamentals, black-box testing, white-box testing, testing process, defect analysis and prevention,
metrics - reliability estimation. Types of CASE tools, advantages and components of CASE tools,
Unified Modeling Language (UML)

Suggested Readings:
1. Aggarwal, K.K., and Singh, Y., Software Engineering, 3rd Edition, New Age Publications, 2008.
2. Gill, N.S., Software Engineering, 1st Edition, Khanna Publications, 2003.
3. Jalote, P., An Integrated Approach to Software Engineering, 2nd Edition, Springer, 2013.
4. Mall, R., Fundamentals of Software Engineering, 4th Edition, PHI, 2014.
5. Pender, T., UML Bible, 1st Edition, Wiley, 2003.
6. Pressman, R. S., Software Engineering: A Practitioner’s Approach, 9th Edition, Tata McGraw
Hill, 2014.
7. Sommerville, I., Software Engineering, 10th Edition, Pearson, 2015.
Data Warehousing and Data Mining
Course Code: BT CS 604A
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● comprehend the various architectures and its application with data mining
● design and develop data mining algorithms to analyze raw real world data
● monitor and analyze to predict online digital activities

Unit-1: Data Warehousing, Business Analysis and OLAP


Basic Concepts, Data Warehousing Components, Building a Data Warehouse, Database Architectures
for Parallel Processing, Parallel DBMS Vendors, Multidimensional Data Model, Data Warehouse
Schemas for Decision Support, Concept Hierarchies, Characteristics of OLAP Systems, Typical
OLAP Operations, OLAP and OLTP.

Unit-2: Data Mining- Introduction

Introduction to Data Mining Systems, Knowledge Discovery Process, Data Mining Techniques,
Issues, Applications, Data Objects and attribute types, Statistical description of data, Data
Preprocessing, Cleaning, Integration, Reduction, Transformation and Discretization, Data
Visualization, Data similarity and dissimilarity measures.

Unit-3: Data Mining – Frequent Pattern Analysis

Mining Frequent Patterns, Associations and Correlations, Mining Methods, Pattern Evaluation
Method, Pattern Mining in Multilevel, Multi-Dimensional Space, Constraint Based Frequent Pattern
Mining, Classification using Frequent Patterns

Unit-4: Classification and Clustering

Decision Tree Induction, Bayesian Classification, Rule Based Classification, Classification by Back
Propagation, Support Vector Machines, Lazy Learners, Model Evaluation and Selection, Techniques
to improve Classification Accuracy, Clustering Techniques, Cluster analysis, Partitioning Methods,
Hierarchical Methods, Density Based Methods.

Suggested Readings:
1. Berson, A., and Smith, S.J., Data Warehousing, Data Mining & OLAP, 1st Edition, Tata McGraw
Hill, 2017.
2. Han, J., Pei, J., and Kamber, M., Data Mining Concepts and Techniques, 3rd Edition, Elsevier,
2011.
3. Margaret H.D., Data Mining Introductory and Advanced Topics, 3rd Impression, Pearson.
4. Pujari, A.K., Data Mining Techniques Paperback, 2nd Edition, Universities Press, 2010.
5. Soman, K.P., Diwakar, S., and Ajay, V., Insight into Data Mining Theory and Practice, 1st
Edition, PHI, 2009.
6. Witten, I.H., and Frank, E., Data Mining: Practical Machine Learning Tools and Techniques, 2nd
Edition, Elsevier, 2016.
Principle of Operating System Laboratory
Course Code: BT CS 605A
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to :
● make use of tools for solving synchronization problems
● compare and contrast various CPU scheduling algorithms
● understand the differences between segmented and paged memories

List of Practicals:
1. Simulate the following CPU scheduling algorithms
a. Round Robin
b. SJF
c. FCFS
d. Priority
2. Simulate all file allocation strategies
a. Sequential
b. Indexed
c. Linked
3. Simulate MVT and MFT memory management techniques.
4. Simulate all File Organization Techniques
a. Single level directory
b. Two level
c. Hierarchical
d. DAG
5. Simulate Bankers Algorithm for Dead Lock Avoidance
6. Simulate Bankers Algorithm for Dead Lock Prevention
7. Simulate all page replacement algorithms
a. FIFO
b. LRU
c. LFU
8. Simulate Paging technique of memory management.

Note: This is only the suggested list of practicals. Instructor may frame additional practicals
relevant to the course contents.
Software Engineering Laboratory
Course Code: BT CS 606A
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to :
● acquire the generic software development skill through various stages of SDLC
● implement and analyze the quality of software through software development with various
protocol based environment
● develop, maintain and evaluate large-scale software systems

List of Practicals:
1. Writing problem statements for systems of relevance.
2. To perform requirement analysis and develop SRS documents.
3. To draw basic DFDs.
4. Implement Use case diagram.
5. Implementing a Class and Object diagram.
6. To draw state-charts and activity diagrams.
7. To draw Sequence and Collaboration diagrams.
8. Program to Unit testing.
9. Implement integration testing.
10. To draw component and deployment diagrams.

Note: This is only the suggested list of practical. Instructor may frame additional practicals relevant to
the course contents.
Seminar
Course Code: BT CS 607A
L T P Credit: 02
0 2 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to :
● improve in oral communication skills through presentation
● improve in understanding research papers and prepare presentation material
● improve in analytical and reasoning ability and technical writing

Methodology
● To choose the area of interest
● To identify current literatures
● To choose state of the art survey paper/research paper
● To consult and get confirmed with departmental faculty
● To prepare the PPT
● To present as per schedule drawn by the department
● To prepare a technical report and submit to the department
Computer Graphics
Course Code: BT CS 621
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● configure the various computer graphics hardware and display technologies.
● implement various 2D and 3D objects transformation techniques.
● apply 2D and 3D viewing technologies into the real world applications

Unit-1
Introduction to Computer Graphics: What is Computer Graphics, Computer Graphics
Applications, Computer Graphics Hardware and software, Two dimensional.
Graphics Primitives: Points and Lines, Line drawing algorithms: DDA, Bresenham’s; Circle
drawing algorithms: Using polar coordinates, Bresenham’s circle drawing, midpoint circle drawing
algorithm; Filled area algorithms: Scanline: Polygon filling algorithm, boundary filled algorithm.
Unit-2
Two/Three Dimensional Viewing: The 2-D viewing pipeline, windows, viewports, window to
viewport mapping; Clipping: point, clipping line (algorithms): 4 bit code algorithm, Sutherland-cohen
algorithm, parametric line clipping algorithm (Cyrus Beck).
Polygon clipping algorithm: Sutherland-Hodgeman polygon clipping algorithm. Two-dimensional
transformations: transformations, translation, scaling, rotation, reflection, and composite
transformation.
Three-dimensional transformations: Three-dimensional graphics concept, Matrix representation of
3-D Transformations, Composition of 3-D transformation.
Unit-3
Viewing in 3D: Projections, types of projections, the mathematics of planar geometric projections,
coordinate systems.
Hidden surface removal: Introduction to hidden surface removal. The Z- buffer algorithm, scan line
algorithm, area sub-division algorithm.
Unit-4
Image Compression & Standards: Making still images; editing and capturing images; scanning
images; computer color models; color palettes; vector drawing; 3D drawing and rendering; JPEG-
objectives and architecture; JPEG-DCT encoding and quantization, JPEG statistical coding, JPEG
predictive lossless coding; JPEG performance; overview of other image file formats as GIF, TIFF,
BMP, PNG etc.

Suggested Readings:
1. Foley, J.D., Van, F.D., Van Dam, A., Feiner, S.K., Hughes, J.F., Angel, E., and Hughes, J.,
Computer Graphics Principles and Practices, 3rd Edition, Addison Wesley, 2013.
2. Gomes, J., Velho, L., and Sousa, M.C., Computer Graphics Theory and Practice, 1st Edition,
CRC Press, 2012.
3. Hearn, D., and Baker, M. P., Computer Graphics, 2nd Edition, Pearson, 2002.
4. Rogers, D. F., Procedural Elements for Computer Graphics, 2nd Edition, Tata McGraw Hill,
2001.
5. Watt, A., Fundamentals of 3Dimensional Computer Graphics, Addision Wesley, 1999.
Unix and Linux Programming
Course Code: BT CS 622
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to :
● understand the basic set of commands and utilities in Linux/Unix systems.
● learn the important Linux/Unix library functions and system calls
● understand the inner workings of Unix-like operating systems.

Unit- 1: Linux Startup and Shell Programming


User accounts, accessing Linux- starting and shutting process, Logging in and Logging out,
Command line, simple command, Unix file system: Linux/Unix files, inodes and structure and file
system related commands, Shell as command processor, shell variables, creating command
substitution, scripts, functions, conditionals, loops, customizing

Unit-2: Regular Expressions and Filters


Introducing regular expressions patterns, syntax, character classes, quantifiers, introduction to egrep,
sed.

Unit-3: The C/C++ Environment


The C compiler, vim editor, compiler options, managing projects, memory management, use of make
files, dependency calculations, memory management- dynamic and static memory, building and using
static and dynamic libraries, using ldd, soname, dynamic loader, debugging with gdb.

Unit-4: Processes in Linux


Processes, starting and stopping processes, initialization processes, rc and init files, job control- at,
batch, cron, time, network files, security, privileges, authentication, password administration,
archiving, Signals and signal handlers, Linux I/O system.

Suggested Readings:
1. Das, S., Your Unix- The Ultimate Guide, 4th Edition, Tata McGraw Hill, 2017.
2. Forouzan, B.A., and Gilberg, R.F., Unix and Shell Programming, 1st Edition, Cengage
Learning, 2009.
3. Goerzen, J., Linux Programming Bible, 1st Edition, IDG Books, New Delhi, 2000.
4. Matthew, N., Beginning Linux Programming, Richard Stones, 4th Edition, Wrox-Shroff, 2007.
5. Venkateshmurthy, M.G., Introduction to Unix and Shell Programming, 1st Edition, Pearson,
2005.
6. Welsh, M., and Kaufmann, L., Running Linux, 4th Edition, O'Reilly & Associates, 2002.
Computer Graphics Laboratory
Course Code: BT CS 626
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● draw geometric primitives
● write a program to display 3D objects as a 2D display using perspective transformation
● implement basic transformations on objects using

List of Practicals:
1. Write a program for 2D line drawing as Raster Graphics Display.
2. Write a program for circle drawing as Raster Graphics Display.
3. Write a program for polygon filling as Raster Graphics Display
4. Write a program for line clipping.
5. Write a program for polygon clipping.
6. Write a program for displaying 3D objects as a 2D display using perspective transformation.
7. Write a program for rotation of a 3D object about an arbitrary axis.
8. Write a program for Hidden surface removal from a 3D object.

Note: This is only the suggested list of practical. Instructor may frame additional practicals relevant to
the course contents.
Unix and Linux Programming Laboratory
Course Code: BT CS 627
L T P Credit: 01
0 0 2

Course Level Learning Outcomes


After successful completion of the course, the student will be able to :
● run various Unix commands on a standard Unix/Linux OS
● run C programs on Unix and able to handle Unix system calls
● write shell programs on Unix OS

List of Practicals:
1. Familiarize with Unix/Linux logging/logout and simple commands.
2. Familiarize with vim editor and Linux GUIs.
3. Using Bash shell develop simple shell programs.
4. Develop advanced shell programs using awk and grep.
5. Compile and debug various C programs using different options.
6. Learning of installation and upgradation of Linux operating system.
7. Install Linux on a PC having some other previously installed operating system. All OSs should be
usable.
8. As supervisor create and maintain user accounts, learn package installation, taking backups,
creation of scripts for file and user management, creation of startup and shutdown scripts using
at, cron etc.

Note: This is only the suggested list of practical. Instructor may frame additional practicals relevant
to the course contents.
Stochastic Processes and Queuing Theory
Course Code: BT CS 631
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to :
● apply the theory of discrete and continuous time Markov-processes to complex stochastic
systems.
● analyze communication, networking and networked control problems with the tools of
Markov-processes and queuing models
● derive and analyze main theoretic results for the modeling of queuing networks. Discuss the
computational issues and solution approaches.

Unit-1
Random variables, Functions of random variables, jointly distributed random variables. Expectation,
Expectation of functions of more than one random variable, Covariance and Correlation, Auto and
Cross Correlation, Correlation Coefficient, Parameter Estimation – Maximum Likelihood Estimation
and Maximum a Posteriori.

Unit-2
Stochastic Processes, Classification of stochastic processes, Stationary Random Processes- First order,
second order and nth order, the Bernoulli process, The Poisson process, Renewal process, Advanced
Renewal Theory, Renewal Function, Alternating Renewal Processes.

Unit-3
Markov Chains, Computation of n-step transition probabilities, Chapman-Kolmogorov theorem,
Classification of states of a Markov Chain, Distribution of times between state changes, Irreducible
finite chains with aperiodic states, Birth and Death processes, Pure Birth Process, Pure Death Process,
Non-Birth-Death Processes, Analysis of program execution time.

Unit-4
Introduction to Queuing Theory, General Queuing, Components of a queuing system, Deterministic
Queues, (M/M/1):(∞/FIFO)-Single server with infinite capacity, (M/M/k) : (∞/FIFO)- Multiple server
with infinite capacity, M/G/1 queuing system, M/G/1 with non-FIFO disciplines, M/G/∞, Queues
with time-varying arrival rate.

Suggested Readings:
1. Chitale, R. H., Probability and Queueing Theory, 1st Edition, Pearson, 2008.
2. Gross, D., and Shartle, J. F., Fundamental of Queueing Theory, 1st Edition, Tata McGraw
Hill, 2018.
3. Palaniammal, S., Probability and Queueing Theory, 1st Edition, Prentice Hall of India, 2011.
4. Populis, A., and Pillai, S.U., Probability, Random Variables, and Stochastic Process, 4th
Edition, TMH, 2002.
5. Sundarapandian, V., Probability, Statistics and Queueing Theory, 1st Edition, Prentice Hall of
India, 2009.
Wireless Communication
Course Code: BT CS 632
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● make critical assessment of wireless networks
● comprehend the fundamentals of Wireless Networks
● apply the knowledge gained in the development of MAC, Network Layer protocols of
Wireless Network

Unit-1
Introduction to Wireless Communication System: Evolution of mobile radio communications,
examples of wireless communication systems, paging systems, Cordless telephone systems,
comparison of various wireless systems.
Modern Wireless Communication System: Second generation cellular networks, third generation
wireless networks, wireless in local loop, wireless local area networks, Bluetooth and Personal Area
Networks.
Unit-2
Introduction to Cellular Mobile Systems: Spectrum Allocation, Basic Cellular Systems,
performance criteria, Operation of Cellular systems, Analog cellular systems, Digital cellular systems.
Cellular System Design Fundamentals: Frequency Reuse, channel assignment strategies, handoff
strategies, Interference and system capacity, tracking and grade off service, improving coverage and
capacity.

Unit-3
Multiple Access Techniques for Wireless Communication: Introduction to Multiple Access,
FDMA, TDMA, spread Spectrum multiple Access, space division multiple access, packet ratio,
capacity of cellular systems.
Wireless Networking: Difference between wireless and fixed telephone networks, development of
wireless networks, fixed network transmission hierarchy, traffic routing in wireless network, wireless
data services, common channel signaling, ISDN (Integrated Service Digital Networks), Advanced
Intelligent Networks.

Unit-4
Intelligent cell concept and application: Intelligent cell concept, Applications of intelligent
microcell systems, in building communication, CDMA cellular radio networks. Bluetooth, GSM
Suggested Readings:
1. Feher, K., Wireless Digital Communications: Modulations and Spread Spectrum
Applications, 1st Edition, Prentice Hall, 1995.
2. Lee, W.C.Y., Essentials of Wireless Communications, 1st Edition, Tata McGraw Hill, 2000.
3. Mark, J.W. and Zhuang, W., Wireless Communications and Networking, 1st Edition, PHI,
2002.
4. Rappaport, T.S., Wireless Communication: Principles & Practices, 2nd Edition, Prentice Hall,
2010.
5. Tse, D., and Viswanath, P., Fundamental of Wireless Communication, 1st Edition, Cambridge
University Press, 2005.
Distributed System
Course Code: BT CS 633
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to :
● analyze the principles of distributed systems and describe the problems and challenges
associated with these principles.
● implement distributed computing techniques
● design a distributed system that fulfills requirements with regards to key distributed systems
properties.

Unit-1
Characterization of Distributed Systems: Introduction, Hardware concepts, Software concepts, Design
Issue and challenges, Examples of distributed Systems.
Communication in Distributed Systems: Layered protocols, Asynchronous transfer mode Networks,
The Client – Server Model, Remote procedure call, Java RMI case study.
Unit-2
Synchronization in Distributed Systems:
Clock Synchronization, absence of global clock, Logical clocks, Lamport’s & vectors logical clocks,
Causal ordering of messages.
Distributed Mutual Exclusion: Classification of distributed mutual exclusion, Token based and non-
token-based algorithms, performance metric for distributed mutual exclusion algorithms.
Unit-3
Distributed Deadlock Detection: system model, deadlock prevention, avoidance, detection &
resolution, distributed deadlock detection algorithm.
Distributed Shared Memory: Introduction, Architecture of DSM Systems Design and implementation,
granularly, structure of shared memory space Consistency models.
Unit-4
Distributed File Systems: Distributed File System Design, Distributed File Systems Implementation,
Trends in Distributed File Systems.
Distributed Transaction: Flat and nested distributed transactions, Distributed Transaction Model,
Atomic Commit protocols, Two Phase Commit Protocol.
Suggested Readings:
1. Coulouris, G., Dollimore, J., Kindberg, T., and Blair, G., Distributed System: Concepts &
Design, 5th Edition, Pearson, 2009.
2. Ghosh, S., Distributed Systems: An Algorithmic Approach, CRC Press, 2014
3. Kshemakalyani, A.D., and Singhal, M., Distributed Computing, 2nd Edition, Cambridge
University Press, 2011.
4. Sinha, P. K., Distributed Operating Systems Concepts and Design, 4th Edition, PHI, 2012.
5. Tanenbaum, A.S., and Steen, M. V., Distributed Systems - Principles and Paradigms, 2nd
Edition, PHI, 2007.
Unified Modeling Language and Agile Methodology
Course Code: BT CS 634
L T P Credits: 03
3 0 0

Course Level Learning Outcomes


After successful completion of the course, the student will be able to:
● analyze existing problems with the team, development process and wider organization
● apply a thorough understanding of Agile principles and specific practices
● judge and craft appropriate adaptations to existing practices or processes depending upon
analysis of typical problems

Unit-1: UML & Object-Oriented Modeling


An Overview of UML, architecture, UML Modeling Concepts – system models & views, data types,
classes, objects, event & messages, object-oriented modeling; Modeling Relations- association,
aggregation composition, generalization, dependency and structural diagrams, Requirement
Elicitation- introduction, concepts & activities. Object oriented analysis design using diagrams such
as use-case diagrams, class diagrams, sequence diagrams, collaboration diagrams, activity diagrams,
object diagrams, interaction diagrams and state chart diagrams.
Unit-2: Fundamentals of Agile
The Genesis of Agile, Introduction and background, Agile Manifesto and Principles, Overview of
Scrum, Extreme Programming, Feature Driven development, Lean Software Development, Agile
project management, Design and development practices in Agile projects, Test Driven Development,
Continuous Integration, Refactoring, Pair Programming, Simple Design, User Stories, Agile Testing,
Agile Tools.
Unit-3: Agile Scrum Framework
Introduction to Scrum, Project phases, Agile Estimation, Planning game, Product backlog, Sprint
backlog, Iteration planning, User story definition, Characteristics and content of user stories,
Acceptance tests and Verifying stories, Project velocity, Burn down chart, Sprint planning and
retrospective, Daily scrum, Scrum roles – Product Owner, Scrum Master, Scrum Team, Scrum case
study, Tools for Agile project management.
Unit-4: Agile Software Design and Development
Agile design practices, Role of design Principles including Single Responsibility Principle, Open
Closed Principle, Liskov Substitution Principle, Interface Segregation Principles, Dependency
Inversion Principle in Agile Design, Need and significance of Refactoring, Refactoring Techniques,
Continuous Integration, Automated build tools, Version control.
Suggested Readings:
1. Booch, G., Rumbaugh, J., and Jacobson, I., Unified Modeling Language User Guide, 2nd
Edition, Addison Wesley, 2012.
2. Bruegge, B., and Dutoit, A. H., Object-Oriented Software Engineering Using UML Patterns
and Java, 3rd Edition, Pearson, 2013.
3. Fowler, M., UML Distilled: A Brief Guide To The Standard Object Modeling Language,
Addison-Wesley Professional, 2004.
4. Martin, R. C., Agile Software Development- Principles, Patterns and Practices, Subsequent
edition, Prentice Hall, 2013.
5. Schawber, K., and Beedle, M., Agile Software Development with Scrum, 1st Edition, Pearson,
2001.
Scheme and Syllabus for B. Tech. (Computer
Science and Engineering) (4th Year)

(Semester 7th and Semester 8th)

w.e.f. Session 2021-22

Department of
Computer Science and Engineering
School of Engineering & Technology

CENTRAL UNIVERSITY OF HARYANA


MAHENDERGARH-123031
HARYANA

1
Central University of Haryana
School of Engineering and Technology
Department of Computer Science and Engineering
B. Tech. 4thYEAR (SEMESTER–VII)

Teaching
S. Schedule
Course Code Course Title Credits
No.
L T P
1 BT CS 701 Machine Learning 3 0 0 3
2 BT CS 702 Principles of Cloud Computing 3 1 0 4
3 BT CS 703 Machine Learning Lab 0 0 2 1
4 BT CS 704 Minor Project 0 0 8 4
5 BT CS 705 Summer Training**** 0 2 0 2
6 DCEC – 4 / PE - 4
BT CS 721 Information Security 3 0 0 3
BT CS 722 Software Testing 3 0 0 3
BT CS 723 Big Data Analytics 3 0 0 3
BT CS 724 High Performance Computing 3 0 0 3
BT CS 725 Digital Image Processing 3 0 0 3
7 DCEC – 5 / PE – 5 Lab
BT CS 731 Competitive Programming 0 0 4 2
BT CS 732 MATLAB/Scilab/Octave 0 0 4 2
8 OE/GEC 3 1 0 4
Total 12 3 14 23

2
Central University of Haryana
School of Engineering and Technology
Department of Computer Science and Engineering
B. Tech. 4th YEAR (SEMESTER–VIII)

Group 1

Teaching
S. Course
Course Title Schedule Credits
No. Code
L T P
1 BT CS 801 Major Project 0 0 16 8
2 DCEC – 6 / PE - 6
BT CS 831 Software Project Management 3 0 0 3
BT CS 832 Natural Language Processing 3 0 0 3
BT CS 833 Professional Ethics and IPR 3 0 0 3
3 DCEC – 7 / PE - 7
BT CS 834 Internet of things 3 0 0 3
BT CS 835 Cyber Security 3 0 0 3
BT CS 836 Information Retrieval 3 0 0 3
4 OE/GEC 3 1 0 4
Total 9 1 16 18
Group 2

Teaching
S.
Course Code Course Title Schedule Credits
No.
L T P
1 BT CS 811 Industrial Internship 0 0 36 18
Total 0 0 36 18
L = Lecture, T = Tutorial, P = Practical, & C = Credits

List of Open electives$


Offered by another department {This is only an indicative list (Not Exhaustive)}

S.
No. Course Title
1 Embedded System Design
2 Digital Image Processing
3 Digital Signal Processing
4 Mechatronics
5 Bioinformatics
6 VLSI System Design
7 Optimization Techniques

3
8 Mobile Communication
9 Satellite Communication
10 Information Theory and Coding
11 Video Activity Detection
12 Remote Sensing
13 Soft Computing
14 Entrepreneurship
15 Electric Vehicle
16 Technical Writing
17 Remote Sensing and GIS
18 Reinforcement Learning
19 Deep Learning
20 Computational Complexity
21 Real-Time Systems
22 Computer Vision
23 Introduction to Robotics
24 Pattern Recognition and Applications
25 Health Research Fundamentals
26 Soft Skills
27 Project Management
28 Operational Research
$
Student can do the following courses through offline (in University Department) or through online
(MOOC/ NPTEL/Swyam). If the student chooses the online mode, he/ she has to submit the grade score
card.

4
Program Name: B. Tech.-Computer Science and Engineering
Course Code: Course Name: Machine Learning L T P C
BT CS 701 3 0 - 3
Year and th
4 year Contact hours per week: (3 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To introduce students to the basic concepts and techniques of Machine Learning.
2. To become familiar with regression methods, classification methods, clustering methods.
3. To enable students to apply machine learning concepts in real life problems.
Course Outcomes: On completion of the course, student would be able to:
CO701.1 Gain knowledge about basic concepts of machine learning
CO701.2 Identity machine learning techniques suitable for given problem
CO701.3 Solve the problems using various machine learning techniques
CO701.4 Apply dimensionality reduction techniques
CO701.5 Design application using machine learning techniques

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction
Introduction and Basic Concepts: Definition of ML, Taxonomy of
ML, types of learning, hypothesis space and inductive bias, CO701.1,
1 14
evaluation, cross-validation, Instance based learning, Feature CO701.2
reduction, Collaborative filtering-based recommendation,
Gradient Decent learning.
Kernel Methods and Support Vector Machines
The Two-Class Problem, Dual Representation, Soft Margin
Classification; Origins of Kernel methods, Kernel Mapping, The
CO701.1,
2 Kernel Trick; Constructing Kernels, Support Vector Machines: 13
CO701.2
Formulation and Computation; Radial Basis Function Networks;
Positive Semi-Definite Kernels, Linear Kernel, Polynomial
Kernel.
Clustering
Basic Clustering Techniques, Standard k-Means (Lloyd)
Algorithm, Generalized Clustering, Overpartitioning, Merging,
Modifications to the k-Means Algorithm, k-Means Wrappers, CO701.2,
3 Rough k-Means, Fuzzy k-Means, k-Harmonic Means Algorithm, 10 CO701.3,
Hybrid Clustering Algorithms; Estimation using Incomplete Data, CO701.4
Two classes, Multiple classes, Least squares for classification,
Fisher’s linear discriminant, Relation to least squares, Fisher’s
discriminant for multiple classes
Learning CO701.2
4 Learning a Class from Examples, Linear, Non-linear, Multi-class 8 CO701.4
and multi-label classification, Generalization error bounds: VC CO701.5

5
Dimension, Decision Trees: ID3, Classification and Regression
Trees, Regression: Linear Regression, Multiple Linear Regression,
Logistic Regression.
Introduction to clustering, Hierarchical: AGNES, DIANA,
Partitional: K-means clustering, KMode Clustering, Self-
Organizing Map, Expectation Maximization, Gaussian Mixture
Models

Text Books:
1. Alpaydin, E., 2020. Introduction to Machine Learning. MIT press.
2. Deisenroth, M.P., Faisal, A.A. and Ong, C.S., 2020. Mathematics for Machine Learning.
Cambridge University Press.
3. Kubat, M., 2017. An Introduction to Machine Learning. Springer, Cham.
4. Marsland, S., 2015. Machine Learning: An Algorithmic Perspective. CRC press.
5. Mohri, M., Rostamizadeh, A. and Talwalkar, A., 2018. Foundations of Machine Learning. MIT
press.
6. Murphy, K.P., 2012. Machine Learning: A Probabilistic Perspective. MIT press.

6
Course Code: Course Name: Principles of Cloud Computing L T P C
BT CS 702 3 1 - 4
Year and 4th year Contact hours per week: (4 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To understand the basics of Cloud Computing.
2. To explore the cloud architecture and virtualization technology
3. To learn about cloud management technique and cloud security
Course Outcomes: On completion of the course, student would be able to:
CO702.1 Having a clear understanding of the subject related concepts and of contemporary
issues.
CO702.2 Having an ability to design virtualized platforms and understand the services of
different cloud service providers.
CO702.3 Analyze the requirement of security in cloud environment.

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction
Definition of Cloud Computing: Defining a Cloud, Cloud Types
– NIST model, Cloud Cube model, Deployment models, Service
models, Cloud Reference model, Characteristics of Cloud
1 Computing, Benefits and advantages of Cloud Computing; Cloud 14 CO702.1
Architecture: A brief introduction on Infrastructure, Platforms,
Virtual Appliances, Communication Protocols, Applications,
Connecting to the Cloud by Clients; Services and Applications by
Type: IaaS, PaaS, SaaS, IDaaS and CaaS.
Virtualization: Use of Concepts of Abstraction and
Virtualization: Virtualization technologies and tools, Load
Balancing and Virtualization, Hypervisors, CO702.1,
2 13
Porting of applications in the Cloud; Concepts of Infrastructure as CO702.2
a Service; Use of IaaS Application frameworks; Use of Google,
Amazon and Microsoft Web Services
Cloud Management: Features of network management systems,
Monitoring of an entire cloud computing deployment stack – an
overview with mention of some products, Lifecycle management CO702.2,
3 10
of cloud services. CO702.3,
Cloud Security: Cloud security concerns, Security boundary,
Security service boundary, Security of data, Identity management.
Case Study on Open Source & Commercial Clouds:
4 8 CO702.3
Eucalyptus, Microsoft Azure, Amazon EC2, VM ware.

7
Cloud Federation: Need of cloud federation, Advantages, Cloud
federation Architecture, Pricing Model, Different Federation
Formation Frameworks, Load balancing.

Text Books:
1. Buyya, R., Vecchiola, C. and Selvi, S.T., 2013. Mastering Cloud Computing: Foundations and
Applications Programming. Newnes.
2. Miller, M., 2008. Cloud Computing. Pearson.
3. Moyer, C.M., 2011. Building Applications in the Cloud: Concepts, Patterns, and Projects. Pearson
Education India.
4. Sosinsky, B., 2010. Cloud Computing Bible. John Wiley & Sons.
5. Velte, A.T., Velte, T.J. and Elsenpeter, R., 2019. Cloud Computing: A Practical Approach. Tata
McGraw-Hill.

8
Course Code: Course Name: Machine Learning Laboratory L T P C
BT CS 703 0 0 2 1
Year and th
4 year Contact hours per week: (2 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To introduce basic concepts and applications of machine learning.
2. To help students to learn the application of machine learning in the different fields of
science.
Course Outcomes: On completion of the course, student would be able to:
CO703.1 Gain knowledge about basic concepts of machine learning
CO703.2 Identity machine learning techniques suitable for given problem
CO703.3 Solve the problems using various machine learning techniques
CO703.4 Apply dimensionality reduction techniques
CO703.5 Design application using machine learning techniques

Module COURSE SYLLABUS


Hrs COs
No List of Practicals
1 Implement Decision Tree learning. 2 CO703.1
2 Implement Logistic Regression. 2 CO703.1
3 Implement classification using Multilayer perceptron. 2 CO703.1
4 Implement classification using SVM 2 CO703.2
5 Implement Adaboost 2 CO703.2
6 Implement Bagging using Random Forests 2 CO703.2
7 Implement K-means Clustering to Find Natural Patterns in Data 2 CO703.3
8 Implement Hierarchical clustering. 2 CO703.3
9 Implement K-mode clustering 2 CO703.3
Implement Principal Component Analysis for Dimensionality
10 2 CO703.4
Reduction.
Implement Multiple Correspondence Analysis for Dimensionality
11 2 CO703.4
Reduction.
Implement Gaussian Mixture Model Using the Expectation
12 2 CO703.4
Maximization.
13 Evaluating ML algorithm with balanced and unbalanced datasets. 2 CO703.5
14 Comparison of Machine Learning algorithms. 2 CO703.5
15 Implement k-nearest neighbors’ algorithm 2 CO703.5

Text Books:
1. Alpaydin, E., 2020. Introduction to Machine Learning. MIT press.
2. Deisenroth, M.P., Faisal, A.A. and Ong, C.S., 2020. Mathematics for Machine Learning.
Cambridge University Press.
3. Kubat, M., 2017. An Introduction to Machine Learning. Springer, Cham.
4. Marsland, S., 2015. Machine learning: An Algorithmic Perspective. CRC press.

9
5. Mohri, M., Rostamizadeh, A. and Talwalkar, A., 2018. Foundations of Machine Learning. MIT
press.
6. Murphy, K.P., 2012. Machine Learning: A Probabilistic Perspective. MIT press.

10
Course Code: Course Name: Minor Project L T P C
BT CS 704 0 0 8 4
Year and th
4 year Contact hours per week: (8 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 60 TEE: 140
Course Objectives:
1. To address the real-world problems and find the required solution.
2. To design the problem solution as per the requirement analysis done.
3. To study the basic concepts of programming/ hardware/ emulator for Raspberry
pi/Arduino/ ARM Cortex/ Intel Galileo etc.
4. To implement the minor project intended solution for project-based learning.
5. To test the minor project successfully.
6. To improve the team building, communication and management skills of the students.
Course Outcomes: On completion of the course, student would be able to:
CO704.1 Demonstrate a through and systematic understanding of project contents.
CO704.2 Understand methodologies and professional way of documentation and
communication.
CO704.3 Know the key stages in development of the project.
CO704.4 Extend or use the idea in minor project for major project.

Minor Project
Students have to submit a project at the end of the semester. The student will submit a synopsis at
the beginning of the semester for approval from the departmental committee in a specified format.
The student will have to present the progress of the work through seminars or progress reports.
This course will be conducted largely as an individual or small group project under the direct
supervision of a member of academic staff. The specific project topic undertaken will reflect the
common interests and expertise of the student(s) and supervisor. Students will be required to:
1. Perform a literature search to review current knowledge and developments in the chosen
technical area;
2. Undertake detailed technical work in the chosen area using one or more of:
• theoretical studies
• computer simulations
• hardware construction;
3. Produce progress reports within the time frame specified for the project;
4. Deliver a seminar on the general area of work being undertaken and specific contributions
to that field;
5. Prepare a formal report describing the work undertaken and results obtained so far; and
6. Present the work during external viva including demonstrations of operational hardware
and software.

11
Course Code: Course Name: Summer Training L T P C
BT CS 705 0 2 0 2
Year and th
4 year Contact hours per week: (2 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 15 TEE: 35
Course Objectives:
1. To allow the students to relate the classroom learning outcomes to the actual engineering
field experiences in either governmental or private sectors.
2. To build up the student's disciplinary, ability and personality to communicate effectively
through teams with the most updated various industries and technologies.
3. To introduce the students for first time to their expecting careers.
4. To build up the relation between the college and the various industrial fields as well as
knowing the needs and expectations of these fields for the graduated students.
5. To enable the private and public organizations to identify the skills of the trainee, and
polarizing him/her for jobs.
Course Outcomes: On completion of the course, student would be able to:
CO705.1 An ability to apply knowledge of mathematics, science, and engineering
CO705.2 An ability to function as a team
CO705.3 An ability to identify, formulate, and solve engineering problems
CO705.4 An understanding of professional and ethical responsibility
CO705.5 An ability to communicate effectively
CO705.6 The broad education necessary to understand the impact of engineering solutions
in a global, economic, environmental, and societal context
CO705.7 A knowledge of contemporary issues
CO705.8 An ability to use the techniques, skills, and modern engineering tools necessary
for engineering practice.

Summer Training is a joint effort between the Engineering department, the public, and the private
sectors in the area of specialization to allow students to practice the skills and knowledge. ST
students are required to spend one and half months (6 working weeks) of practical training in a
relevant field in industry at the end of the sixth semester.
Summer Training Report: Practical Training conducted after sixth semester will be evaluated in
the seventh semester based on Viva-Voce.

12
Course Code: Course Name: Information Security L T P C
BT CS 721 3 0 - 3
Year and th
4 year Contact hours per week: (3 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To understand the concepts of classical encryption techniques and concepts of finite fields
and number theory.
2. To explore the working principles and utilities of various cryptographic algorithms
including secret key cryptography, hashes and message digests, and public key
algorithms.
3. To explore the design issues and working principles of various authentication protocols,
PKI standards.
4. To apply the concepts of cryptographic utilities and authentication mechanisms to design
secure applications
Course Outcomes: On completion of the course, student would be able to:
CO721.1 learn the mathematical fundamentals from abstract algebra and number theory for
the design and analysis of various cryptographic primitives.
CO721.2 understand the role of cryptographic techniques in modern communication
systems.
CO721.3 design cryptographic systems to meet the specifications in terms of security,
circuit complexity and power consumption by effectively making use of various
primitives
CO721.4 Investigate latest developments in cryptography and cryptanalysis through most
recent publications in small groups and prepare presentations on these topics

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Properties of arithmetic operations- Inverse Primes, GCD,
Euclidean Algorithm, Modular Arithmetic, Properties of Modular
1 14 CO721.1
Arithmetic, Computing Inverse, Fermat’s Theorem, Random
Number Generation.
Classical Cryptography – Substitution and Transposition Cipher,
Modern Cryptographic Techniques, Private Key Cryptosystems,
2 Block cipher, Standards, Data Encryption Standard, AES, Linear 13 CO721.2
and differential cryptanalysis Stream cipher, Key stream
generators, RC4 cryptosystem
Public key cryptosystems – One-way functions, Factorization
problem, RSA crypto system, Discrete logarithm problem, Elgamal
3 10 CO721.3
crypto system, Key management, Diffie Hellmann key exchange,
Digital Signatures, Elgamal DSA.
Message authentication requirements – Hash function, features
of MD5 and SHA algorithms, Security of Hash function, Message
4 8 CO721.4
Authentication Codes, Applications of authentication, electronic
mail security, SSL/ TLS, Digital Certificate and X509.

13
Text Books:
1. Cole, E., 2011. Network Security Bible. John Wiley & Sons.
2. Dummit, D.S. and Foote, R.M., 2004. Abstract Algebra (3rd Edition). Hoboken: Wiley.
3. Kranakis, E., 2013. Primality and cryptography. Springer-Verlag.
4. Stallings, W., 2006. Cryptography and Network Security, (4th Edition). Pearson Education India.
5. Stinson, D.R. and Paterson, M., 2018. Cryptography: Theory and Practice. CRC press.

14
Course Code: Course Name: Software Testing L T P C
BT CS 722 3 0 - 3
Year and 4th year Contact hours per week: (3 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To understand the basic software debugging methods.
2. To apply white box testing methods and techniques.
3. To apply black Box testing methods and techniques.
4. To analyze the test plans.
5. To apply the different testing tools (familiar with open-source tools)
6. To understand the quality Assurance models.
Course Outcomes: On completion of the course, student would be able to:
CO722.1 Identify various types of software risks and its impact on different software
application
CO722.2 make selection of test cases and their optimization
CO722.3 get aware of various activities in testing and to generate test data using tools
CO722.4 apply the object-oriented concepts on test data

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Software Testing, Importance of testing, Roles and
Responsibilities, Testing Principles, Attributes of Good Test, V-
1 Model SRS Verification, Source Code Reviews, Basic Introduction 14 CO722.1
to - Functional Testing, Structural Testing Cyclomatic Complexity,
Data Flow Testing, Mutation Testing.
Regression Testing: What is Regression Testing? Regression Test
cases selection, Reducing the number of test cases, Code coverage
2 13 CO722.2
prioritization technique. Reducing the number of test cases:
Prioritization guidelines, Priority category, Risk Analysis.
Software Testing Activities: Levels of Testing, Debugging, Testing
techniques and their applicability, Exploratory Testing Automated
3 Test Data Generation: Test Data, Approaches to test data 10 CO722.3
generation, Test Data Generation Tools, Software Testing Tools,
and Software test Plan.
Object Oriented Testing: Definition, Issues, Class Testing, Object
Oriented Integration and System Testing. Testing Web
4 Applications: Web Testing, User Interface Testing, Usability 8 CO722.4
Testing, Security Testing, Performance Testing, Database testing,
Post Deployment Testing.

Text Books:
1. Ammann, P. and Offutt, J., 2016. Introduction to Software Testing. Cambridge University Press.
2. Beizer, B., 2003. Software Testing Techniques. Dreamtech Press.

15
3. Chauhan, N., 2010. Software Testing: Principles and Practices. Oxford university press.
4. Hetzel, B., 1988. The Complete Guide to Software Testing. QED Information Sciences, Inc.
5. Jorgensen, P.C., 2013. Software Testing: A Craftsman's Approach. Auerbach Publications.
6. Myers, G.J., Sandler, C. and Badgett, T., 2011. The Art of Software Testing. John Wiley & Sons.

16
Course Code: Course Name: Big Data Analytics L T P C
BT CS 723 3 0 - 3
Year and 4th year Contact hours per week: (3 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To provide an overview of an exciting growing field of big data analytics.
2. To introduce the tools required to manage and analyze big data like Hadoop.
3. To teach the fundamental techniques and principles in achieving big data analytics with
scalability and streaming capability.
Course Outcomes: On completion of the course, student would be able to:
CO723.1 Having a clear understanding of the subject related concepts and of contemporary
issues.
CO723.2 Having an ability to design and conduct experiments, as well as to analyze and
interpret data
CO723.3 Having an ability to use techniques, skills and modern engineering tools necessary
for engineering practice

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction to big data and analytics: Big Data Overview
Characteristics of Big Data Business Intelligence vs Data
1 14 CO723.1
Analytics. Data Analytics Life Cycle Data Analytics in Industries
Exploring Big Data Challenges in handling Big Data.
Big Data Tools: Need of Big data tools - understanding distributed
systems - Overview of Hadoop comparing SQL databases and
Hadoop Hadoop Eco System - Distributed File System: HDFS, CO723.1,
2 13
Design of HDFS writing files to HDFS Reading files from HDFS. CO723.2
Hadoop Daemons - Hadoop Cluster Architecture YARN
Advantages of YARN.
Introduction to MapReduce: Developing MapReduce Program
Anatomy of MapReduce Code -Simple Map Reduce Program -
counting things Map Phase shuffle and sort - Reduce Phase Master
3 10 CO723.2
slave architecture Job Processing in hadoop Map Reduce
Pipelining. Use of Combiner - Block vs Split Size - working with
Input and output format Key, Text, Sequence
Frameworks: Applications on Big Data Using Pig and Hive –
Data processing operators in Pig – Hive services – HiveQL – CO723.3
4 8
Querying Data in Hive - fundamentals of HBase and ZooKeeper -
IBM InfoSphere BigInsights and Streams.

17
Text Books:
1. Baesens, B., 2014. Analytics in a Big Data World: The Essential Guide to Data Science and Its
Applications. John Wiley & Sons.
2. Bahga, A. and Madisetti, V., 2016. Big Data Science & Analytics: A Hands-On Approach. VPT
Publisher.
3. Leskovec, J., Rajaraman, A. and Ullman, J.D., 2020. Mining of Massive Data Sets. Cambridge
university press.
4. White, T., 2012. Hadoop: The Definitive Guide. (3rd Edition) " O'Reilly Media, Inc.".
5. White, T., 2015. Hadoop: The Definitive Guide. (4th Edition) " O'Reilly Media, Inc.".
6. Zikopoulos, P. and Eaton, C., 2011. Understanding Big Data: Analytics for enterprise Class
Hadoop and Streaming Data. McGraw-Hill Osborne Media.

18
Course Code: Course Name: High Performance Computing L T P C
BT CS 724 3 0 - 3
Year and 4th year Contact hours per week: (3 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To provide systematic and treatment of the hardware and the software high performance
techniques involved in current day computing.
2. To introduce the fundamentals of high-performance computing with the graphics
processing units and many integrated cores using their architectures and corresponding
programming environments
3. To introduce the learner to fundamental and advanced parallel algorithms through the
GPU programming environments
Course Outcomes: On completion of the course, student would be able to:
CO724.1 To knowledge the overview and analyze the performance metrics of high-
performance computing
CO724.2 To comprehend the various High Performance Computing Paradigms and Job
Management Systems
CO724.3 To design and develop various applications with OpenMP, MPI and CUDA
CO724.4 To analyze the benchmarks of high-performance computing
CO724.5 To demonstrate the various emerging trends of high-performance computing
CO724.6 To apply high performance computing concepts in problem solving

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction to High Performance Computing (HPC):
Overview of Parallel Computers and high-performance computing
(HPC), History of HPC, Numerical and HPC libraries,
CO724.1,
1 Performance metrics. 14
CO724.2
HPC Paradigms: Supercomputing, Cluster Computing, Grid
Computing, Cloud Computing, Many cores Computing, Peta scale
Systems
Parallel Programming: Introduction to OpenMP, Parallel
constructs, Runtime Library routines, Work-sharing constructs,
CO724.2,
2 Scheduling clauses, Data environment clauses, atomic, master No 13
CO724.3
wait Clause, Barrier Construct, overview of MPI, MPI Constructs,
OpenMP vs MPI.
Batch scheduling: Condor, Slurm, SGE, PBS, Light weight Task
Scheduling: Falkon, Sparrow
Introduction to GPU Computing, CUDA Programming Model,
CO724.4,
3 CUDA API, Simple Matrix, Multiplication in CUDA, CUDA 10
CO724.5
Memory Model, Shared Memory Matrix Multiplication,
Additional CUDA API Features

19
Achieving Performance: Measuring performance, identifying
performance bottlenecks, Partitioning applications for
heterogeneous resources, Using existing libraries and frameworks. CO724.5
4 8
HPC Benchmarks: HTC, MTC (Many Tasks Computing), Top CO724.6
Super computers in the world, Top Super Computer architectural
details, Exploring HPC Benchmarks: HPL, Stream.

Text Books:
1. Czech, Z.J., 2017. Introduction to Parallel Computing. Cambridge University Press.
2. Eijkhout, V., van de Geijn, R. and Chow, E., 2016. Introduction to High Performance Scientific
Computing. Zenodo.
3. Farber, R., 2011. CUDA Application Design and Development. Elsevier.

20
Course Code: Course Name: Digital Image Processing L T P C
BT CS 725 3 0 - 3
Year and 4th year Contact hours per week: (4 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To introduce the basic principles of digital images,
2. To understand the image data structures,
3. To study the image processing algorithms.
Course Outcomes: On completion of the course, student would be able to:
CO725.1 Understand the fundamental concepts of a digital image processing system
CO725.2 Analyze images in the frequency domain using various transform
CO725.3 Evaluate the techniques for image enhancement and image restoration
CO725.4 Interpret image compression standards
CO725.5 Categorize various compression techniques

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction
Image Processing Fourier Transform and Z-Transform, Causality
and stability, Toeplit and Circulate Matrics, orthogonal and unitary
Matrices and Kroenker product, Markov Processes, KI Transform,
Mean square Estimates and Orthogonal Principles
Image sampling & Quantization: Band Limited Image, Sampling
CO725.1,
1 Versus Replication, Reconstruction of Image from samples 14
CO725.2
Sampling Theorem, Sampling Theorem for Random Fields,
Optimal Sampling, Non-rectangular Grid Sampling, Sampling
Aperture, Display Aperture/ Interpolation Functions, Lagrange
Interpolation, Moire Effect
Image Quantization: Uniform Optimal Quantizer, Properties of
Mean Square Quantizer, Compandor Design, Visual Quantization
Image Transforms
Two Dimensional Orthogonal and Unitary Transforms and their
properties, One Dimensional and Two Dimensional DFT, Cosine,
Sine, Hadamard, SLANT, HAAR and KI Transforms and their
2 properties, Approximation to KI Transforms. 13 CO725.2
Image representation by stochastic models: One Dimensional
Causal Models, AR, ARMA models, Spectral factorization, Non
Causal Representation, Image Decomposition.
Image Enhancement and Restoration
3 Point Operation, Histogram Modeling, Spatial Operations, 10 CO725.3
Transform Operations, Multispectral Image Enhancement.

21
Image Filtering: Image Observation Models, Inverse and Wiener
filter, FIR Wiener Filters, Filtering using Image Transform, Causal
Models and recursive filtering, Maximum entropy restoration,
Extrapolation of band limited signal.
Image Analysis and Image Compression
Spatial feature extraction, Edge detection, Boundary extraction,
Boundary representations, Region representations, Moment
representations, Structures, Texture, Image Segmentation, Image CO725.4,
4 Classification 8
CO725.5
Image Reconstruction from Projections: Data Compression: Pixel
Coding, Predictive Techniques, Transform Coding Theory,
Transform coding of Image, Coding of two-tone image.

Text Books:
1. Dougherty, E. R., 2020. Digital image processing methods. CRC Press.
2. Gonzalez, R.C., and Woods, R. E., 2009. Digital Image Processing. Pearson 3rd Edition, Cham.
3. Jain, A.K., 1989. Fundamentals of Digital Image Processing. Prentice-Hall, Inc.
4. Pratt, W.K., 2007. Digital Image Processing. John Wiley & Sons Inc., New York.
5. Shih, F. Y., 2017. Image processing and mathematical morphology: fundamentals and
applications. CRC press.

22
Course Code: Course Name: Competitive Programming L T P C
BT CS 731 0 0 4 2
Year and th
4 year Contact hours per week: (4 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. Introduce the competitive programming.
2. To understand the concepts of Data Structures and Algorithms
3. To apply in the programming challenges in competitive platforms like codechef.com,
uva.onlinejudge.com
4. To make students aware about the approaches applied at the world competitions.
Course Outcomes: On completion of the course, student would be able to:
CO731.1 describe how algorithmic problems are solved
CO731.2 recognize the time and memory complexity of an algorithm or a structure
CO731.3 analyse the given problem and recognize subproblems
CO731.4 assemble the solutions of subproblems to solve the whole problem
CO731.5 assess advantages and shortcomings of different algorithms

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction: What is Competitive Programming, Programming
Techniques, Recursive Algorithms, Bit Manipulation, Efficiency
(Time complexity) with examples.
1 10 CO731.1
Sorting and Searching: Bubble Sort, Merge sort, Sorting Lower
Bound, Counting Sort, Sweep Line algorithms, Scheduling Events,
Tasks and Deadlines, Binary Search.
Data Structures: Dynamic Arrays, Set Structures, Set versus
Sorting, Map Versus Array, Priority Queue versus Multiset.
Dynamic Programming: Basic concepts, When Greedy Fails,
2 12 CO731.2
Finding an Optimal Solution, Counting Solutions, Longest
Increasing Subsequence, Paths in a Grid, Knapsack Problems,
From permutations to subsets, Counting Tilings.
Graph Algorithms: Basic of Graphs, Graph Traversal, Shortest
Paths, Directed Acyclic Graphs, Successor Graphs, Minimum
Spanning Trees. CO731.3,
3 12
Algorithm Design Topics: Bit-parallel Algorithms, Amortized CO731.4
Analysis, Finding Minimum Values
Range Queries: Queries on Static Arrays, Tree Structures
Tree Algorithms: Basic Techniques, Tree Queries (finding
ancestors, subtrees and paths, lowest common Ancestors, Merging
Data Structures).
4 Mathematics: Number Theory, Combinatorics, Matrices, 14 CO731.5
Probability, Game Theory
String Algorithms: Basic topics, String Hashing, Z-algorithm,
Suffix Arrays

23
Text Books:
1. Halim, S., Halim, F., Skiena, S. S., and Revilla, M. A., 2013. Competitive Programming 3.
Lulu Independent Publish.
2. Laaksonen, A., 2020. Guide to Competitive Programming. Springer International
Publishing.

24
Course Code: Course Name: MATLAB L T P C
BT CS 732 0 0 4 2
Year and 4th year Contact hours per week: (4 Hrs.)
Semester 7th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To learn fundamental computer programming concepts such as variables, control
structures, functions and many others.
2. To learn about various data types and how to handle them in MATLAB.
3. To learn the powerful support MATLAB provides for working with matrices.
4. To learn about file input/output.
Course Outcomes: On completion of the course, student would be able to:
CO732.1 Understand the main features of the MATLAB development environment
CO732.2 Use the MATLAB GUI effectively
CO732.3 Write simple programs in MATLAB to solve scientific and mathematical
problems
CO732.4 Create and control simple plot and user-interface graphics objects in MATLAB

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction to MATLAB: Getting Started, Scripts, Making
Variables, Manipulating Variables, Basic Plotting.
1 14 CO732.1
Visualization and Programming: Functions, Flow Control, Line
Plots, Image/Surface Plots, Efficient Codes, Debugging
Solving Equations, Curve Fitting, and Numerical Techniques:
2 Linear Algebra, Polynomials, Optimization, 13 CO732.2
Differentiation/Integration, Differential Equations
Advanced Methods: Probability and Statistics, Data Structures,
3 10 CO732.3,
Images, File I/O
Various Functions and Toolboxes: Documentation, Miscellaneous
4 Useful Functions, Graphical User Interfaces, Simulink, Symbolic 8 CO732.4
Toolbox, Image Processing, Hardware Interface

Text Books:
1. Dyer, K. B. (2018). Introduction to MATLAB®. In Introduction to Mechanism Design (pp. 79-
100). CRC Press.
2. Etter, D.M., Kuncicky, D.C. and Hull, D.W., 2002. Introduction to MATLAB. Prentice Hall.
3. Lyshevski, S.E., 2005. Engineering and Scientific Computations using MATLAB. John Wiley &
Sons.
4. Moore, H. and Sanadhya, S., 2007. MATLAB for Engineers. Upper Saddle River, New Jersey:
Prentice Hall.
5. Sigmon, K. and Davis, T.A., 2004. MATLAB Primer. Chapman and Hall/CRC.

25
Course Code: Course Name: Major Project L T P C
BT CS 801 0 0 16 8
Year and th
4 year Contact hours per week: (16 Hrs.)
Semester 8th Semester Exam: (3hrs.)
Pre-requisite Minor Project Evaluation
of course CIE: 60 TEE: 140
Course Objectives:
1. To offer students a glimpse into real world problems and challenges that need IT based
solutions.
2. To enable students to create very precise specifications of the IT solution to be designed.
3. To improve the team building, communication and management skills of the students.
Course Outcomes: On completion of the course, student would be able to:
CO801.1 Understand project characteristics and various stages of a project.
CO801.2 To enable students to create very precise specifications of the IT solution to be
designed.
CO801.3 Analyze the learning and understand techniques for Project planning, scheduling
and Execution Control
CO801.4 Build and test the major project successfully
CO801.5 develop effective communication skill by delivering a seminar based on major
project.

Major Project
Students have to submit a project at the end of the semester. The student will submit a synopsis at
the beginning of the semester for approval from the departmental committee in a specified format.
The student will have to present the progress of the work through seminars or progress reports.
This course will be conducted largely as an individual or small group project under the direct
supervision of a member of academic staff. The specific project topic undertaken will reflect the
common interests and expertise of the student(s) and supervisor. Students will be required to:
1. Perform a literature search to review current knowledge and developments in the chosen
technical area;
2. Undertake detailed technical work in the chosen area using one or more of:
o Theoretical studies
o Computer simulations
o Hardware construction;
3. Produce progress reports within the time frame specified for the project;
4. Deliver a seminar on the general area of work being undertaken and specific
contributions to that field;
5. Prepare a formal report describing the work undertaken and results obtained so far; and
Present the work during external viva including demonstrations of operational hardware and
software.

26
Course Code: Course Name: Software Project Management L T P C
BT CS 831 3 0 - 3
Year and 4th year Contact hours per week: (3 Hrs.)
Semester 8th Semester Exam: (3hrs.)
Pre-requisite Software Engineering Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To introduce the important concepts of project management related to managing software
development.
2. To make students familiar with the different activities involved in Software Project
Management.
3. To successfully plan and implement a software project management activity, and to
complete a specific project in time with the available budget.
Course Outcomes: On completion of the course, student would be able to:
CO831.1 Identify the need for Software Project Management
CO831.2 Identify different techniques for software cost estimation
CO831.3 Understand activity planning and risk management
CO831.4 Manage and control projects

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Project Evaluation and Project Planning: Importance of
Software Project Management, Activities Methodologies,
Categorization of Software Projects, Setting objectives,
1 14 CO831.1
Management Principles, Management Control, Project portfolio
Management, Cost-benefit evaluation technology, Risk evaluation,
Strategic program Management, Stepwise Project Planning.
Project Life Cycle and Effort Estimation: Software process and
Process Models, Choice of Process models, Mental delivery, Rapid
Application development, Agile methods, Extreme Programming,
2 SCRUM, managing interactive processes, Basics of Software 13 CO831.2
estimation, Effort and Cost estimation techniques, COSMIC Full
function points, COCOMO II- A Parametric Productivity Model,
Staffing Pattern.
Activity Planning and Risk Management: Objectives of Activity
planning, Project schedules, Activities, Sequencing and scheduling,
Network Planning models, Forward Pass & Backward Pass
3 techniques, Critical path (CRM) method, Risk identification, 10 CO831.3
Assessment, Monitoring, PERT technique, Monte Carlo
simulation, Resource Allocation, Creation of critical patterns, Cost
schedules.
Project Management and Control: Framework for Management
4 and control, Collection of data Project termination, visualizing 8 CO831.4
progress, Cost monitoring, Earned Value Analysis, project

27
tracking, change control, Software Configuration Management,
Managing contracts, Contract Management.

Text Books:
1. Futrell, R.T., Shafer, D.F. And Shafer, L., 2002. Quality Software Project Management. Prentice
Hall Professional.
2. Meredith, J.R., Shafer, S.M. And Mantel Jr, S.J., 2017. Project Management: A Strategic
Managerial Approach. John Wiley & Sons.
3. Royce, W., 1998. Software Project Management. Pearson Education India.
4. Stellman, A. And Greene, J., 2005. Applied Software Project Management. " O'Reilly Media, Inc.".
5. Wysocki, R.K., 2010. Effective Software Project Management. John Wiley & Sons.

28
Course Code: Course Name: Natural Language Processing L T P C
BT CS 832 3 0 - 3
Year and th
4 year Contact hours per week: (3 Hrs.)
Semester 8th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To introduce the fundamental concepts and techniques of natural language processing.
2. To give students a clear understanding of linguistics methods, various tools and aspects of
NLP.
3. To gain an in-depth understanding of the computational properties of natural languages
and the commonly used algorithms for processing linguistic information.
Course Outcomes: On completion of the course, student would be able to:
CO832.1 Describe the challenges involved in developing NLP solutions
CO832.2 Describe various recent statistical methods in natural language processing
CO832.3 Develop the linguistics and their application to part-of-speech tagging
CO832.4 Develop background to various tools and aspects of NLP like syntax and semantic
analysis, parsing, machine translation, information retrieval and statistical discourse
processing

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction: NLP tasks in syntax, semantics, and pragmatics.
Applications such as information extraction, question answering,
1 14 CO832.1
and machine translation. The problem of ambiguity. The role of
machine learning. Brief history of the field.
N-gram Language Models: The role of language models. Simple
N-gram models. Estimating parameters and smoothing. Evaluating
language models.
2 13 CO832.2
Part of Speech Tagging and Sequence Labeling: Lexical syntax.
Hidden Markov Models (Forward and Viterbi algorithms and EM
training)
Syntactic parsing: Grammar formalisms and treebanks. Efficient
parsing for context-free grammars (CFGs). Statistical parsing and
probabilistic CFGs (PCFGs). Lexicalized PCFGs. Neural shift-
3 reduce dependency parsing 10 CO832.3
Semantic Analysis: Lexical semantics and word-sense
disambiguation. Compositional semantics. Semantic Role Labeling
and Semantic Parsing.
Mechanics of Speech: Speech Production Mechanism, Nature of
Speech Signal, Discrete Time Modeling of Speech Production,
Representation of Speech Signals, Classification of Speech Sounds,
4 8 CO832.4
Phones, Phonemes, Phonetics, IPA and Phonetic Alphabets,
Articulatory Features, Auditory Perceptions, Anatomical Pathways
from Ear to the Perception of Sound Peripheral Auditory System.

29
Text Books:
1. Hapke, H., Howard, C. and Lane, H., 2019. Natural Language Processing in Action. Simon and
Schuster.
2. Jurafsky, D., 2000. Speech & Language processing. Pearson Education India.
3. Manning, C. and Schutze, H., 1999. Foundations of Statistical Natural Language Processing. MIT
press.
4. Rabiner, L.R. and Juang, B.H., 1999. Fundamentals of Speech Recognition. Tsinghua University
Press.
5. Thanaki, J., 2017. Python Natural Language Processing. Packt Publishing Ltd.

30
Course Code: Course Name: Professional Ethics and IPR L T P C
BT CS 833 3 0 - 3
Year and th
4 year Contact hours per week: (3 Hrs.)
Semester 8th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To provide basic knowledge about engineering Ethics, Variety of moral issues and Moral
dilemmas, Professional Ideals and Virtues
2. To provide basic familiarity about Engineers as responsible Experimenters, Research
Ethics, Codes of Ethics, Industrial Standards, Exposure to Safety and Risk, Risk Benefit
Analysis
3. To have an idea about the Collegiality and Loyalty, Collective Bargaining, Confidentiality,
Occupational Crime, Professional, Employee, Intellectual Property Rights.
4. To have an adequate knowledge about MNC’s, Business, Environmental, Computer Ethics,
Honesty, Moral Leadership, sample Code of Conduct.
Course Outcomes: On completion of the course, student would be able to:
CO833.1 Identify and analyze an ethical issue in the subject matter under investigation or in
a relevant field
CO833.2 Identify the multiple ethical interests at stake in a real-world situation or practice
CO833.3 Articulate what makes a particular course of action ethically defensible
CO833.4 Assess their own ethical values and the social context of problems
CO833.5 Identify ethical concerns in research and intellectual contexts, including academic
integrity, use and citation of sources, the objective presentation of data, and the
treatment of human

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Values: Concept, Types, Rokeach Value Survey
Different Kinds of Values: Individual, Societal, Material,
Psychological, Cultural, Moral and Ethical, Spiritual; The
Burgeoning Crises at Each of these levels. CO833.1,
1 10
Modern Approach to the Study of the Values: Analyzing CO833.2
Individual Human Values such as Creativity, Freedom, Wisdom
and Love; Value Spectrum for a Good Life; The Indian Concept of
Values, Comparison of Eastern and Western concept of values.
Ethics: Values, Morals and Ethics; Need for Ethics in Professional
Life; Kohlberg’s Theory of Moral Development and its
Applicability to Engineers. CO833.3,
2 12
Professional Ethics: Values in Work Life; Professional Ethics and CO833.4
Ethos; Codes of Conduct, Whistle-Blowing, Corporate Social
Responsibility, Case Studies on Ethics in Business.
Introduction to IPR: Nature and Enforcement, International
3 12 CO833.4
Character of IPRs, Role of IPRs in Economic Development.

31
Patents: Introduction to Patents, Object of Patent Law, Inventions
not Patentable, Obtaining Patents, Rights and Obligations of a
Patentee.
Copyrights: Introduction to Copyrights, Subject-Matters of
Copyright, Rights Conferred by Copyright, Infringement,
Assignment and Licensing of Copyrights, Copyright Societies,
International Copyright, Performer’s Rights.
Trademarks: Functions, Significance and types of Trademarks,
Distinctiveness and Deceptive Similarity, Registration Procedure,
Trademark Registry, Grounds for Refusal of Registration of
4 Trademarks, Concurrent Use, Character Merchandising. 14 CO833.5
Trade Secrets: Meaning, Types of Trade Secrets, Statutory
Position of Trade Secrets in India, Proofs Required in Trade Secret
Litigation Case.

Text Books:
1. Durkheim, E., 2013. Professional Ethics and Civic Morals. Routledge.
2. Fleddermann, C.B., 1999. Engineering Ethics. Upper Saddle River, NJ: Prentice Hall.
3. Friedman, B. and Kahn Jr, P.H., 2007. Human Values, Ethics, and Design. In The human-computer
interaction handbook (pp. 1267-1292). CRC press.
4. Govindarajan, M., Natarajan, S. and Senthilkumar, V.S., 2009. Engineering Ethics Includes Human
Values. Prentice-Hall of India Private Limited.
5. Harris Jr, C.E., Pritchard, M.S., Rabins, M.J., James, R. and Englehardt, E., 2013. Engineering
Ethics: Concepts and Cases. Cengage Learning.
6. Naagarazan, R.S., 2007. A Textbook on Professional Ethics and Human Values. New Age
International.
7. Piccolo, F. L. (2016). Ethics and planning research. Routledge.
8. Whitbeck, C., 2011. Ethics in Engineering Practice and Research. Cambridge University Press.

32
Course Code: Course Name: Internet of Things L T P C
BT CS 834 3 0 - 3
Year and th
4 year Contact hours per week: (3 Hrs.)
Semester 8th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To understand the definition and significance of the Internet of Things
2. To gives a foundation in the Internet of Things, including the components, tools, and
analysis
3. To understand the factors that contributed to the emergence of IoT
4. To examine the potential business opportunities that IoT can uncover
Course Outcomes: On completion of the course, student would be able to:
CO834.1 Able to understand the application areas of IOT
CO834.2 Able to realize the revolution of Internet in Mobile Devices, Cloud & Sensor
Networks
CO834.3 Able to understand building blocks of Internet of Things and characteristics

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction To Internet of Things: Definition & Characteristics
of IoT - Challenges and Issues - Physical Design of IoT, Logical
Design of IoT - IoT Functional Blocks, Security.
1 14 CO834.1
Components In Internet of Things: Control Units
Communication modules Bluetooth Zigbee Wifi GPS- IOT
Protocols, MQTT, Wired Communication, Power Sources.
Technologies Behind IoT: Four pillars of IOT paradigm, - RFID,
Wireless Sensor Networks, SCADA (Supervisory Control and CO834.1,
2 13
Data Acquisition), M2M - IOT Enabling Technologies - BigData CO834.2
Analytics, Cloud Computing, Embedded Systems.
Programming The Microcontroller For IoT: Working
principles of sensors IOT deployment for Raspberry Pi /Arduino
/Equivalent platform Reading from Sensors, Communication:
3 Connecting microcontroller with mobile devices, communication 10 CO834.2,
CO834.3
through Bluetooth, wifi and USB - Contiki OS.
Resource Management in IoT: Clustering, Clustering for
Scalability, Clustering Protocols for IOT.
IoT Applications and case studies: Business models for the
internet of things, Smart city, smart mobility and transport, smart
4 8 CO834.3
buildings and infrastructure, smart health, environment monitoring
and surveillance.

33
Text Books:
1. Bahga, A. and Madisetti, V., 2014. Internet of Things: A hands-on approach. Vpt.
2. Doukas, C., 2012. Building Internet of Things with the ARDUINO. CreateSpace Independent
Publishing Platform.
3. Greengard, S. (2021). The internet of things. MIT press.
4. Hassan, Q. F., & Madani, S. A. (Eds.). (2017). Internet of things: Challenges, advances, and
applications. CRC Press.
5. Uckelmann, D., Harrison, M. and Michahelles, F. eds., 2011. Architecting the Internet of Things.
Springer Science & Business Media.
6. Vermesan, O. and Friess, P., 2014. Internet of Things-from Research and Innovation to Market
Deployment. Aalborg: River publishers.

34
Course Code: Course Name: Cyber Security L T P C
BT CS 835 3 0 - 3
Year and th
4 year Contact hours per week: (3 Hrs.)
Semester 8th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. Exhibit knowledge to secure corrupted systems, protect personal data, and secure
computer networks in an organization.
2. Practice with an expertise in academics to design and implement security solutions.
3. Understand key terms and concepts in Cryptography, Governance and Compliance.
4. Develop cyber security strategies and policies
5. Understand principles of web security and to guarantee a secure network by monitoring
and analyzing the nature of attacks through cyber/computer forensics software/tools.
Course Outcomes: On completion of the course, student would be able to:
CO835.1 To make a solid foundation in digital security to protect device from threats.
CO835.2 To learn access control mechanism and understand how to protect servers.
CO835.3 To understand the importance of a network basics and brief introduction on
security of network protocols.
CO835.4 To understand cyber-attacks and learn data privacy issues and preventive
measures.

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Basics of digital security, protecting personal computers and
devices, protecting devices from Virus and Malware, Identity,
1 Authentication and Authorization, need for strong credentials, 14 CO835.1
keeping credentials secure, Protecting servers using physical and
logical security.
Networking basics (home network and large-scale business
networks), Networking protocols, Security of protocols, SSL/ TLS,
2 13 CO835.2
Network security basics, basics of error control mechanism, Secure
Electronic Transactions, Web Security Considerations.
Database and program security, OS security, Security policies,
Models of Security, IP security Architecture, Security of Databases,
3 10 CO835.3
Reliability and Integrity, Protection of information, Program
Security, Malicious Code, Virus Signatures, Trapdoors.
Introduction to cyber-attacks, application security (design,
development and testing), operations security, monitoring,
identifying threats and remediating them, Principles of data security
4 8 CO835.4
- Confidentiality, Integrity and Availability, Data Privacy, Data
breaches, preventing attacks and breaches with security controls,
Compliance standards, Computer Ethics.

35
Text Books:
1. Brooks, C.J., Grow, C., Craig, P. and Short, D., 2018. Cybersecurity Essentials. John Wiley &
Sons.
2. Graham, J., Olson, R. and Howard, R. eds., 2016. Cyber Security Essentials. CRC Press.
3. Gupta, B.B., Agrawal, D.P., and Wang, H., 2018. Computer and Cyber Security: Principles,
Algorithm, Applications, and Perspectives. CRC Press.
4. Krutz, R.L. and Vines, R.D., 2010. Cloud Security: A Comprehensive Guide to Secure Cloud
Computing. Wiley Publishing.
5. Pfleeger, C.P., 1988. Security in Computing. Prentice-Hall, Inc.
6. Sammons, J. and Cross, M., 2016. The Basics of Cyber Safety: Computer and Mobile Device Safety
Made Easy. Elsevier.
7. Wu, C.H.J. and Irwin, J.D., 2016. Introduction to Computer Networks and Cybersecurity. CRC
Press.

36
Course Code: Course Name: Information Retrieval L T P C
BT CS 836 3 0 - 3
Year and th
4 year Contact hours per week: (3 Hrs.)
Semester 8th Semester Exam: (3hrs.)
Pre-requisite Nil Evaluation
of course CIE: 30 TEE: 70
Course Objectives:
1. To become familiar with difference between Information retrieval and data Base
Management Systems
2. To learn different indexing techniques to apply Data Base systems
3. To understand various searching techniques to retrieve data from databases and ware
houses.
Course Outcomes: On completion of the course, student would be able to:
CO836.1 understand basic Information Retrieval Systems
CO836.2 identify the different types of indices: inverted index, positional index, bi-word
index etc
CO836.3 enumerate various types of indices. And also understand the concept of efficient
storage of indices.
CO836.4 understand the basic concept of Search Engines their architecture and various
functional components
CO836.5 understand the basic concept of Web crawlers and their architecture

Module COURSE SYLLABUS


Hrs COs
No CONTENTS OF MODULE
Introduction to Information Retrieval: Information retrieval
problem, an inverted index, Processing Boolean queries, The
extended Boolean model versus ranked retrieval, an inverted
1 index, Bi-word indexes, Positional indexes, Combination schemes. 14 CO836.1
Index construction: Hardware basics, Blocked sort-based
indexing, Single-pass in-memory indexing, Distributed indexing,
Dynamic indexing, other types of indexes
Index compression: Statistical properties of terms in information
retrieval, Heaps’ law: Estimating the number of terms, Zipf’s law:
Modeling the distribution of terms, Dictionary compression,
Dictionary as a string, Blocked storage, Posting’s file compression.
2 Scoring, term weighting and the vector space model: Parametric 13 CO836.2
and zone indexes, Weighted zone scoring, Learning weights, The
optimal weight, Term frequency and weighting, Inverse document
frequency, Tf-idf weighting, The vector space model for scoring,
Variant tf-idf functions
Computing scores in a complete search system: Efficient
scoring and ranking, Inexact top K document retrieval, Index
CO836.3,
3 elimination, Champion lists, Static quality scores and ordering, 10
CO836.4
Impact ordering, Cluster pruning, Components of an information
retrieval system, Tiered indexes.

37
Web search basics: Background and history, Web characteristics,
The web graph, Spam, Advertising as the economic model, The
search user experience, User query needs Crawling, Crawler
architecture, DNS resolution, The URL frontier, Link analysis, The
Web as a graph, Anchor text and the web graph, PageRank,
Markov chains, The PageRank computation, Topic-specific
PageRank
Language models for information retrieval: Language models,
Finite automata and language models, Types of language models,
Multinomial distributions over words, the query likelihood model, CO836.4
4 8
using query likelihood language models in IR, Estimating the CO836.5
query generation probability, Language modelling versus other
approaches in IR

Text Books:
1. Baeza-Yates, R. and Ribeiro-Neto, B., 1999. Modern Information Retrieval. New York: ACM
press.
2. Croft, W.B., Metzler, D. and Strohman, T., 2010. Search Engines: Information Retrieval in
Practice (Vol. 520, pp. 131-141). Reading: Addison-Wesley.
3. Kubat, M., 2017. An Introduction to Machine Learning. Springer, Cham.
4. Schütze, H., Manning, C.D. and Raghavan, P., 2008. Introduction to Information Retrieval (Vol.
39, pp. 234-265). Cambridge: Cambridge University Press.

38
Course Code: Course Name: Industrial Internship L T P C
BT CS 811 0 0 36 18
Year and th
4 year Contact hours per week: (36 Hrs.)
Semester 8th Semester Exam: (3hrs.)
Pre-requisite Summer Training Evaluation
of course CIE: 150 TEE: 350
Course Objectives:
1. A practice-oriented and ‘hands-on’ working experience in the real world or industry,
and to enhance the student’s learning experience.
2. An opportunity to develop a right work attitude, self-confidence, interpersonal skills
and ability to work as a team in a real organizational setting.
3. An opportunity to further develop and enhance operational, customer service and other
life-long knowledge and skills in a real-world work environment.
4. Pre-employment training opportunities and an opportunity for the company or
organization to assess the performance of the student and to offer the student an
employment opportunity after his/her graduation, if it deems fit.
Course Outcomes: On completion of the course, student would be able to:
CO811.1 Demonstrate the application of knowledge and skill sets acquired from the course
and workplace in the assigned job function/s;
CO811.2 Solve real life challenges in the workplace by analyzing work environment and
conditions, and selecting appropriate skill sets acquired from the course;
CO811.3 Articulate career options by considering opportunities in company, sector,
industry, professional and educational advancement;
CO811.4 Communicate and collaborate effectively and appropriately with different
professionals in the work environment through written and oral means;
CO811.5 Exhibit professional ethics by displaying positive disposition during internship.

39

You might also like