Skip to main content

Design of Good Information Systems Architectures

  • Chapter
  • First Online:
Internet Computing

Abstract

Each information system (IS) has an underlying architecture, although its complexity and scope can vary quite substantially for differ kinds of systems. Since design decisions about the architecture define the very foundation of an IS, the design decisions cannot be easily undone or altered after they were made. If not taken seriously enough, improper IS architecture designs can result in the development of systems that are incapable of adequately meeting user requirements. Understanding the concept of good IS architecture design and taking design decisions diligently is, therefore, highly important for an IS development project’s success. In order to answer the question of what constitutes a good IS architecture, this chapter examines the importance of design decisions across a system’s lifecycle. In particular, two different perspectives on the concept of good IS architecture design are explicated: (1) design as the process and (2) design as the outcome of a design process. The two perspectives are closely related to each other and generally help explain the more abstract concept of IS architecture design and particularly the characteristics of a good IS architecture.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 84.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  • Albin S (2003) The art of software architecture: design methods and techniques. Wiley, New York, NY

    Google Scholar 

  • Antony T, Han J, Vasa R (2009) Software architecture design reasoning: a case for improved methodology support. IEEE Softw 26(2):43–49

    Article  Google Scholar 

  • Avgeriou P, Kruchten P, Lago P, Grisham P, Perry D (2007) Architectural knowledge and rationale: issues, trends, challenges. ACM SIGSOFT Softw Eng Notes 32(4):41–46

    Article  Google Scholar 

  • Avgeriou P, Lago P, Kruchten P (2008) 3rd international workshop on sharing and reusing architectural knowledge (SHARK 2008). In: 30th international conference on software engineering, Leipzig, 10–18 May 2008, pp 1065–1066

    Google Scholar 

  • Avizienis A, Laprie J-C, Randell B, Landwehr C (2004) Basic concepts and taxonomy of dependable and secure computing. IEEE Trans Depend Secure Comput 1(1):11–33

    Article  Google Scholar 

  • Banker RD, Datar SM, Kemerer CF, Zweig D (1993) Software complexity and maintenance costs. Commun ACM 36(11):81–94

    Article  Google Scholar 

  • Barbacci MR, Ellison RJ, Lattanze AJ, Stafford JA, Weinstock CB, Wood WG (2003) Quality attribute workshops (QAWs), 3rd edn. https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=6687. Accessed 16 Sept 2019

    Book  Google Scholar 

  • Bass L, Clements P, Kazman R (2012) Software architecture in practice. Addison-Wesley, London

    Google Scholar 

  • Beck K, Beedle M, Van Bennekum A, Cockburn A, Cunningham W, Fowler M, Grenning J, Highsmith J, Hunt A, Jeffries R, Kern J, Marick B, Martin R, Mellor S, Schwaber K, Sutherland J, Thomas D (2001) Manifesto for Agile software development. http://agilemanifesto.org. Accessed 5 May 2019

  • Boehm BW (1988) A spiral model of software development and enhancement. Computer 21(5):61–72

    Article  Google Scholar 

  • Bondi AB (2000) Characteristics of scalability and their impact on performance. Paper presented at the 2nd international workshop on software and performance, Ottowa, ON, 17–20 Sept 2000

    Google Scholar 

  • Boritz JE (2005) IS practitioners’ views on core concepts of information integrity. Int J Account Inf Syst 6(4):260–279

    Article  Google Scholar 

  • Brewer J (2001) Access to the world wide web: technical and policy aspects. In: Preiser W, Ostroff E (eds) Universal design handbook, 1st edn. MacGraw-Hill, New York, NY, p 66.61

    Google Scholar 

  • Brooke J (1996) SUS – a quick and dirty usability scale. In: Jordan PW, Thomas B, McClelland IL, Weerdmeester B (eds) Usability evaluation in industry. Taylor & Francis, London, pp 189–194

    Google Scholar 

  • Bryde DJ, Brown D (2005) The influence of a project performance measurement system on the success of a contract for maintaining motorways and trunk roads. Proj Manag J 35(4):57–65

    Article  Google Scholar 

  • Buckley J, Mens T, Zenger M, Rashid A, Kniesel G (2005) Towards a taxonomy of software change. J Softw Maint Evol Res Pract 17(5):309–332

    Article  Google Scholar 

  • Carnegie Mellon University (2018) The SEI quality attribute workshop. https://resources.sei.cmu.edu/asset_files/FactSheet/2018_010_001_513488.pdf. Accessed 5 May 2019

    Google Scholar 

  • Cherdantseva Y, Hilton J (2013) A reference model of information assurance & security. Paper presented at the international conference on availability, reliability and security, Regensburg, 2–6 Sept 2013

    Google Scholar 

  • Chermack TJ, Kasshanna BK (2007) The use and misuse of SWOT analysis and implications for HRD professionals. Hum Resour Dev Int 10(4):383–399

    Article  Google Scholar 

  • Clements P, Garlan D, Bass L, Stafford J, Nord R, Ivers J, Little R (2002) Documenting software architectures: views and beyond. Addison Wesley, Boston, MA

    Google Scholar 

  • Davis AM (1993) Software requirements: objects, functions, and states. PTR Prentice Hall, Upper Saddle River, NJ

    MATH  Google Scholar 

  • de Boer RC, Farenhorst R, Lago P, van Vliet H, Jansen AGJ (2007) Architectural knowledge: getting to the core. Paper presented at the 3rd international conference on the quality of software architectures, Medford, MA, 11–13 July 2007

    Google Scholar 

  • de Reuver M, Sørensen C, Basole RC (2018) The digital platform: a research agenda. J Inf Technol 33(2):124–135

    Article  Google Scholar 

  • Falessi D, Cantone G, Kazman R, Kruchten P (2011) Decision-making techniques for software architecture design: a comparative survey. ACM Comput Surv (CSUR) 43(4):33

    Article  Google Scholar 

  • Ghazawneh A, Henfridsson O (2013) Balancing platform control and external contribution in third-party development: the boundary resources model. Inf Syst J 23(2):173–192

    Article  Google Scholar 

  • Gilb T (2005) Competitive engineering: a handbook for systems engineering, requirements engineering, and software engineering using planguage. Elsevier, Butterworth-Heinemann, Oxford

    Google Scholar 

  • Glowalla P, Sunyaev A (2015) Influential factors on IS project quality: a total quality management perspective. Paper presented at the 36th international conference on information systems (ICIS), Fort Worth, TX, 13–16 Dec 2015

    Google Scholar 

  • Hayes-Roth B, Pfleger K, Lalanda P, Morignot P, Balabanovic M (1995) A domain-specific software architecture for adaptive intelligent systems. IEEE Trans Softw Eng 21(4):288–301

    Article  Google Scholar 

  • Hinley DS (1996) Software evolution management: a process-oriented perspective. Inf Softw Technol 38(11):723–730

    Article  Google Scholar 

  • Hochstein L, Lindval M (2005) Combating architectural degeneration: a survey. Inf Softw Technol 47(10):643–665

    Article  Google Scholar 

  • Hofmeister C, Kruchten P, Nord RL, Obbink H, Ran A, America P (2007) A general model of software architecture design derived from five industrial approaches. J Syst Softw 80(1):106–126

    Article  Google Scholar 

  • IEEE (1990) Standard glossary of software engineering terminology. https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=159342&tag=1. Accessed 16 Sept 2019

  • IEEE (1992) Standard for a software quality metrics methodology. https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=237006. Accessed 16 Sept 2019

  • Ika LA (2009) Project success as a topic in project management journals. Proj Manag J 40(4):6–19

    Article  Google Scholar 

  • Isaias P, Issa T (2015) Information system development life cycle models. In: Isaias P, Issa T (eds) High level models and methodologies for information systems. Springer, New York, NY, pp 21–40

    Google Scholar 

  • ISO (1989) Information processing systems – open systems interconnection – basic reference model – Part 2: Security architecture. https://www.iso.org/standard/14256.html. Accessed 16 Sept 2019

  • ISO (2018) Ergonomics of human-system interaction – Part 11: Usability: definitions and concepts. https://www.iso.org/standard/63500.html. Accessed 19 Sept 2019

  • ISO/IEC (2011) Systems and software engineering – systems and software quality requirements and evaluation (SQuaRE) – system and software quality models. https://pdfs.semanticscholar.org/57a5/b99eceff9da205e244337c9f4678b5b23d25.pdf. Accessed 19 Sept 2019

  • ISO/IEC/IEEE (2017a) International standard – systems and software engineering – vocabulary. https://standards.ieee.org/standard/24765-2017.html. Accessed 19 Sept 2019

  • ISO/IEC/IEEE (2017b) Systems and software engineering – software life cycle processes. https://www.iso.org/standard/63712.html. Accessed 19 Sept 2019

  • Jansen AGJ, Bosch J (2005) Software architecture as a set of architectural design decisions. Paper presented at the 5th IEEE/IFIP working conference on software architecture (WICSA), Pittsburgh, PA, 6–10 Nov 2005

    Google Scholar 

  • Jansen AGJ, Bosch J, Avergiou P (2008) Documenting after the fact: recovering architectural design decisions. J Syst Softw 81(4):536–557

    Article  Google Scholar 

  • Jansen A, Avgeriou P, van der Ven JS (2009) Enriching software architecture documentation. J Syst Softw 82(8):1232–1248

    Article  Google Scholar 

  • Kim S, Whitehead EJ, Zhang Y (2008) Classifying software changes: clean or buggy? IEEE Trans Softw Eng 34(2):181–196

    Article  Google Scholar 

  • Knight JC, Strunk EA, Sullivan KJ (2003) Towards a rigorous definition of information system survivability. Paper presented at the DARPA information survivability conference and exposition, Washington, DC, 22–24 Apr 2003

    Google Scholar 

  • Kotonya G, Sommerville I (1998) Requirements engineering: processes and techniques, 1st edn. Wiley, New York, NY

    Google Scholar 

  • Kruchten P, Lago P, van Vliet H (2006) Building up and reasoning about architectural knowledge. Paper presented at the international conference on the quality of software architectures, VästerÃ¥s, 27–29 June 2006

    Google Scholar 

  • Lago P, Avgeriou P (2006) First workshop on sharing and reusing architectural knowledge. SIGSOFT Softw Eng Notes 31(5):32–36

    Article  Google Scholar 

  • Lam W, Shankararaman V (1998) Managing change in software development using a process improvement approach. Paper presented at the 24th annual Euromicro conference, VästerÃ¥s, 27 Aug 1998

    Google Scholar 

  • Lehmann MM, Perry DE, Ramil JF (1998) Implications of evolution metrics on software maintenance. Paper presented at the international conference on software maintenance, Bethesda, MD, 16–19 Nov 1998

    Google Scholar 

  • Lund AM (2001) Measuring usability with the USE questionnaire. Usability Interface 8(2):3–6

    Google Scholar 

  • Majidi E, Alemi M, Rashidi H (2010) Software architecture: a survey and classification. Paper presented at the 2nd international conference on communication software and networks, Singapore, 26–28 Feb 2010

    Google Scholar 

  • Medvidovic N, Taylor RN (2010) Software architecture: foundations, theory, and practice. Paper presented at the 32nd ACM/IEEE international conference on software engineering, Cape Town, 1–8 May 2010

    Google Scholar 

  • Mesly O (2016) Project feasibility: tools for uncovering points of vulnerability. CRC Press, New York, NY

    Google Scholar 

  • Moore M, Kaman R, Klein M, Asundi J (2003) Quantifying the value of architecture design decisions: lessons from the field. Paper presented at the 25th international conference on software engineering, Portland, OR, 3–10 May 2003

    Google Scholar 

  • Mouratidis H, Sunyaev A, Jurjens J (2009) Secure information systems engineering: experiences and lessons learned from two health care projects. Paper presented at the international conference on advanced information systems engineering, Amsterdam, 8–12 June 2009

    Google Scholar 

  • Nielson J (2012) Usability 101: introduction to usability. https://web.archive.org/web/20110408184029/http://www.useit.com/alertbox/20030825.html. Accessed 5 May 2019

  • O’Neal JS, Carver DL (2001) Analyzing the impact of changing requirements. Paper presented at the IEEE international conference on software maintenance, Florence, 7–10 Nov 2001

    Google Scholar 

  • O’Reilly C, Morrow P, Bustard D (2003) Lightweight prevention of architectural erosion. Paper presented at the 6th international workshop on principles of software evolution, Helsinki, 1–2 Sept 2003

    Google Scholar 

  • Pinto JK, Slevin DP (1988) Project success: definitions and measurement techniques. Proj Manag J 19(1):67–72

    Google Scholar 

  • Shenhar AJ, Dvir D, Guth W, Lechler T, Milosevic D, Patanakul P, Poli M, Stefanovic J (2007) Project strategy: the missing link. In: Shenhar AJ, Milosevic D, Dvir D, Thamhain H (eds) Linking project management to business strategy. Project Management Institute, Newtown Square, PA, pp 57–76

    Google Scholar 

  • Tang A, Babar MA, Gorton I, Han J (2006) A survey of architecture design rationale. J Syst Softw 79(12):1792–1804

    Article  Google Scholar 

  • Tang A, Jin Y, Han J (2007) A rationale-based architecture model for design traceability and reasoning. J Syst Softw 80(6):918–934

    Article  Google Scholar 

  • Tang A, Liang P, van Vliet H (2011) Software architecture documentation: the road ahead. Paper presented at the 9th working IEEE/IFIP conference on software architecture, Boulder, CO, 20–24 June 2011

    Google Scholar 

  • Taylor RN, Medvidovic N, Dashofy E (2009) Software architecture: foundations, theory, and practice. Wiley, Hoboken, NJ

    Google Scholar 

  • Tekinerdogan B (2004) ASAAM: aspectual software architecture analysis method. Paper presented at the 4th working IEEE/IFIP conference on software architecture, Oslo, 12–15 June 2004

    Google Scholar 

  • Thiebes S, Dehling T, Sunyaev A (2016) One size does not fit all: information security and information privacy for genomic cloud services. Paper presented at the 24th European conference on information systems (ECIS), Istanbul, 12–15 June 2016

    Google Scholar 

  • Tiwana A (2015) Evolutionary competition in platform ecosystems. Inf Syst Res 26(2):266–281

    Article  Google Scholar 

  • Tiwana A, Konsynski B, Bush AA (2010) Platform evolution: coevolution of platform architecture, governance, and environmental dynamics. Inf Syst Res 21(4):675–687

    Article  Google Scholar 

  • Toora S-u-R, Ogunlana SO (2010) Beyond the ‘iron triangle’: stakeholder perception of key performance indicators (KPIs) for large-scale public sector development projects. Int J Proj Manag 28(3):228–236

    Article  Google Scholar 

  • Williams BJ, Carver JC (2010) Characterizing software architecture changes: a systematic review. Inf Softw Technol 52(1):31–51

    Article  Google Scholar 

  • Wojcik R, Bachmann F, Bass L, Clements PC, Merson P, Nord R, Wood WG (2006) Attribute-driven design (ADD), version 2.0. https://resources.sei.cmu.edu/library/asset-view.cfm?assetID=8147. Accessed 16 Sept 2019

