ABSTRACT
Modeling and analysis is indispensable in engineering. To be safe and effective, a modeling method requires a language with a validated semantics; feature-rich, easy-to-use, dependable tools; and low engineering costs. Today we lack adequate means to develop such methods. We present a partial solution combining two techniques: formal methods for language design, and package-oriented programming for function and usability at low cost. We have evaluated the approach in an end-to-end experiment. We deployed an existing reliability method to NASA in a package-oriented tool and surveyed engineers to assess its usability. We formally specified, improved, and validated the language. To assess cost, we built a package-based tool for the new language. Our data show that the approach can enable costeffective deployment of sound methods by effective tools.
References
- Gregory D. Abowd, Robert Allen, and David Garlan. Formalizing style to understand descriptions of software architecture. ACM Transactions on Software Engineering and Methodology, 4(4):319--64, October 1995.]] Google Scholar
Digital Library
- Robert Allen and David Garlan. A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology, 6(3):213--49, July 1997.]] Google Scholar
Digital Library
- Suprasad Amari, Joanne Bechta Dugan, and Ravindra Misra. A separable method for incorporating imperfect coverage into combinatorial models. IEEE Transactions on Reliability, 48(3):267--74, September 1999.]]Google Scholar
Cross Ref
- Anju Anand and Arun K. Somani. Hierarchical analysis of fault trees with dependencies, using decomposition. In Proceedings of the Annual Reliability and Maintainability Symposium, pages 64--70, Anaheim, CA, 19--22 January 1998.]]Google Scholar
Cross Ref
- Mark A. Boyd. Dynamic Fault Tree Models: Techniques for Analysis of Advanced Fault Tolerant Computer Systems. PhD thesis, Duke University, Department of Computer Science, April 1991.]] Google Scholar
Digital Library
- David Coppit. Engineering Modeling and Analysis: Sound Methods and Effective Tools. PhD thesis, The University of Virginia, Charlottesville, Virginia, January 2003.]] Google Scholar
Digital Library
- David Coppit and Kevin J. Sullivan. Galileo: A tool built from mass-market applications. In Proceedings of the 22nd International Conference on Software Engineering, pages 750--3, Limerick, Ireland, 4--11 June 2000. IEEE.]] Google Scholar
Digital Library
- David Coppit and Kevin J. Sullivan. Multiple mass-market applications as components. In Proceedings of the 22nd International Conference on Software Engineering, pages 273--82, Limerick, Ireland, 4--11 June 2000. IEEE.]] Google Scholar
Digital Library
- David Coppit, Kevin J. Sullivan, and Joanne Bechta Dugan. Formal semantics of models for computational engineering: A case study on dynamic fault trees. In Proceedings of the International Symposium on Software Reliability Engineering, pages 270--282, San Jose, California, 8--11 October 2000. IEEE.]] Google Scholar
Digital Library
- Don A. Dillman. Mail and Internet Surveys: The Tailored Design Method. John Wiley & Sons, 2nd edition, 1999.]]Google Scholar
- Joanne Bechta Dugan, Salvatore Bavuso, and Mark Boyd. Dynamic fault-tree models for fault-tolerant computer systems. IEEE Transactions on Reliability, 41(3):363--77, September 1992.]]Google Scholar
Cross Ref
- Joanne Bechta Dugan, Kevin J. Sullivan, and David Coppit. Developing a low-cost, high-quality software tool for dynamic fault tree analysis. Transactions on Reliability, 49(1):49--59, March 2000.]]Google Scholar
Cross Ref
- Joanne Bechta Dugan, Kishor S. Trivedi, Mark K. Smotherman, and Robert M. Geist. The hybrid automated reliability predictor. Journal of Guidance, Control, and Dynamics, 9(3):319--31, June 1986.]]Google Scholar
- Joanne Bechta Dugan, Bharath Venkataraman, and Rohit Gulati. DIFTree: A software package for the analysis of dynamic fault tree models. In Proceedings of the Annual Reliability and Maintainability Symposium, pages 64--70, Philadelphia, PA, 13--16 January 1997.]]Google Scholar
Cross Ref
- Les Hatton and Andy Roberts. How accurate is scientific software? IEEE Transactions on Software Engineering, 2(10):785--797, 1994.]] Google Scholar
Digital Library
- Honeywell. DOME users' guide. URL: http://www.htc.honeywell.com/dome/support.htm.]]Google Scholar
- Michael Jackson. Problems, methods and specialisation. Software Engineering Journal, 9(6):249--55, November 1994.]] Google Scholar
Digital Library
- Xiaoping Jia. ZTC: A type checker for Z. Notation user's guide. URL: http://se.cs.depaul.edu/fm/ztc.html.]]Google Scholar
- J. C. Knight. Safety critical systems: Challenges and directions. In Proceedings of the 24th International Conference on Software Engineering, pages 547--9, Orlando, Florida, 19--25 May 2002. IEEE.]] Google Scholar
Digital Library
- J. C. Knight, Colleen L. DeJong, Matthew S. Gibble, and Luís G. Nakano. Why are formal methods not used more widely? Fourth NASA Formal Methods Workshop, Hampton, Virginia, September 1997.]]Google Scholar
- Akos Ledeczi, Miklos Maroti, Arpad Bakay, Gabor Karsai, Jason Garrett, Charles Thomason, Greg Nordstrom, Jonathan Sprinkle, and Peter Volgyesi. The generic modeling environment. In Workshop on Intelligent Signal Processing, Budapest, Hungary, 17 May 2001.]]Google Scholar
- MetaCase Consulting. Domain-specific modeling: 10 times faster than UML. URL: http://www.metacase.com/papers/index.html.]]Google Scholar
- Office of Nuclear Reactor Regulation. Requirements in 10 CFR part 21 for reporting and evaluating software errors. Technical Report NRC Information Notice 96--29, United States Nuclear Regulatory Commission, 20 May 1996.]]Google Scholar
- Mark Saaltink. The Z/EVES system. In ZUM '97." Z Formal Specification Notation. 11th International Conference of Z Users. Proceedings, pages 72--85, Berlin, Germany, 3--4 April 1997. Springer-Verlag.]] Google Scholar
Digital Library
- Mary Shaw. Prospects for an engineering discipline of software. IEEE Software, 7(6):15--24, November 1990.]] Google Scholar
Digital Library
- J. M. Spivey. The fuzz manual. URL: http://spivey.ofiel.ox.ac.uk/~mike/fuzz/]]Google Scholar
- J. M. Spivey. The Z Notation: A Reference Manual. Prentice Hall International Series in Computer Science, 2nd edition, 1992.]] Google Scholar
Digital Library
- Giancarlo Succi, Witold Pedrcyz, Eric Liu, and Jason Yip. Package-oriented software engineenng: a generic architecture. IT Professional, 3(2):29--36, March-April 2001.]] Google Scholar
Digital Library
- Kevin J. Sullivan, Joanne Bechta Dugan, and David Coppit. The Galileo fault tree analysis tool. In Proceedings of the 29th Annual International Symposium on Fault-Tolerant Computing, pages 232--5, Madison, Wisconsin, 15--18 June 1999. IEEE.]] Google Scholar
Digital Library
- K. J. Sullivan and J.C. Knight, "Experience Assessing an Architectural Approach to large-Scale, Systematic Reuse," Proceedings of the 18th International Conference on Software Engineering, Berlin, March 1996, pages 220--229.]] Google Scholar
Digital Library
- W. E. Veseley, F. F. Goldberg, N. H. Roberts, and D. F. Haasl. Fault Tree Handbook. U. S. Nuclear Regulatory Commission, NUREG-0492, Washington DC, 1981.]]Google Scholar
- H. A. Watson and Bell Telephone Laboratories. Launch control safety study. Technical report, Bell Telephone Laboratories, Murray Hill, NJ, 1961.]]Google Scholar
Index Terms
Sound methods and effective tools for engineering modeling and analysis





Comments