WIP: Active Learning Exercises to Promote System Performance Testing

The verification of system performance is a major aspect necessary to ensure the proper operation of software systems. In numerous, high-profile cases, deployed systems, such as e-commerce sites and the Healthcare.gov website, have failed due to performance related issues. The IEEE Software Engineer...

Full description

Saved in:
Bibliographic Details
Published inAssociation for Engineering Education - Engineering Library Division Papers
Main Authors Schilling, Walter W, Dennis, Brad
Format Conference Proceeding
LanguageEnglish
Published Atlanta American Society for Engineering Education-ASEE 24.06.2017
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:The verification of system performance is a major aspect necessary to ensure the proper operation of software systems. In numerous, high-profile cases, deployed systems, such as e-commerce sites and the Healthcare.gov website, have failed due to performance related issues. The IEEE Software Engineering SE2014 document encourages software engineering programs to cover multiple forms of testing, ranging from unit tests through performance tests. Unit testing, at one extreme of this range, is easily taught as it focuses on small scopes and detailed functionality. Another type of testing, integration tests, can also be easily expressed based upon sequence diagrams. These two items must have deep coverage per the curriculum guidelines. However, at the other end of this spectrum is performance testing. Performance testing is much harder to teach, while also needing much less coverage per the IEEE SE2014 guidelines. This article will define a set of active learning exercises which were developed to aid in the understanding of performance testing. These exercises allow students to execute performance tests and analyze the results, while not requiring students to develop any performance tests. In each case, the performance behaviors are readily traced back to design and implementation decisions made which significantly limit the scalability of the systems under test. This article will describe our experiences with implementing the exercises, as well as provide feedback from students who have used the module to learn about performance testing.