Abstract
We present an approach for defining the abstract and concrete syntax of UML profiles and their equivalent Papyrus graphical editors using annotated Ecore metamodels, driven by automated model-to-model and model-to-text transformations. We compare our approach against manual UML profile specification and implementation using Archimate, a non-trivial enterprise modelling language, and we demonstrate the substantial productivity and maintainability benefits it delivers.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
The code and instructions are available at http://www.zolotas.net/AMIGO.
- 2.
The attributes of the stereotypes are omitted for simplicity.
- 3.
References
Abouzahra, A., Bézivin, J., Del Fabro, M.D., Jouault, F.: A practical approach to bridging domain specific languages with UML profiles. In: Proceedings of the Best Practices for Model Driven Software Development at OOPSLA, vol. 5 (2005)
Bergmayr, A., Grossniklaus, M., Wimmer, M., Kappel, G.: JUMP—from Java annotations to UML profiles. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds.) MODELS 2014. LNCS, vol. 8767, pp. 552–568. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11653-2_34
Erickson, J., Siau, K.: Theoretical and practical complexity of modeling methods. Commun. ACM 50(8), 46–51 (2007)
Friedenthal, S., Moore, A., Steiner, R.: A practical guide to SysML: the systems modeling language (2014)
Fuentes-Fernández, L., Vallecillo-Moreno, A.: An introduction to UML profiles. UML Model Eng. 2 (2004)
Giachetti, G., Marin, B., Pastor, O.: Using UML profiles to interchange DSML and UML models. In: Third International Conference on Research Challenges in Information Science, pp. 385–394 (2009)
Giachetti, G., Marín, B., Pastor, O.: Using UML as a domain-specific modeling language: a proposal for automatic generation of UML profiles. In: van Eck, P., Gordijn, J., Wieringa, R. (eds.) CAiSE 2009. LNCS, vol. 5565, pp. 110–124. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02144-2_13
Giachetti, G., Valverde, F., Pastor, O.: Improving automatic UML2 profile generation for MDA industrial development. In: Song, I.-Y. (ed.) ER 2008. LNCS, vol. 5232, pp. 113–122. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-87991-6_16
Object Management Group: Modeling And Analysis Of Real-Time Embedded Systems (2011). http://www.omg.org/spec/MARTE/1.1/
Object Management Group: Unified Modeling Language, June 2015. http://www.omg.org/spec/UML/
Haren, V.: Archimate 2.0 specification (2012)
Iacob, M.E., Jonkers, H., Lankhorst, M.M., Proper, H.A.: ArchiMate 1.0 Specification. Van Haren Publishing, Zaltbommel (2009)
Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The Epsilon transformation language. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 46–60. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-69927-9_4
Kolovos, D.S., García-Domínguez, A., Rose, L.M., Paige, R.F.: Eugenia: towards disciplined and automated development of GMF-based graphical model editors. Softw. Syst. Model. 1–27 (2015)
Lagarde, F., Espinoza, H., Terrier, F., André, C., Gérard, S.: Leveraging patterns on domain models to improve UML profile definition. In: Fiadeiro, J.L., Inverardi, P. (eds.) FASE 2008. LNCS, vol. 4961, pp. 116–130. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-78743-3_10
Lanusse, A., Tanguy, Y., Espinoza, H., Mraidha, C., Gerard, S., Tessier, P., Schnekenburger, R., Dubois, H., Terrier, F.: Papyrus UML: an open source toolset for MDA. In: Fifth European Conference on Model-Driven Architecture Foundations and Applications (ECMDA-FA 2009), pp. 1–4 (2009)
Pardillo, J.: A systematic review on the definition of UML profiles. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6394, pp. 407–422. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-16145-2_28
Rose, L.M., Paige, R.F., Kolovos, D.S., Polack, F.A.C.: The Epsilon generation language. In: Schieferdecker, I., Hartman, A. (eds.) ECMDA-FA 2008. LNCS, vol. 5095, pp. 1–16. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-69100-6_1
Selic, B.: A systematic approach to domain-specific language design using UML. In: 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC 2007), pp. 2–9 (2007)
Viyović, V., Maksimović, M., Perisić, B.: Sirius: a rapid development of DSM graphical editor. In: IEEE 18th International Conference on Intelligent Engineering Systems INES 2014, pp. 233–238. IEEE (2014)
Williams, J.R.: A novel representation for search-based model-driven engineering. Ph.D. thesis, University of York (2013)
Williams, J.R., Zolotas, A., Matragkas, N.D., Rose, L.M., Kolovos, D.S., Paige, R.F., Polack, F.A.: What do metamodels really look like? EESSMOD@ MoDELS 1078, 55–60 (2013)
Wimmer, M.: A semi-automatic approach for bridging DSMLS with UML. Int. J. Web Inf. Syst. 5(3), 372–404 (2009)
Acknowledgments
This work was partially supported by Innovate UK and the UK aerospace industry through the SECT-AIR project, by the EU through the DEIS project (#732242) and by the Defence Science and Technology Laboratory through the project “Technical Obsolescence Management Strategies for Safety-Related Software for Airborne Systems”.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
A Annotations and Parameters
A Annotations and Parameters
The following are all the currently supported parameters for the annotations.
1.1 A.1 @Diagram
-
name: The name of the created diagrams as it appears on the diagram creation menus of Papyrus. [required]
-
icon: The icon that will appear next to the name on the diagram creation menus of Papyrus. [optional]
1.2 A.2 @Node
-
base: The name of the UML meta-element that this stereotype should extend. [required]
-
shape: The shape that should be used to represent the node on the diagram. [required]
-
icon: The icon that will appear next to the name of the stereotype in the custom palette. [optional]
1.3 A.3 @Edge
-
base: The name of the UML meta-element that this stereotype should extend. [required]
-
icon: The icon that will appear next to the name of the stereotype in the custom palette. [optional]
-
lineStyle: The style of the line (possible values: solid, dashed, dotted, hidden, double). [optional]
-
source (for EClasses only): The name of the EReference of the EClass that denotes the type of the source node for the edge. [required]
-
target (for EClasses only): The name of the EReference of the EClass that denotes the type of the target node for the edge. [required]
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Zolotas, A., Wei, R., Gerasimou, S., Hoyos Rodriguez, H., Kolovos, D.S., Paige, R.F. (2018). Towards Automatic Generation of UML Profile Graphical Editors for Papyrus. In: Pierantonio, A., Trujillo, S. (eds) Modelling Foundations and Applications. ECMFA 2018. Lecture Notes in Computer Science(), vol 10890. Springer, Cham. https://doi.org/10.1007/978-3-319-92997-2_2
Download citation
DOI: https://doi.org/10.1007/978-3-319-92997-2_2
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-92996-5
Online ISBN: 978-3-319-92997-2
eBook Packages: Computer ScienceComputer Science (R0)