Вы находитесь на странице: 1из 46

AMRITA VISHWA VIDYAPEETHAM

AMRITA SCHOOL OF ENGINEERING


BTECH, COMPUTER SCIENCE AND ENGINEERING
CURRICULUM (2007 Batch)

SEMESTER III

Cat. Code Title LTP Cr


M Mathematics Elective I 3 0 0 3
H Business Communication 1 0 2 2
C CH Material Science 3 0 0 3
C EC Digital Systems 3 0 0 3
C CS201 Data Structures 3 1 0 4
C IT205 Computer Organization and Architecture 3 1 0 4
C EC Digital Systems Laboratory 0 0 3 1
C CS291 Data Structures Laboratory 0 0 3 1
Credits: H=2 M=3 C=16 Total=21

SEMESTER IV

Cat. Code Title LTP Cr


H Environmental Science and Engineering. 3 0 2 4
M Mathematics Elective II 3 0 0 3
H Technical Communication 1 0 2 2
S Science Elective I 3 0 0 3
Operating Systems: Principles and
C CS202 3 0 0 3
Design
C EC Microprocessor and Micro Controller 2 1 0 3
C CS204 Design and Analysis of Algorithms 3 0 0 3
Principles of Operating Systems
C CS292 0 0 3 1
Laboratory
Microprocessor and Micro Controller
C EC 0 0 3 1
Laboratory
Credits: H=6 M=3 S=3 C=11 Total=23

1
SEMESTER V

Cat. Code Title LTP Cr


S Science Elective II 3 0 0 3
C Core Elective I 3 0 0 3
C CS301 Database Management Systems 3 1 0 4
Introduction to Digital Signal
C EC 2 1 0 3
Processing
C IT315 Computer Networks 3 1 0 4
C CS303 Software Engineering 3 0 0 3
Database Management Systems
C CS391 0 0 3 1
Laboratory
C CS393 Computer Networks Laboratory 0 0 3 1
Credits: S=3 C=19 Total=22

SEMESTER VI

Cat. Code Title LTP Cr


C Core Elective II 3 0 0 3
M Mathematics Elective III 3 0 0 3
C CS302 Formal Languages and Automata 3 1 0 4
C CS304 Software Design and Modeling 3 0 0 3
C CS306 Intelligent Systems 3 0 0 3
C CS308 Net-Centric Programming 3 1 0 4
Software Design and Modeling
C CS392 0 0 3 1
Laboratory
C CS394 Net-Centric Programming Laboratory 0 0 3 1
Credits: M=3 C=19 Total=22

2
SEMESTER VII

Cat. Code Title LTP Cr


H Management Elective 3 0 0 3
C Core Elective III 3 0 0 3
C Core Elective IV 3 0 0 3
C Core Elective V 3 0 0 3
C CS401 Computer Graphics and Visualization 3 1 0 4
C CS403 Computer Language Engineering 3 1 0 4
Computer Graphics and Visualization
C CS491 0 0 3 1
Laboratory
Computer Language Engineering
C CS493 0 0 3 1
Laboratory
Credits: H=3 C=19 Total=22

SEMESTER VIII

Cat. Code Title LTP Cr


H CS402 Software Project Management 3 0 0 3
C Core Elective VI 3 0 0 3
P Special Elective * 3 0 0 3
P CS499 Project 8

Credits: H=3 C=3 P=11 Total=17


*Registration in the 6th semester and evaluation in the 8th semester

Total Credits: 49 + 21 + 23 + 22 + 22 + 22 + 17 = 176

3
Elective Courses in B.Tech. Computer Science and Engineering

Elective Focus Code Subject L T P Cr


GE CS321 Human Computer Interface 3 0 0 3
Principles of Communication
I GE ECxxx 3 0 0 3
Engineering
Structure and Interpretation of
GE CS323 3 0 0 3
Computer Programs
GE CS322 Operating System Internals 3 0 0 3
II Hardware Testing and Fault
GE CS324 3 0 0 3
Tolerance
GE ECxxx Embedded Systems 3 0 0 3
NC CS421 Parallel and Distributed Computing 3 0 0 3
CI CS423 Pattern Recognition 3 0 0 3
III DT CS425 Advanced Databases 3 0 0 3
SD IT322 Software Quality Management 3 0 0 3
Principles of Digital Image
IA CS427 3 0 0 3
Processing
NC CS429 Computer Systems Engineering 3 0 0 3
CI CS431 Soft Computing 3 0 0 3
IV DT CS433 Multimedia Databases 3 0 0 3
SD CS435 Component-Based Development 3 0 0 3
IA CS437 Computer Vision 3 0 0 3
NC CS439 Cryptography 3 0 0 3
Data Warehousing and Data
CI CS441 3 0 0 3
Mining
V DT CS443 Decision Support Systems 3 0 0 3
SD CS445 Software Evolution 3 0 0 3
IA IT439 Data Compression 3 0 0 3
GE IT431 Bioinformatics 3 0 0 3
NC IT445 Mobile and Wireless Networks 3 0 0 3
CI CS422 Evolutionary Computing 3 0 0 3
DT CS424 Database Administration 3 0 0 3
SD CS426 Agile Software Development 3 0 0 3
VI IA CS428 Digital Watermarking 3 0 0 3
CI CS430 Computational Finance 3 0 0 3
DT CS432 Information Retrieval 3 0 0 3
SD CS434 Design Patterns 3 0 0 3
IA CS436 Image Analysis 3 0 0 3
ME Operations Research 3 0 0 3
ME Total Quality Management 3 0 0 3
Management ME Financial Management 3 0 0 3
Elective CS447 Principles of Management 3 0 0 3
CS449 Software Business 3 0 0 3
IT470 Management Information Systems 3 0 0 3

4
The electives have been classified based on the following Focus areas:

Focus Area Acronym


Net-Centric Computing NC
Computational Intelligence CI
Database Technology DT
Software Development SD
Image Analysis IA
General Electives GE

5
CS201 DATA STRUCTURES 3-1-0-4

Introduction: Abstract Data Type – Arrays - Classes – Templates – STL.

Analysis Tool: Pseudo-code – Mathematical background - Asymptotic notation and analysis.

Stacks, Queues, Linked list, and Recursion: Using recursion- linear, binary, and multiple
recursions, Stack - ADT, Array based implementation, implementing recursion and function
calls, Queues - ADT, Array based implementation, Double-ended queue, Circular queue,
Linked list - ADT, Singly LL, Doubly LL, Circular LL, Stack and Queue implementation –
Complexity.

STL: Vector – Lists - Sequences – Iterators - Hierarchy sequence of ADT’s

Trees: ADT - Basic tree traversals - Binary tree - Data structure for representing trees,
Priority queues: ADT - Implementation- Heaps, Types of trees – Binary search tree, AVL
tree, (2,4) tree, Red-Black tree, B and B+ trees- Complexity.

Graphs: ADT- Data structure for graphs - Basic traversal- Directed graphs - Weighted
graphs - Definition of spanning tree.

Dictionaries and Hashing: Dictionary ADT - Hash tables - Skip List - Complexity.

TEXT BOOKS:
1. Adam Drozdek, Data Structures and Algorithms in C++, Third Edition, Course
Technology, 2004.
2. Michael T. Goodrich, Roberto Tamassia and David M. Mount, Data Structures and
Algorithms in C++, Wiley publication, 2004.

REFERENCES:
1. Robert Kruse, C.L.Tondo and Bruce Leung, Data Structure and Program Design in
C, Prentice Hall of India Private Ltd, 2002
2. Jean –Paul, Tremblay and Paul G. Sorenson, An Introduction to Data Structures with
Applications, Tata McGraw-Hill, Second Edition, 2002.

6
CS202 OPERATING SYSTEMS: PRINCIPLES AND DESIGN 3-0-0-3

Hardware and Operating System Structures: Introduction – Definition - History –


Services and Structure

Concurrency: Processes and Threads - Thread Dispatching - Cooperating Threads

Process Synchronization: Inter-process communication - Implementing Mutual Exclusion –


Semaphores - Monitors and Condition Variables - Readers/Writers - Language Support for
Synchronization - Cooperating Processes and Deadlock - Resource allocation - Performance
evaluation - CPU Scheduling

Protection: Kernel and Address Spaces - Address Translation - Memory allocation and
segmentation - Caching and TLBs Caching and Demand paging

Survey of I/O systems and Storage Devices: File system and disk management - Naming
and directories

Basic Networking and Protocols: Distributed file systems - Network Protocols - Network
Communication Abstractions/RPC - Security and privacy

TEXT BOOKS:
1. Silberschatz, Galvin, Operating Systems concepts, John Wiley and Sons, Seventh
Edition, 2002
2. William Stallings, Operating Systems, Prentice Hall, Fifth Edition, 2005.

