Programming with assertions: a prospectus [software development]
Brian A. Malloy, Jeffrey Voas
Abstract
Brian A. Malloy, Jeffrey Voas
Abstract
To address the quality problem for software, developers need a technology that specializes in producing robust software. One widely used process that supports the construction of quality software is testing, which executes the program with input data or test cases, and then compares the output data to expected results. However, the transfer of techniques from research to practice has been slow because many techniques do not scale to real programs. An alternative to testing that has increasing popularity and usage entails the use of assertions to monitor the data attributes of functions or classes. Assertions are formal constraints on the behavior of a software application. Assertions can help improve software quality. To use them effectively, it's important to determine when they are valid.
OpenAlex reports 7 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
To address the quality problem for software, developers need a technology that specializes in producing robust software. One widely used process that supports the construction of quality software is testing, which executes the program with input data or test cases, and then compares the output data to expected results. However, the transfer of techniques from research to practice has been slow because many techniques do not scale to real programs. An alternative to testing that has increasing popularity and usage entails the use of assertions to monitor the data attributes of functions or classes. Assertions are formal constraints on the behavior of a software application. Assertions can help improve software quality. To use them effectively, it's important to determine when they are valid.
Key concepts: Computer science, Software engineering, Software development, Software construction, Software quality, Regression testing, Software, Popularity