Software Engineering Institute Carnegie Mellon

Documenting Software Architectures: Views and Beyond

Challenges:
How do you write down a software architecture so that others can use it to develop and maintain a system? How do you train the writers of architecture documentation in your organization to produce documentation of high quality and usefulness?

  • How do you organize architecture documentation so that it best serves its stakeholders?
  • What architectural views are the best ones to document for your architecture and its stakeholders?
  • What are the fundamental principles of sound technical documentation?
  • How should you capture architectural information so that your documentation is in compliance with IEEE/ANSI-Std-1471?
  • What is the role of UML in capturing software architectures?

Overview:
The SEI has produced an approach for documenting software architectures known as the "Views and Beyond" approach. It allows software architects to produce only the documentation that has a demonstrated community of consumers, while producing high-quality documentation that will serve the project throughout its entire lifecycle. This approach is captured in the Addison Wesley SEI series on software engineering: Documenting Software Architectures: Views and Beyond (by Paul Clements, Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little, Robert Nord, and Judith Stafford).

Benefits:
The Views and Beyond approach enables architectural stakeholders to obtain maximum benefit from architecture documentation. The book can be used to put all stakeholders in an organization on the same page in terms of expected production and use of that organization's software architecture documentation.

Who Would Benefit:
Producers and consumers of architecture documentation, including software architects, software product or project managers, developers, QA and development environment personnel.

Description:
The book consists of 11 chapters plus a comprehensive prologue that establishes the conceptual background. A comprehensive example of a well-documented software architecture is given as an appendix. Topics covered include:

  • Role and uses of software architecture documentation
  • Principles of sound technical documentation
  • Architectural views, viewtypes, and styles
  • Module views, component-and-connector views, and allocation views
  • Combining views: hybrids and overlays
  • Context diagrams
  • Documenting variation
  • Documenting software interfaces
  • Documenting behavior
  • Choosing the relevant views
  • Documenting a view
  • Documenting information that applies across views
  • Relation of the Views and Beyond approach to Rational's 4+1 approach, the Siemens Four-Views approach, ANSI/IEEE-Std-1471, and others.

Availability:
Documenting Software Architectures: Views and Beyond, is available through the publisher, as well as through all major bookstores.

Additional Information:
Contact us for additional details on Documenting Software Architectures: Views and Beyond.