REFERENCES:
1. D.M.Dhamdhere, Operating Systems, Tata Mc-Graw Hill Publishing Company
Limited, Second Revised Edition, 2004.
2. Pramod Chandra P. Bhatt, An Introduction to Operating System: Concepts and
Pratice, Prentice Hall of India Ltd, Second Edition, 2006.
3. Gary Nutt, Operating Systems, Addison-Wesley, Third Edition, 2003.

7
CS204 DESIGN AND ANALYSIS OF ALGORITHMS 3-0-0-3

Introduction: Growth functions - Recurrence relation

Divide and Conquer: Quick sort - Merge sort - Lower bounds - Heap sort - Shell sort -
Radix sort - Comparisons of sorting - Matrix multiplication – FFT - Convex hull.

Adversary Argument: MAX-MIN problem - Finding Second largest key.

Greedy Algorithm: Dijkstra’s Single-Source shortest path - Prim’s and Kruskal’s minimum
spanning tree.

Dynamic Programming: Multistage graph - Matrix multiplication problem - Optimal binary


search tree

Backtracking: N-Queens problem - Knapsack problem.

Branch and Bound: 0/1 Knapsack - Traveling salesman problem

Text Processing: Straightforward algorithm - Knuth-Morris-Pratt algorithm

NP Problems: Definition - P, NP, NP complete, NP hard & Co-NP, Examples - P ⊆ NP,


Introduction to Approximation algorithms - Online algorithms - Parallel and Randomized
algorithms.

TEXT BOOKS:
1. Sara Baase, Allen Van Gelder, Computer algorithms- Introduction to Design and
Analysis, Pearson Education Asia, 2002.
2. Ellis Horowitz, Sartaj Sahni and S Rajasekaran, Fundamentals of Computer
Algorithms, Galgotia, 1998.

REFERENCES:
1. Thomas.H.Cormen, Charles.E.Leiserson, Ronald.L.Rivest, Clifford Stein,
Introduction to Algorithms, Prentice Hall of India Private Limited, 2001.

8
2. Alfred Aho, John E.Hopcroft, Jeffery Ullman, Data Structures and
Algorithms, Addison Wesley, 1983.

CS291 DATA STRUCTURES LABORATORY 0-0-3-1

Note: Lab to be conducted in C++


1. Implementing Sample ADT, Templates.
2. Stacks and Queues: Array implementation, Applications, Using STL.
3. Linked list: Implementation, Linked Stacks, D-Queue, Circular Queue
4. Implementing STL: Vector, Lists, Sequences, Iterators
5. Trees: Binary search tree, Priority Queue, Heaps, AVL, Red-Black Tree
6. Graph Traversals: BFS, DFS
7. Hashing: Hash Table creation.

CS292 PRINCIPLES OF OPERATING SYSTEMS LABORATORY 0-0-3-1

1. Basic UNIX commands, File Creation, Manipulation commands in OS level, working


with files, sort, grep, cut, paste, copy, move.
2. Shell Programming commands- echo, read, append, exec, Command Line Arguments,
AWK programming, Environment Variable Handling, Changing user settings.
3. Implementation of scheduling algorithms.
4. Simulation of paging, segmentation.
5. Working with File Systems.
6. Process Management – Fork, exec.
7. Creation and Manipulation of Message Queues, Pipe, FIFO.
8. Handling Signals.
9. Programming in Shared Memory and Semaphores.
10. Critical Section problem for 2 processes, n processes.
11. Banker’s algorithm for deadlock avoidance.

CS301 DATABASE MANAGEMENT SYSTEMS 3-1-0-4

Introduction and the Relational Model: History and Introduction to DBMS - Data models.
Structure of Relational Databases - Fundamental Relational-Algebra Operations - Additional
Relational Algebra Operations.

9
Database Design: Overview of the Design Process - The Entity-Relationship Model –
Constraints - Entity-Relationship Diagrams - Entity-Relationship Design Issues - Weak
Entity Sets - Extended E-R Features - Reduction to Relational Schemas.

Relational Database Design: Features of Good Relational Designs - Atomic Domains and
1NF, 2NF, 3NF, 4NF, lossless decomposition, LJNF - Decomposition Using Functional
Dependencies - Functional-Dependency Theory - Decomposition Using Functional
dependencies - Decomposition Using Multi-valued Dependencies – PJNF and DKNF.

SQL: Background - SQL Data Types and Schemas - Integrity Constraints – Data Definition
- Basic Structure of SQL Queries - Set Operations - Aggregate Functions - Null Values -
Nested Sub queries - Complex Queries - Views - Join Relations – Authorization - Functions
and Procedural Constructs – Embedded SQL

Indexing and Hashing: Basic Concepts - Ordered Indices - B+-Tree Index Files - B-Tree
Index Files - Multiple-Key Access - Static Hashing - Dynamic Hashing - Comparison of
Ordered Indexing and Hashing - Bitmap Indices - Index Definition in SQL.

Introduction to Transaction Processing and Concurrency Control.

TEXT BOOK:
Abraham Silberschatz, Henry F.Korth and S.Sudharshan, Database System Concepts,
Tata McGraw-Hill Publishing Company Limited, Fifth Edition, 2005

REFERENCES:
1. Ramez Elmasri and Shamkant B. Navathe, Fundamentals of Database Systems,
Addison Wesley, Fifth Edition, 2006

2. C.J. Date, An Introduction to Database Systems, Addison Wesley, Eighth Edition,


2003 (For SQL portions)

3. Raghu Ramakrishnan and Johannes Gehrke, Database Management Systems,


McGraw-Hill, Third Edition, 2003.

10
CS302 FORMAL LANGUAGES AND AUTOMATA 3-1-0-4

Automata and Languages: Introduction Finite Automata - Regular Operations -


Nondeterministic Finite Automata - equivalence of NFAs and DFAs - Regular Expressions -
Non-Regular Languages - Pumping Lemma for regular languages - Context free languages –
Chomsky normal form – Push Down Automata - Pumping lemma for context free language.

Computability Theory: Turing Machines – Non-deterministic Turing Machines –


Undecidability - PCP Computation histories - Reducibility

TEXT BOOKS:
Peter Linz, An Introduction to Formal Languages and Automata, Narosa publishing
house, Fourth Edition, 2007.

REFERENCES:
1. Sipser, Michael, Introduction to the Theory of Computation. 2nd ed. Boston, MA:
Course Technology, 2005. ISBN: 0534950973.
2. Martin, John, Introduction to Languages and the Theory of Computation, New York,
NY: McGraw Hill, 2002. ISBN: 0072322004.
3. Garey, Michael, and David S. Johnson. Computers and Intractability: A Guide to the
Theory of NP-Completeness. New York, NY: W.H. Freeman and Company, 1979.
ISBN: 0716710455.

CS303 SOFTWARE ENGINEERING 3- 0- 0-3

Software Process: Software Engineering concepts - A Generic view of Process - Process


Models – Waterfall model, Incremental process model, Evolutionary process models,
Specialized process models, Unified process models - Agile view of process.

Software Engineering Practice: System Engineering - Requirements Engineering: Building


the Analysis Model - Design Engineering - Creating an Architectural Design.

Testing: Testing Strategies - Testing Tactics - Product Metrics.

11
Managing Software Projects: Metrics for Process and Projects - Risk Management -
Quality Management - Change Management.

Reengineering: Business Process Reengineering, Software Reengineering, Reverse


Engineering.

TEXT BOOK:
Roger S Pressman, Software Engineering – A Practitioner’s Approach, McGraw- Hill
Publishers, Sixth edition, 2005.

REFERENCES:
1. Pankaj Jalote, An Integrated Approach to Software Engineering, Narosa Publishers,
Second Edition, 2005.
2. Ian Sommerville, Software Engineering, Addison Wesley, Sixth Edition, 2003
3. Glenford J.Myers, Corey Sandler, Tom Badgett, Todd M.Thomas, The Art of
Software Testing, Wiley Publications, Second Revised(Updated) Edition, 2004.

CS304 SOFTWARE DESIGN AND MODELING 3-0-0-3

Introduction to Software Design: Overview of Software Design - Software Design Process-


Software Design Concepts - Overview of Software Design Methods.

Survey of Software Design Methods: Structured Design: Functional Modeling -


Transform analysis - Transaction analysis - Conversion of DFD’s to structure charts
(transform and transaction mappings) - Structure Charts - Notations for Structure Charts -
Module Coupling and Cohesion.

Concurrent Design Methods: DARTS (Design Approach for Real Time Systems) -
concurrent task design -task interface design. Jackson System Development

Overview of Object-based and Object-Oriented Methods: Object Oriented Design - UML


- Object Oriented Design using CRC - Overview of ADARTS (Ada based Design Approach
for Real Time Systems) - CODARTS (Concurrent Design Approach for Real Time Systems).

Overview of Pattern Based Software Design.

12
Comparison of Software Design Methods: Object Oriented Analysis and Design and UML
(Unified Modeling Language (UML) notation) - Structured Analysis and design and Object
Oriented Analysis and Design - Object-Oriented Software Life Cycle.

