集成工具与提高工具的互操作性是当前CASE发展的主要趋势。20世纪90年代,CASE工具逐渐发展成为集成化的CASE环境。
1.CASE集成环境的定义
“集成”的概念首先用于术语IPSE(集成工程支持环境),而后用于术语ICASE(集成计算机辅助软件工程)和ISEE(集成软件工程环境)。工具集成是指工具协作的程度。集成在一个环境下的工具的合作协议包括数据格式、一致的用户界面、功能部件组合控制和过程模型。
1)界面集成
界面集成的目的是通过减轻用户的认知负担而提高用户使用环境的效率和效果,因此要求不同工具的屏幕表现与交互行为要相同或相似。表现与行为集成包括工具间的用户界面在词法水平上的相似(鼠标应用、菜单格式等)和语法水平上的相似(命令与参数的顺序、对话选择方式等),甚至包含两个工具在集成情况下交互作用时,应该有相似的反应时间。界面集成性的好坏还反映在不同工具在交互作用范式上是否相同或相似,也就是说,集成在一个环境下的工具能否使用同样的比喻和思维模式。
2)数据集成
数据集成的目的是确认环境中的所有信息(特别是持久性信息)都作为一个整体数据能被各部分工具操作或转换。衡量数据的集成性,往往从通用性、非冗余性、一致性、同步性、交换性5个方面去考虑。
3)控制集成
控制集成是为了让工具共享功能。以下两个属性定义了两个工具之间的控制关系:一是供给,指一个工具的服务在多大程度上能被环境中另外的工具所使用;二是使用,指一个工具对环境中其他工具提供的服务能使用到什么程度。
4)过程集成
过程为开发软件所需要的阶段、任务和活动序列,许多工具都是服务于一定的过程和方法的。过程集成性是指工具适应不同过程和方法的潜在能力有多大。很明显,那些极少做过程假设的工具(如大部分的文件编辑器和编译器)比起那些做过许多假设的工具(如按规定支持某一特定设计方法或过程的工具)要易于集成。在两个工具的过程关系上,具有三个过程集成属性:过程段、事件和约束。
2.集成化的CASE环境的体系结构
集成化的CASE环境的体系结构如图1-8所示,包括用户界面层、工具集成层、对象管理层和软件工程信息库。
图1-8 集成化的CASE开发环境的体系结构示意图
1)用户界面层
由一个标准化的统一的界面工具箱和各种CASE工具所共同遵守的界面协议所组成。(www.xing528.com)
2)工具集成层
主要完成对构成集成CASE开发环境的所有工具的管理和协调任务。
3)对象管理层
主要完成在集成CASE开发环境中对软件开发信息的管理和集成,实现CASE工具与信息的集成以及信息与信息的集成。
4)软件工程信息库
在整个集成CASE开发环境中,软件工程信息库处于一个核心地位,是其他层次模块的基础。
3.集成化的CASE环境应该满足的要求
(1)建立软件工程信息库,允许CASE环境中的所有工具访问该数据库,共享软件工程信息。软件工程数据库存储软件工程项目在生命周期中的全部信息,包括项目合同、计划、进度、软件设计文档、软件模块、测试方案等,是软件工程环境的核心。
(2)当对数据库中的某一项信息进行修改时,环境提供相关信息项的修改控制机制。
(3)为软件工程信息提供版本控制和管理机制配置。
(4)允许直接或随机地访问环境中的任何工具。
(5)自动支持软件工程项目的任务分解并提供标准工作分解结构。
(6)支持工程师之间的通信。
(7)在软件开发工程中,能对项目的孤立和采用的技术进行度量,以便控制软件工程的过程和软件学习质量。
(8)帮助用户学习、使用环境中的每一个软件工具,验证工具的功能,体验人机界面环境。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。