Advanced Concepts

This chapter covers the following topics:

  1. Chunking information: view packets, refinement, and descriptive completeness. Documentation for a view cannot show all its information at once; the result would be hopelessly complex and confusing. Architects break their information up into digestible chunks called view packets. Section 6.1 discusses view packets and how they let a stakeholder move around the documentation of the system, up and down in levels of granularity, and from view to view, all while maintaining a coherent picture of the whole.
  2. Using context diagrams. A context diagram establishes the boundaries for the information contained in a view packet. A context diagram for the entire system defines what is and is not in the system, thus setting limits on the architect's tasks. Context diagrams are discussed in Section 6.2.
  3. Documenting combined views. Prescribing a given set of rigidly partitioned views is naive; there are times and good reasons for combining two or more views into a single combined view. Indeed, combined views are often responsible for an architecture's conceptual integrity, because only views that resemble one another in fundamental ways can be fruitfully merged. On the other hand, combined views, especially views that unintentionally mix concerns, are also the source of the vast majority of confusion in carelessly documented architectures. These topics are discussed in Section 6.3.
  4. Documenting variability and dynamism. Some architectures incorporate built-in variability to let a group of similar but architecturally distinct systems be built from them. Other architectures are dynamic, in that the systems they describe change their basic structure while they are running. Section 6.4 discusses documenting views of variable and dynamic architectures.
  5. Creating and documenting new styles. Just as a fixed set of views is naive, so too is a fixed set of styles. Styles, like design patterns, are a growing body of knowledge, and new and useful ones are emerging all the time. What are the architect's obligations when creating or documenting a new or modified style? Section 6.5 discusses these obligations.

Software Architectures and Documentation

Part I. Software Architecture Viewtypes and Styles

The Module Viewtype

Styles of the Module Viewtype

The Component-and-Connector Viewtype

Styles of the Component-and-Connector Viewtype

The Allocation Viewtype and Styles

Part II. Software Architecture Documentation in Practice

Advanced Concepts

Documenting Software Interfaces

Documenting Behavior

Choosing the Views

Building the Documentation Package

Other Views and Beyond

Rationale, Background, and Design Constraints


Documenting Software Architectures(c) Views and Beyond
Documenting Software Architectures: Views and Beyond
ISBN: 0201703726
EAN: 2147483647
Year: 2005
Pages: 152 © 2008-2020.
If you may any questions please contact us: