UML(统一建模语言)是当前软件开发中使用最为广泛的建模技术之一,通过使用UML可以构造软件系统的需求模型(用例模型)、静态模型、动态模型和架构模型。UML通过图形和文字符号来描述一个系统,它是绘制软件蓝图的标准语言。熟练掌握UML建模技术是一个优秀的软件从业人员所必备的基本技能之一,越来越多的软件企业在招聘中也需要应聘者具备一定的UML知识基础和实践经验。

  作为UML的初学者,很多人也在尝试使用UML中的图形来描述一个软件系统,构造一个软件系统的蓝图。然而,在使用UML的过程中,一部分人并没有深入理解这些图的作用,以及这些图在绘制过程中的一些技巧。我将陆续通过几篇文章来帮助大家更快更好地学习UML,在软件项目中合理使用UML来提高软件开发效率并规范软件开发流程。

  在本文中我将结合库存管理系统来深入浅出地讲述UML建模中的第一个模型——需求模型的构造,即用例建模,包括如何绘制规范的用例图、如何编写简洁而又清晰的用例文档、以及怎样通过用例图和用例文档来构造软件系统的需求模型。

  在UML中,需求模型又称为用例模型,它主要用于描述系统的功能性需求,即软件可以实现的功能,如登录、注册、入库、出库、查看库存报表、增加员工信息等。常规的用例建模一般包括两个组成部分:绘制用例图和编写用例文档。

1. 绘制用例图

  用例图是UML中比较简单的一种图形,它包含两个主要组成元素,分别是执行者(Actor)和用例(Use Case)。执行者又称为参与者或角色,用例又称为用况或案例。在用例图中,执行者用一个“小人”符号表示,用例用一个“椭圆”符号表示,因此用例图又有一个名字为“小人椭圆图”。最简单的用例图如下:

  在该用例图中,“仓库管理员”表示执行者,“入库”表示一个用例,即系统的一个功能。

执行者是指直接和系统交互的一类事物,执行者主要有如下三类:

  (1) 直接使用系统的人,如使用一个库存管理系统的仓库管理员、仓储部经理等用户,仓库管理员可以通过系统进行入库和出库操作,仓储部经理可以通过系统查看各种报表,如库存报表、财务报表等;

  (2) 与该系统相关的其他系统,如在库存管理系统中如果涉及到付款操作,需要使用另一个软件——支付系统,此时支付系统就是库存管理的执行者之一;

  (3) 自动发生的事件,如时间、温度等自动事件,如果库存管理系统要求每晚零点执行一个数据汇总操作,此时时间就成为该操作的执行者。

  识别一个系统的执行者是用例建模的第一步,在识别出一个系统的执行者后,需要寻找系统的用例,即功能需求。用例是执行者对系统操作的一个动作序列,每一个用例对应执行者对系统的一个完整操作流程。如库存管理系统中,仓库管理员可以登录系统,可以进行入库、出库等操作,在这里登录、入库、出库都是用例,它们都对应系统所提供的一个功能。执行者通过执行用例来完成相应的工作。用例体现了执行者和软件系统的交互过程,因此只用一个简单的“椭圆”来表示用例太过简单,对于每一个用例,需要编写一个详细的用例文档,在下一节将介绍如何编写用例文档。

文章出处:http://blog.csdn.net/lovelion/article/details/6226361

