用例建模-绘制用例图
1、简答题
用例的概念
用例(use case)是软件工程或系统工程中对系统如何反应外界请求的描述,是一种通过用户的使用场景来获取需求的技术。每个用例提供了一个或多个场景,该场景说明了系统是如何和最终用户或其它系统互动,也就是谁可以用系统做什么,从而获得一个明确的业务目标。
用例和场景的关系?什么是主场景或 happy path?
用例是场景的集合,每个用例提供了一个或多个场景。
主场景(happy path):对应于主系统交互,通常是成功场景;直接地实现用户目标的场景
用例有哪些形式?
- 摘要——简洁的一段式概要,通常用于主成功场景。在早期需求分析过程中,为快速了解主题和范围而进行使用的。
- 非正式——非正式的段落格式,用几个段落覆盖不同场景。
- 详述——详细编写所有步骤及各种变化,同时具有补充部分,如前置条件和成功保证
对于复杂业务,为什么编制完整用例非常难?
对于复杂的业务来说,需求多,会导致拓展部分也多,用例中很难全覆盖。
同时由于复杂业务的场景较多且复杂,完整用例很难实现步骤和变化都写的详细
什么是用例图?
用例图是指由参与者(actor)、用例(use case),边界以及他们之间的关系构成的用于描述系统功能的视图。用例图(use case)是外部用户(被称为参与者)所能观察到的系统能能的模型图。用例图是系统的蓝图,它呈现了一些参与者、一些用例以及他们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。
用例图的基本符号与元素?
参与者(Actor):参与者不是特指人,是指系统以外的,在使用系统或与系统交互中所扮演的角色。与应用程序或系统进行交互的用户、组织或外部系统。用一个小人表示。
用例(Use Case):是对包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察结果。用例在画图中用椭圆来表示,椭圆下面附上用例的名称。
系统边界是用来表示正在建模系统的边界。边界内表示系统的组成部分,边界外表示系统外部。系统边界在画图中用方框来表示,同时附上系统的名称,参与者画在边界的外面,用例画在边界里面。
- 箭头用来表示参与者和系统通过相互发送信号或消息进行交互的关联关系。箭头尾部用来表示启动交互的一方,箭头头部用来表示被启动的一方,其中用例总是要由参与者来启动。
用例图的画法与步骤
- 对语境建模
- 识别系统外部的参与者。
- 将类似参与者组织成泛化的结构层次。
- 在需要加深理解的地方,为每个参与者提供一个构造型。
- 将参与者放入到用例图中,并说明参与者与用例之间的通信路径。
- 对需求建模
- 识别系统的外部参与者来建立系统的语境
- 考虑每一个参与者期望的行为或需要系统提供的行为。
- 把这些公共的行为命名为用例。
- 确定提供者用例和扩展用例。
- 对这些用例,参与者和它们之间的关系建模。
- 用注释修饰用例
- 对语境建模
用例图给利益相关人与开发者的价值有哪些?
- 对于利益相关人
- 用例强调了用户的目标和观点,使得用户能够更多地参与到系统的设计当中去,保证系统按照用户的需求进行设计。而用例图则将用例图形化、具象化了,使得整个系统中用例、参与者之间的关系更加清晰地表达出来。
- 用例能够根据需要对复杂程度和形式化程序进行增减调节,即能够响应用户提出的需求,而用例图则使得这种调节更加便利,可以通过修改图形间的关系实现。
- 对于开发者
- 用例图使得开发者能够更明确地获得需求,更好地理解需求。
- 用例图可以指导开发和测试,同时可以在整个过程中对其他工作流起到指导作用。
- 对于利益相关人
2、建模练习题(用例模型)
- 选择2-3个你熟悉的类似业务的在线服务系统(或移动 APP),如定旅馆(携程、去哪儿等)、定电影票、背单词APP等,分别绘制它们用例图。并满足以下要求:
- 请使用用户的视角,描述用户目标或系统提供的服务
- 粒度达到子用例级别,并用 include 和 exclude 关联它们
- 请用色彩标注出你认为创新(区别于竞争对手的)用例或子用例
- 尽可能识别外部系统和服务
- 然后,回答下列问题:
为什么相似系统的用例图是相似的?
- 相似系统的用例图的参与者是基本相同的
- 相似的系统由很多功能、服务是相同的,因此会出现相似甚至相同的用例
如果是定旅馆业务,请对比 Asg_RH 用例图,简述如何利用不同时代、不同地区产品的用例图,展现、突出创新业务和技术
- 针对不同时代,我们应该从时代当前新兴发展的技术出发,观察是否能够应用到我们已有用例图的用例中
- 针对不同地区,我们可以参考不同地区用例图与当地风俗习惯的结合,从而进行有针对性的服务
如何利用用例图定位创新思路(业务创新、或技术创新、或商业模式创新)在系统中的作用
根据用例图中创新业务和技术的位置,如果是直接于actor相连接,则是比较重要的创新点,甚至为一大板块;如果是子用例的拓展用例,则是具有一定局限性的创新点
请使用 SCRUM 方法,选择一个用例图,编制某定旅馆开发的需求(backlog)开发计划表
ID Name Imp Est How do demo Notes 1 搜索旅店 80 30 在输入栏输入目的地、城市或者景点,或者在地图上直接选择相应位置的淋巴管 根据旅馆的历史成交以及用户的评价进行排序推荐 2 预订房源 60 20 选择居住的人数以及居住的时间 居住人数有增减人数的选择 3 支付 100 20 选择多种支付方式进行支付 注意支付接口的信息安全 4 分享故事 60 50 用户可以发帖分享自己的故事,可以浏览评价他人的故事 注意编辑界面的UI问题 - ID:为一个唯一标识,在其他工作或者文档中想引用故事就使用这个ID来引用
- Name:2到10个字,通过简单的描述来说明故事
- 重要性(Imp):这个优先级决定了sprint选择的故事,优先级越高的越早实现
- 初始估算(Est): 这个由Team来根据故事描述内容来估算,产品负责人讲解完故事后,Team对不清楚的进行询问,大概了解后进行粗略估算。
- How do demo:从用户视角,从操作层面进行讲解这个故事如何通过软件来演示,也可以作为一个简单的测试用例了。重要性高的backlog条目都要填写“如何演示”。
- Notes:相关信息、解释说明和对其他资料的引用等,一般都非常简短
根据任务4,参考 使用用例点估算软件成本,给出项目用例点的估算
用例 业务 计算 原因 UC比重 搜索旅店 3 2 简单 预订房源 6 4 平均 支付 1 1 简单 分享故事 10 7 复杂
用例建模-绘制用例图相关推荐
- 作业四:用例建模 - 绘制用例图
一.简答题 用例的概念 用例(use case),或译使用案例.用况,是软件工程或系统工程中对系统如何反应外界请求的描述,是一种通过用户的使用场景来获取需求的技术. 每个用例提供了一个或多个场景,该场 ...
- 用例建模 - 绘制用例图
1.简答题 1.用例的概念 用例是一组相关的成功和失败.场景的集合,用来描述参与者如何使用系统来实现其目标.它是文本式的情节描述. 2.用例和场景的关系?什么是主场景或 happy path? 场景是 ...
- 系统分析与设计-用例建模之绘制用例图
用例建模 - 绘制用例图 文章目录 用例建模 - 绘制用例图 简答题 建模练习题(用例模型) 简答题 1.用例的概念 在软件和系统工程中,用例是一系列系统的操作或事件步骤,通常通过用户的使用场景来获取 ...
- 不使用powerdesigner手工绘制用例图例题详解
文章目录 1.题目 2.分析过程 3.结果 4.需要注意的细节 5.本题易错的地方 1.题目 根据以下场景绘制用例图. 某公司预开发一个反馈系统作为其CRM(客户关系管理)的一部分.系统基本功能描述如 ...
- 使用UMLet绘制用例图及活动图
使用UMLet绘制用例图及活动图 UMLet是一款开放源代码的轻量级UML建模工具,它能够帮助我们快速地构建用例图.活动图等各种 UML模型. 用例图充当用户要求说明的焦点. 它描述要求.用户和主要组 ...
- UMLet 使用说明之绘制用例图
UMLet 是一款简单实用.开源的轻量级 UML 建模工具,它能够帮助我们快速地构建 UML 用例图.UML 静态图.UML 行为图和 UML 实现图等各种 UML 模型.UMLet 可以在 Wind ...
- 用例建模指南lt;二gt;
3. 系统需求 RUP中根据FURPS+模型将系统需求分为以下几类: 功能(Functionality) 可用性(Usability) 可靠性(Reliability) 性能(Performance) ...
- UML用例建模,业务用例建模、概念用例建模、系统用例建模,领域建模
在面向对象软件开发的过程中,针对复杂系统,我们一般会先进行相关建模来了解现实世界问题,通过抽象方法,建立模型来表征现实世界,获得对现实事物本身的理解,然后将这些理解到的知识概念化,并将这些逻辑概念组织 ...
- 信息系统分析与设计 第七章 用例建模
文章目录 7.1 基于用例的需求分析 7.2 用例的描述 7.3 建立用例的关系 7.1 基于用例的需求分析 用例分析是站在最终用户的角度看待系统及其特性,模型简单直接,一经提出便受到软件开发人员的青 ...
最新文章
- 变焦即可判断物体的距离
- window系统JAVA开发环境的搭建
- 深入理解和应用Float属性
- linux 统计目录大小并按大小排序
- JAVA中参数传递问题的总结(按值传递和引用传递)
- VS2003创建动态库的一点笔记
- 酷派起诉小米:你竟敢侵我的权?
- 基于BERT进行商品标题实体识别,很详细~
- python 实现的huffman 编码压缩,解码解压缩
- configure: error: udev support requested but libudev header not installed
- 关于Http请求后返回json乱码的问题
- Hspice 反相器仿真
- 五色电阻在线计算机,色环电阻在线计算器
- 易宝支付 java_易宝支付工具类
- springboot初次使用template可能遇到的问题
- 万字拆解江小白:新品牌做白酒,敢问路在何方?
- COGS 336 Vijos 1018 NOI2003 智破连环阵
- cubemx实现CAN通讯
- OpenGL学习笔记——坐标转换
- celery redis mysql_GitHub - FJUT/gxgk-wechat-server: 校园微信公众号后端,使用 Python、Flask、Redis、MySQL、Celery...