A Process for Monitoring the Impact of Architecture Principles on Sustainability: An Industrial Case Study
Abstract
:1. Introduction
- (i)
- a process pipeline to perform sustainability analysis, i.e., to obtain PRSM models and their extension. The pipeline associates architecture principles with sustainability quality attributes, KPIs, and measurement tools to monitor them;
- (ii)
- the visualization of the derived measurements in the form of two types of spider chart. The graphical representations can be used on strategic, operational, and tactical levels to derive a principle’s performance regarding sustainability;
- (iii)
- the application of the process pipeline and visualizations in a real-world context, to draw conclusions for future studies.
2. Background
2.1. Key Performance Indicators
2.2. Software and Sustainability
- The technical dimension includes aspects about the implementation of a system and concerns about the evolution, maintenance, and long-term use of systems regarding software aspects.
- The economic dimension refers to business concerns as capital investment and profitability to protect capital.
- The social dimension focuses on the concepts of embedding software systems into communities (i.e., humans, groups, or organizations) to improve maintainability, trust, and quality for the software users.
2.3. PRSM Framework
3. Study Design
- RQ
- How can key performance indicators of software architecture principles be operationalized and measured concerning sustainability?By answering this main , we identified and evaluated options for measuring KPIs continuously in an industrial context. This enabled analyzing and monitoring the impact of software architecture principles on the four sustainability dimensions over time.
- RQ1
- What tools are accessible to measure sustainability key performance indicators for software solutions within a given organization?Our goal was to identify a set of tools within the portfolio of a particular organization to measure KPIs in different sustainability dimensions. Since a tool portfolio is available beyond a specific software solution, these tools can also be applied to other solutions. It is common practice to measure KPIs in technical and economic dimensions, such as the number of bugs, the code quality, and the net revenue. The goal was to also derive tools for environmental and social dimensions.
- RQ2
- To what extent can the sustainability key performance indicators be monitored in an automatic way?We used the tools identified in to investigate whether KPIs can be monitored in an automatic way. Automation would allow continuous monitoring as well as continuous evaluation of the impact over time.
- Phase I
- Phase II
- Phase III
4. Study Execution
4.1. Case and Subject Selection
4.2. Case Description
4.3. Case and Units of Analysis
4.4. Expert Interviews
What architecture principle(s) would you define as driving one(s) for this specific part of the PCS solution?
Regarding the PCS solution, what KPIs, metrics, and measurement tools would you define as applicable to this specific architecture principle?
4.5. Focus Group
- Preparation
Evaluate the final PRSM+T models with their measurements and their spider charts as a tool to visualize sustainability.
- Execution
- Analysis
5. Results
5.1. Architecture Principles
5.2. Process Pipeline
5.2.1. Abstraction
- gathers the necessary knowledge about the software system under study. We used the knowledge of the experts, i.e., the software architects, to determine which software architecture principle should be selected for the sustainability analysis and the rationale with respect to the software system. This information could only be derived from the experts involved in the development of the system, as only they were in a position to judge which principles were relevant. To our knowledge, there is no current model or architecture documentation strategy that documents the driving principles for a particular software system in a systematic way, so that information can be derived automatically.
- captures the expert knowledge in a preliminary sustainability analysis by mapping potential QAs to the selected principle and software system. We called this the preliminary sustainability analysis because the potential QAs should already be mapped to the four sustainability dimensions. Only when all four dimensions were considered could a balanced sustainability be achieved. The analysis was considered as preliminary, since the QAs would be refined later in the process.
- models the preliminary QAs in a systematic way. For this purpose, we considered an arbitrary software quality model together with a list of sustainability quality attributes . Both allowed us to (i) uncover related QAs, (ii) identify sustainability-related quality concerns on all four dimensions, and (iii) uncover missing dependencies. Both inputs ensured replicability and comparability with other sustainability analyses performed with the same software quality model. The output of this step constituted a model containing all related sustainability QA for a particular principle in the form of, e.g., a diagram.
- captures each defined sustainability QA definition regarding their context. Determining concrete definitions allowed (i) the selected sustainability QA to be documented in a structured way for future assessment and (ii) the selected sustainability QA to be reconsidered and revised.
- assigns KPIs and measurement tools to the sustainability QAs, resulting in a viable version of the sustainability analysis. The KPIs can either be derived from an existing business strategy or developed from scratch. In either case, we suggest considering KPIs that contribute to a specific business objective—only then can we derive relevant information about whether the principle, and thus the software solution, is steering in the right strategic direction. We suggest applying a KPI assessment model to evaluate the conditions and relevance of the selected KPIs.
5.2.2. Implementation
- For our case study, interviews with the five experts were used to derive the necessary knowledge.
- The interview results led to a preliminary PRSM model. The model captured the architecture principle, its rationale, and assigned QAs, while keeping the four sustainability dimensions in mind. At this stage, the model may include a set of multiple sustainability QAs for each dimension; ambiguities and uncertainties will be eliminated in the subsequent steps or another iteration.
- Decision maps were used to model the driving sustainability QAs and uncover related quality concerns. As a software quality model, we consideed the ISO/IEC 25010 SQuaRE [26] standard for defining the QAs and framing the concerns in the decision map. To reveal dependencies between the sustainability QAs and uncover missing sustainability concerns, a dependency matrix was used. As output, we expected a coherent diagram, framing the related sustainability QA and revealing the driving ones.
- The concerns were captured in the SQ model to define their definition related to the case study context, i.e., the PCS Cargonaut solution. As the SQ model is part of the SAF-Toolkit, it offered a central place together with the DM for documenting and preserving the sustainability analysis.
- All previous steps led to a continuous revision of the PRSM model. Since all artifacts are related to a corporate context, we considered the ADD and the Schiphol IT & Data Strategy to derive and map the KPIs. To also capture the metrics and measurement tools necessary for monitoring the KPIs, we used the tool dependent model, i.e., the PRSM+T model to assign and highlight the measurement tools. The KPIs considered were analyzed according to the SMART method and revised to obtain sound KPIs.
5.2.3. Integration
5.3. PRSM+T Model
- Adaptable: One size does not fit all.
- Maintained: Build once, run many times.
- Usable: Self service, fits with needs.
- Sanctioned: Secured, tested and governed.
- Easy to start with: Get started in hours, not weeks.
5.4. Key Performance Indicators
5.4.1. Final Set of KPIs
5.4.2. SMART Evaluation
- Specific
- Measurable
- Achievable
- Relevant
- Time phased
5.5. Measurement Tools
“It is really hard for us to have the right data at the moment when we need them. Therefore, we are looking for one dedicated tool to have all the data at one central point.”P#4, Cyber Security Officer
6. Evaluation
6.1. Case Study Measurements
6.2. Normalized Spider Charts
6.3. Focus Group Evaluation
- Familiarization Time
P#4 stated: “I’m trying to understand the model. […] You would need to explain it a little bit more to make it more understandable. So providing only the terms are a bit meaningless or hard to understand.”P#4, Cyber Security Officer
- Model Utility
P#4 stated “I do think that having such a model is quite helpful. […] It will help us to understand what kind of things we are doing right or wrong.”P#4, Cyber Security Officer
P#5 confirmed “I do also think that the analysis could help my department to keep track of their goals. Even if the model might need some learning.”P#5, Developer
- Axis Description
P#5 stated “It is not totally clear what you mean with Message Capacity in this context.”P#5, Developer
- Benchmarking
P#5 described “this chart [the PCS Messaging Portal] performs better than the first one [Governance & Security].”P#5, Developer
- Repetitive KPIs
- Missing Values
P#2 stated “If we look at the throughput, it could give the impression that we still have much work to do.”P#2, Enterprise Architect
- Normalized Spider Chart
In this regard, P#2 concluded “The normalized version could be the management summary, and the other ones are the detailed version to have a better and detailed look at it […]. I think we could use both […]. It shows you at which dimension we need to spend the money.”P#2, Enterprise Architect
P#1 added “The management level would be also interested in the details, and would therefore need both versions of the charts because they want to know where exactly they need to put their money in.”P#1, Software Architect
- Summary
7. Discussion
7.1. Contributions and Observations
PRSM+T Model & Process Pipeline |
|
Key Performance Indicators |
|
Measurement Tools |
|
Graphical Representation |
|
7.2. Threats to Validity
- External Validity
- Conclusion Validity
- Internal Validity
- Construct Validity
- Reliability
8. Related Work
9. Conclusions
- —How can KPIs of software architecture principles be operationalized and measured concerning sustainability?
- —What tools are accessible to measure sustainability KPIs for software solutions within a given organization?
- —To what extent can the sustainability KPIs be monitored in an automatic way?
Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
Appendix A. Interviews
Goal: Defining the driving architecture principle(s) for a certain part of the PCS solution. |
IQ1.1 What architecture tiers would you define to structure the PCS solution? |
IQ1.2 Would you confirm that the following pillars represent the major components of the PCS solution sufficiently? |
IQ1.3 Would you add/change certain pillars? |
IQ1.4 What are the responsibilities and duties of the column for which you are in charge? |
IQ1.5 Which main stakeholder(s) are involved/addressed by this tier? |
IQ1.6 Which ETO building-blocks and/or cloud solutions (Saas/PaaS/etc.) are used for the implementation of this tier, and why? |
IQ1.7 What architecture principle(s) would you define as driving architecture principle(s) for this specific tier? And why? |
IQ1.8 Which sustainability quality attribute(s) would you select as the driving attribute(s) for the prior selected architecture principle? |
IQ1.9 For each selected sustainability quality attribute, can you define KPIs to track its impact in the context of the PCS solution? |
IQ1.10 The KPI mentioned, how can they be measured (tools; automated; manual; surveys; etc.)? |
Goal: Defining applicable KPIs, metrics, and measurement tools to a certain architecture principle. |
IQ2.1 Do you agree with the selected architecture tiers defined during the first interview session? |
IQ2.2 Do you agree with the selected architecture principles selected during the first interview session? |
IQ2.3 Do you agree with the selected sustainability quality attributes selected during the first interview session? |
IQ2.4 Do you agree with the revised and selected as driving sustainability quality attributes after using decision maps? Would you choose different? |
IQ2.5 What KPIs and metrics can you think of to measure these particular quality attributes? |
IQ2.6 Are you aware of the Schiphol IT & Data Strategy 2021–2023? |
IQ2.7 (IQ2.6 answered with yes) What Schiphol goal, metric, KPI is suitable to measure these particular quality attributes? Can you think of alternatives? |
IQ2.8 (IQ2.6 answered with no) Do you think that the selected Schiphol goal; metric; KPI is suitable to measure these particular quality attributes? Can you think of alternatives? |
IQ2.9 Which measurement tools would you suggest to use to measure these particular quality attributes? |
IQ2.10 What do you think about this pre-selected measurement tools? |
IQ2.11 Do you have final remarks about the just created PRSM+T model for the selected architecture principle? |
Goal: Evaluating the final PRSM+T models with their measurements and their spider charts as tool to visualize sustainability. |
For each group of PRSM+T and computed spider chart: |
IQ3.1 Is the final PRSM+T model well defined (mapping of the architecture principle to the sustainability quality attributes, the KPIs, metrics, and measurement tools)? |
IQ3.2 Can you confirm the relation to the spider chart? |
IQ3.3 What does the data (i.e., spider chart) mean to you? |
IQ3.4 Do you see potential problems in using or understanding the model and the spider chart? |
Regarding the normalized spider chart based on randomized data: |
IQ4.1 What are the advantages and potential problems in using or understanding the normalized spider chart? |
Appendix B. Schiphol IT & Data Strategy 2021–2023 —Goals
Focus on Business Value |
ASM4—Robust Organization. Improve the focus of the customers to increase the business value. |
Solid Foundation |
DAI3—Data & AI Governance. Enable data governance to ensure appropriate data quality, lineage, as well as compliance with GDPR and ethical principles. |
ETO1—Realize enabling technology outlook. Transform the basic technology landscape into standardized building blocks to assure reusable components. |
ETO2—Reliable Delivery. Ensure a reliable transition to cloud applications to deliver continuity and automated processes. |
Efficient IT & Data management |
CIO1—Safe & Secure. Set cyber security standards to reduce the risk of cyber security threats. |
PR2—Increase efficiency. Increase efficiency to reduce cost. |
Appendix C. SQ Model
ISO/IEC 25010 Quality Model | Sustainability Dimension | ||||
---|---|---|---|---|---|
Characteristics | Attributes | Technical | Environmental | Economic | Social |
Maintainability | Modifiability | SaaS solutions can not be easily modified due to the provider dependencies. Modifications might be not possible due to provider restrictions. | The SaaS provider takes care of the modification, hence custom modifications might be either not possible at all or expensive. | ||
Reusability | SaaS solutions can be reused by more than one system, even over customers and can be part of other software solutions. Resources at the provider side can be shared. | If SaaS components can be reused across software solutions, costs can be reduced. | |||
Serviceability | LCM for SaaS solutions is handled by the provider, hence, less support employees are necessary. System has attributes that make it easy to maintain beyond the software development cycle. It continues even when the software is no longer used. | ||||
Context coverage | Flexibility | SaaS solutions can be used in contexts beyond the PCS solution. SaaS solutions have the ability to match with business needs as they flow [70]. | |||
Reliability | Availability | System, i.e., the SaaS solution needs to be highly available. If not, delays in the Cargo process can occur, leading to flight delays and thus enormous economical costs. | If the system is not available, the users and customers do not trust and do not use the software solution. | ||
Fault tolerance | Even in case of software or hardware faults on the provider side, the SaaS solution would/should operate as usual due to redundancy on the provider side. | ||||
Accessibility | Accessibility | SaaS solutions are usable by users with different disabilities [70]. This leads to access by many different user groups and with many different devices. In addition, the access to SaaS solutions are easier which decreases the barriers to the service. |
References
- European Union Aviation Safety Agency. European Aviation Environmental Report 2019; Publications Office. 2019. Available online: https://www.easa.europa.eu/eco/sites/default/files/2021-09/219473_EASA_EAER_2019_WEB_HI-RES_190311.pdf (accessed on 30 January 2024).
- Royal Schiphol Group. Annual Report 2020. Available online: https://www.schiphol.nl/en/schiphol-group/page/archive-annual-reports/ (accessed on 30 January 2024).
- World Commission on Environment and Development. Report of the World Commission on Environment and Development: Our Common Future; United Nations. 1987. Available online: https://sustainabledevelopment.un.org/content/documents/5987our-common-future.pdf (accessed on 30 January 2024).
- Wynn, M.; Jones, P. Industry Approaches to the Sustainable Development Goals. Int. J. Environ. Stud. 2022, 79, 134–148. [Google Scholar] [CrossRef]
- European Parliament and the Council of the European Union. Directive (EU) 2022/2464 of the European Parliament and of the Council; Technical Report Directive (EU) 2022/2464. 2022. Available online: https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32022L2464 (accessed on 30 January 2024).
- Zipse, O.; Hornegger, J.; Becker, T.; Beckmann, M.; Bengsch, M.; Feige, I.; Schober, M. (Eds.) Road to Net Zero: Strategic Pathways for Sustainability-Driven Business Transformation; Springer International Publishing: Cham, Switzerland, 2023. [Google Scholar]
- Sürücü, C.; Song, B.; Krüger, J.; Saake, G.; Leich, T. Establishing key performance indicators for measuring software-development processes at a large organization. In Proceedings of the Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, Virtual, 8–13 November 2020; ACM: New York, NY, USA, 2020; pp. 1331–1341. [Google Scholar]
- Parmenter, D. The new thinking on key performance indicators. Financ. Manag. Mag. 2006, 133, 1–4. [Google Scholar]
- Kruchten, P.; Obbink, H.; Stafford, J. The Past, Present, and Future for Software Architecture. IEEE Softw. 2006, 23, 22–30. [Google Scholar] [CrossRef]
- Bass, L.; Clements, P.; Kazman, R. Software Architecture in Practice, 3rd ed.; SEI Series in Software Engineering; Addison-Wesley: Upper Saddle River, NJ, USA, 2013. [Google Scholar]
- The Open Group Architecture Forum. The TOGAF® Standard, Version 9.2; The Open Group. 2018, Volume 9.2. Available online: https://pubs.opengroup.org/architecture/togaf9-doc/arch/ (accessed on 30 January 2024).
- Greefhorst, D.; Proper, E. Architecture Principles: The Cornerstones of Enterprise Architecture; Springer: Berlin/Heidelberg, Germany, 2011. [Google Scholar]
- Lago, P.; Koçak, S.A.; Crnkovic, I.; Penzenstadler, B. Framing sustainability as a property of software quality. Commun. ACM 2015, 58, 70–78. [Google Scholar] [CrossRef]
- Koziolek, H. Sustainability evaluation of software architectures: A systematic review. In Proceedings of the Joint ACM SIGSOFT Conference on Quality of Software Architectures (QoSA) and Architecting Critical Systems (ISARCS), Boulder, CO, USA, 20–24 June 2011; ACM Press: New York, NY, USA, 2011. [Google Scholar]
- Durdik, Z.; Klatt, B.; Koziolek, H.; Krogmann, K.; Stammel, J.; Weiss, R. Sustainability guidelines for long-living software systems. In Proceedings of the International Conference on Software Maintenance (ICSM), Trento, Italy, 23–28 September 2012; pp. 517–526. [Google Scholar]
- Kern, E.; Dick, M.; Naumann, S.; Guldner, A.; Johann, T. Green Software and Green Software Engineering— Definitions, Measurements, and Quality Aspects. In Proceedings of the International Conference of ICT for Sustainability (ICT4S), Zurich, Switzerland, 14–16 February 2013. [Google Scholar]
- Gupta, S.; Lago, P.; Donker, R. A Framework of Software Architecture Principles for Sustainability-driven Design and Measurement. In Proceedings of the International Conference on Software Architecture Companion (ICSA-C), Stuttgart, Germany, 22–26 March 2021. [Google Scholar]
- Doran, G.T. There’s a S.M.A.R.T. way to write management’s goals and objectives. Manag. Rev. 1981, 70, 35–36. [Google Scholar]
- Condori-Fernandez, N.; Lago, P.; Luaces, M.R.; Places, Á.S. An Action Research for Improving the Sustainability Assessment Framework Instruments. Sustainability 2020, 12, 1682. [Google Scholar] [CrossRef]
- Condori-Fernandez, N.; Lago, P. Characterizing the contribution of quality requirements to software sustainability. J. Syst. Softw. 2018, 137, 289–305. [Google Scholar] [CrossRef]
- Lago, P.; Condori-Fernandez, N. The Sustainability Assessment Framework (SAF) Toolkit: Instruments to Help Sustainability-Driven Software Architecture Design Decision Making. Available online: https://github.com/S2-group/SAF-Toolkit (accessed on 30 January 2024).
- Ishak, Z.; Fong, S.L.; Shin, S.C. SMART KPI Management System Framework. In Proceedings of the International Conference on System Engineering and Technology (ICSET), Shah Alam, Malaysia, 7 October 2019; pp. 172–177. [Google Scholar]
- Parmenter, D. Key Performance Indicators: Developing, Implementing, and Using Winning KPIs, 3rd ed.; Wiley: Hoboken, NJ, USA, 2015. [Google Scholar]
- Penzenstadler, B. Towards a definition of sustainability in and for software engineering. In Proceedings of the 28th Annual ACM Symposium on Applied Computing (SAC), Coimbra, Portugal, 18–22 March 2013; ACM Press: New York, NY, USA, 2013; p. 1183. [Google Scholar]
- Venters, C.C.; Capilla, R.; Betz, S.; Penzenstadler, B.; Crick, T.; Crouch, S.; Nakagawa, E.Y.; Becker, C.; Carrillo, C. Software sustainability: Research and practice from a software architecture viewpoint. J. Syst. Softw. 2018, 138, 174–188. [Google Scholar] [CrossRef]
- International Organization for Standardization [ISO]. Systems and Software Engineering—Systems and Software Quality Requirements and Evaluation (SQuaRE)—System and Software Quality Models; Technical Report ISO/IEC 25010:2011; ISO/IEC: Geneva, Switzerland, 2011. [Google Scholar]
- Lago, P. Architecture Design Decision Maps for Software Sustainability. In Proceedings of the International Conference on Software Engineering: Software Engineering in Society (ICSE-SEIS), Montreal, QC, Canada, 25–31 May 2019; pp. 61–64. [Google Scholar]
- Chaffey, D. OGSM Model: A Strategic Framework for Top-Down Vision Realization. Available online: https://www.smartinsights.com/marketing-planning/marketing-models/ogsm-model-framework/ (accessed on 30 January 2024).
- Darke, P.; Shanks, G.; Broadbent, M. Successfully Completing Case Study Research: Combining Rigour, Relevance and Pragmatism. Inf. Syst. J. 1998, 8, 273–289. [Google Scholar] [CrossRef]
- Runeson, P.; Höst, M. Guidelines for conducting and reporting case study research in software engineering. Empir. Softw. Eng. Int. J. 2009, 14, 131–164. [Google Scholar] [CrossRef]
- Brereton, P.; Kitchenham, B.; Budgen, D.; Li, Z.H. Using a Protocol Template for Case Study Planning. In Proceedings of the International Conference on Evaluation and Assessment in Software Engineering (EASE), Bari, Italy, 26–27 June 2008; BCS Learning and Development Ltd. 2008. Available online: https://www.scienceopen.com/hosted-document?doi=10.14236/ewic/EASE2008.5 (accessed on 30 January 2024).
- Brown, S. The C4 Model for Software Architecture. Available online: https://c4model.com (accessed on 8 July 2021).
- Müller, J.K. The Building Block Method: Component-Based Architectural Design for Large Software-Intensive Product Families. Ph.D. Thesis, Universiteit van Amsterdam, Amsterdam, The Netherlands, 2003. [Google Scholar]
- Kontio, J.; Bragge, J.; Lehtola, L. The Focus Group Method as an Empirical Tool in Software Engineering. In Guide to Advanced Empirical Software Engineering; Shull, F., Singer, J., Sjøberg, D.I.K., Eds.; Springer: London, UK, 2008; pp. 93–116. [Google Scholar]
- Felderer, M.; Travassos, G.H. (Eds.) Contemporary Empirical Methods in Software Engineering; Springer: Berlin/Heidelberg, Germany, 2020. [Google Scholar]
- Boehm, J.; Curcio, N.; Merrath, P.; Shenton, L.; Stähle, T. The Risk-Based Approach to Cybersecurity; McKinsey & Company: New York, NY, USA, 2020. [Google Scholar]
- Splunk Inc. Available online: https://www.splunk.com (accessed on 30 January 2024).
- IBM Maximo IT. Available online: https://www.ibm.com/products/maximo/it-asset-management (accessed on 30 January 2024).
- Atlassian. Jira—Issue & Project Tracking Software. Available online: https://www.atlassian.com/software/jira (accessed on 30 January 2024).
- Red Hat Inc. Official Red Hat OpenShift Documentation. Available online: https://docs.openshift.com (accessed on 30 January 2024).
- Qualys. IT Security and Compliance Platform. Available online: https://www.qualys.com (accessed on 30 January 2024).
- Andersen, B. Business Process Improvement Toolbox, 2nd ed.; ASQ Quality Press: Milwaukee, WI, USA, 2007. [Google Scholar]
- Kaczynski, D.; Wood, L.; Harding, A. Using radar charts with qualitative evaluation: Techniques to assess change in blended learning. Act. Learn. High. Educ. 2008, 9, 23–41. [Google Scholar] [CrossRef]
- Patro, S.K.; Sahu, K.K. Normalization: A Preprocessing Stage. Int. Adv. Res. J. Sci. Eng. Technol. 2015, 2, 20–22. [Google Scholar] [CrossRef]
- Boudon, R. What Middle-Range Theories Are; American Sociological Association, Sage Publications, Inc.: Washington, DC, USA, 1991. [Google Scholar]
- Wohlin, C.; Runeson, P.; Höst, M.; Ohlsson, M.C.; Regnell, B.; Wesslén, A. Experimentation in Software Engineering; Springer: Berlin/Heidelberg, Germany, 2012. [Google Scholar]
- Hristov, I.; Chirico, A. The Role of Sustainability Key Performance Indicators (KPIs) in Implementing Sustainable Strategies. Sustainability 2019, 11, 5742. [Google Scholar] [CrossRef]
- Kaplan, R.S.; Norton, D.P. The Balanced Scorecard-Measures That Drive Performance. Harv. Bus. Rev. 1992, 71–79. [Google Scholar]
- Kaplan, R.S.; Norton, D.P. Using the Balanced Scorecard as a Strategic Management System. Harv. Bus. Rev. 1996, 35–48. [Google Scholar]
- Chai, N. Sustainability Performance Evaluation System in Government: A Balanced Scorecard Approach Towards Sustainable Development; Springer: Berlin/Heidelberg, Germany, 2009. [Google Scholar]
- Verdecchia, R.; Lago, P.; Ebert, C.; De Vries, C. Green IT and Green Software. IEEE Softw. 2021, 38, 7–15. [Google Scholar] [CrossRef]
- Venters, C.C.; Jay, C.; Lau, L.; Griffiths, M.K.; Holmes, V.; Ward, R.R.; Austin, J.; Dibsdale, C.E.; Xu, J. Software sustainability: The modern tower of babel. In CEUR Workshop Proceedings; CEUR: Karlskrona, Sweden, 2014; Volume 1216, pp. 7–12. [Google Scholar]
- Venters, C.C.; Kocak, S.A.; Betz, S.; Brooks, I.; Capilla, R.; Chitchyan, R.; Duboc, L.; Heldal, R.; Moreira, A.; Oyedeji, S.; et al. Software Sustainability: Beyond the Tower of Babel. In Proceedings of the International Workshop on Body of Knowledge for Software Sustainability (BoKSS), Virtual, 22–30 May 2021; pp. 3–4. [Google Scholar]
- Groher, I.; Weinreich, R. An Interview Study on Sustainability Concerns in Software Development Projects. In Proceedings of the Euromicro Conference on Software Engineering and Advanced Applications (SEAA), Vienna, Austria, 30 August–1 September 2017; pp. 350–358. [Google Scholar]
- Koziolek, H.; Domis, D.; Goldschmidt, T.; Vorst, P. Measuring Architecture Sustainability. IEEE Softw. 2013, 30, 54–62. [Google Scholar] [CrossRef]
- Capilla, R.; Nakagawa, E.Y.; Zdun, U.; Carrillo, C. Toward Architecture Knowledge Sustainability: Extending System Longevity. IEEE Softw. 2017, 34, 108–111. [Google Scholar] [CrossRef]
- Ojameruaye, B.; Bahsoon, R.; Duboc, L. Sustainability debt: A portfolio-based approach for evaluating sustainability requirements in architectures. In Proceedings of the International Conference on Software Engineering Companion, Austin, TX, USA, 14–22 May 2016; ACM: New York, NY, USA, 2016; pp. 543–552. [Google Scholar]
- Naumann, S.; Dick, M.; Kern, E.; Johann, T. The GREENSOFT Model: A reference model for green and sustainable software and its engineering. Sustain. Comput. Informatics Syst. 2011, 1, 294–304. [Google Scholar] [CrossRef]
- Kalaitzoglou, G.; Bruntink, M.; Visser, J. A Practical Model for Evaluating the Energy Efficiency of Software Applications. In Proceedings of the International Conference on ICT for Sustainability (ICT4S), Stockholm, Sweden, 24–27 August 2014; pp. 77–86. [Google Scholar]
- Koçak, S.A.; Alptekin, G.I.; Bener, A.B. Evaluation of Software Product Quality Attributes and Environmental Attributes using ANP Decision Framework. In Proceedings of the Third International Workshop on Requirements Engineering for Sustainability Systems, Karlskrona, Sweden, 26 August 2014; pp. 37–44. [Google Scholar]
- Manotas, I.; Bird, C.; Zhang, R.; Shepherd, D.; Jaspan, C.; Sadowski, C.; Pollock, L.; Clause, J. An empirical study of practitioners’ perspectives on green software engineering. In Proceedings of the International Conference on Software Engineering, Austin, TX, USA, 14–22 May 2016; ACM: New York, NY, USA, 2016; pp. 237–248. [Google Scholar]
- Andrikopoulos, V.; Lago, P. Software Sustainability in the Age of Everything as a Service. In Next-Gen Digital Services. A Retrospective and Roadmap for Service Computing of the Future; LNCS; Aiello, M., Bouguettaya, A., Tamburri, D.A., van den Heuvel, W.J., Eds.; Springer: Berlin/Heidelberg, Germany, 2021; Volume 12521, pp. 35–47. [Google Scholar]
- Saputri, T.R.D.; Lee, S.W. Software Analysis Method for Assessing Software Sustainability. Int. J. Softw. Eng. Knowl. Eng. 2020, 30, 67–95. [Google Scholar] [CrossRef]
- Penzenstadler, B.; Raturi, A.; Richardson, D.; Tomlinson, B. Safety, Security, Now Sustainability: The Nonfunctional Requirement for the 21st Century. IEEE Softw. 2014, 31, 40–47. [Google Scholar] [CrossRef]
- Mahmoud, S.S.; Ahmad, I. A Green Model for Sustainable Software Engineering. Int. J. Softw. Eng. Its Appl. 2013, 7, 20. [Google Scholar]
- Verdecchia, R.; Lago, P.; Malavolta, I.; Ozkaya, I. ATDx: Building an Architectural Technical Debt Index. In Proceedings of the International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE), Prague, Czech Republic, 5–6 May 2020; SciTePress: Setúbal, Portugal, 2020; pp. 531–539. [Google Scholar]
- Sehestedt, S.; Cheng, C.H.; Bouwers, E. Towards quantitative metrics for architecture models. In Proceedings of the WICSA 2014 Companion Volume, Sydney, Australia, 7 April 2014; ACM Press: New York, NY, USA, 2014; pp. 1–4. [Google Scholar]
- Verdecchia, R.; Kruchten, P.; Lago, P.; Malavolta, I. Building and evaluating a theory of architectural technical debt in software-intensive systems. J. Syst. Softw. 2021, 176, 110925. [Google Scholar] [CrossRef]
- International Organization for Standardization [ISO]. Systems and Software Engineering—Systems and Software Quality Requirements and Evaluation (SQuaRE)—Quality Measurement Framework; Technical Report ISO/IEC 25020:2019; International Organization for Standardization [ISO]: Geneva, Switzerland, 2019. [Google Scholar]
- Khanjani, A.; Rahman, W.N.W.A.; Ghani, A.A.A.; Sultan, A.B.M. SaaS Quality of Service Attributes. J. Appl. Sci. 2014, 14, 3613–3619. [Google Scholar] [CrossRef]
Concept | Full Name | Rationale | Reference |
---|---|---|---|
KPI | Key Performance Indicator | Define measurable business objectives and monitor the impact of architecture principles on sustainability. | Parmenter [8] |
SMART | Specific; Measurable; Achievable; Relevant; Time phased | Evaluation criteria of the conditions and relevance of a certain KPI. | Doran [18] |
SQ model | Sustainability-Quality (SQ) Model | Captures for each sustainability-quality concern definitions regarding their context. | Condori-Fernandez et al. [19] |
D-matrix | Dependency Matrix | Identifying and uncovering missing sustainability-quality concerns. | Condori-Fernandez and Lago [20] |
DM | Decision Map | Diagram framing and illustrating the sustainability-relevant design- and quality concerns and their related dependencies. | Lago et al. [13] |
SAF-Toolkit | Sustainability Assessment Framework (SAF) Toolkit | A set of instruments (D-Matrix, SQ model, DM) to design the network of sustainability-quality concerns at the software architecture level. | Lago and Condori-Fernandez [21] |
PRSM | Principle; Rationale; Sustainability Quality Attribute; Metric | Performs the sustainability analysis for one concrete software architecture principle by mapping sustainability quality attributes and KPIs. (tool-agnostic model) | Gupta et al. [17] |
PRSM+T | Principle; Rationale; Sustainability Quality Attribute; Metric; plus Tool | Extension of the PRSM model by attaching tools necessary to capture concrete measurements for one particular KPI. (tool-dependent model) | this present research |
ID | Role | Responsibilities | Experience |
---|---|---|---|
P#1 | Software Architect | PCS Market Portal & PCS Messaging Portal | 16 |
P#2 | Enterprise Architect | General Architecture & PCS Core | 32 |
P#3 | Solution Architect | General Architecture & PCS Core | 27 |
P#4 | Cyber Security Officer | Governance & Security | 21 |
P#5 | Developer | PCS Core & Master Data | 16 |
Tier and Description | Architecture Principle and Rationale |
---|---|
PCS Market Portal Offers various options (i.e., communication protocols) for customers to communicate with the PCS solution and send cargo related messages. The incoming external message format will be translated into an internal format. | “Use the Airport Service Bus (ASB) for sharing/exchanging of operational data between applications and parties where routing, filtering, data transformation (integration rules) or transport transformation capabilities are needed.” The ASB is an integration platform, as it adds functionalities to integrate two or more known systems. ASB incorporates routing, transformation, aggregation, throttling, basic reliable messaging, and user management. However, the ASB causes greater integration overheads, due to increased data exchange as the number of connected applications increases. |
PCS Messaging Portal Messages delivered via one of the communication protocols implemented at the PCS Market Portal are processed. An incoming message triggers the creation or an update of the cargo case. | “SaaS goes above PaaS; PaaS goes above IaaS; IaaS goes above On-Premise.” SaaS solutions help in reducing the cost and maintenance overheads of running cloud services. The technical knowledge does not need to be at company level and can be pass to the provider. This minimizes the risk of incidents. Nevertheless, it must be ensured that the cloud solution complies with the company infrastructure and can be integrated. |
PCS Core Responsible for the use-case-management, validation, orchestration, and persistent storing of cargo cases. | “The system is made of loosely coupled components.” Many different communication protocols are supported to deliver or request cargo-related information. To be able to handle all kinds of communication, loosely coupled components are necessary. For instance, the PCS core system is implemented in sub-components and is loosely coupled to the business engine, which is implemented outside of the core. In addition, the responsibilities of the components are distributed across different layers; messages are used for communication between these layers (i.e., API). |
Governance & Security Compliance with law regulations, Schiphol Group cyber security requirements, and Schiphol Group architecture principles to ensure security and safety across the PCS solution. | “Always authenticate data flows and information requested by internal and external users.” The PCS implementation consists of multiple different components, which require specific authentication and authorization capabilities. By following the “need-to-know” principle, user access controls and authorization procedures can be enforced. The objective is to ensure that only authorized individuals gain access to the information or systems necessary to undertake their duties. |
KPI | Name | Definition (Unit in Bold) | Goal | QA & Dimension | ||
---|---|---|---|---|---|---|
⁎ | MSGC | Message Capacity | Ratio (msg/min) of total processed messages and a certain time period (i.e., one minute). | ETO2 | Scalability | |
⁎ | NoDaR | Number of Defects after Release | Number of defects of systems other than the changed system, after a release was published. | ETO2 | Modularity | |
S | NoSI | Number of Security Incidents | Number of security incidents accruing to hosts which are involved into authentication. | ETO2 | Integrity; Confidentiality | |
⁎ | ToM | Throughput of ASB Messages | Time of message delay between in-going and out-going. | ETO2 | Time behaviour | |
S⁎ | UPT | Up-Time | Ratio (%) of total run-time and the total available time of the SaaS solutions. | ETO2 | Faulttolerance | Availability |
S⁎ | CpC | Costs per Change | Costs (EUR) per changes per component. | PR2 | Effectiveness | |
S⁎ | CRS | Cyber Risk Score | Rating (0–100) of the cyber risk based on the performed business impact analysis (BIA) and the ratio of the normalized availability, integrity, confidentiality score. | CIO1 | Economic Risk Mitigation | |
⁎ | SPBI | Story Points for LCM Backlog Items | Number of story points for life cycle management (LCM) backlog items. | ETO2 | Serviceability | |
⁎ | NoOWN | Number of OpenShift Worker Nodes | Number of OpenShift Worker Nodes (i.e., Pods) grows with required system performance. | ETO2 | Scalability | Scalability |
S⁎ | NoCaDF | Number of Channels and Data Formats | Number of channels and data formats available for data exchange. | ETO1 | Interoperability | |
⁎ | NoTSV | Number of TLS/SSL Vulnerabilities | Number of vulnerabilities regarding TSL or SSL. | DAI3 | Data Privacy | |
S | OCS | Overall Customer Satisfaction | Rating (1–10) of the overall customer satisfaction of internal and external customers as well as testers. | ASM4 | Usefulness | |
S | NoETBB | Number of ET Building Blocks | Number of enabling technology (ET) building blocks that have been reused. | ETO1 | Reusability | |
S⁎ | SRS | Security Risk Score | Rating (1–5) of the security risk based on the vulnerabilities regarding data of relevant hosts. | CIO1 | Health & Safety Risk Mitigation |
KPI | Name | S | M | A | R | T |
---|---|---|---|---|---|---|
MSGC | Message Capacity | ⬤ | ⬤ | ⬤ | ⬤ | ⬤ |
NoDaR | Number of Defects after Release | 🞅 | 🞭 | 🞅 | ⬤ | ⬤ |
NoSI | Number of Security Incidents | ⬤ | ⬤ | 🞅 | ⬤ | ⬤ |
ToM | Throughput of ASB Messages | ⬤ | ⬤ | ⬤ | ⬤ | ⬤ |
UPT | Up-Time | ⬤ | ⬤ | ⬤ | ⬤ | ⬤ |
CpC | Costs per Change | 🞅 | 🞭 | 🞅 | ⬤ | ⬤ |
CRS | Cyber Risk Score | ⬤ | ⬤ | 🞅 | ⬤ | ⬤ |
SPBI | Story Points for LCM Backlog Items | ⬤ | 🞭 | ⬤ | ⬤ | ⬤ |
NoOWN | Number of OpenShift Worker Nodes | 🞅 | 🞭 | 🞅 | 🞅 | ⬤ |
NoCaDF | Number of Channels and Data Formats | ⬤ | 🞅 | ⬤ | ⬤ | ⬤ |
NoTSV | Number of TLS/SSL Vulnerabilities | ⬤ | ⬤ | 🞅 | ⬤ | ⬤ |
OCS | Overall Customer Satisfaction | ⬤ | ⬤ | 🞅 | ⬤ | ⬤ |
NoETBB | Number of ET Building Blocks | ⬤ | 🞭 | ⬤ | ⬤ | ⬤ |
SRS | Security Risk Score | ⬤ | ⬤ | 🞅 | ⬤ | ⬤ |
Tool | Capability | Automation | QA & Dimension | |
---|---|---|---|---|
Splunk [37] | As “data-to-everything platform”, Splunk offers various capabilities for logging, monitoring, and reporting for all different kinds of data created on an application, server, and network level. We consider Splunk as a key instrument to measure KPIs, as it offers the greatest variety of possible measurements. | ✔ |
|
|
IBM Control Desk [38] | Provides monitoring for all information system layers. Hence, calculation of the number of applicable building Blocks per software solution and security incidents can be retrieved. | ✔ |
|
|
Business Impact Analysis | BIA is used to systematically determine potential cyber security risks of a certain information system before implementing it (planning stage). The outcome is a cyber risk score between 0 (best) and 100 (worst). Using external tools (e.g., OneTrust, LLC.), automation is possible. | 🞅 |
| |
Jira Software [39] | Jira itself does not consider actual financial values (e.g., € or $); instead, all values are implicitly related to financial values and indicated as story points. A story point refers to a certain number of labor hours and these, in turn, refer to an actual financial value. | ✔ |
| |
OpenShift [40] | Red Hat OpenShift offers a containerization platform for cloud computing. To monitor scalability in terms of worker nodes (i.e., number of pods), the Monitoring API (i.e., Prometheus) was used. | ✔ |
|
|
Qualys Inc. [41] | The tool enables auditing, cloud security, and compliance checking for IT infrastructures. We used the security risk score computed for the hosts responsible for authentication and private data. | ✔ |
|
|
Surveys | Used to systematically obtain information about the attitudes, opinions, and behaviors of the people. These can be oral or written, and structured or with open questions. Even though automatic survey tools are available, such surveys have to be created and interpreted manually. | 🞭 |
|
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Funke, M.; Lago, P.; Verdecchia, R.; Donker, R. A Process for Monitoring the Impact of Architecture Principles on Sustainability: An Industrial Case Study. Software 2024, 3, 107-145. https://doi.org/10.3390/software3010006
Funke M, Lago P, Verdecchia R, Donker R. A Process for Monitoring the Impact of Architecture Principles on Sustainability: An Industrial Case Study. Software. 2024; 3(1):107-145. https://doi.org/10.3390/software3010006
Chicago/Turabian StyleFunke, Markus, Patricia Lago, Roberto Verdecchia, and Roel Donker. 2024. "A Process for Monitoring the Impact of Architecture Principles on Sustainability: An Industrial Case Study" Software 3, no. 1: 107-145. https://doi.org/10.3390/software3010006
APA StyleFunke, M., Lago, P., Verdecchia, R., & Donker, R. (2024). A Process for Monitoring the Impact of Architecture Principles on Sustainability: An Industrial Case Study. Software, 3(1), 107-145. https://doi.org/10.3390/software3010006