Syllabus - Software Engineering (CS403)


Computer Science and Engineering

Software Engineering (CS403)

IV

Unit I

The Software Product and Software Process

Software Product Models: Linear Sequential Model, Prototyping Model, RAD Model, Evolutionary Process Models like Incremental Model, Spiral Model, Component Assembly Model, RUP and Agile processes. Software Process customization and improvement, CMM, Product and Process Metrics Characteristics, Software Process Process

Unit II

Requirement Elicitation, Analysis, and Specification

Functional and Non-functional requirements, Requirement Sources and Elicitation Techniques, Analysis Modeling for Function-oriented and Object-oriented software development, Use case Modeling, System and Software Requirement Specifications, Requirement Validation, Traceability

Unit III

Software Design

The Software Design Process, Design Concepts and Principles, Software Modeling and UML, Architectural Design, Architectural Views and Styles, User Interface Design, Function-oriented Design, SA/SD Component Based Design, Design Metrics.

Unit IV

Software Analysis and Testing

Software Static and Dynamic analysis, Code inspections, Software Testing, Fundamentals, Software Test Process, Testing Levels, Test Criteria, Test Case Design, Test Oracles, Test Techniques, Black-Box Testing, White-Box Unit Testing and Unit, Testing Frameworks, Integration Testing, System Testing and other Specialized, Testing, Test Plan, Test Metrics, Testing Tools. , Introduction to Object-oriented analysis, design and comparison with structured Software Engg.

Unit V

Software Maintenance & Software Project Measurement

Need and Types of Maintenance, Software Configuration Management (SCM), Software Change Management, Version Control, Change control and Reporting, Program Comprehension Techniques, Re-engineering, Reverse Engineering, Tool Support. Project Management Concepts, Feasilibility Analysis, Project and Process Planning, Resources Allocations, Software efforts, Schedule, and Cost estimations, Project Scheduling and Tracking, Risk Assessment and Mitigation, Software Quality Assurance(SQA). Project Plan, Project Metrics.

Course Objective

The purpose of this subject is to cover the underlying concepts and techniques used in Software Engineering & Project Management. Some of these techniques can be used in software design & its implementation.

Practicals

  • Lab work

    Lab work should include a running case study problem for which different deliverable sat the end of each phase of a software development life cycle are to be developed. Thiswill include modeling the requirements, architecture and detailed design. Subsequentlythe design models will be coded and tested. For modeling, tools like Rational Roseproducts. For coding and testing, IDE like Eclipse, Net Beans, and Visual Studio can be used.

Reference Books

  • Pankaj Jalote ,”An Integrated Approach to Software Engineering”, Narosa Pub, 2005

  • Rajib Mall, “Fundamentals of Software Engineering” Second Edition, PHI Learning

  • R S. Pressman ,”Software Engineering: A Practitioner's Approach”, Sixth edition2006, McGraw-Hill.

  • Sommerville,”Software Enginerring”,Pearson Education.

  • Richard H.Thayer,”Software Enginerring & Project Managements”, WileyIndia

  • Waman S.Jawadekar,”Software Enginerring”, TMH

  • Bob Hughes, M.Cotterell, Rajib Mall “ Software Project Management”, McGrawHill