SOFTWARE ENGINEERING
Introduction:
The software engineering, Discipline-Evolution and impact. Why study software Engineering? Emergence of software Engineering.
Software Life Cycle Models:
Why use a lifecycle model? Classical waterfall Model, Iterative, Prototype, Evolutionary, Spiral Models & their Comparison.
Software Project Management:
Project Planning, Metrics for Project Size estimation-LOC and Function- Point, Project Estimation Techniques, COCOMO, Team Structure, Software Configuration Management.
Requirements Analysis and Specification:
Software Requirement Specifications (SRS), Formal System Development Techniques.
Software Design:
Issues in software Design, Function oriented design, object oriented Design, object Modelling Using UML, and user interface Design.
Coding and Testing:
Code Standard and guidelines, Code review , Verification and validation, Unit testing, Black Box Testing, Integration and system Testing. Software Reliability and Quality
Management Software Maintenance:
Characteristics of Software maintenance, Software Reverse Engineering, Software Process Models.
Software Reuse:
Issue in Software Reuse, Domain Analysis, Component Classification, Searching, Repository Maintenance.