为什么使用分阶段进行软件系统

请添加图片描述
毫无疑问软件系统是相当复杂的。为了构建高质量的软件,必须遵循一种规则来取得成功,这个规则就是尽可能地保持简单。为了让大型的软件系统能够正常工作并且易于维护,必须将其分割为更小的更容易管理的单元。如何实现这一点呢?1962年发表的标题为“架构的复杂性”一文中,作者HerbertSimon作为诺贝尔奖的获得者总结了对稳定的系统的以下思考:

稳定的复杂系统通常具有一定的层级结构,每个系统由更简单的子系统构建而成,这些子系统又由更简单的子系统构建而成。这种方式是程序化软件开发过程背后的基本的功能分解方式,所以你可能已经相当熟悉了。在面向对象设计中,组合适用于这条准则,即通过简单的对象来构造复杂的对象。

稳定的复杂系统是可分解的。这意味着你可以识别组成系统的各个部分,以及这些部分之间的交互关系。稳定的系统中组成部分之间的交互要少于组成部分内部的交互。比如立体音响系统由更简单的器件组成,即话筒、转盘和扩音器。这种方式比集成系统更稳定,因为集成系统不容易分解。

稳定的复杂系统往往由不同类型的子系统以不同的方式组合而成。而这些子系统通常又由几种不同类型的部件组合而成。

可工作的复杂系统往往是从可工作的简单系统演化而来。我们往往不会从头建立新系统(即重新发明轮子),而是基于经过验证的系统来构建新系统。

——摘录《面向对象的思考过程》原书第5版

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值