Further Reading

  • Albin S (2003) The art of software architecture: design methods and techniques. Wiley, New York, NY

    Google Scholar 

  • Bass L, Clements P, Kazman R (2012) Software architecture in practice. Addison-Wesley, London

    Google Scholar 

  • de Boer RC, Farenhorst R, Lago P, van Vliet H, Jansen AGJ (2007) Architectural knowledge: getting to the core. Paper presented at the 3rd international conference on the quality of software architectures, Medford, MA, 11–13 July 2007

    Google Scholar 

  • Gilb T (2005) Competitive engineering: a handbook for systems engineering, requirements engineering, and software engineering using planguage. Elsevier, Butterworth-Heinemann, Oxford

    Google Scholar 

  • Hofmeister C, Kruchten P, Nord RL, Obbink H, Ran A, America P (2007) A general model of software architecture design derived from five industrial approaches. J Syst Softw 80(1):106–126

    Article  Google Scholar 

  • Taylor RN, Medvidovic N, Dashofy E (2009) Software architecture: foundations, theory, and practice. Wiley, Hoboken, NJ

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Sunyaev, A. (2020). Design of Good Information Systems Architectures. In: Internet Computing. Springer, Cham. https://doi.org/10.1007/978-3-030-34957-8_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-34957-8_3

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-34956-1

  • Online ISBN: 978-3-030-34957-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics