面向对象软件工程与UML 第7章 统一建模语言(UML)1.ppt
《面向对象软件工程与UML 第7章 统一建模语言(UML)1.ppt》由会员分享,可在线阅读,更多相关《面向对象软件工程与UML 第7章 统一建模语言(UML)1.ppt(63页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、面向对象的系统分析、设计工具面向对象的系统分析、设计工具第第7章章 统一建模语言(统一建模语言(UML)统一建模语言统一建模语言UML可视化建模和可视化建模和ROSE用用UML和和Rose建模举例建模举例Agenda统一建模语言统一建模语言UMLUML简介简介UML的静态建模机制的静态建模机制UML的动态建模机制的动态建模机制什么是统一建模语言什么是统一建模语言Unified Modeling Language?第三代面向对象的建模语言,用于第三代面向对象的建模语言,用于 系统规格说明系统规格说明 系统可视化系统可视化 系统文档系统文档UML的提出的提出UML是在面向对象的分析与设计是在面向对
2、象的分析与设计(OOA&D)方法的基础上不断扩充、完善而方法的基础上不断扩充、完善而形成的一种标准建模语言形成的一种标准建模语言UML溶入了软件工程领域的新思想、新溶入了软件工程领域的新思想、新方法和新技术,是一种定义良好、易于方法和新技术,是一种定义良好、易于表达、功能强大且普遍适用的建模语言表达、功能强大且普遍适用的建模语言UML的主要提交者包括:的主要提交者包括:Rational,Microsoft,HP,IBM,ORACLE等公司等公司UML的定义的定义UML的定义包括的定义包括UML语义和语义和UML表示表示法两部分法两部分UML语义描述基于语义描述基于UML的精确元模型定的精确元模
3、型定义,元模型为义,元模型为UML的所有元素在语法和的所有元素在语法和语义上提供了简单、一致、通用的定义语义上提供了简单、一致、通用的定义性说明性说明UML表示法定义了表示法定义了UML符号的表示方法,符号的表示方法,为开发者或开发工具使用这些图形符号为开发者或开发工具使用这些图形符号和文本语法进行系统建模提供了标准和文本语法进行系统建模提供了标准UML的模型图的模型图用例图用例图:从用户角度描述系统功能,并指出各功能的 操作者静态图静态图:包括类图、对象图和包图,描述系统的静态结构行为图行为图:包括状态图和活动图,描述系统的动态模型和组成系统的对象之间的交互关系交互图交互图:包括顺序图和协作
4、图,描述对象之间的交互关系实现图实现图:包括构件图和配置图,构件图描述代码部件的物理结构及各部件之间的依赖关系,配置图定义系统中软硬件的物理体系结构UML用以下五类图来模型化一个系统用以下五类图来模型化一个系统UML的静态建模机制的静态建模机制UML的静态建模机制包括:的静态建模机制包括:用例图用例图(Use case diagram)类图类图(Class diagram)对象图对象图(Object diagram)包包(Package)构件图构件图(Component diagram)配置图配置图(Deployment diagram)用例图用例图描述外部执行者(描述外部执行者(Actor)
5、所理解的系统所理解的系统功能,主要用于系统需求分析阶段功能,主要用于系统需求分析阶段描述系统开发者、用户和其他项目有关描述系统开发者、用户和其他项目有关人员对系统需求规格达成的共识人员对系统需求规格达成的共识将系统看作黑盒,从外部执行者的角度将系统看作黑盒,从外部执行者的角度来理解系统来理解系统驱动需求分析之后各阶段的开发工作驱动需求分析之后各阶段的开发工作使用的建模元素主要有:用例、执行者、使用的建模元素主要有:用例、执行者、使用和扩展使用和扩展用例图的建模元素用例图的建模元素用例用例(Use Case):指系统外界与系统指系统外界与系统的一次典型交互作用的一次典型交互作用执行者执行者(Ac
6、tor):指与系统有交互作指与系统有交互作用的任何人或事物用的任何人或事物使用和扩展使用和扩展(Use and Extend):描述描述用例之间的两种不同形式的继承关用例之间的两种不同形式的继承关系系类、对象和类图类、对象和类图对象对象(Object)描述客观世界中某个实体,描述客观世界中某个实体,类类(Class)描述一组具有相同特征的对象,描述一组具有相同特征的对象,对象是类的实例对象是类的实例类类(Class)、对象对象(Object)和它们之间的和它们之间的关系揭示出系统的主要结构,是面向对关系揭示出系统的主要结构,是面向对象技术中最基本的元素象技术中最基本的元素类图描述类和类之间的静
7、态关系,包括类图描述类和类之间的静态关系,包括系统的结构和行为系统的结构和行为类之间的关系类之间的关系关联关联(Association):表示两个类之间存表示两个类之间存在某种语义上的联系在某种语义上的联系聚合聚合(Aggregation):是一种特殊形式的是一种特殊形式的关联,表示整体与部分的关系,即组成关联,表示整体与部分的关系,即组成继承继承(Generalization):表示一般元素表示一般元素和特殊元素的分类关系和特殊元素的分类关系依赖依赖(Dependency):一个类向另一个类一个类向另一个类发消息或一个类是另一个类的数据成员发消息或一个类是另一个类的数据成员/操作参数导致类之
8、间存在依赖关系操作参数导致类之间存在依赖关系类图的抽象层次类图的抽象层次概念层概念层(Conceptual):描述应用研描述应用研究领域中的概念,对应系统需求分究领域中的概念,对应系统需求分析阶段析阶段说明层说明层(Specification):描述软件描述软件的接口部分,对应系统设计阶段的接口部分,对应系统设计阶段实现层实现层(Implementation):描述软描述软件的实现部分,对应系统实现阶段件的实现部分,对应系统实现阶段类图的使用原则类图的使用原则不要试图使用所有的符号不要试图使用所有的符号根据项目开发的不同阶段,区分不同的根据项目开发的不同阶段,区分不同的抽象层次抽象层次不要过早
9、陷入实现细节不要过早陷入实现细节经常检查模型和模型中的元素是否有清经常检查模型和模型中的元素是否有清楚的目的和职责,模型是否真实地反映楚的目的和职责,模型是否真实地反映了研究领域的实际,模型和模型中的元了研究领域的实际,模型和模型中的元素的大小是否适中素的大小是否适中包图包图包包(Package):是一种分组机制,用于在是一种分组机制,用于在类集合中根据高内聚、低耦合的原则抽类集合中根据高内聚、低耦合的原则抽取出一个更高层次的集合取出一个更高层次的集合如果没有任何启发性原则来指导类的分如果没有任何启发性原则来指导类的分组,分组方法就是任意的组,分组方法就是任意的在在UML中,一般用依赖关系作分
10、组原则中,一般用依赖关系作分组原则包图主要显示类的包以及这些包之间的包图主要显示类的包以及这些包之间的依赖关系、继承关系和聚合关系依赖关系、继承关系和聚合关系构件图和配置图构件图和配置图构件图描述软件构件(原代码文件、二构件图描述软件构件(原代码文件、二进制代码文件、可执行文件)之间的依进制代码文件、可执行文件)之间的依赖关系赖关系配置图描述系统硬件的物理拓扑结构以配置图描述系统硬件的物理拓扑结构以及在此结构上执行的软件及在此结构上执行的软件结点结点(Node):表示一个物理设备以及其表示一个物理设备以及其上运行的软件系统上运行的软件系统连接连接(Connection):表示系统之间进行表示系
11、统之间进行交互的通信路径交互的通信路径UML的动态建模机制的动态建模机制消息消息(Message)状态图状态图(State Diagram)顺序图顺序图(Sequence Diagram)协作图协作图(Collaboration Diagram)活动图活动图(Activity Diagram)消息消息对象通过相互间的消息传递来完成相互对象通过相互间的消息传递来完成相互间的交互作用间的交互作用简单消息表示简单的控制流,不考虑通简单消息表示简单的控制流,不考虑通信的细节信的细节同步消息表示同步的控制流,调用者发同步消息表示同步的控制流,调用者发出消息后,必须等待消息返回出消息后,必须等待消息返回异
12、步消息表示异步的控制流,调用者发异步消息表示异步的控制流,调用者发出消息后,不必等待消息返回出消息后,不必等待消息返回状态图状态图状态图描述一个特定对象的所有可能状状态图描述一个特定对象的所有可能状态及其引起状态转移的事件态及其引起状态转移的事件状态图包括一系列的状态以及状态之间状态图包括一系列的状态以及状态之间的转移的转移状态是对象执行了一系列活动的结果,状态是对象执行了一系列活动的结果,状态图中定义的状态有:初态、终态、状态图中定义的状态有:初态、终态、中间状态、复合状态中间状态、复合状态转移指状态的变迁,在状态中表示为状转移指状态的变迁,在状态中表示为状态之间带箭头的连线态之间带箭头的连
13、线顺序图顺序图顺序图描述对象之间动态的交互关系,顺序图描述对象之间动态的交互关系,着重体现对象间消息传递的时间顺序着重体现对象间消息传递的时间顺序顺序图中的对象用一个带有垂直虚线的顺序图中的对象用一个带有垂直虚线的矩形框表示,矩形框里可以标示对象名矩形框表示,矩形框里可以标示对象名和类名,垂直虚线是对象的生命线,表和类名,垂直虚线是对象的生命线,表示在某段时间内对象的存在示在某段时间内对象的存在顺序图中对象间的通信通过在对象的生顺序图中对象间的通信通过在对象的生命线间画消息来表示命线间画消息来表示协作图协作图协作图描述相互合作的对象间的交互关协作图描述相互合作的对象间的交互关系和连接关系,着重
14、体现交互对象间的系和连接关系,着重体现交互对象间的静态链接关系静态链接关系链接链接(Link)用于表示对象间的各种关系,用于表示对象间的各种关系,包括组成关系的链接、聚集关系的链接、包括组成关系的链接、聚集关系的链接、限定关系的链接、导航链接限定关系的链接、导航链接在协作图的链接线上可以用消息来描述在协作图的链接线上可以用消息来描述对象间的交互对象间的交互活动图活动图活动图描述操作(类的方法)的行为,活动图描述操作(类的方法)的行为,以及描述用例和对象内部的工作过程以及描述用例和对象内部的工作过程活动图依据对象状态的变化来捕获动作活动图依据对象状态的变化来捕获动作(将要执行的工作或活动)与动作
15、的结(将要执行的工作或活动)与动作的结果果一项操作可以描述为一系列相关的活动一项操作可以描述为一系列相关的活动活动只有一个起始点,但可以有多个结活动只有一个起始点,但可以有多个结束点束点统一建模语言统一建模语言UML可视化建模和可视化建模和ROSE用用UML和和Rose建模举例建模举例Agenda可视化建模和可视化建模和ROSE可视化建模可视化建模ROSE及其主要功能及其主要功能用用Rose和和UML进行可视化建模进行可视化建模用标准建模语言的图形标用标准建模语言的图形标记构造系统模型记构造系统模型什么是可视化建模?什么是可视化建模?我们难于想象和理解一个复杂的我们难于想象和理解一个复杂的系统
16、系统我们需要为编程开发提供详细而我们需要为编程开发提供详细而准确的文档准确的文档我们需要和与项目有关的所有人我们需要和与项目有关的所有人员进行交流、讨论员进行交流、讨论为什么需要可视化建模?为什么需要可视化建模?可视化建模的益处可视化建模的益处可视化可视化-在构造出最终产品之前描述在构造出最终产品之前描述最终产品最终产品,从而从而降低风险降低风险 复杂性管理复杂性管理-用不同的建模机制和用不同的建模机制和建模元素来描述系统模型的不同方面建模元素来描述系统模型的不同方面,从而有效地管理系统的复杂性从而有效地管理系统的复杂性相互交流相互交流-向开发团队传递详细的开向开发团队传递详细的开发信息,和最
17、终用户一起验证系统功能发信息,和最终用户一起验证系统功能可视化建模的益处可视化建模的益处缩短开发周期缩短开发周期并行支持受控的迭代开发并行支持受控的迭代开发提高开发者的生产效率提高开发者的生产效率模型驱动的开发模型驱动的开发降低了开发风险降低了开发风险改善软件质量改善软件质量通过更能反映用户和商业通过更能反映用户和商业需求的开发来实现需求的开发来实现Rational RoseRational公司是一家国际上著名的软件厂公司是一家国际上著名的软件厂商,以开发商,以开发Ada语言起家,现居全球软件语言起家,现居全球软件厂商十三强之一厂商十三强之一Rational公司致力于向用户提供覆盖整个公司致力
18、于向用户提供覆盖整个软件开发生命周期的解决方案,帮助用软件开发生命周期的解决方案,帮助用户组建自己的户组建自己的“软件工厂软件工厂”Rational Rose为为Rational公司的旗舰产品公司的旗舰产品之一之一Rose的的主要功能主要功能全面支持全面支持UML建模语言建模语言强有力的正强有力的正/反向建模功能反向建模功能支持关系数据库逻辑模型的生成支持关系数据库逻辑模型的生成支持支持CORBA-2/IDL的正向工程的正向工程与多种开发环境无缝集成,包括:与多种开发环境无缝集成,包括:VB、JAVA、PB、C+、Ada、SmallTalk、Forte等等提供提供RoseScript和和Ros
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象软件工程与UML 第7章 统一建模语言UML1 面向 对象 软件工程 UML 统一 建模 语言
限制150内