Abstract
The definition and construction of complex computer-based systems require not just software engineering knowledge, but also many other domain-specific techniques to ensure many system’s functional and non-functional properties. Hence, there is a trend to move away from programming languages to models on which one can reason: model-driven engineering. Yet, this remains a complex task: one need to master many techniques. In this paper, we claim that MDE is incomplete: it is “just” an implementation framework to support advanced model-based techniques, verification of systems non-functional properties, code generation, etc. There is a conceptual gap to fill to know “what” to do with models. We propose to switch from MDE to VDE: Verification-Driven Engineering, so that the user knows how to model a system to analyze it. We sum up existing techniques and their relevant application domains.
Chapter PDF
References
ISO/IEC 13568. Z formal specification notation — syntax, type system and semantics (2002)
SEI AADL. Osate: An extensible source aadl tool environment. Technical report, SEI (2004)
Abrial, J.-R.: The B book - Assigning Programs to meanings. Cambridge Univ. Press, Cambridge (1996)
Alur, R., Holzmann, G., Peled, D.: An analyser for mesage sequence charts. In: Margaria, T., Steffen, B. (eds.) TACAS 1996. LNCS, vol. 1055, pp. 35–48. Springer, Heidelberg (1996)
Atelier, B.: Atelier B, the industrial tool to efficiently deploy the B Method (2008), http://www.atelierb.eu/index_en.html
Behm, P., Benoit, P., Faivre, A., Meynadier, J.M.: Météor: A successful application of b in a large project. In: Wing, J.M., Woodcock, J.C.P., Davies, J. (eds.) FM 1999. LNCS, vol. 1708, pp. 369–387. Springer, Heidelberg (1999)
Bernardi, S., Donatelli, S., Merseguer, J.: From UML sequence diagrams and statecharts to analysable petrinet models. In: Workshop on Software and Performance, pp. 35–45 (2002)
Berthomieu, B., Vernadat, F.: The TINA home page (2008), http://www.laas.fr/tina/
Billington, J., Díaz, M., Rozenberg, G. (eds.): Application of Petri Nets to Communication Networks, Advances in Petri Nets. LNCS, vol. 1605. Springer, Heidelberg (1999)
Burch, J.R., Clarke, E.M., McMillan, K.L.: Symbolic model checking: 1020 states and beyond. Information and Computation (Special issue from LICS90) 98(2), 153–181 (1992)
Chandra, S., Godefroid, P., Palm, C.: Software model checking in practice: an industrial case study. In: Proceedings of the 22nd International Conference on Software Engineering (ICSE 2002), pp. 431–441 (May 2002)
Chiola, G., Dutheillet, C., Franceschinis, G., Haddad, S.: On well-formed coloured nets and their symbolic reachability graph. In: Jensen, K., Rozenberg, G. (eds.) Procedings of the 11th International Conference on Application and Theory of Petri Nets (ICATPN 1990). Reprinted in High-Level Petri Nets, Theory and Application. Springer, Heidelberg (1991)
Chiola, G., Dutheillet, C., Franceschinis, G., Haddad, S.: A symbolic reachability graph for coloured Petri nets. Theoretical Computer Science 176(1–2), 39–65 (1997)
Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (2000)
Clarke, E., Wing, J.: Tools and partial analysis. ACM Comput. Surv. 28(4es), 116 (1996)
CoQ Project at INRIA. The Coq proof assistant, http://coq.inria.fr/coq-eng.html
Couvreur, J.-M., Encrenaz, E., Paviot-Adet, E., Poitrenaud, D., Wacrenier, P.-A.: Data decision diagrams for Petri net analysis. In: Esparza, J., Lakos, C.A. (eds.) ICATPN 2002. LNCS, vol. 2360, pp. 101–120. Springer, Heidelberg (2002)
Couvreur, J.-M., Thierry-Mieg, Y.: Hierarchical Decision Diagrams to Exploit Model Structure. In: Wang, F. (ed.) FORTE 2005. LNCS, vol. 3731, pp. 443–457. Springer, Heidelberg (2005)
CPN group, Univ. Aarhus. cpntools - Computer Tool for Coloured Petri Nets (2008), http://wiki.daimi.au.dk/cpntools
CS dept. Univ. Hambourg. Renew (2006), http://www.renew.de
CTR team. Modeling and Analysis Suite for Real-Time Applications, http://mast.unican.es/
Daws, C., Olivero, A., Tripakis, S., Yovine, S.: The tool Kronos (2002), http://www-verimag.imag.fr/TEMPORISE/kronos/
Ducass, M., Roz, L.: Proof obligations of the b formal method: Local proofs ensure global consistency. In: Bossi, A. (ed.) LOPSTR 1999. LNCS, vol. 1817, pp. 10–29. Springer, Heidelberg (2000)
Duret-Lutz, A., Poitrenaud, D.: SPOT, Spot Produces Our Traces, http://spot.lip6.fr/wiki/
Eiffel software. EiffelStudio - A Complete Integrated Development Environment (2008), http://www.eiffel.com
Esterel-technologies. SCADE Suite (2008), http://www.esterel-technologies.com/
Evangelista, S., Kaiser, C., Pajault, C., Pradat-Peyre, J.-F., Rousseau, P.: Dynamic tasks verification with quasar. In: Vardanega, T., Wellings, A.J. (eds.) Ada-Europe 2005. LNCS, vol. 3555, pp. 91–104. Springer, Heidelberg (2005)
Gilliers, F., Kordon, F., Velu, J.-P.: Generation of distributed programs in their target execution environment. In: Proceedings of the 15th International Workshop on Rapid System Prototyping, Geneva, Switzerland, pp. 127–134. IEEE Computer Society, Los Alamitos (2004)
Gogen, J., Luqi.: Formal methods: Promises and problems. IEEE Software 14(1), 75–85 (1997)
GreatSPN group. GreatSPN home page, http://www.di.unito.it/~greatspn
Holzmann, G.: Logic Verification of ANSI-C Code with SPIN. In: Havelund, K., Penix, J., Visser, W. (eds.) SPIN 2000. LNCS, vol. 1885, pp. 131–147. Springer, Heidelberg (2000)
Holzmann, G.: On-the-fly, LTL Model Checking with SPIN (2007), http://spinroot.com/spin
Holzmann, G., Joshi, R.: Model-driven software verification. In: Graf, S., Mounier, L. (eds.) SPIN 2004. LNCS, vol. 2989, pp. 76–91. Springer, Heidelberg (2004)
Holzmann, G., Smith, M.: An Automated Verification Method for Distributed Systems Software Based on Model Extraction. IEEE Trans. Software Eng. 28(4), 364–377 (2002)
Hugues, J., Pautet, L., Zalila, B., Dissaux, P., Perrotin, M.: Using AADL to build critical real-time systems: Experiments in the IST-ASSERT project. In: 4th European Congress ERTS, Toulouse, Paris (January 2008)
Hugues, J., Zalila, B., Pautet, L., Kordon, F.: From the Prototype to the Final Embedded System Using the Ocarina AADL Tool Suite. ACM Transactions in Embedded Computing Systems (TECS) (October 2008)
Kavimandan, A., Narayanan, A., Gokhale, A.S., Karsai, G.: Evaluating the Correctness and Effectiveness of a Middleware QoS Configuration Process in Distributed Real-Time and Embedded Systems. In: 11th International Symposium on Object-oriented Real-time distributed Computing (ISORC 2008), pp. 100–107. IEEE Computer Society, Los Alamitos (2008)
Kordon, F.: Design methodologies for embedded systems: Where is the super-glue? In: 11th International Symposium on Object-oriented Real-time distributed Computing (ISORC 2008), Orlando, USA (page to be published, May 2008)
Kordon, F., Luqi.: An Introduction to Rapid System Prototyping. IEEE Transactions on Software Engineering 70(3), 817–821 (2002)
Kordon, F., Petrucci, L.: Toward Formal-Methods Oecumenism? IEEE Distributed Systems Online 7(7) (July 2006)
Labri. FAST - Fast Acceleration of Symbolic Transition systems (2006), http://www.lsv.ens-cachan.fr/fast
LIP6/MoVe. The CPN-AMI home page, http://www.lip6.fr/cpn-ami/
Liu, C.L., Layland, J.W.: Scheduling algorithms for multi-programming in hard-real-time environment. Journal of the ACM (January 1973)
Spivey, M.: The fuzz type-checker for Z, http://spivey.oriel.ox.ac.uk/mike/fuzz/
Madhusudan, P. (ed.): Proceedings of the 9th International Workshop on Verification of Infinite-State Systems (INFINITY 2007), Lisboa, Portugal, September 2007. Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers, Amsterdam (2007)
Mathwork. Simulink - Simulation and Model-Based Design (2008), http://www.mathworks.com/products/simulink/
McMillan, K.L.: The SMV System, http://www.cs.cmu.edu/~modelcheck/smv.html
Meisels, I., Saaltink, M.: The z/eves reference manual (for version 1.5)
OMG. A UML profile for MARTE, Beta 1. Technical Report ptc/07-08-04, OMG (2007)
OPERA Group, Univ. Cambridge. QPME Homepage (2007), http://www.dvs.tu-darmstadt.de/staff/skounev/QPME/
Praxis Hight Integrity Systems. SPARKAda (2008), http://www.praxis-his.com/sparkada/
PRISM Team. PRISM - Probabilistic Symbolic Model Checker (2008), http://www.prismmodelchecker.org/
SAE. Architecture Analysis & Design Language (AS5506). SAE (September 2004), http://www.sae.org
Schmidt, D.: Guest editor’s introduction: Model-driven engineering. IEEE Computer 39(2), 25–31 (2006)
Selic, B.: The pragmatics of model-driven development. IEEE Software 20(5), 19–25 (2003)
Singhoff, F.: The Cheddar project: a free real time scheduling analyzer (2007), http://beru.univ-brest.fr/~singhoff/cheddar/
SRI/CSL. PVS Specification and Verification System (2008), http://pvs.csl.sri.com/index.shtml
Telelogic. Rhapsody (2008), http://www.telelogic.com/products/rhapsody/
Upenn, Dept of Computer Science. CHARON, http://rtg.cis.upenn.edu/mobies/charon/
UPPAAL Group. UPPAAL, http://www.uppaal.com/
VASY Project - INRIA. Construction and Analysis of Distributed Processes (2005), http://www.inrialpes.fr/vasy/cadp.html
VASY Project - INRIA. TRAIAN: A Compiler for E-LOTOS/LOTOS NT Specifications (2008), http://www.inrialpes.fr/vasy/pub/traian
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 IFIP International Federation for Information Processing
About this paper
Cite this paper
Kordon, F., Hugues, J., Renault, X. (2008). From Model Driven Engineering to Verification Driven Engineering. In: Brinkschulte, U., Givargis, T., Russo, S. (eds) Software Technologies for Embedded and Ubiquitous Systems. SEUS 2008. Lecture Notes in Computer Science, vol 5287. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87785-1_34
Download citation
DOI: https://doi.org/10.1007/978-3-540-87785-1_34
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-87784-4
Online ISBN: 978-3-540-87785-1
eBook Packages: Computer ScienceComputer Science (R0)