Government College for Women, Kumbakonam

GOVERNMENT COLLEGE FOR WOMEN, KUMBAKONAM

M.Sc COMPUTER SCIENCE

CHOICE BASED CREDIT SYSTEM 2008-2009

SEMESTER / COURSE / COURSE TITLE / Ins.Hrs/week / Credit / Marks / Total
Int / Ext
I / Core Course-I / Mathematical foundations / 6 / 5 / 25 / 75 / 100
Core Course-II / Software Lab –I C++ / 6 / 5 / 25 / 75 / 100
Core Course-III / Object Oriented Programme concepts with C++ / 6 / 5 / 25 / 75 / 100
Core Course-IV / Distributed Operating System / 6 / 5 / 25 / 75 / 100
Elective Course-I / Software Engineering / 6 / 5 / 25 / 75 / 100
II / Core Course-V / Internet Programming / 6 / 5 / 25 / 75 / 100
Core Course-VI / Unified Modeling Language / 6 / 5 / 25 / 75 / 100
Core Course-VII / Java Programming Lab - II / 6 / 5 / 25 / 75 / 100
Elective Course-II / Multimedia and Web designing / 6 / 5 / 25 / 75 / 100
Non – Major Elective Course –I / Fundamentals of IT / 3 / 2 / 25 / 75 / 100
Non – Major Elective Course-II / Web Programming / 3 / 2 / 25 / 75 / 100
III / Core Course-VIII / Complier Design / 6 / 5 / 25 / 75 / 100
Core Course-XI / Database management system / 6 / 5 / 25 / 75 / 100
Core Course- X / Microprocessor and Interfacing / 6 / 5 / 25 / 75 / 100
Core Course- XI / Artificial intelligence and Neural Networks / 6 / 5 / 25 / 75 / 100
Core Course- XII / Web Designing Lab / 6 / 5 / 25 / 75 / 100
IV / Core Course-XIII / Data communication and Networks / 6 / 6 / 25 / 75 / 100
Core Course-XIV / Data mining / 6 / 6 / 25 / 75 / 100
Project / Project / 18 / 6 / 25 / 75 / 100

MATHEMATICAL FOUNDATIONS

UNIT-I

Mathematical Logic-Introduction-Statements and Notations – Connectives - Negation - Conjunction - Disjunction - Statement Formulas and Truth Tables – Logical Capabilities of Programming Languages-Conditional and Biconditional-Well-Formed Formulas Tautologies-Equivalence of Formulas-Duality Law-Tautological Implications-Formulas With Distinct Truth Table-Functionality Complete Sets of Connectives-Two-State Devices and Statement Logic-Normal Forms-Disjunctive Normal Forms-Conjunctive Normal Forms-Principle Disjunctive Normal Form-Principle Conjunctive Normal Forms-Ordering and Uniqueness of Normal Forms-Completely Parenthesized Infix Notation and Polish Notation – The theory of inference for the statement calculus – validity using truth tables- rules of inference – consistency of premises and indirect method of proof – automatic theorem proving..

UNIT-II

Set Theory-Introduction-Basic Concepts of Set Theory-Notation-Inclusion and Equality of Sets-The Power Set-Some Operations on Sets-Venn Diagrams-Some Basic Set Identities-The Principle of Specification-Ordered Pairs-and n-tuples-Cartesian Products-Representation of Discrete Structures-Data Structures-Storage Structures-Sequential Allocation-Pointers and Linked Allocation An Application of Bit Represented Sets.

UNIT-III

Relations and ordering-Relations-Properties of Binary Relations In a Set-Relation Matrix and The Graph of a Relation-Partition and Covering of a Set-Equivalence Relations – Compatibility Relations-Composition of Binary Relations Partial Ordering-Partially Ordered Set: Representation and Associated Terminology-Functions-Definition and Introduction-Composition of Functions-Inverse functions - Binary and n-ary Operation-Characteristics Function of a Set Hashing Functions

UNIT-IV

