Abstract
Model-driven engineering (MDE) focuses on creating and exploiting (specific) domain models. It is common to use domain-specific languages (DSL) to describe the concrete elements of such models. MDE tools can easily build DSLs, although it is not clear how to capture dynamic semantics as well as formally verify properties. Formal methods are a well-known solution for providing correct software, but human-machine interaction is usually not addressed. Several industries, particularly the safety-critical industries, use mathematical representations to deal with their problem domains. Such DSLs are difficult to capture, using just MDE tools for instance, because they have specific semantics to provide the desired (core) expected behavior. Thus, we propose a rigorous methodology to create GUI (Graphical User Interface) based DSLs formal tools. We aim at providing a productive and trustworthy development methodology to safety critical industries.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Chalin, P., Kiniry, J.R., Leavens, G.T., Poll, E.: Beyond assertions: advanced specification and verification with JML and ESC/Java2. In: Boer, F.S., Bonsangue, M.M., Graf, S., Roever, W.-P. (eds.) Formal Methods for Components and Objects. Lecture Notes in Computer Science, vol. 4111, pp. 342–363. Springer, Heidelberg (2006). http://dx.doi.org/10.1007/11804192_16
Di Ruscio et al., D.: A practical experiment to give dynamic semantics to a DSL for telephony services development. Technical report, Laboratoire d’Informatique de Nantes-Atlantique (LINA) (2006).
Escher: Escher verification studio v5.0 (Academic license). http://www.eschertech.com. Accessed Oct 2012
Esterel Technologies: SCADE suite product. http://www.esterel-technologies.com/products/scade-suite/. Accessed Jan 2012
Eysholdt, M., Behrens, H.: Xtext: implement your language faster than the quick and dirty way. In: Proceedings of the ACM International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion, SPLASH ’10, pp. 307–309. ACM, New York, USA (2010)
Gargantini, A., Riccobene, E., Scandurra, P.: Integrating formal methods with model-driven engineering. In: Software Engineering Advances, 2009. ICSEA ’09. 4th International Conference on, pp. 86–92 (2009)
Gargantini, A., Riccobene, E., Scandurra, P.: A semantic framework for metamodel-based languages. Autom. Softw. Eng. 16(3–4), 415–454 (2009). http://dx.doi.org/10.1007/s10515-009-0053-0
GMF: Graphical modeling framework project (GMF). http://www.eclipse.org/modeling/gmp/. Accessed Jan 2013
Heering, J., Hendriks, P.R.H., Klint, P., Rekers, J.: The syntax definition formalism sdfreference manual. SIGPLAN Not. 24(11), 43–75 (1989)
Kats, L.C.L., Visser, E.: The spoofax language workbench: rules for declarative specification of languages and IDEs. In: Cook, W.R., Clarke, S., Rinard, M.C. (eds.) In: Proceedings of the 25th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2010, pp. 444–463. ACM, Reno/Tahoe, Nevada (2010)
Kats, L.C., Visser, E., Wachsmuth, G.: Pure and declarative syntax definition: paradise lost and regained. SIGPLAN Not. 45(10), 918–932 (2010)
Kolovos, D.S., Paige, R.F., Polack, F.A.C.: On the Evolution of OCL for Capturing Structural Constraints in Modelling Languages. In: Abrial, J.-R., Glässer, U. (eds.) Rigorous Methods for Software Construction and Analysis. Lecture Notes in Computer Science, Vol. 5115, pp. 204–218. Springer, Heidelberg (2009). http://dx.doi.org/10.1007/978-3-642-11447-2_13
Kolovos, D.S., Rose, L.M., Abid, S.B., Paige, R.F., Polack, F.A.C., Botterweck, G.: Taming EMF and GMF using model transformation. In: Proceedings of the 13th International Conference on Model Driven Engineering Languages and Systems: Part I, MODELS’10, pp. 211–225. Springer, Heidelberg (2010)
Kolovos, D., Paige, R., Polack, F.: The epsilon object language (EOL). In: Rensink, A., Warmer, J. (eds.) Model Driven Architecture Foundations and Applications. Lecture Notes in Computer Science, vol. 4066, pp. 128–142. Springer, Heidelberg (2006)
Kolovos, D., Rose, L., García-Domínguez, A., Paige, R.: The Epsilon Book. http://www.eclipse.org/epsilon/doc/book/ (2012). Accessed 4 July 2012
Maciel, P.R.M., Trivedi, K.S., Jr., R.M., Kim, D.S.: Dependability modeling. In: Cardellini, V., Casalicchio, E., Kalinka, R.L., Júlio C.E., Francisco J.M. (eds.) On performance and dependability in service computing: concepts, techniques and research directions. pp. 53–97. IGI Global, Hershey (2012). doi: 10.4018/978-1-60960-794-4.ch003
Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. 37(4), 316–344 (2005)
Moller, M., Olderog, E.R., Rasch, H., Wehrheim, H.: Integrating a formal method into a software engineering process with uml and java. Form. Asp. Comput. 20(2), 161–204 (2008)
NASA: Fault Tree Handbook with Aerospace Applications. NASA Office of Safety and Mission Assurance, Washington (2002)
OMG: Object constraint language (OCL). http://www.omg.org/spec/OCL/2.3.1/PDF. Accessed Jan 2013
SDF: Stratego/XT manual. Chapter 6. Syntax Definition in SDF. http://hydra.nixos.org/build/5114850/download/1/manual/chunk-chapter/tutorial-sdf.html. Accessed May 2013
Silva, R.: GUI-based DSL Formal Tools Project. http://www.cin.ufpe.br/~rss7/mscproj/ (2013)
Spoofax: The spoofax language workbench v1.1. http://spoofax.org/ (2013). Accessed Feb 2013
Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley, Boston (2008)
Stratego: Stratego/XT manual. Part III. The Stratego language. http://hydra.nixos.org/build/5114850/download/1/manual/chunk-chapter/stratego-language.html. Accessed May 2013
Voelter, M., Solomatov, K.: Language modularization and composition with projectional language workbenches illustrated with MPS. In: van den Brand, M., Malloy, B., Staab, S. (eds.) Software Language Engineering, 3rd International Conference, SLE 2010. Lecture Notes in Computer Science. Springer (2010)
Zhang, T., Jouault, F., Bézivin, J., Zhao, J.: A MDE based approach for bridging formal models. In: Proceedings of the 2008 2nd IFIP/IEEE TASE, pp. 113–116. TASE ’08. IEEE Computer Society, Washington, USA (2008)
Acknowledgments
This work is supported by CNPq grant 476821/2011-8.
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Silva, R., Mota, A., Starr, R.R. (2014). Formal MDE-Based Tool Development. In: Bouabana-Tebibel, T., Rubin, S. (eds) Integration of Reusable Systems. Advances in Intelligent Systems and Computing, vol 263. Springer, Cham. https://doi.org/10.1007/978-3-319-04717-1_5
Download citation
DOI: https://doi.org/10.1007/978-3-319-04717-1_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-04716-4
Online ISBN: 978-3-319-04717-1
eBook Packages: EngineeringEngineering (R0)