Quality Control of Real Time Control Software (2)
Chen Zigi (reproduced from the computer world network)
Software Test From the software survival cycle, software testing is a card quality, especially the last level of the software reliability. But software testing is not limited to this stage, but should be through the whole process of software development (see Figure 4). Such awareness of awareness-a complex software for real-time control systems should be solved, and the idea that there is no error is not practical. Therefore, the main purpose of the test is: 1) Judgment of the quality or acceptability of the software; 2) Find problems. As seen from Figure 4, the phase of incorrect is incorrect is during the description, design, and programming. If these errors do not exclude, they will genex in the test phase, and even gene in the stage of use. Using test cases to test problems, failure classification, fault isolation, and failure cancellation, until the satisfactory test result is obtained. The preparation format and content of the test case are shown in Figure 5. Design of test. It is difficult to find out all the problems of software attempting to use this set of tests. The format contains test management information - test case logo and history. The test case identifier is a code given to each test example in accordance with certain regularities, which is easy to track. There is a test date in the history of the implementation (given the conclusion: through / fail), the version number and the tester are signed, these are all materials with preservation value. Test cases are designed, prepared, reviewed, used, managed, and saved. Software Test Requirements During the test, the software reliability data is collected, and the software reliability model is used to evaluate the reliability. Analyze whether it has reached the expected reliability requirements. And accordingly, the software can be released. If you don't meet the requirements, you need to continue test until you meet the requirements. It can be seen that this is a very spent activity. Software Verification and Confirmation Software Verification (VALIDATION) is simply referred to as V & V or V2. The difference between verification and confirmation is that verification is concerned about ensuring the correctness of the software module or function; confirm that it is to compare the requirements with the specified needs to meet the requirements, which is concerned about the value of the software product. Software verification and confirmation is a very detailed software inspection activity throughout the software development process. The results of each development phase can be considered as a specification file in the next development phase, but the results must be confirmed before it is entered. The main methods for verification and confirmation are: code takes inspections, review, testing and correctness certificates. The code takes check is written in writing of software documents. It inspects the correctness of software design by manually simulating the process of executing the source program. Artificial simulation is also like computer execution, you can carefully scrutinize, check and verify the results of each step, and then determine its logic, control model, algorithm, and use parameters and data correctness. Review is a major approach in software verification and confirmation to make up for some shortcomings of other methods. It is an error in the design and programming in form, effective and economic methods. The main purpose of the review is 1) Find out the defects in the software; 2) verify whether it meets the needs; 3) Early production evaluation; 4) Process evaluation, etc. Software evaluation work by third parties is important, and its evaluation tool software is static and dynamically evaluated by software, and it can discover software design defects, bottlenecks, and excess objects. It is worth noting that various methods, techniques, tools, and measures for software testing are necessary to improve the reliability of software, but not sufficient. This shows that any of these means can absolutely guarantee the reliability of the software, but as long as any of the small errors in the software, it will play its role. Software reviews say that most errors in the software are artificial. Software review is a "filter" that filtering software errors during software production. Software review involves an organization, management, guidelines, categories, content, documents, and requirements. Generally requiring software review in the milestone point in the software development phase. The main categories of the review include: software definition review, software requirements review, summary design review, detailed design review, software implementation review and software acceptance reviews.
The principle of review: · At a certain stage, it is not possible to enter the next software development phase; · If the review is not right, the product is the product, not the evaluation of the producer; · The more the staff of the evaluation team is, the better; · The review group does not do endless debate and argument, record the debate point, and the approve is to print; "Single" to improve the effect of the review; the role of the review: · Technical handle, avoid the software personnel; · Concept communication, absorbing users and overall personnel participate, review the correctness of software personnel understanding; · brainstorming, absorbing relevant division Participate, from different sides to confirm the coordination of software; The review is easy to walk, walk form. The evaluation results are closely related to the parties (software personnel). If you need to review, you can't believe in your own software, resulting in an allegation of the review. Squiring, classifying and summarizing the issues of the review, and does not ignore any small doubts. Software management science management can have reliability, effect, and benefits. The software management work is not perfect, not strict, is one of the causes of accidents. Software management mainly includes software project management, software configuration management, software reliability management, and software quality management. The content of software project management includes software development process management, software reliability metrics, risk management (including risk analysis and estimates), determines project tasks, establish an operational engineering plan. Software project management is the first layer of software management. It is important to emphasize that it is not a stage, not just a step, but through a level in the entire software development project. From its management content, this is a very important management. Its management is good and bad, directly affects the quality of the product. This management is still in the starting state, which is a weak link. Software Configuration Management is a means of software personnel and managers to determine, organize and carry out software modifications, with the aim of making less mistakes in software modification to maximize the productivity of software products. Software configuration management involves the determination of software configuration items and baselines. The software configuration item can be understood as a software documentation and the medium of saving software that should have in a certain stage of software. Software baseline (baseline) is also known as milestones. After the software configuration item is authenticated, confirmed, reviewed, and determined, the software baseline is formed, which has become a baseline in this stage. The next stage can only be developed on this benchmark. Software Configuration Management Requirements: · Software Modification must follow software changes specification; • Anyone has no right to modify it; · After the changes must be tested, verified and confirmed; · Software acceptance must review the corresponding software. The conditions with review include: Compared with the software configuration items of the baseline, test results and test analysis reports and software optimization reports. Document management is a very difficult and trivial work, requires: documentation must be specified, papers match, and text is consistent, describing consistency, exact, and concise, sign complete, clear responsibilities. Software reliability management has made some initial attempts. During software production, a software reliability data acquisition form is designed. Errors in the software, models, design, coding, and defined domains, etc. are possible. Fill in the time that generates the error (the accumulated time of computer execution), error nature, error cause, and elimination of errors. The awareness of the importance of main problems and solutions on real-time control system software engineering is still in its infancy, and the degree of importance is also imbalanced. Main issues: (1) Software development of some systems is borne by the hardware staff. Hardware, software, model design is completed by a group, still a typical "self-organized, self-guided, self-identified" small workshop work mode.