Object-Oriented Software Development (COE - 502) Objectives:- To teach the students the methodology of software development using objectoriented techniques. Through this course student should be able to analyze, design and develop software using widely accepted object-oriented processes and diagrams. Syllabus:- Software process and role of modeling and analysis, Software Elicitation, Analysis: analysis, modeling and best practices, use of DFDs, ERDs, UML diagrams, UML analysis and modeling, analysis case studies, analysis tools, analysis patterns; Object-Oriented System Design: design methodologies, use of interaction, sequence, collaboration, deployment diagrams, reusing pattern solutions, specifying Interfaces, design case studies; towards implementation, object-oriented testing; Project Management issues. Books:1. Bernd Bruegge, Allen H Dutit, Object-Oriented Software Engineering: Using UML, Patterns and Java, Pearson Education, 2010 2. Yogesh Singh, R Malhotra, Object-Oriented Software Engineering, PHI, 2012. Booch, Rumbaugh, Jacobson, The Unified Modeling Language User Guide, 1999 Advanced Architecture (COE - 504) Objective:- To understand issues in the architecture of superscalar computing systems. Processor architecture, pipelining, vector processing, superscalar processors, hardware and compiler support for branch prediction, out-of-order Instruction issue, speculative execution and other techniques for high-performance, Instruction and data cache organizations, multilevel caches, parallel memory systems, Support for virtual memory, Multiple processor systems, taxonomy, programming models, message passing systems, Interconnection networks, shared memory system, memory models, cache coherence, I/O systems, parallel disk organizations, Introduction to advanced topics. References:1. Hwang and F.A.Briggs: Computer Architecture and Parallel Processing, McGraw Hill. 2. Hennessy, J.L., and Patterson, D.A., Computer Architecture, A quantitative Approach, Morgan Kaufmann. 3.Stone, H.S., High-Performance Computer Architecture Addison-Wesley. Mobile Ad hoc and Wireless Sensor Networks (COE - 522) Objective:- To understand issues in the Mobile Ad hoc and Wireless Sensor Networks. Mobile Ad hoc Networks (MANET) – Mobility Management, modeling distributed applications for MANET, MAC mechanisms and protocols MANET Routing Protocols: Ad hoc network routing protocols, Destination Sequenced Distance Vector algorithm, Cluster based gateway switch routing, Global state routing, Fish-eye state routing, Dynamic source routing, Ad hoc on-demand routing, OLSR & TORA routing, location aided routing, ZRP algorithm. Ad hoc network security – Link layer, Network layer, Trust and key management Self policing MANET – Node Misbehaviour, secure routing, reputation systems Wireless Sensor Networks (WSN) – Design Issues, Clustering, Applications of WSN MAC layer and routing protocols in WSN Data Retrieval Techniques in WSN – Sensor databases, distributed query processing, Data dissemination and aggregation schemes, Operating Systems for WSN, Security issues in WSN References:1. C. Siva Ram Murthy & B.S. Manoj, Mobile Ad hoc Networks – Architectures & Protocols, Pearson Education, New Delhi, 2004 2. C M Cordeiro & D.P. Agrawal, Adhoc & Sensor Networks – Theory and Applications, ISBN 981-256-682-1, World Scientific Singapore, 2006 3. C. S. Raghvendra, Wireless Sensor Networks, Springer-Verlag, 2006 (Available as E-Book at NIT Kurukshetra Purchased in 2006) 4. Holger Karl and Andreas Willig, Protocols and Architectures for Wireless Sensor Networks, John Wiley and Sons, 2006, ISBN-13 978-0-470-09510-2. Soft Computing (COE-524) Objective:- This syllabus covers the different domains of soft computing techniques like neural networks, fuzzy logic, genetic algorithm and swarm optimization. Unit-I: Soft Computing and Artificial Intelligence: Introduction of Soft Computing, Soft Computing vs. Hard Computing, Various Types of Soft Computing Techniques, Applications of Soft Computing, AI Search Algorithm, Predicate Calculus, Rules of Interference, Semantic Networks, Frames, Objects, Hybrid Models. Unit-II: Artificial Neural Networks and Paradigms : Introduction, Neuron Model, Neural Network Architecture, Learning Rules, Perceptrons, Single Layer Perceptrons, Multilayer Perceptrons, Back propagation Networks: Kohnen's self organizing networks, Hopfield network, Applications of NN. Unit III: Fuzzy Logic : Introduction, Fuzzy sets and Fuzzy reasoning, Basic functions on fuzzy sets, relations, rule based models and linguistic variables, fuzzy controls, Fuzzy decision making, applications of fuzzy logic. Neuro - Fuzzy Modeling : Adaptive Networks Based Fuzzy Interface Systems, Classification and Regression Trees, Data Clustering Algorithms, Rule Based Structure Identification, Neuro-Fuzzy Controls, Simulated Annealing, Evolutionary Computation. Unit-IV: Genetic Algorithms and Swarm Optimizations: Introduction, Genetic Algorithm, Fitness Computations, Cross Over, Mutation, Evolutionary Programming, Classifier Systems, Genetic Programming Parse Trees, Variants of GA, Applications, Ant Colony Optimization, Particle Swarm Optimization, Artificial Bee Colony Optimization. Books :1. Saroj Kaushik, “ Artificial Intelligence”, Cengage Learning. 2. Anupam Shukla, “Real Life Applications of Soft Computing”, CRC Press. 3. B. Yegnanrayana , “Artificial Neural Networks” , PHI. 4. Zimmermann, “Fuzzy Set Theory and its Application”, 3rd Edition. 5. Jang J.S.R., Sun C.T. and Mizutani E, "Neuro-Fuzzy and Soft computing", Prentice Hall, 1998. 6. Timothy J. Ross, "Fuzzy Logic with Engineering Applications", McGraw Hill, 1997. 7. D.E. Goldberg, "Genetic Algorithms: Search, Optimization and Machine Learning", Addison Wesley, N.Y, 1989. Advances in Operating Systems (COE-526) Objective:- To study the Operating system fundamentals (Hardware and software concepts), Distributed systems, Real time systems, Multiprocessor systems, Virtual memory organization, and networking based on different operating systems. . Introduction to Operating Systems, Hardware and Software Concepts, ,Introduction to Distributed Systems, Distributed Systems and Web Services, Real Time Systems , Multiprocessor operating systems ,Process Concepts ,Thread Concepts ,Processor Scheduling ,Multiprocessor Management Security , Performance and Processor Design ,Real Memory Organization and Management , Virtual Memory Organization ,Virtual Memory Management ,Disk Performance Optimization ,File and Database System, Introduction to Networking Based on Different Operating Systems. Books:1. Mukesh Singhal and N. G. Shivaratri, “Advanced Concepts in Operating Systems”, McGraw- Hill, 2000 2. “Operating Systems (Third Edition)”, Harvey M. M. Deitel, Paul J. Deitel, David R. Choffnes, Pearson 3. A multiprocessor operating system, M. Joseph, V. R. Prasad, N. Natarajan References:1. Abraham Silberschatz, Peter B. Galvin, G. Gagne, “Operating System Concepts”, Sixth Edition, Addison Wesley Publishing Co., 2003. 2. Andrew S. Tanenbaum, “Modern Operating Systems”, Second Edition, Addison Wesley, 2001. Image processing (COE - 528) Objective:- To study the fundamentals of image processing, Image restoration and reconstruction techniques, Color image processing, Image enhancement, Image Segmentation and Morphology Digital image fundamentals: elements of visual Perception, light and electromagnetic spectrum, image sensing and Acquisition, imaging sampling and quantization, intensity transformations and spatial filtering: basics, histogram processing, smoothing spatial filters Image restoration and reconstruction: a model of image degradation/restoration process, noise models, restoration in presence of noise only-spatial filtering, estimating the degradation function, inverse filtering, Image Enhancement: Arithmetic and logical operations, pixel or point operations, size operations, Smoothing filters-Mean, Median, Mode filters – Comparative study, Edge enhancement filters – Directorial filters, Sobel, Laplacian, Robert, KIRSCH Homogeneity & DIFF Filters, prewitt filter, Contrast Based edge enhancement techniques. – Comparative study Low Pass filters, High Pass filters, sharpening filters. – Comparative Study, Comparative study of all filters. Color image processing: fundamentals and models, pseudo color image processing, basics of full color image processing, color transformations, smoothing and sharpening, image segmentation based on color. Image enhancement: (By FREQUENCY Domain Methods): Design of Low pass, High pass, EDGE Enhancement, smoothening filters in Frequency Domain, Butter worth filter, Homomorphic filters in Frequency Domain Advantages of filters in frequency domain, comparative study of filters in frequency domain and spatial domain. Image Segmentation: fundamentals, point, line and edge detection, region based segmentation Morphology: - Dilation, Erosion, Opening, closing, some basic morphological algorithms, gray scale. Books:1. R.Gonzalaz and P.Wintz, "Digital Image Processing", Addison Wesley 2nd Ed, 1987. 2. Anil K.Jain, "Fundamentals of Digital Image Processing", PHI 1995. 3. William. K.Pratt, "Digital Image Processing", Wiley Interscience, 2nd Ed, 1991. 4. Milan Sonka vaclan Halavac Roger Boyle ,”Image processing, Analysis, and Machine vision”, Vikas Publishing House Embedded System Design (COE-530) Objective:- To give the students an understanding of embedded system design. Learning Outcomes:- After gone through this subject, the following will be outcomes:a. Understand the embedded hardware and software. b. Implement the embedded system with co-design methodologies. 3. Introduction:-Definitions, architecture, characteristics, advantages, efficiency metrics, examples of embedded systems. 4. Embedded System Hardware:- Sensors and devices, Sample-and-hold circuits, analog-todigital and digital-to-analog conversions, data encoding, Data communications in embedded environments. I/O organizations: device interfaces, processor interfaces, time-critical I/O handling, bus structures and protocols, access control methods. 5. Embedded Operating Systems and Scheduling:- Embedded operating system general requirements, Structures of embedded operating systems, cross development and debugging techniques and tools. 6. Implementing Embedded Systems:- Hardware/Software Codesign Overview, Models and Methodologies of Embedded System co-design, Hardware/ Software partitioning, compilers for embedded systems, Voltage scaling and power management. References:1. Embedded System Design, Peter Marwedel, Kluwer Academic Publishers, @2003 2. The Art of Programming Embedded Systems, Jack G. Ganssle, Academic press. 3. Intelligent Embedded Systems, Louis L. Odette, Addison-Wesley, 1991 4. J. Staunstrup and W. Wolf, editors, Hardware/Software Co-Design: Principles and Practice, Kluwer Academic Publishers, 1997. Grid Computing (COE-532) Objective:- To understand performance issues, optimization and security in reliable grid computing. Introduction: High performance computing, Grid computing, Challenges, Infrastructure of hardware and software, Types of grid, Main Projects and Applications, Grid computing models. Grid Architecture: Grid Architecture and relationship to other technologies, building blocks of grid, grid computing environment, and Open grid service architecture. Overview of Resource Managers: Scheduling, Security, Fault tolerance Application management: Grid Application Description Languages, Application Partitioning, Meta-scheduling, Monitoring Fault tolerance: Challenges, techniques of fault tolerance Grid computing toolkits: Globus toolkit – Architecture, programming model, high level services, OGSI Introduction to Clouds References:1. Ian Foster, Carl Kesselman, “The grid2: Blueprint for new computing infrastructure”. Morgan Kaufman 2. Fran Berman, Geoffrey Fox, Anthony Hey J.G, “Grid computing: Making the global infrastructure a reality”, Wiley, USA, 2003. 3. Maozhen Li, Mark Baker, “The Grid: Core Technologies”, John Wiley & Sons, 2005. 4. Joshy Joseph & Craig Fellenstein, “ Grid Computing”, PHI, 2003. High Performance and Parallel Computing (COE-534) Objective:- To understand approaches to achieve higher performance in modern computing systems despite inherent limitations in hardware support. Parallel Processing Concepts, Levels of parallelism,instruction, transaction, task, thread, memory, function,Dataflow Models, Demand-driven Computation etc., Architectures, N-wide superscalar architectures, multi-core, multi-threaded, Processor Architecture, Interconnect, Communication, Memory Organization, and Programming Models in high performance computing architectures, Memory hierarchy and transaction specific memory design, Thread Organization, Fundamental Design Issues in Parallel Computing, Synchronization, Scheduling, Job Allocation, Job Partitioning, Dependency Analysis, Mapping Parallel Algorithms onto Parallel Architectures, Performance Analysis of Parallel Algorithms, Fundamental Limitations Facing Parallel Computing, Bandwidth Limitations, Latency Limitations, Latency Hiding/Tolerating Techniques and their limitations, Power-Aware Computing and Communication, Power-aware Processing Techniques, Power-aware Memory Design, Poweraware Interconnect Design, Software Power Management,Petascale Computing, Optics in Parallel Computing, Quantum Computers, Recent developments in Nanotechnology and its impact on HPC. References:1. Highly Parallel Computing, by George S. Almasi and Alan Gottlieb 2. Advanced Computer Architecture: Parallelism, Scalability, Programmability”, by Kai Hwang, McGraw Hill 1993 3. Parallel Computer Architecture: A hardware/Software Approach, by David Culler Jaswinder Pal Singh, Morgan Kaufmann, 1999. 4. Scalable Parallel Computing, by Kai Hwang, McGraw Hill 1998. 5. Principles and Practices on Interconnection Networks, by William James Dally and Brian Towles, Morgan Kauffman 2004. 6. GPU Gems 3 --- by Hubert Nguyen (Chapter 29 to Chapter 41) 7. Introduction to Parallel Computing, AnanthGrama, Anshul Gupta, George Karypis, and Vipin Kumar, 2nd edition, Addison-Welsey, 2003. 8. Petascale Computing: Algorithms and Applications, David A. Bader (Ed.), Chapman & Hall/CRC Computational Science Series, 2007. Research Methodology (COE-536) Objectives:1. To gain insights into how scientific research is conducted. 2. To help in critical review of literature and assessing the research trends, quality and extension potential of research and equip students to undertake research. 3. To learn and understand the basic statistics involved in data presentation. 4. To identify the influencing factor or determinants of research parameters. 5. To test the significance, validity and reliability of the research results. 6. To help in documentation of research results. Expected Outcome:1. Ability to critically evaluate current research and propose possible alternate directions for further work 2. Ability to develop hypothesis and methodology for research 3. Ability to comprehend and deal with complex research issues in order to communicate their scientific results clearly for peer review. 1. Introduction: Meaning and significance of research and scholarship; difference between undergraduate and research education; skills, habits and attitudes for research; status of research in India; course objectives. 2. Thinking skills: Problem solving, creativity, problem finding and formulation, Levels and styles of thinking; common-sense and scientific thinking; examples. Problem solving strategies – reformulation or rephrasing, techniques of representation, logical thinking, division into sub-problems, verbalization, awareness of scale; Importance of graphical representation; examples. Creativity – some definitions, illustrations from day to day life; intelligence versus creativity; gift or skill; creative process; requirements for creativity – role of motivation and open vs closed minds; multiple approaches to a problem, analytical vs analogical reasoning, puzzle solving; examples; prepared mind; Creative problem solving using Triz. Problem finding and literature survey, Information gathering – reading, searching and documentation; types, attributes and sources of research problems; problem formulation. Prescriptions for developing creativity and problem solving. 3. Experimental and modeling skills: Scientific method; role of hypothesis in experiment; units and dimensions; dependent a n d independent variables; control in experiment; precision and accuracy; need for precision; definition, detection, estimation and reduction of random errors; statistical treatment of data; definition, detection and elimination of systematic errors; design of experiments; experimental logic; documentation; Types of models; stages in modeling; types of models; curve fitting; the art of making approximations; problem representation; logical reasoning; mathematical skills; finite element and Monte Carlo techniques of numerical simulation; Two case studies illustrating experimental and modeling skills. 4. Effective communication - oral and written: Examples illustrating the importance of effective communication; stages and dimensions of a communication process. Oral communication –verbal and non-verbal, casual, formal and informal communication; interactive communication; listening; form, content and delivery; various contexts for speaking- conference, seminar etc; visual aids Written communication form, content and language; layout, typography and illustrations; contexts for writing – paper, thesis, reports etc. Prescriptions for developing communication skills. 5. Publishing and patenting: Difference between publishing and patenting; relative importance of various forms of publication; choice of journal and reviewing process; stages in the realization of a paper or a patent and how to handle these 6. Stress and time management, Interpersonal skill, professional ethics: Psychological phases of a PhD process; stress points; aims of supervisors; mismatches between scholar and supervisor and related problems. Managing self; empathy; managing relationships with your supervisor, colleagues, and supporting staff; listening; assertiveness; teamwork; sense of humor. Duration and stages of a PhD process; long term and short term goals; time tabling and deadlines. Profession; integrity, objectivity, fairness and consistency; loyalty; plagiarism and research ethics; safety References:1. E. M. Phillips and D. S. Pugh, "How to get a PhD - a handbook for PhD students and their supervisors", Viva books Pvt Ltd, (Rs. 130 after 20 % discount). 2. G. L. Squires, "Practical physics", Cambridge University Press (Rs. 155 after 20 % discount). 3. Handbook of Science Communication, compiled by Antony Wilson, Jane Gregory, Steve Miller, Shirley Earl, Overseas Press India Pvt Ltd, New Delhi, 1st edition 2005 (Rs. 130). Related Links:1. http://www.cs.virginia.edu/~robins/YouAndYourResearch.html Richard hamming, "You and your research", 2. http://www.apastyle.org/authorship.html "Reflections on Determining Authorship Credit and Authorship Order on faculty–student Collaborations" 3. http://abcnews.go.com/Technology/story?id=1831398 "Where do good ideas come from?" Additional Readings:• Peter Medawar, 'Advice to Young Scientist' • Alfred P.Sloan Foundation Series, 1979. Mobile Computing (COE - 538) Objective:- To understand modern trend of mobile computing and to acquire knowledge about the methodology followed in developing secure computing applications for cellular, MANET, and sensor environment. Challenges in mobile computing, cellular Vs ad hoc mobile computing environments, coping with uncertainties, resource scarcity, bandwidth, and mobility, Routing in MANETs, TORA, TORA-based computing protocols, Fundamental problems, Synchronization, Mutual exclusion, Coordinator election, Agreement problems, Termination in cellular systems and MANETs, Handling fundamental challenges in faulty distributed environments, Causal message delivery, Publish/Subscribe, Concepts of graph theory applicable to MANETs, Minimum spanning tree, Ring, Tree, Hybrid architectures, Fault tolerance, Coordinated and Uncoordinated Check pointing, No blocking protocols. References:1. Theodore S. Rappaport, Wireless Communications: Principles and Practice, Second Edition, Prentice Hall, 2002. 2. Ivan Stojmenovic, Handbook of Wireless Networks and Mobile Computing, John Wiley & Sons, 2002. 3. Mohd. Ilyas & Imad Mahgoub, Mobile Computing Handbook, CRC Press/Aurbach Publications, ISBN 0-8493-1971-4, Boca Raton USA, 2005.