Identify architectural constraints
List any constraints on the solution (or possibly opportunities) that arise from the existing environment or
organisation.
|
Survey, assess and select from available assets
Establish the availability of suitable candidates for re-use from the existing software estate.
|
Define approach for structuring the system
Define the layering strategy for the software architecture
-
Decide how many layers will be used.
-
Identify their names and purpose.
-
Descibe their relationships to one another.
|
Identify key abstractions
Identify key concepts that the system should handle. These are usually found by looking for important nouns in the
requirements, that describe things that are important to the business. For example, Customer, Account or Branch are
typical key abstractions in the retail banking domain.
|
Identify analysis mechanisms
Catalogue the architecture mechanisms needed to support the requirements (see Concept: Architecture Mechanism. These will be expressed as Concept: Analysis Mechanism at this point in the process, due to the relatively
small amount of detail required against each mechanism.
Map each mechanism to one or more use cases. This will how the mechanisms are used to support the requirements and
assist in the prioritisation of the development of the mechanisms.
|
Capture architectural decisions
Keep a log of important decisions for future reference.
|
|