ebook img

System Software Reliability PDF

442 Pages·2006·2.87 MB·english
by  Pham H.
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview System Software Reliability

Springer Series in Reliability Engineering SeriesEditor ProfessorHoangPham DepartmentofIndustrialEngineering Rutgers TheStateUniversityofNewJersey 96FrelinghuysenRoad Piscataway,NJ08854-8018 USA Othertitlesinthisseries TheUniversalGeneratingFunctioninReliabilityAnalysisandOptimization GregoryLevitin WarrantyManagementandProductManufacture D.N.PMurthyandWallaceR.Blischke MaintenanceTheoryofReliability ToshioNakagawa ReliabilityandOptimalMaintenance HongzhouWangandHoangPham Hoang Pham System Software Reliability With63Figures 123 HoangPham,PhD DepartmentofIndustrialEngineering Rutgers,TheStateUniversityofNewJersey 96FreylinghuysenRoad Piscataway,NewJersey08854-8018 USA BritishLibraryCataloguinginPublicationData Pham,Hoang Systemsoftwarereliability.-(Springerseriesin reliabilityengineering) 1.Systemssoftware2.Computersoftware-Reliability I.Title 005.4’3 ISBN-10:1852339500 LibraryofCongressControlNumber:2006924634 SpringerSeriesinReliabilityEngineeringseriesISSN1614-7839 ISBN-10: 1-85233-950-0 e-ISBN 1-84628-295-0 Printedonacid-freepaper ISBN-13: 978-1-85233-950-0 ©Springer-VerlagLondonLimited2006 Apartfromanyfairdealingforthepurposesofresearchorprivatestudy,orcriticismorreview,as permittedundertheCopyright,DesignsandPatentsAct1988,thispublicationmayonlybereproduced, stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers,orinthecaseofreprographicreproductioninaccordancewiththetermsoflicencesissued bytheCopyrightLicensingAgency.Enquiriesconcerningreproductionoutsidethosetermsshouldbe senttothepublishers. Theuseofregisterednames,trademarks,etc.inthispublicationdoesnotimply,evenintheabsenceof aspecificstatement,thatsuchnamesareexemptfromtherelevantlawsandregulationsandtherefore freeforgeneraluse. Thepublishermakesnorepresentation,expressorimplied,withregardtotheaccuracyoftheinfor- mationcontainedinthisbookandcannotacceptanylegalresponsibilityorliabilityforanyerrorsor omissionsthatmaybemade. 9 8 7 6 5 4 3 2 1 SpringerScience+BusinessMedia springer.com To my parents Phong Pham and Tam Huynh, for many reasons. Preface In today’s technological world nearly everyone depends upon the continued func- tioning of a wide array of complex machinery and equipment for our everyday safety, security, mobility and economic welfare. We expect our electric appliances, hospital monitoring control, next-generation aircraft, data exchange systems, and aerospace applications to function wherever and whenever we need them. When they fail, the results can be catastrophic. As our society grows in complexity, so do the critical challenges in the area of system and software reliability engineering. In general, system software reliability is the probability that the system will not fail for a specified period of time under specified conditions. The greatest problem facing the industry today is how to assess quantitatively system reliability characteristics. The author published the book Software Reliability in 2000. Due to the critical challenges and complexity of modern embedded-software systems developed over the last five years, there has arisen an ever increasing attention of both public and professional communities to look for products with high reliability at reasonable costs. At the same time, the techniques, tools and models available in the last five years to system designers, engineers, and practitioners have continued to be deve- loped by scientists and researchers at the same rate. This book aims to present the state-of-the-art of system software reliability in theory and practice and recent research on this subject over the last five years. It is a textbook based mainly on the author’s recent research and publications as well as experience of 20 years in this field. The topics covered are organized as follows. Chapter 1 gives a brief introduction to system software reliability and basic terminologies used throughout the book. This chapter also identifies the literature available in the area of software reliability engineering. Chapter 2 discusses the concepts of system reliability engineering, systemability, various reliability aspects of systems with multiple failure modes, and the stochastic processes including the Markov process, renewal process, quasi-renewal process, and nonhomogeneous Poisson process. Chapter 3 describes the theory of estimation, common estimation techniques and confidence interval estimates. Chapter 4 presents the basic concepts of soft- ware engineering assessment including software lifecycle, software development viii Preface process and its applications, software testing concepts, and data analysis. Chapter 5 discusses various groups of traditional software reliability models and methods for evaluating software reliability and other performance measures, such as soft- ware complexity and the number of remaining errors. Chapter 6 comprehensively covers software reliability models for the failure phenomenon based on the nonhomogeneous Poisson process (NHPP). The genera- lized NHPP model, model selection and the software mean time between failures are also discussed. Chapter 7 discusses various software reliability models addres- sing testing coverage and fault removal. Chapter 8 describes some recent studies on environmental factors and the im- pact of these factors on software reliability assessment. Several software reliability models that incorporate environmental factors are also discussed. Chapter 9 dis- cusses calibrating software reliability modelling research on how to quantify the mismatch between the system test environment and the field environment. Chapter 10 discusses some software cost models based on the NHPP addres- sing warranty issues and risk costs due to software failures. This chapter also dis- cusses a generalized gain model under random field environments. Various opti- mal release policies of the software systems, that is when to conclude testing and release the software, are also presented. Chapter 11 is devoted to the basic concepts of fault-tolerant software system modeling and other advanced techniques including self-checking schemes. The reliability analysis of fault-tolerant software schemes such as recover block, N-version programming, and hybrid fault-tolerant systems are presented. This chapter also discusses a triple-version programming reliability model with com- mon failures. A brief mathematical reliability analysis of complex systems consi- dering hardware and software interaction failures is also discussed. A list of references for further reading and problems are included at the end of each chapter. Solutions to selected problems are provided towards the end of the book. Appendix 1 contains various distribution tables. Appendix 2 contains some useful Laplace transform functions. Appendix 3 provides a survey form which software engineers may adopt in order to obtain a better understanding of the soft- ware development activities and priorities. The text is suitable for a one-semester graduate course on software reliability in Industrial Engineering, Systems Engineering, Operations Research, Computer Science and Engineering, Mathematics, Statistics, and Business Management. The book will also be a valuable reference tool for practitioners and managers in relia- bility engineering, software engineering, statistics, safety engineering, and for researchers in the field. It is also intended that the individual, after having utilized this book, will be thoroughly prepared to pursue advanced studies in software reliability engineering and research in this field. I have used the first seven chapters as supplementary reading for a three-day industrial seminar on system software reliability and, in addition, have included the material from Chapter 8 through 10 for a five-day seminar. These short sessi- ons, three-day and five-day, serve as both an introduction and an account of ad- vances in software reliability discipline, and can be easily tailored by the instruc- tors to be specific for an industry or organization. Similarly, one can use the first Preface ix three chapters, together with Chapter 6 and Chapter 11, for a two-day seminar on system reliability engineering. I am grateful to the students of the Department of Industrial and Systems En- gineering at Rutgers University who have used preliminary versions of this book during the past two years and have provided numerous comments and suggestions. Thanks also go to many colleagues from universities and industry for their useful suggestions. Anthony Doyle, Senior Editor, and Kate Brown at Springer-Verlag deserve significant praise for their patience and understanding when deadlines were missed and for their assistance in finalizing the camera-ready version. Finally and most importantly, I want to thank my other-half, Michelle, and my sons, Hoang Jr. and David, for their love, patience, understanding, and support. It is to them that this book is dedicated. Hoang Pham Rutgers University, New Jersey, USA December 2005 Contents 1 Introduction......................................................................................................1 1.1 The Need for System Software Reliability................................................1 1.2 Software-related Problems........................................................................3 1.3 Software Reliability Engineering..............................................................5 1.4 Future Problems in the Twenty-first Century............................................5 1.5 Further Reading.........................................................................................6 1.6 Problems....................................................................................................7 2 System Reliability Concepts.............................................................................9 2.1 Reliability Measures................................................................................10 2.2 Common Distribution Functions.............................................................16 2.3 A Generalized Systemability Function....................................................32 2.3.1 Systemability Definition...............................................................33 2.3.2 Systemability Calculations...........................................................33 2.4 System Reliability with Multiple Failure Modes.....................................41 2.4.1 Reliability Calculations .................................................................42 2.4.2 An Application of Systems with Multiple Failure Modes..............48 2.5 Markov Processes....................................................................................50 2.6 Counting Processes .................................................................................62 2.6.1 Poisson Processes...........................................................................63 2.6.2 Renewal Processes..........................................................................64 2.6.3 Quasi-renewal Processes................................................................66 2.6.4 Non-homogeneous Poisson Processes............................................69 2.7 Further Reading.......................................................................................71 2.8 Problems..................................................................................................71 3 Theory of Estimation......................................................................................77 3.1 Point Estimation......................................................................................77 3.2 Maximum Likelihood Estimation Method..............................................79 3.3 Maximum Likelihood Estimation with Censored Data...........................86 3.3.1 Parameter Estimate with Multiple-censored Data..........................86 xii Contents 3.3.2 Confidence Intervals of Estimates..................................................88 3.3.3 Applications....................................................................................89 3.4 Statistical Change-point Estimation Methods..........................................91 3.4.1 Application: A Software Model with a Change Point....................95 3.5 Goodness of Fit Techniques....................................................................96 3.5.1 Chi-squared Test.............................................................................96 3.5.2 Kolmogorov-Smirnov d Test..........................................................98 3.6 Least Squared Estimation........................................................................98 3.7 Interval Estimation................................................................................100 3.7.1 Confidence Intervals for the Normal Parameters..........................100 3.7.2 Confidence Intervals for the Exponential Parameters...................102 3.7.3 Confidence Intervals for the Binomial Parameters.......................104 3.7.4 Confidence Intervals for the Poisson Parameters.........................106 3.8 Non-parametric Tolerance Limits..........................................................106 3.9 Sequential Sampling..............................................................................107 3.10 Bayesian Methods..................................................................................113 3.11 Further Reading.....................................................................................118 3.12 Problems................................................................................................119 4 Software Development Lifecycle and Data Analysis................................ 121 4.1 Introduction...........................................................................................121 4.2 Software vs Hardware Reliability..........................................................122 4.3 Software Reliability and Testing Concepts............................................124 4.4 Software Lifecycle ................................................................................127 4.5 Software Development Process and its Applications............................132 4.5.1 Analytic Hierarchy Process..........................................................133 4.5.2 Evaluation of Software Development Process..............................133 4.6 Software Verification and Validation....................................................134 4.7 Data Analysis.........................................................................................135 4.8 Failure Data Sets....................................................................................136 4.9 Further Reading.....................................................................................150 4.10 Problems................................................................................................150 5 Software Reliability Modeling.....................................................................153 5.1 Introduction...........................................................................................153 5.2 Halstead’s Software Metric...................................................................154 5.3 McCabe’s Cyclomatic Complexity Metric............................................157 5.4 Error Seeding Models............................................................................159 5.5 Failure Rate Models...............................................................................164 5.6 Curve Fitting Models.............................................................................169 5.7 Reliability Growth Models....................................................................171 5.8 Markov Structure Models......................................................................172 5.9 Time Series Models...............................................................................174 5.10 Non-homogeneous Poisson Process Models.........................................175 5.11 Further Reading.....................................................................................176 5.12 Problems................................................................................................176

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.