1. |
Introduction: Introduction to software Engineering, Software characteristics, Software components, Software applications, Software Engineering Principles, Software metrics and measurement, monitoring and control. Software development life-cycle, Water fall model, prototyping model, Incremental model, Iterative enhancement Model, Spiral model. |
2. |
Software Requirement Specification: Requirements Elicitation Techniques, Requirements analysis, Models for Requirements analysis, requirements specification, requirements validation. |
3. |
System Design: Design Principles: Problem partitioning, abstraction. Top down and bottom up – design, structured approach. Functional versus object oriented approach of design, design specification, Cohesiveness and Coupling. Overview of SA/SD Methodology, structured analysis, data flow diagrams, extending DFD to structure chart. |
4. |
Software project Management: Project planning and Project scheduling. Software Metrics: Size Metrics like LOC, Token Count, Function Count. Cost estimation using models like COCOMO. Risk management activities. Software Reliability and Quality Assurance: Reliability issues, Reliability metrics, reliability models, Software quality, ISO 9000 certification for software industry, SEI capability maturity model. |
5. |
Testing: Verification and validation, code inspection, test plan, test case specification. Level of testing: Unit, Integration Testing, Top down and bottom up integration testing, Alpha and Beta testing, System testing and debugging. functional testing, structural testing, Software testing strategies. |
6. |
Software Maintenance: Structured Vs unstructured maintenance, Maintenance Models, Configuration Management, Reverse Engineering, Software Re-engineering. |