`

软件开发工具介绍之 建模工具

 
阅读更多

今天,系统的构建变得越来越复杂,UML建模CASE工具为项目相关人员(如,项目经理,分析员,设计者,构架师,开发者等)提供了许多的好处。UML建模CASE工具允许我们应用规范的面向对象分析和设计的方法与理论,远离纠缠不清的源代码,达到构建和设计变得更直观,更容易地理解与修改的层次。在大型项目中,使用CASE工具更重要。通过使用CASE工具:
  * 通过用例模型,业务/系统分析可以捕获到业务/系统需求。
  * 设计者/构架师所作的设计模型能在不同层次的同一层内清晰表达对象或子系统之间的交互(典型的UML图如类图和交互图)。
  * 开发者能快速地将模型转变为一个可运行的应用程序,寻找类和方法的子集,以及理解它们如何交互。
  模型被看作是蓝图和构建系统的最终手册。同样,建模也就是一种从高层并以适当的形式来考虑一个设计的表述和理解它怎样运行的能力。出于这些动机,UML CASE工具以及对应的方法论为我们提供了一种因系统太复杂而不能理解下层源代码的描述系统的方法,同时允许我们更快更便宜地开发正确的软件解决方案。 当然,要考虑CASE工具在UML建模能力,项目生命周期支持,双向工程,数据建模,性能,价格,可支持性,易使用性等方面的不同。

 

1.Rational Rose

是一种基于UML的建模工具。在面向对象应用程序开发领域,Rational Rose是影响其发展的一个重要因素。Rational Rose自推出以来就受到了业界的瞩目,并一直引领着可视化建模工具的发展。越来越多的软件公司和开发团队开始或者已经采用Rational Rose,用于大型项目开发的分析、建模与设计等方面。
从使用的角度分析,Rational Rose易于使用,支持使用多种构件和多种语言的复杂系统建模;利用双向工程技术可以实现迭代式开发;团队管理特性支持大型、复杂的项目和大型而且通常队 员分散在各个不同地方的开发团队。同时,Rational Rose与微软Visual Studio系列工具中GUI的完美结合所带来的方便性,使得它成为绝大多数开发人员首选建模工具;Rose还是市场上第一个提供对基于UML的数据建模 和Web建模支持的工具。此外,Rose还为其他一些领域提供支持,如用户定制和产品性能改进。

 

2.Enterprise Architect
Enterprise Architect是一个全功能的、基于UML的visual CASE工具,主要用于设计、编写、构建并管理以目标为导向的软件系统。它支持用户案例、商务流程模式以及动态的图表、分类、界面、协作、结构以及物理模 型。此外,它还支持C++、Java、Visual Basic、Delphi、C#以及VB.Net。

 

3.visio

这是目前国内用得最多的case工具。它提供了日常使用中的绝大多数框图的绘画功能(包括信息领域的各种原理图,设计图),同时提供了部分信息领域的实物图。visio的精华在于其使用方便,安装后的visio2000既可以单独运行,也可以在word中作为对象插入,与word集成良好,其图生成后在没有安装visio的word仍然能够查看。使用过其他绘图工具的朋友肯定会感受到visio在处理框和文字上的流畅,同时在文件管理上,visio提供了分页、分组的管理方式。visio支持 UML的静态和动态建模,对UML的建模提供了单独的组织管理。从2000版本后visio被Microsoft收购,正式成为Office大家庭的一员,目前最新版是2002。纳入名门的visio2002被微软的风格所同化,样子出现了一些华而不实的东西,但是功能上visio不减从前,各种器件模版有了许多增进。
  它是最通用(MS的东西,意味着许多附带的通用的东西)的硬件、网络平台等图表设计软件。好处是易用性高,特别是对不善于自己构造图的人。但是正因为很全,所以某个方面上会造成专业程度较低。
  有关工程管理类的显然不如PROJECT2000好用;
  画IDEF0图显然不如BPWIN好用;
  画IDEF1X图显然无法与ERWIN相比;
  画组织机构图WORD足够用了,且普遍适用;
  画网络拓扑结构图只要有相应的图素,用什么画都行;
  画有关图表类的显然不如EXCEL好用;
  关键的是,VISIO的图只能以对象的方式插入你的主文档,只有在它本身环境下才能修改。

 

4.PowerDesigner

对对象模型和数据库建模两者的支持力度已经大抵相等,此外,还支持概念模型、业务模型、需求模型、XML模型、信息流模型、自由模型的分析设计。不过对后面这几个模型的支持比较初级,而且在实际的应用中,这些模型用得也比较少,PowerDesigner的突出亮点还是在数据库建模和对象模型的设计上。

对于数据库模型,PowerDesigner支持20余种数据库,对于同一数据库的不同版本还提供单独的支持,以便在设计数据库模型时,提供数据库和版本相关的设计。对于面向对象模型,PowerDesigner支持11种主流语言,为对Java 5.0提供单独的支持。
Rose基本上可以说是一个对象模型设计工具,对数据库模型的支持相对粗糙,内嵌的只支持Oracle 8数据库,对其他数据库设计的支持需要通过安装插件的方式获得,且对数据库物理存储参数等较细粒度的内容支持得比较粗糙。Rose的对象模型主要支持Java、VC和VB三种语言。

从将程序代码转换为设计模型的逆向工程功能上看,Rose更象一个IDE,它会对需要逆向工程操作的程序代码进行深度语义检查,如果存在诸如程序代码引用了类库之外的类,反向工程将失败,而且在报告失败之前,窗口会陷入长时间无响应状态。
PowerDesigner仅对需逆向工程的程序代码进行浅度语法检查,这种浅度语法检查不涉及包,类之间的关联,仅对诸如类名是否和类文件名匹配,是否少了“}” 等语法性的内容进行检查。即便存在错误,PowerDesigner也允许你忽略错误,继续进行逆向工程操作,这种宽松的限制带来了很大的便利。

文档导出功能
PowerDesigner对文档导出提供了精细的控制,你不但可以对文档所包含的内容项进行设置,还可以对内容项的格式进行设置。如导出的表结构是否包括名称、数据类型、备注等项目,这些项目在表栏中的宽度占比,颜色,字号等等,不一而足。

在导出设计模型的代码时,PowerDesigner提供了精细的控制,不但可以进行对象级别,还可以进行代码级别的控制(如是否要生成字段备注的代码,外键代码在表体代码内声明还是在表体外部声明等),而Rose没有提供代码导出的控制,也只能按其系统内部设置的方式导出代码。

 

5.StarUML

是一个运行在Win32上快速,灵活,可扩展,功能强大的UML/MDA平台。开源项目StarUML的目的是提供一个可以用来代替知名商业UML工具比如Rational Rose,Together等的建模工具和平台。您可以到StarUML的官方网站(http://www.staruml.com/)下载http://staruml.sourceforge.net/

 

6.JUDE

是一款全新的轻量级 UML 建模工具,支持 UML1.4 规范中定义的所有图,并且创新地集成了思维导图和 UML 。采用 100% 纯 JAVA 构建的 JUDE 可以实现跨平台应用。 JUDE 不仅能够实现分布式建模、项目合并,还能够实现和其他建模工具的交互。 JUDE 的 JAVA 双向工程功能更是可以减轻开发人员的工作量JUDE是一个中日合作的软件项目,有商业化的Professional版本和免费的Community版本,最大的区别是免费版的不支持UML 2.0,对于一般应用足够了

 

7.ArgoUML

有什么独到之处呢,除了安装简便(安装完成仅有不到6M的大小)之外,还有以下特点: 1.Cognitive Psychology:符合认知心理学; 2.open standards:符合公开的UML标准; 3.100% pure Java:完全基于Java; 4.an open source project:是一个开源项目。 开源的建模工具 ArgoUML,ArgoUML 基于 BSD license 发布,支持九种标准的 UML diagrams

所以Rose显得大而化之,而PowerDesigner则比较精细和具体化。Rose的逆向工程,文档输出,代码生成等输入输出功能上表现得比较生硬单调,PowerDesigner在逆向工程,特别是文档输出和代码生成这些功能上提供了精细的控制,让用户拥有高度的自由度。

分享到:
评论

相关推荐

    jude开发工具uml建模工具

    《Jude:一款高效易用的UML建模工具》 在软件开发过程中,UML(统一建模语言)作为一种标准化的建模方法,能够帮助我们清晰地表达系统设计思想和流程,从而提高开发效率和代码质量。而Jude正是这样一款专为UML建模...

    2021年10月自考软件开发发工具试题真题整理.pdf

    1. 软件开发工具的发展阶段:软件开发工具的发展可以分为几个阶段,从专门用于支持软件开发的软件开发工具的出现,到现在的多样化和趋同性并存的阶段。 2. 软件开发工具的概念模式:软件开发工具的概念模式包括数据...

    IEC61850建模工具及示例

    基于C#开发的32位libiec61850建模工具(需要.NetFramework4.0支持)。工具实现对ICD文件进行静态建模、动态建模、模型代码和模型解析功能。压缩包包含11个用于测试验证的ICD文件。具体操作说明参考...

    UML建模工具一览

    UML(Unified Modeling Language)是一种标准化的通用建模语言,用于软件系统的设计和开发。...无论选择哪一款,UML建模工具都能有效地提高软件开发的效率和质量,确保项目按照预设的结构和规范进行。

    playcase软件工程建模工具

    "playcase软件工程建模工具"是一款专为软件开发人员设计的强大工具,它极大地简化了软件工程中的建模过程,从而提升开发效率和代码质量。软件工程是一个复杂的过程,涉及需求分析、设计、编码、测试等多个阶段,而...

    软件开发工具与环境考试大纲

    【软件开发工具与环境】是计算机应用专业的重要课程,旨在教授学员如何利用现代软件开发工具提升软件开发效率和质量。课程覆盖广泛,包括各种操作系统、开发环境和CASE工具的使用。 第一章介绍了软件开发工具和环境...

    UML建模语言及其开发工具Rose课件(完整版).pptx

    Rational Rose 是一个功能强大的 UML 建模工具,广泛应用于软件开发、系统设计和业务流程改进等领域。本课件将从 UML 的基础知识和 Rational Rose 的使用方法入手,详细介绍 UML 静态建模、UML 动态建模、UML 双向...

    软件可视化建模工具-UML介绍

    **UML(统一建模语言)**是一种标准化的可视化建模工具,专为软件工程设计,它涵盖了系统分析、设计和迭代开发等多个方面。UML的全称是Unified Modeling Language,由数据建模、商务流程模型、对象建模方法和软构件...

    jtest domain领域建模工具

    "jtest domain领域建模工具"是一款专门用于软件开发中的领域建模的高效辅助工具,它可以帮助开发者更好地理解和表达业务领域的复杂性,从而提高软件设计的质量和效率。领域建模是面向对象分析与设计的重要组成部分,...

    软件开发工具与环境综述

    软件开发工具与环境是现代软件工程中不可或缺的组成部分,它们旨在提高软件开发的效率和质量,支持软件的全生命周期管理。软件开发工具涵盖了从需求分析到维护的各个环节,包括操作系统、编译器、解释器、汇编器,...

    3D建模软件:Blender二次开发+Blender的PythonAPI详解+Python脚本基础+自定义渲染引擎开发全套教程

    3D建模软件:Blender二次开发_Blender基本操作与界面介绍.docx 3D建模软件:Blender二次开发_Blender的PythonAPI详解.docx 3D建模软件:Blender二次开发_Python脚本基础.docx 3D建模软件:Blender二次开发_优化与...

    iXModelBuilder管网建模工具操作手册.pdf

    该软件集合了多种参数化建模工具,包括针对管网的三维参数化建模工具、矿山参数化建模工具、道路三维参数建模软件等,其核心思想是通过参数化定义来创建模型。 软件的研发背景是为了满足国内相关行业在三维建模方面...

    建模工具(附源码)

    对于想要深入理解和使用这款建模工具的用户,他们需要掌握的基础知识可能包括UML语言、建模的基本概念和原则、编程基础知识(特别是与该工具相关的语言),以及如何利用源码进行软件开发和调试。同时,熟悉系统设计...

    软件开发工具试题

    试题还涵盖了其他多项选择题和填空题,这些题目进一步探讨了软件开发工具的类别、作用、困难、项目管理、建模工具、多媒体技术特性和软件开发的规范等方面。例如,提高软件质量的方面包括规划、分析、设计和文档管理...

    软件开发工具(全国)1

    第一章“绪论”主要介绍了软件开发工具的由来和发展历程。软件开发工具并非孤立存在,它们是基于人类社会不断发展的技术需求而诞生的。这一章将阐述从早期的手工编码到现在的自动化、智能化工具的演变过程,帮助读者...

    北大开发的软件建模工具PKUModeler

    PKUModeler是由北京大学开发的一款强大的软件建模工具,专门用于支持软件开发过程中的各种建模活动。它集成了多种UML(统一建模语言)图类型,以帮助开发者更好地理解和表达软件需求、设计和结构。以下是对...

    VS2010建模工具

    综上所述,Visual Studio 2010的建模工具集成了多种功能,旨在改善软件开发过程中的各个阶段,从需求分析、设计、编码到测试。通过使用这些工具,开发团队能够更好地理解和管理复杂的软件项目,提高生产力并降低风险...

    石墨建模工具教程

    石墨建模工具,全称为Graphite Modeling Tools,是3ds Max软件中一套强大的建模插件,尤其在处理Poly(多边形)建模时提供了显著的性能提升。它由Autodesk公司开发,整合了之前的独立脚本插件PolyBoost,自3ds Max ...

    《软件开发生命周期与统一建模语言UML》[电子教案]

    《软件开发生命周期与统一建模语言UML》是一份重要的教育资源,主要涵盖了软件工程中的核心概念和技术。软件开发生命周期(SDLC)是指导软件项目从概念化到最终产品交付的一系列阶段,包括需求分析、设计、实现、...

Global site tag (gtag.js) - Google Analytics