Use Case Modeling: Use cases - actors - use case associations - Case study for use cases

Static Modeling: Classes and relationships - Associations and links – Composition /


aggregation hierarchy – Generalization / specialization hierarchy - Inheritance - Case study
for classes.

Object and Class Structuring: Objects and classes - Object structuring criteria - Interface
objects - Entity objects - Control objects - Application logic objects - Case study.

Dynamic Modeling: Object interaction - Message sequencing

Dynamic Analysis: From use case model to object interaction model - Case study.

TEXT BOOKS:

1. H. Gomaa, Designing Concurrent, Distributed, and Real-Time Applications with


UML, Addison-Wesley Object Technology Series, July 2000.
2. G. Booch, J. Rumbaugh, I. Jacobson, The Unified Modeling Language User Guide,
Addison Wesley Object Technology Series, Second Edition, 2005.

REFERENCES:
1. T. Quatrani, Visual Modeling with Rational Rose 2000 and UML, Addison Wesley,
1999.
2. Roger S. Pressman, Software Engineering, A Practitioner’s Approach, McGraw Hill ,
2005.
3. Ali Bahrami, Object Oriented Systems Development, McGraw-Hill International
Editions, 1999.

CS306 INTELLIGENT SYSTEMS 3-0-0-3

Introduction: Definition of AI – Foundations – History - Intelligent Agents

13
Logic Reasoning: Predicate Logic, Prepositional Logic, First Order Logic - Theorem, and
Situation Calculus.

Problem Solving: Heuristic Search Techniques - Problems on Constraint Satisfaction and


Stochastic Search techniques.

Game Theory: Min-Max problems - Alpha-Beta Pruning - SSS* Algorithm.

Semantic Nets / Description matching / Frames / Rules: Knowledge representation –


Inheritance - Forward / Backward Chaining - Probabilistic Reasoning - Bayesian networks.

Planning and Learning: Representation For Planning - Partial order Planning Algorithm -
Overview of different forms of learning - Inductive Learning. Communicative Agents -
Types of communicating Agents.

Decision-Making: Simple and Complex Decisions - Decision Trees.

Applications as Seminar Topic: Parallel and Distributed AI - Natural Language Processing


- Knowledge based Aircraft Automation - AI in Defense and in Robotics - AI based
spacecraft automation.

TEXT BOOKS:
1. Stuart Russell and Peter Norvig, Artificial Intelligence- A Modern Approach, Prentice
Hall, Second Edition, 2002
2. Nils J Nilsson, Principles of Artificial Intelligence, Narosa Publishing House, 2004.

REFERENCES
George J.Klir, Ute St. Clair and Bo Yuan, Fuzzy Set Theory: Foundations and
Applications, Prentice Hall, 1997

CS308 NET-CENTRIC PROGRAMMING 3-1-0-4


Introduction to Internet: The Domain name system – Client/Server model – Tools of the
Internet – Ports, IP addresses – standards: W3C – Services of Internet - E-Mailing Systems -
Web architecture – Parsers in Browser (Mozilla Firefox, IE) – Web site design standards.

14
Overview of Java: Data types, Variables, Arrays, Operators – Classes & Methods –
Inheritance – Packages and Interfaces – Exception Handling – Multithreaded programming –
Applets – Networking - Database connectivity.

Client-side Technologies: Introduction to Markup language (SGML, HTML, DHTML)–


Introduction to scripting languages (JavaScript/ VBscript / PHP) XML (DTD, Schema, Style
sheets, Parser) – Plug-ins.

Server-side Technologies: CGI (Perl basics, application development, database connectivity)


– Introduction to Web services. J2EE: Architecture – Servlets - Java Server Pages – Remote
Method Invocation – Java Beans.

Web Security: Internet Security – Network security and Firewalls- Proxy servers

TEXT BOOKS:
1. Jeffery Dwite, Michael Erwin and Robert Niles, Using CGI, Prentice Hall of India
Pvt Ltd, Second edition, 1997.
2. Walsh, Aaron E, J2EE a Professional Guide, Tata MC-Graw Hill, 2003
3. Thomas A Powell, The Complete Reference – HTML, Tata McGraw Hill, Third
Edition, 2000.

REFERENCES:
Keiko Pitter, Sara Amato, John Callahan et al, Every Students Guide to the Internet, Tata
Mc-Graw Hill, 2005.

CS321 HUMAN COMPUTER INTERFACE 3-0-0-3

Windows Programming Fundamentals: Different paradigms of programming - Event


Driven architecture – GUI concepts - Windows Programming fundamentals - Message
Driven Architecture - Message processing and Message loop. Data Types: Hungarian
notation – Handles - Device Context. Windows programs: Simple Window applications -
Handling Mouse - handling Keyboard -displaying text and graphics - creating and using
pens.

15
Visual C++ Programming: Introduction to VC++ - VC++ components – Types of
Applications in VC++: SDI – MDI - Dialog Based - Console based – Document-View
Architecture.

MFC: Fundamentals - Class Hierarchy - Message Handling – Using MFC classes:


CWinApp, CWnd, CString, Clist.

Using Controls: Edit box - Radio Button - Progress Bar – Slider - Up down control - List
View - Tree View, Labels, ActiveX.

Accessing Database in VC++: DAO and ODBC. - Synchronization classes - Thread,


Csemaphore - CMutex and CEvent.

TEXT BOOKS:
1. Charles Petzold, Programming Windows, Benjamin Cummins, Fifth Edition, 1998.
2. Kate Gregory, Using Visual C++, Prentice Hall of India Private Limited, 2002.

REFERENCES:
1. Herbert Schildt, MFC Programming from the Ground Up, Tata McGraw Hill
Publishing Company Limited, Second Edition, 2000.
2. John Paul Mueller, Visual C++ 6 from the Ground Up, Tata McGraw-Hill
Publishing Company Limited, 1998.

CS322 OPERATING SYSTEM INTERNALS 3-0-0-3

Introduction: The process model, virtual memory, threads, synchronization, and deadlock,
File systems, Interprocess communication, networking, and security - Architecture of Unix
Operating System – History - Kernel Data Structures.

File Sub-System And Process Sub-System: Process states and Transitions – Sleep and
Wakeup Processes - Buffer Cache – Internal Representation of Files – System Calls for the
File Systems. Process System Structure of Processes - Context – Address Space – Creation –

16
Termination – Changing the size of a Process – Process Scheduling and Memory
Management Policies

Swapping and Demand Paging: Hybrid system with Demand Paging and Swapping - I/O
System and IPC drivers Interfaces: Disk and Terminal Drivers – Streams - Process Tracking -
System V IPC - Sockets - Network Communication.

TEXT BOOK:
Bach M.J., The Design of the Unix Operating System, Prentice Hall of India Private
Limited, 1990.

REFERENCES:
1. Good heart B. Cox J, The Magic Garden Explained, Prentice Hall of India Private
Limited, 1994.

CS323 STRUCTURE AND INTERPRETATION OF 3-0-0-3


COMPUTER PROGRAMS

Language Design Issues: Reasons for studying Concepts of Programming Languages-


Programming Domains - Language Evaluation Criteria - Influences on Language Design -
Language Categories - Language Design Trade-offs - Implementation Methods -
Programming Environments.

Describing Syntax and Semantics: Introduction - The General problem of Describing


Syntax - Formal methods of Describing Syntax - Attribute Grammars - Lexical and Syntax
Analysis - Introduction - Lexical Analysis - The parsing Problem – Parsers

Names, Bindings, Type Checking, and Scopes: Introduction – Variables - The concept of
Binding - Type Checking - Strong typing - Type Compatibility - Scope and Life time -
Referencing Environments - Named Constants - Variable Initializations.

Data Types: Introduction - Primitive Data Types - User Defined data types - Array Types -
Associative Arrays - Record Types - Union Types - Pointers and Reference Types

17
Expressions and Assignment Statements - Statement-Level Control Structures –
Subprograms - Abstract Data Types and Encapsulation Constructs: The concept of
Abstraction - Design issues for Abstract Data Types - Parameterized Abstract Data Types –
Encapsulation Constructs and Naming Encapsulations.

TEXT BOOK:
Robert W Sebesta, Concepts of Programming Languages, Sixth Edition, Addison
Wesley, 2003
REFERENCES:
1. Harold Abelson and Gerald Jay Sussm, Structure and Interpretation of Computer
Programs, MIT Press, Second Edition, 1996, ISBN: 0262011530
2. Ravi Sethi, Programming Languages Concepts and Constructs, Addison Wesley,
Second edition, 1996.
3. W. Pratt Terrence, Marvin V. Zelkowitz, Programming Languages Design and
Implementation, Pearson Education, 2001.

CS324 HARDWARE TESTING AND FAULT TOLERANCE 3-0-0-3

Introduction to Testing: A unified presentation of approaches for testing and diagnosis of


computer hardware - Test economics - Gate-level testing- Gate-level testing of stuck-at and
bridging faults - functional testing and random testing.

