微众银行对新一代银行IT架构的设计与实现( 五 )
1、模块化理念
模块化是软件解决复杂问题所具备的手段,可降低软件的复杂性,减少开发工作量,从而降低开发成本,提高软件生产率。
"分而治之"的结论,把复杂的问题分解为很多容易解决的小问题,原来的问题也就容易解决,这就是模块化的依据。
当然,我们也要防止过度划分问题。当我们无限制划分软件,那么开发所需要的工作量会变得很小,但是其他因素开始起作用,整体成本不降反升。
如下图所示,开发单个软件模块所需要的工作量(成本)的确随着模块的数量的增加而下降,给定同样的需求,更多的模块意味着每个模块的尺寸更小。然而,随着模块数量的增长,集成模块所需要的工作量(成本)也在增大。这些特征导致其总成本的工作曲线成下述特征。存在一个模块数量M,可以导致最小的开发成本。一般无法预测M的值,但应该在模块化设计时尽量保持在M的附近,避免过高或过低的模块性。
推荐阅读
- 诸葛亮|甄姬退位,米莱狄下台,她取代诸葛亮成为新一代“法王”
- 韩信|典韦退位,韩信下台,0金币的她取代猴子成为新一代“野王”
- 沙雕|神回复:如果在澳门赢了804万5405元,放入银行会不会有事?
- 战地|战地2042新一代与上一代地图比较
- 我的世界|埋埋王者归来,开播五天订阅破10w,网友:不愧是新一代纯欲天花板
- 原神|原神:荒泷一斗强度引热议,新一代战神出现,零命就是完整机制
- 原神|原神:荒泷一斗技能曝光,能不耗体力连续重击,能抗能打的新一代砍王
- cdkey|明日方舟新六星狙击技能预测 有望成为新一代的物理版本小火龙
- 银行|魔兽世界TBC:二阶段开放时间确定,公会银行和同阵营战场提前体验
- 花鸟卷|完美打造阴阳师PVE新一代增伤工具人SP花鸟卷 这几个御魂最靠谱