Subscribe by Email

Thursday, November 10, 2011

What is reliability in terms of software engineering ?

Reliability is one of the most important aspect when it comes to discussions about a software application or a program. But what does it exactly means? Reliability can be defined as the strength or the solidity or the rigidity of structure of the software application. It is also a measure of resilience of the software application. Measurement of reliability shows us how much risk there is with the software application; it also measures the number of failures that can happen due to the present internal defects of the software application. A software application is tested for reliability to know the probability of failure of the software application as well as crashes so that the errors and defects can be reduced and corrected to the best level possible. There are some aspects of reliability of which care should be taken while testing. They have been listed below:
- Application practices
- Structure and complexity of the algorithms
- Programming practices
- Coding practices
Software Reliability can be defined as the probability of software operation free from failure for a certain period of time in defined and controlled conditions. Software Reliability overall affects the reliability of the whole system. Many people get confused between software reliability and hardware reliability. Software reliability differs from hardware reliability in the sense that it shows the perfection limit of the software and application design as compared to the hardware reliability which focuses upon manufacturing perfection.
The highly complex structure of the software is the major part of problems of Software Reliability. Till date no proper qualitative and quantitative technologies or methodologies have been designed to measure Software Reliability without any problems. There are several approaches that can be taken in account to improve the reliability of the software application even though it is difficult to balance all the factors of development effort, money and time with improvement of software reliability.
Software reliability if measured properly can be of great help to software application developers. There are many interactions between Software reliability and other aspects of the software application. The other aspects include the structure of the software program, and the number of tests that the software application has gone through. Through several reliability tests, data in the form of statistics can be obtained and true measure of reliability can be known. From the statistical data it can be easily known where improvement is needed in order to achieve greater reliability.
Different researchers and scientists and developers have their own way of testing software for reliability. This leads to conclusion that software reliability testing depends a lot on the one who is performing the test. This makes it a kind of art for which one has to practice a lot and come out with more creative, new, innovative and practical ideas to test reliability of a software application. Since the software reliability testing techniques and methodologies are weak, one can never be sure and confirmed that the software being tested is truly reliable in all kinds of conditions and environment.
Testing software for its reliability is not less than solving a real life hard problem. It requires a lot of efforts and it is time consuming. It also demands a lot of money. Even if we are using some other system to verify one software application for reliability, we cannot be sure that the system being used for testing and comparison is truly verified and cent percent correct. Faults are always present in each and every software application. There are always bugs and the software cannot be tested against infinite conditions. That’s impossible.

No comments:

Facebook activity