zoukankan      html  css  js  c++  java
  • Architecture Design Process

    Architecture Design Process

    The architecture design process focuses on the decomposition of a system into different components and their interactions to satisfy functional and nonfunctional requirements. The key inputs to software architecture design are −

    • The requirements produced by the analysis tasks.

    • The hardware architecture (the software architect in turn provides requirements to the system architect, who configures the hardware architecture).

    The result or output of the architecture design process is an architectural description. The basic architecture design process is composed of the following steps −

    Understand the Problem

    • This is the most crucial step because it affects the quality of the design that follows.

    • Without a clear understanding of the problem, it is not possible to create an effective solution.

    • Many software projects and products are considered failures because they did not actually solve a valid business problem or have a recognizable return on investment (ROI).

    Identify Design Elements and their Relationships

    • In this phase, build a baseline for defining the boundaries and context of the system.

    • Decomposition of the system into its main components based on functional requirements. The decomposition can be modeled using a design structure matrix (DSM), which shows the dependencies between design elements without specifying the granularity of the elements.

    • In this step, the first validation of the architecture is done by describing a number of system instances and this step is referred as functionality based architectural design.

    Evaluate the Architecture Design

    • Each quality attribute is given an estimate so in order to gather qualitative measures or quantitative data, the design is evaluated.

    • It involves evaluating the architecture for conformance to architectural quality attributes requirements.

    • If all estimated quality attributes are as per the required standard, the architectural design process is finished.

    • If not, the third phase of software architecture design is entered: architecture transformation. If the observed quality attribute does not meet its requirements, then a new design must be created.

    Transform the Architecture Design

    • This step is performed after an evaluation of the architectural design. The architectural design must be changed until it completely satisfies the quality attribute requirements.

    • It is concerned with selecting design solutions to improve the quality attributes while preserving the domain functionality.

    • A design is transformed by applying design operators, styles, or patterns. For transformation, take the existing design and apply design operator such as decomposition, replication, compression, abstraction, and resource sharing.

    • The design is again evaluated and the same process is repeated multiple times if necessary and even performed recursively.

    • The transformations (i.e. quality attribute optimizing solutions) generally improve one or some quality attributes while they affect others negatively

    Key Architecture Principles

    Following are the key principles to be considered while designing an architecture −

    Build to Change Instead of Building to Last

    Consider how the application may need to change over time to address new requirements and challenges, and build in the flexibility to support this.

    Reduce Risk and Model to Analyze

    Use design tools, visualizations, modeling systems such as UML to capture requirements and design decisions. The impacts can also be analyzed. Do not formalize the model to the extent that it suppresses the capability to iterate and adapt the design easily.

    https://www.tutorialspoint.com/software_architecture_design/key_principles.htm

  • 相关阅读:
    CentOS7 设置软件镜像源
    让树莓派自动上报IP地址到邮箱,二代B
    给树莓派安装看门狗的两种方法,二代B
    树莓派(Raspberry Pi)USB无线网卡自动连接,二代B
    升级MAC OX上的Python到3.4
    http 返回码 405 解决方案之一
    CentOS 6.4 SSH 免密码登录
    SVN的Hooks功能--强制添加注释
    PHP开发中,让var_dump调试函数输出更美观 ^_^#
    CentOS 6.4 命令行 安装 VMware Tools
  • 原文地址:https://www.cnblogs.com/feng9exe/p/10252129.html
Copyright © 2011-2022 走看看