首页 使用RationalRose快速建立软件的原型模型

使用RationalRose快速建立软件的原型模型

举报
开通vip

使用RationalRose快速建立软件的原型模型使用RationalRose快速建立软件的原型模型 Ξ 使用 Rational Rose 快速建立软件的原型模型 石海燕 ()绍兴文理学院 计算机系 ,浙江 绍兴 312000 摘 要 :利用具有正/ 反向建模工作能力的 Rational Rose 以及 MFC 来方便快捷地建立软件系统的原型模型 ,在整个开发过程 中 ,系统的框架结构都由 MFC 和 Rose 自动创建 ,可缩短开发周期 ,降低维护成本 ,大幅度地提高程序的安全性 ,使编程过程 更规范合理 . 关键词 :面向对象技术 ; Ration...

使用RationalRose快速建立软件的原型模型
使用RationalRose快速建立软件的原型模型 Ξ 使用 Rational Rose 快速建立软件的原型模型 石海燕 ()绍兴文理学院 计算机系 ,浙江 绍兴 312000 摘 要 :利用具有正/ 反向建模工作能力的 Rational Rose 以及 MFC 来方便快捷地建立软件系统的原型模型 ,在整个开发过程 中 ,系统的框架结构都由 MFC 和 Rose 自动创建 ,可缩短开发周期 ,降低维护成本 ,大幅度地提高程序的安全性 ,使编程过程 更规范合理 . 关键词 :面向对象技术 ; Rational Rose ; MFC () 文章编号 :1008 - 293X200610 - 0031 - 05 中图分类号 : TN948. 61 文献标识码 :A 基于原型模型系统的软件开发方法是目前软件工程中常用的一种开发方法 ,如何快速建立一个原型 系统 ,同时可以对系统进行灵活地修改是软件项目成功的关键步骤之一. 本文基于面向对象技术 , 利用 Rational 公司的软件 Rose 及微软公司的 MFC 实现了快速建立软件的原型模型的方法 ,同时将系统设计和 代码编写统一起来. () 面向对象技术 Obiect Oriented Technology ,简称 OOT是一种新的软件开发和程序设计方法 ,用面向对 象技术开发的程序是面向对象的 ,它直接描述客观世界的对象及其相互关系. 用传统的程序设计方法开发 的程序与用面向对象技术开发的程序相比 ,无论在程序代码的可读性 、可扩充性 、可视性 、重用性方面 ,还 是在程序维护性 、适应性 、软件的生存周期等方面都是无法比拟的. 在运用面向对象技术进行程序开发时 ,主要有两部分工作 :即设计界面和编写代码. 在开发过程中所 () ( ) 看到的界面 ,与程序运行时的界面基本相同 可视性,同时 ,应用软件 如 VB ,VFP ,VC ++ ,C # 提供了若 () 干界面设计所需要的控件 即对象,在设计界面时 ,程序员只需将所需要的控件放到窗口的指定位置即可 ,整个界面设计过程不需要编写代码 ,而且 ,程序设计人员在利用面向对象技术进行程序设计时 ,不再是 从代码的第一行一直编到最后一行 ,而是考虑如何创建对象 ,利用对象来简化程序设计 ,这样就提供了代 码的重用性. 最重要的是 ,面向对象技术完全摈弃了以往传统的程序设计方法 ,引入了类 、对象 、消息 、继承性等概念. 对象之间的相互作用通过消息来实现 ;继承性使面向对象技术的软件系统中子类可以完全继承 父类的属性 、操作和约束规则. 如果你定义了一个有某种功能的类 ,你可以很快地扩展这个类 ,创建另一个 具有扩展功能的类 ,使程序具有较好的可扩充性 、灵活性. 在面向对象技术中 ,模块性是与生俱来的 ,具体 表现为类和名字空间中具有相同功能的类 ,你可以向名字空间中增加一个类 ,却不会影响名字空间的其他 〔1 ,2〕 成员 ,因而有利于软件系统的维护. 利用面向对象技术进行程序设计和软件开发是历史的必然.1 Rational Rose 介绍 1 . 1 一体化建模语言与可视化建模工具 () () Rational Rose 提供对工业 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 标记的支持 ,其中包括一体化建模语言 UML. 一体化建模语言 UML 是早期面向对象研究和设计方法的进一步扩展 ,由世界级面向对象技术知名专家 Grady Booch , Ivar J acobson和 J im Rumbaugh 对 Booch ,OOSE 和 OMT 理论的研究基础上提出的 ,为可视化建模软件奠定了坚实的理论 基础. Rational Rose 产品在支持 UML 的同时 ,也支持 OOSE 及 OMT. 可视化建模使用图形的标志符号形象地描述系统模型. 在过去的软件开发中 ,程序员利用手工建模 , Ξ 收稿日期 :2006 - 10 - 08 () 作者简介 :石海燕 1977 - ,女 ,浙江诸暨人 ,助理实验师 ,研究方向 :软件工程 、模式识别 、人工智能 . 既耗费了大量的时间和精力 ,又无法对整个复杂系统全面准确的描述 ,以至于直接影响应用系统的开发质 量和速度. 现在 ,我们可用 Rational Rose 来建模 ,建立起应用程序的客户和编程人员之间的联系. ( ) 1 . 2 Rational 统一过程 RUP Rational Rose 除了提供对 UML 语言的支持以外 ,还给出了一套行之有效的软件开发过程 ,即 Rational ( 统一过程. RUP 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 了许多成功软件项目开发过程中的经验 ,包括六个方面 ———迭代式开发 develop soft2 ( ) ( ) ware iteratively,管理需求 manage requirements,使用基于构件的体系构架 use component - based architec2 () () ( ) tures,可视化软件建模 visually model software,验证软件质量 verify software quality,控制软件变更 control ) ( ) ( changes to software;然后将整个软件的开发过程划分为四个阶段 ———初始 Inception阶段 ,细化 Elabora2 〔3〕( ) ( ) ) tion阶段 ,构造 Construction阶段 ,移交 Transition阶段. 1 . 3 Rational Rose 中的正向/ 反向建模功能 本文主要利用了 Rational Rose 的正向/ 反向建模功能. 在 Rational Rose 中提供了对许多程序设计语言 的支持 ,如 ANSI C ++ ,Ada ,J 2 EE ,J ava ,Oracle ,VB ,VC ++ 和 C # . 其正向功能可以将在 Rose 中建立的各种 系统模型转化为以上这些程序设计语言的源代码 ,这种模式为将来的软件开发提出了一个方向. 由模型自 动产生的源代码规范可读性好 ,由此而建立的系统鲁棒性高. 当开发人员添加/ 更改代码或者缺少系统模 型的情况下 ,反向工程则可以通过代码生成系统模型. 2 VC6 . 0 中的 MFC 程序开发模式 () MFC Microsoft Foundation Class Library中的各种类结合起来构成了一个应用程序框架 ,它的目的就是 让程序员在此基础上来建立 Windows 下的应用程序 ,这是一种相对 SDK 来说更为简单的方法. 总体上 , MFC 框架定义了应用程序的轮廓 ,并提供了用户接口的标准实现方法 ,程序员所要做的就是通过预定义 的接口把具体应用程序特有的东西填入这个轮廓. Microsoft Visual C ++ 提供了相应的工具来完成这个工 () 作 :AppWizard 可以用来生成初步的框架文件 代码和资源等;资源编辑器用于帮助直观地设计用户接口 ; ClassWizard 用来协助添加代码到框架文件 ;最终通过类库实现应用程序特定的逻辑. MFC 发展到今天 ,已经十多年了 ,尽管褒贬不一 ,但可以肯定 ,十几年的技术积累已经奠定了 MFC 的 () 生存基础 ,即使 Microsoft 的长角 Longhorn发布 ,MFC 也不能退出 Windows 的舞台. 事实上 ,长角之后的 Vi2 sual Studio . NET 仍将 MFC 作为一个重要的组成部分 ,在 Visual Studio . NET 2005 中 ,MFC 在 C ++ 的位置依然 如故 ,它依然是一项重要的程序开发手段 ,这也是我们选择 MFC 作为开发工具的原因. 3 快速建立软件的原型模型 3 . 1 生成应用程序框架及建立系统的初始可视化模型 () 使用 MFC 的应用程序向导 AppWizard可以快速生成应用程序的框架 ,经过编译后我们可以立刻得到 应用程序的可执行版本. 在没有使用 Rose 之前 ,程序员在此基础上也可以根据用户的需求来添加合适的 功能模块 ,此时需求分析和代码编写是分离的. 我们基于软件工程的思想 , 将软件开发过程也看成是软 〔4〕件 ,提出在 Rose 中建立应用程序的可视化模型 ,利用 Rose 的代码生成工具来自动更新系统代码的软件 开发方法 ,将需求分析和代码编写结合在一起. 在使用 MFC 的应用程序向导获得一个应用程序的可执行版本后 ,利用 Rose 的反向工程工具 ,可以得 到系统的初始可视化模型 . 对于单文档的应用程序框架可以得到如图 1 所示的以类图表示的初始可视化 模型. 3 . 2 在 Rose 中添加原型系统需要的类 〔4〕在面向对象的程序设计中 ,系统的各项功能是由系统中类的实例即对象之间的相互作用完成的,利 用 UML 语言可以清晰地进行原型系统的需求分析. 本文采用类图来描述系统的结构 ,在 Rose 中可以方便 地创建新类 ,以及设置类之间的关联及依赖关系 ,同时使用 Rose 中的模型辅助工具自动实现类的基本方 法 ,以及所有属性的封装函数 ,大大节省了系统开发时间 . 经过更新的类图如图 2 所示. 图 1 系统初始的可视化模型 图 2 更新后的系统的可视化模型 3 . 3 由 Rose 中的类图模型自动生成原型系统的框架 通过模型来生成代码是未来软件产业一个发展方向 ,与发展迅速的硬件技术相比较 ,软件技术则落后 很多 ,软件危机一直是软件行业必须面对的痛楚. 在手工的软件开发方法中 ,由于人的诸多不确定因素 ,很 难保证软件的高质量 ,实际开发中 ,人们总要花费很多的人力和物力来进行软件的测试. 而采用代码的自 动生成方法则可以降低不确定因素 ,提高编码的质量 ,本文采用 Rose 的代码生成工具来快速生成原型系 统的框架代码 ,一方面大大提高了程序开发的速度 ,另一方面提高了代码的质量. 3 . 4 具体实现类中的方法 通过 Rose 的代码生成工具 ,我们已经为系统中的每一个类及方法都创建了基本的代码 ,其后的工作 只是为这些方法添加具体的实现代码 ,在软件工程中对应为详细设计和编码部分的工作 ,这在整个软件工 程过程中 ,是比较简单的一个环节. 本文接下来以一个 CAD 项目的原型系统来举例说明我们的工作 ,该实 例获取用户在屏幕上绘制的一些基本的图形元素 ,将他们保存在内存中 ,并重新绘制出来. 4 实例 ( ) a . 使用 MFC6 . 0 应用向导生成单窗口 或多窗口的应用程序 ,我们为该项目取名为 Shape ,使用多文 档模式 ,其他为缺省设置 ,程序生成后 ,编译运行 ,然后通过 Rose 工具 VC ++ 的 Update Model from Code 功能 模块将项目 Shape 导入到 Rose ,并生成系统的类库模型 ,如图 1 所示. () b. 在 Rose 的 Logic View 中为系统创建 3 个新类 ,分别为 : 线段 、矩形和图形 Line , RectAngle , Shape, 并设定这 3 个类之间的继承关系为 : Shape 为父类 ,Line 和 RectAngle 为子类. c . 通过 Rose 的类图窗口为系统中的类添加类成员 : ?为 Line ,RectAngle 和 Shape 类添加图形绘制函数 Draw ,设置该函数的类型为虚拟函数 ,其参数类型 指向显示描述表的指针 :CDC 3 ,返回值为空 ; ?在 Line 中添加属性 ptStart 和 pt End ,它们的类型为 CPoint ,用于存放直线段起点和终点 ; ?在 RectAngle 类中添加 ptLeftTop 和 ptRightBottom ,类型为 CPoint ,用于存放矩形的左上角和右下角 ; ?在 CShapeDoc 类中添加方法 AddShape ,参数类型为 Shape 3 ,返回值为空 ,用于添加图形元素 ,同时 添加不带参数的方法 ClearShape ,用于程序退出时释放用于保存图形元素的内存空间 ; ?在 Shape 类中添加属性 next ,类型为 Shape 3 ,我们使用该指针来维护一个链表 ,用于存放用户绘制 的图形元素 ; ?在 CShapeView 中添加属性 ptFirstPoint ,类型为 CPoint ,用于存放鼠标按下时的位置 ;ptSecondPoint 类 型为 CPoint ,用于存放鼠标释放时的位置 ; bMouseDown 类型为 bool ,且初始值设为 false ,用于标识鼠标左键 是否按下 ;iOperationMode 类型为 int ,初始值设为 0 ,表示当前输入的图形类型 . d. 利用 Rose 工具中的 Component Assign Tool 将 Line , RectAgl , Shape 3 个类加入到 shape 组件中 ,即为 这三个类选定实现的语言为 VC ++ ,并使用 model assistant 为刚才增加的属性自动添加存取方法 ,最后使 用 Rose 工具中的 Update Code 通过模型自动生成代码. e . 在 VC6 . 0 中修改 CShapeView 类 . 由于在 Rose 中不太方便添加 Windows 中的事件处理过程 ,我们将 该部分工作放到 MFC 的程序员工作台中来处理 ,利用类管理器为 CShapeView 类添加事件处理过程 : 分别 处理鼠标左键按下 、鼠标左键释放 、鼠标右键按下事件 ,对 CShapeDoc 类添加虚拟函数处理过程 :OnClose2 Document ,我们使用该函数在文档关闭时清除内存中的所有图形元素. f . 至此我们已经创建了系统中所有类及方法的基本代码 ,接下来的工作是为每个方法添加实现代码 . 添加了实现代码之后 ,重新编译程序就可以得到目标原型系统可执行程序. 运行结果如图 3 所示. 图 3 CAD 原型系统执行窗口 总结 5 本文使用 Rational Rose 及 MFC 来快速生成原型系统利用了 Rational Rose 强有力的正/ 反向建模功能 , 将需求分析和代码编写紧密结合在一起 ,在整个开发过程中不用手工编写代码来创建类 ,充分使用了 Rose 中的各种工具 ,实现了可视化建模的方法 ,大大缩短了开发周期 ,降低了维护成本 ,而且程序安全性极高 , 各类文档更规范全面. 参考文献 : () 1 陈剑辉 ,张震孙. 基于面向对象技术的软件开发系统〔J 〕. 中国有线电视 ,2006 12:1164 - 1167 . () 2 苏擎柱 ,杜成斌 ,邱颖. 面向对象的动力有限元实时分析程序开发〔J 〕. 世界地震工程 ,2004 ,20 4:143 - 147 . 3 王少锋. 面向对象技术 UML 教程 人力资源管理pdf成真迷上我教程下载西门子数控教程protel99se入门教程fi6130z安装使用教程 〔M〕. 北京 :清华大学出版社 ,2004 . 4 Ivar J acobson etc . Objected - Oriented Software Engineering〔M〕. 北京 :人民邮电出版社 ,2003 . Generating Sfotware Prototype Model icQkluy with RationRaol se Shi Haiyan ()Department of Computer Science ,Shaoxing University ,Shaoxing ,Zhejiang 312000 Abstract :Object - oriented - analysis and object - oriented - design are widely used , as the traditional procedure - oriented method cannot meet the fast developing requirements of software engineering any longer . This paper presents a method for quickly generating software prototype models with Rational Rose and MFC. Throughout the process ,MFC and Rose are used to automatically create the system framework ,greatly reducing the time of development and the cost of maintenance . In the meantime ,the robustness of the software is significantly improved and the procedures of develop2 ment is normalized. Key words :object - oriented ; Rational Rose ;MFC
本文档为【使用RationalRose快速建立软件的原型模型】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_737352
暂无简介~
格式:doc
大小:67KB
软件:Word
页数:0
分类:生活休闲
上传时间:2017-10-21
浏览量:34