软件建模与建模语言课件_第1页
软件建模与建模语言课件_第2页
软件建模与建模语言课件_第3页
软件建模与建模语言课件_第4页
软件建模与建模语言课件_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、软件建模与建模语言为什么要建模?1、模型是软件文档的重要成分 一个开发团队首要关注的不应是漂亮的文档、世界级的会议、响亮的口号或者华丽的源码,而是如何满足用户和项目的需要。2、建模是软件工程的核心 一个狗窝一间平房一幢大楼 需求模型分析模型设计模型测试模型软件建模与建模语言3、什么是模型定义:对问题的书面上的无歧义文字或图形 的描述. y=f(x) 最杰出的模型:地图 简言之,模型是对现实的简化。(1)一个好的模型包括重要的因素,而忽略不相干的细节。(2)每一个系统可以从不同的方面使用不同的模型进行描述,因此每个模型都是对系统从语义上近似的抽象。(3)模型可以是结构的、侧重于系统的组织,也可以

2、是行为的、侧重于系统的动作。软件建模与建模语言4、建模的原则(1)选择建立什么样的模型对如何发现和解决问题具有重要的影响。 正确的模型有助于提高开发者的洞察力。软件建模与建模语言软件建模与建模语言(2)每个模型可以有多种表达方式。 使用者的身份和使用的原因是评判模型好坏的关键。(3)最好的模型总是能够切合实际。模型是现实的简化,必须保证简化过程不会掩盖任何重要的细节。软件建模与建模语言(4)孤立的模型是不完整的。5、建模的目标 通过建模,要实现以下4个目标:(1)便于开发人员展现系统。 可视化visualization(2)允许开发人员指定系统的结构或行为。 详述specification(3

3、)提供指导开发人员构造系统的模板。 构造construction(4)记录开发人员的决策。 文档化documentation软件建模与建模语言6、通用建模语言 (1)自然语言、图形语言、数学语言 (2)结构化建模与面向对象建模 A、基于功能的分解与基于概念的建模 B、面向对象的建模语言(50种之多) Rumbaugh(云豹):OMT Shlaer/Mellor (雪梨与米勒) Jacobson (雅克森) :OOSE Booch(布什) Yourdon(尤顿):OOA/OOD Martin/Odell(马丁与奥地)软件建模与建模语言6、通用建模语言 (3)统一建模语言UML 软件建模与建模语言

4、(3)统一建模语言UML UMLUnified Modeling LanguageUnified:组合了当前最好的面向对象软件建模方法Grady Booch,James Rumbaugh,Ivar Jacobson,UML三位主要贡献者。1.OMT( James Rumbaugh )2.The Booch Method( Grady Booch )3.OOSE( Ivar Jacobson )软件建模与建模语言(3)统一建模语言UML UMLUnified Modeling LanguageModeling:用于表达现实的简化视图,以便于面向对象软件系统的设计与实现。Language:UML主

5、要是遵循精确语法的图形语言。软件建模与建模语言6、通用建模语言 (4)应注意的问题 A、UML是一种建模语言,不是一种建模方法。遵循特定的规则、允许创建各种模型、并不告诉设计者需要创建哪些模型,不提供开发过程 B、UML并不是软件建模的专用语言。 UML是用于构造系统或理解系统的语言(UML既支持正向工程,又支持反向工程)、是文档化的语言。 软件建模与建模语言面向对象的基本概念面向对象对象类继承通信面向对象技术的基本观点可以概括如下: 客观世界由对象组成,任何客观实体都是对象,复杂对象可以由简单对象组成。 具有相同数据和操作的对象可归纳成类,对象是类的一个实例。 类可以派生出子类,子类除了继承

6、父类的全部特性外还可以有自己的特性。 对象之间的联系通过消息传递来维系。1.对象内部状态打开调节频道其他关闭调节声音一台收音机对象的实例客观世界里的任何实体都可以被称之为对象,复杂的对象可由相对比较简单的对象以某种方法组成。2.封装封装是指把属性和操作封进一个对象里,它的内部信息对外界隐藏,不允许外界直接存取对象的属性。只能通过对象提供的有限的接口对对象的属性数据进行操作。封装有两层含义:(1)结合性(2)信息隐蔽性3.消息消息就是向对象发出的请求,一个消息包含消息名、接收对象的标志、服务标志、输入信息、回答信息等。当一个消息发送给某个对象时,包含要求接受对象去执行某些活动的信息。接收到消息的

7、对象经过解释,然后予以响应。这种通信机制叫做消息传递。对象对象消息4.类类是一组具有相同数据结构和相同操作的对象的集合。类是对象的抽象,它将一组数据属性和在数据上的一组合法操作抽象封装。人人类分门别类物以类聚5.继承继承是指子类可以自动拥有父类的全部属性与操作。车父类或超类子类或派生类继承性又分为单重继承和多重继承两类。单重继承时一个子类只能有一个父类;多重继承时一个子类可以有多于一个的父类。ABCDEABCDEF单重继承多重继承6.多态性同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。多态性通常通过派生类重载基类中的同名函数来实现。多态性分为如下两种: 编译时的

8、多态性 运行时的多态性多态性的3种实现方式: 通过接口实现多态性 通过继承实现多态性 通过抽象类实现的多态性7.结构与连接为了使系统能够有效地映射问题域,系统开发者需要认识并描述对象间的以下几种关系:(1)一般/特殊结构(2)整体/部分结构计算机主机外设主板(3)实例连接实例连接反映了对象与对象间的静态关系。(4)消息连接教师学生教1m消息连接描述对象之间的动态联系。消息连接是有方向的,连接从消息发送者指向消息接受者。7、UML的构成(图4-1) (1)视图“4+1”视图(图4-2) 视图是表达系统的某一方面特征的UML建模元素的子集。是由一个或者多个图组成的对系统某个角度的抽象。 (2)图

