Extending the SEMAT Kernel to Represent and Assess Software Architecture Evaluations | IEEE Conference Publication | IEEE Xplore

Extending the SEMAT Kernel to Represent and Assess Software Architecture Evaluations


Abstract:

Software architecture evaluation (SAE) is a key area in software architecture design. Some of its key challenges are describing and assessing the architecture itself, the...Show More

Abstract:

Software architecture evaluation (SAE) is a key area in software architecture design. Some of its key challenges are describing and assessing the architecture itself, the architectural decisions, the business or mission goals, and the quality attributes; and further, the adoption itself of SAE practices. The lack of a standard representation for SAE endeavors hampers its adoption by development teams, its (semi-)automated support by tool providers, and its normative assessment by process specialists. In this paper we introduce SAEMET (Software Architecture Evaluation MEthod and Theory), an extension of the Essence standard proposed by SEMAT and adopted by OMG; The Essence kernel defines “things” (called Alphas) any software engineering endeavor should include, and provides an extensible representation to be used for assessing an endeavor progression. SAEMET includes five sub-alphas (Quality Attributes, Business Goals, Architecture Description, Architecture Decision, and Evaluation Adoption), and provides a complete description for each one, their progression levels, and the relationships among them. Our approach is useful for representing an already published architecture review, conducted using DCAR (Decision-Centric Architecture Review method), and assessing its suitability for actionable support of adoption, automated support, and normative assessment. Ongoing empirical evaluation of SAEMET is underway, and early results indicate it is usable and useful for guiding and auditing SAE endeavor, as well as planning courses to train teams for adopting SAE.
Date of Conference: 16-20 October 2023
Date Added to IEEE Xplore: 14 December 2023
ISBN Information:

ISSN Information:

Conference Location: La Paz, Bolivia

Funding Agency:

References is not available for this document.

I. Introduction

Evaluating a software architecture is an integral part of designing software architectures. Hofmeister et al. [1] consider evaluation as a key area in their proposed “general model” for software architecture design. The main goal for an architecture evaluation is to determine how well the architecture fits for the purpose it was conceived for. In the practice or architecture design, an architecture evaluation will tell the stakeholders if the architecture is appropriate for meeting their expectations and requirements.

Select All
1.
C. Hofmeister, P. Kruchten, R. L. Nord, H. Obbink, A. Ran and P. America, "A general model of software architecture design derived from five industrial approaches", Journal of Systems and Software, vol. 80, no. 1, pp. 106-126, 2007.
2.
I. Jacobson, P.-W. Ng, P. E. McMahon, I. Spence and S. Lidman, "The Essence of software engineering: The SEMAT kernel", Commun. ACM, vol. 55, no. 12, pp. 42-49, Dec. 2012.
3.
Essence - Kernel and Language for Software Engineering Methods 1.2, 2018.
4.
P. Clements, R. Kazman and M. Klein, "Evaluating Software Architectures: Methods and Case Studies ser" in SEI Series in Software Engineering, Boston, MA:Addison-Wesley, 2001.
5.
P. Bengtsson and J. Bosch, "Scenario-based software architecture reengineering", Proceedings. Fifth International Conference on Software Reuse (Cat. No. 98TB100203), pp. 308-317, 1998.
6.
U. van Heesch, V.-P. Eloranta, P. Avgeriou, K. Koskimies and N. Harrison, "Decision-centric architecture reviews", IEEE Softw., vol. 31, no. 1, pp. 69-76, jan 2014.
7.
N. Harrison and P. Avgeriou, "Pattern-based architecture reviews", IEEE Software, vol. 28, no. 6, pp. 66-71, 2011.
8.
I. Jacobson, B. Meyer and R. Soley, The SEMAT Initiative: A Call for Action, 07 2020, [online] Available: http://www.drdobbs.com/architecture-and-design/the-semat-initiative-a-call-for-action/222001342.
9.
ESSENCE User Guide, 07 2020, [online] Available: http://semat.org/alpha-definitions-overview/competency-cards.
10.
I. Jacobson, P.-W. Ng, P. E. McMahon, I. Spence and S. Lidman, The Essence of Software Engineering: Applying the SEMAT Kernel, Addison-Wesley Professional, 2013.
11.
G. Alvarez, M. C, J.C.M. Z and A. H, SETMAT (software engineering teaching method and theory): A theory of software engineering teaching [setmat (software engineering teaching method and theory): Una teoría para la enseñanza de ingeniería de software], [online] Available: http://hdl.handle.net/11407/5688.
12.
L. Bass, P. Clements and R. Kazman, Software Architecture in Practice, Addison-Wesley Professional, 2012.
13.
V. Reijonen, J. Koskinen and I. Haikala, "Experiences from scenario-based architecture evaluations with atam" in Software Architecture, Berlin, Heidelberg:Springer Berlin Heidelberg, pp. 214-229, 2010.
14.
J. Knodel and M. Naab, "Software architecture evaluation in practice: Retrospective on more than 50 architecture evaluations in industry", 2014 IEEE/IFIP Conference on Software Architecture, pp. 115-124, 2014.
15.
H. Obbink, P. Kruchten, W. Kozaczynski, H. Postema, A. Ran, L. Dominick, et al., Software Architecture Review and Assessment (SARA) Report - Version 1.0, [online] Available: https://pkruchten.files.wordpress.com/2011/09/sarav1.pdf.
16.
ISO/IEC/IEEE 42030:2019 Software systems and enterprise - Architecture evaluation framework Std., 2019.
17.
J. Knodel and M. Naab, Pragmatic Evaluation of Software Architectures, Springer Publishing Company, Incorporated, 2016.
18.
Meta Object Facility Model 2, 2008.
19.
P. Cruz, L. Salinas and H. Astudillo, "Quick evaluation of a software architecture using the decision-centric architecture review method: An experience report", Software Architecture: 14th European Conference ECSA 2020 L'Aquila Italy September 14-18 2020 Proceedings, pp. 281-295, 2020.
20.
P. Cruz, H. Astudillo, R. Hilliard and M. Collado, "Assessing migration of a 20-year-old system to a micro-service platform using atam", 2019 IEEE International Conference on Software Architecture Companion (ICSA-C), pp. 174-181, 2019.
21.
ISO/IEC 25010:2011 Systems and software engineering —Systems and software Quality Requirements and Evaluation (SQuaRE) — System and software quality models Std., 2011.
22.
I. Sommerville, Software Engineering, Pearson, 2015.

Contact IEEE to Subscribe

References

References is not available for this document.