Testability analysis: Testing by Boolean differences and path sensitization - Testing of


microprocessors and computer memories - Built-in self-testing - Psuedo Exhaustive Testing -
random testing-Memory testing - Design for testability. Board and system level testing and
diagnosis - IDDQ testing

Fault Tolerance: Introduction - FT design methodology. Hardware redundancy - TMR,


GMR, fault sieving - Information redundancy, parity codes, arithmetic codes - Residue
codes, Hamming codes - Reed-Muller codes, cyclic codes - Galois fields, BCH and Reed-
Solomon codes, byte error detection - Convolution codes - Time redundancy.

TEXT BOOKS:
1. A. Miczo, Digital Logic Testing and Simulation, Wiley, 2003

18
2. N.Jha, S.Gupta, Testing of Digital Systems, Cambridge University Press, 2003
3. Lin, S., Costello, D.J, Error Control Coding: Fundamentals and Applications,
Prentice-Hall, 1983, ISBN 0-13-283796-X

CS391 DATABASE MANAGEMENT SYSTEMS LABORATORY 0-0-3-1

1. Working with Objects using SQL for the following: Data Definition Language:
Create, Alter, Grant, Revoke, Drop, Truncate. Data Manipulation Language: Select,
Insert, Update, Delete. Transaction Control Statements - Commit, Rollback, Save
Point.
2. Constraints-Queries: Simple Selection, Projection, and Selection with Conditions.
3. Functions: Aggregate functions, Group by, Order By, Date, and conversion functions
4. Set operators, Joins, Sub Query: Simple, Nested, Co-related, Existence test,
Membership test, DDL and sub queries, and DML and Sub queries
5. Working with Other schema objects: View, Sequence, Index, Synonym, Cluster, lock,
BLOB, CLOB, Nested table, Type.
6. PL/SQL programs, Cursors, Functions, Procedures, Packages, Triggers, Exception
Handling
7. Front End Tool: Forms Creation, Validation, Triggers, and Report Generation
8. Mini Project

CS392 SOFTWARE DESIGN AND MODELING LABORATORY 0-0-3-1

1. Analysis - Requirement specification report.


2. Software requirement specification (SRS) preparation.
3. Data flow diagram design.
4. Use case model - identifying actors, identifying use cases, use case flow of events, data
dictionary creation. Create use case realization. Adding use case realization package,
adding use case realization to the browser, creation of trace abilities diagrams.
5. Activity diagram -identifying activities, adding start and end states, state transitions,
decisions and guard conditions.
6. Class design - Define operations, methods, states, attributes, dependencies, associations,
and generalizations, resolve use case collisions, adding role names and multiplicity.

19
7. Interaction diagrams - Creation of sequence diagram, auto generation of collaboration
diagram
8. Creation of deployment and component diagram.
CASE STUDIES: ATM system, Course Management System.
TOOL: Rational Rose with UML / Visual Modeler, VISIO tool, Magic Draw.

CS393 COMPUTER NETWORKS LABORATORY 0-0-3-1

1. Client Server communication using basic socket communication


2. Experimental study of application protocols such as HTTP, FTP, SMTP, using network
packet sniffers and analyzers such as Ethereal. Small exercises in socket programming in
C/C++/Java.
3. Packet sniffers for understanding the TCP protocol.
4. Using OS (netstat, etc) tools to understand TCP protocol FSM, retransmission timer
behavior, congestion control behavior.
5. File Transfer between nodes in a network.
6. Routing Algorithm behavior in terms of complexity.
7. Introduction to ns2 (network simulator) - small simulation exercises to study TCP
behavior under different scenarios.
8. Setting up a small IP network - configure interfaces, IP addresses and routing protocols to
set up a small IP network. Study dynamic behavior using packet sniffers
9. Experiments with ns2 to study behavior (especially performance of) link layer protocols
such as Ethernet and 802.11 wireless LAN.
10. Design and implementation of congestion control in TCP/IP network.

CS394 NET-CENTRIC PROGRAMMING LABORATORY 0-0-3-1

Net Centric Fundamentals and Client-side Technologies: Developing web pages -


Applying Style sheet features - Validating Inputs using Scripting language – Creating and
parsing XML documents – Applying style elements on XML Documents

Server-side Technologies: Creating CGI applications – Embedding components in Web


pages – Creating a simple web service - web servers (Tomcat, Apache, Web sphere, Web
logic etc in Windows and Linux platforms)

20
J2EE: J2EE application based on Servlets, JSP, RMI and Java Beans - different IDE’s (Sun
studio, Eclipse, Net Beans, etc)

Web Security: Building simple firewall and proxy server.

CS401 COMPUTER GRAPHICS AND VISUALIZATION 3-1-0-4

Introduction: Introduction. Computer graphics applications, Computer graphics hardware –


vector graphics devices, raster graphics devices. Graphics primitives – points and lines,
algorithms for drawing 2D primitives (line, circle), filling area-drawing algorithms (scan line,
boundary fill, flood fill) - Attributes of primitives.

Geometrical Transformations: Basic transformations - translation, scaling, rotation, 2D and


3D-Matrix representation - Homogeneous coordinates - Composite transformation, other
transformations - shear, reflection.

Two Dimensional Viewing: Windows - View ports - Window to viewport transformation,


Clipping operations - Point and line clipping (Cohen Sutherland algorithm, Liang Barsky
algorithm) - 3D Viewing Pipeline - Viewing Coordinates - Transformation from world to
viewing coordinates – Projections - Parallel projections - Perspective projections.

Three-dimensional Object Representation: Polygon surfaces - polygon tables - plane


equations - polygon meshes - parametric representation of curves (Bezier, B-Spline curves) -
parametric representation of surfaces - Octrees -Fractals.

Hidden Line and Hidden Surface Elimination: Z buffer-Scan line - Depth sorting – Area
subdivision - Octree methods - Ray casting.

Multimedia Systems: Introduction – Audio (speech and music): capture and properties,
Video and image: capture, artifacts and properties - Color Models: Illumination & rendering,
light sources, ambient light, diffuse reflection, specular reflection, basic illumination models
Polygon rendering (Gouraud & Phong), Chromaticity diagram, Color models (RGB, CMY,
YIQ, HSV, HLS) - Animation and Morphing.

21
TEXT BOOKS:
1. Donald Hearn and M. Pauline Baker, Computer Graphics, Prentice Hall, Second
Edition, 1999.
2. John F. Koegel, G. Buford, Multimedia Systems, Addison Wesley Professional, 1994.

REFERENCES:
Roy A. Plastock & Gordon Kalley, Theory and Problems of Computer Graphics,
Schaum’s Outline Series, Tat McGraw-Hill Publishing Company Limited, 1986.

CS402 SOFTWARE PROJECT MANAGEMENT 3-0-0-3

Introduction to Software Project Management: Software Projects - ways of categorizing


software projects – problems with software projects - Project Life Cycle – Management -
Setting objectives –Stakeholders - Project Team - An overview of project planning - Project
evaluation - Selection of appropriate project approach.

Project Effort Estimation and Scheduling: Work breakdown Structure - software effort
estimation – function point analysis - object point – COCOMO - activity planning - project
schedules - sequencing and scheduling projects - Network planning model - identifying
critical activities - Risk management - Risk planning and control - Evaluating risks to the
schedule.

Resource Allocation, Monitoring and Tracking: Resource allocation - identifying resource


requirements - scheduling resources - creating critical paths - publishing schedule - cost
schedules - sequence schedule - Monitoring and control - Planning for small Projects.

Case Study: PMBOK, SWEBOK

TEXT BOOK:
Mike Cotterell, Bob Hughes, Software Project Management, inclination/Thomas
Computer Press, 2000.

22
REFERENCES:
1. Jack T Marchewka, Information Technology Project Management Providing
Measurable Organizational Value, Wiley Publication, 2006.
2. Darrel Ince.H Sharp and M.Woodman, Introduction to Software Project Management
and Quality Assurance, Tata Mc-Graw Hill, 1995.
3. Roger S Pressman, Software Engineering – A Practitioner’s Approach, McGraw- Hill
Publishers, Sixth edition, 2005.

CS403 COMPUTER LANGUAGE ENGINEERING 3-1-0-4

This course analyzes issues associated with the implementation of high-level programming
languages. Topics covered include: fundamental concepts, functions, and structures of
compilers, basic program optimization techniques, the interaction of theory and practice, and
using tools in building software. The course features a multi-person project on design and
implementation of a compiler that is written in Java® and generates MIPS executable
machine code.

Overview of Programming Languages: Regular Expressions - Language Specification by


Formal Grammars - Parse Table Construction - Top-down Parsing – Bottom-up Parsing.

Intermediate Representations: Semantic Analysis – Un-optimized Code Generation.

Introduction to Program Analysis and Optimization: Data-flow Analysis - Data-flow


Optimizations - Foundations of Data-flow Analysis - Instruction Scheduling - Register
Allocation.

