面向对象分析与设计 侯爱民 chapter02.ppt_第1页
面向对象分析与设计 侯爱民 chapter02.ppt_第2页
面向对象分析与设计 侯爱民 chapter02.ppt_第3页
面向对象分析与设计 侯爱民 chapter02.ppt_第4页
面向对象分析与设计 侯爱民 chapter02.ppt_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章统一建模语言概述,2.1统一建模语言的历史,2.2统一建模语言的特点,2.3统一建模语言的组成,2.4统一建模语言的视图,2.5统一建模语言的图表,2.6统一建模语言的模型元素,2.7统一建模语言的软件工程行为,2.1统一建模语言的历史。Booch的定义:UML是一种在软件密集型系统中可视化、细化、构造和记录产品的语言。产品是指在软件开发过程中产生的各种产品,如模型、源代码、测试用例等。2.1 UML的历史,模型的重要性:能更好地理解问题。人员之间的沟通可以加强。错误或遗漏可以更早发现。可以获得设计结果。它为最终代码生成提供了基础。2.1统一建模语言的历史2.1统一建模语言的历史2.1统一建模语言的历史是由世界著名的面向对象技术专家:布奇、伦堡、雅各布森发起的,它以布奇方法、OMT方法和面向对象方法为基础,借鉴了其他面向对象方法的优点,广泛征求意见,经过多次修改后完成。UML的最新规范是UML 1.5版本,发布于2003年3月,从下载。2.1统一建模语言的历史,众多面向对象方法:1988,施拉尔/梅勒,面向对象系统分析,1990,雷贝卡沃夫斯布鲁克,责任驱动循环冗余校验方法,响应责任驱动循环冗余校验卡,1991。面向对象分析与设计方法,面向对象分析与设计,面向对象分析与设计,2.1UML历史,许多面向对象方法:梯度面向对象,1991年的布尔方法,适用于系统设计和构造。1991年,詹姆斯伦博、OMT方法和对象建模技术更适合于分析和描述以数据为中心的信息系统。2.1UML历史中,很多面向对象方法:OMT方法,使用对象模型、动态模型、功能模型、用例模型,来完成整个系统的建模。2.1 UML的历史,众多面向对象方法:1992,IvarJacobson,OOSE方法,面向对象软件工程,更适合商业工程和需求分析。对于用例,用例贯穿整个开发过程。还有50多种其他方法,2.1统一建模语言的历史,2.2统一建模语言的特点,以及统一建模语言的主要特点:统一标准。它已经被OMG(对象管理组)接受为标准的建模语言。面向对象。支持面向对象的软件开发。可视化意味着强大的功能。独立于过程。它不依赖于特定的软件开发过程。概念清晰,建模表达简洁,图形结构清晰,易于掌握和使用。统一建模语言的定义包括统一建模语言语义和统一建模语言符号:统一建模语言语义。描述基于统一建模语言的精确元模型定义。元模型在语法和语义上为UML的所有元素提供了简单、一致和通用的定义解释。此外,UML还支持元模型的扩展定义。统一建模语言符号。定义UML符号的符号为开发人员或开发工具使用这些图形符号和文本语法进行系统建模提供了一个标准。2.3统一建模语言的组成。UML的重要内容可以由以下5个类图定义:用例图。从用户的角度描述系统功能,指出每个功能的操作者。静态图(类图、对象图、包图)。类图描述了系统中类的静态结构,包括类、类之间的关系以及类的内部结构(属性和操作)。对象图是类图的一个例子,显示了该类的多个对象实例,使用了与类图几乎相同的标识。包图描述了系统的层次结构。2.3统一建模语言的组成。UML的重要内容可以由以下五个类图定义:行为图(状态图、活动图)。行为图描述了系统的动态模型和组成对象之间的交互。状态图描述了类对象的所有可能状态,以及事件发生时状态的转换条件。通常,只有那些具有多种状态并且其行为受到外部环境和变化影响的人,才会绘制状态图。活动图描述了为满足用例需求而要执行的活动以及活动之间的约束关系,这有助于识别并行活动。2.3统一建模语言的组成。UML的重要内容可以由以下五个类图定义:交互图(时序图、协作图)。交互图描述了对象之间的交互。时序图如果强调时间和顺序,使用时序图。如果你强调高层和低层之间的关系,使用协作图。2.3统一建模语言的组成。UML的重要内容可以由以下五个类图定义:实现图(组件图和配置图)。组件图描述了代码组件的物理结构以及组件之间的依赖关系。组件可以是资源代码组件、二进制组件或可执行组件。配置图描述了系统中软件和硬件的物理架构。2.3统一建模语言的组成。当使用面向对象技术设计一个系统时,工作流可以被视为以下过程:描述需求。用例图。建立系统的静态模型。类图、对象图、包图、组件图、配置图。描述系统的行为。状态图、活动图、时序图、合作图。2.3统一建模语言的组合,2.3统一建模语言的组合,2.3统一建模语言的组合,2.3统一建模语言的组合,2.4统一建模语言的视图,视图是表达系统特征的统一建模语言建模元素的子集。视图不是一个“真实”的图形,而是由一个或多个图形组成的系统的某个角度的抽象。UML中的视图可以大致分为以下五种类型:用例视图、逻辑视图、实现视图、过程视图、部署视图和2.4UML视图。一般来说,系统通常从许多不同的方面来描述。系统应用示例。用例子从系统外参与者的角度描述系统的功能。系统的逻辑结构。逻辑结构描述了系统内部的静态结构和动态行为,即如何从内部设计和实现系统功能。2.4UML视图,系统组成。描述系统由哪些组件组成。系统的并发特性。描述系统的并发性,解决并发系统中的各种通信和同步问题。系统配置。描述系统软件和硬件设备之间的配置关系。2.4UML视图和用例视图表示系统的功能需求。从用户的角度强调看到的或需要的系统功能。用例图。逻辑视图表示系统的概念设计和子系统结构。显示系统的静态或结构组成和特征。类图、对象图。实现视图说明了代码的结构。反映系统实现的结构和行为特征。组件图。2.4UML视图和过程视图说明了系统中的并发执行和同步。反映系统的动态或行为特征。时序图、合作图、状态图、活动图。部署视图定义了硬件节点的物理结构。反映系统实现环境的结构和行为特征。配置图。2.4UML视图,如果这五个视图不能完全满足需求,用户可以定义自己的视图。2.5UML图,它是一组模型元素的图形表示,由相互连接的顶点(模型元素)和弧(关系)组成。UML图可以大致分为以下9种类型:用例图、类图、对象图、时序图、协作图、状态图、活动图、组件图和配置图。用例图描述用户看到的系统功能。类图描述了系统的静态结构。对象图描述了系统在特定时间的静态结构。2.5UML图和时序图按时间顺序描述了系统元素之间的交互。协作图通过时间和空间顺序描述了系统元素之间的交互及其关系。状态图描述了系统元件的状态条件和响应。活动图描述了系统元素的活动。组件图描述了实现系统的元素的组织。配置图描述了环境的配置,并将实现系统的元素映射到该配置。2.6模型元素,UML中的模型元素:包括事物和事物之间的关系。东西描述了一个通用的面向对象的概念。例如类、对象、接口、消息、组件等。事物代表任何可能的事物,2.6模型元素,UML中事物的联系:也称为UML中的公共关系。关联关系连接元素和实例。依赖关系一个元素到另一个元素的连接。一般化关系一个元素是另一个元素的特例。实现关系的一个元素实现另一个元素。元素的部分与整体的关系。2.7UML的软件工程行为,分析阶段:用UML用例图描述用户需求。设计阶段:使用特定的类来处理用户界面、数据库访问、通信、并行性和其他问题。实现阶段:使用面向对象的编程语言将类从设计阶段转换成实际代码。测试阶段:UML模型被用作生成测试用例的基础。2.7UML软件工程行为,测试阶段:作为生成测试用例的基础的UML模型。具体如下:单元测试阶段:使用类图和类规范。集成测试阶段:使用组件图和协作图。系统测试阶段:使用用例图来验证系统行为。2.8UML工具,RationalRose2003。由Rational公司开发的用于分析和设计面向对象软件系统的工具。格雷迪博奇、伊万雅各布森和吉姆伦博现在是理性公司的员工。一起6.1 .纯Java开发的工具。ArgoUMLv0.14 .开源工具。其他工具,Visio,VisualUML。例如,在网络浏览器中,输出“你好,世界!”Javaapplet程序代码:import Java . awt . graphics;你好,世界,10,10);,2.9UML的例子,hello,world的类图(1):Hello world类和注释之间的关系,2.9UML的例子,Hello,World的类图(2):Hello World类和Applet类和Graphics类之间的关

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论