Syllabus 3rd Year 2024-25
Syllabus 3rd Year 2024-25
• Computer Science
• Computer Engineering
Based On
NEP2020
SEMESTER- VI
End
Sl. Subject Periods Evaluation Scheme
Subject Semester Total Credit
No.
Codes L T P CT TA Total PS TE PE
Deptt-
4 Departmental Elective-III 3 0 0 20 10 30 70 100 3
Elective-III
Constitution of India/
9 BNC601/ Essence of Indian Traditional 2 0 0 20 10 30 70
BNC602 Knowledge
Total 17 3 6 800 21
Minor Degree/Honors
Degree MT-1/HT-1
Departmental Elective-I
1. BCS-051 Statistical Computing
2. BCS-052 Data Analytics
3. BCS-053 Computer Graphics
4. BCS-054 Object Oriented System Design with C++
Departmental Elective-II
5. BCS-055 Machine Learning Techniques
6. BCS-056 Application of Soft Computing
7. BCS-057 Image Processing
8. BCS-058 Data Warehousing & Data Mining
Departmental Elective-III
1. BCS-061 Big Data
2. BCS-062 Augmented & Virtual Reality
3. BCS-063 Blockchain Architecture Design
4. BCS-064 Data Compression
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 3
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Demonstrate the contents of a SRS and apply basic software quality assurance practices to
CO 2 K1, K2
ensure that design, development meet or exceed applicable standards
Formulate testing strategy for software systems, employ techniques such as unit testing, Test
CO 4 K3
driven development and functional testing
Manage software development process independently as well as in teams and make use of
CO 5 K5
Various software management tools for development, maintenance and analysis.
DETAILED SYLLABUS 3-1-0
Unit Topic Proposed
Lecture
Introduction: Introduction to Software Engineering, Software Components, Software
Characteristics, Software Crisis, Software Engineering Processes, Similarity and Differences from
I Conventional Engineering Processes, Software Quality Attributes. Software Development Life Cycle 08
(SDLC) Models: Water Fall Model, Prototype Model, Spiral Model, Evolutionary
Development Models, Iterative Enhancement Models.
Software Requirement Specifications (SRS): Requirement Engineering Process: Elicitation,
Analysis, Documentation, Review and Management of User Needs, Feasibility Study, Information
II Modelling, Data Flow Diagrams, Entity Relationship Diagrams, Decision Tables, SRS Document, 08
IEEE Standards for SRS. Software Quality Assurance (SQA): Verification and Validation, SQA
Plans, Software Quality Frameworks, ISO 9000 Models, SEI-CMM Model.
Software Design: Basic Concept of Software Design, Architectural Design, Low Level Design:
Modularization, Design Structure Charts, Pseudo Codes, Flow Charts, Coupling and Cohesion
III Measures, Design Strategies: Function Oriented Design, Object Oriented Design, Top-Down and 08
Bottom-Up Design. Software Measurement and Metrics: Various Size Oriented Measures:
Halestead’s Software Science, Function Point (FP) Based Measures, Cyclomatic Complexity
Measures: Control Flow Graphs.
Software Testing: Testing Objectives, Unit Testing, Integration Testing, Acceptance Testing,
Regression Testing, Testing for Functionality and Testing for Performance, TopDown and Bottom-
Up Testing Strategies: Test Drivers and Test Stubs, Structural Testing (White Box Testing),
IV Functional Testing (Black Box Testing), Test Data Suit Preparation, Alpha and Beta Testing of 08
Products. Static Testing Strategies: Formal Technical Reviews (Peer Reviews), Walk Through, Code
Inspection, Compliance with Design and Coding Standards.
Software Maintenance and Software Project Management: Software as an Evolutionary Entity,
Need for Maintenance, Categories of Maintenance: Preventive, Corrective and Perfective
Maintenance, Cost of Maintenance, Software Re- Engineering, Reverse Engineering. Software
V Configuration Management Activities, Change Control Process, Software Version Control, An 08
Overview of CASE Tools. Estimation of Various Parameters such as Cost, Efforts,
Schedule/Duration, Constructive Cost Models (COCOMO), Resource Allocation Models, Software
Risk Analysis and Management.
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 22
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Text books:
1. RS Pressman, Software Engineering: A Practitioners Approach, McGraw Hill.
2. Pankaj Jalote, Software Engineering, Wiley
3. Rajib Mall, Fundamentals of Software Engineering, PHI Publication.
4. KK Aggarwal and Yogesh Singh, Software Engineering, New Age International Publishers.
5. Ghezzi, M. Jarayeri, D. Manodrioli, Fundamentals of Software Engineering, PHI Publication.
6. Ian Sommerville, Software Engineering, Addison Wesley.
7. Kassem Saleh, “Software Engineering”, Cengage Learning.
8. P fleeger, Software Engineering, Macmillan Publication
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 23
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Compiler Design (BCS602)
Course Outcome (CO) Bloom’s Knowledge Level (KL)
CO 1 Acquire knowledge of different phases and passes of the compiler and also able to use the K3, K6
compiler tools like LEX, YACC, etc. Students will also be able to design different types of
compiler tools to meet the requirements of the realistic constraints of compilers.
CO 2 Understand the parser and its types i.e. Top-Down and Bottom-up parsers and construction of LL, K2, K6
SLR, CLR, and LALR parsing table.
CO 3 Implement the compiler using syntax-directed translation method and get knowledge about the K4, K5
synthesized and inherited attributes.
CO 4 Acquire knowledge about run time data structure like symbol table organization and different K2, K3
techniques used in that.
CO 5 Understand the target machine’s run time environment, its instruction set for code generation and K2, K4
techniques used for code optimization.
DETAILED SYLLABUS 3-0-0
Unit Topic Proposed
Lecture
Introduction to Compiler: Phases and passes, Bootstrapping, Finite state machines and regular
expressions and their applications to lexical analysis, Optimization of DFA-Based Pattern Matchers
implementation of lexical analyzers, lexical-analyzer generator, LEX compiler, Formal grammars and
I their application to syntax analysis, BNF notation, ambiguity, YACC. The syntactic specification of
08
programming languages: Context free grammars, derivation and parse trees, capabilities of CFG.
Basic Parsing Techniques: Parsers, Shift reduce parsing, operator precedence parsing, top down
parsing, predictive parsers Automatic Construction of efficient Parsers: LR parsers, the canonical
II Collection of LR(0) items, constructing SLR parsing tables, constructing Canonical LR parsing tables, 08
Constructing LALR parsing tables, using ambiguous grammars, an automatic parser generator,
implementation of LR parsing tables.
Syntax-directed Translation: Syntax-directed Translation schemes, Implementation of Syntax-
directed Translators, Intermediate code, postfix notation, Parse trees & syntax trees, three address
III code, quadruple & triples, translation of assignment statements, Boolean expressions, statements that 08
alter the flow of control, postfix translation, translation with a top down parser. More about
translation: Array references in arithmetic expressions, procedures call, declarations and case
statements.
Symbol Tables: Data structure for symbols tables, representing scope information. Run-Time
Administration: Implementation of simple stack allocation scheme, storage allocation in block
IV structured language. Error Detection & Recovery: Lexical Phase errors, syntactic phase errors semantic 08
errors.
Code Generation: Design Issues, the Target Language. Addresses in the Target Code, Basic Blocks
and Flow Graphs, Optimization of Basic Blocks, Code Generator. Code optimization: Machine-
Independent Optimizations, Loop optimization, DAG representation of basic blocks, value numbers
V 08
and algebraic laws, Global Data-Flow analysis.
Text books:
1. Aho, Sethi & Ullman, "Compilers: Principles, Techniques and Tools”, Pearson Education
2. K. Muneeswaran,Compiler Design,First Edition,Oxford University Press
3 .J.P. Bennet, “Introduction to Compiler Techniques”, Second Edition, McGraw-Hill,2003.
4. Henk Alblas and Albert Nymeyer, “Practice and Principles of Compiler Building with C”, PHI, 2001.
5. V Raghvan, “ Principles of Compiler Design”, McGraw-Hill,
6. Kenneth Louden,” Compiler Construction”, Cengage Learning.
7 .Charles Fischer and Ricard LeBlanc,” Crafting a Compiler with C”, Pearson Education
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 24
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Computer Networks (BCS603)
Course Outcome ( CO) Bloom’s Knowledge Level (KL)
Link layer: Framing, Error Detection and Correction, Flow control (Elementary Data Link
II Protocols, Sliding Window protocols). 08
Medium Access Control and Local Area Networks: Channel allocation, Multiple access protocols,
LAN standards, Link layer switches & bridges (learning bridge and spanning tree algorithms).
Network Layer: Point-to-point networks, Logical addressing, Basic internetworking (IP, CIDR,
III 08
ARP, RARP, DHCP, ICMP), Routing, forwarding and delivery, Static and dynamic routing,
Routing algorithms and protocols, Congestion control algorithms, IPv6.
Transport Layer: Process-to-process delivery, Transport layer protocols (UDP and TCP),
IV 08
Multiplexing, Connection management, Flow control and retransmission, Window management,
TCP Congestion control, Quality of service.
Application Layer: Domain Name System, World Wide Web and Hyper Text Transfer Protocol,
V 08
Electronic mail, File Transfer Protocol, Remote login, Network management, Data compression,
Cryptography – basic concepts.
Text books and References:
1. Behrouz Forouzan, “Data Communication and Networking”, McGraw Hill
2. Andrew Tanenbaum “Computer Networks”, Prentice Hall.
3. William Stallings, “Data and Computer Communication”, Pearson.
4. Kurose and Ross, “Computer Networking- A Top-Down Approach”, Pearson.
5. Peterson and Davie, “Computer Networks: A Systems Approach”, Morgan Kaufmann
6. W. A. Shay, “Understanding Communications and Networks”, Cengage Learning.
7. D. Comer, “Computer Networks and Internets”, Pearson.
8. Behrouz Forouzan, “TCP/IP Protocol Suite”, McGraw Hill.
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 25
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Big Data (BCS061)
Course Outcome (CO) Bloom’s Knowledge Level (KL)
CO 1 Demonstrate knowledge of Big Data Analytics concepts and its applications in business. K1,K2
CO 2 Demonstrate functions and components of Map Reduce Framework and HDFS. K1,K2
CO 4 Explain process of developing Map Reduce based distributed processing applications. K2,K5
CO 5 Explain process of developing applications using HBASE, Hive, Pig etc. K2,K5
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 27
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
To understand the basic concept and apply framework of virtual reality. K1 , K2,
CO 1
K3
To understand and analyze the principles and multidisciplinary features of virtual K2 , K4
CO 2 reality.
To understand and apply the technology for multimodal user interaction and K2 , K3
CO 3 perceptionin VR, in particular the visual, audial and haptic interface and behavior.
To understand and apply the technology for managing large scale VR environment K2 , K3
CO 4 inreal time.
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 28
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Augmented and Mixed Reality, Taxonomy, technology and features of augmented reality,
V difference between AR and VR, Challenges with AR, AR systems and functionality, Augmented
reality methods, visualization techniques for augmented reality, wireless displays in educational 08
augmented reality applications, mobile projection interfaces, marker-less tracking for augmented
reality, enhancing interactivity in AR environments, evaluating AR systems.
Text books:
1. Alan B Craig, William R Sherman and Jeffrey D Will, “Developing Virtual Reality
Applications: Foundations ofEffective Design”, Morgan Kaufmann, 2009.
2. Gerard Jounghyun Kim, “Designing Virtual Systems: The Structured Approach”, 2005.
3. Doug A Bowman, Ernest Kuijff, Joseph J LaViola, Jr and Ivan Poupyrev, “3D User
Interfaces, Theory and Practice”,Addison Wesley, USA, 2005.
4. Oliver Bimber and Ramesh Raskar, “Spatial Augmented Reality: Meging Real and Virtual
Worlds”, 2005.
5. Burdea, Grigore C and Philippe Coiffet, “Virtual Reality Technology”, Wiley Interscience,
India, 2003.
6. John Vince, “Virtual Reality Systems”, Addison Wesley, 1995.
7. Howard Rheingold, “Virtual Reality: The Revolutionary Technology and how it Promises
to Transform Society”,Simon and Schuster, 1991.
8. William R Sherman and Alan B Craig, “Understanding Virtual Reality: Interface,
Application and Design (TheMorgan Kaufmann Series in Computer Graphics)”. Morgan
Kaufmann Publishers, San Francisco, CA, 2002
9. Alan B. Craig, Understanding Augmented Reality, Concepts and Applications, Morgan
Kaufmann, 2013.
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 29
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
CO 1 Describe the basic understanding of Blockchain architecture along with its primitive. K1, K2
CO 2 Explain the requirements for basic protocol along with scalability aspects. K2, K3
CO 3 Design and deploy the consensus process using frontend and backend. K3, K4
Apply Blockchain techniques for different use cases like Finance, Trade/Supply and
CO 4 Government activities. K4, K5
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 30
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Describe the evolution and fundamental concepts of Data Compression and Coding K1, K2
CO 1 Techniques.
Apply and compare different static coding techniques (Huffman & Arithmetic coding) for text K2, K3
CO 2 compression.
Apply and compare different dynamic coding techniques (Dictionary Technique) for text K2, K3
CO 3 compression.
CO 4 Evaluate the performance of predictive coding technique for Image Compression. K2, K3
CO 5 Apply and compare different Quantization Techniques for Image Compression. K2,K3
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 31
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Software Engineering Lab (BCS651)
Course Outcome (CO) Bloom’s Knowledge Level (KL)
Identify ambiguities, inconsistencies and incompleteness from a requirements specification and K2, K4
CO 1
state functional and non-functional requirement
Identify different actors and use cases from a given problem statement and draw use case K3, K5
CO 2
diagram to associate use cases with different types of relationship
CO 3 Draw a class diagram after identifying classes and association among them K4, K5
Graphically represent various UML diagrams, and associations among them and K4, K5
CO 4 identify the logical sequence of activities undergoing in a system, and represent them
pictorially
CO 5 Able to use modern engineering tools for specification, design, implementation and testing K3, K4
DETAILED SYLLABUS
For any given case/ problem statement do the following;
1. Prepare a SRS document in line with the IEEE recommended standards.
2. Draw the use case diagram and specify the role of each of the actors. Also state the precondition, post
condition and function of each use case.
3. Draw the activity diagram.
4. Identify the classes. Classify them as weak and strong classes and draw the class diagram.
5. Draw the sequence diagram for any two scenarios.
6. Draw the collaboration diagram.
7. Draw the state chart diagram.
8. Draw the component diagram.
9. Perform forward engineering in java. (Model to code conversion)
10. Perform reverse engineering in java. (Code to Model conversion) 11. Draw the deployment diagram.
Note: The Instructor may add/delete/modify/tune experiments, wherever he/she feels in a justified manner
It is also suggested that open source tools should be preferred to conduct the lab ( Open Office , Libra ,
Junit, Open Project , GanttProject , dotProject, AgroUML, StarUML etc. )
Software Engineering Lab (BCS-651): Mapping with Virtual Lab
Identify patterns, tokens & regular expressions for lexical analysis. K2, K4
CO 1
Design Lexical analyser for given language using C and LEX /YACC tools K3, K5
CO 2
Design and analyze top down and bottom up parsers. K4, K5
CO 3
Generate the intermediate code K4, K5
CO 4
Generate machine code from the intermediate code forms K3, K4
CO 5
DETAILED SYLLABUS
1. Design and implement a lexical analyzer for given language using C and the lexical analyzer should ignore
redundant spaces, tabs and new lines.
2. Implementation of Lexical Analyzer using Lex Tool
3. Generate YACC specification for a few syntactic categories.
a) Program to recognize a valid arithmetic expression that uses operator +, – , * and /.
b) Program to recognize a valid variable which starts with a letter followed by any number of letters or digits.
c) Implementation of Calculator using LEX and YACC
d) Convert the BNF rules into YACC form and write code to generate abstract syntax tree
4. Write program to find ε – closure of all states of any given NFA with ε transition.
5. Write program to convert NFA with ε transition to NFA without ε transition.
6. Write program to convert NFA to DFA
7. Write program to minimize any given DFA.
8. Develop an operator precedence parser for a given language.
9. Write program to find Simulate First and Follow of any given grammar.
10. Construct a recursive descent parser for an expression.
11. Construct a Shift Reduce Parser for a given language.
12. Write a program to perform loop unrolling.
13. Write a program to perform constant propagation.
14. Implement Intermediate code generation for simple expressions.
15. Implement the back end of the compiler which takes the three address code and produces the 8086 assembly
language instructions that can be assembled and run using an 8086 assembler. The target assembly instructions can
be simple move, add, sub, jump etc.
Note: The Instructor may add/delete/modify/tune experiments, wherever he/she feels in a justified manner
It is also suggested that open source tools should be preferred to conduct the lab (R , Python etc. )
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 33
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
DETAILED SYLLABUS
1. Implementation of Stop and Wait Protocol and Sliding Window Protocol.
2. Study of Socket Programming and Client – Server model
3. Write a code simulating ARP /RARP protocols.
4. Write a code simulating PING and TRACEROUTE commands
5. Create a socket for HTTP for web page upload and download.
6. Write a program to implement RPC (Remote Procedure Call)
7. Implementation of Subnetting .
8. Applications using TCP Sockets like
a. Echo client and echo server b. Chat c. File Transfer
9. Applications using TCP and UDP Sockets like d. DNS e. SNMP f. File Transfer
10. Study of Network simulator (NS).and Simulation of Congestion Control Algorithms using NS
11. Perform a case study about the different routing algorithms to select the network path with its optimum and
economical during data transfer. i. Link State routing ii. Flooding iii. Distance vector
12. To learn handling and configuration of networking hardware like RJ-45 connector, CAT-6 cable, crimping tool,
etc.
13. Configuration of router, hub, switch etc. (using real devices or simulators)
14. Running and using services/commands like ping, traceroute, nslookup, arp, telnet, ftp, etc.
15. Network packet analysis using tools like Wireshark, tcpdump, etc.
16. Network simulation using tools like Cisco Packet Tracer, NetSim, OMNeT++, NS2, NS3, etc.
17. Socket programming using UDP and TCP (e.g., simple DNS, data & time client/server, echo client/server, iterative
& concurrent servers)
Note: The Instructor may add/delete/modify/tune experiments, wherever he/she feels in a justified manner
It is also suggested that open source tools should be preferred to conduct the lab ( C , C++ , Java , NS3,
Mininet, Opnet, TCP Dump, Wireshark etc.
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 34
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
Open Electives to be offered by the CSE/CS/IT/CSI Branches
Open Elective-1
BOE-067 Basics of Data Base Management System
Describe the features of a database system and its application and compare various
CO 1 K2
types of data models.
Construct an ER Model for a given problem and transform it into a relation database
CO 2 K5, K6
schema.
Formulate solution to a query problem using SQL Commands, relational algebra, tuple
CO 3 K5, K6
calculus and domain calculus.
CO 4 Explain the need of normalization and normalize a given relation to the desired normal form. K2, K3
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 35
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
PL/SQL Cursors, stored procedures, stored function, database triggers, indices
Transaction Processing Concepts: Transaction concepts, properties of transaction, testing of
serializability, Serializability of schedules, conflict & view serializable schedule, recoverability,
recovery from transaction failures, two-phase commit protocol, log based recovery, checkpoints,
IV deadlock handling. 08
Concurrency Control Techniques: Concurrency control, locking techniques for concurrency
control, time stamping protocols for concurrency control, validation based protocol, multiple
granularity, multi-version schemes, recovery with concurrent transaction.
Database Security – Types of security, system failure, backup & recovery techniques, authorization
& authentication, system policies, levels of security – physical, OS, network & DBMS, privileges –
grant & revoke.
Recent Trends in Database Management Systems: Centralized and Client-Server Architectures,
V Distributed Databases, Object-Oriented Database, Spatial & Temporal Databases, Decision Support 08
Systems, Data Analysis, Data Mining & Warehousing, Data Visualization, Mobile Databases, OODB
& XML Databases, Multimedia & Web Databases, Spatial and Geographical Databases, Web and
Mobile Databases, Active
Databases
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 36
DR. A.P.J. ABDUL KALAM TECHNICAL UNIVERSITY, UTTAR PRADESH, LUCKNOW
CO 1 Identify project planning objectives, along with various cost/effort estimation models. K3
CO 2 Organize & schedule project activities to compute critical path for risk analysis. K3
CO 5 Configure changes and manage risks using project management tools. K2, K4
Curriculum & Evaluation Scheme: CS, Computer Engineering and CSE (V & VI Semester) 37