NATIONAL INSTITUTE OF TECHNOLOGY NAGALAND CHUMUKEDIMA, DIMAPUR 797 103 Master of Technology in Computer Science and Engineering Regulations 2014 Semester II Curriculum and Syllabus Course Code Course Title L T P C CP151 Object Oriented Systems Design 3 1 0 4 CP152 Advanced Operating Systems 3 0 0 3 CP153 Advances in Database Technology 3 0 0 3 CP954 Network Protocols 3 0 0 3 CP957 Real Time Systems 3 0 0 3 CP962 Cloud Computing 3 0 0 3 CP154 Software Systems Laboratory 0 0 3 2 TOTAL 18 1 3 21
CP151 OBJECT ORIENTED SYSTEMS DESIGN L T P C 3 1 0 4 OBJECT ORIENTATION 9 Introduction to System Concepts - Managing Complex Software Properties Object Oriented Systems Development - Object Oriented Concepts - Systems Development Life Cycle - Rumbaugh Methodology - Booch Methodology - Jacobson Methodology Unified Process. UNIFIED MODELING LANGUAGE 9 Importance of modeling - Principles of Modeling - Object Oriented Modeling - Conceptual Model of the UML - Architecture - Unified Approach - Static Behavior diagrams Dynamic Behavior diagrams Object Constraint Language Case Study. SOFTWARE DEVELOPMENT ON REUSABLE TECHNOLOGY 9 Incorporating Re-usability and Reuse into Software Engineering - Frameworks Reusable Subsystems - Client-Server Architectures - Object Client-Server Framework Challenges on Reusable Technology - Developing Requirements - Domain Analysis - Defining Problem and Scope - Types of Requirements - Techniques for Gathering Requirements - Analyzing and Reviewing Requirements Case Study. SYSTEM DESIGN AND DESIGN PATTERNS 9 Design Axioms Logical Architecture - Designing Objects with Responsibilities Object Design Designing for Visibility - Patterns Analysis and Design Patterns GoF Patterns - Mapping Designs to Code Test Driven Development and Refactoring UML Tools - UML as Blueprint Case Study.
DISTRIBUTED OBJECTS AND FRAMEWORKS 9 Fundamentals of Distributed Systems - Middleware - Common Object Request Broker Architecture (CORBA) - Enterprise Java Beans (EJB) Architecture - Model-View- Controller (MVC) Framework - Patterns Related to MVC - Taligent Framework - Case Study. TOTAL: 45 PERIODS REFERENCES 1. Timothy C. Lethbridge and Robert Laganiere, Object-Oriented Software Engineering: Practical Software Development using UML and Java, 2nd Edition, McGraw-Hill Higher Education, 2004. 2. Grady Booch, James Rumbaugh and Ivar Jacobson, The Unified Modeling Language User Guide, Pearson Education India, 1999. 3. Bernd Bruegge and Allen H. Dutoit, Object-Oriented Software Engineering Using UML, Patterns and Java", 3rd Edition, Prentice Hall, 2010. 4. Craig Larman, Appling UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, Second Edition, Prentice Hall, 2001. 5. James R. Rumbaugh, Michael R. Blaha,William Lorensen, Frederick Eddy and William Premerlani, Object-Oriented Modeling and Design, First Edition, Prentice Hall, 1990. 6. Pascal Roques, Modeling Software Systems Using UML 2, Wiley India (P) Ltd., 2004.
CP152 ADVANCED OPERATING SYSTEMS L T P C 3 0 0 3 FUNDAMENTALS OF OPERATING SYSTEMS 9 Overview Synchronization Mechanisms Process and Threads - Process Scheduling Deadlocks: Detection - Prevention and Recovery Models of Resources Memory Management Techniques. DISTRIBUTED OPERATING SYSTEMS 9 Issues in Distributed Operating Systems Architecture Communication Primitives Lamport s Logical clocks Causal Ordering of Messages Distributed Mutual Exclusion Algorithms Centralized and Distributed Deadlock Detection Algorithms Agreement Protocols. DISTRIBUTED RESOURCE MANAGEMENT 9 Distributed File Systems: Building Mechanism - Architecture - Design Issues - Distributed Shared Memory: Implementation Algorithms - Memory Coherence - Coherence Protocols - Distributed Scheduling: Issues in Load Distributing - Load Sharing and Distributing Algorithms - Case Study. MULTIPROCESSOR AND DATABASE OPERATING SYSTEMS 9 Multiprocessor System Architectures - Structures Design Issues Threads Process Synchronization Processor Scheduling Memory Management Reliability / Fault Tolerance; Database Operating Systems Introduction Concurrency Control Distributed Database Systems Concurrency Control Algorithms.
REAL TIME AND MOBILE OPERATING SYSTEMS 9 Basic Model of Real Time Systems - Characteristics - Applications of Real Time Systems Real Time Task Scheduling - Handling Resource Sharing Mobile Operating Systems Micro Kernel Design - Client Server Resource Access Processes and Threads - Memory Management - File system Case Study. REFERENCES TOTAL: 45 PERIODS 1. Mukesh Singhal and Niranjan G. Shivaratri, Advanced Concepts in Operating Systems Distributed, Database, and Multiprocessor Operating Systems, Tata McGraw-Hill, 2001. 2. Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, Operating System Concepts, Eighth Edition, John Wiley & Sons, 2008. 3. Daniel P Bovet and Marco Cesati, Understanding the Linux kernel, Third Edition, O Reilly, 2005. 4. Rajib Mall, Real-Time Systems: Theory and Practice, First Edition, Prentice Hall, 2009. 5. Arash Habibi Lashkari and Mohammadreza Moradhaseli, "Mobile Operating Systems and Programming: Mobile Communications", VDM Verlag Dr.Muller Publisher, 2011. 6. Frederic P.Miller, Agnes F.Vandome and John McBrewster, "Mobile Operating System", International Book Marketing Service Ltd., 2010.
CP153 ADVANCES IN DATABASE TECHNOLOGY L T P C 3 0 0 3 PARALLEL AND DISTRIBUTED DATABASES 9 Centralized and Client-Server Architectures Server System Architectures Parallel Systems - Distributed Systems Parallel Databases - I/O Parallelism Inter and Intra Query Parallelism Inter and Intra operation Parallelism Distributed Database Concepts - Distributed Data Storage Distributed Transactions Commit Protocols Concurrency Control Distributed Query Processing Three Tier Client Server Architecture - Case Studies. OBJECT AND OBJECT RELATIONAL DATABASES 9 Object Database Concepts - Overview - Object Identity Object structure Type Constructors - Encapsulation of Operations Methods Persistence Type and Class Hierarchies Inheritance Complex Objects Object Database Standards - Languages and Design - ODMG Model Object Definition Language Object Query Language Object-Relational Features - Object Database Extensions to SQL Case Studies. XML AND ENHANCED DATA MODELS 9 XML Databases - XML Related Technologies - XML Schema - XML Query Languages - Storing XML in Databases - Extracting XML Documents from Relational Databases - XML and SQL - Native XML Databases- Active Database Concepts - Temporal database concepts - Spatial Databases - Deductive Databases. MOBILE AND MULTIMEDIA DATABASES 9 Mobile Databases: Location and Handoff Management - Effect of Mobility on Data Management - Location Dependent Data Distribution - Mobile Transaction Models - Concurrency Control - Transaction Commit Protocols- Mobile Database Recovery Schemes - Multidimensional Data Structures Image Databases Text/Document Databases - Video Databases Audio Databases Multimedia Database Design.
EMERGING TECHNOLOGIES 9 Web Databases - Geographic Information Systems - Biological Data Management - Cloud Based Databases - Data Storage Systems on the Cloud - Cloud Storage Architectures - Cloud Data Models - Query Languages - Introduction to Big Data Storage - Analytics. TOTAL: 45 PERIODS REFERENCES 1. R. Elmasri and S.B. Navathe, Fundamentals of Database Systems, Sixth Edition, Pearson Education / Addison Wesley, 2011. 2. Abraham Silberschatz, Henry F.Korth and S. Sudharshan, Database System Concepts, Sixth Edition, McGraw Hill Education, 2010. 3. Thomas M. Connolly and Carolyn E. Begg, Database Systems: A Practical Approach to Design, Implementation and Management, Fifth Edition, Pearson Education, 2009. 4. Peter Rob and Carlos Coronel, "Database Systems: Design, Implementation and Management", Eighth Revised Edition, Course Technology Inc., 2008. 5. Viktor Mayer-Schonoberger and Kenneth Cukier Big Data: A Revolution That Will Transform How We Live, Work, and Think", Mariner Books, 2014. 6. Vijay Kumar, "Mobile Database Systems", John Wiley & Sons, 2006.
CP954 NETWORK PROTOCOLS L T P C 3 0 0 3 NETWORK ARCHITECTURES AND PROTOCOLS 9 Network Communication Architecture and Protocols - OSI Network Architecture Model TCP/IP Architecture Model Overview of Network Protocols - TCP/IP Protocols: Layers Protocols Case Study: ISO Protocols SECURED COMMUNICATIONS AND PROTOCOLS 9 AAA Protocols - Tunneling Protocols Secured Routing Protocols - Voice over IP and VOIP Protocols: Signaling Protocols - Media/CODEC - Case Study: CISCO and Novell Netware Protocols. NETWORK ENVIRONMENTS AND PROTOCOLS 9 Wide Area Network and WAN Protocols: Frame relay - ATM - Broadband Access Protocols PPP Protocols - Local Area Network and LAN Protocols: Ethernet Protocols - Virtual LAN Protocols - Metropolitan Area Network Protocols - Storage Area Network Protocols Case Study: IBM SNA and Protocols ISDN AND NETWORK MANAGEMENT PROTOCOLS 9 Overview of ISDN Channels User Access Protocols Network Management Requirements Network Monitoring Network Control SNMP V1, V2 and V3 Concepts, MIBs Implementation Issues-RMON WIRELESS NETWORKS AND PROTOCOLS 9 Wireless LAN Protocols - IEEE 802.15 and Bluetooth WPAN Communication Protocols IEEE 802.16- IEEE 802.16A.WCDMA Services WCDMA Products Networks- Device Addressing System Addressing Radio Signaling Protocol Multimedia Signaling Protocol. TOTAL: 45 PERIODS
REFERENCES 1. Javvin, Network Protocols, Javvin Technologies Inc, Second Edition, 2005 2. William Stallings, SNMP, SNMPV2, SNMPV3 and RMON1 and 2, Third Edition, Addison Wesley, 1999. 3. Lawrence Harte, Introduction To Code Division Multiple Access: Network, Services, Technologies and Operation, Althos Publishing, 2004. 4. Lawrence Harte, Introduction to 802.16 WiMax, Wireless Broadband Technology, Market, Operations and Services, Althos Publishing, 2006
CP957 REAL TIME SYSTEMS L T P C 3 0 0 3 INTRODUCTION AND MODELLING TIMING CONSTRAINTS 9 Introduction Real-Time System Characteristics Basic Model of an Embedded System Characteristics of an Embedded System Safety and Reliability Designing of Highly Reliable System Types of Real-Time Systems Types of Real-Time Tasks Timing Constraints Modeling of Timing Constraints. SCHEDULING REAL-TIME TASKS 9 Basics of Real-Time Task Scheduling Task Scheduling on Uniprocessors Clock- Driven Scheduling Table-Driven Scheduling - Cyclic Scheduler Event-Driven Scheduling Time-Sliced Round Robin Scheduling - Rate Monotonic Scheduler Deadline Monotonic Scheduling. RESOURCE SHARING AMONG REAL-TIME TASKS AND REAL-TIME TASK SCHEDULING ON MULTIPROCESSORS AND DISTRIBUTED SYSTEMS 9 Resource Sharing among Real-Time Tasks Highest Locker and Priority Ceiling Protocol Handling Task Dependencies Real-Time Task Scheduling on Multiprocessors and Distributed Systems Clock Synchronization in Distributed Real- Time Systems Internal Clock Synchronization in Presence of Byzantine Clocks COMMERCIAL REAL-TIME OPERATING SYSTEMS 9 Issues in Real-Time Operating Systems Basic Requirement of RTOS Requirement of Memory Management Memory Protection Unix and Windows as RTOS Real- Time POSIX Open Source and Commercial RTOS Benchmarking Real-Time Computer and Operating Systems
REAL-TIME COMMUNICATION AND REAL-TIME DATABASES 9 Basic Issues in Real-Time Communications Review of Computer Networking Real- Time Communication in a LAN Performance of Two Real-Time Communication Protocols Real-Time Communication over Packet Switched Networks Real-Time Databases. TOTAL: 45 PERIODS REFERENCES 1. Rajib Mall, Real-Time Systems: Theory and Practice, Pearson, 2008. 2. Jane W. Liu, Real-Time Systems, Pearson Education, 2001. 3. C. M. Krishna, Kang G. Shin, Real-Time Systems, McGraw-Hill International Editions, 1999.
CP962 CLOUD COMPUTING L T P C 3 0 0 3 FUNDAMENTALS 9 Introduction to Cloud Computing Essentials Benefits Why Cloud? Business and IT Perspective Cloud and Virtualization Cloud Services Requirements Cloud Computing Characteristics - Cloud Models- Measured Service Security in a Public Cloud Public versus Private Clouds Cloud as a Service Cloud Computing Architecture CLOUD VIRTUALIZATION TECHNOLOGY 9 Basics of Virtualization - Types of Virtualization - Implementation Levels of Virtualization - Virtualization Structures Tools and Mechanisms - Virtualization of CPU, Memory and I/O Devices - Server Virtualization Storage Virtualization Cloud Server Virtualization CLOUD PLATFORM ARCHITECTURE 9 Cloud Computing and Service Models Architectural Design of Compute and Storage Clouds Public Cloud Platforms: GAE, AWS and Azure Inter-cloud Resource Management Cloud Security and Trust Management CLOUD PROGRAMMING 9 Parallel and Distributed Programming Paradigms Programming Support of Google App Engine Programming on Amazon AWS and Microsoft Azure MapReduce Programming Model MapReduce Implementations for the Cloud CLOUD SECURITY 9 Security Overview Cloud Security Challenges Data Security Application Security Virtual Machine Security Legal Issues in Cloud Computing TOTAL: 45 PERIODS
REFERENCES 1. Anthony T. Velte, Toby J. Velte, and Robert Elsenpeter, "Cloud Computing - A practical Approach", Tata McGrawHill, 2010 2. Rajkumar Buyya, James Broberg, and Andrej Goscinski, Cloud Computing: Principles and Paradigms, John Wiley & Sons, Inc., ISBN: 9780470887998 3. Kai Hwang, Geoffrey C.Fox, and Jack J. Dongarra, Distributed and Cloud Computing, Elsevier India Private Limited, 2012. 4. Dr. Kumar Saurabh, Cloud computing, Second Edition, Wiley India Pvt. Ltd, 2012 5. John W.Rittinghouse and James F.Ransome, Cloud Computing: Implementation, Management and Security", CRC Press, 2010 6. James E. Smith and Ravi Nair, Virtual Machines: Versatile Platforms for Systems and Processes, Morgan Kaufmann Publishers, 2005
CP154 SOFTWARE SYSTEMS LABORATORY L T P C 0 0 3 2 1. Implement a symbol table with functions to create, insert, modify, search, and display. 2. Implement pass one of a two pass assembler. 3. Implement pass two of a two pass assembler. 4. Implement a single pass assembler. 5. Implement a two pass macro processor 6. Implement a single pass macro processor. 7. Implement an absolute loader. 8. Implement a relocating loader. 9. Implement pass one of a direct-linking loader. 10. Implement pass two of a direct-linking loader. 11. Implement a simple text editor with features like insertion / deletion of a character, word, and sentence. 12. Implement a symbol table with suitable hashing