Task: Optimize Deployment Architecture |
|
 |
This task optimizes the interaction between different engineering disciplines within the system architecture. |
Disciplines: Architecture |
|
Purpose
The purpose of the deployment architecture is to allocate responsibilities and define interfaces among the different
engineering disciplines of software, digital electronics, analog electronics, mechanical design, chemical design, etc. |
Relationships
Roles | Primary Performer:
| Additional Performers:
|
Inputs | Mandatory:
| Optional:
|
Outputs |
|
Main Description
In the simplest case, the software is being targeted towards an existing and understood hardware architecture. In this
case, the deployment view is focused on location of the software architectural units. In the general system engineering
case, allocations are made by the system engineer to optimize various qualities of the system, such as manufacturing
cost, development cost, heat, weight, performance, etc.
The allocation of software to hardware may be done either symmetrically (dynamically) or asymmetrically (at design
time).
UML provides deployment diagrams specifically to show the distribution architecture, class diagrams can be better used
for this purpose.
|
Steps
Specify the inter-disciplinary interfaces
This step determines how the multiple disciplines will collaborate to achieve the functionality and performance required of
the architectural unit of which they are a part. For the software-digital electronics, this is often accomplished by adding
metadata into tags describing the type of interface (e.g. port, interrupt, or memory-mapped), the location or address, the
meanings of the bits involved, and the qualities of service (e.g. response time). |
Identify the engineering disciplines involved
The engineering disciplines managed with the deployment architecture most typically include (but are not limited to):
-
Software
-
Digital electronics
-
Analog electronics
-
Mechanical design
-
Chemical design
-
Optical design
Not all disciplines may be significant in any particular project.
|
Allocate responsibilities to engineering disciplines
This step allocates responsibilities (functionality and qualities of service) to the different engineering disciplines
involved.
This is most often done at the subsystem level of abstraction. That is, subsystems are composed of multiple engineering
disciplines, and the allocation to the disciplines is done on a per subsystem basis.
|
Perform tradeoff analysis
It is important to obtain an optimal allocation of responsibilities among the different engineering disciplines.
-
You must first identify key system functions and optimization criteria within scope.
-
Rank the optimization criteria in order of criticality
-
Identify possible solutions and perform a Measure of Effectiveness (MoE) analysis for each solution.
-
Finally, select the best solution (the one with the best MoE score)
|
|
More Information
|