develop software. Construction and Management Software Development Phases Importance Maintenance Requirement Engineering Functional and Non- functional Requirements Use Case Model Prototyping Logical System Models Coupling and Cohesion Function Oriented versus Object Oriented Design Object Oriented Analysis and Design Relationships among Objects Dynamic Models Software Architecture Design Patterns Writing Maintenance Code Coding Style Software Validation and Verification Debugging Software Design