Software quality model for 1McCall
McCall and so on, the characteristic is the reflection of the software quality, the software attribute can be used as the evaluation criterion, quantitatively measure the software attribute to know the merits and demerits of software quality
McCall that the quality model of the software should include
Product modification, product transfer, product operationand
correction of the productalso includesmaintainability, testability, flexibilityand other characteristics.
Transfer of productsIncludingportability, reusability, and connectivitysuch as
operation of the productIncludingcorrectness, reliability, efficiency, usability and completeness
2 software fault-tolerant technology
The techniques for improving software quality and reliability are broadly divided into two categories: the avoidance of error (fault-avoidance) technology, the technology of avoiding errors in the process of development, and the fault-tolerant (fault-tolerance) technology, which is the error that cannot be avoided. Technology that minimizes its impact.
2.1 Fault-tolerant software definitions
The definition of fault tolerant software is summarized in the following four types:
(1) The software that specifies the function, to a certain extent, the function of its own error (software error) has the ability to shield, it is said that the software is fault-tolerant software, that is, fault-tolerant software.
(2) The software that specifies the function, to a certain extent, can recover from the error state automatically to the normal state, it is called fault-tolerant software.
(3) The software that specifies the function, in the error caused by error, still can to a certain extent to achieve the expected function, then the software is called fault-tolerant software.
(4) The software that stipulates the function, has the fault-tolerant ability to some extent, it is called the fault-tolerant software.
2.2 General methods of fault tolerance
1. Structural redundancy
(1) Static redundancy. Commonly used are: three-mode redundant TMR (Triple moduler redundancy) and multimode redundancy.
(2) Dynamic redundancy. The main way of dynamic redundancy is multi-module standby reserve, when the system detects a work module error, it uses a spare module to replace it and rerun.
(3) Mixed redundancy. It also has the advantage of static redundancy and dynamic redundancy.
2. Information redundancy
In order to detect or correct errors in the operation or transmission of information, a part of the information is added, this phenomenon is called information redundancy.
3. Time Redundancy
Time redundancy is the effect of eliminating transient errors by repeating the instruction (instruction re-execution) or the program (program re-calculation).
4, redundant additional technology
Redundant additional technology refers to the resources and techniques required to implement the above-mentioned redundancy techniques.
2.3 Design process of fault-tolerant software
The design process for fault-tolerant systems includes the following design steps:
(1) According to the design task requirements of the regular design, as far as possible to ensure the correct design.
The non-fault-tolerant structure is obtained by conventional design, which is the base of fault-tolerant system. In the structure redundancy, both the main module and the spare module design and implementation, under the conditions of cost permitting, with the debugging method to maximize the reliability.
(2) Determine the scope for fault tolerance by classifying possible errors.
Correct judgment and classification of possible errors, for example, for hardware transient errors, command re-practice and program re-calculation, and for permanent errors, backup replacement or system refactoring is required. For software, only by maximizing the rules of error and exposure can we correctly judge and classify and realize the fault tolerance of success.
(3) According to the "cost-efficiency" optimal principle, choose some kind of redundant means (structure, information, time) to achieve the shielding of all kinds of errors.
(4) Analyze or verify the fault-tolerant effect of the above redundant structure. If the effect does not reach the desired level, you should re-design the redundant structure. So again and again until a satisfactory result is reached.
Software Quality Management