Reliable software and communication: software quality, reliability, and safety

Examines the software development process and suggests opportunities for improving the process by using a combination of statistical and other process control techniques. Each phase of the software process affects the ultimate quality, reliability, and safety of the software. Control of the process, supported by appropriate tools to collect and analyze data, is essential to improvement of the software product. Since the ability to observe, control, and improve software depends on the ability to measure and analyze data drawn from the software process, data collection is central to the approach. Detailed data about each of the subprocesses are needed, along with tools to measure and analyze the data. Statistical process control techniques, besides improving system reliability, can produce a substantial economic gain in the software development process. The views are based upon experiences with large telecommunications systems.<<ETX>>

[1]  Watts S. Humphrey,et al.  Software process improvement at Hughes Aircraft , 1991, IEEE Software.

[2]  Watts S. Humphrey,et al.  Characterizing the software process: a maturity framework , 1988, IEEE Software.

[3]  Martin L. Shooman,et al.  Types, distribution, and test and correction times for programming errors , 1975 .

[4]  R. J. Rubey,et al.  Quantitative aspects of software validation , 1975 .

[5]  Anthony Hall,et al.  Seven myths of formal methods , 1990, IEEE Software.

[6]  Elaine J. Weyuker,et al.  Collecting and categorizing software error data in an industrial environment , 2018, J. Syst. Softw..

[7]  Nancy G. Leveson The challenge of building process-control software , 1990, IEEE Software.

[8]  Barry W. Boehm,et al.  Some experience with automated aids to the design of large-scale reliable software , 1975, IEEE Transactions on Software Engineering.

[9]  Siddhartha R. Dalal,et al.  Buying with Exact Confidence , 1992 .

[10]  Robert Brownlie,et al.  Robust testing of AT&T PMX/StarMAIL using OATS , 1992, AT&T Technical Journal.

[11]  C. Mallows,et al.  When Should One Stop Testing Software , 1988 .

[12]  William E. Howden,et al.  An evaluation of the effectiveness of symbolic testing , 1978, Softw. Pract. Exp..

[13]  Joseph Robert Horgan,et al.  Assessing testing tools in research and education , 1992, IEEE Software.

[14]  John D. Musa,et al.  Software reliability measurement , 1984, J. Syst. Softw..

[15]  Dewayne E. Perry,et al.  EMPIRICAL STUDY OF SOFTWARE INTERFACE FAULTS - AN UPDATE. , 1987 .

[16]  Amrit L. Goel,et al.  Software Reliability Models: Assumptions, Limitations, and Applicability , 1985, IEEE Transactions on Software Engineering.

[17]  A. Dniestrowski,et al.  Software engineering in avionics applications , 1978, ICSE '78.

[18]  Alan R. Feuer,et al.  Some Results from an Empirical Study of Computer Software , 1979, ICSE.

[19]  Barry Boehm,et al.  Some experience with automated aids to the design of large-scale reliable software , 1975 .

[20]  John D. Musa,et al.  Software reliability - measurement, prediction, application , 1987, McGraw-Hill series in software engineering and technology.

[21]  Siddhartha R. Dalal,et al.  Some Graphical Aids for Deciding When to Stop Testing Software , 1990, IEEE J. Sel. Areas Commun..

[22]  D. Potier,et al.  Experiments with computer software complexity and reliability , 1982, ICSE '82.

[23]  J. R. Horgan,et al.  A data flow coverage testing tool for C , 1992, [1992] Proceedings of the Second Symposium on Assessment of Quality Software Development Tools.

[24]  Albert Endres,et al.  An analysis of errors and their causes in system programs , 1975, IEEE Transactions on Software Engineering.

[25]  Edward B. Fowlkes,et al.  Risk analysis of the space shuttle: Pre-Challenger prediction of failure , 1989 .

[26]  Richard J. Lipton,et al.  Hints on Test Data Selection: Help for the Practicing Programmer , 1978, Computer.

[27]  K Okumoto,et al.  TIME-DEPENDENT ERROR-DETECTION RATE MODEL FOR SOFTWARE AND OTHER PERFORMANCE MEASURES , 1979 .

[28]  Pradip K. Srimani,et al.  Software Reliability Models: Developments, Evaluation and Applications , 1991 .

[29]  Amrit L. Goel,et al.  Time-Dependent Error-Detection Rate Model for Software Reliability and Other Performance Measures , 1979, IEEE Transactions on Reliability.

[30]  Roger W. Berger,et al.  Guide to Quality Control , 1982 .

[31]  Elaine J. Weyuker,et al.  Selecting Software Test Data Using Data Flow Information , 1985, IEEE Transactions on Software Engineering.

[32]  Harlan D. Mills,et al.  Engineering software under statistical quality control , 1990, IEEE Software.

[33]  L. Lauterbach,et al.  Experimental evaluation of six test techniques , 1989, Proceedings of the Fourth Annual Conference on Computer Assurance, 'Systems Integrity, Software Safety and Process Security.

[34]  Nancy G. Leveson,et al.  Software safety in embedded computer systems , 1991, CACM.

[35]  R. J. Rubey,et al.  Quantitative aspects of software validation , 1975, IEEE Transactions on Software Engineering.

[36]  Michael E. Fagan Advances in software inspections , 1986, IEEE Transactions on Software Engineering.

[37]  M. I. Bolsky,et al.  Types, Distribution, and Test and Correction Times for Programming Errors , 1975, IEEE Transactions on Reliability.

[38]  Sarah Brocklehurst,et al.  Recalibrating Software Reliability Models , 1990, IEEE Trans. Software Eng..

[39]  Nancy G. Leveson,et al.  An experimental evaluation of the assumption of independence in multiversion programming , 1986, IEEE Transactions on Software Engineering.

[40]  Nancy G. Leveson,et al.  Safety verification of Ada programs using software fault trees , 1991, IEEE Software.

[41]  Brian Marick,et al.  A survey of software fault surveys , 1990 .

[42]  Proceedings of the Fifth Annual Symposium on Logic in Computer Science (LICS '90), Philadelphia, Pennsylvania, USA, June 4-7, 1990 , 1990, LICS.

[43]  Nancy G Leveson,et al.  Software safety: why, what, and how , 1986, CSUR.

[44]  Edmund M. Clarke,et al.  Symbolic Model Checking: 10^20 States and Beyond , 1990, Inf. Comput..

[45]  Paul Piwowarski,et al.  Coverage measurement experience during function test , 1993, Proceedings of 1993 15th International Conference on Software Engineering.

[46]  Madhan Shridhar Phadke,et al.  Quality Engineering Using Robust Design , 1989 .

[47]  Pradip K. Srimani,et al.  Software reliability models : theoretical developments, evaluation, and applications , 1990 .