软件架构之构件组装模型

随着软构件技术的发展,人们开始尝试利用软构件进行搭积木式的开发,即构件组装模

型。

在构建组装模型中,当经过需求分析定义出软件功能后,将对构件的组装结构进行设计,

将系统划分成一组构件的集合,明确构件之间的关系。在确定了系统构件后,则将独立完成

每一个构件,这时既可以开发软件构件,也可以重用已有的构件,当然也可以购买或选用第

三方的构件。构件是独立的、自包容的,因此架构的开发也是独立的,构件之间通过接口相

互协作。

构件组装模型的一般开发过程:

构件组装模型的优点如下:

(1)构件的自包容性让系统的扩展变得更加容易

(2)设计良好的构件更容易被重用,降低软件开发成本

(3)构件的粒度较整个系统更小,因此安排开发任务更加灵活,可以将开发团队分成

若干组,并行地独立开发构件。

鱼与熊掌不可兼得,构件组装模型也有明显的缺点:

(1)对构件的设计需要经验丰富的架构设计师,设计不良的构件难以实现构件的优点,

降低构件组装模型的重用度。

(2)在考虑软件的重用度时,往往会对其他方面做出让步,如性能等。

(3)使用构件组装应用程序时,要求程序员熟练地掌握构件,增加了研发人员的学习

成本。

(4)第三方构件库的质量会最终影响到软件的质量,而第三方构件库的质量往往是开

发团队难以控制的

相关推荐
吠品12 小时前
Wine 在 Linux 上运行 Windows 软件完整指南
java·linux·服务器
深念Y15 小时前
从 Windows 迁移到 Linux 开发环境的记录
linux·windows·链接·bun·ram·imdisk
知无不研16 小时前
Linux I/O复用之epoll
linux·服务器·epoll·socket编程
苏宸啊17 小时前
linux网络编程udp服务器和客户端代码编写(echo版本和字典版本)
linux·网络
~|Bernard|17 小时前
Linux 定时任务(Cron)完整教程
linux·运维·服务器
小雪崩17 小时前
嵌入式学习 day25:哈希表及排序与查找
linux·c语言·数据结构·学习·排序算法
奇树谦18 小时前
HDD 为什么适合顺序大文件读写:从 RAID 5 到 RAID 50 的原理与性能分析
linux·运维·网络
hi_ro_a19 小时前
Linux基础开发工具详解
linux·运维·服务器
嵌入式阿蔡19 小时前
Linux_01:交叉编译与开发环境实战——从单片机跨到 Linux 的第一道坎
linux·运维·网络·单片机·嵌入式硬件·嵌入式实时数据库
Pocker_Spades_A20 小时前
终端里也能斗地主:Linux部署Ratel,从本地对战到公网联机
linux·运维·服务器