9、9种图 (3)模型元素 UML中的模型元素包括事物和事物之间的联系。事物描述了一般的面向对象的概念,如类、对象、接口、消息和组件等。 (4)通用机制 UML提供的通用机制可以为模型元素提供额外的注释、信息或语义。软件建模与建模语言UMLUML视图视图通用机制通用机制模型元素模型元素用用例例视视图图逻逻辑辑视视图图并并发发视视图图组组件件视视图图配配置置视视图图修修饰饰注注解解规规格格说说明明通通用用划划分分扩扩展展机机制制事事务务关关系系用用例例图图类类图图对对象象图图顺顺序序图图协协作作图图状状态态图图活活动动图图组组件件图图配配置置图图结结构构事事务务动动作作事事务务分分组组事事务务注注释

10、释事事务务关关联联关关系系依依赖赖关关系系泛泛化化关关系系实实现现关关系系聚聚合合关关系系类类接接口口协协作作用用例例活活动动类类组组件件节节点点交交互互状状态态机机包包注注释释UMLUML视图视图通用机制通用机制模型元素模型元素用用例例视视图图逻逻辑辑视视图图并并发发视视图图组组件件视视图图配配置置视视图图修修饰饰注注解解规规格格说说明明通通用用划划分分扩扩展展机机制制事事务务关关系系用用例例图图类类图图对对象象图图顺顺序序图图协协作作图图状状态态图图活活动动图图组组件件图图配配置置图图结结构构事事务务动动作作事事务务分分组组事事务务注注释释事事务务关关联联关关系系依依赖赖关关系系泛泛化化关

11、关系系实实现现关关系系聚聚合合关关系系类类接接口口协协作作用用例例活活动动类类组组件件节节点点交交互互状状态态机机包包注注释释UML的构成1、用例视图 用例视图强调从系统的外部参与者角度看到的或需要的系统功能。用例图2、逻辑视图 逻辑视图从系统的静态结构和动态行为角度显示如何实现系统的功能。类图、对象图、状态图、时序图、协作图、活动图3、组件视图 组件视图显示代码组件的组织结构。组件图4、并发视图 并发视图显示系统的并发性,解决在并发系统中存在的通信和同步问题。状态图、协作图、活动图5、配置视图 配置视图显示系统的具体部署。配置图 部署是指将系统配置到由计算机和设备组成的物理结构上。UML“4

12、+1”视图1、用例图Use Case Diagram2、类 图Class Diagram3、对象图Object Diagram4、状态图State Diagram5、时序图Sequence Diagram6、协作图Collaboration Diagram7、活动图Activity Diagram8、组件图Component Diagram9、配置图Deployment Diagram UML的图聚集UML的模型元素1、事物 UML中的事物可以分为结构事物、动作事物、分组事物和注释事物4类。 (1) 结构事物结构事物共有7种:类、接口、协作、用例、活动类、组件和节点。 类。类是对具有相同属性、

13、方法、关系和语义的对象的抽象,一个类可以实现一个或多个接口。在UML中类用包括类名、属性和方法的矩形表示。UML的模型元素 接口。接口是为类或组件提供特定服务的一组操作的集合。接口描述了类或组件的对外可见的动作。在UML中接口用圆表示,在图形旁边还要标注接口的名字。 协作。协作定义了交互操作。在UML中,用虚线构成的椭圆表示,椭圆中要标注协作的名字。UML的模型元素 用例。用例描述系统对一个特定角色执行的一系列动作。在UML中,用例用标注了用例名称的实线椭圆表示,如下图所示。 活动类。活动类是类对象有一个或多个进程或线程的类,在UML中,活动类和类的表示法相同,只是边框用粗线条,如下图所示。用

14、例UML的模型元素 组件。组件是实现了一个接口集合的物理上可替换的系统部分。在UML中,组件如下图所示。 节点。节点是在运行时存在的一个物理元素。它代表一个可计算的资源,通常占用一些内存和具有处理能力。一个组件集合一般来说位于一个节点。在UML中,节点如下图所示。UML的模型元素(2) 动作事物动作事物是UML模型中的动态部分,代表时间和空间上的动作。交互和状态机是UML中最基本的两个动态事物元素。 交互。交互是一组对象在特定上下文中,为达到某种特定的目的而进行的一系列消息交换组成的动作。在UML中用带箭头的直线来表示。UML的模型元素 状态机。状态机由一系列对象的状态组成。在UML中,状态如

15、下图所示。UML的模型元素(3)分组事物。分组事物是UML模型中组织的部分,分组事物只有一种,称为包。包是一种有组织地将一系列元素分组的机制。在UML中包的图形如下图所示。UML的模型元素(4)注释事物。注释事物是UML模型的解释部分。在UML中注释事物的图形如下图所示。UML的模型元素2、关系(1)关联关系指一种对象和另一种对象有联系。(2)依赖关系 对于两个对象X、Y,如果对象X发生变化,可能会引起对另一个对象Y的变化,则称Y依赖于X。(3)泛化关系UML中的泛化关系定义了一般元素和特殊元素之间的分类关系UML的模型元素(4)实现关系实现关系将一种模型元素(如类)与另一种模型元素(如接口)连接起来(5)聚合关系聚合关系描述元素之间部分与整体的关系。UML的模型元素1、修饰(1)在使用UML建模时,可以将图形修饰附加到UML图中的模型元素上。(2)这种修饰为图中的模型元素增加了语义。(粗体、下划线等)2、注释(1)为了能够为一个模型添加不能用建模语言来表示的信息,UML为用户提供注释功能。(2)注释是以自由的文本形式出现的,它的信息

温馨提示

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

评论

0/150

提交评论