• No results found

Understand the model of object oriented programming: abstract data types, encapsulation, inheritance and polymorphism

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