List 1. To study truth tables of AND, OR, NOR, NAND, NOT and XOR Gates
1. Understand the model of object oriented programming: abstract data types, encapsulation, inheritance and polymorphism
2. to demonstrate the differences between traditional imperative design and object-oriented design
3. to explain class structures as fundamental, modular building blocks and to understand the role of inheritance, polymorphism, dynamic binding and generic structures in building reusable code
4. to prepare object-oriented design for small/medium scale problems
5. How to take the statement of a business problem and from this determine suitable logic for solving the problem; then be able to proceed to code that logic as a program written in C++
6. How to test, document and prepare a professional looking package for each business project using C++.
41 Branch: Computer Science and Engineering
Title CYBER LAWS & IPR Credits 03 conceptual nature, will be compulsory. Rest of the paper will be divided into two parts having three questions each and the candidate is required to attempt at least two questions from each part.
SECTION-A Hrs
Basics of Computer & Internet Technology
Internet, ISP & domain name; Network Security; Encryption Techniques and Algorithms;
Digital Signatures.
8
Introduction to Cyber World
Introduction to Cyberspace and Cyber Law; Different Components of cyber Laws; Cyber Law and Netizens.
2
E-Commerce
Introduction to E-Commerce; Different E-Commerce Models; E-Commerce Trends and Prospects; E-Commerce and Taxation; Legal Aspects of E-Commerce.
7
SECTION-B
Intellectual Property Rights
IPR Regime in the Digital Society; Copyright and Patents; International Treaties and Conventions; Business Software Patents; Domain Name Disputes and Resolution.
12
T Act, 2000
Aims and Objectives; Overview of the Act; Jurisdiction; Role of Certifying Authority;
Regulators under IT Act; Cyber Crimes-Offences and Contraventions; Grey Areas of IT Act.
12
Project Work
Candidates will be required to work on a project. At the end of the course students will make a presentation and submit the project report.
4
42 Act 2000
with Rules
&
Notification 2 Keith Merill&
DeeptiChopra
Cyber Cops, Cyber Criminals&
Internet
(IK Inter.)
3 Diane Row
Land
Information Technology La
TATA McGraw Hill 4 Vakul Sharma Handbook
of Cyber Law
(McMillian)
Course Outcomes
-
43 Branch: Computer Science and Engineering
Title OBJECT ORIENTED PROGRAMMING
(PRACTICAL)
Credits 02
Code CSE 464 Semester: - 4th L T P 0 0 3
Max.
Marks
50 Elective N
Time 3 Hours
Note Practical should be covered based on the following directions:
List 1. Functions, Classes and Objects 2. Constructors and Destructors
3. Operator Overloading and Type Conversion 4. Inheritance and Virtual Functions
5. Files
6. Exception Handling and Generic Programming
44 Branch: Computer Science and Engineering
Title Computer Architecture & Organization Credits 04
Code CS415 Semester: - 4th L T P 3 1 0
Max.
Marks
External: - -50 Internal: 50 Elective N
Pre-
requisites Study of Digital Logic & Circuits Contact Hours
The Semester question paper of a subject will be of 50 marks having 7 questions of equal marks. First question, covering the whole syllabus and having questions of conceptual nature, will be compulsory. Rest of the paper will be divided into two parts having three questions each and the candidate is required to attempt at least two questions from each part.
SECTION-A Hrs
Register Transfer Language and Micro-Operations:
Basic Concepts, Complements, Fixed and Floating Point Representation, Register Transfer Language, Inter Register Transfer Arithmetic, Bus and Memory Transfers, Arithmetic, Logic and Shift Micro-Operations, Arithmetic Logic Shift Unit.
6
Basic Computer Origination and Design:
Instruction Codes, Computer Instructions, Timing and Control, Execution of Instructions, Input Output and Interrupt, Design of Basic Computer.
6
Programming the Basic Computer:
Machine Language, Assembly Language, The Assembler, Program Loops, Programming Arithmetic and Logic Operations, Subroutines, Input-Output Programming.
5
Central Processing Unit:
General Register Organization, Stack Organization, Instruction Formats, Addressing Modes, Data Transfer and Manipulation, Program Control.
6
SECTION-B
Microprogrammed Control and Pipelining:
Control Memory, Address Sequencing, Microinstruction Formats, Pipelining, Arithmetic and Instruction Pipelining.
6
Computer Arithmetic:
Addition and Subtraction of unsigned Binary Numbers, Addition, Subtraction, Multiplication and Division Algorithm.
5
Input-Output Organization:
Input-Output Interface, Asynchronous Data Transfer, DMA, Priority Interrupt, I/O Processor, Serial Communication.
6
Memory Organization: 5
45 Memory Hierarchy, Associative Memory, Virtual Memory, Cache Memory, Memory
Management Hardware.
Suggested
Books S.
N o.
Authors Title Publish
er basic computational and I/O operations.
3. Understanding of the operation of modern CPUs including pipelining, memory systems and buses
4. Understanding wide variety of memory technologies and concepts of memory management.
5. To make students learn how to design a basic computer system
46 Third Year - Fifth Semester
Branch: Computer Science and Engineering
Title OPERATING SYSTEM Credits 04
Code CSE 511 Semester: - 5th L T P 3 1 0
Max.
Marks
External: - 50 Internal: - 50 Elective N
Pre-requisites Computer Fundamentals Contact
Hours
45 Time 3 Hours Objectives · To introduce design and implementation issues of various Operating
Systems: batch, multi-programmed, time sharing, real time, distributed, parallel Operating System structural Components, layered structure, functions
· To understand concept of processes, CPU Scheduling Algorithms: FCFS, SJF, RR and Priority, Inter Process Communication, Process Synchronization, Critical Sections, Semaphores and Monitors.
· To introduce Deadlocks Detection , Recovery, Avoidance and Prevention
· To familiarize with Memory Management using contiguous memory allocation, paging, segmentation, segmentation with paging.
· To introduce Virtual Memory, demand paging and page replacement algorithms (FIFO, Optimal, LRU), Thrashing.
· To understand File Systems, directory structure, allocation methods (contiguous, linked, indexed), free-space management (bit vector, linked list, grouping) and Protection mechanisms.
· To discuss Disk Structure, Disk Scheduling (FCFS, SSTF, SCAN, C-SCAN, and LOOK), Disk Management (Disk Formatting, Boot Blocks, and Bad Blocks), Swap Space Management (Swap Space use, Swap Space Location, Swap Space Management).
· To explore case Studies: Brief introduction of MS-DOS, Windows, UNIX and LINUX.
Note for Examiner
The Semester question paper of a subject will be of 50 marks having 7 questions of equal marks. First question, covering the whole syllabus and having questions of conceptual nature, will be compulsory. Rest of the paper will be divided into two parts having three questions each and the candidate is required to attempt at least two questions from each part.
SECTION-A Hrs
Introduction: What is an O.S., O.S. Functions; Different types of O.S.: batch, multi-programmed, time sharing, real time, distributed, parallel; General structure of
operating system, O/S services, system calls. 5
47 Process Management: Introduction to processes - Concept of processes, process
scheduling, operations on processes; Inter Process Communication, Critical Sections, Mutual Exclusion with Busy Waiting, Sleep and Wakeup, Semaphores, Message passing; CPU scheduling- scheduling criteria, pre-emptive & non-pre-emptive scheduling, Scheduling Algorithms: FCFS, SJF, RR and priority.
10
Memory Management: background, logical vs. physical address space, memory management without swapping; swapping; contiguous memory allocation, paging, segmentation, segmentation with paging; Virtual Memory, demand paging, performance, page replacement, page replacement algorithms (FIFO, Optimal ,LRU);
Thrashing.
6
SECTION-B
File Systems: Files - file concept, file structure, file types, access methods, File attributes, file operations; directory structure, allocation methods (contiguous, linked, indexed), free-space management (bit vector, linked list, grouping), Protection mechanisms.
6
Secondary Storage : Disk Structure, Disk Scheduling ( FCFS, SSTF, SCAN, C-SCAN, LOOK), Disk Management (Disk Formatting, Boot Blocks, Bad Blocks), Swap Space Management (Swap Space use, Swap Space Location, Swap Space Management)
6
Deadlocks: Introduction to deadlocks, Conditions for deadlock, Resource allocation graphs, Deadlock Detection and Recovery, Deadlock Avoidance, Deadlock Prevention
6 Case Studies: Brief introduction of MS-DOS, Windows, UNIX and LINUX. 6 Suggested
48 Course
Outcomes
1. Understanding of functions, structures and history of various operating systems
2. Understanding of design issues associated with various operating systems 3. Implement various process management concepts including scheduling,
synchronization and deadlocks.
4. Implementation of multithreading.
5. Understand concepts of memory management including virtual memory.
6. Understanding concepts of secondary storage management like disk management, disk scheduling, free space management and swap space management.
7. Understand issues related to file system interface and implementation.
8. Be familiar with protection and security mechanisms
9. Be familiar with various types of operating systems including DOS, WINDOWS, UNIX, LINUX etc.
49 Branch: Computer Science and Engineering
Title OPERATING SYSTEM (PRACTICAL ) Credits 02
Code CSE 561 Semester: - 5th L T P 0 0 3
Max.
Marks
50 Elective N
Time 3 Hours
Note Practical should be covered based on the following directions:
List 1. Learning Basic Features and Operating Environment of UNIX and LINUX.
2. Introduction to Shell and Shell Commands.
3. Shell programming: creating a script, making a script executable, shell syntax (variables, conditions, control structures, functions, commands.
4. Process: starting new process, replacing a process image, duplicating a process image, waiting for a process.
5. Programming with semaphores.
50 Branch: Computer Science and Engineering
Title SOFTWARE ENGINEERING Credits 4
Code CSE 512 Semester: -5th L T P 3 1 0
Max. Marks External: - 50 Internal: - 50 Elective N
Pre-requisites
Basic understanding of Computers, Internet, WWW, Organization Behavior, Management Practices, Programming Languages
Contact Hours
45
Time 3 Hours
Objectives This course aims to give students a theoretical foundation in software engineering.
Students will learn about the principles and methods of software engineering, including current and emerging software engineering practices and support tools.
· To understand the concept and need of Software Engineering principles, SDLC, process models and tools.
· To understand project management as an umbrella activity for software development including schedule and cost estimations.
· To study the concept of software requirements and their changing nature
· To understand various software architectures and design principle in software Engineering.
· Understanding good coding practices, including documentation, contracts, regression tests and daily builds.
· To understand various quality assurance and testing techniques, including unit testing, functional testing and automated testing.
· To study various CASE tools and understand the methodologies working behind these tools.
· To understand model based software development using UML.
Note for Examiner
The Semester question paper of a subject will be of 50 marks having 7 questions of equal marks. First question, covering the whole syllabus and having questions of conceptual nature, will be compulsory. Rest of the paper will be divided into two parts having three questions each and the candidate is required to attempt at least two questions from each part.
SECTION-A Hrs
Introduction:
Introduction to Software Engineering, System Engineering Vs Software Engineering, Software Evolution, Software Characteristics, Cost of Software Production, Software Components, Crisis – Problem and Causes, Challenges in Software Engineering.
5
Software Process Models:
SDLC, Waterfall Model, Incremental Model, Prototyping Model, Evolutionary Model, Spiral Model, Rapid Application Development Model, Formal Methods, Open Source Development, Object Oriented Life Cycle Model, Agile Methods
6
51 Project Management Concepts:
Management Activities, Project Planning, Project Scheduling, Size Estimation – LOC, FP; Cost Estimation Models –COCOMO, COCOMO-II.
6
Software Requirements Analysis and Specification Concepts:
Requirement Engineering, Requirement Elicitation Techniques, Requirements Documentation, Characteristics and Organization of SRS, Analysis Principles, Analysis Modelling – Data Modelling, Functional Modelling and Behavioural Modelling; Structured vs. Object Oriented Analysis.
5
SECTION-B
Software Design and Coding Concepts:
Design Principles, Data Design, Architectural design, Interface Design, Component Level Design, Object Oriented Design Concepts, Cohesion and Coupling and their classification, top-down, bottom-up and middle-out design, Coding, Coding Standards, Coding Conventions, Programming Style.
6
Testing:
Verification and Validation, Testing Process, Design of Test Cases, Software Testing Strategies, Unit Testing, Integration Testing, Top Down and Bottom Up Integration Testing, Alpha & Beta Testing, System Testing and Debugging
5
Technical Metrics for Software:
Software Measurements: What and Why, A Framework for Technical Software Metrics, Metrics for the Analysis Model, Metrics for Design Model, Metrics for Source Code, Metrics for Testing, Metrics for Software Quality, Metrics for Maintenance.
6
CASE (Computer Aided Software Engineering) and Introduction to UML:
CASE and its Scope, Building blocks of CASE, CASE Tools, CASE Environment, UML Concepts, Use Case Diagrams, Sequence Diagrams, Collaboration Diagrams, Class Diagrams, State Transition Diagrams, Component and Deployment Diagrams.
6
Suggested
Books S.
No.
Authors Title Publisher Edition Yea
r 1 Ian
Sommervill e
Software Engineering Pearson Education.
Software Engineering: A Practitioner's Approach
Theory and Practice, ,
Pearson Education
Second Edition
52 3 Douglas
Bell
Software Engineering for Students.
Pearson Education
Fourth Edition 4 Pankaj
Jalote
An Integrated Approach to Software Engineering,
Narosa Second Edition 5 K.K.Aggar
wal, Yogesh Singh
Software Engineering New Age Internation al.
Second Edition Course
Outcomes
After successful completion of course:-
1. Students will demonstrate an understanding of various process models and be able to select appropriate process model for a particular project.
2. Students will demonstrate proficiency in software cost estimation and scheduling.
3. Students will exhibit the ability to manage a project including planning, scheduling and risk management.
4. Students will be able to create SRS document with clear, precise and traceable features.
5. Students will be able to create efficient architecture design, Data Design and Interface design for software systems.
6. Students will be able to devise effective test plan, test case and test suit using Black Box and White Box Testing for different kind of application and specialized systems.
7. Students will be able to use various CASE tools and modelling languages Like UML to develop artefacts of a software system
53 Branch: Computer Science and Engineering
Title SOFTWARE ENGINEERING (PRACTICAL) Credits 02
Code CSE 562 Semester: - 5th L T P 0 0 3
Max.
Marks
50 Elective N
Time 3 Hours
Note Practical should be covered based on the following directions:
List 1. Study the features of MS-Project.
2. Use MS-Project/OpenProj/similar tool to draft project plan for a particular project case study.
3. Use MS-Project/OpenProj/similar tool to generate various reports like Gantt chart, Network diagram, Resource usage sheet.
4. Use MS-Project/OpenProj/similar tool to track the progress of a project.
5. Study the concepts of UML modeling.
6. Use Rational Rose/StarUML/similar tool to generate use case diagrams.
7. Use Rational Rose/StarUML/similar too to generate sequence diagrams.
8. Use Rational Rose/StarUML/similar too to generate class diagrams.
9. Use Rational Rose/StarUML/similar too to generate collaboration diagrams.
10. Study the features of a particular CASE tool for requirements specification, analysis, design and cost estimation.
11. Apply each of the above tools to a particular case study.
54 Branch: Computer Science and Engineering
Title COMPUTER NETWORK Credits 04
Code CSE 513 Semester- 5th L T P 3 1 0
Data Structures Contact
Hours
45 Time 3 Hours Objectives · To introduce the data communication components, data flow and network categories
and reference models.
· To introduce the concepts of analog and digital signals, multiplexing, transmission media and switching techniques
· To introduce different techniques for error detection and correction, media access and flow control protocols.
· To introduce concepts of logical addressing, routing algorithms and congestion control algorithms. conceptual nature, will be compulsory. Rest of the paper will be divided into two parts having three questions each and the candidate is required to attempt at least two questions from each part.
SECTION-A Hrs
Introduction:
Data Communication: Components, Data Flow; Network Categories: LAN, MAN, WAN (Wireless / Wired);Network Software: Concept of layers, protocols, interfaces and services; Reference Model: OSI, TCP/IP and their comparison;
6 hrs Physical Layer :
Concept of Analog & Digital Signal; Bit rate, Bit Length; Transmission Impairments:
Attenuation, Distortion, Noise; Data rate limits: Nyquist formula, Shannon Formula;
Multiplexing: Frequency Division, Time Division, Wavelength Division;
Transmission media: Twisted pair, coaxial cable, fiber optics, wireless transmission (radio, microwave, infrared); Circuit Switching & Packet Switching.
8 hrs
Data Link Layer:
Error correction & Detection; Flow & Error Control;
Sliding window protocols: Stop & Wait ARQ, Go back n ARQ, Selective repeat ARQ;
Examples of DLL Protocols-HDLC, PPP;
Medium Access Sub layer: Channel Allocation; Random Access: ALOHA, CSMA protocols; Controlled Access: Polling, Reservation, Token Passing;
Examples of IEEE 802.3, 802.11 standards.
10 hrs
SECTION-B
55 Network Layer:
Logical Addressing: IPv4 and IPv6; Packet Formats & their comparison: IPv4 and IPv6;
Routing algorithms: Distance vector, Link State Routing, Hierarchical Routing, Broadcast
& Multicast Routing;
Congestion Control: Principles of Congestion Control, Congestion prevention policies, Leaky bucket & Token bucket algorithms
10 hrs
Transport Layer:
Addressing, flow control & buffering, multiplexing & de-multiplexing, crash recovery;
Example transport protocols: TCP, SCTP and UDP;
8 hrs
Application Layer:
Network Security; Domain Name System; Simple Network Management Protocol;
Electronic Mail;
3 hrs
Suggested Books S.
No.
Authors Title Publisher Edition Year Other Details 1 Andrew S.
1. Students will demonstrate an understanding of fundamental concepts of computer networks and apply them to solve different networking problems.
2. Students will demonstrate an understanding of different concepts of physical layer like Data signals, transmission media, data rate limits and multiplexing.
3. Students will demonstrate an understanding of different concepts of data link layer like error correction and detection, media access and sliding window protocols.
4. Students will demonstrate an understanding of different concepts of network layer like addressing, routing and congestion control and apply them to networks.
5. Students will demonstrate an understanding of different concepts of transport and application layer like multiplexing, crash recovery, flow control, network security and different application protocols.
56 Branch: Computer Science and Engineering
Title COMPUTER NETWORK (Practical) Credits 02
Code CSE 563 Semester: - 5th L T P 0 0 3
Max.
Marks
50 Elective N
Time 3 Hours
Note Practical should be covered based on the following directions:
List 1. To familiarize with the various basic tools (crimping, krone etc.) used in establishing a LAN.
2. To study various topologies for establishing computer networks.
3. To familiarize with switch , hub, connecters, cables (cabling standards) used in networks
4. To familiarize with routers & bridges
5. To use some basic commands like ping, trace-root, ipconfig for trouble shooting network related problems.
6. To use various utilities for logging in to remote computer and to transfer files from / to remote computer.
7. To develop a program to compute the Hamming Distance between any two code words.
8. To develop a program to compute checksum for an ‘m’ bit frame using a generator polynomial.
9. To develop a program for implementing / simulating the sliding window protocol 10. To develop a program for implementing / simulating a routing algorithm
11 To study various IEEE standards (802.3, 802.11, 802.16)
57 Branch: Computer Science and Engineering
Title PRINCIPLES OF PROGRAMMING LANGUAGES Credits 04
Code CSE-504 Semester: - 5th L T P 310
Programming Fundamentals, Object Oriented Programming
Contact Hours 45
Time 3
Hours Objectives This course should provide the students with a fairly good concept of fundamental concepts and design issues of programming languages and become familiar with major programming paradigms. Understand similarities and differences between models and know when to use them and also learn programming techniques appropriate for each model.
Note for Examiner
The Semester question paper of a subject will be of 50 marks having 7 questions of equal marks. First question, covering the whole syllabus and having questions of conceptual nature, will be compulsory. Rest of the paper will be divided into two parts having three questions each and the candidate is required to attempt at least two questions from each part.
SECTION-A Hrs
Introduction:
Study of principles and major concepts in various programming paradigms like imperative, functional, object-oriented and logic programming. Introduction to various phases of compilers, Formal translation models: BNF Grammars.
5
Imperative programming:
Location, reference and expressions, assignment and control, data types, blocks, procedures and modules.
Object Oriented Programming: Classes and objects, abstraction and encapsulation, inheritance, Polymorphism, virtual functions and classes, abstract classes.
7
Logic Programming:
Unification, SLD-resolution, Backtracking, Cuts.
Concepts Of Concurrent Programming: Processes, synchronization primitives.
8
SECTION-B
Functional Programming:
Functions as first class objects, higher order functions, polymorphic data types, type checking and type inference
10
Introduction to storage management:
Static storage management, Heap storage management.
10 Illustration of the above concepts using representative languages: C++, Java, and Prolog etc. 5 Suggested
58 Other Recommended Text/Material
1. Programming in Standard ML ’97: A Tutorial Introduction by Stephen Gilmore, Laboratory for Foundations of Computer Science, The University of Edinburgh , September 1997 (Revised: July 1998, April 2000, Jan 2003) Available at : http://www.dcs.ed.ac.uk/home/stg
Design &
Implementation 2 Friedman,
Wand, and Haynes
Essentials of Programming Languages,
MIT Press 2001, ISBN 0262062178, 9780262062176
Latest
3 Bruce J.
MacLennan
Principles of Programming Languages:
Design,
Evaluation, and Implementation
Oxford University Press US, 1999, ISBN
0195113063, 9780195113068
Latest
Course Outcomes
1. Understand fundamental knowledge of language concepts and how various operations and principles are implemented by different languages.
2. Analyze, design, implement and test various language paradigms and importance of
2. Analyze, design, implement and test various language paradigms and importance of