第10章.从模型到代码

第10章.从模型到代码

ID:1473970

大小:931.50 KB

页数:17页

时间:2017-11-11

第10章.从模型到代码_第1页
第10章.从模型到代码_第2页
第10章.从模型到代码_第3页
第10章.从模型到代码_第4页
第10章.从模型到代码_第5页
资源描述:

《第10章.从模型到代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章从模型到代码FromModeltoCode-2-设计模型与代码实现编写代码形成软件软件最终需要代码来实现模型只是为代码实现提供支持目前尚未产生成熟的可执行模型正向工程(Forwardengineering)由设计类图导出框架代码由交互图创建方法实现逆向工程(Reverseengineering)由源代码导出设计模型-3-内容安排正向工程逆向工程模型驱动的架构课程总结正向工程正向工程是指按照软件开发的基本过程,将抽象层次较高的模型转换为相对具体的模型的过程。主要包括:从类图生成框架代码从交互图(主要指顺序图)生成方法中操作的调用代码从状态机图生成状态转换控制代码-4--5

2、-正向工程-生成框架代码什么是框架代码?代码在设计上的初步实现类的框架代码包括那些?属性值定义:名称、类型、缺省值等操作的定义:名称、参数、返回类型等引用属性的表示……根据设计类图产生框架代码用操作和简单属性定义一个类加入引用属性:角色名定义引用属性-6-从设计类图产生框架代码-11.用操作和简单属性定义一个类(属性、操作)-7-从设计类图产生框架代码-22.加入引用属性(关联和导航;角色名)-8-EA支持框架代码的导出多数UMLCASE工具都支持框架代码导出利用Rose由设计类图生成框架代码(Java)的基本过程利用EA由设计类图生成框架代码可以课堂演示主要问题:设计模型开发

3、不够完善,无法导出代码-9-正向工程-创建方法实现一个交互图显示出了响应操作调用而产生的消息传递;这些消息序列可以被翻译成该操作所对应的方法实现中的一系列语句由顺序图产生方法实现由通信图产生方法实现-10-确定预订房间操作实现(顺序图)//1.3.1创建Payment实例payment=newPayment(pay_type);//1.3.2进行支付操作payment.makePayment(reservation);//1.3.3创建需预订的房间对象room=newRoom(room_no);//1.3.4预订的房间room.reserve();//1.3.5保存预订信息re

4、servation.save();publicvoidaffirmReserve(){Paymentpayment=newPayment(pay_type);payment.makePayment(reservation);Roomroom=newRoom(room_no);room.reserve();reservation.save();}-11-逆向工程-由代码导出模型逆向工程根据源代码导出设计模型设计类图、设计交互图主要作用开始编码后,很多地方势必会和设计模型不一致,此时可以通过逆向工程更新设计模型,从而需要保持设计模型的有效性已有的系统缺少相关文档,通过逆向工程获得系

5、统的设计模型,以便理解和完善文档示例:利用EA导入源代码,生成UML模型-12-从模型到代码的思考设计模型和代码之间存在映射关系目前很多工具都支持模型和代码之间的正向/逆向工程,但尚没有一种成熟的自动化工具能够支持代码的完全自动生成.主要问题如下:设计模型不够完善,设计者难以通过UML表达系统所有的细节UML模型和实现语言、平台之间存在差异性UML模型自身存在各种内部机制和约束,这种细节缺少精确的定义OMG组织致力于对UML做进一步的规范化,以实现模型对代码的完全表示-13-模型驱动的开发模型驱动的开发(MDD,Model-DrivenDevelopment)系统开发过程就是建

6、模的过程,从需求、分析、设计、实现到测试,所有阶段的交付物都是模型各类模型之间通过模型转换技术进行演化实现也是一种模型(实现/代码模型),通过模型转换技术可以从设计模型中直接获得支持MDD的核心技术模型驱动架构(MDA,ModelDrivenArchitecture)模型转换(MT,ModelTransformation)-14-课程回顾学到了什么?基本的UML建模语法面向对象的软件开发思想利用UML分析和设计面向对象系统没学到什么?完整软件开发的过程和管理策略编写分析设计文档的方法编程实现一个软件的知识UML+OO-15-总结:各阶段使用到的UML图业务建模1.业务用例模型2

7、.业务对象模型需求3.用例模型分析4.备选构架5.用例分析设计6.构架7.用例实现1.类图2.包图3.构件图4.部署图5.顺序图6.通信图7.活动图8.状态图9.用例图-16-今后:你可以利用UML做什么?你只是做编程的读懂别人的设计方案,更容易写程序你是编程的,但项目经理要你补文档找一个文档模板,用UML填充内容你不想编了,太累了,要做设计UML是你的日常工作你不做技术了,做业务分析UML是很好的辅助工具你做领导了(项目经理/CTO)UML是一种沟通、管理工具结束语知识是死的,但技能活的书

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。