《系统架构:复杂系统的产品设计与开发》——第3章,第3.7节小结

简介:

本节书摘来自华章出版社《系统架构:复杂系统的产品设计与开发》一书中的第3章,第3.7节小结,作者[美]布鲁斯·卡梅隆,更多章节内容可以访问云栖社区“华章计算机”公众号查看

3.7小结
本章展示了思考复杂系统时所用的各种方式。表3.3总结了这些方式。
表3.3 复杂系统的特点以及思考复杂系统所用的方式


a8a1e6e422cede77e3cb20d2180a2b7827e2f88c

复杂系统的特点思考复杂系统所用的方式
系统可以反复分解,每次分解出的实体都越来越小,也越来越专业(参见3.3节)  
把系统分解为实体
判断这些实体之间是否呈现出体系
把实体排布到体系中的适当位置上
继续进行分解,直到形成了两个抽象层,或是遇到了原子部件为止
系统中的实体之间有着某种特定的逻辑关系(参见3.4节) 从实体中确定类及类的实例
确定实体之间的特化和泛化关系
确定实体是否以递归的方式使用或出现
复杂的系统中蕴含着几种关系模式,我们可以利用这些模式来思考系统(参见3.5节)自顶向下、自底向上、由内而外地思考系统
在形式领域和功能领域之间交替地思考
确定当前系统、伴生系统以及使用情境
在某个级别中,确定价值通路层及支援实体层
功能-目标式的思考:某一级别的功能是其下一级别的目标
先向下考虑两个级别,然后再回溯一个级别,以确定适当的整理方式与分组方式
可以为架构创建视图或对架构进行投射,以增强对系统的理解(参见3.6节)  使用SysML等工具为系统构建协调一致的视图
使用OPM等工具从维度更高的模型中进行投射,以创建协调一致的视图
在3.3节中我们看到,系统可以分解成一些更小、更专门的实体。从切入体系的那个级别开始向下分析两级,是一种有效的系统分解方式。
3.4节介绍了实体之间的两种关系,也就是类/实例关系以及特化关系。有些系统适合采用递归的方式来表示,也就是把系统表示为一种特定的结构,而该结构中又包含着同样结构的内容。
3.5节讨论了思考复杂系统时所用的几种不同方式,其中包括自顶向下、自底向上、由外而内以及由内而外等。该节也指出,用这些方式思考系统时,通常需要在功能领域与形式领域之间来回切换。后续章节还要讲解四种思考复杂系统的技巧。第4章将会讨论系统之间的区别、与本系统相伴而生且能体现本系统价值的实体,以及系统外围的总体使用情境。第5、6两章将会介绍如何确定系统在体现其价值时所依循的价值通路,以及架构中的其他层次。第8章将会给出一种思考多层架构的手段,也就是功能-目标式思考,这种思考方式会把某一层次的功能视为其下一层的目标。第13章在讨论复杂度时会介绍“2下1上”式的思考方式,也就是根据系统之下第2层的信息,来确定系统之下第1层中的实体应该如何分组。
3.6节讲解了用视图及投射来展示系统这一思路,并介绍了两种展示复杂系统的主流框架,也就是SysML和OPM。SysML使用多张视图或图表来呈现系统的不同方面(例如结构方面和行为方面),而OPM则把系统的多个方面都融合到同一个主模型中。
在后续的章节中,我们将频繁使用这些方式来思索复杂的系统。

相关文章
|
JavaScript 前端开发 关系型数据库
从业务开发中学习和理解架构设计
在设计代码目录划分方案的过程中,看了一些工程结构设计的资料,读了一些关于架构设计的书,对于架构有了一些理解。本文是对这段学习和任务完成过程的思考和沉淀。希望能够解答“架构到底是什么?架构和业务之间的关系?”,“好的架构的设计出发点是什么?好的架构应该是什么样的?”这几个问题。
从业务开发中学习和理解架构设计
|
架构师
《系统架构:复杂系统的产品设计与开发》——导读
本节书摘来自华章出版社《系统架构:复杂系统的产品设计与开发》一书中的目录,作者[美]布鲁斯·卡梅隆,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1948 0