美文网首页
软件架构之系统与子系统

软件架构之系统与子系统

作者: 等你足够强了再说吧 | 来源:发表于2021-04-06 15:11 被阅读0次

软件架构指软件系统的顶层结构,是为了解决软件系统复杂度带来的问题。

系统泛指由一群有关联的个体组成,根据某种规则运作,能完成个别元件不能单独完成的工作的群体。它的意思是“总体”“整体”或“联盟”。

上面定义中包含的关键内容:

  1. 关联:系统是由一群有关联的个体组成的,没有关联的个体堆在一起不能成为一个系统。例如,把一个发动机和一台 PC 放在一起不能称之为一个系统,把发动机、底盘、轮胎、车架组合起来才能成为一台汽车。
  2. 规则:系统内的个体需要按照指定的规则运作,而不是单个个体各自为政。规则规定了系统内个体分工和协作的方式。例如,汽车发动机负责产生动力,然后通过变速器和传动轴,将动力输出到车轮上,从而驱动汽车前进。
  3. 能力:系统能力与个体能力有本质的差别,系统能力不是个体能力之和,而是产生了新的能力。例如,汽车能够载重前进,而发动机、变速器、传动轴、车轮本身都不具备这样的能力。

子系统也是由一群有关联的个体所组成的系统,多半会是更大系统中的一部分。

其实子系统的定义和系统定义是一样的,只是观察的角度有差异,一个系统可能是另外一个更大系统的子系统。
按照这个定义,系统和子系统比较容易理解。

我们以微信为例来做一个分析。

  1. 微信本身是一个系统,包含聊天、登录、支付、朋友圈等子系统。
  2. 朋友圈这个系统又包括动态、评论、点赞等子系统。
  3. 评论这个系统可能又包括防刷子系统、审核子系统、发布子系统、存储子系统。
  4. 评论审核子系统不再包含业务意义上的子系统,而是包括各个模块或者组件,这些模块或者组件本身也是另外一个维度上的系统。例如,MySQL、Redis 等是存储系统,但不是业务子系统。

《从0开始学架构》李运华

相关文章

  • 软件架构之系统与子系统

    软件架构指软件系统的顶层结构,是为了解决软件系统复杂度带来的问题。 系统泛指由一群有关联的个体组成,根据某种规则运...

  • 架构浅谈

    架构是什么 软件架构指软件系统的顶层结构这个定义看似很简单,但包含的信息很丰富,基本上把系统、子系统、模块、组件、...

  • 手机开发实战38——手机软件架构简介

    转 软件架构简介 对于一个有许多子系统的复杂系统,在把子系统组织成完整的系统时,有水平层次组织和垂直块组织两种方案...

  • 系统分析与设计作业8

    1、描述软件架构与框架之间的区别与联系 软件架构:软件架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象...

  • JavaWeb应用开发框架实例

    一、 概述 Web 应用架构可以划分为两大子系统:前端子系统和后台子系统。 前端子系统: 1. 基础技术: Htm...

  • 架构第1章

    本文参考《极客时间》- 从0开始学架构 架构到底是什么? 架构和框架是什么关系? 系统与子系统:系统是由一系列有关...

  • 订单整理设计

    架构 业务架构——根据业务需求设计业务模块及其关系 系统架构——设计系统和子系统的模块 技术架构——决定采用的技术...

  • 系统架构设计师真题解析(7)—— 软件架构风格

    1 软件架构风格与系统性能关系 以下关于软件架构风格与系统性能关系的叙述,错误的是( )。A . 采用层次化架构...

  • JVM系列二(类加载器子系统)

    Java虚拟机(JVM)系列二 类加载子系统 一.类加载器子系统整体架构 类加载器子系统负责从文件或网络中加载Cl...

  • 软件体系结构笔记:分层模式

    分层架构是常用的架构模式,对于一个大系统可以划分为几个子系统,各子系统位于不同的抽象层次。各层间上层依赖下层服务,...

网友评论

      本文标题:软件架构之系统与子系统

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