提起建模,每一位软件开发人员都不会生疏,但我们还是要给它一个明确的定义:建模是人类对客观世界和抽象事物之间联系的具体描述.在过去的软件开发中,程序员利用手工建模,既耗费了大量的时间和精力又无法对整个复杂系统全面准确的描述,以至于直接影响应用系统的开发质量和速度.而今,我们不再为建模苦恼.
Rational公司曾以Ada语言享誉世界,今天以面向对象的可视化建模工具Rational ROSE博得了业界一片好评.正如美国《应用程序开发战略》Yourdou教授所评价的:“Rational Rose 将对面向对象应用程序开发技术产生巨大影响;使大型开发项目的分析,建模、设计规范化了,??rational公司已成为OO CASE界的Microsoft。”
Rational ROSE包括了一体化建模语言(UML),OOSE及OMT。其中一体化建模语言(UML)由Rational 公司三位世界级面向对象技术专家Grady Booch,Ivar Jacobson和Jim Rumbaugh通过对早期面向对象研究的设计方法的进一步扩展而得来的,为可视化建模软件奠定了坚实的理论基础。
< ----
今天,Rational Rose 作为Rational公司的又一个旗舰产品,由太平洋软件(中国)有限公司和美国Rational Software公司连手引入中国,通过共同建立的Rational(中国)有限公司向中国广大用户推荐,我们希望它能为提高中国计算机应用水平作出应有的贡献!---- >
1。可视化:设计的要害所在
计算机技术的飞速发展创造了人类历史上新的奇迹,但是,随着现代软件工程的复杂程度不断提高,项目失败的可能性也相应的境加了。信息系统的专家们发现当他们面对越来越多的源代码的时候,脑海中系统模型及其内部的联系也越发混沌和模糊了。面对现代社会庞大而繁杂的信息事务,专家们渴望使信息变得简单易懂。
无论何种复杂程度的工程项目,设计者都是从建模开始的,设计者通过创建模型和设计蓝图来描述系统的结构。比如说,电子工程设计人员使用惯用标记和示意图进行复杂的系统的最初设计,会计总是在表格上规划公司的财务蓝图,而行政治理人员则常使用组织流图这种可视化的方式来描述所治理的部门。 正是因为感到无法对整个复杂的系统全面地把握,所以我需要建模。人对复杂性的熟悉是有局限性的,对程序员来说,仅仅几行源代码是不能对整个开发项目提供一个全面熟悉的,而模型则可以使设计者从全局上把握系统及其内部的联系,而不至于陷入每个模块的细节之中。
建模的意义重大,“分而治之”,这是一个古老而有效的概念。可以想象,当我们把非凡复杂而困难的问题细化分解之后,一次只是设法解决其中一个的时候,事情就轻易解决多了。模型的作用就是便复杂的信息关联简单易懂得,它使我们轻易洞察复杂堆砌而成的原始数据背后的规律,并能有效地使我们将系统需求映射到软件结构上去。 1.1设计的三层结构
Rose支持三层结构方案。
客户机/服务器体系结构的广泛使用预示了系统复杂化的发展趋势,为了解决这一问题,与之相应的三层结构方案(three-tiered)越来越得到了广泛的应用。
传统的两层结构不是“胖客户机”就是“胖服务器”,胖客户机结构将事务处理原则在用户端处理,胖服务器则将之集成在数据库中,大量的数据流动为维护和编程带来了极大的困难,而且,其中包含的事务处理原则不能与其它应用共享。
三层结构方案是指由用户接口层、事务处理原则层和数据层的应用模型。与传统的两层结构相比,它有着更多的优点:
对应用结构任意一层做出修改时,只对其它层产生极小的影响。
固有的可塑性,三层既可共存于单机之中,也可根据需要相互分开。
公用代码数据库使事务处理规则在系统中共享。
1.2 新的挑战
新的解决方案也相应带来了新的挑战:
开发者必须采用新的思维方式划分和实现应用系统。
可重用的对象必须能被辩识和精炼。
必须决定如何把对象分配给组件和组件在网络(包括Internet)上如何分布。
应用程序必须不断地跟上业务需求的变化。
开发团体必须紧密配合开发应用程序。
基于组件的开发方式正在改变着应用项目的特性。
随着应用系统的开发变得不断复杂,即便是小的应用系统也包括多个分系统和多种组件,如何处理好复杂性的问题是关系到是否能够正确建立系统的要害。
好的软件结构和流程能够帮助开发者正确地解决这一问题,一个完好的结构可使开发过程飒爽流畅,并方便地随着需求的变化而改变。
2.什么是建模?
建模是使你逐层深入解决问题的方法:
确认应用系统的功能需求并为事务处理原则建模
对抽象的对象映射需求,辩认和提供设计模版并创建惯用的模版
分辨和设计对象或划分三层模型的服务
对软件的组成部分映射成对象并设计组件在网络上如何分布
以上工作写入白版文档,建模答应处理发生变化,通过建立抽象概念,设计者就可以有效地处理大型工程和复杂结构。建模建立起应用程序的客户和编程人员之间生动的联系。
3. 用Ratioal ROSE 实现建模
创建模型是帮助设计者实现任何复杂的工程项目的有力工具,在软件工程中,它能够把模型与实际应用紧密地联系起来。通过模型与代码之间的映射,可以直接为不同的程序开发环境生成系统结构的框架,通过建立模型和代码间的映射,可以确保代码改进时模型也随之更新了,而且通过模型与代码间自动连接,建模工具可以确保良好的设计实施。 3.1 何时需要建模
在应用开发的任何阶段进入建模工作都是有意义的,无可否认的是,在设计最初阶段,应将精力主要用于处理有关应用系统用途、为实现用途应采用何种编程环境,而不是考虑程序的细节,如在屏幕上的什么位置放置按钮等。
在项目开发的中期引入建模也是非常有意义的,Ratioal Rose既支持正向建模,同时也支持反向建模。Rose通过建立模型使开发人员把握程序开发的方向,准确完成需求分析中所要求的任务。 3.2 Rational ROSE的解决方案
Ratioal Rose产品为大型软件工程提供了可塑性和柔韧性极强的解决方案:
强有力的浏览器,用于查看模型和查找可重用的组件
可定制的目标库或编码指南的代码生成机制
既支持目标语言中的标准类型又支持用户自定义的数据类型
保证模型与代码之间转化的一致性
通过OLE连接,Ratioal Rose图表可动态连接到Microsoft Word中
能够与Rational Visual Test,SQA Suite和SoDA文档工具无缝集成,完成软件生命周期中的全部辅助软件工程工作
强有力的正/反向建模工作
缩短开发周期
降低维护成本
3.3 一体化建模语言
假如没有一个被普遍认可的国际标准,事情就会陷入混乱之中。Rational Rose提供对工业标准标记的独家支持,其中包括一体化建模(UML),这一即将在工业界成为标准的面向对象建模语言。一体化建模语言(UML)是早期面向对象研究和设计方法的进一步扩展,由世界级面向对象技术知名专家Grady Booch,Ivar Jacobson和Jim Rumbaugh对Booch,OOSE和OMT理论的研究基础上提出的,为可视化建模软件奠定了坚实的理论基础。一体化建模语言对建模语言提供了以下支持
使用事件模型
类和对象模型
组件模型
分布处理模型
Rational Rose产品在支持UML的同时,也支持OOSE及OMT。
3.4 Rationa Rose 对大型复杂项目的支持
Rational Rose支持绝大多数软件工程常见的个人/公共工作平台。直到所编制软件共享之前,软件工程师都可以在个人工作平台修改自己的源代码和已建立的模型。
在公共平台,通过在配置治理和版本控制系统(CMVC),模型改变可以共享,换句话说,其他开发可以观察和利用这些改变。
Rational ROSE能够与主要的CMVC工具集成。
Rational Rose也可支持企业级数据库。
4. Rational Rose系列产品
Rational Rose可视化开发工具与多种开发环境无缝集成,目前所支持的开发语言包括:Visual Basic,Java,PowerBuilder,C++,Ada,Smalltalk,Fort等。
Rational Rose的所有产品支持关系型数据库逻辑模型的生成,包括:Oracle 7,Sybase,SQL Server,Watcom SQL和ANSI SQL,其结果可用于数据库建模工具生成逻辑模型和概念模型,如:LogicWorks Erwin 和Powersoft和S-Designor。
Rational Rose系列产品可以支持:
工业级的功用分析
存储库和个人工作平台
CORBA-2/IDL的正向工程
用户自由选择Booch 93,OMT和UML标记
扩充的接口答应Rational Rose既充当OLE服务器又充当OLE控制器
ROSE脚本是一种与VBA兼容的脚本语言并且兼容Rose API,答应你创建GUI,功能单元和全定制的报告以及控制其他应用。
支持的平台
Windows 9X,NT ,Alpha NT, SGI,Solaris,AIX,Digital UNIX和HP-UX
.