Contrast Purpose and Scope of Architectural Analysis
Two steps: architectural analysis and object design
Contrast the purpose and scope of the architectural analysis and object design phases.
Design is divided into two steps:
architectural analysis and
Object design requires a context. For example, the differences between local and distributed applications are significant. The challenges of latency, memory access, partial failures, and concurrency, require significantly different designs for local
solutions than for distributed solutions. Different architectures dictate different low-level designs. Consequently, architectural choices provide the context for low-level design.
Architectural analysis evaluates the system requirements against the technologies that offer the most promising frameworks for a solution. The problem is partitioned to support both the functional and technological requirements.
The use case model is used as a source for functional partitioning. The class diagram provides the resources for each functional area. The interaction diagrams provide insight into the dependencies between the functional partitions.
Each functional partition is then divided to represent the layers of technology that will be used to implement the solution.
During object design each partition presents a different type of design challenge. For example, the user interface partition addresses a very different set of problems from the data access partition. A transaction server partition is very different
from a client application partition. Object design will use the statechart diagram in addition to all of the tools that you have learned so far in analysis.
Together, these tools provide working models of every aspect of the software design.
The UML diagram used to model object states, state transitions, and the behavior of an object during the state changes and during each state.