Teaching Software Quality Assurance in an Undergraduate Software Engineering Program

Total Files1
Size0.00 KB
Create DateJanuary 23, 2018
Last UpdatedJanuary 23, 2018

Quality is increasingly seen as critical to business success, customer satisfaction, and acceptance. Its absence may result in financial loss, dissatisfied users, and damage to the envi- ronment, and may even result in deaths. For example, the Therac-25, a computer-driven radiation system, seriously injured and killed patients by massive overdosing (Levenson and Turner 1993). Software quality assurance (SQA) becomes even more important when one considers all the software development projects that have failed and the financial losses generated by those failures. As reported by Charette (2005), software specialists spend about 40 to 50 percent of their time on avoidable rework.

The École de Technologie Supérieure (ÉTS) began offering its software engineering undergraduate program in 2001. The aim of the SQA course, which is mandatory in this software engineering curriculum, is to ensure that software engineering students are aware of the importance of SQA, and that they understand and are able to manage its theoretical and practical aspects. This includes knowledge of the key ISO and IEEE standards, as well as how to use SQA tools in practice. The course allows students to apply SQA practices across the whole software life cycle.

The professors who designed the SQA course and are now teaching it and have more than 20 years of industrial experience, mainly in the telecommunications and defence sectors. The course is made up of lectures, practical exercises, and group projects. A continuous process of student evaluation is carried out to ensure that the concepts are well understood. Assessments are performed using exams, laboratory sessions, and mini- tests. Commercial tools and open-source software tools provide the necessary support to students to enable them to work with SQA as it is performed in industry.

This article is divided into four sections. First, the authors present an overview of the undergraduate program in software engineering. Next, they briefly introduce the Guide to the Software Engineering Body of Knowledge (SWEBOK) and the SQA knowledge area. The authors then present a detailed description of the SQA course. Following that, the current difficulties and future improvements are discussed. Finally, the authors conclude the article by raising issues related to the SQA course and its impact on the students in their professional lives.


Posted in .

I am full professor of Software Engineering at the University of Québec in Montréal, in its Software Engineering faculty. I have more than 30 years of Helthcare, Finance/Banking and Telecommunications IT industry experience, especially in Cloud Computing, Big Data, software acquisition, contracts, software quality assurance and business process management. I am more comfortable with open source, practical applications and technology transfer to industry.
Currently I concentrate on research projects. In the past I was the recipient of the ISO award for higher education in standardization in 2011, as well as the chair of the Software Engineering gratuate program and of the Software Engineering departement. I also published Software Engineering Books: Software Maintenance Improvement and Software Quality Assurance.