June 14, 2009
June 14, 2009
June 17, 2009
Software Engineering Constituent Committee
14.112.1 - 14.112.26
A State-of-Practice on Teaching Software Verification and Validation
Software testing is an essential activity in the software development process. Moreover, it covers a large part of the development costs involved. And, as the software tester is a key player in the testing activities that occur throughout the software lifecycle, the efficacy of such testing depends very much on his or her experience, efficiency, skills, and intuition. Given this importance of software testing, educators face a significant challenge when teaching and equipping students with the testing methodologies, skills, and knowledge that are in line with industry needs. The aim of this paper is to examine the current state-of-practice with respect to teaching Software Verification and Validation (V&V) in the accredited Bachelor of Software Engineering (BSE) programs offered in Australian universities. An online survey was conducted to obtain the required data from these universities. The same online survey was used to obtain data from the Certified Software Test Professional (CSTP) program. Nine universities responded and the data obtained are compared to the data relating to the CSTP program. Consequently, this paper reports on the differences between the two programs by focusing on the methods of teaching and the coverage of those topics specified within the area of Software V&V Knowledge as it is stated in the ACM Curriculum Guidelines. discussion of further details concerning what is lacking in the teaching of each topic for each category. An initial suggestion that would contribute to overcoming this educational shortfall is explained briefly in the Future Work section.
Software testing comprises a process of revealing any errors that may exist within a particular piece of software . The Verification and Validation (V&V) procedures applied involve both static and dynamic techniques of system checking designed to ensure that the tested program satisfies its specifications and meets the expectations of the stakeholders . It is the software tester who is responsible for constructing and executing such tests. As a consequence, the testing methodologies, skills, and knowledge of the tester are important qualities because their effective application will establish confidence among end users that the software is reliable.
Despite the importance of such testing within the software industry, it receives little attention in the undergraduate curriculum , with the coverage in Computer Science (CS) and Software Engineering (SE) courses assessed as insufficient . Technology is rapidly changing and this implies that instructors must instill in CS and SE students the testing skills, methodologies, and knowledge required to meet the challenges of this dynamic industry. Consequently, the institutions concerned should regularly review their courses and programs and make any changes necessary to ensure that curricula do not lag behind industry needs . In response to this concern, the first objective of this paper is to examine the current state-of-practice in the teaching of Software V&V within the BSE programs offered in Australian universities that are accredited
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2009 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015