TEXT BOOKS:
1. Appel, Andrew W., Modern Compiler Implementation in Java®, Cambridge, UK:
Cambridge University Press, 1997.
2. Aho, Alfred V., Ravi Sethi, and Jeffrey Ullman, Compilers: Principles, Techniques
and Tools, Addison-Wesley, 1986.

REFERENCES:

23
1. Muchnick, Steven, Advanced Compiler Design and Implementation, First Edition,
San Mateo, CA: Morgan Kaufman, 1997.
2. Cooper, Keith, and Linda Torczon, Engineering a Compiler, San Mateo, CA: Morgan
Kaufman, 2003.

CS421 PARALLEL AND DISTRIBUTED COMPUTING 3-0-0-3

Introduction: The Machines - The Software - The Reality of High Performance Computing
- Modern Algorithms – Compilers - Scientific Algorithms – History - State-of-Art and
Perspective - Things that are not Traditional Supercomputers Parallel Computing - PDC
models working mechanism - scalability of PDC architectures - applications.

Architectures: Description of cluster architecture and hardware/software elements of


network communication that support PDC - key high-speed networking technologies and
system level middleware.

Shared Memory Coordination: Inter-process Communication - Process in Distributed


Systems - Distributed File systems. Supercomputers with shared memory multiprocessors.

Programming: Course-grain parallelization of sequential programs - message passing


primitives - parallel programming in MPI - data parallel programming - mapping problem to
parallel systems - optimization of parallel programs to exploit architectural features.
Application level middleware and measurement and analysis of actual performance against
theoretical predictions. Parallel Virtual Machines.

Algorithms: Process-level parallelism - data-level parallelism - Problem partitioning divide-


and-conquer - Process communication and synchronization - Load Balancing and termination
detection - analysis of performance (speedup and efficiency). Tradeoffs between calculation
time and communication time.

TEXT BOOKS:
1. Barry Wilkinson and Michael Allen, Parallel Programming Techniques and
Applications using Networked Workstations and Parallel Computer, Prentice Hall,
Upper Saddle River 2004.

24
2. Andrew Tanenbaum, Distributed Operating Systems, Prentice Hall 1999.

REFERENCES:
Rishyur. S. Nikhil and Arvind, Implicit Parallel Programming in PH, Morgan
Kaufman, 2001.

CS422 EVOLUTIONARY COMPUTING 3-0-0-3

Introduction: Principles of evolutionary processes - evolutionary computing metaphor -


evolutionary systems as problem solvers - history of evolutionary computation - standard
instances of evolutionary computation - theoretical aspects and components of an
evolutionary algorithm - advantages and limitations of evolutionary computation over other
approaches

Genetic Algorithms: Evolution Strategies - Evolutionary Programming - Genetic


Programming – representation, recombination, mutation, parent selection and survivor
selection methods and applications - Learning Classifier Systems.

Parameter control in evolutionary algorithms: population structures - constraint handling


techniques - interactive evolution - efficient implementation of evolutionary algorithms - co-
evolutionary algorithms

Novel evolutionary algorithms: Swarm Intelligence methods – Ant Colony Optimization


(ACO) - Particle Swarm Optimization (PSO) - Artificial Immune Systems (AIS) - Bee
Colony Optimization (BCO) and their applications

TEXT BOOKS:
1. A. E. Eiben and J. E. Smith, Introduction to Evolutionary Computing, Springer -
Natural Computing Series, 2003.

REFERENCES:
1. Kenneth A. De Jong, Evolutionary Computation: A Unified Approach, MIT Press,
2002.

25
2. David Corne, Marco Dorigo and Fred Glover, New Ideas in Optimization, McGraw
Hill Education, 1999.
3. David B. Fogel, Evolutionary Computation: The Fossil Record, John Wiley-IEEE
Press, 1998.

CS423 PATTERN RECOGNITION 3-0-0-3

Introduction: Machine perception – Pattern recognition systems – Design cycle – Learning


and adaptation - Bayesian decision theory - minimum error rate classification – discriminant
functions – decision surfaces – normal density based discriminant functions -Maximum
likelihood estimation – Bayesian estimation – Bayesian parameter estimation – Gaussian
case – problems of dimensionality - Components analysis and discriminants – hidden
Markov models

Non-parametric Techniques: density estimation – parzen windows – nearest neighborhood


estimation – linear discriminant functions and decision surfaces – two category linearly
separable case – perception criterion function

Non Metric Methods: decision trees – CART methods – algorithm independent machine
learning- bias and variance – regression and classification - classifiers – Unsupervised
learning and clustering – mixture densities and identifiably – hierarchical clustering – low
dimensional representation – multidimensional scaling

TEXT BOOKS:
1. Richard O Duda, Peter E Hart, David G Stork,, Pattern Classification, John Wiley &
sons Inc., Second Edition, 2003.
2. Earl Gose, Richard Johnsonbaugh, Steve Jost, Pattern Recognition and Image
Analysis, Prentice Hall of India, 2002.

REFERENCES:

1. Christopher M. Bishop, Pattern Recognition and Machine Learning (Information


Science and Statistics), Springer, First edition, 2006, ISBN 978-0387310732

26
2. Christopher M. Bishop, Neural networks for Pattern Recognition, Oxford University
Press, 1995.

CS424 DATABASE ADMINISTRATION 3-0-0-3

Database Architecture: The models - The Database Instance - Connection & Sessions –
Physical and Logical Structure of a Database - Understanding the memory structure -
Understanding the process structure - Understanding the logical structure.

Creating a new database & Managing DB Instance: Creating a Database GUI & manual
– Initialization parameter file -Various options available to shutdown an instance Monitoring
Alert and Trace files - Understanding operating system and password file authentication

Managing Data Dictionary & Other Files: Data dictionary – Managing the data dictionary
- Control file - Log files - Control log switches and checkpoints – Managing Data files.

Managing Logical Data Storage Structure: Logical structure of the database (segments,
extents, blocks) - Creating and Managing Logical Storage Structure – Maintaining storage
structures manually - Mapping Logical Storage to Physical Storage – Managing DB Objects

Basic Net Architecture: Net architecture – Listener - Protocol – Port – Net Service - Session
– Managing & Configuring the Listener in the Server - Configuring the Net Service at the
client side.

Backup and Recovery Overview: Introduction to Backup & Recovery – Types of Failures –
Recovery Methods

Instance and Media Recovery Structures: Background Processes, Memory Structures, and
Files Relating to Recovery – Tune Instance Recovery - User-Managed Backup and Recovery
Operations - DB Verifier - Media Recovery - Transporting Data Between Databases.

Security Requirements and Risks in an Internet Environment: Confidentiality - Data


Integrity and Service Availability - Compromised Authentication and Authorization - Data or

27
Service Theft, Corruption, and Disruption - Encryption and Decryption - Public Key
Infrastructure (PKI) - Firewalls.

Database Performance Tuning: Common performance problems – Database Tuning -


Diagnostic and Tuning Tools - Log and trace files - Troubleshooting data, and performance
data in the data dictionary - SQL Statement Tuning - Lock Contention - Locking mechanisms
and management - Data concurrency - Deadlocks

TEXT BOOKS:
1. Craig S. Mullins, Database Administration: The Complete Guide to Practices and
Procedures, Addison-Wesley, 2002
2. Kevin Lonely, Oracle Database 9i DBA Handbook, Oracle Press, 2002
3. George Baklarz and Bill Wong- DB2 Universal Database V8 for Linux, UNIX, and
Windows- Prentice Hall PTR - 2003

CS425 ADVANCED DATABASES 3-0-0-3

Object-Oriented and Object-Relational Databases: Complex Data types – Object-


Oriented Data Model – Languages – Persistent Programming Languages – C++/Java Systems
– Nested Relations – Complex Types – Inheritance – Reference Types – Querying with
Complex Types – Functions and Procedures – Object Oriented Vs Object-Relational.

XML: Background –Structure of XML Data – XML Document Schema – Querying and
Transformation – API – Storage of XML Data – XML Applications, EBXML, Native XML
database.

Architecture for Databases: Distributed Databases – Parallel Databases

Very Large Databases: Design, Applications like Weather forecasting, defense.

Application Development and Administration: Advanced Querying and Information


Retrieval – Advanced Data Types and New Applications Advanced Transaction Processing

28
TEXT BOOK:
Abraham Silberschatz, Henry F Korth, S Sudarshan Database System Concepts,
Fourth Edition, McGraw-Hill, 2002

REFERENCES:
Hector Garcia-Molina, Jeff Ullman, and Jennifer Widom., Database Systems: The
Complete Book, Prentice-Hall, 2002.

CS426 AGILE SOFTWARE DEVELOPMENT 3-0-0-3

Traditional Methodologies: Breaking the mold of established software development


methodologies - How and Where the waterfall methodology breaks.

Making Improvements in the Process: Software development as a cooperative game of


