1. DESIGN AND MANAGEMENT OF COMPUTER NETWORKS
UNIT I INTRODUCTION TO NETWORK MANAGEMENT 9
Overview of Analysis, Architecture and Design Process-System Methodology, Service methodology, Service Description – Service characteristics – Performance Characteristics – Network supportability – Requirement analysis – User Requirements – Application Requirements – Device Requirements – Network Requirements – Other Requirements – Requirement specification and map.
UNIT II REQUIREMENTS ANALYSIS 9
Requirement Analysis Process – Gathering and Listing Requirements- Developing service metrics – Characterizing behavior – Developing RMA requirements – Developing delay Requirements – Developing capacity Requirements – Developing supplemental performance Requirements –Requirements mapping – Developing the requirements specification UNIT III FLOW ANALYSIS 9
Individual and Composite Flows – Critical Flows – Identifying and developing flows – Data sources and sinks – Flow models- Flow prioritization – Flow specification algorithms – Example Applications of Flow Analysis
UNIT IV NETWORK ARCHITECTURE 9
Architecture and design – Component Architectures – Reference Architecture – Architecture Models – System and Network Architecture – Addressing and Routing Architecture – Addressing and Routing Fundamentals – Addressing Mechanisms – Addressing Strategies – Routing Strategies – Network Management Architecture – Network Management Mechanisms Performance Architecture – Performance Mechanisms – Security and Privacy Architecture – Planning security and privacy Mechanisms
UNIT V NETWORK DESIGN 9
Design Concepts – Design Process – Network Layout – Design Traceability – Design Metrics – Logical Network Design – Topology Design – Bridging, Switching and Routing Protocols- Physical Network Design – Selecting
Technologies and Devices for Campus and Enterprise Networks – Optimizing Network Design
REFERENCES: 1. Network Analysis, Architecture, and Design By James D. McCabe, Morgan Kaufmann, Third Edition, 2007.ISBN-13: 978-0123704801
2. Computer Networks: A Systems Approach by Larry L. Peterson, Bruce S. Davie – 2007, Elsevier Inc.
3. Top-down Network Design: [a Systems Analysis Approach to Enterprise Network Design] By Priscilla Oppenheimer, Cisco Press , 3rd Edition, ISBN-13: 978-1-58720- 283-4 ISBN-10: 1-58720-283-2
4. Integrated Management of Networked Systems: Concepts, Architectures, and Their Operational Application (The Morgan Kaufmann Series in Networking), Heinz-Gerd Hegering, Sebastian Abeck, and Bernhard Neumair, 1999.
5. “Network Design and Management” – by Steven T.Karris, Orchard publications, Second edition, Copyright 2009, ISBN 978-1-934404-15-7
6. “Network Design, Management and Technical Perspective”, Teresa C. Mann-Rubinson and Kornel Terplan, CRC Press, 1999
7. “Ethernet Networks-Design, Implementation, Operation and Management by Gilbert Held, John Wiley and sons, Fourth Edition
8. James Kurose and Keith Ross, “Computer Networking: A Top-Down Approach Featuring the Internet”, 1999
2. ADVANCED DATA STRUCTURES AND ALGORITHMS 3 0 0 3 OBJECTIVES:
To understand the principles of iterative and recursive algorithms. To learn the graph search algorithms.
To study network flow and linear programming problems.
To learn the hill climbing and dynamic programming design techniques. To develop recursive backtracking algorithms.
To get an awareness of NP completeness and randomized algorithms. To learn the principles of shared and concurrent objects. To learn concurrent data structures.
UNIT I ITERATIVE AND RECURSIVE ALGORITHMS 9 Iterative Algorithms: Measures of Progress and Loop Invariants-Paradigm Shift:
Sequence of Actions versus Sequence of Assertions- Steps to Develop an Iterative Algorithm-Different Types of Iterative Algorithms–Typical Errors-Recursion-Forward versus Backward- Towers of Hanoi-Checklist for Recursive Algorithms-The Stack Frame-Proving Correctness with Strong Induction- Examples of Recursive Algorithms-Sorting and Selecting Algorithms- Operations on Integers- Ackermann’s Function- Recursion on Trees-Tree Traversals- Examples- Generalizing the Problem – Heap Sort and Priority Queues-Representing Expressions.
UNIT II OPTIMISATION ALGORITHMS 9
Optimization Problems-Graph Search Algorithms-Generic Search-Breadth-First Search- Dijkstra’s Shortest-Weighted-Path -Depth-First Search-Recursive Depth-First Search-Linear Ordering of a Partial Order- Network Flows and Linear Programming-Hill Climbing-Primal Dual Hill Climbing- Steepest Ascent Hill Climbing-Linear Programming-Recursive Backtracking-Developing Recursive Backtracking Algorithm- Pruning Branches-Satisfiability UNIT III DYNAMIC PROGRAMMING ALGORITHMS 9 Developing a Dynamic Programming Algorithm-Subtle Points- Question for the Little Bird- Subinstances and Subsolutions-Set of Substances-Decreasing Time and Space-Number of Solutions-Code. Reductions and NP-Completeness-Satisfiability-Proving NP-Completeness- 3-Coloring- Bipartite Matching. Randomized Algorithms-Randomness to Hide Worst Cases- Optimization Problems with a Random Structure.
UNIT IV SHARED OBJECTS AND CONCURRENT OBJECTS 9 Shared Objects and Synchronization -Properties of Mutual Exclusion-The Mora l- The Producer–Consumer Problem -The Readers–Writers Problem-Realities of Parallelization- Parallel Programming- Principles- Mutual Exclusion-Time- Critical Sections–Thread Solutions-The Filter Lock-Fairness-Lamport’s Bakery Algorithm-Bounded Timestamps-Lower Bounds on the Number of Locations-Concurrent Objects- Concurrency and Correctness- Sequential Objects-Quiescent Consistency- Sequential Consistency-Linearizability- Formal Definitions- Progress Conditions- The Java Memory Model
UNIT V CONCURRENT DATA STRUCTURES 9
Practice-Linked Lists-The Role of Locking-List-Based Sets-Concurrent Reasoning- Coarse- Grained Synchronization-Fine-Grained Synchronization-Optimistic Synchronization- Lazy Synchronization-Non-Blocking Synchronization-Concurrent Queues and the ABA Problem- Queues-A Bounded Partial Queue-An Unbounded Total Queue-An Unbounded Lock-Free Queue-Memory Reclamation and the ABA Problem- Dual Data Structures- Concurrent Stacks and Elimination- An Unbounded Lock-Free Stack- Elimination-The Elimination Backoff Stack
1. Jeff Edmonds, “How to Think about Algorithms”, Cambridge University Press, 2008. 2. M. Herlihy and N. Shavit, “The Art of Multiprocessor Programming”, Morgan Kaufmann, 2008.
3. Steven S. Skiena, “The Algorithm Design Manual”, Springer, 2008. 4. Peter Brass, “Advanced Data Structures”, Cambridge University Press, 2008. 5. S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani, “Algorithms” , McGrawHill, 2008. 6. J. Kleinberg and E. Tardos, “Algorithm Design“, Pearson Education, 2006. 7. T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein, “Introduction to Algorithms“, PHI Learning Private Limited, 2012.
8. Rajeev Motwani and Prabhakar Raghavan, “Randomized Algorithms”, Cambridge University Press, 1995.
9. A. V. Aho, J. E. Hopcroft, and J. D. Ullman, “The Design and Analysis of Computer Algorithms”, Addison-Wesley, 1975.
10. A. V. Aho, J. E. Hopcroft, and J. D. Ullman,”Data Structures and Algorithms”, Pearson,2006.
3.IMAGE PROCESSING AND ANALYSIS 3 0 0 3 OBJECTIVES:
To understand the basics of digital images
To understand noise models
To understand spatial domain filters
To understand frequency domain filters
To learn basic image analysis — segmentation, edge detection, and corner detection To learn morphological operations and texture analysis
To understand processing of color images
To understand image compression techniques
UNIT I SPATIAL DOMAIN PROCESSING 9
Introduction to image processing – imaging modalities – image file formats – image sensing and acquisition – image sampling and quantization – noise models – spatial filtering operations – histograms – smoothing filters – sharpening filters – fuzzy techniques for spatial filtering – spatial filters for noise removal
UNIT II FREQUENCY DOMAIN PROCESSING 9
Frequency domain – Review of Fourier Transform (FT), Discrete Fourier Transform (DFT), and Fast Fourier Transform (FFT) – filtering in frequency domain – image smoothing – image sharpening – selective filtering – frequency domain noise filters – wavelets – Haar Transform – multiresolution expansions – wavelet transforms – wavelets based image processing
UNIT III SEGMENTATION AND EDGE DETECTION 9
Thresholding techniques – region growing methods – region splitting and merging – adaptive thresholding – threshold selection – global valley – histogram concavity – edge detection – template matching – gradient operators – circular operators – differential edge operators – hysteresis thresholding – Canny operator – Laplacian operator – active contours – object segmentation
UNIT IV INTEREST POINTS, MORPHOLOGY, AND TEXTURE 9
Corner and interest point detection – template matching – second order derivatives – median filter based detection – Harris interest point operator – corner orientation – local invariant feature detectors and descriptors – morphology – dilation and erosion – morphological operators – grayscale morphology – noise and morphology – texture – texture analysis – co-occurrence matrices – Laws’ texture energy approach – Ade’s eigen filter approach
UNIT V COLOR IMAGES AND IMAGE COMPRESSION 9
Color models – pseudo colors – full-color image processing – color transformations – smoothing and sharpening of color images – image segmentation based on color – noise in color images.
Image Compression – redundancy in images – coding redundancy – irrelevant information in images – image compression models – basic compression methods – digital image watermarking.
TOTAL : 45 PERIODS
Upon completion of the course, the students will be able to
Explain image modalities, sensing, acquisition, sampling, and quantization Explain image noise models
Implement spatial filter operations
Explain frequency domain transformations
Implement frequency domain filters
Apply segmentation algorithms
Apply edge detection techniques
Apply corner and interest point detection algorithms
Apply morphological operations
Perform texture analysis
Analyze color images
Implement image compression algorithms
1. E. R. Davies, “Computer & Machine Vision”, Fourth Edition, Academic Press, 2012. 2. W. Burger and M. Burge, “Digital Image Processing: An Algorithmic Introduction using Java”, Springer, 2008.
3. John C. Russ, “The Image Processing Handbook”, Sixth Edition, CRC Press, 2011. 4. R. C. Gonzalez and R. E. Woods, “Digital Image Processing”, Third Edition, Pearson, 2008.
5. Mark Nixon and Alberto S. Aquado, “Feature Extraction & Image Processing for Computer Vision”, Third Edition, Academic Press, 2012.
6. D. L. Baggio et al., “Mastering OpenCV with Practical Computer Vision Projects”, Packt Publishing, 2012.
7. Jan Erik Solem, “Programming Computer Vision with Python: Tools and algorithms for analyzing images”, O’Reilly Media, 2012.
4. SOFTWARE REQUIREMENTS ENGINEERING 3 0 0 3 OBJECTIVES:
1. Understand system requirements
2. Identify different types of requirement
3. Generate requirements be elicitation
4. Develop requirements documentation
5. Evaluate the requirements
UNIT I DOMAIN UNDERSTANDING 9
Introduction – Types of requirements – Requirements engineering process – Validating requirements – Requirements and design – Requirements and test cases – introduction to business domain – Problem analysis – Fish bone diagram – Business requirements – Business process modeling – Business use cases – Business modeling notations – UML Activity diagrams.
UNIT II REQUIREMENTS ELICITATION 9
Introduction – Understanding stakeholders’ needs – Elicitation techniques – interviews, questionnaire, workshop, brainstorming, prototyping – Documenting stakeholders’ needs UNIT III FUNCTIONAL REQUIREMENTS 9
Introduction – Features and Use cases – Use case scenarios – Documenting use cases – Levels of details – SRS documents.
UNIT IV QUALITY ATTRIBUTES AND USER EXPERIENCE 9
Quality of solution – Quality attributes – Eliciting quality attributes – Quality attribute workshop (QAW) – Documenting quality attributes – Six part scenarios – Usability requirements – Eliciting and documenting usability requirements – Modeling user experience – Specifying UI design
UNIT V MANAGING REQUIREMENTS 9
Defining scope of the project – Context diagram – Managing requirements – Requirements properties – Traceability – Managing changes – Requirements metrics – Requirements management tools.
TOTAL : 45 PERIODS
Upon Completion of the course,the students will be able to Define a
process for requirments engineering
Execute a process for gathering requirments through elicitation techniques. Validate requirements according to criteria such as feasibility, clarity, preciseness etc.
Develop and document functional requirements for different types of systems. Develop and document quality attributes of the system to be implemented Communicate the requirments to stakeholders
Negotiate with stakeholders in order to agree on a set of requirements. Detect and resolve feature interactions
1. Axel van Lamsweerde, “Requirements Engineering”, Wiley, 2009 2. Gerald Kotonya, Ian Sommerville, “Requirements Engineering: Processes and Techniques”, John Wiley and Sons, 1998
3. Dean Leffingwell and Don Widrig, “Managing Software Requirements: A Use Case Approach (2nd Edition) ”, Addison-wesley, 2003
4. SEI Report, “Quality Attributes Workshophttp://www.sei.cmu.edu/library/abstracts/reports/03tr016.cfm , 20035. J Nielsen, “Usability Engineering”, Academic Press, 1993
5. MULTICORE ARCHITECTURES OBJECTIVES:
To understand the recent trends in the field of Computer Architecture and identify performance related parameters
To appreciate the need for parallel processing
To expose the students to the problems related to multiprocessing To understand the different types of multicore architectures To expose the students to warehouse-scale and embedded architectures UNIT I FUNDAMENTALS OF QUANTITATIVE DESIGN AND ANALYSIS 9
Classes of Computers – Trends in Technology, Power, Energy and Cost – Dependability – Measuring, Reporting and Summarizing Performance – Quantitative Principles of Computer Design – Classes of Parallelism – ILP,
DLP, TLP and RLP – Multithreading – SMT and CMP Architectures – Limitations of Single Core Processors – The Multicore era – Case Studies of Multicore Architectures.
UNIT II DLP IN VECTOR, SIMD AND GPU ARCHITECTURES 9
Vector Architecture – SIMD Instruction Set Extensions for Multimedia – Graphics Processing Units – Detecting and Enhancing Loop Level Parallelism – Case Studies. UNIT III TLP AND MULTIPROCESSORS 9
Symmetric and Distributed Shared Memory Architectures – Cache Coherence Issues – Performance Issues – Synchronization Issues – Models of Memory Consistency – Interconnection Networks – Buses, Crossbar and Multi-stage Interconnection Networks. UNIT IV RLP AND DLP IN WAREHOUSE-SCALE ARCHITECTURES 9
Programming Models and Workloads for Warehouse-Scale Computers – Architectures for Warehouse-Scale Computing – Physical Infrastructure and Costs – Cloud Computing – Case Studies.
UNIT V ARCHITECTURES FOR EMBEDDED SYSTEMS 9 Features and Requirements of Embedded Systems – Signal Processing and Embedded Applications – The Digital Signal Processor – Embedded Multiprocessors – Case Studies. TOTAL : 45 PERIODS OUTCOMES: Upon completion of the course, the students will be able to Identify the limitations of ILP and the need for multicore architectures Discuss the issues related to multiprocessing and suggest solutions Point out the salient features of different multicore architectures and how they exploit parallelism
Critically analyze the different types of inter connection networks Discuss the architecture of GPUs, warehouse-scale computers and embedded processors
REFERENCES: 1. John L. Hennessey and David A. Patterson, “ Computer Architecture – A Quantitative Approach”, Morgan Kaufmann / Elsevier, 5th edition, 2012.
2. Kai Hwang, “Advanced Computer Architecture”, Tata McGraw-Hill Education,
2003 3. Richard Y. Kain, “Advanced Computer Architecture a Systems Design Approach”, Prentice Hall, 2011.
4. David E. Culler, Jaswinder Pal Singh, “Parallel Computing Architecture : A Hardware/ Software Approach” , Morgan Kaufmann / Elsevier, 1997.