再学UML-UML用例建模解析(一)的更多相关文章

  1. UML用例建模解析(一)----------用例概述

    UML(统一建模语言): 1. 绘制用例图 用例图是UML中比较简单的一种图形,它包含两个主要组成元素,分别是执行者(Actor)和用例(Use Case).执行者又称为参与者或角色,用例又称为用况或 ...

  2. 再学UML-UML用例建模解析(三)

    2. 编写用例文档 绘制用例图只是完成了用例建模最基本也是最简单的一步,用例建模的核心在于编写用例文档,用例文档又称为用例规约或用例描述.顾名思义,用例文档是用于描述用例的文档,每一个用例对应于一个用 ...

  3. Uml学习-用例建模简介

    用例建模简介  用例建模是UML建模的一部分,它也是UML里最基础的部分.用例建模的最主要功能就是用来表达系统的功能性需求或行为.用例图重点描述用户需求. 它描述需求.用户和主要组件之间的关系. 它不 ...

  4. 再学UML-Bug管理系统UML2.0建模实例(一)

    1.项目概述       随着软件项目规模和复杂性的增大,有效跟踪和管理项目中存在的缺陷Bug变得越来越重要.每一个软件企业都需要妥善处理软件中的缺陷,这将直接关系到软件过程质量与软件产品质量,但并非 ...

  5. 再学UML-UML用例建模解析(二)

    (1) 关联关系 关联关系是指执行者与用例之间的关系,又称为通信关系,如果某个执行者可以对某个用例进行操作,它们之间就具有关联关系,如下图所示,“经理”有一个功能为“查看库存报表”,因此可以在执行者“ ...

  6. UML用例建模解析(二)---------用例执行者之间关系

    (1) 关联关系 关联关系是指执行者与用例之间的关系,又称为通信关系,如果某个执行者可以对某个用例进行操作,它们之间就具有关联关系,如下图所示,“经理”有一个功能为“查看库存报表”,因此可以在执行者“ ...

  7. 再学UML-Bug管理系统UML2.0建模实例(二)

    2.3 BMS顺序图(需求模型)       在UML中,我们将顺序图分为两类,一类用于描述系统需求,构造系统的需求模型(分析模型):另一类用于指导设计与实现,构造系统的实现模型(设计模型).     ...

  8. 再学UML-Bug管理系统UML2.0建模实例(三)

    3.系统设计 在对系统进行全面分析后,我们开始使用UML对系统进行设计,构造BMS系统的设计模型,包括类图.包图.顺序图(实现模型).组件图和部署图等的绘制,回答了“怎么做”的问题.具体设计工作如下: ...

  9. 再学UML-Bug管理系统UML2.0建模实例(四)

    3.3 顺序图(实现模型) 在系统设计与实现阶段我们也可以使用顺序图进行建模,此时通过顺序图可以明确表示系统设计中对象之间的交互,考虑到具体系统实现,对象之间通过方法调用传递消息.在BMS系统中,对每 ...

随机推荐

  1. Intelligent Poetry

    Readme: Creat poems. import re import random from collections import Counter def Creat_Poem(number): ...

  2. JUnit学习之hamcrest、testSuite介绍及测试原则

    [转自] http://huihai.iteye.com/blog/1994270 上一节说了junit的一些基本概念,主要使用assert做一些基本的判断.但很多时候使用assert做判断,并不方便 ...

  3. 关于在scrapy中使用xpath

    1. 还是以虎嗅为例,他给我返回的是一个json格式的json串 2.那么我需要操作的就是把json串转换成我们的字典格式再进行操作 str=json.loads(response.body)['da ...

  4. 认识HTML中表格、列表标签以及表单控件

    前端之HTML,CSS(二) HTML标签 列表标签 无序列表:闭标签,由<ul><li></li>...</ul>组合而成,效果成纵向列表.格式:&l ...

  5. PIE SDK地图范围设置

    1.功能简介 地图范围设置主要就是对图层的地图浏览控制,例如地图的放大.缩小.漫游.全图显示.1:1视图.比例尺等功能,能更好的与地图有一个互动的地图浏览体验.PIE SDK对地图范围设置主要利用IC ...

  6. Thinkphp2.1漏洞利用

    thinkphp2.1版本 Google语法: inurl:index.php intext:ThinkPHP 2.1 { Fast & Simple OOP PHP Framework }  ...

  7. Promise 多重链式调用

    Promise对象是用于异步操作的. Promise的真正强大之处在于它的多重链式调用,可以避免层层嵌套回调.如果我们在第一次ajax请求后,还要用它返回的结果再次请求呢? 使用Promise,我们就 ...

  8. oracle 日志文件

    --Oracel Grid 11.2的Agent有多个,其中有两个最重要:orarootagent.oraagent --它们有各自的日志文件,这些Agent的日志文件位于: $grid_home/l ...

  9. vue中watch的使用

    vue中watch的使用 vue中的watch是一个比较重要的概念,通过他我们可以检测data的变化,下面进行详细的介绍. watch定义方式如下: {[key: string]: string | ...

  10. document.write与document.getElementById.innterHTML的区别

    <html> <head> <meta charset="utf-8"> <script> var tmp = "< ...