1 / 28

Software Metrics and Reliability

Software Metrics and Reliability. Reliability. The most important dynamic characteristic of software is its reliability. The reliability of a software system is a measure of how well it provides the services expected by its users. RELIABILITY ISSUES.

donnellt
Download Presentation

Software Metrics and Reliability

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Metrics and Reliability

  2. Reliability • The most important dynamic characteristic of software is its reliability. • The reliability of a software system is a measure of how well it provides the services expected by its users.

  3. RELIABILITY ISSUES Some of the contributing factors are given below: • Change in environment • Change in infrastructure/technology • Major change in requirements • Increase in complexity • Extremely difficult to maintain

  4. RELIABILITY METRICS • Reliability metrics are used to quantitatively express the reliability of a software product. • Some reliability metrics, which can be used to quantify the reliability of a software product are:

  5. MTTF (Mean Time to Failure). The MTTF is the mean time for which a component is expected to be operational. • The MTTF is the average time between observed system failures. An MTTF of 500 means that one failure can be expected every 500 time units. • The time units are totally dependent on the system and it can even be specified in the number of transactions, as is the case of database query systems.

  6. MTTR (Mean Time to Repair) Once a hardware component fails then the failure is usually permanent • so the Mean Time to Repair (MTTR) reflects the time taken to repair or replace the component.

  7. MTBF (Mean Time Between Failures). • We can combine the MTTF and MTTR metrics to get the MTBF metric: MTBF=MTTF+MTTR • Thus, a MTBF of 300 hours indicates that once a failure occurs, the next failure is expected to occur only after 300 hours.

  8. ROCOF (Rate of Occurrences of Failure). • ROCOF is the frequency of occurrence with which unexpected behavior is likely to occur. • A ROCOF of 2/100 means that two failures are likely to occur in each 100 operational time units

  9. Ex: It is relevant for operating systems and transaction-processing systems • where the system has to process a large number of similar requests that are relatively frequent; for example, credit-card processing systems, airline- booking systems, etc.

  10. AVAIL (Availability). Availability is the probability that the system is available for use at a given time. • An availability of 0.998 means that in every 1000 time units, the system is likely to be available for 998 of these.

  11. RELIABILITY GROWTH MODELING • A reliability growth model is a mathematical model of how software reliability improves as errors are detected and repaired

  12. Step Function Model • The simplest reliability growth model is a step function model, where it is assumed that the reliability increases by a constant increment each time an error is detected and repaired.

  13. Jelinski and Moranda Model • In this model, it is realized that reliability does not increase by a constant amount each time an error is repaired. • The improvement in reliability due to fixing of an error is assumed to be proportional to the number of errors remaining in the system at that time.

  14. Definitions • According to ANSI, “ Software Reliability is defined as the probability of failure – free software operation for a specified period of time in a specified environment”. • IEEE defines Reliability as “ The ability of a system or component to perform its required functions under stated conditions for a specified period of time”

  15. Software Reliability It is not a direct function of time Hardware Reliability It is a direct function of time. Software Reliability and Hardware Reliability

  16. Software Reliability Integration and Testing Useful life obsolete Integration and Testing Useful Life obsolete

  17. Hardware Reliability Burn In Useful Life Wear Out Burn In Useful Life Wear Out

  18. Faults and Failures FAILURE • It is the departure of the external results of program operation from • requirements

  19. FAULT • A Fault is a defect in a program which arises when programmer makes an error. • It Causes Failure when executed under particular conditions

  20. Achieving Reliability • Software Reliability can be achieved by using metrics at different stages of software development cycle.

  21. Phases • Requirement Phase • Design and coding phase • Testing phase

  22. Software Metrics For Reliability • Requirements Reliability Metrics • Design and Code Reliability Metrics • Testing Reliability Metrics

  23. Requirements Reliability Metrics • A clear understanding between client and developer should exist. • Must Contain valid Strucure • Must be complete • Ease to communicate

  24. Design and Code Reliability Metrics Quality Factors • Complexity • Size

  25. Testing Reliability Metrics • First approach is “ensuring that the system is fully equipped with the functions that are specified in the requirements”. • Second approach is “Evaluating the code, Finding the errors and fixing them”.

  26. Conclusion • Software Reliability is the probability that the software will work without failure for a specified period of time • Achieving the software reliability is hard as the complexity of the software tends to be high • Software Reliability can be increased by applying metrics at different stages of software development life cycle.

  27. Thank You

  28. Any Questions?

More Related