This Course examines the Software Development Process: analysis, specification, design, implementation, integration, testing and maintenance. It covers Software Processes, Project Management, People Management, Software Requirements, System Models, Architectural and Detailed Design, User Interface Design, Programming Practices, verification and validation and software evolution. Structured Software Engineering Techniques will also be examined.