zoukankan      html  css  js  c++  java
  • 架构之Refined Architecture阶段

      Refined Architecture是细化架构阶段,是架构的第三阶段,属于架构设计,而不是详细设计。下文对该阶段进行了解。

      下面先谈一下细化架构与逻辑架构的差异:

      1、接口。在细化架构中,接口占据非常核心的地位,而概念架构并不关心明确的接口定义(只有抽象的的组件和抽象的交互机制)
      2、子系统。细化架构重视通过子系统和模块来分割整个系统,并且子系统往往有明确的接口;而概念架构中只有抽象的组件,这些组件没有接口,只有职责,一般是处理组件、数据组件或连接组件中的一种。当然,概念架构中也有“大组件分解成小组件”的设计决策,但并非子系统的含义。

      3、交互机制。细化架构中的交互机制应是“实在”的,如基于接口编程、消息机制或远程方法调用等。而概念架构中的交互机制是“概念化”的,例如“A层使用B层的服务”就是典型的例子,这里的“使用”到了细化架构中可能基于接口编程、消息机制或远程方法调用等其中的一种。

      但是细化架构与逻辑架构都满足软件架构的定义,就如:架构=组件+交互。

      

      在细化架构中,采用多视图方法分析系统,多视图方法是业界广泛认同的一种架构设计思路,方法种类有很多,下面介绍的是RUP4+1视图法:

           逻辑视图:职责划分

           开发视图:程序单元组织

           运行视图:控制流组织

           物理视图:物理节点安排

           数据视图:持久化设计

      划分子系统策略有三种:

      1、分层的细化,由于3层或4层架构不足以支持团队的并行开发,所以分层的细化是必不可少的。

      

      2、分区的引入

      架构是迭代开发的基础,为了支持迭代开发,逻辑架构设计中必须引入分区,分区是一种单元,它位于某一层的内部,其粒度比层要小。

      3、机制的提取

      软件系统中的机制是指预先定义好的、能够完成预期目标的、基于抽象角色的协作方式。机制不仅包含了协作关系,同时包含了协作流程。

      

       三者之间的关系:

      

      分层的细化、分区的引入、机制的提取这3种策略背后的4个通用设计原则:

      1、职责不同的单元划归不同子系统。
      2、通用性不同的单元划归不同子系统。
      3、需要不同开发技能的单元划归不同子系统。
      4、兼顾工作量的相对均衡,进一步切分太大的子系统。

      

  • 相关阅读:
    异常与中断
    ARM linux开发之Ubuntu上串口终端
    linux基础之Makefile基础
    STM32F104ZET6之ucosⅢ下adc
    STM32F104ZET6之ucosⅢ临界区保护与互斥锁的区别
    STM32F104ZET6之ucosⅢ临界区保护
    STM32F104ZET6之ucosⅢ常用函数
    QT5 mouseMoveEvent事件
    QT5 sqlite3的使用
    QT5 拖拽事件
  • 原文地址:https://www.cnblogs.com/liyuchao/p/12669417.html
Copyright © 2011-2022 走看看