6 points, SCA Band 2, 0.125 EFTSL
Undergraduate - Unit
Refer to the specific census and withdrawal dates for the semester(s) in which this unit is offered.
(and ) or one of , , or
This unit focuses on quality assurance issues and techniques in software development projects. It defines software quality and introduces a number of quality assurance measures, including human review and inspection of code and non-code artifacts, as well as execution-based testing.
Students will apply systematic testing techniques in the context of individual modules and entire systems, using appropriate tools to automate the testing process where possible. Students will systematically document their testing plans and outcomes.
At the completion of this unit, students should be able to:
- identify appropriate quality goals for a moderately-sized software development project, select an appropriate quality assurance strategy to give confidence that these quality goals can be achieved, and document this strategy appropriately in the context of a software process model;
- apply quality assurance techniques such as reviews to non-code development artifacts such as requirements specifications or design documents;
- perform systematic, automated unit testing on source code modules, using both specification-based and code-based approaches, utilising automated testing frameworks, including faking and mocking tools;
- perform integration and system testing on a moderately-sized software system, using continuous integration frameworks and tracing tests back to requirements;
- select appropriate tools to collect metrics, including test coverage, reliability, and design quality metrics, to analyse the quality of a software development project, and make recommendations based on the results;
- describe the major classes of formal methods used in software engineering, including model checking and theorem proving, and identify situations where their use is justified.
Examination (2 hours): 40%; In-semester assessment: 60%
Minimum total expected workload equals 12 hours per week comprising:
- Contact hours for on-campus students:
- One hour lecture
- Two hour workshop
- Additional requirements (all students):
- A minimum of 4-5 hours of personal study per teaching week in order to satisfy the reading, workshop and assignment expectations.
See also Unit timetable information