Software Engineering Institute | Carnegie Mellon University
Software Engineering Institute | Carnegie Mellon University

Digital Library

Javascript is currently disabled for your browser. For an optimal search experience, please enable javascript.

Advanced Search

Basic Search

Content Type


Publication Date


Software Architecture for Large/Critical Applications

  • This presentation was created for a conference series or symposium and does not necessarily reflect the positions and views of the Software Engineering Institute.
  • Abstract

    Software architecture provides a blueprint for developing a system and plays a vital role in addressing quality-related aspects such as performance, security, and scalability. The architecture of a software system has to ensure that design is able to support all requirements as well as support any changes requested by the customer. 

    A common belief is that for a large and critical application, architecture needs to be planned well in advance to adequately meet all functional and nonfunctional requirements. This presentation will stress the need for agility in architecture and design for large/critical applications. It will examine the role of software architecture and design on failures of past software projects and why plan-driven architecture and design were not able to adapt to changes easily but rather introduced unnecessary complexity in the system. We will propose a strategic and goal-oriented approach that systematically combines evolutionary design with plan-driven development.

  • Download