Introduction: What is Graph-Application of Graph-Finite and Infinite Graph-Incidence and Degree-Isolated Vertex,Pendant Vertex,and Null Graph-Isomorphism-Subgraphs-Walks,Pathsand Circuit-Operation of Graphs-Trees-Some Properties Of Trees-Pendant Vertices in a Tree.

UNIT-V

Cut Sets-Fundamental Circuitsand Cut Sets-Incidence Matrix-Circuit Matrix-Cut-Set Matrix- Path Matrix-Adjacency Matrix.

TEXT BOOK:

For unit I,II,III Discrete Mathematical Structures With Applications to Computer Science.-J.P.Tremblay ,R.Manohar

For unit IV,V graph Theory-Narsingh Deo.

REFERENCE:

1.”Discrete Mathematics ”,Seymour Lipschutz and Mare Laris Lipson,m2nd Edn., Schaum’s outline by Tata Mc GrawHill Publishing Company Ltd,New Delhi 1999.

2.Introductory Mathematical Statistics”, Erwin Kryszig,Zohn Wiley and sons,New Yark,1990.

Object Oriented Programming concepts with c++

UNIT-I

An Overview of c++-The Origins of c++-What is Object Oriented Programming-Some c++ Fundamentals-Classes and Objects-Classes-Structures and Classes are Related-Unions and Classes Are related-Friend Functions-Friend Classes-Inline Functions-When Constructors and Destructors Are Executed-Passing Objects To Functions-Object Assignment.

UNIT-II

Arrays,Pointers,References and the Dynamic Allocation Operators : Arrays of Objects-Pointers to Object Type Checking c++ Pointers-the This Pointer-Pointers to Derived Types-Pointers to Class Members-c++’s Dynamic Allocation Operators-Initializing Allocated memory-Allocating Arrays-Allocating Objects--The Placement Form of new and Delete-Copy Constructors-Finding the Address of an Overloaded Functions- Default Function Arguments.

UNIT-III

Operator Overloading:Creating a member Operator Function-operator Overloading Using a Friend Function-Overloading new and Delete-Overloading Some Special Operator-Overloading the Comma Operator-Inheritance-base-Class Access Control-Inheritence And Protected Members-Constructors,DestructorsAnd Inheritance-Granting Access-Virtual Base Classes.

UNIT-IV

Virtual Functions And Polymorphism:Virtual Functions-The Virtual Attribute Is Inherited-Virtual Functions are Hierarchical-Pure Virtual Functions-Templates-Generic Functins-Applying Generic Functions-Exception Handling: Exception Handling Fundamentals-Handling Derived Class Exception-Exception Handling Options-Catching All Exceptions-Restricting Exceptions-Rethrowing an Exceptions.

UNIT-V

