
case工具综述.ppt
56页CASE工具,信管09-3班,摘要,随着科技发展的进一步深入,科技水平在不断得向前推进,而计算机科学与技术作为其中的一员,也在这样的一个发展潮流下阔步前进在这样的一个时代背景与科技环境下,一大批优秀的软件开发工具如雨后春笋般的涌现出来,而CASE工具就是这其中的代表它将软件开发过程中各过程中的工作通过其集成的平台共享,从而解决了重复编码、代码混乱,目标进度不清等缺点不仅提高了软件开发的效率和质量,同时也解放了广大IT技术人员,降低了软件开发的成本本文将对现有的CASE工具进行综述,介绍现有的CASE工具的种类、应用特点、发展现状及发展趋势等,希望通过本文的描述与讨论能使我们更加深入地交流CASE工具,加深对CASE工具的了解CASE工具,CH1、引言 CH2、为什么需要CASE工具 CH3、CASE工具的功能 CH4、CASE工具分类 CH5、CASE方法特点 CH6、常用CASE工具及各自特点 CH7、CASE的现状 CH8、CASE工具发展展望 CH9、CASE工具的使用前后策略 CH10、总结,CH1 引言,1.1 什么是CASE工具? 1.2 CASE的目的,1.1 什么是CASE工具?,CASE(Computer Aided(or Assisted)Software Engineering计算机辅助软件工程。
是计算机技术在系统开发活动、技术和方法中的应用,是软件工具与开发方法的结合体可以简单地把CASE理解为:CASE=软件工程+自动化工具 CASE的一个基本思想就是提供一组能够自动覆盖软件开发生命周期各个阶段的集成的、减少劳动力的工具CASE工具由许多部分组成,一般我们按软件开发的不同阶段分为上层CASE和下层CASE产品上层或前端CASE工具自动进行应用的计划、设计和分析,帮助用户定义需求,产生需求说明,并可完成与应用开发相关的所有计划工作下层或后端CASE工具自动进行应用系统的编程、测试和维护工作1.2 CASE的目的,通过一系列集成化的软件工具、技术和方法,实现分析、设计与程序开发、维护的自动化,提高软件开发的效率和软件的质量,最终实现软件系统开发的全面自动化具体目标有:,1.2 CASE的目的,提高效率 提高质量 加速过程 降低费用 实现系统设计的恢复和逆向软件工程的自动化 自动产生程序代码 自动进行错误的检查和校验 实现项目管理工作的自动化 改善软件开发过程的控制 集成软件开发的工具 提高软件的复用性和可移植性,CH2 为什么需要CASE工具?,在现今社会,系统的构建变得越来越复杂,CASE工具为项目开发设计的相关人员提供了许多好处。
CASE工具允许我们应用规范的面向对象分析和设计的方法与理论,远离纠缠不清的源代码,达到了构建和设计变得直观,并且更加容易的理解和修改的层次在大型项目中,通过使用CASE工具可以获得以下方便:,使用CASE工具可以获得如下方便:,通过用例模型,业务/系统分析可以捕获到业务/系统需求 设计者/构架师所作的设计模型能在不同层次的同一层内清晰表达对象或子系统 之间的交互(典型的UML图如类图和交互图) 开发者能快速地将模型转变为一个可运行的应用程序,寻找类和方法的子集,以及理解它们如何交互CH3 CASE工具的功能,Case工具具有如下功能: (1)用户通过CASE工具能创建软件开发各阶段所需要的图表 (2)收集有关图表上的对象以及对象之间关系的信息,以便建立一个完整的信息集合 (3)在一个中央资源库中,应将图表所表示的语义而不是图表本身存储起来 (4)根据准确性、一致性、完整性检查图表 (5)使用户能够用多种图表类型表示一个分析或设计的不同方面 (6)使用户能以图表来描述条件、循环、CASE结构和其它结构化程序结构 (7)实施结构化的模型和设计,尽可能达到准确、一致 (8)协调多个图表上的信息,检查信息的一致性,并集中检查信息的准确性、一致性和完整性。
CH4 CASE工具分类,按照CASE工具的功能,可以将它们划分为九类: (1)事务系统规划工具(Business Systems Planning Tools) (2)项目管理工具(Project Management Tools) (3)支撑工具(Support Tools) (4)分析和设计工具(Analysis and Design Tools) (5)程序设计工具(Programming Tools) (6)测试工具(Testing Tools) (7)原型建造工具(Prototyping Tools) (8)维护工具(Maintenance Tools) (9)框架工具(Framework Tools)用户开发系统所接触到的软件工具分类,图形工具:绘制结构图、系统专用图 屏幕显示和报告生成的各种专用系统:可支持生成一个原型 专用检测工具:用以测试错误或不一致的专用工具及其生成的信息 代码生成器:从原型系统的工具中自动产生可执行代码 文件生成器:产生结构化方法和其它方法所需要的用户系统文件CH5 CASE方法特点,(1) 解决了从客观世界对象到软件系统的直接映射问题,强有力地支持软件、信息系统开发的全过程。
(2) 使结构化方法更加实用 (3) 自动检测的方法提高了软件的质量 (4) 使原型化方法和OO方法付诸于实施 (5) 简化了软件的管理和维护 (6) 加速了系统的开发过程 (7) 使开发者从大量的分析设计图表和程序编写工作中解放出来 (8) 使软件的各部分能重复使用 (9) 产生出统一的标准化的系统文档CH6 常用CASE工具及各自特点,6.1 图稿绘制 6.2 原码浏览的工具 6.3 配置管理工具 6.4 数据库建模 6.5 其他CASE工具,6.1 图稿绘制,6.1.1 MS VISIO 6.1.2 smartdraw,6.1.1 MS VISIO,这是目前国内使用最多的一种case工具,它提供了日常使用中的绝大多数框图的绘画功能,同时提供了部分信息领域的实物图visio的精华在于使用方便,在文件管理上,它提出了分页和分组的管理方式visio支持UML的静态和动态建模,对UML的建模提供了单独的组织管理,且visio与word集成良好Visio的易用性良好,但因为其功能全面,所以在专门性上与部分专门性软件相比略有不足,表现举例: 在有关工程管理类上表现不如PROJECT; 画IDEF0图不如BPWIN; 画IDEF1X图无法与ERWIN相比; 此外,VISIO的图只能以对象的方式插入你的主文档,只有在它本身环境下才能修改。
Visio运行界面:,6.1.2 smartdraw,校园里比较流行的绘图软件它会提供很多模板,以目录的形式放在左边,有许多visio没有的方便的功能smartdraw本身是独立提供图稿绘制的工具,因而工具齐全6.2原码浏览的工具,6.2.1 SourceInsigt 6.2.2 SourceNavigator 6.2.3 Dia,6.2.1 SourceInsigt,以工程的方式管理原码,提供非常适合再工程的浏览手段整个模板分为三个部分,左边提供工程内的所有变量、函数、宏定义,右边提供程序阅读和编辑,下边显示你鼠标在原码触及的函数或者变量定义6.2.2 SourceNavigator,提供原码高亮显示和编辑,提供头文件的包含关系分析,提供类的层次关系其最大的特点是吧原码始终和文件联系到一起,提供到文件的导航,并且分析速度很快6.2.3 Dia,可以画图但是不可以生成代码6.3 配置管理工具,配置管理的重要意义在于维护文档的统一和可追溯性尽管宏观的配置管理包括很多内容,但是我们最常用到的是对程序代码的版本控制 6.3.1 Virsual Source Safe 6.3.2 PVCS 6.3.3 ClearCase 6.3.4 CVS,6.3.1 Virsual Source Safe,该工具提供了基本的认证安全和版本控制机制,包括入库、出库、分支、标准等功能,能够对文本、二进制、图形图像几乎任何类型的文件进行控制,提供历史版本对比。
6.3.2 PVCS,该工具是世界领先的软件开发管理工具,市场占有率达到了70%以上,是公认的事实上的工业标准PVCS包含多种工具,可以完整、详细地记录开发过程中出现的变更和修改,并使修订版本自动升级,同时提供追踪和管理,可以有效的避免重复开发6.3.3 ClearCase,该工具提供了VOB的概念进行配置管理,功能很强大,是目前世界上最强大的配置管理工具之一,由于它采用许多新的配置管理思想,使得相对于传统的CVS、VSS、PVCS等版本管理工具,ClearCase有许多突出的特点6.3.4 CVS,在linux和unix下系统自带的版本控制工具,是版本控制中工具的鼻祖,功能十分强大,但是都得通过命令行的形式来操作,不便使用6.4 数据库建模,6.4.1 ERWin 6.4.2 PowerDesign 6.4.3 Rational Rose,6.4.1 ERWin,这是一个强大的老牌数据库建模工具,界面简洁漂亮,采用ER模型对内存要求较高,不适合非常大的数据库,同时对于中文的支持不是很好6.4.2 PowerDesign,该工具致力于采用基于Entity-Relation的数据模型,分别从数据概念数据模型和物理数据模型两个层次对数据库进行设计。
概念数据模型描述的是独立于数据库管理系统的实体定义和实体关系定义物理数据模型是在概念数据模型的基础上针对目标数据库管理系统的具体化该工具的功能强大,使用非常方便不仅提供了概念模型和物理模型的分组,同时可以产生几乎所有常用数据库管理系统的SQL脚本,它提供增量数据库开发功能,支持局部更新PowerDesign运行界面,6.4.3 Rational Rose,该工具利用模型驱动的方法进行软件开发,可以保证系统的可扩展性、灵活性和可靠性该工具可以帮助使用者以一种可预测的、受到良好控制的方式来实施变更,使得使用者可以迅速地开发可靠的代码借助该工具,开发人员可以用一个建模工具开发所有的项目该工具支持对象模型、数据模型和数据存储模型的创建,可以映射逻辑和物理模型,从而灵活地将数据库设计演变为应用程序逻辑,支持数据模型、对象模型和已定义数据语言文件/数据库管理系统之间的双向工程6.5 其他CASE工具,6.5.1 ModelMaker:ModelMaker 6.5.2 Enterprise Architect 6.5.3 Visual Paradigm,6.5.1 ModelMaker:ModelMaker,常被认为是一个UML图形工具或是Delphi Case工具,然而,它比一般的图形工具和Case工具要快得多,有时,它可为你写一些人工智能式的代码。
它是可扩展的,支持UML图,设计模式,逆向生成与分解的双向代码管理工具等 它的核心则为,它支持本地代码模型,你所有的类及其关联元素(单元,图,文档及事件类型等等)都是模型内部的对象 ModelMaker为活动模型提供了多种视图,允许你在类列表,元素列表或图集中进行操作,如果你已有准备,你即可从模型中生成源代码单元,并可由Delphi来进行编译,以后生成的单元每次也可重新生成你可对各种不同的设置进行修改(例如代码注释选项,代码次序,方法使用等等),并且可为多种需求重新生成单元(调试代码,自动生成的大量注释代码等)ModelMaker还是一个两路的面向类树的高效的、重构的以及 UML方式的 CASE工具它有两个版本:一个 Pascal版本,一个 C#版两个版本都包含了 ModelMaker认证1) Pascal 版专门用于生成本地的 Delphi代码完全支持Delphi 的 Object Pascal语言,且包括了大部分的 Delphi组件ModelMaker Pascal Edition 具有完全反转工程的能力,并且可以导入现存的 Delphi 代码Delphi IDE Integration experts 考虑了同步 ModelMaker 以及 Delphi IDE 编辑器。
(2) C# 版用于专门生成本地的 C# 代码对于.NET 框架语法,它完全支持 C#1.1、2.0 和3.0三个版本ModelMaker C# Edition具有完全反转工程的能力,并且可以导入现存的 C# 代码Visual Studio IDE Integration experts 和Delphi一样也考虑了同步 ModelMakerDelphi 以及 Visual Studio IDE编辑器都包含ModelMaker的许可。












