软件工程UML.ppt
《软件工程UML.ppt》由会员分享,可在线阅读,更多相关《软件工程UML.ppt(110页珍藏版)》请在课桌文档上搜索。
1、Unified Modeling Language统一建模语言,参考文献,UML参考手册(第2版)James Rumbaugh,Ivar Jacobson,Grady Booch 机械工业出版社 UML用户指南(第2版)Grady Booch,James Rumbaugh,Ivar Jacobson 人民邮电出版社UML精粹:标准对象语言简明指南 Martin Fowler 清华大学出版社,产生背景,面向对象的分析与设计(OOA&D)方法的发展在80年代末至90年代中出现了一个高潮 UML是这个高潮的产物 统一了Booch、Rumbaugh和Jacobson的表示方法 Booch 1993OM
2、T-2OOSEOOA/OOD Coad/Yourdon 统一为大众所接受的统一建模语言,发展历程,什么是UML?,通用的可视化建模语言 用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档 它记录了对必须构造的系统的决定和理解 用于对系统的理解、设计、浏览、配置、维护和信息控制,UML的适用范围,各种软件开发方法 软件生命周期的各个阶段 各种应用领域,UML描述能力,静态结构动态行为模型分解成包的结构用于显示系统实现和组织运行的成分,UML是什么语言?,不是一门程序设计语言 不是一种可用于定理证明的高度形式化的语言 是一种通用建模语言 是一种离散的建模语言 不适合对诸如工程和物理学领域
3、中的连续系统建模 是一个综合的通用建模语言 适合对诸如由计算机软件、固件或数字逻辑构成的离散系统建模,UML概念域,静态结构动态行为实现构造模型组织扩展机制,静态结构,静态视图用类构造模型来表达应用 类继承和子类关联:对象与其他对象之间也具有运行时间连接依赖:包括在抽象级上进行模型转换、模板参数的捆绑、授予许可以及通过一种元素使用另一种元素等,动态行为,描述和时间相关的交互图状态图活动图,模型组织,子系统包图,实现结构,组件图部署图,扩展机制,构造性标记值约束,UML视图,视图来划分UML概念和组件 视图只是表达系统某一方面特征的UML建模组件的子集 三个视图域结构分类动态行为模型管理,类元c
4、lassifier,各种视图的组成用类元(classifier)表示 描述事物的建摸工具 是描述结构和行为特性的一种机制 类元为研究系统动态行为奠定了基础,结构分类,描述了系统中的结构成员及其相互关系 类元视图静态视图用例视图实现视图,动态行为,描述了系统随时间变化的行为 行为用从静态视图中抽取的瞬间值的变化来描述 动态行为视图状态机视图活动视图交互视图,模型管理,说明了模型的分层组织结构 包是模型的基本组织单元,UML视图表,UML视图,用例视图,被称为执行者的外部用户所能观察到的系统功能的模型图 用例是系统中的一个功能单元,可以被描述为执行者与系统之间的一次交互作用 用例模型的用途是列出系
5、统中的用例和执行者,并显示哪个执行者参与了哪个用例的执行。,例子,交互图,描述了执行系统功能的各个角色之间相互传递消息的顺序关系 类元是对在系统内交互关系中起特定作用的一个对象的描述,这使它区别于同类的其他对象 互视图显示了跨越多个对象的系统控制流程 交互视图可用两种图来表示 顺序图协作图(通信图)定时timing交互概图,顺序图,表示了对象之间传送消息的时间顺序 每一个类元角色用一条生命线来表示用垂直线代表整个交互过程中对象的生命期 用来进行一个场景说明即一个事务的历史过程 用来表示用例中的行为顺序 当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或状态机中引起转换的触发事件,例子,
6、通信图(协作图),对在一次交互中有意义的对象和对象间的链建模 对象和关系只有在交互的才有意义 类元角色描述了一个对象 关联角色描述了协作关系中的一个链 一个用途是表示一个类操作的实现 可以说明类操作中用到的参数和局部变量以及操作中的永久链,例子,顺序图 VS 通信图,都可以表示各对象间的交互关系 侧重点不同顺序图用消息的几何排列关系来表达消息的时间顺序,各角色之间的相关关系是隐含的 协作图用各个角色的几何排列图形来表示角色之间的关系,并用消息来说明这些关系,状态机视图,是一个类对象所可能经历的所有历程的模型图 状态机由对象的各个状态和连接这些状态的转换组成 每个状态对一个对象在其生命期中满足某
7、种条件的一个时间段建模 当一个事件发生时,它会触发状态间的转换,导致对象从一种状态转化到另一新的状态 与转换相关的活动执行时,转换也同时发生,例子,活动视图,是状态机的一个变体 用来描述执行算法的工作流程中涉及的活动 活动状态代表了一个活动 一个工作流步骤或一个操作的执行 描述了一组顺序的或并发的活 动,例子,模型管理视图,对模型自身组织建模 一系列由模型元素(如类、状态机和用例)构成的包组成了模型 一个包(package)可能包含其他的包 整个模型实际上可看成一个根包,它间接包含了模型中的所有内容 子系统是另一种特殊的包,包图,扩展机制,约束用某种形式化语言或自然语言表达的语义关系的文字说明
8、 构造型由建模者设计的新的模型元素 标记 值附加到任何模型元素上的命名的信息块,例子,各种视图间的关系,用例视图,用例模型由Ivar Jacobson在开发AXE系统中首先使用 加入由他所倡导的OOSE和Objectory方法中 描述的是外部执行者(Actor)所理解的系统功能 是获取系统功能需求的一种技术,用例视图的作用,它描述了待开发系统的功能需求 它将系统看作黑盒,从外部执行者的角度来理解系统 它驱动了需求分析之后各阶段的开发工作 不仅在开发过程中保证了系统所有功能的实现 被用于验证和检测所开发的系统影响到开发工作的各个阶段和 UML 的各个模型,用例视图的适用范围,用于需求分析阶段 它
9、的建立是系统开发者和用户反复讨论的结果 表明了开发者和用户对需求规格达成的共识,用例模型的组成,用例模型由若干个用例图描述 用例图中显示执行者、用例和用例之间的关系 用例图包括三种模型元素 系统执行者用例,系统System,用例模型的一个组成部分 代表的是一部机器或一个业务活动 不是真正实现的软件系统 系统的边界用来说明构建的用例模型的应用范围 自动售货机准确定义系统的边界并不总是容易的事 自动还是手工?系统规模有多大?,定义系统的一般方法,先识别出系统的基本功能然后以此为基础定义一个稳定的、精确定义的系统架构以后再不断地扩充系统功能,逐步完善,术语和定义,在建模初期要定义一些术语和定义在描述
10、系统、用例或进行作用域分析时采用统一的术语和定义能够规范表述系统的含义,不致于出现误解,USE CASE用例,代表的是一个完整的功能 是活动序列的集合 系统执行该活动序列来为执行者产生一个可观察的结果 活动是系统的一次执行 一个用例是用户与计算机之间的一次典型交互作用 系统中的每种可执行情况就是一个活动,每个活动由许多步骤组成,用例的图示,自动售货机系统用例图,关联Association,用例和执行者之间的连接关系表示哪种执行者能与该用例通信 关联关系是双向的多对多关系 一个执行者可以与多个用例通信一个用例也可以与多个执行者通信,用例的情景Scenario,用例表示的也是一个类,而不是某个具体
11、的实例 用例的实例(也是一种动作)代表系统的一种实际使用方法这个实例通常叫作情景(scenario)情景是系统的一次具体执行路线,用例的特点,用例总由执行者初始化 用例为执行者提供值 用例具有完全性,用例规格说明,用例规格说明不是UML的一部分 很多开发方法都需要对用例进行文字说明都有一个用例规格说明的模板目的是详细描述用例,用例规格说明模板,用例:用例标示:执行者:。先决条件(preconditions):事件流:后置条件(post conditions):,执行者Actor,Actor指用户在系统中所扮演的角色 是与系统交互的人或事 其图形化的表示是一个小人状图案执行者是一个群体概念 代表
12、的是一类能使用某个功能的人或事 执行者不是指某个个体 执行者可以是人,也可以是外界系统执行者对提供用例是非常有用的,主要执行者和次要执行者,主要执行者(primary actor)指的是执行系统主要功能的执行者 次要执行者指的是使用系统次要功能的执行者次要功能是指一般完成维护系统的功能例如管理数据库通信备份等将执行者分级的目的是保证把系统的所有功能表示出来,执行者的泛化关系,执行者是一个类,它拥有与类相同的关联描述 使用泛化(generalization)关系描述若干执行者之间的关系(is-a)将某些执行者的共同行为抽取出来表示成泛化的行为,且将它们描述为超类,泛化的例子,用例间的关联,用例的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 UML
链接地址:https://www.desk33.com/p-235674.html