zoukankan      html  css  js  c++  java
  • Refined Architecture阶段———阅读笔记

    究竟什么是Refined Architecture?

       一、定义:

       Refined Architecture又名细化架构,它是以分而治之为思想核心的多视图架构设计方法。兼顾多个视图设计之间的一致性,设计系统架构。

      二、实际作用:

         利于思考(因为分而治之的思维方式,可以多方面的思考系统设计)

         便于交流(因为在一定的程度上分离了涉众关注点)

      三、业界现状

        1、误认为多视图就是OO方法分支

        2、误将“视图”当作“阶段”

      四、内容讲解(重点以5视图为例)

        1、职责划分(逻辑视图)

        逻辑架构

          划分子系统的3种必要策略:分层的细化(职责维)、分区的引入(粒度)、机制的提取(通用维)

          接口设计:“分”是手段,“合”是目的,协作决定接口。

          逻辑架构设计的整体思维套路:质疑驱动逻辑架构的设计,结构设计与行为设计相分离。

        2、程序单元组织(开发视图)

        内容:将”逻辑职责“映射为”程序单元”、开发技术选型、“程序单元”间关系

        3、控制流组织(运行视图)

        内容:确定引入哪些控制流、确定每条控制流的任务、处理相关问题:控制流的创建、销毁、通信机制等、控制流之间的同步关系,若有资源争用还需引入加锁机制。

        4、物理节点安排(物理视图)

        增强硬件 = 增加计算能力 != 软件的实际服务能力增强

        内容:硬件选择与物理拓扑、软件到硬件的映射关系、方案优化

        5、持久化设计(数据视图)

        数据架构

          六大策略:

            ①独立 Schema (Separate-schema ) ——通信开销,可管理性强 

              两个不一样的数据集,相互独立互不干扰。

            ②集中(Centralized)———可管理性,数据一致性强

              将不同的几个数据集抽取组合成一个大数据集

            ③分区(Partitioned)——可伸缩性强

              水平分区:

                

               垂直分区:

                

            ④复制(Replicated)  

              将数据集拷贝一份

            ⑤子集(Subset)  

              从数据集中提取一部分数据生成新的数据集

            ⑥重组(Reorganized)

              从数据集中统计或者提取期望的数据重组成新的数据集

  • 相关阅读:
    内聚和耦合的举例
    OneZero第四周第五次站立会议(2016.4.15)
    OneZero第四周第四次站立会议(2016.4.14)
    OneZero团队Beta发布剧透
    PSP(4.6——4.12)以及周记录
    关于“内聚和耦合”
    CSV 注入实战
    BurpSuite 一些小技巧
    博客园URL跳转钓鱼
    【Demo 0005】Android 资源
  • 原文地址:https://www.cnblogs.com/goubb/p/12672474.html
Copyright © 2011-2022 走看看