特定领域软件体系结构PPT资料.ppt
《特定领域软件体系结构PPT资料.ppt》由会员分享,可在线阅读,更多相关《特定领域软件体系结构PPT资料.ppt(18页珍藏版)》请在冰豆网上搜索。
表示的就是某一特定领域的体系结构,通过大规模重用可以可靠、高效快速地实例化出一系列产品。
DSSA简介-定义对DSSA研究的角度、问题不同导致了对DSSA产生了不同的定义。
Hayes-Roth对DSSA的定义如下:
“DSSA就是专用一类特定类型的任务(领域)的、在整个领域中能有效地使用的、为成功构造应用系统限定了标准的组合结构的软件构件集合”。
Tracz的定义为:
“DSSA就是一个特定的问题领域中支持一组应用的领域模型、参考需求、参考体系结构等组成的开发基础,其目标就是支持在一个特定领域中多个应用的生成”。
DSSA的基本活动第一阶段:
领域分析这个阶段的主要目标是获得领域模型。
准备性的活动包括:
1)定义领域的边界2)识别信息源DSSA的基本活动第二阶段:
领域设计这个阶段的目标就是获得DSSA。
DSSA的特点:
1)DSSA不是单个系统的表示,而是一个高层次的设计。
2)DSSA要适当的具有变化性。
DSSA的基本活动第三阶段:
领域实现这个阶段的主要目标是依据领域模型和DSSA开发和组织可重用信息。
这些可重用信息可能是从现有系统中提取得到,也可能需要通过新的开发得到,它们依据领域模型和DSSA进行组织,从而支持了系统化的软件重用。
DSSA的建立过程1)定义领域范围2)定义领域特定的元素3)定义领域特定的设计和实现需求约束4)定义领域模型和体系结构5)产生,搜集可重用的产品单元以上这些过程是一个反复的、逐步求精的过程。
特定领域软件框架的提取方法
(1)需求分析和领域分析,建立用例图。
(2)识别核心业务流程和周边业务流程。
(3)参照传统业务流程,分析核心业务流程的细节。
(4)建立最初的核心业务流程模型。
(5)核心业务流程模型和传统业务流程的互相适应。
特定领域软件框架的提取方法(续)(6)核心业务流程模型的框架实现并向框架补充周边业务流程接口。
(7)为应用框架的各个接口选择具体的实现策略,完成该应用框架的一个实例。
(8)识别多个应用或应用框架中隐含的可变点。
(9)通过可变点的抽象化、参数化、抽象领域软件框架雏形。
特定领域的软件开发模型-双工程模型特定领域的软件开发模型-DSSA演化过程特定领域的软件开发模型-RC演化过程应用实例1-保险行业特定领域软件体系结构应用实例1(续)采用采用DSSADSSA后获得的好处后获得的好处
(1)相对于过去的开发方法,系统开发、维护的工作量大幅度减少,整个应用系统的构件复用程度相当大。
(2)便于系统开发的组织管理在大型系统开发过程中,最突出的问题是人员的组织问题。
采用了DSSA之后,开发中涉及核心技术的人员从15人左右下降到5人左右,其它的人力进行外围产品化的工作,如:
产品包装、市场销售,工具的开发,客户化服务等。
而过去这方面内容在技术部门是被忽视的而在应用软件工程中它们也占重要的住置。
(3)系统有较好的环境适应性,构件的升级引发应用系统的升级,并在构件库中合理的控制粒度,使系统的总体结构设计与算法和模块化设计同等重要,并灵活地保证新、老应用系统的共存。
应用实例2-航空食品配送领域软件体系结构应用实例2(续)1FoodConfigTool:
用来加密连接字符串和创建事件同志源的管理应用程序。
2FoodUtility:
起到的是数据访问辅助的作用。
3FoodUIMain:
主要是处理表示层最后要生成的可执行文件的项目,主要是程序主界面的处理。
4FoodUIBase:
主要是处理表示层所要继承的窗体和调用的公共类。
5FoodUIFly:
主要是处理表示层航班管理的业务。
6FoodUIEqp:
主要是处理表示层配送管理的业务。
7FoodUIStd:
主要是处理表示层标准管理的业务。
8FoodUISys:
主要是处理表示层系统管理的业务。
9FoodModel:
主要是对数据集的处理。
10FoodUICommon:
主要是处理对多种连接方式的处理。
11FoodIDAI。
:
数据接口,主要是对外提供数据接12FoodDALFactory:
数据工厂,主要是配置对不同数据库的访问,用来确定加载哪一个数据库访问程序集的类。
13FoodOracleDAL:
主要是处理对Oracle数据库的处理14FoodSQLServerDAL:
主要是处理对SQLServer数据库的处理15FoodBLL、FoodUIIBLL、FoodBLLFACTORY:
主要是处理业务逻辑接口和业务逻辑工厂,即业务逻辑组件存放之处。
谢谢