The document provides an overview of the course contents for Discrete Mathematical Structures. The course covers topics such as mathematical logic, relations, combinatorics, recurrence relations, graph theory, group theory, formal languages, and finite automata over 42 lectures. The course aims to introduce foundational mathematical concepts and techniques that are applicable to computer science and software engineering.
MSc CST (5yr Integrated Course ) Syllabus - Madras University
ME SOFTWARE ENGINEERING FIRST SEMESTER SUBJECTS
1. ME SOFTWARE ENGINEERING FIRST SEMESTER
09ZS01 DISCRETE MATHEMATICAL STRUCTURES
MATHEMATICAL LOGIC: Prepositions-Logical operator-Equivalence and implication-Laws of logic- Normal forms-
prepositional calculus-Quantifiers. (5)
RELATIONS: Binary relations-Relation matrix and graph of relation-Partition,covering a set-Equivalence relation-Partial
ordering-Hasse diagram. (5)
COMBINATORICS: Counting methods for arrangement and selections-Two basic counting principles-Arrangements and
selections with repetition -Generating functions. (6)
RECURRENCE RELATIONS: Recurrence relation models-Solution of linear recurrence relations-Solution of non-
homogeneous linear relations. (5)
GRAPH THEORY: Representation of graphs-Connectivity-Eulerian and Hamiltonian graphs-Trees-Binary tree traversal –
Expression. (6)
GROUP THEORY: Group axioms-Semi groups-Monoids-Applications to generation of codes using parity checks-Error
recovery in group codes. (5)
FORMAL LANGUAGES: Four classes of grammars-Definitions-Context free grammar-Derivation tree-Ambiguity. (4)
FINITE AUTOMATA: Definition of deterministic finite state automaton(DFA),Non deterministic finite state
automaton(NFA)- Equivalence of DFA and NFA. (6)
Total 42
REFERENCES:
1. Bernard Kolman, Robert C Busby and Sharan Ross,”Discrete Mathematical Structures”, Pearson Education/Prentice
Hall of India, NewDelhi, 2008.
2. Kenneth H Rosen,”Discrete Mathematics and its Applications”, Mcgraw Hill Inc, USA, 2007.
3. Alan Tucker,”Applied Combinatorics”, John Wiley and Sons, USA, 2007.
4. Doerr Alan and Levasseur Kenneth, ”Applied Discrete Structures for Computer Science”, Galgotia Publication (P)
Ltd, New Delhi, 2000.
09ZS02 SOFTWARE ENGINEERING METHODOLOGIES
3003
INTRODUCTION: Definitions, Characteristics of Software - Software Engineering vs other engineering disciplines –
Software Myths – Software Life Cycle Models – Selection of Software Process models. (8)
REQUIREMENT ANALYSIS: Prototyping – Specification – Analysis modeling. (8)
SOFTWARE DESIGN: Software design – Abstraction – Modularity – Software architecture – Effective modular design –
Cohesion and Coupling – Architectural design and procedural design – Data flow oriented design. (8)
USER INTERFACE DESIGN: User Interface design – Human factors – Human computer interaction – Human –
Computer interface design – Interface design – Interface standards. Programming languages and coding – Language
classes – Code documentation – Code efficiency – Software configuration management. (6)
PROGRAMMING STANDARDS: Need for structured programming – Coding standards – Maintainability of programs. (3)
TESTING TECHNIQUES: Software testing – Path testing – Control structures testing – Black Box testing – Unit,
Integration, Validation and system testing – Software Maintenance. (6)
TRENDS IN SOFTWARE ENGINEERING: Reverse Engineering and Re-engineering – wrappers – Case Study of CASE
tools. (3)
Total 42
REFERENCES:
2. 1. Roger S Pressman,” Software Engineering – A Practitioner’s Approach”, McGraw Hill, USA, 2007.
2. Sommerville I, “Software Engineering”, Pearson Education India, New Delhi, 2006.
3. Pfleeger, ”Software Engineering”, Pearson Education India, New Delhi, 1999.
4. Carlo Ghezzi, Mehdi Jazayari and Dino Mandrioli, “Fundamentals of Software Engineering”, Prentice Hall of India,
New Delhi, 1991.
09ZS03 FOUNDATIONS OF OBJECT ORIENTED SYSTEMS
3003
INTRODUCTION: Overview of System Analysis, Structured System Analysis- Object Oriented Analysis- Comparison of
SSA and OOA. (3)
OBJECT MODELING: Evolution of object models- Object modeling- Major and Minor elements of object models- Object
Classifications- Objects and their relationships- Classes- Class relationships – Association- Aggregation- Inheritance-
Instantiation- Using. (6)
UML AND USE CASE MODELING : UML: an Introduction- Views and Diagrams- extended UML - Modeling requirements
using use case diagrams – Components of use case model- Components of a use case diagram- steps in processing
requirements specifications to construct use case diagram- Use case identification and description. (7)
WORKFLOW AND BEHAVIORAL MODELING: Modeling workflows using Activity diagrams: Components of activity
diagrams- Steps in construction – Examples - Modeling behavior with state diagrams: Notations- Nesting of states- steps
in construction – Examples. UML Interaction diagrams: Interaction diagrams – Components- steps in construction-
examples. Collaboration diagrams- Timing diagrams- Interaction overview diagrams. (8)
STRUCTURAL MODELING: Class diagrams- Object diagrams- Component diagrams- Deployment diagrams- Package
diagrams- Composite structure diagrams. (6)
OTHER OBJECT ORIENTED METHODOLOGIES: Booch methodology- OMT- Coad/Yourdon approach- Shalear/
Mellor’s approach- OOSE- Comparative study. (8)
CASE STUDIES: Patterns and frameworks- Modeling ATM, e-shop, Cruise Control System, cellular network. (4)
Total 42
REFERENCES:
1. Grady Booch, James Rumbaugh and Ivar Jacobson, “The Unified Modeling Language User Guide”, Addison-Wesley
Longman, USA, 2005.
2. Ali Bahrami, “Object Oriented System Development”, McGraw Hill International Edition, Singapore, 1999.
3. Fowler, “Analysis Patterns”, Addison Wesley, USA, 1996.
4. Erich Gamna, “ Design Patterns”, Addison Wesley, USA, 1994.
09ZS04 DATA STRUCTURES
3003
INTRODUCTION TO DATA STRUCTURES: Problem Solving using Computers – Abstraction - Abstract data types- Data
Representation - Elementary Data types - Basic Concepts of Data Structures - Mathematical Preliminaries – Efficiency of
algorithms - Time and space complexity – Asymptotic Notation - Performance measures for data structures- Examples
and real life applications. (4)
STACK: Definition- Array based implementation of stacks- Linked List based implementation of stacks- Introduction to
Recursion.
Applications: Infix, postfix, prefix representation, Conversions (5)
QUEUES AND LISTS: Definition- Array based implementation of Queues / Lists- Linked List implementation of Queues /
Lists- Circular implementation of Queues and Singly linked Lists- Linear / circular implementation of doubly linked Queues
/ Lists-Priority Queues - Applications. (6)
TREES: Definition of trees and Binary trees- Properties of Binary trees- Binary Traversal pre-order, post order, Inorder
traversal- Applications of binary trees – Huffmann coding - Binary Search Trees (recursive & non–recursive Algorithms)-
Threaded trees- Balanced multi way search trees-AVL Trees - Implementations - Applications of Search trees – TRIE, 2-3
tree, 2-3-4 tree, Red-Black trees. (7)
GRAPHS: Undirected and Directed Graphs and Networks- Array based implementation of graphs- Adjacency matrix-
Path matrix implementation- Linked list representation of graphs - Graph Traversal – Breadth first Traversal, Depth first
Traversal- Tables: Definition, Hash function, Implementations and Applications. (7)
3. SORTING ALGORITHMS: Introduction- Sorting Techniques : Bubble sort, Straight selection sort- Shell sort, Performance
of shell sort- Heap sort : Heap Construction, Heap sort – complexity analysis of all sorting techniques . (6)
ALGORITHM DESIGN PARADIGMS: Divide and Conquer: Merge Sort, Quick Sort, Greedy: Shortest path, MST,
Dynamic programming: Multistage, optimal binary search tree, Backtracking: graph coloring, sum of subset problem –
Complexity analysis. (7)
Total 42
REFERENCES:
1. Mark Allen Weiss, “Data Structures and Algorithm Analysis in C”, Pearson Education, New Delhi, 2006.
2. Chitra A and Rajan P T, “Data Structures”, Vijay Nicole Imprints Private Limited, Chennai, 2006.
3. Yedidyah Langsam, Moshe J Augenstein and Aaron M Tanenbaum, "Data Structures using C and C++", Prentice
Hall of India, New Delhi, 2000.
4. Robert Sedgewick, "Algorithms in C, Parts 1-5 (Bundle): Fundamentals, Data Structures, Sorting, Searching,
and Graph Algorithms", Addison Wesley, USA, 2001.
5. Tremblay,Sorenson J P and Paul G, "An Introduction to Data Structures with Applications", Tata McGraw Hill, New
Delhi, 2008.
6. Sara Baase and Allen Van Gelder, "Computer Algorithms – Introduction to Design and Analysis", Pearson
Education, New Delhi, 2002.
7. Richard F Gilberg and Behrouz A Forouzan, "Data Structures – A Pseudocode Approach with C++", Thomson
Brooks/Cole, Singapore, 2002.
8. Thomas H Cormen, Charles E Leiserson, Ronald L Rivest and Clifford Stein, "Introduction to Algorithms", MIT Press,
Cambridge, 2001.
09ZS06 DATABASE SYSTEMS
3024
DATABASE SYSTEM CONCEPT: File system – Storage structures - Database systems – Database systems
architecture – Data models – Relational model, Hierarchical model, Network model, Object relational model, Object
Oriented model– Data Dictionary – Database Administration. Relational database concepts: Codd’s rule – Base tables –
Views - Domains and Key concept – Integrity rules – Relational Algebra. (8)
SOFTWARE DEVELOPMENT LIFECYCLE: Introduction to SDLC – Database development Lifecycle. (4)
DESIGN:
Logical Database Design: ER model: Entity Relationship diagram - Extended ER diagram – Mapping ER diagram to
relations. Normalization: 1NF to 5NF- Domain Key Normal Form – Denormalization. (6)
Physical Database Design: Commercial query languages – SQL, Options for SQL Extensions, Embedded SQL, Call
Level Interface. (5)
QUERY PROCESSING AND OPTIMIZATION: Query Processing - Heuristics Query Optimization - Cost Based Query
Optimization. (5)
DATABASE SYSTEM IMPLEMENTATION ISSUES:
Transaction processing: Introduction - Properties of Transaction – Serializability- Concurrency Control – Locking
Mechanisms- Two Phase Commit Protocol-Dead lock. Indexing and Hashing – Backup and recovery – Security and
Integrity – Database Tuning. (6)
TRENDS IN DBMS: Client-Server computing and Distributed Databases - Web Databases – Mobile Databases – Active
Databases – Temporal Databases – Spatial and Multimedia Databases – Statistical Databases – Deductive databases.
OLTP and OLAP. (8)
Total 42
Lab components:
1. Study of DDL and DML commands
2. Study of DCL and TCL commands
3. Study of Transact SQL
4. Study of MySQL
REFERENCES:
1. Ramez Elmasri and Shamkant B Navathe, “Fundamentals of Database Systems”, Addison Wesley, USA, 2007.
2. Raghu Ramakrishnan and Johannes Gehrke, “Database Management Systems”, McGraw-Hill, USA, 2008.
3. Abraham Silberchatz, Henry F Korth and S Sudarshan, “Database System Concepts”, McGraw-Hill, USA, 2008.
4. Atul Kahate, “Introduction to Database Management Systems”, Pearson Education, New Delhi, 2004.
4. 09ZS09 OPERATING SYSTEMS
INTRODUCTION: Operating Systems-Objectives and Functions-Evolution of Operating Systems-Structure of Operating
System-Components of Computers. (2)
MEMORY MANAGEMENT: Memory hierarchy-Partitioning-Buddy Systems-Paging-Segmentation-Virtual Memory. (8)
PROCESS MANAGEMENT: Process Creation-Process states-Threads-Synchronization-Process Scheduling Algorithms-
Concurrent Process –Deadlock.
(6)
FILE AND I/O MANAGEMENT: I/O functions-I/O devices-Disk Scheduling Algorithms, File Management Systems-File
System Architecture-Functions of File Management-File Directories-Secondary Storage Management-File Allocation. (8)
INTRODUCTION TO LINUX: History- Architecture and Structure-Process Management-Inter Process Communication-
Memory Management-I/O and File Management. (6)
LINUX ADMINISTRATION: Basic Commands-Installing and Configuring Linux-Shell Scripting-Users and Groups-
Package installation-Network Configuration-Backup and archives-Configuring and using X Windows. (8)
VMWARE: Introduction- Virtualization- Virtual Data Center Operating System- Storage Virtualization -Virtual Networking-
Virtual Security. (4)
Total 42
REFERENCES:
1. Silberschatz A, Galvin P and Gagne G, “Operating System Concepts” John Wiley and Sons, Singapore, 2007.
2. Dhamdhere D M, “Operating Systems- A Concept based Approach”, Tata McGraw Hill, New Delhi, 2006.
3. Daniel P Bovet and Macro Cesati, “Understanding the Linux Kernel”, O’reilly publications, USA, 2006.
4. William Stallings, “Operating Systems”, Prentice Hall, New Delhi, 2004.
5. William J Lowe, “VMware Infrastructure 3 for dummies”, John Wiley and Sons, USA, 2008.
09ZS55 OBJECT COMPUTING AND DATA STRUCTURES LABORATORY
0032
1. Construct the Following UML diagrams for any one application (like ATM, Online Shopping, Lift operation)
Activity diagram, Use Case diagram, State diagram, Sequence diagram, Collaboration diagram, Class diagram,
Deployment diagram, Package diagram and Code generation.
2. Sieve of Eratosthenes (Lists)
3. Long Integer Arithmetic (Lists)
4. Conversion and Evaluation of Expressions (Stack)
5. Scheduling Algorithms Simulation (Queues)
6. Huffmann Coding (Binary tree + Heaps)
7. Shortest path related applications – Traveling Salesman Problem
5. ME SOFTWARE ENGINEERING SECOND SEMESTER
09ZS05 COMPUTER NETWORKS
3003
INTRODUCTION: Objectives of Computer Networks- Switching- Topologies- OSI Reference Model. (4)
LAN ACCESS TECHNIQUES: Transmission media- Polling-Contention-ALOHA-CSMA-CSMA/CD-Token bus and Token
Ring Protocols. (7)
INTERNETWORKING: Network Devices-Hubs, Switches, Bridges, Routers, Brouters, Gateways and Repeaters-
Ethernet-FDDI- VLAN- Routing Algorithms- Congestion Control Algorithms. (9)
NETWORK PROTOCOLS: Introduction - UDP - TCP- IP – IPv4 and IP v6 – IP Addressing- Subnetting- IP Routing-
Routing Protocols- WAN Technologies. (9)
NETWORK MANAGEMENT AND APPLICATIONS: SNMP, V2, V3- RMON- Telnet- FTP- SMTP - DNS. (8)
ADVANCED NETWORK ARCHITECTURES: Integrated Services in the Internet- Differentiated Services- Multimedia
Networking-Blue tooth Technology. (5)
Total 42
REFERENCES:
1. Peterson, Davie and Morgan Kaufman, “Computer Networks- A Systems Approach”, Harcourt Asia, New Delhi,
2000.
2. Andrew S Tanenbaum, “Computer Networks”, Prentice Hall India, New Delhi, 2007.
3. Behrouz A Forouzan, “Data Communications and Networking” Tata McGraw-Hill, New Delhi, 2008.
4. William Stallings, “SNMP, SNMP V2, SNMP V3, RMON1 and 2”, Addison Wesley, USA, 2003.
5. Vijay Ahuja, “Design and Analysis of Computer Communication Networks”, Tata Mc Graw Hill Ltd, New Delhi,
2008.
6. Kurose J F and Ross K W, “Computer Networking-A Top Down Approach Featuring the Internet”, Pearson
Education India, New Delhi, 2005.
09ZS07 SOFTWARE TESTING AND QUALITY ASSURANCE
3003
TESTING FUNDAMENTALS: Principles of testing- Software development life cycle models-Types of testing- White box
testing- Black box testing- Integration Testing –System and acceptance testing- Performance testing -Regression testing
– Internalization testing – Ad hoc testing – Testing of object oriented systems – Usability and accessibility testing. (9)
TEST MANAGEMENT AND AUTOMATION: Introduction – Test Planning – Test Management –Software test automation
– Scope of automation – Test automation tools – Generic requirement for test tool/framework – Selecting a test tool –
Challenges in automation. (9)
SOFTWARE QUALITY METRICS: Software Measurement and Metrics – Measurement Theory – Software quality
metrics – Product quality metrics – Software maintenance metrics – Collecting software engineering data. (9)
SOFTWARE QUALITY ASSURANCE: Software quality in business context – Planning for software quality assurance –
Product quality and process quality – Software process models – ISO – Capability Maturity Model – CMMi – People CMM
– Test Maturity Model. (9)
TESTING PROJECTS: Managing Testing projects and groups – Legal consequences of defective software – Managing a
testing group – Role of testing group. (6)
Total 42
REFERENCES:
1. Gopalswamy Ramesh and Srinivasan Desikan, “Software Testing: Principles and Practices”, Pearson Education,
New Delhi, 2006.
2. Nina S Godbole, “Software Quality Assurance: Principles and Practice”, Narosa Publishers, New Delhi, 2004.
6. 3. Glenford J Myers, Corey Sandler, Tom Badgett and Todd M Thomas, “The Art of Software Testing”, Wiley, USA,
2004.
4. Ilene Burnstein, “Practical Software Testing”, Springer – Verlag, New Delhi, 2003.
5. John D McGregor and David A Sykes, “A Practical Guide to Testing Object-Oriented Software”, Addison-Wesley
Professional, USA, 2001.
6. Stephen H Kan, “Metrics and Models in Software Quality Engineering”, Pearson Education, New Delhi, 2002.
7. William E Perry, “Effective Methods for Software Testing”, Wiley, New York, 2000.
09ZS08 DISTRIBUTED COMPONENT ARCHITECTURE
3003
SOFTWARE ARCHITECTURE: Introduction - Software Architecture - Definition – needs, approaches, roles of Software
Architecture. Evolution of Distributed Systems -Distributed Objects - Methods of distribution - Component Concepts -
Introduction to UML. (8)
COMMON OBJECT REQUEST BROKER ARCHITECTURE: History of CORBA - CORBA architecture - CORBA object
life cycle - CORBA invocation life cycle - Performance Considerations.
CORBA services: CORBA Object location service - CORBA messaging service - CORBA Event Service - CORBA
Security Service - CORBA Object Transaction Service. (10)
DISTRIBUTED COMPONENT OBJECT MODEL: Microsoft DCA - DCOM Architecture - Interfaces and Object
Identification - COM IDL - Look up strategies in COM - Type Libraries - Exploring IUnknown and IClassFactory - Standard
and Custom Marshalling.
DCOM services: Persistence service- COM security service- Clustering in COM- MS Transaction Service. (10)
ENTERPRISE JAVA BEANS: J2EE architecture- Enterprise Beans as distributed objects - Inside Enterprise beans- The
EJB Container- Types of Beans- Passivation and Activation - Message Driven Beans, Comparison of EJB, COM, CORBA
and .NET. (9)
SERVICE ORIENTED ARCHITECTURE: Introduction to Web Services- Introduction to Service Oriented Architecture-
Business value- Architectural elements- Web services and SOA. (5)
Total 42
REFERENCES:
1. George T Heineman and William T Councill , “Component-based Software Engineering: Putting the pieces together”,
Addison-Wesley, USA, 2001.
2. Sudha Sadasivam G, “Distributed Component Architecture”, Wiley India Pvt Ltd, New Delhi, 2007.
3. Roger Sessions, “COM and DCOM”, Wiley Computer Publishing, New York, 1998.
09ZS14 SOFTWARE PROJECT MANAGEMENT
3003
SOFTWARE PROCESS: Process Maturity – Capability Maturity Model (CMM) – Variations in CMM - Productivity
improvement process. (7)
PEOPLE MANAGEMENT: Organization structure – Difficulties in people management - Effective team building – Role of
Project manager - Team structures – Comparison of different team structures. (5)
SOFTWARE METRICS: Role of metrics in software development - Project metrics – Process metrics – Data gathering -
Analysis of Data for measuring correctness, integrity, reliability and maintainability of Software products. (6)
PROJECT MANAGEMENT: Project initiation – Feasibility study - Planning - Estimation - Resource allocation - Root
Cause Analysis.
(7)
RISK MANAGEMENT: Risk analysis and management - Types of Risk involved - RMM plan. (5)
PROJECT SCHEDULING AND TRACKING: Scheduling - Critical path – Tracking - Timeline chart – Earned value chart.
(6)
SOFTWARE CONFIGURATION MANAGEMENT: Baselines - Software configuration items - The SCM process- Version
control- Change control -Configuration audit - SCM standards. (6)
7. Total 42
REFERENCES:
1. Roger S Pressman, “Software Engineering, A Practitioner’s Approach” McGraw Hill Edition, New Delhi, 2008.
2. Watts Humphrey, “Managing the Software Process “, Pearson Education, New Delhi, 2000.
3. Pankaj Jalote, “Software Project Management in practice”, Pearson Education, New Delhi, 2002.
09ZS16 ADVANCED JAVA PROGRAMMING
3003
INTRODUCTION TO JAVA: Objects and Classes- Inheritance- Interfaces and Inner Classes- Event Handling- User
Interface Components with Swing-Streams and Files- Multithreading- Networking- Database Programming – JDBC. (10)
XML: Design of an XML document - Creating well formed XML documents, valid XML documents, DTDs – Entities and
Attributes, Creating XML schemas, Parsing XML – Java and XML DOM, Java and SAX, XSLT, XHTML. (8)
JAVA SERVLETS: Servlet basics- Handling Cookies- Session tracking. (5)
JSP: JSP Basics, Integrating Servlets and JSP – MVC architecture – Struts, Accessing Databases with JDBC, Deploying
Web Applications, controlling behavior with web.xml, Servlet and JSP Filters, Tag Libraries - JSTL, AJAX – Basics. (10)
WEB SERVICES: Overview and Service oriented architecture, SOAP protocol, Describing web services - WSDL,
Discovering web services - UDDI. (6)
CASE STUDIES: Spring - Hibernate – Google Web Toolkit.
(3)
Total 42
REFERENCES:
1. Cay S Horstmann and Gary Cornell, “Core Java 2, Volume I - Fundamentals”, Pearson Education, USA, 2005.
2. Cay S Horstmann and Gary Cornell, “Core Java 2, Volume II - Advanced Features”, Pearson Education, USA, 2005.
3. Nicholas C Zakas, Jeremy McPeak and Joe Fawcett, “Professional Ajax”, Wrox, USA, 2006.
4. Steve Holzner, “Inside XML”, Techmedia, New Delhi, 2001.
5. Kathy Sierra and Bryan Basham, “Head First Servlets and JSP”, Shroff Publishers and Distributors, Mumbai, 2007.
6. Marty Hall and Larry Brown, “Core Servlets and JavaServer Pages: volume 1: core technologies”, Pearson
Education, USA, 2008.
7. Marty Hall, “Core Servlets and JavaServer Pages: volume 2 Advanced technologies”,Pearson Education,USA, 2008.
8. Steve Graham, Doug Davis, Simeon Simeonov, Glen Daniels, et.al, “Building Web Services with Java”, Pearson
Education, USA, 2004.
09ZS39 GRID AND UTILITY COMPUTING
3024
INRODUCTION: High Performance Computing, Cluster Computing, Meta-computing, Peer-to-Peer Computing, Internet
Computing, Grid Computing – Types of grids - The Grid: Past, Present, Future - A New Infrastructure for 21st Century
Science, Grid Applications. (5)
GRID COMPUTING TECHNOLOGY: The Evolution of the Grid - Desktop Grids - Cluster Grids – HPC Grids –
Computational and Data Grids. (5)
THE ANATOMY OF THE GRID: Virtual organizations, Grid architecture and its Relationship to other distributed
technologies – autonomic computing – service on demand – SOA and the Grid – semantic grids - Service virtualization –
Infrastructure and applications. (7)
THE OPEN GRID SERVICES ARCHITECTURE & INFRASTRUCTURE: Evolution to OGSA, Physiology of the Grid:
OGSA Infrastructure - OGSA Basic Services, Creating and Managing Grid Services, Managing Grid Environments - Grid-
Enabling software applications, Grid-Enabling network services, Grid Security, Grid Resource Management and
Scheduling - High-level Introduction to OGSI, Technical details of OGSI specification. (10)
CLOUD COMPUTING: SOA - Web services- SaaS – Virtualisation - Ajax and Mashup – Map Reduce Model - Cloud
computing architectures. Case studies in cloud computing: the Amazon Elastic Compute Cloud and IBMs Blue Cloud –
costing policies (8)
APPLICATION CASE STUDY: Globus Toolkit – Architecture, Programming model, Sample Implementation, High Level
Services (7)
Total 42
Lab components:
8. 1. Study of GridSim
2. Creation of Grid resources, machines and users
3. Submission of Gridlets to Resources
4. Study of Globus.
REFERENCES:
1. Ahmar Abbas, “Grid Computing Practical Guide to Technology and Applications”, Firewall Media, New Delhi, 2008.
2. Ian Foster and Carl Kesselman, “The Grid : Blueprint for a New Computing Infrastructure”, Morgan Kaufman, New
Delhi, 2006.
3. Fran Berman, Geoffrey Fox and Anthony Hey J G, “Grid Computing Making the Global Infrastructure a Reality”,
Wiley, USA, 2003.
4. Joshy Joseph and Craig Fallenstein, “Grid Computing”, Pearson Education, New Delhi, 2004.
5. C S R Prabhu, “Grid and Cluster Computing”, Prentice Hall, New Delhi, 2008.
09ZS41 INDUSTRIAL VISIT AND TECHNICAL SEMINAR
1022
The student will make atleast two technical presentations on current topics related to the specialization. The same will be
assessed by a committee appointed by the department. The students are expected to submit a report at the end of the
semester covering the various aspects of his/her presentation together with the observation in industry visits. A quiz
covering the above will be held at the end of the semester.
09ZS52 SOFTWARE TESTING LABORATORY
0032
1. Study of JUnit testing tool.
2. Apply black box and white box testing techniques to design a test suite with a high level of path-coverage for
Stack class that implements methods such as push, pop, size, etc.
Queue Class that implements methods like enqueue, dequeue, etc.
3. Study of HttpUnit, Cactus, DBUnit testing tools.
Develop a simple web application to demonstrate
4. Coarse-grained testing with stubs
5. Testing in isolation with mock objects
6. Integration testing with HttpUnit
7. Study of Loadrunner testing tool
8. Study of cross browser testing tools - Selenium and Sahi
REFERENCES:
1. Vincent Massol and Ted Husted, “JUnit in Action”, Manning Publications, 2003.
2. Rainsberger J B, “JUnit Recipes: Practical Methods for Programmer Testing”, Manning Publications, 2004.
3. http://junit.sourceforge.net
4. http://httpunit.sourceforge.net
5. http://jakarta.apache.org/cactus
6. http://dbunit.sourceforge.net
09ZS53 COMPUTER NETWORKS LABORATORY
0032
1. Study of Network Simulator (ns)
2. Simple topology creation
3. Simulation of TCP
4. Simulation of UDP
5. Binary Exponential Back off Algorithm
6. Sliding Window Protocol
7. Simulation of Congestion Control Algorithms using NS
8. Link state routing algorithm
9. Distance vector routing algorithm
9. ME SOFTWARE ENGINEERING THIRD SEMESTER
09ZS18 MOBILE COMPUTING
3003
INTRODUCTION: History – Added dimensions of mobile computing – Condition of the mobile user. (3)
DEVELOPMENT FRAMEWORKS AND TOOLS: N-tier client server – Java Wireless Toolkit: CLDC and MIDP – Hello
MIDP – Publishing frameworks: Cocoon – Architecture – Generators, Transformers, Serializers – Sitemap – XSP – Hello
Cocoon. (6)
XML FOR MOBILE COMPUTING: XML Schema – RDF – RDF Schema – UML and RDF – XML and UML. (3)
MOBILE GRAPHICAL UI: Model View Controller – Presentation Abstraction Control – Transform based techniques –
PAC TG – Single Channel Specialization – Specialization on Server – Java Wireless Toolkit GUI – Example – Modeling
with UML – UML extensions – Optimizing GUI. (8)
SYNCHRONIZATION AND REPLICATION: Taxonomy – For mobile applications – SyncML – WebDAV – Using UML. (4)
LOCATION BASED SERVICES: Data acquisition of location information – Geographical Positioning System based
solution – Non GPS solution – Geographical Information System – Location information modeling: GML – Location based
Java Wireless Toolkit application. (7)
MOBILE SECURITY: Taxonomy of problems – Security in wireless networks – Distinguishing privacy and security –
Modeling security with UML. (3)
MOBILE DEVELOPMENT PROCESS: UML based development – Use cases – Testing: Mobile infrastructure – Validating
use cases – Effect of dimensions of mobility on testing – Case study: Electrical field service company – Requirements –
Detailed design – Implementation. (8)
Total 42
REFERENCES:
1. Reza B Far, “Mobile Computing Principles: Designing and Developing Mobile Applications with UML and XML”,
Cambridge University Press, United Kingdom, 2005.
2. Golden G Richard III, Loren Schwiebert, Frank Adelstein and Sandeep K S Gupta, “Fundamentals of Mobile and
Pervasive Computing”, McGraw-Hill Inc., USA, 2005.
3. Michael Juntao Yuan, “Enterprise J2ME: Developing Mobile Java Applications”, Pearson Education, USA, 2004.
4. Mohammad Ilyas and Imad Mahgoub, “Mobile Computing Handbook”, Aurebach Publishers, 2005.
09ZS20 EVOLUTIONARY COMPUTING TECHNIQUES
INTRODUCTION: Historical development of Evolutionary Computation (EC) – Features of EC – Classification of EC –
Advantages – Applications. (4)
SIMULATED ANNEALING: Introduction – Annealing schedule – Pseudo code – Parameter selection – Applications. (3)
HILL CLIMBING: Introduction – Mathematical description – Local and Global maxima – Ridges – Plateau – Pseudo code
– Applications. (3)
GENETIC ALGORITHMS: Introduction – Biological Background – Operators in GA-GA Algorithm – Classification of GA –
Applications. (12)
ANT COLONY OPTIMIZATION: Introduction – From real to artificial ants- Theoretical considerations – Convergence
proofs – ACO Algorithm – ACO and model based search – Application principles of ACO. (10)
10. PARTICLE SWARM OPTIMIZATION: Introduction – Principles of bird flocking and fish schooling – Evolution of PSO –
Operating principles – PSO Algorithm – Neighborhood Topologies – Convergence criteria – Applications of PSO. (10)
Total 42
REFERENCES:
1. S N Sivanandam and S N Deepa, “Introduction to Genetic Algorithm”, Springer Verlag publication, New Delhi, 2008.
2. Kenneth A DeJong, “Evolutionary Computation A Unified Approach”, Prentice Hall of India, New Delhi, 2006.
3. Marco Dorigo and Thomas Stutzle, “Ant Colony optimization”, Prentice Hall of India, New Delhi 2005.
4. Kennedy J and Russel C Eberhart, “Swarm Intelligence”, Morgan Kaufmann Publishers, USA, 2001.
09ZS41 USER INTERFACE DESIGN
3024
HUMAN FACTORS: The importance of User Interface – UI and Software Designer – Goals of UI design – Motivations for
human factors in Design – Understanding user needs and requirements. (5)
INTERACTION DEVICES: Pointing devices – Speech recognition, digitization and generation - Image and video displays.
(4)
MODELS: Theories – Different models - Object - Action Interface Model - Principles for Design - Data display and entry
guidelines. (5)
DESIGN PROCESS:
User Interface Design Process – Classes of UI design – Principles of good design – Evaluating design using the
principles – Choice of color – Task oriented approach for UI - Case study. (4)
GUI design process - Design of icons – Use of metaphors – GUI style guides and toolkits – Portability – GUI design and
object oriented approach – Case study. (4)
CSCW user interfaces - CSCW characteristics – Examples – CSCW UI – Method of specifying and designing UI for
CSCW systems – Case study. (3)
USABILITY: The viewpoint of user, customer and designer –Usability specification – Description of stages in usability
specification and evaluation. (6)
INFORMATION RELATED: Information Search and Visualization – Hypermedia and WWW. (7)
HCI STANDARDS: ECMA – ISO – BSI guide. (4)
Total 42
Lab components:
1. Introductory lab, getting acquainted with software (like Visual C++ / Delphi / Builder)
2. Simple component-oriented programming example, Windows API demonstration
3. Window features, window redrawing, validity of window content, message and user message handling
4. Application with dialog box, basic building blocks, blocks properties, mutual communication
5. Keyboard and mouse in Windows, cursor changes, clipboard
6. Multithreaded application, development of user interface components
7. Development of a Web UI and its evaluation
REFERENCES:
1. Linda Mcaulay, “HCI for Software Designers”,International Thompson Computer Press, USA,1998.
2. Ben Schneiderman, "Designing the User Interface", Pearson Education, New Delhi,2005.
3. Alan Cooper, "The Essentials of User Interface Design", IDG Books, New Delhi,1995.
4. Jacob Nielsen, "Usability Engineering", Academic Press, 1993.
5. Alan Dix et al, "Human - Computer Interaction", Prentice Hall, USA,1993.
09ZC14 DATA WAREHOUSING AND MINING
3003
11. DATA WAREHOUSING: Introduction- Definition and description, need for data ware housing, need for strategic
information, failures of past decision support systems, OLTP vs DWH-DWH requirements-trends in DWH-Application of
DWH. (8)
DATA WAREHOUSING ARCHITECTURE: Reference architecture- Components of reference architecture - Data
warehouse building blocks, implementation, physical design process and DWH deployment process. A Multidimensional
Data, Model Data Warehouse Architecture. (9)
DATA MINING: Data mining tasks-Data mining vs KDD- Issues in data mining, Data Mining metrics, Data mining
architecture - Data cleaning- Data transformation- Data reduction - Data mining primitives. (6)
ASSOCIATION RULE MINING: Introduction - Mining single dimensional Boolean association rules from transactional
databases - Mining multi dimensional association rules. (5)
CLASSIFICATION AND PREDICTION: Classification Techniques - Issues regarding classification and prediction -
decision tree - Bayesian classification –Classifier accuracy – Clustering – Clustering Methods - Outlier analysis. (9)
APPLICATIONS AND OTHER DATA MINING METHODS: Distributed and parallel Data Mining Algorithms, Text mining-
Web mining. (5)
Total 42
REFERENCES:
1. Jiawei Han and Micheline Kamber, ” Data Mining Concepts and Techniques”, Morgan Kaufmann Publishers, USA,
2006.
2. Berson, ”DataWarehousing, Data Mining and OLAP”, Tata McGraw Hill Ltd, New Delhi, 2004.
3. Arun K Pujari,”Data mining techniques”, Oxford University Press, London, 2003.
4. Dunham M H, ”Data mining: Introductory and Advanced Topics”. Pearson Education, New Delhi, 2003.
5. Mehmed Kantardzic,” Data Mining Concepts, Methods and Algorithms”, John Wiley and Sons, USA, 2003.