美文网首页
系统架构9:如何让概念通向现实?

系统架构9:如何让概念通向现实?

作者: 王双_c261 | 来源:发表于2020-07-05 11:38 被阅读0次

原创 精进学思行 精进学思行 

系统架构8 概念|需求和具体方案的探索空间中,我们介绍了概念是建立意图和架构之间的桥梁,那么我们如何从桥上走到桥的那头呢?就想概念车毕竟是概念,如何变成真正的量产车呢?

本文会从三个方面分享这个话题:

如何从概念到1级架构?

如何从1级机构到2级架构?

如何选择架构中模块化的要素?

1 从概念到1级架构

在中,我们提到概念是对功能的一个初步构思,比如设计一种交通工具,飞机、汽车还是轮船是三种不同的概念。如果选择了汽车这个概念,那么具体怎么实现?就需要进一步构思这个汽车需要具备的功能,比如它肯定要能动,所以肯定要具备提供动力的功能;动起来后还要能控制方向,就需要有转向功能;能动还要能停下,就需要制动功能,依此类推,逐步识别汽车这个概念所需要考虑的功能,功能确定后,选择实现它的形式,比如为了实现动力功能(功能),可以用内燃机或者电机(形式),它们共同就构成了第一级的结构,具体的映射方式,可以参考系统架构7:功能和形式如何映射?

2 从1级架构到2级架构

确定了1级架构,如何确定2级架构呢?这里有个很重要的概念——递归。什么是递归?它在软件程序中用的比较多,指的是运行中调用自己。你估计听过一个典型故事:

从前有座山,山里有座庙,庙里有个和尚,和尚在讲故事,从前有座山,山里有座庙,庙里有个和尚,和尚在讲故事,从前有座山...”,

把这个故事加一个结束条件,就是典型的递归。这种现象在层级制的组织中也比较常见,总裁管着几个副总裁,几个副总裁管着几个总监,总监再管几个经理,经理再……,当然每一层级的管理方式可能有些差异。

这和系统机构的分解有什么关系?从1级架构到2级架构的分解过程,也是类似递归的过程。比如上面汽车一级架构分解到了动力系统,选择了电机,那么二级架构就可以通过相似的方式,先识别电机应该具备的功能,以及其对应的形式是什么。

3 架构中的模块化

按照递归原理,可以继续进行第三级和第四级的分解,这个要看目的和必要性。正如在系统架构2:分解-管理复杂的利器提到的"2下1上"原理,下一级分解是为了确认上一级的分解是否合理;其次,还有一个重要的目的,通过分解到2级,可以更好对1级进行模块化,后面会介绍。还有一个重要原因,通常分解到3-4级后,对应的实体很可能超过几百个,很难理解和管理。

接下来,我们简单介绍一下模块化的一个工具和三个步骤。

3.1 一个工具:DSM

DSM可以是对三个不同内容的缩写:Design Structure Matrix(设计结构矩阵),Decision Structure Matrix(决策结构矩阵),或者是Dependency Structure Matrix. 无论哪种简写,共同的特点是通过矩阵表格的形式来描述要素的关系,在系统架构中,根据行和列的不同,可以表示三种不同类型关系:形式-形式,形式-过程,过程-过程,其中前两者最常见。

形式-形式常常用来表示要素间连接关系,比如下图泵结构中的连接关系:

形式-过程可以用来表示实现过程的工具和载体,比如在系统架构8 概念|需求和具体方案的探索空间中的下图:

3.2 模块化的3步

结合前面的2级架构的分解,以及DSM,我们可以对1级架构进行模块化,更准确说是分组,把架构中紧密联系的实体归为一组,为什么要这样?这样可以尽量缩小模块之间的交互,并增大模块的内聚性。那怎么利用DSM进行分组?有如下的三步:

步骤1:选定分组的标准;

在系统架构中,分组的常常按照过程或形式来划分。以汽车为例,如果按照形式分,我们可以将其分为车身,底盘、动力总成等,如果按照过程,可以分为启动、行驶、转向、制动等。

步骤2:表达相关信息;

相关信息指的是形式之间的静态连接关系;或者是通过过程和操作数建立的链接;或者是过程之间通过操作数形成的链接,可以用数字表示链接的数量或强弱,用于下一步计算。

步骤3:进行信息计算,确定分组。

当把2级架构表达为包含相关信息的DSM后,就可以通过算法进行归类和分组,常用的是“聚类算法”(Clustering Algorithm),有机会单独介绍。其目的就是对DSM中的实体进行重新排列,目的是把联系紧密的放在一组。

这种模块处理方式,在工作中也很常见,比如在进行部门划分的时候,常常会把业务紧密度高的放到一起,比如“市场&品牌”,“产品开发”,“生产制造”,而在产品开发中,可以按照相同的逻辑,比如汽车企业会有车身、底盘、动力总成部门的划分。

而以我的专业NVH(噪声振动)为例,仿真和试验常常是需要紧密配合的,所以划分在一起也有利于工作的开展。

总结

概念是连接意图和架构的桥梁,但是要走过桥梁,让构想接近现实,需要进行细化,就像要把概念车转化为量产车,需要更多更加具体的落地动作。这个过程可以通过多级架构分解得到,不同级的分解方式(功能-形式)可以遵循“递归原理”。

考虑到必要性和复杂性,常常会将架构分解到2级,通过2级来判断1级的合理性,更重要的是基于二级对一级进行模块化分组,分组的方向是增强模块的“内聚性”。如何分组?问题提到的DSM工具和三个步骤可供参考。

相关文章

  • 系统架构9:如何让概念通向现实?

    原创精进学思行精进学思行 在系统架构8 概念|需求和具体方案的探索空间中,我们介绍了概念是建立意图和架构之间的桥梁...

  • iOS架构

    这里说几个概念:iOS系统框架:iOS系统架构:iOS架构:iOS 代码架构:iOS架构师:iOS架构设计: iO...

  • HDFS基础知识

    HDFS基础架构与核心概念 HDFS架构图 HDFS核心概念 Active NameNode(文件系统的管理节点)...

  • 重新认识Rest

    微服务架构已经很流行, 从概念上要解决的问题: 认识一个系统,如何将这个系统划分(系统的分解),识别出组件, 组件...

  • 推荐系统

    推荐系统基础 推荐系统简介 了解推荐相关常用概念 知道推荐系统的工程架构和算法架构 知道推荐系统的常用算法 知道协...

  • DDD架构

    大型微服务架构下如何解决系统老化问题 DDD架构 如何走出系统老化的循环 DDD核心思想

  • 系统架构4:更易计算的系统描述(SysML)

    系统架构4:更易计算的系统描述(SysML) 在系统架构3 :如何用简洁图形描述系统架构?中,我们分享了一种图形化...

  • 2018-App架构相关

    小刚—主要是概念上的泛谈,比较浅,不涉及实际操作 架构是什么 组成派:架构=组件+交互:软件系统的架构将系统描述为...

  • TOGAF有哪些学习要点?

    介绍 简介,核心概念,定义 ADM 介绍,预备阶段,架构愿景,业务架构,信息系统架构,技术架构,机会和解决方案,迁...

  • 深入领悟大系统架构设计

    小系统和大系统的架构设计之不同,首先是概念架构上的不同,而归根朔源这是由于架构所支撑的关键需求不同造成的。整个架构...

网友评论

      本文标题:系统架构9:如何让概念通向现实?

      本文链接:https://www.haomeiwen.com/subject/glfvqktx.html