communication and invention - Using all of one's skills in developing software solutions, not
only software development skills - Adapting methodologies to the problem - NOT the
problem to the methodologies. Prototyping.
Agile Software Development: Agile means being effective and maneuverable - Agile sweet
spots, teams size & location, on-site user expert, etc. - Common design errors - Seven
principles of successful design.

Other Processes using Agile Principles: XP - Extreme Programming, description and


examples - Scrum, description and examples - UP - Unified Process description and
examples.

TEXT BOOKS:
1. Cockburn, Agile Software Development, Pearson Education India, 2002
2. Larman, Agile and Iterative Development - A Manager's Guide",Pearson Education
India, 2004

REFERENCE:
J. Langr, Agile Java - Crafting Code with Test-Driven Development, Pearson
Education India, 2006

29
CS427 PRINCIPLES OF DIGITAL IMAGE PROCESSING 3-0-0-3

Introduction: Elements of Visual Perception- Light and Electromagnetic Spectrum - Image


Sensing and Acquisition - Image Sampling and Quantization - Pixel relation ships.

Image Enhancement in Spatial Domain: Basic gray level transforms - Histogram


Processing - Enhancement using Arithmetic/ Logic operations - Basics of spatial filtering -
Smoothing and Sharpening Filters - Combining spatial enhancement methods.

Image Enhancement in Frequency Domain: Introduction to Fourier transform and


frequency domain - smoothing and Sharpening Frequency domain filters.

Morphological Image Processing: Preliminaries - Dilation and Erosion - Opening and


Closing - The Hit-or-Miss transform – Thinning - Thickening and Skeletons.

Image Segmentation: Detection of discontinuities - Edge Linking and Boundary Detection –


Thresholding - Region-Based Segmentation. (Case study on any one Application)

TEXT BOOKS:
1. Gonzalez and Woods, Digital Image Processing, Prentice Hall, 2007.
2. Gonzalez, Woods and Eddins, Digital Image Processing using MATLAB. Prentice
Hall, 2004.

REFERENCE:
Kenneth R Castleman, Digital Image Processing, Prentice Hall, 1996

CS428 DIGITAL WATERMARKING 3-0-0-3

Introduction - Applications and Properties: Applications – Properties – Evaluating


watermarking systems.

Models of Watermarking: Communication based watermarking – Geometric models of


watermarking – Modeling watermarks detection by correlation.

30
Watermarking with side information: Informed embedding – informed coding – dirty
paper codes.

Perceptual Models: Evaluation – Perceptual model – Watson’s model – Adaptive


watermarking. Robust watermarking – Watermark Security.

TEXT BOOK:
Ingemar Cox, Matthew Miller, Jeffrey Bloom, Mathew Miller, Digital Watermarking:
Principles and Practice, Morgan Kaufmann Series in Multimedia Information and
Systems, 2002

REFERENCES:
1. Stefan Katzenbeisser, Fabien A. P. Petitcolas, Information Hiding Techniques for
Steganography and Digital Watermarking, Artech House, Inc. 685 Canton Street,
Norwood, MA 02062, 2000 ISBN: 1-58053-035-4
2. Juergen Seitz, Digital Watermarking for Digital media, Information Science
Publishing (an imprint of Idea Group Inc.), ISBN 1-59140-518-1 (h/c) -- ISBN 1-
59140-519-X (s/c) -- ISBN 1-59140-520-3 (ebook), 2005

CS429 COMPUTER SYSTEMS ENGINEERING 3-0-0-3

The engineering of computer software and hardware systems - Techniques for controlling
complexity - Strong modularity using client-server design - Virtual memory, and threads -
Networks - Atomicity and coordination of parallel activities - Recovery and reliability -
Privacy, security, and encryption - Impact of computer systems on society – (case studies of
working systems and readings from the current literature provide comparisons and contrasts,
and do design project, extensive written communication exercises).

TEXT BOOK:
Saltzer, Jerome H., and M. Frans Kaashoek. Principles of Computer System Design.
(6.033 class notes, draft release 2.0, MIT, February 2005.)

REFERENCES:

31
Brooks, Frederick P., Jr. The Mythical Man-Month. Reading, MA: Addison-Wesley,
1995. ISBN: 0201835959. (This book is primarily used at the end of the term. The
1974 edition is also usable in 6.033.)

CS430 COMPUTATIONAL FINANCE 3-0-0-3

Introduction: Computational Intelligence in Economics and Finance – Fuzzy Logic – Rough


Sets – Grey Forecasting – Artificial Neural Networks – Support Vector Machines – Self
Organizing Maps - Finite State Automata – Decision Trees – k Nearest Neighbors – Hidden
Markov – Fourier and Wavelet Transforms – Evolutionary Computation – State Space
approach

Fuzzy Logic and Rough Sets: Intelligent System to support Judgmental decision forecasting
– Case Study: Estimating Hotel Room Demand – Rough sets theory and Multivariate Data
Analysis in Classification problems

Artificial Neural Networks and Support Vector Machine: Case Studies- Forecasting the
opening cash price index in integrating Gray forecasting and neural networks – Support
vector model for currency crises determination – Saliency analysis of support vector
machines for feature selection

Self organizing maps and Wavelets: Searching Financial patterns – Applications of


Wavelets and self organizing maps – Pattern matching pattern discovery in databases –
Discovering hidden patterns with genetic programming – Evolutionary strategies versus
Neural networks – Business failure prediction using Ants algorithm.

TEXT BOOK:
Shu-Heng Chen, Paul P. Wang, Computational Intelligence in Economics and
Finance (Advanced Information Processing), Springer-Verlag Berlin Heidelberg,
2004, ISBN 3-540-44098-4.

REFERENCES:
1. Shu-Heng Chen, Genetic Algorithms and Genetic Programming in Computational
Finance, Kluwer Academic Publishers, 2002, ISBN:0- 7923-7601-3.

32
2. Paul D Mcnelis, Neural Network in Finance: Gaining Predictive Edge in the Market,
Elsevier Academic Press, 2005, ISBN:0-12-485967-4.

CS431 SOFT COMPUTING 3-0-0-3

Introduction: Computational Intelligence – Soft Computing – Synergism in Soft


Computing – Fuzzy sets and relations – Fuzzy logic and approximate reasoning – Fuzzy
Pattern recognition – Fuzzy databases and reasoning – Business Intelligence.

Machine learning using Neural Networks: Supervised Neural learning algorithms –


unsupervised Neural-learning algorithms – Competitive learning using neural nets - Neuro-
dynamic programming – Reinforcement Learning – Evolutionary computing algorithms –
Behavioral synergism of soft computing tools

Applications: Computational Intelligence in telecommunication networks – Mobile robotics


– Artificial life – Particle swarm optimization – Artificial Immune systems – Fuzzy chaos
theory – Rough sets – Granular computing.

TEXT BOOK:
Amit Konar, Computational Intelligence: Principles, Techniques and Applications,
Springer-Verlag Berlin Heidelberg, 2005, ISBN 3-540-20898-4.

REFERENCES:
1. Russel C Eberhart, Yuhui Shi, Computational Intelligence: Concepts to
Implementations, Morgan Kaufmann, 2007, ISBN 978-1558607590
2. Andries P. Engelbrecht, Computational Intelligence: An Introduction, Wiley; 2Rev
Ed edition, 2007, ISBN 978-0470035610
3. Lipo Wang, Xiuju Fu, Data Mining with Computational Intelligence (Advanced
Information and Knowledge Processing), Springer, first edition, 2005, ISBN 978-
3540245223
4. Lech Polkowski, Rough Sets, Physica-Verlag Heidelberg, First edition, 2003, ISBN
978-3790815108

33
CS432 INFORMATION RETRIEVAL 3-0-0-3

Introduction: Goals and history of IR - The impact of the web on IR - The role of artificial
intelligence (AI) in IR.

IR Models: Boolean and vector-space retrieval models - Probabilistic Model - Fuzzy and
Extended Boolean Models - ranked retrieval - text-similarity metrics - TF-IDF (term
frequency/inverse document frequency) weighting - cosine similarity.

Basic Tokenizing, Indexing, and Implementation of Vector-Space Retrieval: Simple


tokenizing - stop-word removal and stemming - inverted indices - efficient processing with
sparse vectors - Java implementation

Experimental Evaluation of IR: Performance metrics – recall - precision and F-measure;

Query Operations and Languages: Relevance feedback - Query expansion - Query


languages.

Text Representation & Web Search: Word statistics - Zipf's law - Porter stemmer –
morphology - index term selection - Search engines – spidering – meta crawlers - link
analysis

Text Categorization and Clustering: Categorization algorithms: Rocchio - naive Bayes -


decision trees and nearest neighbor. Clustering algorithms: agglomerative clustering - k-
means - expectation maximization (EM). Applications to information filtering – organization
- and relevance feedback

Information Extraction and Integration: Extracting data from text – XML - semantic web
- collecting and integrating specialized information on the web.

