Software reliability engineering process


Published on

Software reliablity engineering process

Published in: Education, Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Software reliability engineering process

  1. 1. Software Reliability Engineering Process Dr. Himanshu Hora SRMS College of Engineering & Technology Bareilly (INDIA)
  2. 2. Software Reliability  IEEE 982.1-1988 defines software reliability as “The ability of a system or component to perform its required functions under stated conditions for a specified period of time.”  Is the probability that a system will operate without failure under given environmental conditions for a specified period of time.  Aims at fault-free performance of software systems
  3. 3. Software reliability engineering  Engineering (applied science) discipline  Measure, predict, manage reliability  Statistical modeling  Customer perspective: • failures vs. faults • meaningful time vs. development days • customer operational profile
  4. 4. SRE Process
  5. 5. 1.List Associated Systems  Lists all systems associated with the product that must be tested independently and are of two types Base product & variations and Super-systems 2.Develop Operational Profiles  An Operational profile is a Complete set of commands with their probabilities of occurrence  System Testers and System engineers are included
  6. 6. 3.Define “Just Right” Reliability  Define what “failure” means for the product – Failure is defined as any Departure of system Behavior in execution from user needs – Failure intensity is the number of Failures per unit time  Choose a common Measure for all failure intensities, either Failures per some natural unit or Failures per hour
  7. 7.  Set the total system Failure Intensity Objective (FIO) for each associated System – using Field data like Customer Satisfaction surveys related to measured failure intensity, – an analysis of competing products balancing among major quality characteristics users need.  Finding a developed software failure intensity objective for any software you develop plus choosing among software reliability strategies to meet the developed software
  8. 8. 4.Prepare for Test  Specify the new Test cases for new operations of base product and variation for current release based on operation profile  Prepares Test procedures to execute load tests 5.Execute Test  determine an allocated Test time among Feature test, Load test, and Regression test, invoke test and identity system failure along with when they occur
  9. 9. • Feature tests – Interactions and Effects of the field environment minimized • Load tests- execute Test cases simultaneously, with full interactions and all the effects of the Field environment • Regression test-executes some or all feature tests and it is designed to reveal failures caused by faults introduced by program changes
  10. 10. 6.Guiding Test  Involves guiding the product’s system Test phase and Release  Failure data is interpreted differently for software we are developing and software we acquire. We attempt to remove the faults that are causing Failures  For developed software, we estimate the FI/FIO ratio from the times of failure events or the number of failures per time interval, using reliability estimation programs such as CASRE (Computer Aided Software Reliability estimation)
  11. 11. Thank You Dr. Himanshu Hora SRMS College of Engineering & Technology Bareilly (INDIA)