Abstract
Advances in model-based system engineering have greatly increased the predictive power of models and the analyses that can be run on them. At the same time, designs have become more modular and component-based. It can be difficult to manually explore all possible system designs due to the sheer number of possible architectures and configurations; trade space exploration has arisen as a solution to this challenge. In this work, we present a new software tool: the Guided Architecture Trade Space Explorer (GATSE), which connects an existing model-based engineering language (AADL) and modeling environment (OSATE) to an existing trade space exploration tool (ATSV). GATSE, AADL, and OSATE are all designed to be easily extended by users, which enables relatively straightforward domain-customizations. ATSV, combined with these customizations, lets system designers “shop” for candidate architectures and interactively explore the architectural trade space according to any quantifiable quality attribute or system characteristic. We evaluate GATSE according to an established framework for variable system architectures, and demonstrate its use on an avionics subsystem.
Similar content being viewed by others
Notes
Though we attempt to adhere to the intuitive meaning behind Koziolek’s definitions, we do not reproduce them in their entirety as they rely heavily on her specific approach and formalization. We elide things like variable or function names; refer to Table 6.3 of her dissertation for the full definitions [31].
Notably, the definition of “demand” is somewhat flexible: Bertolino and Strigini define it as a sequence of inputs and suggest in the avionics domain an entire mission could be considered one demand [8].
To our knowledge, ours is the first open-source implementation of their algorithm.
See the org.osate.gtse.config.* packages in https://github.com/osate/osate2-gtse.
Qualified relative to the extended element, see line 5 of Listing 3.
We note that this is roughly five times faster than the initial reported speed [36]. The speedup is primarily due to improved hardware.
References
Abdeen, H., Nagy, A.S., Varró, D., Hegedüs, Á., Sahraoui, H., Horváth, Á.: Multi-objective optimization in rule-based design space exploration. In: ASE 2014 - Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering, pp. 289–300. Association for Computing Machinery, Inc, Vasteras, Sweden (2014). https://doi.org/10.1145/2642937.2643005
Adventium Labs: https://www.adventiumlabs.com/demonstration-combined-use-dse-rbd-and-tse-trade-space-analysis (2017). Accessed: August 15, 2018
Aleti, A., Bjornander, S., Grunske, L., Meedeniya, I.: ArcheOpterix: An extendable tool for architecture optimization of AADL models. In: 2009 ICSE Workshop on Model-Based Methodologies for Pervasive and Embedded Software, pp. 61–71. IEEE, Vancouver, Canada (2009). https://doi.org/10.1109/MOMPES.2009.5069138
Bąk, K., Czarnecki, K., Wąsowski, A.: Feature and meta-models in clafer: Mixed, specialized, and coupled. In: Malloy, B., Staab, S., van den Brand, M. (eds.) Software Language Engineering (SLE10), pp. 102–122. Springer, Berlin (2011)
Balling, R.: Design by shopping: a new paradigm? In: Proceedings of the Third World Congress of Structural and Multidisciplinary Optimization (WCSMO-3), pp. 295–297. Buffalo, NY (1999)
Becker, S., Koziolek, H., Reussner, R.: The Palladio component model for model-driven performance prediction. J. Syst. Softw. 82(1), 3–22 (2009). https://doi.org/10.1016/J.JSS.2008.03.066
Berre, D.L., Parrain, A.: The SAT4J library, release 2.2, system description. J. Satisfiab. Boolean Model. Comput. 7, 59–64 (2010)
Bertolino, A., Strigini, L.: Assessing the risk due to software faults: estimates of failure rate versus evidence of perfection. Software Testing, Verification and Reliability 8(3), 155–166 (1998). https://doi.org/10.1002/(SICI)1099-1689(1998090)8:3<155::AID-STVR163>3.0.CO;2-B. http://onlinelibrary.wiley.com/doi/10.1002/(SICI)1099-1689(1998090)8:3%3C155::AID-STVR163%3E3.0.CO;2-B/full
Bishop, P., Bloomfield, R., Littlewood, B., Povyakalo, A., Wright, D.: Toward a formalism for conservative claims about the dependability of software-based systems. IEEE Trans. Softw. Eng. 37(5), 708–717 (2011). https://doi.org/10.1109/TSE.2010.67, http://ieeexplore.ieee.org/document/5492693/
Bozzano, M., Cimatti, A., Fernandes Pires, A., Jones, D., Kimberly, G., Petri, T., Robinson, R., Tonetta, S.: Formal design and safety analysis of AIR6110 wheel brake system. In: D. Kroening, C. Păsăreanu (eds.) Computer aided Verification (CAV), pp. 518–535. Springer, Cham, San Francisco, California, USA (2015). https://doi.org/10.1007/978-3-319-21690-4_36
Chilenski, J.J., Ward, D.T.: System architecture virtual integration SAVI AFE 59S1 report summary final report. Tech. rep, System Architecture Virtual Integration (2015)
Clark, B., Miller, C., McCurley, J., Zubrow, D., Brown, R., Zuccher, M.: Department of defense software factbook. Tech. Rep. CMU/SEI-2017-TR-004, Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA (2017)
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002). https://doi.org/10.1109/4235.996017
Delange, J., Feiler, P., Gluch, D., Hudak, J.: AADL Fault Modeling and Analysis Within an ARP4761 Safety Assessment. Software Engineering Institute, Carnegie Mellon University, Pittsburgh, Pennsylvania, USA, Tech. rep. (2014)
Diewald, A., Voss, S., Barner, S.: A Lightweight design space exploration and optimization language. In: Proceedings of the 19th International Workshop on Software and Compilers for Embedded Systems - SCOPES ’16, pp. 190–193. ACM Press, New York, New York, USA (2016). https://doi.org/10.1145/2906363.2906367
DoD Architecture Framework Working Group: DoD Architecture Framework Version 1.0. Tech. rep., United States Department of Defense (2003)
Eder, J., Voss, S.: Usable design space exploration in AutoFOCUS3. In: Workshop on Open Source Software for Model-Driven Engineering (OSS4MDE), in conjunction with MODELS conference. Brittany, France (2016)
Ericson II, C.A.: Hazard Analysis Techniques for System Safety, 2nd edn. Wiley, New York (2016)
Esfahani, N., Malek, S., Razavi, K.: GuideArch: guiding the exploration of architectural solution space under uncertainty. In: Proceedings of the 2013 International Conference on Software Engineering, pp. 43–52. IEEE Press, San Francisco, USA (2013)
Feiler, P., Delange, J.: Automated fault tree analysis from aadl models. Ada Lett. 36(2), 39–46 (2017). https://doi.org/10.1145/3092893.3092900
Feiler, P., Gluch, D.: Model-Based Engineering with AADL, 1st edn. Addison-Wesley Professional, Upper Saddle River, NJ (2012)
Feiler, P., Hansson, J., de Niz, D., Wrage, L.: System Architecture Virtual Integration: An Industrial Case Study. Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, Tech. rep. (2009)
Frank, S., van Hoorn, A.: SQuAT-Vis: visualization and interaction in software architecture optimization. In: A. Jansen, I. Malavolta, H. Muccini, I. Ozkaya, O. Zimmermann (eds.) European Conference on Software Architecture (ECSA20), pp. 107–119. Springer, Cham, L’Aquila, Italy (2020). https://doi.org/10.1007/978-3-030-59155-7_9
Friedenthal, S., Moore, A., Steiner, R.: A Practical Guide to SysML: The Systems Modeling Language. Morgan Kaufmann, Amsterdam (2014)
Harman, M., Mansouri, S.A., Zhang, Y.: Search-based software engineering: trends, techniques, and applications. ACM Comput. Surv. 45(1), 1–61 (2012). https://doi.org/10.1145/2379776.2379787
Hegedüs, Á., Horváth, Á., Varró, D.: A model-driven framework for guided design space exploration. Autom. Softw. Eng. 22(3), 399–436 (2015). https://doi.org/10.1007/s10515-014-0163-1
Hwang, C.L., Masud, A.S.M.: Multiple objective decision making - methods and applications: a state-of-the-art survey. Lecture Notes in Economics and Mathematical Systems, vol. 164. Springer, Heidelberg (1979)
Iacobucci, J.V.: Rapid architecture alternative modeling (Raam): a framework for capability-based analysis of system of systems architectures. Ph.D. thesis, Georgia Institute of Technology (2012)
Kerzhner, A.A.: Using logic-based approaches to explore system architectures for systems engineering. Ph.D. thesis, Georgia Institute of Technology (2012)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: Akşit, M., Matsuoka, S. (eds.) ECOOP’97 – Object-Oriented Programming, pp. 220–242. Springer, Berlin (1997)
Koziolek, A.: Automated improvement of software architecture models for performance and other quality attributes. Ph.D. thesis, Institut für Programmstrukturen und Datenorganisation (IPD) (2013). https://doi.org/10.5445/KSP/1000032342
Kroening, D., Strichman, O.: Decision Procedures: An Algorithmic Point of View, 2nd edn. Springer, Berlin (2016). https://doi.org/10.1007/978-3-662-50497-0
de Moura, L., Bjørner, N.: Z3: An efficient smt solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) Tools and Algorithms for the Construction and Analysis of Systems (TACAS08), pp. 337–340. Springer, Berlin (2008)
Owens, B., Leveson, N.: A comparative look at MBU hazard analysis techniques. In: Annual Military and Aerospace Programmable Logic Device International Conference(MAPLD), pp. 1–11. Washington DC, USA (2006). http://sunnyday.mit.edu/papers/Owens-mapld.pdf
Procter, S.: Guided architecture trade space exploration for safety-critical software systems. Presentation (2017)
Procter, S., Wrage, L.: Guided architecture trade space exploration: fusing model based engineering design by shopping. In: 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 117–127 (2019). https://doi.org/10.1109/MODELS.2019.000-9
Rago, A., Vidal, S., Andres Diaz-Pace, J., Frank, S., Van Hoorn, A.: Distributed qality-atribute optimization of sofware architectures. In: Proceedings of the 11th Brazilian Symposium on Software Components, Architectures, and Reuse (SBCARS17), vol. Part F1306, pp. 1–10. Association for Computing Machinery, Fortaleza, CE, Brazil (2017). https://doi.org/10.1145/3132498.3132509
Ross, J.A., Murashkin, A., Liang, J.H., Antkiewicz, M., Czarnecki, K.: Synthesis and exploration of multi-level, multi-perspective architectures of automotive embedded systems. Software & Systems Modeling pp. 1–29 (2017). https://doi.org/10.1007/s10270-017-0592-y
Aerospace, S.A.E.: AIR6110: Contiguous Aircraft/System Development Process Example. Tech. rep, SAE International (2011)
SAE AS-2C Architecture Description Language Subcommittee: SAE Architecture Analysis and Design Language (AADL) Annex Volume 2: Annex B: Behavior Annex. Tech. rep., SAE International (2011)
SAE AS-2C Architecture Description Language Subcommittee: SAE Architecture Analysis and Design Language (AADL) Annex Volume 1: Annex A: ARINC653 Annex. Tech. rep., SAE International (2015)
SAE AS-2C Architecture Description Language Subcommittee: SAE Architecture Analysis and Design Language (AADL) Annex Volume 1: Annex E: Error Model Annex. Tech. rep., SAE International (2015)
Selva, D., Crawley, E.F.: VASSAR: Value assessment of system architectures using rules. In: IEEE Aerospace Conference Proceedings, pp. 1–21. IEEE, Big Sky, Montana (2013). https://doi.org/10.1109/AERO.2013.6496936
Simpson, T., Carlsen, D., Congdon, C., Stump, G., Yukish, M.A.: Trade space exploration of a wing design problem using visual steering and multi-dimensional data visualization. In: 49th AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics, and Materials Conference. Schaumburg, IL (2008). https://doi.org/10.2514/6.2008-2139
Society for Automotive Engineers Inc: ARP4754: Certification Considerations for Highly-Integrated or Complex Aircraft Systems. Tech. rep, SAE International (1996)
Society for Automotive Engineers Inc: ARP4761: Guidelines and Methods for Conducting the Safety Assessment Process on Civil Airborne Systems and Equipment. Tech. rep, SAE International (1996)
Stewart, D., Whalen, M.W., Cofer, D., Heimdahl, M.P.: architectural modeling and analysis for safety engineering. In: M. Bozzano, Y. Papadopolous (eds.) Proceedings of International Symposium on Model-Based Safety and Assessment (IMBSA 2017), pp. 97–111 (2017). https://doi.org/10.1007/978-3-319-64119-5_7
Stump, G., Lego, S., Yukish, M., Simpson, T.W., Donndelinger, J.A.: Visual steering commands for trade space exploration: user-guided sampling with example. J. Comput. Inf. Sci. Eng. 9(4), 044501 (2009). https://doi.org/10.1115/1.3243633
Stump, G., Yukish, M., Martin, J., Simpson, T.: The ARL trade space visualizer: an engineering decision-making tool. In: 10th AIAA/ISSMO Multidisciplinary Analysis and Optimization Conference. Albany, New York (2004). https://doi.org/10.2514/6.2004-4568
Stump, G., Yukish, M., Simpson, T., Harris, E.N.: Design space visualization and its application to a design by shopping paradigm. In: 29th Design Automation Conference, Parts A and B, vol. 2003, pp. 795–804. ASME, Chicago, Illinois, USA (2003). https://doi.org/10.1115/DETC2003/DAC-48785
Tseitin, G.S.: On the complexity of derivation in propositional calculus. In: Leningrad Seminar on Mathematical Logic, pp. 1–11. Leningrad (1966)
Verendel, V.: Quantified security is a weak hypothesis. In: Proceedings of the 2009 workshop on New security paradigms workshop - NSPW ’09, p. 37. ACM Press, New York, New York, USA (2009). https://doi.org/10.1145/1719030.1719036
Watkins, C.: Integrated modular avionics: managing the allocation of shared intersystem resources. In: 2006 IEEE/AIAA 25TH Digital Avionics Systems Conference, pp. 1–12. IEEE, Portland, OR (2006). https://doi.org/10.1109/DASC.2006.313743
Zantema, H., Groote, J.F.: Transforming equality logic to propositional logic. In: FTP’2003, 4th International Workshop on First-Order Theorem Proving (in connection with RDP’03, Federated Conference on Rewriting, Deduction and Programming), pp. 162—-173 (2003). https://doi.org/10.1016/S1571-0661(04)80661-3
Zimmermann, H.J.: Fuzzy Set Theory–and Its Applications, 4th edn. Springer, Dordrecht (2001). https://doi.org/10.1007/978-94-010-0646-0
Acknowledgements
The authors wish to thank Julien Delange, Min Young Nam, and Peter Feiler for the original concept and feedback; Joseph Seibel for the configuration validator implementation; and the anonymous reviewers for their feedback which has been invaluable in improving this paper. We also gratefully acknowledge the assistance of Gary Stump and Penn State University’s Applied Research Laboratory for their help and the modifications made to ATSV as a result of this effort.
Copyright 2021 Carnegie Mellon University.
This material is based upon work funded and supported by the Department of Defense under Contract No. FA8702-15-D-0002 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center.
NO WARRANTY. THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHED ON AN “AS-IS” BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT.
[DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribution. Please see Copyright notice for non-US Government use and distribution. DM21-0323
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Tao Yue, Man Zhang, and Silvia Abrahao.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Procter, S., Wrage, L. Guided architecture trade space exploration: fusing model-based engineering and design by shopping. Softw Syst Model 20, 2023–2045 (2021). https://doi.org/10.1007/s10270-021-00889-8
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-021-00889-8