TEXT BOOK -
Ricardo Baeza-Yates and Berthier Ribeiro-Neto, Modern Information Retrieval
(MIR), Addison-Wesley, 2000

34
CS433 MULTIMEDIA DATABASES 3-0-0-3

Overview of Object Oriented Databases: Objects – Methods – ODL – OQL.

Multidimensional Data structures: k-d trees, Quadtrees – Oct trees – MX trees – R-trees.

Image Databases: Representation of raw images – Image segmentation – Representing


images with relations – Image retrieval.

Text Databases: Text retrieval – Latent semantic indexing – TV trees.

Video Databases: Content organization – Content Querying – Video segmentation.

Creating Distributed Multimedia Presentations: Objects in multimedia presentations –


Specifying constraints.

TEXT BOOK:
V.S. Subhramanian, Principles of Multimedia Database Systems, Morgan Kaufmann
Publisher, 2001.

REFERENCES:
1. Khoshafian, Multimedia and Imaging Databases, Lavoisier Publications, 1997
2. Lynne Dunckley, Multimedia Databases: An Object Relational Approach
Addison Wesley, 2002

CS434 DESIGN PATTERNS 3-0-0-3

Introduction: Significance – Software Design and patterns - Model-View-Controller, UML


notations.

Design Pattern Catalog: Creational - Structural Patterns - Behavioral Patterns.

35
Design Pattern in Java Foundation Classes: Simple JFC program, Buttons and Toolbars,
Menus and Action Objects, JTables, JList, JTrees - Creational - Structural Patterns -
Behavioral Patterns.

GRASP Patterns and Anti-patterns

Case Study: use of patterns in the design of a modern web framework - Smallworld Internet
Application Server / Apache Axis / Apache Cocoon / Ruby on Rails / Python's Django.

TEXT BOOK:
1. E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns - Elements of
Reusable Object-Oriented Software, Pearson Education India, 1995 and Addison-
Wesley Publishing Company, 1995
2. James W. Cooper, Java Design Patterns: A Tutorial, Addison-Wesley Professional,
Pap/Cdr Edition, 2000. ISBN-10: 0201485397

REFERENCES:

1. Mark Grand, Patterns in Java - A Catalog of Reusable Patterns Illustrated with


UML, Wiley-Dreamtech India, 2002
2. Craig Larman, Applying UML and Patterns: An Introduction to Object-Oriented
Analysis and Design, Prentice Hall, 1998.

CS435 COMPONENT-BASED DEVELOPMENT 3-0-0-3

Introduction to Components: Terms and concepts. Components – Objects - Components


and objects – Modules - White box versus black box abstractions and reuse. Interfaces.

Components, Interfaces, and Re-entrance: Components and interfaces - Direct and


indirect interfaces – Versions - Interfaces as contracts.

Patterns, Frameworks, Architectures, Wiring Standards.

36
The OMG Way (CORBA, CCM, OMA, and MDA), Microsoft COM, .NET CLR: The
first fundamental wiring model – COM, DCOM, .NET Framework, Common language
frameworks, XML and data - Enterprise services - Web services with .NET.

Component Development: The methodology - component-oriented programming -


Problems of asynchrony – Multithreading - Learning from circuit design - Living without
implementation inheritance - Nutshell classes - Language support - Dynamic base objects
with forwarding semantics - Caller encapsulation - The environment, selecting target
frameworks - The tools, selecting programming languages.

Text Book:
Clemens Szypersk Dominik Gruntz and Stephan Mureri, Component Software
Beyond object- Oriented Programming, Pearson Education, Second Edition.

CS436 IMAGE ANALYSIS 3-0-0-3

Introduction to Image Processing and Image Analysis: Digitized image and its properties,
image sampling and quantization, image representation, thresholding (binarization), basics of
Morphological operations (Dilation, Erosion, Opening, Closing, Skeletonizing), Pre-
processing (Noise removal) and Segmentation. Foundations of 2D , 3D and nD image
processing

Medical Image Analysis: Specifics of medical imaging and medical image analysis, medical
imaging modalities, basics of medical imaging physics, medical image data formats.
Medical Image Segmentation, Medical Image Registration.Tissue characterization,
validation, cardiovascular, pulmonary – case studies

TEXT BOOKS:
1. Gonzalez and Woods, Digital Image Processing, Prentice Hall, 2007.
2. Atam .P. Dhawan, Medical Image Analysis, IEEE Press, 2003.

REFERENCES:
M.Sonka and J.Michael Fitzpatrick, Handbook of Medical Imaging, Volume 2,
Medical Image Processing and Analysis, 2000.

37
CS437 COMPUTER VISION 3-0-0-3

Introduction: Biological Vision Systems, Image Formation – properties and models of


sensor hardware, sampling and digitization, non-visible light imagery, camera models and
calibration, stereo and multi-view geometry.

Basic Image Processing: frequency space representation - simple transformation methods –


segmentation feature detection

Motion: optical flow, vector fields, reconstruction from optical flow, tracking, motion
segmentation and multiple motions

2D Object Recognition: 2D symbolic descriptors, image correlation, PCA, ICA.

3D Object Recognition: correspondence, pose, estimation of translation, rotation and scale


from point correspondences, choice of features

Learning and Statistical Models: ANNs, SVMs, EM and HMM - Tracking and Video
analysis - Applications of computer vision.

TEXT BOOKS:
1. Linda G. Shapiro and G. Stockman, Computer Vision, Prentice Hall, 2001.

REFERENCES:
1. David A. Forsyth and Jean Ponce, Computer Vision – A Modern Approach, Prentice
Hall, 2002.
2. E. R. Davies, Machine Vision: Theory, Algorithms, Practicalities, Morgan
Kaufmann, 2004.
3. Ramesh Jain, Rangachar Kasturi and Brian G. Schunck, Machine Vision, McGraw
Hill, 1995.

38
CS439 CRYPTOGRAPHY 3-0-0-3

Introduction and Classical Cryptosystems: Secure communication - Attacks to


cryptosystems - Classical cryptographic techniques and algorithms – Mono-alphabetic and
poly-alphabetic systems.

Mathematical Foundations: Number theory - Finite fields - Primitive roots – Square roots -
Exponentiation and discrete logarithm.

Secret-Key Cryptography: Block ciphers and stream ciphers. DES, AES, RC4 - Modes of
operation.

Public-Key Cryptography: One-way functions - Trapdoor one-way functions - Public-key


cryptosystems - RSA, Diffie-Hellman, ElGamal, and elliptic curve cryptosystems.

Authentication and Digital Signatures: Cryptographic checksums - Hash functions and


message-digest functions - Digital signatures - Authentication protocols.
Protocols: Digital cash - Sharing and partial disclosure of secrets – Games - Zero-knowledge
proof systems - Identification protocols - Key management architectures.

TEXT BOOKS:
1. William Stallings, Cryptography and Network Security, Pearson Education Asia,
Prentice Hall, Third Edition, 2000.
2. D. R. Stinson. Cryptography: Theory and Practice, CRC Press. Third Edition, 2005.

REFERENCES:
W. Trappe and L. C. Washington. Introduction to Cryptography with Coding Theory,
Prentice-Hall, 2002. ISBN: 0-13-061814-4.

CS441 DATA WAREHOUSING AND DATA MINING 3-0-0-3

Data Mining: Evolution and importance - kinds of data and functionalities - Classification of
database system - Major issues in Data Mining.

39
Data Preprocessing: Summarization – Cleaning – Integration and Transformation –
Reduction – Discretization and Concept Hierarchy.

Mining Frequent Patterns: Basic concepts – Frequent Item set mining methods – Mining
Association rules – from Association to correlation analysis.

Classification and Prediction: Issues in classification and Prediction – Decision Tree


Induction – Bayesian Classification – Rule-Based Classification – K-nearest neighbor
classifier – Prediction – Accuracy and Error Measures – Evaluating the accuracy- Increasing
the accuracy.

Cluster Analysis: Concept – Types – Partitioning methods – Hierarchical methods – Density


Based methods – Grid based methods – Model based methods – Outlier analysis.

Data Warehousing: Multidimensional data model – Data warehouse Architecture – Data


warehouse Implementation – Data warehouse to Data Mining – Mining objects, spatial,
multimedia, text and web data – Data Ming tools and applications – case study.

TEXT BOOKS:

1. Jiawei Han and Micheline Kamber, Data Mining Concepts and Techniques, Elsevier,
Morgan Kaufmann Publishers, Second edition, 2006.
2. K. P. Soman, Shyam Diwakar and V. Ajay, Insight into Data Mining Theory and
Practice, PHI of India, 2006.

REFERENCE:
1. William H Inmon, Building the Data Warehouse, Wiley Publications, Fourth Edition,
2005.

CS443 DECISION SUPPORT SYSTEMS 3-0-0-3

Introduction and Definitions: Introduction to Information Processing, Decision Making,


and Decision Support - DSS Basics – Frameworks for Organizational Information
Processing and Decision Making - Abilities Required for Decision Making - Communication

