Abstract
The past 20 years has seen significant investments in the theory and practice of software architecture. However, architectural deficiencies are frequently cited as a key factor in the shortcomings and failures that lead to unpredictable delivery of complex operational systems. Here, we consider the art and science of software architecture: we explore the current state of software architecture, identify key architectural trends and directions in academia and industry, and highlight some of the architectural research challenges which need to be addressed. The paper proposes an agenda of research activities to be carried out by a partnership between academia and industry. While challenges exist in many domains, for this paper we draw examples from one area of particular concern: safety-critical systems.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Friedman, R.: The World is Flat: A Brief History of the 21st Century, Farrar, Straus and Giroux (2005)
Bhagwati, J.: In Defence of Globalization. Oxford University Press, Oxford (2004)
The Challenges of Complex IT Projects: The Royal Academy of Engineering, and British Computer Society (April 2004)
Computer Weekly Article (2004)
Rumbaugh, J., Booch, G., Jacobsen, I.: The UML Reference Manual. Addison-Wesley, Reading (2004)
Ministry of Defense: Defense Technology Strategy for the Demands of the 21st Century, UK MoD (2006), www.science.mod.uk
Automatic verification of a behavioural subset of UML statechart diagrams using the SPIN model-checker. Formal Aspects of Computing 11(6), 637–664 (1999)
Damm, W., et al.: Formal Verification of an Avionics Application using Abstraction and Model Checking. In: Redmill, F., Anderson, T. (eds.) Towards System Safety, Springer, Heidelberg (1999)
Barnes, J.G.P.: High Integrity Software: The SPARK Approach to Safety and Security. Addison Wesley, Reading (2003)
King, S., Hammond, J., Chapman, R., Pryor, A.: Is Proof more Cost-Effective than Testing? IEEE Transactions on Software Engineering 26(8) (2000)
Iwu, F., Galloway, A., McDermid, J.A., Toyn, I.: Integrating Safety and Formal Analysis using UML and PFS, RE&SS (2007)
Blow, J.R.: Use of Formal Methods in the Development of Safety-critical Control Software. DPhil thesis, Dept of Computer Science, University of York. YCST-2003-08 (2003)
Bate, I.J., Burns, A., Audsley, N.C.: Putting Fixed Priority Scheduling Theory into Engineering Practice for Safety Critical Applications. In: Proceedings of 2nd Real-Time Applications Symposium (1996)
Eccles, M.A.: STAMP Tool Assessment. BAe-WSC-RP-R&D-0031, BAe Warton (July 1995)
Douglass, B.P.: Real-Time UML: Developing Embedded Objects for Embedded Systems. Addison-Wesley, Reading (1998)
Radjenovic, A., Paige, R.F.: Architecture Description Languages for High Integrity Real-Time Systems. IEEE Software 23(2), 71–79 (2006)
Wallace, M.: Modular Architectural Representation and Analysis of Fault Propagation and Transformation. In: FESCA 2005. Formal Foundations of Embedded Systems and Component-Based Software Architectures (2005)
Bosch, J.: Design and Use of Software Architectures. Addison-Wesley, Reading (2000)
Hotz, L., Wolter, K., Krebs, T., Deelstra, S., Sinnema, M., Nijhuis, J., MacGregor, J.: Configuration in Industrial Product Families: The ConIPF Methodology (2006), see http://www.conipf.org
Stephenson, Z., McDermid, J.A.: Deriving Architectural Flexibility Requirements in Safety-Critical Systems. IEE Proceedings on Software 154(4) (August 2005)
Stephenson, Z., Zhan, Y., Clark, J., McDermid, J.: Test Data Generation for Product Lines - A Mutation Testing Approach. In: Nord, R.L. (ed.) SPLC 2004. LNCS, vol. 3154, Springer, Heidelberg (2004)
Arthan, R., Caseley, P., O’Halloran, C., Smith, A.: ClawZ: Control Laws in Z. In: Liu, S., McDermid, J.A., Hinchey, M.G. (eds.) Proceedings of ICFEM 2000, IEEE Computer Society, Los Alamitos (2000)
Galloway, A., Paige, R.F., Tudor, N.J., Weaver, R.A., Toyn, I., McDermid, J.A.: Proof versus testing in the context of Safety Standards. In: 24th Digital Avionics Systems Conference (2005)
Kruchten, P.: Rational Unified Process. Addison Wesley, Reading (2002)
Selic, B.: The Pragmatics of Model-Driven Development. IEEE Software 20 (September 2003)
OMG: MDA Guide, Version 1.0.1 (2003), www.omg.org
Frankel, D.: Model Driven Architecture: Applying MDA to Enterprise Computing. Wiley Press, Chichester (2003)
Fowler, M.: Comments on UML sketching (2005), www.fowler.com
Greenfield, J., Short, S., Cook, S., Kent, S.: Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. Wiley, Chichester (2004)
MODAF Tools Policy Statement of Position: MoD (2006)
MODAF M3 Meta Model V1.0: MoD (April 2006)
MODAF Tool Certification Plan: V1.0, MoD (April 2006)
Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Addison-Wesley, Reading (1998)
Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Reading (2001)
Krafzig, D., Banke, K., Slama, D.: Enterprise SOA. Prentice-Hall, Englewood Cliffs (2005)
Bieberstein, N., et al.: Service-Oriented Architecture (SOA) Compass: Business Value, Planning, and Enterprise Roadmap. IBM Press (2005)
Herzum, P., Sims, O.: Business Component Factory: A Comprehensive Overview of Component-Based Development for the Enterprise. Prentice-Hall, Englewood Cliffs (2002)
Parnas, D.L.: Software Engineering Programmes are not Computer Science Programmes. IEEE Software (November/December 1999)
McDermid, J.A.: Tailoring Software Engineering Education: One Size Does Not Fit All. Ingenia, RAEng, pp. 50–54 (2004)
Brooks, F.: The Mythical Man-Month: 20th Anniversary edn. Addison-Wesley, Reading (2004)
Carlson, D.: Eclipse Distilled. Addison-Wesley, Reading (2005)
Brown, A.W., Delbaere, M., Eeles, P., Johnston, S., Weaver, R.: Realizing Service oriented Solutions with the IBM Software Development Platform. IBM Systems Journal 44(4), 727–752 (2005)
Johnston, S.K., Brown, A.W.: A Model-driven Development Approach to Creating Service-oriented Solutions. In: Dan, A., Lamersdorf, W. (eds.) ICSOC 2006. LNCS, vol. 4294, pp. 624–636. Springer, Heidelberg (2006)
IBM Insurance Application Architecture, http://www.ibm.com/industries/financialservices/doc/content/solution/278918103.html
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brown, A.W., McDermid, J.A. (2007). The Art and Science of Software Architecture. In: Oquendo, F. (eds) Software Architecture. ECSA 2007. Lecture Notes in Computer Science, vol 4758. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75132-8_19
Download citation
DOI: https://doi.org/10.1007/978-3-540-75132-8_19
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75131-1
Online ISBN: 978-3-540-75132-8
eBook Packages: Computer ScienceComputer Science (R0)