Skip to main content
Log in

Guided architecture trade space exploration: fusing model-based engineering and design by shopping

  • Special Section Paper
  • Published:
Software and Systems Modeling Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

Notes

  1. http://www.ellidiss.fr/public/wiki/inspector.

  2. https://www.adventiumlabs.com/our-work/products-services/model-based-engineering-mbe-tools.

  3. https://osate.org.

  4. 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].

  5. 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].

  6. https://github.com/osate/osate2-gtse.

  7. To our knowledge, ours is the first open-source implementation of their algorithm.

  8. See the org.osate.gtse.config.* packages in https://github.com/osate/osate2-gtse.

  9. https://www.eclipse.org/Xtext/.

  10. Qualified relative to the extended element, see line 5 of Listing  3.

  11. https://github.com/osate/osate2-gtse/.

  12. https://commons.apache.org/proper/commons-math/.

  13. We note that this is roughly five times faster than the initial reported speed [36]. The speedup is primarily due to improved hardware.

References

  1. 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

  2. Adventium Labs: https://www.adventiumlabs.com/demonstration-combined-use-dse-rbd-and-tse-trade-space-analysis (2017). Accessed: August 15, 2018

  3. 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

  4. 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)

    Chapter  Google Scholar 

  5. 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)

  6. 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

    Article  Google Scholar 

  7. Berre, D.L., Parrain, A.: The SAT4J library, release 2.2, system description. J. Satisfiab. Boolean Model. Comput. 7, 59–64 (2010)

    Article  Google Scholar 

  8. 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

  9. 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/

  10. 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

  11. Chilenski, J.J., Ward, D.T.: System architecture virtual integration SAVI AFE 59S1 report summary final report. Tech. rep, System Architecture Virtual Integration (2015)

  12. 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)

  13. 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

    Article  Google Scholar 

  14. 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)

  15. 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

  16. DoD Architecture Framework Working Group: DoD Architecture Framework Version 1.0. Tech. rep., United States Department of Defense (2003)

  17. 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)

  18. Ericson II, C.A.: Hazard Analysis Techniques for System Safety, 2nd edn. Wiley, New York (2016)

    Google Scholar 

  19. 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)

  20. 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

    Article  Google Scholar 

  21. Feiler, P., Gluch, D.: Model-Based Engineering with AADL, 1st edn. Addison-Wesley Professional, Upper Saddle River, NJ (2012)

    Google Scholar 

  22. 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)

  23. 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

  24. Friedenthal, S., Moore, A., Steiner, R.: A Practical Guide to SysML: The Systems Modeling Language. Morgan Kaufmann, Amsterdam (2014)

    Google Scholar 

  25. 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

    Article  Google Scholar 

  26. 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

    Article  Google Scholar 

  27. 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)

  28. 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)

  29. Kerzhner, A.A.: Using logic-based approaches to explore system architectures for systems engineering. Ph.D. thesis, Georgia Institute of Technology (2012)

  30. 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)

  31. 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

  32. 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

  33. 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)

    Google Scholar 

  34. 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

  35. Procter, S.: Guided architecture trade space exploration for safety-critical software systems. Presentation (2017)

  36. 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

  37. 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

  38. 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

  39. Aerospace, S.A.E.: AIR6110: Contiguous Aircraft/System Development Process Example. Tech. rep, SAE International (2011)

  40. 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)

  41. 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)

  42. 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)

  43. 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

  44. 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

  45. Society for Automotive Engineers Inc: ARP4754: Certification Considerations for Highly-Integrated or Complex Aircraft Systems. Tech. rep, SAE International (1996)

  46. 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)

  47. 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

  48. 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

  49. 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

  50. 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

  51. Tseitin, G.S.: On the complexity of derivation in propositional calculus. In: Leningrad Seminar on Mathematical Logic, pp. 1–11. Leningrad (1966)

  52. 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

  53. 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

  54. 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

  55. Zimmermann, H.J.: Fuzzy Set Theory–and Its Applications, 4th edn. Springer, Dordrecht (2001). https://doi.org/10.1007/978-94-010-0646-0

Download references

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

Authors

Corresponding author

Correspondence to Sam Procter.

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

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-021-00889-8

Keywords

Navigation