1、13:052目录目录用例图4.UML的组成3.建模的重要性2.UML概述1.13:053p1.1什么是什么是UML?nUML是统一建模语言(是统一建模语言(UML是是 Unified Modeling Language的缩写)是用来对软件密集系统进行可视化建模的一种语言。的缩写)是用来对软件密集系统进行可视化建模的一种语言。UML为面向对象开发系统的产品进行说明、可视化、和编制文为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。档的一种标准语言。13:0541 UML概述概述p1.2 UML能做什么?能做什么?提供了便于不同人之间有效地提供了便于不同人之间有效地共享和交流共享
2、和交流设计结果的机制。设计结果的机制。UML作为通用的可视化建模语言,用于对软件进行描述、可作为通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统制品的视化处理、构造和建立软件系统制品的文档文档。它记录了对必须构造的系统的它记录了对必须构造的系统的决定和理解决定和理解,可用于对系统的,可用于对系统的理解、设计、浏览、配置、维护和信息控制。理解、设计、浏览、配置、维护和信息控制。UML 适用于各种适用于各种软件开发方法软件开发方法、软件、软件生命周期的各个阶段生命周期的各个阶段、各种应用领域各种应用领域以及各种开发工具,以及各种开发工具,UML 是一种总结了以往是一种总结了
3、以往建模技术的经验并吸收当今优秀成果的建模技术的经验并吸收当今优秀成果的标准建模方法标准建模方法。13:055p2.1 建模重要性例子建模重要性例子62 建模的重要性建模的重要性1如果你为如果你为你的家庭你的家庭建一座房建一座房子呢?子呢?2如果你想如果你想要建造一要建造一幢高档的幢高档的写字楼呢?写字楼呢?p2.2 模型的实质模型的实质n模型就是对现实的抽象简化模型就是对现实的抽象简化p2.3 建模的目标建模的目标13:057便于开发人员展现系统便于开发人员展现系统1允许开发人员制定系统的结构或行为允许开发人员制定系统的结构或行为2提供指导开发人员构造系统的模板提供指导开发人员构造系统的模板
4、3记录开发人员的决策记录开发人员的决策4p3.1 UML的结构的结构13:0583 UML的组成的组成p3.2 MUL视图视图13:05913:0510静态视图静态视图 概念:对各种概念和系统内部概念进行的建模 基本元素:类与类之间的关系 表示形式:类图 作用:p UML的基础;p 概念对象的基本结构;p 建立其它动态视图的基础13:0511用例用例视图视图 概念:参与者所能观察和使用到的系统功能的模型图 表示形式:用例图 作用:p 标识出系统中的用例与参与者之间的关系;p 确定什么样的参与者执行那个用例;13:0512交互交互视图视图 概念:描绘系统中各种角色或功能交互的模型 表示形式:序列
5、图、协作图 作用:p 显示跨越多个对象的系统控制流程13:0513模型管理模型管理视图视图 概念:对模型自身组织进行建模 组成:包及包之间的依赖关系13:0514物理物理视图视图 概念:对应用自身的结构建模,包括实现和部署 实现:将系统中可重用的块包装成为具有可替代性的物理构建(实现图)部署:运行时的计算资源的物理布置(部署图)作用:p 为了系统的可重用性和可操作性13:0515状态状态机机视图视图 概念:一个对象对自身所有可能处于状态的模型图 组成:对象状态的一组属性、对象变化的动作 表示形式:状态图 作用:状态图主要描述是从一个状态到另一个状态的转换,状态图是行为的结果13:0516活活动
6、视图动视图 概念:对计算流程和工作流程进行建模 表示形式:活动图 作用:p 计算过程中所处的各种状态,活动图是行为的动作,活动图的特殊形式是状态图13:0517p用例图:需求捕获,测试依据p类图:静态系统结构p对象图:对象之间的关联p构件图:构建之间的关联p部署图:构建的物理部署顺序图:捕获时间协作图:强调对象协作状态图:生命周期状态装换活动图:工作流程模型p总体来说:总体来说:p4.1 什么是用例图什么是用例图n用例图描述了系统提供的一个功能单元。用例图的主要目的是帮助开发团队以一种可视化的方式理解系统的功能需求,包括基于基本流程的“角色”关系,以及系统内用例之间的关系。13:05184 用
7、例图用例图p4.2 用例的绘制用例的绘制n由参与者(Actor)、用例(Use Case)以及它们之间的关系构成的用于描述系统功能的动态视图称为用例图。要在用例图上显示某个用例,可绘制一个椭圆,然后将用例的名称放在椭圆的中心或椭圆下面的中间位置。13:0519p4.3 注释注释n在用例建模中,为了更加清楚的描述用例或者参与者,会使用在用例建模中,为了更加清楚的描述用例或者参与者,会使用到注释。到注释。13:0520p4.4 用例图的作用用例图的作用n用例图是需求分析中的产物,主要作用是描述参与者和用例之用例图是需求分析中的产物,主要作用是描述参与者和用例之间的关系,帮助开发人员可视化的了解系统
8、的功能。间的关系,帮助开发人员可视化的了解系统的功能。n借助于用例图,系统用户、系统分析人员、系统设计人员、领借助于用例图,系统用户、系统分析人员、系统设计人员、领域专家能够以可视化的方式对问题进行探讨,域专家能够以可视化的方式对问题进行探讨,减少了大量交流减少了大量交流上的障碍,便于对问题达成共识上的障碍,便于对问题达成共识。13:0521p4.5 用例图关系用例图关系n用例图中涉及的关系有:关联、泛化、包含、扩展。用例图中涉及的关系有:关联、泛化、包含、扩展。13:0522关联关联(Association)n表示参与者与用例之间的通信,任何一方都可发送或接受消息。表示参与者与用例之间的通信
9、,任何一方都可发送或接受消息。【箭头指向箭头指向】:指向消息接收方:指向消息接收方13:0523泛化泛化(Inheritance)n就是通常理解的就是通常理解的继承继承关系,子用例和父用例相似,但表现出更关系,子用例和父用例相似,但表现出更特别的行为;子用例将继承父用例的所有结构、行为和关系。特别的行为;子用例将继承父用例的所有结构、行为和关系。子用例可以使用父用例的一段行为,也可以重载它。父用例通子用例可以使用父用例的一段行为,也可以重载它。父用例通常是抽象的。常是抽象的。n【箭头指向箭头指向】:指向父用例:指向父用例13:0524包含包含(Include)p包含关系用来把一个较复杂用例所表
10、示的功能包含关系用来把一个较复杂用例所表示的功能分解分解成较成较小的步骤小的步骤p【箭头指向箭头指向】:指向分解出来的功能用例:指向分解出来的功能用例13:0525扩展扩展(Extend)n扩展关系是指用例功能的扩展关系是指用例功能的延伸延伸,相当于为基础用例提供一个附,相当于为基础用例提供一个附加功能。加功能。n【箭头指向箭头指向】:指向基础用例:指向基础用例13:0526p4.6 如何绘制用例图呢?如何绘制用例图呢?13:0527识别识别参与者参与者确定确定用例用例构建用构建用例模型例模型u基本步骤p4.7 实例“学生信息管理系统”的需求n(1)系统管理员登录后可以对班级的基本信息进行增加
11、、删除、)系统管理员登录后可以对班级的基本信息进行增加、删除、修改、查询等操作。学校领导登录后可以对班级基本信息进行查询修改、查询等操作。学校领导登录后可以对班级基本信息进行查询操作。操作。n(2)教师登录后可以对学生的考试成绩进行录入、删除、修改、)教师登录后可以对学生的考试成绩进行录入、删除、修改、查询等操作。学生登录后可以对考试成绩进行查询操作。查询等操作。学生登录后可以对考试成绩进行查询操作。n(3)学生登录后可以了解所有选修课程的具体信息,可以根据自)学生登录后可以了解所有选修课程的具体信息,可以根据自己的需要选择不同课程。系统管理员登录后可以增加、修改、查询、己的需要选择不同课程。
12、系统管理员登录后可以增加、修改、查询、删除选修课程。删除选修课程。n(4)系统管理员可以对账号进行创建、设置、查看、删除等操作。)系统管理员可以对账号进行创建、设置、查看、删除等操作。13:0528练习练习1p有一台自动销售商品(食品或有一台自动销售商品(食品或者饮料等)的机器,任何人都者饮料等)的机器,任何人都可以通过按上面的按钮来购买可以通过按上面的按钮来购买商品,每个商品旁边都有一个商品,每个商品旁边都有一个指示灯,用来表示有没有该商指示灯,用来表示有没有该商品,机器上有一个人民币入口品,机器上有一个人民币入口和找零出口,用来和找零出口,用来收钱和找钱收钱和找钱,如果你需要购买一瓶果汁,
13、请如果你需要购买一瓶果汁,请绘制出用例图。绘制出用例图。13:0529练习练习2p图书馆管理系统是对书籍的借阅及师生信息进行统一管图书馆管理系统是对书籍的借阅及师生信息进行统一管理的系统,具体包括读者的借书、还书、书籍预订;理的系统,具体包括读者的借书、还书、书籍预订;p图书馆管理员的书籍借出处理、书籍归还处理、预订信图书馆管理员的书籍借出处理、书籍归还处理、预订信息处理;息处理;p还有系统管理员的系统维护,包括增加书目、删除或更还有系统管理员的系统维护,包括增加书目、删除或更新书目、增加书籍、减少书籍、增加读者账户信息删除新书目、增加书籍、减少书籍、增加读者账户信息删除或更新读者账户信息、书籍信息查询、读者信息查询等。或更新读者账户信息、书籍信息查询、读者信息查询等。13:0530练习练习3 13:0531第一题答案第一题答案班级信息管理用例图班级信息管理用例图成绩管理用例图成绩管理用例图13:0532网上选课用例图网上选课用例图账号管理用例图账号管理用例图13:0533第二题答案第二题答案自动售货机选择饮料付 款找 钱提供饮料显示是否有饮料收 钱顾 客13:0534第三题答案第三题答案13:0535