09-06-2012, 05:52 PM
Architectural Design
Architectural Design.ppt (Size: 1.38 MB / Downloads: 0)
Software architecture
The design process for identifying the sub-systems making up a system and the framework for sub-system control and communication is architectural design.
The output of this design process is a description of the software architecture.
Architectural design
An early stage of the system design process.
Represents the page link between specification and design processes.
Often carried out in parallel with some specification activities.
It involves identifying major system components and their communications.
Advantages of explicit architecture
Stakeholder communication
Architecture may be used as a focus of discussion by system stakeholders.
System analysis
Means that analysis of whether the system can meet its non-functional requirements is possible.
Large-scale reuse
The architecture may be reusable across a range of systems.
Architecture and system characteristics
Performance
Localise critical operations and minimise communications. Use large rather than fine-grain components.
Security
Use a layered architecture with critical assets in the inner layers.
Safety
Localise safety-critical features in a small number of sub-systems.
Availability
Include redundant components and mechanisms for fault tolerance.
Maintainability
Use fine-grain, replaceable components.
Architectural conflicts
Using large-grain components improves performance but reduces maintainability.
Introducing redundant data improves availability but makes security more difficult.
Localising safety-related features usually means more communication so degraded performance.