How to improve software reliability

First, the definition of software reliability
    stability of long-term operation (robustness)
    the accuracy of the output data
    may be recorded in the case of abnormal

Second, the factors that affect the reliability of software

1) the definition of needs analysis error
    due to the failure analysis, from the beginning on the wrong road, toward the wrong goal, after the implementation of mistake is inevitable.

2) the design quality
    of the level designers and design level have a direct link, but you can improve the design level by humanistic approach, but is not limited to this. The main factors affecting the quality of the design are: understanding of the needs, understanding of the software environment, designers design levels.

3) encoding quality
    coding process is actually a key factor affecting the reliability of the software, there are many factors that affect this process, such as: choice of programming language, programmers and coding levels to master the language features, encoding quality inspection and review system and implementation, code reuse rate

4) invalid test
    if the test unit during integration testing or, if poorly designed test, the test is not complete, easy to test failure, so that in the case of certain software failures untested.

5) documentation error
    if the document (including formal design documents as well as program notes) is incomplete, inconsistent, will lead the reader to produce variations on the design or code to understand, which may lead to the next step of a software error.

Third, how to improve software reliability

Improve software reliability can start from multiple angles, divided into several categories: improve the system norm, software reuse, improve staff quality, strengthen testing, timely and effective tracking

1) improve the system norm
    through the company's choice of system development methodology, writing, coding standards, code review system analysis and design documents such as the various software development process control, to improve software reliability.

2) Software reuse
    for generic modules abstraction, encapsulation, continue to accumulate team own development bank, can not only reduce development tasks for future development, shorten the development cycle, and these universal module, in constant reuse in its existence BUG will continue to be discovered, and then continue to improve, with the continuous improvement of these generic modules, the feasibility of using these modules to build software also rising.

3) improve the quality of the staff
    all software is developed "people," talent is the most critical factor in improving the reliability of software, through staff training necessary corporate systems development methodology, software knowledge, programming skills improve individual combat capability of staff, coupled with good management team, will significantly improve the viability of the software.

4) Strengthen test
    any design is not perfect, any program can be without BUG, a good test is to find an effective way to these issues, by strengthening the testing of the software, software to solve the problems as much as possible, thereby enhancing software reliability. Strengthen the test, the test was not simply the number the better, but also need some skills, such as programmers who write test code this is not your own program, carefully designed test cases and test cases for continuous tracking and improvement.

5) timely and effective tracking
    of all software, then through rigorous testing BUG not impossible, can not one hundred percent reliable, through the user feedback BUG BUG be modified remedy is most effective for improving the reliability of a software first, every time modifications will improve some of reliability. But it is valid, but not the highest efficiency, but efficiency is the lowest its modification, but after product release is an effective method for software quality continued to improve.

Forwarded From: https://blog.csdn.net/Nocky/article/details/6056596

Guess you like

Origin www.cnblogs.com/WayneKhouTech/p/12078819.html