Advertisement

Adaptation and Implementation of the ISO42010 Standard to Software Design and Modeling Tools

  • Maged Elaasar
  • Florian Noyrit
  • Omar BadreddinEmail author
  • Sébastien Gérard
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 991)

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.

Keywords

ISO 42010 Architecture description language Architecture framework UML SysML Software design Model driven architecture Model driven development Software modeling 

References

  1. 1.
    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 2011Google Scholar
  2. 2.
    van Heesch, U., Avgeriou, P., Hilliard, R.: A documentation framework for architecture decisions. J. Syst. Softw. 85(4), 795–820 (2012)CrossRefGoogle Scholar
  3. 3.
    Hilliard, R.: Architecture viewpoint template for ISO/IEC/IEEE 42010, June 2012. http://www.iso-architecture.org/42010/templates/. Accessed Mar 2017
  4. 4.
    Maier, M.W., Emery, D., Hilliard, R.: Software architecture: introducing IEEE standard 1471. Computer 34(4), 107–109 (2001)CrossRefGoogle Scholar
  5. 5.
    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)CrossRefGoogle Scholar
  6. 6.
    Allen, R., Garlan, D.: The Wright architectural specification language. Rapport technique CMU-CS-96-TBD, Carnegie Mellon University, School of Computer Science (1996)Google Scholar
  7. 7.
    Magee, J., Dulay, N., Eisenbach, S., Kramer, J.: Specifying distributed software architectures. In: Proceedings on Fifth European Software Engineering Conference (ESEC 1995), September 1995Google Scholar
  8. 8.
    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)Google Scholar
  9. 9.
    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)Google Scholar
  10. 10.
    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_30CrossRefGoogle Scholar
  11. 11.
    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 2013Google Scholar
  12. 12.
    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)Google Scholar
  13. 13.
    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 2010Google Scholar
  14. 14.
    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)Google Scholar
  15. 15.
    Forward, A., Badreddin, O., Lethbridge, T.C., Solano, J.: Model-driven rapid prototyping with Umple. Softw. Pract. Exp. 42(7), 781–797 (2012)CrossRefGoogle Scholar
  16. 16.
    Dévai, G., Kovács, G.F., An, Á.: Textual, executable, translatable UML. In: OCL@ MoDELS, pp. 3–12 (2014)Google Scholar
  17. 17.
    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)Google Scholar
  18. 18.
    Leroux, D., Nally, M., Hussey, K.: Rational software architect: a tool for domain-specific modeling. IBM Syst. J. 45(3), 555–568 (2006)CrossRefGoogle Scholar
  19. 19.
    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_36CrossRefGoogle Scholar
  20. 20.
    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_11CrossRefGoogle Scholar
  21. 21.
    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)Google Scholar
  22. 22.
    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)Google Scholar
  23. 23.
    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)Google Scholar
  24. 24.
    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-5CrossRefGoogle Scholar
  25. 25.
    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_2CrossRefGoogle Scholar
  26. 26.
    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)Google Scholar
  27. 27.
    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)Google Scholar
  28. 28.
    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)Google Scholar
  29. 29.
    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)Google Scholar
  30. 30.
    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_9CrossRefGoogle Scholar
  31. 31.
    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)Google Scholar
  32. 32.
    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)Google Scholar
  33. 33.
    Petre, M.: UML in practice. In: Proceedings of the 2013 International Conference on Software Engineering, pp. 722–731. IEEE Press (2013)Google Scholar
  34. 34.
    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_12CrossRefzbMATHGoogle Scholar
  35. 35.
    Ross, D.T.: Structured Analysis (SA): a language for communicating ideas. IEEE Trans. Softw. Eng. 3(1), 16–34 (1977)CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Maged Elaasar
    • 1
  • Florian Noyrit
    • 2
  • Omar Badreddin
    • 3
    Email author
  • Sébastien Gérard
    • 2
  1. 1.Modelware SolutionsLa Canada FlintridgeUSA
  2. 2.CEA, LIST, Laboratory of Model Driven Engineering for Embedded SystemsGif-sur-YvetteFrance
  3. 3.CS DepartmentUniversity of Texas El PasoEl PasoUSA

Personalised recommendations