Representation Options | UML Representation: A set of relevant architectural views: Use-Case, Logical, Process, Deployment,
Implementation, Data.
You should adjust the outline of the Software Architecture Document to suit the nature of your
software:
-
Some of the architectural views may be irrelevant:
-
The Deployment View is not needed for single-CPU systems.
-
The Process View is not needed if the system uses only a single thread of control.
-
The Data View is not needed unless object persistence is a significant aspect of the system
and the persistence mechanism requires a mapping between persistent and non-persistent
objects.
-
Some specific aspects of the software may require their own section; for example, aspects related to
data management or usability issues.
-
You may need additional appendices to explain certain aspects, such as the rationale of certain
critical choices together with the solutions that have been eliminated, or to define acronyms or
abbreviations, or present general design principles.
-
The order of the various sections may vary, depending on the system's stakeholders and their focus or
interest.
The advantages and disadvantages of each architectural view follow:
Use-Case View
This view is mandatory.
Logical View
This view is mandatory.
Process View
This view is optional. Use this view only if the system has more than one thread of control, and
the separate threads interact or are dependent upon one another.
Deployment View
This view is optional. Use this view only if the system is distributed across more than one
node. Even in these cases, only use the deployment view where the distribution has architectural
implications. For example, in cases where there is a single server and many clients, a deployment view
only needed to delineate the responsibilities of the server and the clients as a class of nodes; there
is no need to show every client node if they all have the same capabilities.
Implementation View
This view is optional. Use this view only in cases where the implementation is not strictly
driven from the design, i.e. where there is a different distribution of responsibilities between
corresponding packages in the Design and Implementation models. If the packaging of the design and
implementation models are identical, this view can be omitted.
Data View
This view is optional.
Use this view only if persistence is a significant aspect of the system
and the translation from the Design Model to the Data Model is not done automatically by the persistence mechanism.
|