Abstract
What is the role of a software architecture when building a large software system, for instance a command and control system for defense purposes? How it is created? How it is managed? In which way can we form software architects for this kind of systems? We describe an experience of designing and teaching several editions of a course on software architecture in the context of a large system integrator of defense mission-critical systems—ranging from air traffic control to vessel traffic control systems—namely SELEX Sistemi Integrati, a company of the Finmeccanica group. In the last few years, the company has been engaged in a comprehensive restructuring initiative for valorizing existing software assets and products and enhancing their productivity for software development. The course was intended as a baseline introduction to a School of Complex Software Systems for the many software engineers working in the company.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Barbi E, Cantone G, Falessi D, Morciano F, Rizzuto M, Sabbatino V, Scarrone S (2012) A model-driven approach for configuring and deploying systems of systems. In: Proceedings of IEEE international conference on systems of systems engineering—SOSE. IEEE Computer Society Press, Genoa, Italy, pp 214–218
Bass L, Kazman R, Clements P (2012) Software architecture in practice, 3rd edn. Addison-Wesley, Reading
Buschmann F, Meunier R, Rohnert H, Sommerlad P, Stal M (1996) Pattern-oriented software architecture: a system of patterns, vol 1. Wiley, New York
Ciancarini P, Franzè F, Mascolo C (2000) Using a coordination language to specify and analyze systems containing mobile components. ACM Trans Softw Eng Methodol 9(2):167–198
Ciancarini P, Russo S (2014) Teaching software architecture in industrial and academic contexts: similarities and differences. In: Yu L (ed) Overcoming challenges in software engineering education: delivering non-technical knowledge and skills. Advances in higher education and professional development. IGI Global, pp 397–413
Clements P, Northrop L (2002) Software product lines. practices and patterns. Addison-Wesley, Reading
Clements P et al (2010) Documenting software architectures—views and beyond, 2nd edn. Addison-Wesley, Reading
Delligatti L (2014) SysML distilled. AddisonWesley/The OMG Press, UK
Friedenthal S (2008) A practical guide to SysML: the systems modeling language. Morgan Kaufmann/The OMG Press
Gamma E, Helm R, Johnson R, Vlissides J (1995) Design patterns. Addison-Wesley, Reading
Gomaa H (2005) Designing software product lines with UML. Addison-Wesley, Reading
Gorton I (2011) Essential software architecture. Springer, Berlin
Holt J, Perry S (2013) SysML for system engineering. IET
Lago P, van Vliet H (2005) Teaching a course on software architecture. In Proceedings of 18th IEEE conference on software engineering education and training (CSEET). IEEE Computer Society, pp 35–42
Larman C (2004) Applying UML and patterns: An introduction to object-oriented analysis and design and iterative development. Prentice-Hall, Englewood Cliffs
Muller G (2004) Experiences of teaching systems architecting. In: Proceedings of international council on systems engineering (INCOSE) symposium, pp 1–13
Qian K, Fu X, Tao L, Xu C (2006) Software architecture and design illuminated. Jones and Bartlett, Burlington
Rozanski N, Woods E (2012) Software systems architecture, 2nd edn. Addison-Wesley, Reading
Sabbatino V, Arecchi A, Lanciotti R, Leardi A, Tonni V (2012) Modelling the software architecture of large systems. In: Proceedings of IEEE international conference on systems of systems engineering—SOSE. IEEE Computer Society Press, Genoa, Italy, pp 1–7
Schmidt D, Stal M, Rohnert H, Buschmann F (2000) Pattern-oriented software architecture: patterns for concurrent and networked objects, vol 2. Wiley, New York
Shaw M, Clements P (2006) The golden age of software architecture. IEEE Softw 23(2):31–39
Shaw M, Garlan D (1996) Software architecture. perspectives on an emerging discipline. Prentice-Hall, Englewood Cliffs
Stahl T, Voelter M, Czarnecki K (2006) Model-driven software development: technology, engineering, management. Wiley, New York
Sterling L, Ciancarini P, Turnidge T (1996) On the animation of not executable specifications by prolog. Int J Softw Eng Knowl Eng 6(1):63–88
Taylor R, Medvidovic N, Dashofy E (2009) Software architecture. Foundations, theory, and practice. Wiley, New York
Valerio A, Succi G, Fenaroli M (1997) Domain analysis and framework-based software development. ACM SIGAPP Appl Comput Rev 5(2):4–15
Weilkiens T (2008) Systems engineering with SysML/UML: modeling, analysis, design. Morgan Kaufmann/The OMG Press
Acknowledgments
The authors Ciancarini and Russo acknowledge the support of CINI. All the authors would like to personally thank Prof. P. Prinetto, director of the CINI School on Design of Complex Software Systems, and A. Mura, E. Barbi, A. Galasso, F. Marcoz, M. Scipioni, all from Finmeccanica companies, who in different stages and under different roles cooperated to the success of the various editions of the School.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Ciancarini, P., Russo, S., Sabbatino, V. (2016). A Course on Software Architecture for Defense Applications. In: Ciancarini, P., Sillitti, A., Succi, G., Messina, A. (eds) Proceedings of 4th International Conference in Software Engineering for Defence Applications. Advances in Intelligent Systems and Computing, vol 422. Springer, Cham. https://doi.org/10.1007/978-3-319-27896-4_27
Download citation
DOI: https://doi.org/10.1007/978-3-319-27896-4_27
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-27894-0
Online ISBN: 978-3-319-27896-4
eBook Packages: EngineeringEngineering (R0)