zoukankan      html  css  js  c++  java
  • 一线架构师实践指南03

    《高层分割》

    “架构=模块+接口”的做法,其不足可概括为两点。

    第一,忽视了多视图。“模块+接口”仅是逻辑架构设计视图的核心内容,而软件系统的架构设计还可能涉及开发视图、运行视图、物理视图、数据视图等多方面的考虑。

    第二,忽略了概念架构设计。对规模稍大的系统而言,都必须先根据重大风险(包含功能方面、质量方面、约束方面),有针对性地制定包括“高层分割”在内的设计决策,然后才是“模块+接口”一级的设计。

    高层分割的两种实践套路:(一步到位还是两步到位)

    a)   切系统为系统

    b)   切系统为子系统

     

    “切系统为系统”是一种缩略的说法,具体是指:系统比较复杂,须要进行两级高层切分。这样做的现实意义是巨大的。例如,面临比较复杂的软件系统,很多企业都有“这个项目要设几个架构师”的困惑。

    在实践中,当面临如下两种情况时你须要考虑“切系统为系统”:

    当系统覆盖的功能范围比较广泛时。

    例如,BOSS系统涉及的需求范围广泛一涵盖网络管理、 服务开通、计费、客户关系管理等,于是依“切系统为系统”的做法分为网管系统、服务受理系统、计费系统、客户关系管理系统等。

    当系统须要 部署在比较复杂的硬件环境中时。

    很多城市基础服务行业、大型机构、大型企业,都很重视“一卡通”的应用。例如,若一卡通系统要无缝地支持HR管理、出入控制、后勤保障等方面的功能,就必须充分考虑复杂的硬件环境给架构带来的冲击一一硬 件的种类涉及考勤机、通道机、闸机、自助查询机、PC机、服务器等,于是应当合理规划组成整个一卡通系统的嵌入式应用、桌面应用及Web应用等。

     

    切系统为子系统,这忠做法相当经典。在实践中,最常见的方式就是分层。

  • 相关阅读:
    2021,6,10 xjzx 模拟考试
    平衡树(二)——Treap
    AtCoder Beginner Contest 204 A-E简要题解
    POJ 2311 Cutting Game 题解
    Codeforces 990G GCD Counting 题解
    NOI2021 SDPTT D2T1 我已经完全理解了 DFS 序线段树 题解
    第三届山东省青少年创意编程与智能设计大赛总结
    Luogu P6042 「ACOI2020」学园祭 题解
    联合省选2021 游记
    Codeforces 1498E Two Houses 题解 —— 如何用结论吊打标算
  • 原文地址:https://www.cnblogs.com/zmh-980509/p/13100227.html
Copyright © 2011-2022 走看看