Software quality assurance (SQA) consists of the procedures, techniques and tools applied to ensure that an application meets or exceeds prescribed standards during the development cycle. If there are no prescribed standards, quality assurance ensures that a product meets or exceeds a minimal commercially acceptable level of excellence.
The SQA process works to produce high-quality software through a process called fault-avoidance. This process starts by describing exactly what the application is to do and how it will do it. This description is essential to gauge how well the application has met its goals.
After the application has been designed, the coding process can begin. During the coding process, these guidelines should be followed:
For example, in a Dexterity application, a procedure or function can perform a specific operation. This procedure or function has a set of parameters that are passed to and returned from it. Other parts of the application interact with the procedure through only these parameters. Because of this, how the specific operation is performed by the procedure or function can be changed without affecting other portions of the application, as long as the procedure’s or function’s parameters are unchanged.
During the development process, software tests should be planned to expose problems that weren’t discovered during the review process. This involves writing test procedures that test the software to determine whether it meets its requirements. These test procedures should also test boundary conditions and limits of the software.
Many of the test procedures developed to test the software can be recorded as macros. Macros allow exactly the same test procedures to be repeated, without introducing the factor of human error. This allows for regression testing, or retesting the application. After changes have been made to the application, regression testing is performed to ensure that existing functionality in the application hasn’t been affected.
A macro system is built into Dexterity and is available to all applications. It is useful for recording macros used for regression testing.