组件、模块和子系统

Components, Modules, and Subsystems

从软件工程的角度来看,组件、模块和子系统之间有什么区别?

提前致谢!

以下是 UML 2.5 的一些发现:

  • Component:该子句指定了一组构造,可用于定义任意大小和复杂性的软件系统。特别是,它将组件指定为具有可在其环境中替换的定义明确的接口的模块化单元。组件概念解决了基于组件的开发和基于组件的系统结构领域,其中组件在整个开发生命周期中建模,并连续细化到部署和 运行 时间。

    第206.其实你找到了很多关于组件的信息

  • 子系统:存在许多适用于组件的 UML 标准构造型。例如,«Subsystem» 用于对大型组件进行建模,«Specification» 和 «Realization» 用于对具有不同规范和实现定义的组件进行建模,其中一个规范可能具有多个实现(请参阅标准配置文件)。

    第208(另见第 680 页)。很少使用子系统。

  • Module:UML 2.5 中根本不使用术语模块。但是,许多编程语言使用该术语来捆绑事物(主要是 类)。