||To provide the students with a understanding of theoretical and practical foundation of software engineering.
||ECP1022: Program Design
||30 hours of Lectures
15 hours of Assignments/Tutorials
- IVAN Jacobson, "Object Oriented Software Engineering", Addision Wesley, 1992.
- Roger S. Pressman, "Software Engineering: A Practitioner's Approach", 3rd ed., McGraw Hill, 1992.
- Andrew Topper et. Al., "Structure Methods: Merging Models, Techniques and CASE", McGraw Hill, 1992.
- Ian Sommerville, "Software Engineering", 4th ed., Addision Wesley, 1992.
Principles of software engineering. Software life cycle. Project management. Computer based system engineering.
- Requirements and Specification
Analysis, definition, specification, software prototyping, formal specification, algebraic specification and model-based specification.
- Software Design
Architectural design. Object-oriented design. Function-oriented design. Real-time system design. User interface design. Dependable Systems. Reliability and reusability. Safety-critical
consideration. Good programming practice. Computer-aided Software Engineering (CASE)
- Verification and Validation
Validation and testing. Problems of assessing and quantifying the system reliability. Test case and test data design.
People and organization issues. Cost estimation. Quality management. Process improvement. Maintenance, configuration and re-engineering of software.
Faculty of Engineering
last updated: 5 July 1999