九、基于构件的软件工程
基于构件的软件工程(Component-Based Software Engineering, CBSE)是一种基于分布对象技术、强调通过客服用构件设计与构造软件系统的软件复用途径。
CBSE 体现的是“购买而不是重新构造”的哲学
一、构件和构件模型
1、构件:
1)可组装型:所有外部交互必须通过公开定义的接口进行;
2)可部署性:软件必须是能作为一个独立实体在提供其构件模型实现的构件平台上运行,可以是二进制形式,也可以是源代码形式,这取决于具体的使用场景和需求;
3)文化档:构件必须是完全文档化的,用户根据文档来盘点构件是否满足需求;
4)独立性:应该可以在无其他特殊构件的情况下进行组装和部署;
5)标准化:构件标准化意味着在CBSE过程中使用的构建必须符合某种标准化的构件模型。
2、构件模型要素:
1)接口:操作名、参数、异常等等;
2)使用信息:构件全局唯一的名字,以及接口和属性信息;
3)部署:规格说明。
主流的构件模型:Web Services 模型、 Sun公司的EJB 模型、微软的.NET模型
3、构建模型提供自足被构建使用的通用模型:
1)平台服务:允许构建子安分布式环境下通信和互操作:
2)支持服务:构建需要的共性服务,例如:身份认证服务。
二、CBSE 过程
1、系统需求橄榄
2、识别候选购件
3、根据发现的构件修改需求
4、体系结构设计
5、构件定制与适配
6、组装构件,创建系统
在 CBSE 过程中,体系结构设计阶段特别重要,在这个阶段,将选择一个构件模型和一个实现平台,模型和实现平台也决定了可选构件的范围。