Abstract
Model cantered software development practices adoption remains limited to small niche domains. The broad development practices remain code centric. Modeling tool complexity is often cited as a significant factor limiting the adoption and negatively affecting user experience. Modeling and design tools complexity are due to multiple factors including complexity of the underlying language, weak support for methodologies, and insensitivity to users’ concerns. This results in modeling and design tools that expose all or most of their capabilities and elements at once, often overwhelming users and negatively affecting user experience. The problem is further exacerbated when a tool supports multiple domain-specific modeling languages that are defined on top of a base language such as UML. In this case, the tool customizations and visual elements necessary to support each language often interfere with each other and further exacerbate the modeling tool complexity. In this paper, we present a novel and systematic approach to reduce the complexity of design and modeling tools by introducing an interpretation and adaptation of the ISO42010 standard on architecture description specific to the software domain. We demonstrate this approach by providing a working implementation as part of the Papyrus opensource modeling framework. In this approach, we leverage the notions of Architecture Contexts and Architecture Viewpoints to enable heterogeneous UML-based languages to be independently supported and help contextualize the exposed tool capabilities. This paper presents the ISO42010 interpretation and adaptation to software design and architecture and a case study with several definitions of architecture contexts. The implementation of this novel approach demonstrates the ability for multiple modeling languages and notations to coexist without interference and provides significant reduction in the exposed capabilities in the UI. Reducing design and modeling tool complexity has a potential to significantly broaden the adoption of modeling and design practices in the software engineering sphere.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
IEEE 2008. IEEE Std 1028-2008: IEEE Standard for Software Reviews and Audits. ISO, Systems and Software Engineering – Architecture Description. ISO/IEC/IEEE 42010, pp. 1–46, May 2011
van Heesch, U., Avgeriou, P., Hilliard, R.: A documentation framework for architecture decisions. J. Syst. Softw. 85(4), 795–820 (2012)
Hilliard, R.: Architecture viewpoint template for ISO/IEC/IEEE 42010, June 2012. http://www.iso-architecture.org/42010/templates/. Accessed Mar 2017
Maier, M.W., Emery, D., Hilliard, R.: Software architecture: introducing IEEE standard 1471. Computer 34(4), 107–109 (2001)
Luckham, D.C., Kenney, J.J., Augustin, L.M., Vera, J., Bryan, D., Mann, W.: Specification and analysis of system architecture using Rapide. IEEE Trans. Softw. Eng. 21(4), 336–354 (1995)
Allen, R., Garlan, D.: The Wright architectural specification language. Rapport technique CMU-CS-96-TBD, Carnegie Mellon University, School of Computer Science (1996)
Magee, J., Dulay, N., Eisenbach, S., Kramer, J.: Specifying distributed software architectures. In: Proceedings on Fifth European Software Engineering Conference (ESEC 1995), September 1995
Feiler, P.H., Gluch, D.P., Hudak, J.J.: The architecture analysis & design language (AADL): an introduction. No. CMU/SEI-2006-TN-011. Carnegie-Mellon University, Pittsburgh, PA, Software Engineering Institute (2006)
Huang, E., Ramamurthy, R., McGinnis, L.F.: System and simulation modeling using SysML. In: Proceedings of the 39th Conference on Winter Simulation: 40 Years! The Best is yet to Come. IEEE Press (2007)
Lankhorst, M.M., Proper, H.A., Jonkers, H.: The architecture of the ArchiMate language. In: Halpin, T., et al. (eds.) BPMDS/EMMSAD -2009. LNBIP, vol. 29, pp. 367–380. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-01862-6_30
Petre, M.: UML in practice. In: Proceedings of the 35th International Conference on Software Engineering (ICSE 2013), pp. 722–731, San Francisco, CA, USA, 18–26 May 2013
Forward, A., Lethbridge, T.C.: Problems and opportunities for model-centric versus code-centric software development: a survey of software professionals. In: Models in Software Engineering workshop (MiSE 2008) at ICSE, pp. 27–32. ACM (2008)
Elvesæter, B., Panfilenko, D., Jacobi, S., Hahn, C.: Aligning business and IT models in service-oriented architectures using BPMN and SoaML. In: Proceedings of the First International Workshop on Model-Driven Interoperability, pp. 61–68. ACM, October 2010
Hause, M.: The unified profile for DoDAF/MODAF (UPDM) enabling systems of systems on many levels. In: 2010 4th Annual IEEE Systems Conference. IEEE (2010)
Forward, A., Badreddin, O., Lethbridge, T.C., Solano, J.: Model-driven rapid prototyping with Umple. Softw. Pract. Exp. 42(7), 781–797 (2012)
Dévai, G., Kovács, G.F., An, Á.: Textual, executable, translatable UML. In: OCL@ MoDELS, pp. 3–12 (2014)
Wrycza, S., Marcinkowski, B.: A light version of UML 2: survey and outcomes. In: Proceedings of the 2007 Computer Science and IT Education Conference, pp. 739–749 (2007)
Leroux, D., Nally, M., Hussey, K.: Rational software architect: a tool for domain-specific modeling. IBM Syst. J. 45(3), 555–568 (2006)
Baker, P., Loh, S., Weil, F.: Model-driven engineering in a large industrial context—motorola case study. In: Briand, L., Williams, C. (eds.) MODELS 2005. LNCS, vol. 3713, pp. 476–491. Springer, Heidelberg (2005). https://doi.org/10.1007/11557432_36
Liebel, G., Marko, N., Tichy, M., Leitner, A., Hansson, J.: Assessing the state-of-practice of model-based engineering in the embedded systems domain. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds.) MODELS 2014. LNCS, vol. 8767, pp. 166–182. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11653-2_11
Badreddin, O.B., Sturm, A., Hamou-Lhadj, A., Lethbridge, T., Dixon, W., Simmons, R.: The effects of education on students’ perception of modeling in software engineering. In: HuFaMo@ MoDELS, pp. 39–46 (2015)
Liebel, G., Heldal, R., Steghöfer, J.-P., Chaudron, M.R.V.: Ready for Prime Time,-Yes, Industrial-Grade Modelling Tools can be Used in Education (2015)
Elaasar, M., Noyrit, F., Badreddin, O., Gérard, S.: Reducing UML modeling tool complexity with architectural contexts and viewpoints. In: International Conference on Model-Driven Engineering and Software Development (MODELSWARD) (2018)
Selic, B., Gérard, S.: Modeling and Analysis of Real-Time and Embedded Systems with UML and MARTE: Developing Cyber-Physical Systems. Elsevier, Burlington (2013). https://doi.org/10.1016/C2012-0-13536-5
Elvesæter, B., Carrez, C., Mohagheghi, P., Berre, A.J., Johnsen, S.G., Solberg, A.: Model-driven service engineering with SoaML. In: Dustdar, S., Li, F. (eds.) Service Engineering. Springer, Vienna (2011). https://doi.org/10.1007/978-3-7091-0415-6_2
Agner, L.T.W., Lethbridge, T.C.: A survey of tool use in modeling education. In: 2017 ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 303–311. IEEE (2017)
Lanusse, A., et al.: Papyrus UML: an open source toolset for MDA. In: Proceedings of the Fifth European Conference on Model-Driven Architecture Foundations and Applications (ECMDA-FA 2009), pp. 1–4 (2009)
Ho-Quang, T., Hebig, R., Robles, G., Chaudron, M.R.V., Fernandez, M.A.: Practices and perceptions of UML use in open source projects. In: 2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering in Practice Track (ICSE-SEIP), pp. 203–212. IEEE (2017)
Liebel, G., Badreddin, O., Heldal, R.: Model driven software engineering in education: a multi-case study on perception of tools and UML. In: 2017 IEEE 30th Conference on Software Engineering Education and Training (CSEE&T), pp. 124–133. IEEE (2017)
Badreddin, O., Lethbridge, T.C., Elassar, M.: Modeling practices in open source software. In: Petrinja, E., Succi, G., El Ioini, N., Sillitti, A. (eds.) OSS 2013. IAICT, vol. 404, pp. 127–139. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38928-3_9
Aldaeej, A., Badreddin, O.: Towards promoting design and UML modeling practices in the open source community. In: Proceedings of the 38th International Conference on Software Engineering Companion, pp. 722–724. ACM (2016)
Abrahão, S., et al.: User experience for model-driven engineering: challenges and future directions. In: 2017 ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 229–236. IEEE (2017)
Petre, M.: UML in practice. In: Proceedings of the 2013 International Conference on Software Engineering, pp. 722–731. IEEE Press (2013)
Dijkstra, E.W.: On the role of scientific thought. In: Dijkstra, E.W. (ed.) Selected Writings on Computing: A Personal Perspective, pp. 60–66. Springer, New York (1982). https://doi.org/10.1007/978-1-4612-5695-3_12
Ross, D.T.: Structured Analysis (SA): a language for communicating ideas. IEEE Trans. Softw. Eng. 3(1), 16–34 (1977)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Elaasar, M., Noyrit, F., Badreddin, O., Gérard, S. (2019). Adaptation and Implementation of the ISO42010 Standard to Software Design and Modeling Tools. In: Hammoudi, S., Pires, L., Selic, B. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2018. Communications in Computer and Information Science, vol 991. Springer, Cham. https://doi.org/10.1007/978-3-030-11030-7_11
Download citation
DOI: https://doi.org/10.1007/978-3-030-11030-7_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-11029-1
Online ISBN: 978-3-030-11030-7
eBook Packages: Computer ScienceComputer Science (R0)