Software reliability, unlike many other quality factors, can be measured directed and estimated using historical and developmental data. Software reliability is defined in statistical terms as "Probability of failure free operation of a computer program in a specified environment for a specified time" to illustrate, program x is estimated to have reliability of 0.96 over 8 elapsed processing hours. In other words, if program x were to be executed 100 times and required 8 hours of elapsed processing time, it is likely to operate correctly to operate 96/100 times.
In a computer-based system, a simple measure of reliability is mean time between failure (MTBF), where
MTBF = MTTF+MTTR
The acronym MTTF and MTTR are Mean Time To Failure and Mean Time To Repair, respectively.
In addition to reliability measure, we must develop a measure of availability. Software availability is the probability that a program is operating according to requirements at a given point in time and is defined as:
Availability = MTTF / (MTTF+MTTR) x100%
The MTBF reliability measure is equally sensitive to MTTF and MTTR. The availability measure is somewhat more sensitive to MTTR an indirect measure of the maintainability of the software.
Software safety and hazard analysis are SQA activities that focus on the identification and assessment of potential hazards that may impact software negatively and cause entire system to fail. If hazards can be identified early in the software engineering process software design features can be specified that will either eliminate or control potential hazards.
A modeling and analysis process is conducted as part of safety. Initially hazards are identified and categorized by criticality and risk.
Once hazards are identified and analyzed, safety related requirements could be specified for the software i.e., the specification can contain a list of undesirable events and desired system responses to these events. The roll of software in managing undesirable events is then indicated.
Although software reliability and software safety are closely related to one another, it is important to understand the subtle difference between them. Software reliability uses statistical analysis to determine the likelihood that a software failure will occur however, the occurrence of a failure does not necessarily result in a hazard or mishap. Software safety examines the ways in which failure result in condition that can be lead to mishap. That is, failures are not considered in a vacuum. But are evaluated in the context of an entire computer based system.
The SQA plan provides a road map for instituting software quality assurance. Developed by the SQA group and the project team, ANSI/IEEE Standards 730-1984 and 983-1986 SQA plans is defined as shown below.
I. Purpose of Plan
2. Required software engineering documents
3. Other Documents
V. Standards, Practices and conventions
VI. Reviews and Audits
2. Review requirements
a. Software requirements
b. Designed reviews
c. Software V & V reviews
d. Functional Audits
e. Physical Audit
f. In-process Audits
g. Management reviews
VIII. Problem reporting and corrective action
IX. Tools, techniques and methodologies
X. Code Control
XI. Media Control
XII. Supplier Control
XIII. Record Collection, Maintenance, and retention
XV. Risk Management.
TEST CASE DESIGN
TEST CASE DESIGN TWO
DESIGN OF TEST CASES PART THREE
TEST CASE DESIGN PART THREE
TEST CASE DESIGN PART FOUR
TEST CASE DESIGN PART FIVE
TEST CASE DESIGN PART SIX
TEST CASE DESIGN PART SEVEN
TEST CASE DESIGN PART EIGHT
TEST CASE DESIGN PART NINE
REVIEWS AND APPROVAL OF TEST CASES
WRITING SOFTWARE TEST CASES PART ONE
WRITING SOFTWARE TEST CASES PART TWO
WRITING SOFTWARE TEST CASES PART THREE
WRITING SOFTWARE TEST CASES PART FOUR