The C++ I/O System Basics:Old Vs.Modern C++ I/O-C++ Streams-The c++ Stream Classes-c++ predefined streams-formatted I/O,formatting using the ios members – setting the format flags-clearing format flags-an overloaded form of setf()-examining the formatting flags-setting all flags-Formated I/O-Using With(),Precision(),and Fill()-Using Manipulators to Formatted I/O-C++ File I/O:<fstream> and the file classes,opening and closing a file,reading and writing text files,unformatted and binary I/O, more get()( functions,getline()function,detecting EOF, ignore function,peek() and putback(),flush(). Unformatted and Binary I/O-Random Access.

Text Book:

“The complete reference c++” – Herb schildt- Third Edition.

Unit I - Chap(11,12),Unit II- Chap(13,14),Unit III-Chap(15,16),Unit IV – Chap(17,18,19),Unit V- Chap(20,21).

Reference Book :

“Programming in c++” – Balaguruswamy-Fourth Edition.

DISTRIBUTED OPERATING SYSTEM

UNIT I:

Distributed Computing Systems:

Evolution – Models – Distributed Operating System – Issues in designing DOS – Distributed Computing environment

UNIT II:

Communication in Distributed System:

Protocols – Features of a Good Message Passing System – Issues in IPC by Message Passing – Synchronization – Buffering – Process addressing – Failure handling – Group Communication

Synchronization:

Clock Synchronization – Event ordering – Mutual Exclusion – Deadlock .

UNIT III:

Security:

Potential Attacks to Computer systems – Cryptography – Authentication – Access control – Digital Signatures – Design Principles

UNIT IV:

File System Structure:

History – System structure – User perspective

Internal Representation of files:

Inodes – Structure of a regular file – Directories – Conversion of a path to an inode – Super block – Inode Assignment to a new file – Allocation of Disk blocks

System Calls for the file system:

Open – Read – Write – Close – File creation – Creation of special files – Change Directory, root owner and mode – stat and fstat - pipes – dup – mounting and unmounting file systems – link and unlink

UNIT V:

Interprocess Communication:

Process tracing – System V IPC – Sockets

Multiprocessor Systems:

Problem of multiprocessor systems – solution with master and slave processors – solution with semaphores

Text Book:

1.  For units 1,2, and 3: Pradeep K. Sinha, “Distributed System Concepts and Design”, PHI Pvt. Ltd, 1998

2.  For units 4 and 5: Marice J Bach, “The Design of UNIX OS”,

Reference Book:

1.  Andrew S. Tanenbaum, “Modern Operating Systems”

2.  W. Richard Stevens, “UNIX Network Programming”

SOFTWARE LAB I – C++

Part A:

1.  Interest calculation using classes

2.  Initialization and destruction of a string array using constructor and destructor

3.  Accessing private items of the given class using friend function

4.  Write a class named Time whose objects represent specific times of a day with member functions for increasing or decreasing the time by a given number of seconds

5.  Add two complex numbers using operator overloading

6.  Develop an object oriented program to create a database of the following items of the derived class:

a.  name of the patient

b.  sex

c.  age

d.  ward number

e.  bed number

f.  nature of illness

g.  date of admission

Design a base class consisting of data members namely, name of the

patient, sex and age. Another base class consists of ward number,

bed number and nature of illness. The derived class consists of data

member, date of admission. Design a virtual class for the data member,

namely, name of the patient, sex and age.

7.  Create a base class called shape. Use this class to store two double type

values that could be used to compute the area of figures. Derive two specific classes called triangle and rectangle from the base shape. Add to the base class, a member function get_data() to initialize base class data members and another member function display_area() to compute and display the area of figures. Make display_area() as a virtual function and redefine this function in the derived classes to suit their requirements.

Part – B: Data Structures:

8.  Write object oriented programs to implement the following

a.  Creation, modification, insertion and deletion operations in stacks and queues.

b.  Creation, modification, insertion and deletion operations on singly linked lists

c.  Implementing binary tree using arrays & traversing.

9.  Write object oriented programs for

a.  Insertion sort

b.  Heap sort

10.  Write object oriented programs for

a.  Linear Search

b.  Binary Search

SOFTWARE ENGINEERING

UNIT I:

Software Processes: Software process models – Process iteration – The Rational Unified Process – Computer-Aided Software Engineering. Project Management: Management activities – Project planning – Project Scheduling – Risk management. Software requirements: Functional and non-functional requirements – User requirements – System requirements – Interface specification – The Software requirements document. Requirements engineering process: Feasibility studies – Requirements elicitation and analysis – Requirements validation – Requirements management.

UNIT II:

System models: Context - Behavioural models – Data models – Object models – Structured models. Critical systems specification: Risk-driven specification – Safety specification – Security specification – Software reliability specification. Formal specification: Formal specification in the software process – Sub-system interface specification – Behavioural specification.

UNIT III:

Design: Architectural Design: Architectural Design decisions – System organization – Modular decomposition styles – Control styles – Reference architectures – Object-Oriented Design: Objects and object classes – An object-oriented design process – Design evolution. Real-Time Software Design: System design – Real-time operating systems – Monitoring and control systems – Data acquisition systems. User Interface Design: Design issues – The UI design process – User analysis – User interface prototyping – Interface evaluation.

UNIT IV:

Verification and Validation: Planning verification and validation – Software inspections – Automated static analysis – Verification and formal methods. Software Testing: System testing – Component testing – Test case design – Test automation. Critical Systems validation: Reliability validation – Safety assurance – Security assessment – Safety and dependability cases.

UNIT V:

Software Cost Estimation: Software productivity – Estimation techniques – Algorithmic cost modeling – Project duration and staffing. Quality Management: Process and product quality – Quality assurance and standards – Quality planning – Quality control – Software measurement and metrics. Configuration Management: Configuration management planning – Change management – Version and release management – System building – CASE tools for configuration management.

Text book:

1.  “Software Engineering” – Sommerville

Reference Book :

1.  “Software Engineering” – Roger Pressman

2.  “Software Engineering Concept” – Richard Fairley

INTERNET PROGRAMMING (JAVA, SERVELETS, JSP)

UNIT I:

The Genesis of Java – Introducing Classes – A Closer Look at Methods and Classes – Inheritance.

UNIT II:

Packages and Interfaces - Packages - Access protection– Importing Packages – Interfaces - Exception Handling – I/O, Applets and Other Topics – I/O Basics – Reading Console input – Writing Console output – Native methods - Special string Operations – Character
Extraction – String Comparision – Searching Strings-Using assert.

UNIT III:

Event Handling – Introducing the AWT: Working with Windows, Graphics and Text AWT Classes-Window Fundamentals-Working With Frame Windows-Creating a Frame Window in an Applet-Working With Graphics-Working with Color-Working with Fonts- Using AWT Controls, Layout Managers and Menus Control Fundamentals-Lables-Using Butttons-Applying CheckBoxes-CheckBoxGroup-Choice Controls-Using Lists-Managing Scroll Bars– –Using a TextField-Using a TextArea-Understanding Layout Managers-Menu Bars and Menus-Dialog box –File Dialog –Handling Events by Extending AWT Components.

UNIT IV:

Java Database Connectivity and Connection Pooling – Servlets-background-The Life Cycle of a Servlet-A Simple Servlet-The Servlet API-the Javax.Servlet Package-Reading Servlet Parameter- the Javax.Servlet.http Package-handling HTTP Request and Responces-Using Cookies-Session Tracking-Security Issues.

UNIT V:

Introducing Java Server Pages – The Basics – Beneath JSP

Text Book:

1.  For Units I,II,III – “The Complete Reference” – Herbert Schildt

2.  For Units IV, & V – “Professional JSP” – Wrox Press Ltd.

Reference Book:

1.  Internet & World Wide Web – Dietel & Dietel

2.  Java Web Development – Ivan Bayross

UNIFIED MODELING LANGUAGE

UNIT I:

Principles of modeling – Object oriented modeling – Introduction to UML – Basic structural modeling: Classes – Relationships – Common mechanisms – Diagrams – Class diagrams

UNIT II:

Advanced Structural modeling: Advanced Classes – Advanced Relationships – Interfaces, Types and Roles – Packages – Instances – Object diagrams

UNIT III:

Basic behavioral modeling: Interactions – Use Cases – Use Case Diagrams – Interaction Diagrams – Activity Diagrams

UNIT IV:

Advanced Behavioral Modeling: Events and Signals – State Machines – Processes and Threads – Time and Space – State Chart Diagrams

UNIT V:

Architectural Modeling: Components – Deployment – Collaborations – Patterns and Frameworks – Component Diagrams – Deployment Diagrams – Systems and Models

Text Book:

1.  “The Unified Modeling Language User Guide”, Grady Booch, Janes Rumbuage and Ivar Jacobson – Addison Welsley – 4th Indian Reprint 2000

Reference Book

1.  “Instance U ML” , Pierre – Alain Muller – Wrox Press Ltd., Shroff Publishers and

Distributors Pvt. Ltd.,

SOFTWARE LAB II-JAVA PROGRAMMING

1.  Classes And Objects

2.  Inheritance

3.  Packages and Interfaces

4.  Method Overloading

5.  String Handling

6.  Exception Handling

7.  Create Bio-data format using Applet