This course presents the techniques for developing reliable, and cost-effective, medium-to-large-scale object-oriented and classical software. It also involves project development to implement these techniques. Topics include the software life-cycle and process models, the software requirements elicitation, specification, and validation techniques, the design techniques for object-oriented and classical software (architectural, and component, level design and the basic unified modeling language diagrams), software testing (black box and white box testing techniques), unit, integration, validation, and system testing, as well as the basic software project management and quality issues, and the documentation and technical writing, and the use of CASE tools.
Course Learning Outcomes:
1) Students shall be able to demonstrate an understanding of the software development life cycle and basic process models.
2) Students shall be able to demonstrate an understanding for requirements elicitation, specification, and validation techniques.
3) Students shall be able to demonstrate an ability to manage a small size project.
4) Students shall be able to demonstrate the ability to use CASE and various software tools.
5) Students shall be able to demonstrate an ability to develop professional documents.
6) Students shall be able to demonstrate an ability to design medium-scale programs.
3.000 Credit hours
3.000 Lecture hours
Levels: Undergraduate
Schedule Types: Lecture, Tutorial
Computer Science & Mathematics Department
|