MODELS 2009: Models in Software Engineering pp 158-171 | Cite as
From UML to Alloy and Back Again
Abstract
Model transformations can be used to bridge the gap between design and analysis technical spaces by creating tools that allow a model produced by a designer to be transformed to a model suitable for conducting automated analysis. Such model transformations aim at allowing the designer to benefit from the capabilities provided by analysis tools and languages. If the designer who is not a formal method expert is to benefit from such tools, the outcome of the analysis should also be transformed to the language used in the design domain.
This paper presents a study involving UML2Alloy, a tool for transforming UML models in form of UML Class Diagrams which are augmented with OCL constraints, to Alloy. The conversion allows analysis of UML models via Alloy, to identify consistencies in those UML models. We present a method of automatically creating a model transformation based on the original UML2Alloy transformation. The new transformation converts Alloy instances into the UML equivalent Object Diagram. The current technique is presented with the help of an example, along with a prototype implementation using the QVT standard.
Keywords
Model Transformation Alloy Model Meta Model Model Drive Architecture Meta Object FacilityPreview
Unable to display preview. Download preview PDF.
References
- 1.Abrial, J.-R.: The B-book: assigning programs to meanings. Cambridge University Press, New York (1996)MATHCrossRefGoogle Scholar
- 2.Akehurst, D., Bordbar, B., Evans, M.J., Howells, W.G.J., McDonald-Maier, K.D.: SiTra: Simple transformations in Java. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 351–364. Springer, Heidelberg (2006), http://dblp.uni-trier.de/db/conf/models/models2006.html#AkehurstBEHM06 CrossRefGoogle Scholar
- 3.Anastasakis, K.: A Model Driven Approach for the Automated Analysis of UML Class Diagrams. PhD thesis, School of Computer Science, University of Birmingham UK (2009)Google Scholar
- 4.Anastasakis, K., Bordbar, B., Georg, G., Ray, I.: On Challenges of Model Transformation from UML to Alloy. In: Software and Systems Modeling, Special Issue on MoDELS 2007 (2009) (Accepted for publication subject to minor revisions)Google Scholar
- 5.Bordbar, B., Anastasakis, K.: UML2Alloy: A tool for lightweight modelling of Discrete Event Systems. In: Guimarães, N., Isaías, P. (eds.) IADIS International Conference in Applied Computing 2005, Algarve, Portugal, February 2005, vol. 1, pp. 209–216. IADIS Press (2005) ISBN 972-99353-6-XGoogle Scholar
- 6.Dennis, G., Seater, R., Rayside, D., Jackson, D.: Automating commutativity analysis at the design level. In: ISSTA 2004: Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis, pp. 165–174. ACM Press, New York (2004)CrossRefGoogle Scholar
- 7.Evans, A., France, R., Grant, E.: Towards Formal Reasoning with UML Models. In: Proceedings of the OOPSLA 1999 Workshop on Behavioral Semantics (1999)Google Scholar
- 8.Georg, G., Ray, I., Anastasakis, K., Bordbar, B., Toahchoodee, M., Houmb, S.H.: An Aspect-Oriented Methodology for Developing Secure Applications. Information and Software Technology, Special Issue on Model Based Development for Secure Information Systems (Accepted for publication)Google Scholar
- 9.Jackson, D.: Software Abstractions: Logic, Language, and Analysis. The MIT Press, London (2006)Google Scholar
- 10.Jackson, D., Sullivan, K.: COM revisited:tool-assisted modelling of an architectural framework. In: 8th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE), San Diego, CA (2000)Google Scholar
- 11.Khurshid, S., Jackson, D.: Exploring the design of an intentional naming scheme with an automatic constraint analyzer. In: ASE 2000: Proceedings of the 15th IEEE international conference on Automated software engineering, Washington, DC, USA, p. 13. IEEE Computer Society, Los Alamitos (2000)CrossRefGoogle Scholar
- 12.Kim, S.-K.: A Metamodel-based Approach to Integrate Object-Oriented Graphical and Formal Specification Techniques. PhD thesis, University of Queensland, Brisbane, Australia (2002)Google Scholar
- 13.Kurtev, I., Bézivin, J., Aksit, M.: Technological Spaces: an Initial Appraisal. In: CoopIS, DOA (2002)Google Scholar
- 14.OMG. enterprise distributed object computing (edoc), http://www.omg.org/technology/documents/formal/edoc.htm
- 15.OMG. Meta Object Facility (MOF) 2.0 Core Specification. OMG (2004), www.omg.org
- 16.OMG. MOF QVT Final Adopted Specification. Object Modeling Group (2007)Google Scholar
- 17.Rose, L.M., Paige, R.F., Kolovos, D.S., Polack, F.: The epsilon generation language. In: Schieferdecker, I., Hartman, A. (eds.) ECMDA-FA 2008. LNCS, vol. 5095, pp. 1–16. Springer, Heidelberg (2008)CrossRefGoogle Scholar
- 18.Shlyakhter, I., Seater, R., Jackson, D., Sridharan, M., Taghdiri, M.: Debugging overconstrained declarative models using unsatisfiable cores. In: Proceedings of the 18th IEEE International Conference on Automated Software Engineering, Montreal, Canada, pp. 94–105. IEEE Computer Society, Los Alamitos (2003)CrossRefGoogle Scholar
- 19.Snook, C., Butler, M.: Uml-b: Formal modelling and design aided by UML. ACM Transactions on Software Engineering and Methodology 15(1), 92–122 (2006)CrossRefGoogle Scholar
- 20.Stahl, T., Voelter, M., Czarnecki, K.: Model-Driven Software Development: Technology, Engineering, Management. John Wiley & Sons, Chichester (2006)Google Scholar
- 21.Stevens, P.: Bidirectional model transformations in QVT: Semantic issues and open questions. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 1–15. Springer, Heidelberg (2007)CrossRefGoogle Scholar
- 22.France Telecom. Smartqvt: An open source model transformation tool implementing the mof 2.0 qvt-operational language, http://smartqvt.elibel.tm.fr/
- 23.OMG UML. 2.0 superstructure final adopted specification. OMG Document reference ptc/03-08, 2 (2003)Google Scholar
- 24.Varró, D.: Model transformation by example. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 410–424. Springer, Heidelberg (2006)CrossRefGoogle Scholar
- 25.Varró, D., Pataricza, A.: Generic and meta-transformations for model transformation engineering. In: Baar, T., Strohmeier, A., Moreira, A., Mellor, S.J. (eds.) UML 2004. LNCS, vol. 3273, pp. 290–304. Springer, Heidelberg (2004)Google Scholar
- 26.Varró, D., Pataricza, A.: VPM: A visual, precise and multilevel metamodeling framework for describing mathematical domains and UML. Software and Systems Modeling 2(3), 187–210 (2003)CrossRefGoogle Scholar
- 27.Wimmer, M., Strommer, M., Kargl, H., Kramler, G.: Towards model transformation generation by-example. In: HICSS 2007: Proceedings of the 40th Annual Hawaii International Conference on System Sciences, Washington, DC, USA, IEEE Computer Society, Los Alamitos (2007)Google Scholar
- 28.Woodcock, J., Davies, J.: Using Z: Specification, Refinement, and Proof. Prentice Hall, Upper Saddle River (1996)MATHGoogle Scholar