- Complexity of Software: The high complexity of software is the major contributing factor of Software Reliability problems. This is a tough scenario for developers as the rising complexity of software is difficult to optimize. Complexity is directly related to software reliability, so representing complexity is important. Complexity-oriented metrics is a method of determining the complexity of a program’s control structure, by simplify the code into a graphical representation. A representative metric is McCabe’s Complexity Metric.
- Optimistic Nature: Many people would think that once after the software can run correctly, it will be correct forever. This leads to feeling of security, but actually we are going on a path of self-destruction if we believe like this. We need to fix issues as soon as they arise.
Effect of Environment :Once perfectly working software may also break if the running environmental changes. For example. Let us talk the case of Ariane rocket. After the success of Ariane 4 rocket, the maiden flight of Ariane 5 ended up in flames while design defects in the control software were unveiled by faster horizontal drifting speed of the new rocket.
- Software failure: Software failures may be due to errors, ambiguities, oversights or misinterpretation of the specification that the software is supposed to satisfy, carelessness or incompetence in writing code, inadequate testing, incorrect or unexpected usage of the software or other unforeseen problems.
- Lack of effective Software Reliability Models: A proliferation of software reliability have emerged as people try to understand the characteristics of how and why software falls, and try to quantify software reliability. As many models as there are and many more emerging, none of the models can capture a satisfying amount of the complexity of software. Constraints and assumptions have to be made for the quantifying process. Therefore, there is o single model that can be used in all situations. No model is complete or even preventative. One model may work well for a set of certain software, but may be completely off track for other kinds of issues.
Reliability Attributes in Software Development
Contact Us