Abstract
As we are moving from a traditional software development process to a new development paradigm where the process it largely driven by tools and automation, new challenges for verification and validation (V&V) emerge. Productivity improvements will in this new paradigm be achieved through reduced emphasis on testing of implementations, increased reliance on automated analysis tools applied in the specification domain, verifiability correct generation of source-code, and verifiably correct compilation. The V&V effort will now be largely focused on assuring that the formal specifications are correct and that the tools are trustworthy so we can rely on the results of the analysis and code generation without extensive additional testing of the resulting implementation. Most effort has traditionally been devoted to the verification problem. In this position paper we point out the importance of validation and argue that if we fail to adequately address the validation problem problem the impact of verifying code generation and compilation will be limited.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Archer, M., Heitmeyer, C., Sims, S.: TAME: A PVS interface to simplify proofs for automata models. In: User Interfaces for Theorem Provers (1998)
Bensalem, S., Caspi, P., Parent-Vigouroux, C., Dumas, C.: A methodology for proving control systems with Lustre and PVS. In: Proceedings of the Seventh Working Conference on Dependable Computing for Critical Applications (DCCA 7), San Jose CA, January 1999, pp. 89–107. IEEE Computer Society Press, Los Alamitos (1999)
Valdis, B.L., Yehudai, A.: Using transformations in specification-based prototyping. IEEE Transactions on Software Engineering 19(5), 436–452 (1993)
Blackburn, M.R., Busser, R.D., Fontaine, J.S.: Automatic generation of test vectors for SCR-style specifications. In: Proceedings of the 12th Annual Conference on Computer Assurance, COMPASS 1997 (June 1997)
Boehm, B.: Software Engineering Economics. Prentice-Hall, Englewood Cliffs (1981)
Brooks, F.: No silver bullet: Essence and accidents of software engineering. IEEE Computer, 10–19 (April 1997)
Butler, R., Miller, S., Potts, J., Carreno, V.: A formal methods approach to the analysis of mode confusion. In: 17st Digital Avionics Systems Conference (DASC 1998), Belllevue, WA, pp. C41/1 – C41/8 (October 1998)
Callahan, J., Schneider, F., Easterbrook, S.: Specification-based testing using model checking. In: Proceedings of the SPIN Workshop (August 1996)
Chan, W., Anderson, R.J., Beame, P., Burns, S., Modugno, F., Notkin, D., Reese, J.D.: Model checking large software specifications. IEEE Transactions on Software Engineering 24(7), 498–520 (1998)
Choi, Y., Heimdahl, M.: Model checking RSML− e requirements. In: Proceedings of the 7th IEEE/IEICE International Symposium on High Assurance Systems Engineering, Tokyo, Japan, October 2002, pp. 109–118 (2002)
Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)
Davis, A.: Software Requirements: Object, Function, and States. Prentice-Hall, Englewood Cliffs (1993)
Engels, A., Feijs, L.M.G., Mauw, S.: Test generation for intelligent networks using model checking. In: Brinksma, E. (ed.) TACAS 1997. LNCS, vol. 1217, pp. 384–398. Springer, Heidelberg (1997)
Gargantini, A., Heitmeyer, C.: Using model checking to generate tests from requirements specifications. Software Engineering Notes 24(6), 146–162 (1999)
Grumberg, O., Long, D.E.: Model checking and modular verification. ACM Transactions on Programming Languages and Systems 16(3), 843–871 (1994)
Harel, D., Lachover, H., Naamad, A., Pnueli, A., Politi, M., Sherman, R., Shtull-Trauring, A., Trakhtenbrot, M.: Statemate: A working environment for the development of complex reactive systems. IEEE Transactions on Software Engineering 16(4), 403–414 (1990)
Heimdahl, M.P.E., Leveson, N.G.: Completeness and consistency in hierarchical state-base requirements. IEEE Transactions on Software Engineering 22(6), 363–377 (1996)
Heitmeyer, C., Bull, A., Gasarch, C., Labaw, B.: SCR*: A toolset for specifying and analyzing requirements. In: Haveraaen, M., Dahl, O.-J., Owe, O. (eds.) Abstract Data Types 1995 and COMPASS 1995. LNCS, vol. 1130, Springer, Heidelberg (1996)
Heitmeyer, C.L., Jeffords, R.D., Labaw, B.G.: Automated consistency checking of requirements specifications. ACM Transactions on Software Engineering and Methodology 5(3), 231–261 (1996)
Heitmeyer, C., Kirby Jr., J., Labaw, B., Archer, M., Bharadwaj, R.: Using abstraction and model checking to detect safety violations in requirements specifications. IEEE Transactions on Software Engineering 24(11), 927–948 (1998)
Jasper, R., Brennan, M., Williamson, K., Currier, B., Zimmerman, D.: Test data generation and feasible path analysis. In: Proc. of Int’l Symp. on Software Testing and Analysis, August 1994, pp. 95–107 (1994)
Joshi, A., Miller, S.P., Heimdahl, M.P.E.: Mode confusion analysis of a flight guidance system using formal methods. In: 22nd Digital Avionics Systems Conference (DASC 2003), pp. 2.D.1–1 – 2.D.1–11(October 2003)
Lee, E.A.: Overview of the ptolemy project. Technical Report Technical Memorandum UCB/ERL M03/25, University of California, Berkeley, CA, 94720, USA (July 2003)
Leveson, N.: Safeware: System Safety and Computer. Addison-Wesley, Reading (1995)
Leveson, N.G., Heimdahl, M.P.E., Reese, J.D.: Designing Specification Languages for Process Control Systems: Lessons Learned and Steps to the Future. In: Nierstrasz, O., Lemoine, M. (eds.) ESEC 1999 and ESEC-FSE 1999. LNCS, vol. 1687, pp. 127–145. Springer, Heidelberg (1999)
Lutz, R.: An overview of REFINE 2.0. In: Proceedings of the First ACM SIGSOFT Symposium on the Foundations of Software Engineering (1993)
Miller, S., Tribble, A., Carlson, T., Danielson, E.: Flight guidance system requirements specification. Technical Report CR-, -212426, NASA Langley Research Center (June 2003), http://techreports.larc.nasa.gov/ltrs/refer/2003/cr/NASA-2003-cr212426.refer
Offutt, A.J., Xiong, Y., Liu, S.: Criteria for generating specification-based tests. In: Proceedings of the Fifth IEEE International Conference on Engineering of Complex Computer Systems (ICECCS 1999) (October 1999)
Ramamoorthy, C., Prakesh, A., Tsai, W., Usuda, Y.: Software engineering: Problems and perspectives. IEEE Computer, 191–209 (October 1984)
Rayadurgam, S., Heimdahl, M.P.E.: Coverage based test-case generation using model checkers. In: Proceedings of the 8th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems (ECBS 2001), April 2001, IEEE Computer Society, Los Alamitos (2001)
RTCA. Software Consideration. In: Airborne Systems and Equipment Certification. RTCA (1992)
Thompson, J.M., Heimdahl, M.P.E., Miller, S.P.: Specification based prototyping for embedded systems. In: Nierstrasz, O., Lemoine, M. (eds.) ESEC 1999 and ESEC-FSE 1999. LNCS, vol. 1687, pp. 163–179. Springer, Heidelberg (1999)
Tribble, A., Miller, S.: Safety analysis of a flight guidance system. In: 21st Digital Avionics Systems Conference (DASC 2002), Irvine, CA, October 2002, vol. 2, pp. 13C1–1 – 13C1–10 (2002)
van Schouwen, A.: The A-7 requirements model: Re-examination for real-time systems and an application to monitoring systems. Technical Report 90-276, Queens University, Hamilton, Ontario (1990)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Heimdahl, M.P.E. (2008). A Case for Specification Validation. In: Meyer, B., Woodcock, J. (eds) Verified Software: Theories, Tools, Experiments. VSTTE 2005. Lecture Notes in Computer Science, vol 4171. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69149-5_42
Download citation
DOI: https://doi.org/10.1007/978-3-540-69149-5_42
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69147-1
Online ISBN: 978-3-540-69149-5
eBook Packages: Computer ScienceComputer Science (R0)