40
Driven DSS – Data Driven DSS – Document Driven DSS – Knowledge Driven DSS – Model
Driven DSS – History of DSS

Decision Making and Models: Classification Scheme for DSS - The Rational Model -
Simon’s Normative Model - Group Decision Making –Individual Decision Making -
Individual vs. Group Decision Making - The State Space Approach to Decision Support -
The Problem Reduction Approach to Decision Support - A Production System Approach to
DSS

Model Management: Introduction to Management Science, Spreadsheet, and Optimization


Modeling - Optimization Modeling Linear Programming Models - Network Models - Integer
Models - Nonlinear Models - Goal Programming and Trade-Off Curves - Decision Analysis -
Integrated Collaborative Decision Making (ICDM) Model: A Three-Tier Approach to Agent-
Based, Decision-Support Systems

Decision Support Systems & Database: Conceptual and Operational Constructs for
Building a Data Base Knowledge System - Conceptual Constructs for Representing
Knowledge - Simple Files and Tables - Associative Relationship between Aggregate
Concepts - Building a Data Base Knowledge System - Indirect Associations among Concepts

Language Systems for Data Base Knowledge Systems: Languages for Directing Retrieval
- Languages for Directing Computations in the Case of Data Base Knowledge Systems -
Problem-Processing Systems for Data Base Knowledge Systems - Problem Processing for
Retrieval-Only DSS - Problem Processors for Computationally Oriented DSS

Formal Logic Approach to Decision Support: The Language and Knowledge Systems of a
DSS Based on Formal Logic - Conceptual Framework - Operational Constructs - A
Language System for Predicate Expressions - Combining the Data Base and Formal Logic
Approaches – Data Mining Data Warehousing

TEXT BOOKS:
1. Daniel J. Power, Decision Support Systems: Concepts and Resources for Managers,
Quorum/Greenwood, 2002

41
REFERENCE:
1. Bonczek, R. H., C. W. Holsapple, and A. Whinston, Foundations of Decision Support
Systems, Academic Press, 1981

CS445 SOFTWARE EVOLUTION 3-0-0-3

Software Architecture: Data design - Architectural styles and Patterns - Architectural


Design - Mapped Data flow into software architecture - Case study.

Software Evolution and Maintenance: definitions - challenges inherent in software


evolution - The Defect Management Process - Impact analysis, refactoring and power-
programmer techniques for debugging.

Program Comprehension: Introduction to techniques for understanding software systems


built by others - Recognizing common architectural patterns. Code reading techniques for
program comprehension - Tools for program comprehension, in particular program slicing.

Evolution of Legacy Systems: Characteristics of legacy systems, and challenges for their
evolution. Migration of legacy systems. The re-technologies: re-structuring, reverse-
engineering - re-engineering – process model

Software Maintenance: The context of maintenance - Types of maintenance-tools and


techniques-matrix for maintenance and quality-configuration management.

Data-Oriented Challenges to Evolution: Specific challenges for migration of data-intensive


systems. Impact of data quality on migration of legacy systems. Challenges in
comprehending data intensive systems - Data re-engineering, and tools to support it -
Evolution of Package-Based Systems - problems inherent in maintenance - Testing and
debugging techniques - Glueware - wrappers and brokers

TEXT BOOKS:
1. Lowell Jay Arthur, Software Evolution: A Software Maintenance Challenge, John
Wiley and Sons, 1988

REFERENCES:

42
1. Sommerville, Software Engineering, Pearson Education, Eighth Edition, 2006.
2. Roger S Pressman, Software Engineering: A Practitioner's Approach, McGraw-Hill,
Sixth Edition, 2005.
3. Len Bass, Paul Clements, Rick Kazman, Software Architecture in Practice, Pearson
Education, Addison-Wesley, Second Edition, 2003.

CS447 PRINCIPLES OF MANAGEMENT 3-0-0-3

Introduction to Management: Managers and Management - History Module The Historical


Roots of Contemporary Management Practices, The Management Environment.
Planning: Foundations of Planning - Foundations of Decision Making - Quantitative Module
Quantitative Decision-Making Aids

Organizing: Basic Organization Designs - Staffing and Human Resource Management -


Career Module Building Your Career - Managing Change, Stress, and Innovation

Leading: Foundations of Individual and Group Behavior - Understanding Work Teams -


Motivating and Rewarding Employees - Leadership and Trust - Communication and
Interpersonal Skills

Introduction to Economics: The Firm and Its Goals - Review of Mathematical Concepts
Used in Managerial Economics, Supply and Demand - The Mathematics of Supply and
Demand, Demand Elasticity - Applications of Supply and Demand, Demand Estimation and
Forecasting, The Theory and Estimation of Production - The Multiple-Input Case -
Expressing the Production Function with the Use of Calculus, The Theory and Estimation of
Cost - A Mathematical Restatement of the Short-Run Cost Function - The Estimation of Cost

Pricing and Output Decisions: Perfect Competition and Monopoly - The Use of Calculus
in Pricing and Output Decisions - Break-Even Analysis (Volume-Cost-Profit), Monopolistic
Competition and Oligopoly - Special Pricing Practices

TEXT BOOKS:
1. Stephen P, Robbins David A. De Cenzo, Fundamentals of Management, Prentice Hall
Sixth Edition, 2008. ISBN- 10: 0136007104, ISBN-13: 9780136007104

43
2. Paul G. Keat, Philip K. Young, Managerial Economics: Economic Tools for Today's
Decision Makers, Prentice Hall, Fifth Edition, 2006, ISBN-10: 0131860151, ISBN-
13: 9780131860155.

CS449 SOFTWARE BUSINESS 3-0-0-3

Business of Software: An overview


Strategy for software companies: What to think about
Services, products and more services: How software becomes a business
Best Practices in Software development: Beyond the Software factory
Software Entrepreneurship: Essentials Elements of Successful Start-up
Startup case studies: Software Products, Services and Hybrid Solutions
The “Ideal “versus “Realistic” Software Business

TEXT BOOKS:
1. Cusumano, Michael A, The Business of Software: What Every Manager,
Programmer, and Entrepreneur Must Know in Good Times and Bad, New York, NY:
Free Press, 2004. ISBN: 074321580X.
2. Moore, Geoffrey, Crossing the Chasm: Marketing and Selling High-Tech Products to
Mainstream Customers, Revised ed. New York, NY: HarperBusiness, 1999. ISBN:
0887307175.

REFERENCES:
1. Campbell-Kelly, Martin, A History of the Software Industry: From Airline
Reservations to Sonic the Hedgehog, Cambridge, MA: MIT Press, 2003. ISBN:
0262033038.
2. McConnell, Steve, Rapid Development, Redmond, WA: Microsoft Press, 1996.
ISBN: 1556159005.
3. Moody, Glyn, Rebel Code: Inside Linux® and the Open Source Revolution.
Cambridge, MA: Perseus Publication, 2001. ISBN: 0738203335.
4. Nesheim, John, High-Tech Start Up, New York, NY: Free Press, 2000. ISBN:
068487170X.

44
CS491 COMPUTER GRAPHICS AND VISUALIZATION LABORATORY 0-0-3-1

1. Implementation of mid-point line algorithm to generate a line of given slope and


thickness.
2. Implementation of mid-point circle drawing algorithm to draw a circle. Modify the
algorithm to draw a specified arc or sector.
3. Implementation of Cohen-Sutherland Line-Clipping algorithm.
4. Program to draw a rectangle and perform the following operations:
(i) Rotation about origin followed by translation.
(ii) Rotation about an arbitrary point.
(iii) Scaling about origin followed by translation.
(iv) Scaling with reference to an arbitrary point.
(v) Reflection about the line y=mx+c.
(vi) Apply X and Y shear on the rectangle.
5. Program to draw the Hermite and Bezier curves for a given set of control points.
6. Program to fill a polygon using (i) Flood fill algorithm (ii) Scanline Fill algorithm.
7. To gain a working literacy in multimedia production "tools” like Photoshop, Flash

Mini Project: To design a simple graphics editor with the following functions
(i) Draw and color different shapes
(ii) Perform basic transformations

CS493 COMPUTER LANGUAGE ENGINEERING LABORATORY 0-0-3-1

1. Program for performing the operations on languages.


2. Program to implement the lexical analyzer using DFA.
3. Program to find the Closure of the given Grammar.
4. Program for Constructing NFA using Thompson’s Algorithm.
5. Program to implement the Recursive Descent parsing.
6. Program for Constructing DFA from a regular Expression.
7. Program to find leading and Trailing of the given Grammar.
8. Program for constructing Predictive Parsing table.
9. Program to implement Shift reduce parsing Algorithm.
10. Program to implement Operator precedence Parsing Algorithm.
11. Program for constructing LR Parsing table.

45
12. Program to generate DAG for the given expression.
13. Program to simulate the storage management.
14. Program to generate a code for a given intermediate code.

46

Вам также может понравиться