系统与子系统
1.系统:泛指由一群有关联的个体组成,根据某种规则运作,能完成个别元件不能单独
完成的工作的群体。它的意思是“总体”“整体”或“联盟”。
关联:系统是由一群有关联的个体组成的,没有关联的个体堆在一起不能成为一个系统;
规则:系统内的个体需要按照指定的规则运作,而不是单个个体各自为政;
能力:系统能力与个体能力有本质的差别,系统能力不是个体能力之和,而是产生了新的能力。
2.子系统:也是由一群有关联的个体所组成的系统,多半会是更大系统中的一部分
模块与组件
从逻辑的角度来拆分系统后,得到的单元就是“模块”;
从物理的角度来拆分系统后,得到的单元就是“组件”。
划分模块的主要目的是职责分离;划分组件的主要目的是单元复用
框架与架构
框架:通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。
关键部分:
1)框架是组件规范:
2)框架提供基础功能的产品:
框架关注的是"规范",架构关注的是"结构"
学生管理系统:
业务逻辑的角度分解:
个人成绩模块 -> 登录注册模块 <- 个人信息模块
物理部署的角度分解:
nginx -> web服务器 -> MySQL
重新定义架构
软件架构指软件系统的顶层架构
系统、子系统、模块、组件、架构
"系统是一群关联个体组成" 这些“个体”可以是“子系统”“模块”“组件”等;架构需要明确系统包含哪些“个体”