UML建模语言及工具课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《UML建模语言及工具课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- UML 建模 语言 工具 课件
- 资源描述:
-
1、-3-学习线路图学习线路图OOOOUMLUML:Case-Study :-4-从需求到分析从需求到分析Requirement Model-SupplementarySpecificationGlossaryAnalysis ModelUse Case Realization-Anaysis:Analysis Class-5-从分析到设计从分析到设计Design ModelUse Case Realization-Design:InterfaceDesign ClassSubsystemAnalysis ModelUse Case Realization-Anaysis:Analysis Cla
2、ss-6-内容安排内容安排n体系结构设计体系结构设计n用例设计用例设计n子系统设计子系统设计n类设计类设计n数据库设计数据库设计-7-分析分析 VS.设计设计n分析:做什么分析:做什么n设计:怎么做设计:怎么做-8-设计模型设计模型 VS.分析模型分析模型-1制作分析模型并精化成设计模型制作分析模型并精化成设计模型有了单独的设计模型,但失去了分有了单独的设计模型,但失去了分析模型析模型制作分析模型并精化成设计模型,制作分析模型并精化成设计模型,然后用然后用CASE工具重新获得分析工具重新获得分析模型模型有了单独的设计模型,但是用有了单独的设计模型,但是用CASE工具重新获得的分析模型可能并不工
3、具重新获得的分析模型可能并不令人满意令人满意在细化阶段的某个点将分析模型在细化阶段的某个点将分析模型冻结,然后把分析模型的一份拷冻结,然后把分析模型的一份拷贝精化成设计模型贝精化成设计模型有了两个模型,但是它们步调不一有了两个模型,但是它们步调不一致致维护两个独立的模型维护两个独立的模型分析模型分析模型和设计模型和设计模型有了两个模型,并且它们步调一致,有了两个模型,并且它们步调一致,但是这增加了维护的负担但是这增加了维护的负担-9-设计模型设计模型 VS.分析模型分析模型-2n需要保留分析模型吗?需要保留分析模型吗?n易于理解:分析模型提供系统的易于理解:分析模型提供系统的“大场景大场景”,
4、它可,它可能只包括设计模型中的能只包括设计模型中的1%到到10%的类的类n价值:价值:n介绍新人加入项目介绍新人加入项目n在交付几个月或几年后重新理解系统在交付几个月或几年后重新理解系统n理解系统是怎么满足客户需求以及提供可跟踪性理解系统是怎么满足客户需求以及提供可跟踪性n计划维护和增强计划维护和增强n理解系统的逻辑架构理解系统的逻辑架构n外包系统的构造外包系统的构造n-10-设计模型设计模型 VS.分析模型分析模型-3n需要分别维护分析模型和设计模型的系需要分别维护分析模型和设计模型的系统统n庞大的庞大的n复杂的复杂的n战略性的战略性的n受经常变更所支配的受经常变更所支配的n期望长期运行的期
5、望长期运行的n外包的外包的-11-软件设计的定义软件设计的定义-12-更精确定义更精确定义n软件设计(的结果)必须软件设计(的结果)必须n描述系统的体系结构(描述系统的体系结构()n系统如何分解(系统如何分解(decompose)和组织)和组织(organize)构件)构件n描述构件间的接口(描述构件间的接口()n描述构件(描述构件():必须详细到可):必须详细到可进一步构造的程度进一步构造的程度-13-ISO/IEC 12207n按按ISO/IEC 12207软件开发生存周期过软件开发生存周期过程,软件设计由两个活动组成程,软件设计由两个活动组成n软件体系结构设计软件体系结构设计-softw
6、are architectural designn顶层设计(顶层设计(top-level design)n描述系统顶层的结构和组织描述系统顶层的结构和组织n标识各个构件标识各个构件n软件详细设计软件详细设计-software detailed designn充分描述每个构件使之可以编码充分描述每个构件使之可以编码-14-软件设计的作用软件设计的作用n软件设计在软件系统开发过程中扮演重要软件设计在软件系统开发过程中扮演重要角色角色n开发者作出各种模型,形成实现时解决方案的开发者作出各种模型,形成实现时解决方案的蓝图蓝图n对这些模型进行分析和评价,以判定是否满足对这些模型进行分析和评价,以判定是否
7、满足各种需求各种需求n便于考察备选方案和可行的替换措施便于考察备选方案和可行的替换措施n设计模型也可用于规划后续的开发活动设计模型也可用于规划后续的开发活动n是编码和测试的输入是编码和测试的输入-15-RUP中的分析和设计工作流中的分析和设计工作流-16-内容安排内容安排n从分析到设计从分析到设计n用例设计用例设计n子系统设计子系统设计n类设计类设计n数据库设计数据库设计-17-为什么需要体系结构为什么需要体系结构n我们所定义的类或者对象其关注的重点是定义我们所定义的类或者对象其关注的重点是定义了一个系统的核心概念和行为了一个系统的核心概念和行为n一个系统是由多个子系统组成,每个子系统中一个系
8、统是由多个子系统组成,每个子系统中的领域对象都不只一个的领域对象都不只一个n这些类如何组织、分布并协同完成所需的功能?这些类如何组织、分布并协同完成所需的功能?n因此系统应该要有一个总体的体系结构,它定因此系统应该要有一个总体的体系结构,它定义了各子系统之间的通信和耦合义了各子系统之间的通信和耦合n体系结构包图(体系结构包图(architecture package diagram)-18-软件体系结构定义软件体系结构定义n软件体系结构描述软件系统的子系统和软件体系结构描述软件系统的子系统和构件及其相互关系构件及其相互关系nUML Reference Manual:体系结构是:体系结构是一个系
9、统的组织结构,包括系统分解成一个系统的组织结构,包括系统分解成的各个部分、它们的连接性、交互机制的各个部分、它们的连接性、交互机制和通知系统设计的向导规则和通知系统设计的向导规则-19-软件体系结构风格软件体系结构风格n体系结构风格体系结构风格stylen提供软件系统高层组织的元模型提供软件系统高层组织的元模型n通用结构:通用结构:分层分层、管道过滤器、黑板、管道过滤器、黑板n分布式系统:分布式系统:客户客户-服务器、三层服务器、三层、中介、中介n交互式系统:交互式系统:MVC、表示、表示-抽象抽象-控制控制n可适配系统:微内核、反映式可适配系统:微内核、反映式n其它:批处理、解释器、进程控制
10、、基于规则其它:批处理、解释器、进程控制、基于规则-20-UML和体系结构和体系结构n体系结构的全部内容就是复杂性管理:将解体系结构的全部内容就是复杂性管理:将解决方案划分成多个小的组成部分,再将这些决方案划分成多个小的组成部分,再将这些小的部分结合起来,构成更大的、更加一致小的部分结合起来,构成更大的、更加一致的结构的结构n包(包(package)n包依赖关系图(包依赖关系图(package dependency diagram)n子系统(子系统(subsystem)n层(层(layer)-21-包包-packagen包是一种将模型元素分组的机制包是一种将模型元素分组的机制n包主要用于包主要
11、用于n组织模型元素组织模型元素n配置管理单元配置管理单元n分包的原则分包的原则n职责相似:将一组职责相似、但以不同方式实现的职责相似:将一组职责相似、但以不同方式实现的类归为一组有意义的包;如类归为一组有意义的包;如java类库中的类库中的javax.swing.bordern协作关系:包含了各种不同类型的类,它们之间通协作关系:包含了各种不同类型的类,它们之间通过相互协作实现一个意义重大的职责过相互协作实现一个意义重大的职责-22-包依赖关系包依赖关系n包之间存在着依赖关系包之间存在着依赖关系n如果如果Client包依赖于包依赖于Supplier包:包:nSupplier包的改变将影响到包的
12、改变将影响到Client包包nClient包不能够独立的重用,因为它依赖于包不能够独立的重用,因为它依赖于Supplier包包Client PackageSupplier Package-23-避免循环依赖避免循环依赖ABABCAABC-24-体系结构设计过程体系结构设计过程n1.确立目标确立目标n2.将类分组将类分组n3.展示技术展示技术n4.抽取子系统抽取子系统n5.针对准则和目标对体系结构进行评估针对准则和目标对体系结构进行评估-25-1.确立目标确立目标n一个好的体系结构其实是不断权衡、妥一个好的体系结构其实是不断权衡、妥协、折衷的产物协、折衷的产物n可扩展性可扩展性n可维护性可维护性
13、n可靠性可靠性n可伸缩性可伸缩性n-26-2.将类分组并评估各个类将类分组并评估各个类n将分析类划分成几个候选包,并对它们的内聚将分析类划分成几个候选包,并对它们的内聚性进行评估性进行评估n目标是使每个包具有清晰的且严格定义的目的目标是使每个包具有清晰的且严格定义的目的和职责和职责n结合体系结构模式,考虑分组方式结合体系结构模式,考虑分组方式n实体类实体类n用户界面类用户界面类n控制类控制类n系统接口类系统接口类nn描述包之间的耦合度:包依赖关系图描述包之间的耦合度:包依赖关系图-27-考勤卡系统的体系结构包图考勤卡系统的体系结构包图TimecardUITimecardWorkflowTime
14、cardDomainBillingystemInterface-28-3.展示技术展示技术TimecardUITimecardWorkflowTimecardDomainBillingystemInterfacejspEntityBean(from ejb)SessionBean(from ejb)io(from java)-29-4.抽取子系统抽取子系统TimecardUITimecardWorkflowTimecardDomainBillingystemInterfaceIBillingSystemInterface-30-5.针对准则和目标进行评估针对准则和目标进行评估TimecardU
15、ITimecardWorkflowTimecardDomainBillingystemInterfaceEntityBean(from ejb)SessionBean(from ejb)io(from java)httpjspIBillingSytemInterface-31-内容安排内容安排n从分析到设计从分析到设计n体系结构设计体系结构设计n子系统设计子系统设计n类设计类设计n数据库设计数据库设计-32-用例设计用例设计Use-Case ModelUse Case(from Use Case View)Use-Case RealizationDesign Model-:2:3:4:5:6:
16、1:Use Case-33-从分析类到设计元素从分析类到设计元素Analysis ClassesDesign Elements-34-用例实现(设计)用例实现(设计)n将设计应用于用例将设计应用于用例n1.结合设计元素,定义设计对象间的交互结合设计元素,定义设计对象间的交互(交互图)(交互图)n2.利用利用简化交互图简化交互图n3.描述与描述与相关的行为相关的行为n4.检查用例事件流的实现检查用例事件流的实现n5.评价评价和子系统和子系统-35-交互图的设计:职责分配交互图的设计:职责分配n利用设计元素,进行类的职责分配,完利用设计元素,进行类的职责分配,完成用例实现的交互图成用例实现的交互图
17、n职责分配模式:职责分配模式:GRASP(General Responsibility Assignment Software Pattern)模式)模式n专家模式、创建者模式专家模式、创建者模式(老板原则老板原则)、高内聚高内聚、低耦合低耦合、控制者、控制者n多态、纯虚构、中介者、多态、纯虚构、中介者、不要和陌生人讲话不要和陌生人讲话(可视原则)(可视原则)-36-GRASP:不要和陌生人讲话:不要和陌生人讲话(可视原则)(可视原则)n解决方案解决方案n分配职责给一个客户端的直接对象以使它与一个间分配职责给一个客户端的直接对象以使它与一个间接对象进行协作,这样客户端无需知道这个间接对接对象进
18、行协作,这样客户端无需知道这个间接对象象n这个模式也被称为这个模式也被称为,在那些你需要在,在那些你需要在其上发送消息的对象上面放置一些限制条件,它表其上发送消息的对象上面放置一些限制条件,它表明在一个方法中,消息只能发往下面的对象:明在一个方法中,消息只能发往下面的对象:n对象本身;方法的一个参数;对象本身的属性;对象本身对象本身;方法的一个参数;对象本身的属性;对象本身的一个属性集合中的元素;该方法内创建的对象的一个属性集合中的元素;该方法内创建的对象n优点优点n低耦合低耦合-37-内容安排内容安排n从分析到设计从分析到设计n体系结构设计体系结构设计n用例设计用例设计n类设计类设计-38-
19、子系统与接口子系统与接口n子系统是一种介于包和类之间的一种设子系统是一种介于包和类之间的一种设计机制,它实现一个或多个接口所定义计机制,它实现一个或多个接口所定义的行为的行为n具有包的语义:能够包含其它模型元素具有包的语义:能够包含其它模型元素n具有类的语义:具有行为具有类的语义:具有行为Interface-39-子系统的作用子系统的作用n完全封装了行为完全封装了行为n利用清晰的接口代表所拥有的能力利用清晰的接口代表所拥有的能力n可以定义不同的实现可以定义不同的实现-40-子系统子系统 VS.包包Client ClassSubsystem APackage BClass B1Class B2n
展开阅读全文