July 26, 2021
July 26, 2021
July 19, 2022
Software Engineering Division
The increased ubiquity of software has resulted in the need for more software engineers to service all aspects of the software development life cycle, including maintaining software quality. In 2018, It is estimated that the poor quality of software in the US cost approximately $2.26 trillion. Software testing continues to be one of the main approaches used to validate software as software systems become more complex. Although there is increased testing of software in industry throughout the development life cycle, academic institutions continue to lag behind in offering the number of software testing courses to adequately prepare students for jobs in industry. In addition, educational institutions continue to grapple with how best to integrate software testing in their curricula. This paper presents the experiences of teaching an undergraduate software testing course over four non-consecutive years, focusing mainly on the class project. The semester-long project consists of several deliverables and is a major component of the testing course. Over the four years, different approaches were used to implement the project activities. The approaches used for the group projects include (a) testing different capstone projects that are sponsored by local companies, (b) all student teams testing a single project that is being developed during the semester, and (c) testing a single project that has been previously developed. A detailed description of the testing course is presented, and the dependencies with other classes in the curriculum are explained. Specific details of the different approaches for the class projects are presented, such as, the structure of the deliverables and how they were assessed. Project data for each semester is also presented and includes class enrollments, number of project teams, types of project, and level of complexity. Data on the tools used to develop and test the projects are also described. Testing each type of project presented a variety of advantages and challenges for students and the instructor. Some of the challenges include access to appropriate software testing tools, not meeting the coverage requirements when testing the project, assessing the large variety of group projects sponsored by local companies, and technical support for the testing tools. Based on the experience of teaching the course with different types of group projects, we present lessons learned and recommendations for future editions of the course. Some of our recommendations are consistent with other experience reports described in the literature.
Buckley, I., & Clarke, P. J. (2021, July), Experiences of Teaching Software Testing in an Undergraduate Class Using Different Approaches for the Group Projects Paper presented at 2021 ASEE Virtual Annual Conference Content Access, Virtual Conference. https://peer.asee.org/37132
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: © 2021 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