Title :
Producing more reliable software: mature software engineering process vs. state-of-the-art technology?
Author :
Widmaier, James C. ; Smidts, Carol ; Huang, Xin
Abstract :
A customer of high assurance software recently sponsored a software engineering experiment in which a real-time software system was developed concurrently by two popular software development methodologies. One company specialized in the state-of-the-practice waterfall method rated at a Capability Maturity Model Level 4. A second developer employed his mathematically based formal method with automatic code generation. As specified in separate contracts, C++ code plus development documentation and process and product metrics (errors) were to be delivered. Both companies were given identical functional specs and agreed to a generous and equal cost, schedule, and explicit functional reliability objectives. At conclusion of the experiment an independent third party determined through extensive statistical testing that neither methodology was able to meet the user´s reliability objectives within cost and schedule constraints. The metrics collected revealed the strengths and weaknesses of each methodology and why they were not able to reach customer reliability objectives. This paper explores the specification for the system under development, the two competing development processes, the products and metrics captured during development, the analysis tools and testing techniques by the third party, and the results of a reliability and process analysis
Keywords :
formal specification; program compilers; program testing; software metrics; software reliability; C++ code; analysis tools; automatic code generation; cost constraints; development documentation; high assurance software; mathematically based formal method; mature software engineering process; process analysis; process metrics; product metrics; real-time software system; reliable software production; schedule constraints; state-of-the-art technology; statistical testing; testing; waterfall method; Capability maturity model; Contracts; Cost function; Documentation; Programming; Real time systems; Software engineering; Software systems; Statistical analysis; System testing;
Conference_Titel :
Software Engineering, 2000. Proceedings of the 2000 International Conference on
Conference_Location :
Limerick
Print_ISBN :
1-58113-206-9
DOI :
10.1109/ICSE.2000.870400