B.tech CSE 2018 Batch Onwards Syllabus
B.tech CSE 2018 Batch Onwards Syllabus
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)
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
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
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.
Memory Interfacing (Static RAMs & ROMs), Stacks, Procedures, macros –local labels and nested
macros.
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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
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
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
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
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
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
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
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
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
Department of
Computer Science and Engineering
School of Engineering & Technology
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
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
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.
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
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
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
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
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
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
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
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
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
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
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
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
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.
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
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