To learn the systematic approach to the development, operation, maintenance and retirement of software.
To develop methods and procedures for software development that can scale up for large systems and that can be used consistently to produce high-quality software at low cost and with a small cycle of time.
Understanding of software testing approaches such as unit testing and integration testing.
Describe software measurement and software risks.
Understanding of software evolution and related issues such as version management.
Understanding on quality control and how to ensure good quality software.