UML 用例建模技巧

UML用例建模,业务用例建模、概念用例建模、系统用例建模,领域建模 在面向对象软件开发的过程中,针对复杂系统,我们一般会先进行相关建模来了解现实世界问题,通过抽象方法,建立模型来表征现实世界,获得对现实事物本身的理解,然后将这些理解到的知识概念化,并将这些逻辑概念组织起来,形成对所观察事务的内部结构和工作原理便于理解的表达。在UML中通过用例驱动的方式来一步一步获取对现实世界的理解。 一般我们通过如下三个用例建模步骤来获取对现实世界问题的认知,然后将其转化为计算机世界的实现,主要有如下三个步骤: 业务用例建模 概念用例建模 系统用例建模 业务用例建模 业务用例建模早于需 阅读详情

                                                        UML 用例建模技巧

从参与者的角度并以主动语态编写用例。

应该以主动语态:“学生表明参加研习班意向”,而不是被动语态“研习班意向被学生表明”来编写用例。而且,应该从参与者的角度来编写用例。毕竟,用例的目的是理解用户如何对系统进行操作。

编写方案文本,而非功能需求。

用例描述的是对参与者来说有价值的一系列行动,而不是特性集。例如,“招收研习班的学生”用例描述的是学生如何与系统交互来参加研习班。它没有描述用户界面看上去是什么样子,或者它是如何工作的。有一些其它的模型来描述这些重要的信息,例如用户界面模型和增补规范。面向对象分析非常复杂,因此需要对它使用几种模型,并且应该适当地应用每一种模型。

用例只记载行为需求。

用例既不是类规范,也不是数据规范。这是应该由概念性模型捕捉的一种信息,在对象世界中,它是通过 UML 类模型建模的。您往往会引用概念性模型中描述的类,例如,“参加研习班”用例包括了“研习班”和“学生”等概念,它们都将由概念性模型描述。

不要忘记用户界面。

系统用例经常引用主用户界面 (UI) 元素,这些元素常常称为“边界”或“用户界面”项,例如 HTML 页面和报表。用例有时也引用一些次要的 UI 元素,例如按钮或数据输入字段,但这种级别的细节并不太常见。

创建用例模板。

用例包含了相当数量的信息,这些信息可以轻易地以常见格式记载。您应该考虑开发自己的模板(请参阅技巧“记载用例”)。

始终如一地组织用例图。

一般的做法是垂直地绘制继承 (inheritance) 和扩展 (extend) 关联,在父/基本用例下面绘制继承/扩展用例。同样,通常水平绘制包含 (include) 关联。请注意,这些是简单的经验法则 -- 只要始终遵循这些法则,产生的图将很容易理解。

不要忘记系统对参与者行动的响应。

用例既应该描述参与者是如何与系统交互的,也应该描述系统如何响应这些交互。例如,在“参加研习班”用例中,如果系统在学生表明他们希望参加研习班时没有做出响应,学生就会很沮丧地离开。

备选行动过程非常重要。

如果一切顺利,使用的将是基本行动过程 -- 但也不要忘记备选过程。引入备选过程是为了描述潜在的使用错误以及商业逻辑错误和异常。这些重要的信息对于驱动系统的设计来说很有必要,因此不要忘记在用例中对它们建模。

不要被 <<include>> 和 <<extend>> 关联所困扰。

我不是很确定到底发生了什么事,但我总是在想包含 (include) 和扩展 (extend) 关联,以及旧版本 UML 中使用 (uses) 和扩展 (extends) 关联的正确使用从来没有得到很好的描述。结果,用例建模小组往往在这些关联的正确应用上争论不休,在整个建模技术中一些有趣但次要的部分上浪费了惊人的时间。我曾在一个组织中工作,这家组织居然取缔了 <<include>> 和 <<extend>> 原型的使用,几个星期后,当意识到公司仍然需要这些概念时不得不撤消了这种极端的解决方案,而这时该组织对它们的正确使用还没有达成共识。

让用例带动用户文档。

用户文档的目的是描述如何使用系统。每个用例都描述了参与者通过使用系统所采取的一系列动作。简而言之,用例包含从中开始编写问党用户稳当的信息。例如,可以使用“参加研习班”用例作为基础来编写系统用户文档的“如何参加研习班”一节。

让用例带动演示。

软件开发过程中的一部分是向项目资金管理者通报工作成果,因此有时需要提供演示。因为用例是从用户的角度编写的,它们包含了演示中对资金管理者可能希望听到的事物的有价值的深刻见解。换句话说,用例通常包含制定演示稿所需的逻辑。 

UML中文教程:系统建模与设计的全方位指南 在软件工程领域,统一建模语言(UML)是一个关键的标准化工具,它提供了一套丰富的符号和图表,用以描述、设计、构造和文档化软件系统的结构和行为。UML不仅广泛用于软件开发,同时也适用于非软件系统,如商业流程、企业结构、物理设备等。本章将带您入门UML的基础知识,涵盖其核心概念和术语,为后续更深入的UML图表类型和应用打下坚实的基础。SOLID 原则是面向对象设计中的五大基本原则,由 Robert C. Martin 提出。 阅读详情

相关推荐

深入理解UML:经典建模技术与实践指南

本文还有配套的精品资源,点击获取 简介:《UML深度解析:经典建模技术探索》是一套经典UML学习资料,旨在帮助读者全面掌握UML建模技术。资料涵盖了UML基础,包括各种图形符号及对应建模视角的介绍。通过使用经典UML建模工具Rose的示例,提供实际系统建模的实例展示。图例解析部分深入解释了UML图形元素的含义。资料还探讨了UML在软件开发中的多个阶段应用,并阐述了学习UML...

weixin_29323977的博客 1342

UML建立用例模型

1. 用例模型 1992年Jacobson提出了Use case的概念以及可视化的表示方法—Use Case图,受到IT界的欢迎,被广泛应用到面向对象的系统分析中。 1.1 需求分析与用例建模 用例模型描述的是外部执行者,如用户所理解的系统功能。它描述了是一个系统“做什么”,而不是“怎么做”,用例不关心系统设计。 用例建模过程 定义系统 确定执行者和用用例 描述执行者和用例关系 确认模型 1.2 确定执行者和用例 用例图中包含的三种模型元素:执行者、用例和连接 1. 确定执行者 谁使用系统

day day no bug 4635

DataWorks PyODPS第三方包全攻略:从打包到加载的完整流程

本文详细介绍了在DataWorks的PyODPS节点中使用第三方Python包的完整流程,包括环境限制、打包工具pyodps-pack的使用、资源上传与加载实战,以及特殊场景处理技巧。通过本文,开发者可以掌握在MaxCompute受限环境中灵活使用自定义依赖的方法,提升数据处理效率。

dd012的博客 989

UML用例建模详解

概述 用例建模一般用在软件的需求分析阶段,用于描述系统的功能需求。 用例模型 用例模型由若干用例图组成,用例图展示了用例、参与者、以及它们之间的关系,用例的描述通常以正文形式描述。 注:参与者可以是人,也可以是外部系统 参与者与用例之间的关系:关联 参与者之间的关系:泛化 用例之间的关联(四种): 继承 使用使用也是一种继承关系 包含 扩展被包含的用例可以是一个单独的单元,而扩展出来的用例必须依赖于基用例,一旦基用例中扩展点给出条件满足,则扩展用例将被执行。比如vip功能就是一个扩展用例。(注意箭头方向

qq_45321888的博客 2342

S32K144 ADC硬件触发实战:PDB与TRGMUX配置避坑指南

本文深入解析了S32K144微控制器中ADC硬件触发的两种核心方案:PDB与TRGMUX。通过对比其架构差异、详细配置流程及常见问题排查,提供了从寄存器操作到DMA联动的完整优化指南,旨在帮助开发者解决多通道采样时序不稳、CPU负载过高等实际难题,实现高效稳定的数据采集。

weixin_29168153的博客 441

告别手动复制粘贴!用Python脚本+pywinauto实现PC微信消息自动发送(附完整源码)

本文详细介绍了如何利用Python和pywinauto实现PC微信消息的自动化发送,告别繁琐的手动操作。从环境搭建、UI控件定位到构建健壮的发送流程,再到高级功能扩展和项目打包部署,全面解析了自动化办公的实现方案,显著提升工作效率。

weixin_30315723的博客 583

UML(第三章:用例建模+ea实战)

一.用例建模相关理论知识 适合用例建模的情况: 系统由功能需求所主导 系统具有很多类型的用户,系统对他们提供不同的功能 系统具有很多接口 不适合: 系统有非功能需求所主导 系统具有很少的用户 系统具有很少的接口 1.1 获取原始需求 非功能性需求(Robert Grady软件质量准则“FURPS”): 功能性(Functionality) 使用性(Usability) 可靠性(Reliability) 性能(Performance) 可支持性(Supportability) 1.2 开发一个可

KQ的博客 3877

基于STM32的多普勒雷达测速

基于多普勒雷达传感器,以STM32单片机为主控芯片,根据不同模块检测距离的不同,使用不同多普勒雷达传感器实现对远近距离车辆行驶速度及方向的测量。 1、基础知识 无线电探测和测距,是用无线电(电磁波)方法发现目标并测定其空间位置的装置。随着雷达技术的发展,现代雷达不仅可以对目标进行定位,还可以测量目标的速度、对目标进行成像甚至测量目标的大小和材料特性。所有利用雷达波来检测物体速度的原理,其理论基础皆源自于“多普勒效应”,...

weixin_52801934的博客 6315

UML-用例建模

为了有效地定义所沟构造系统的需要,提出需求工程的概念。主要包括: 定义需求:理解用户的需要,建立用户可理解的系统需求模型。 分析需求:根据需求模型,建立开发者无二义性解释的分析模型。 基于用例的需求定义过程是以用例为中心,来组织各类软件需求。通过用例来解决需求定义过程中出现的问题,针对需求的难捕获特点,我们需要从用户的角度去理解问题,针对易变的问题,则是通过用例来建立合理的需求结构,因...

Algcc的博客 1936

[QMT量化交易小白入门]-十二、QMT回测龙头打首板和连板的策略

class a():passA = a() #创建空的类的实例 用来保存委托状态field_list定义了需要的市场数据字段,而类a用于保存交易状态。

木头大左的博客 4757

医疗影像配准与融合: 使用MATLAB对医学影像进行配准和融合,实现不同影像模态之间的对准和结构信息融合等

医疗影像配准与融合是医学影像处理的重要技术,它用于将不同来源、不同时间或不同模态的医学影像进行配准和融合,以获得更加完整、准确的患者解剖信息。基于MATLAB的医疗影像配准与融合可以帮助医生更准确地诊断疾病,制定更有效的治疗方案。医疗影像配准与融合是医学影像处理的关键技术,它对于提高医学影像诊断和治疗的准确性至关重要。MATLAB是一种功能强大的数学和科学计算软件,它可以为医疗影像配准与融合提供强大的工具和支持。

走向CTO的路上... 712

UML统一建模语言快速入门

UML统一建模语言入门 基本介绍 UML(统一建模语言Unified Modeling Language)是一种建模(即把对象实体通过适当的抽象,用适当的表现规则描绘出的简洁的模仿品 ,模型有实体的一般特征及规律)语言,用来为面向对象开发系统的产品进行说明、可视化和编制文档的方法。 UML描述了一个系统的静态结构和动态行为。静态结构定义了系统中的重要对象的属性和操作,以及这些**对象之间的相互关系...

JunsIr的技术栈 1582

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

UML项目-网上商城介绍

UML项目-网上商城介绍 去发现同类优质开源项目:https://gitcode.com/ 本项目为UML课程的期末作品,旨在通过网上商城案例,深入理解和掌握统一建模语言(UML)的基本知识和应用技巧。资源文件包含了丰富的UML图,包括用例图、时间图、活动图、状态图、通信图、部署图、顺序图、类图,以及项目的描述文档。 本项目由五位组员共同完成,涵盖了UML图的各种类型,全面展示了网上商城系统的结构...

gitblog_06747的博客 686

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

UML结构——事物

一。结构事物:  (1)类(class):类是对一组具有 相同属性,方法,关系和语义的对象的描述。一个类实现一个或多个接口。如图从上往下一次是:类,属性,方法。 (2)接口(interface):接口描述了一个类或构件的一个服务的操作集。接口仅仅是定义了一组操作的规范,它并没有给出这组操作的具体实现。如图:window是接口。 (3)协作(collaboration):协作定义了...

Ciel_Y的博客 2498

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

UML急速入门

UML是什么 UML定义: 统一建模语言(Unified Modeling Language,缩写UML) 非专利的第三代建模和规约语言 UML特点: UML是一种开放方法 用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法 UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效 在UML2.2中一...

weixin_34278190的博客 131

专家提醒 UML用例建模时需要注意的几个问题

转载来源于: http://developer.51cto.com/art/201007/210933.htm   UML用例建模的概念相信大家有所了解,这里向大家简单介绍一下几个UML用例建模技巧,相信通过过本文的学习你对UML用例建模概念一定会有深刻的认识。 AD: 本文向大家简单介绍一下UML用例建模技巧,掌握了这些技巧后,在以后

xdsoft365的专栏 889

UML基础一

UML基础(一) 1.软件工程的生命周期需求捕获、系统分析与设计、系统实现、测试、维护 2.UML(Unified Modeling Language统一建模语言)概述 3.UML组成视图(View)是一个或多个图组成的对系统某个角度的抽象图(Diagram)是模型元素集的图形表示模型元素(Model Element)代表面向对象中的类、对象、接口、消息和关系的概念通用机制(Genera...

wxg6203的专栏 266

UML用例建模解析(一)

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

vbloveshllm的专栏 1193

如何画UML用例图

原文:http://developer.51cto.com/art/201007/210077.htm UML用例图是非常有用的一种图,在需求分析中,可以让人们从繁重的文档中解脱出来,并且促使人们在做需求时能够更加准确、直观的表现自己的意思。 本文和大家重点讨论一下UML用例图的画法,主要包括UML简介,用例建模和UML用例图说明等内容,希望通过本文的学习你对画UML用例图的方法有一定

tdk133的专栏 1452

UML统一建模语言第4章 用例和用例图课后习题

《UML2基础、建模与设计教程》杨弘平等编著,清华大学出版社,第4章用例和用例图课后习题 1.什么是参与者?如何确定系统的参与者? 2.什么是用例?如何确定系统的用例? 3.用例之间有哪些关系?对每一种关系,请举出一个实际的例子,并画出用例图。 4.试画出学生选课系统的用例图。 5.学生管理系统中有一个模块是报到登记,具体流程是:在新生入校报到时,进行新生信息登记,记录学生的报到资料、个人基本情况的输入、查询、修改等。 问题:写出在上述需求描述中出现的Actor 并根据上述描述绘制其用例图。 ...

WHT869706733的博客 3549

UML资料链接

统一建模语言(UML) 版本 2.0 - 对模型驱动开发的支持http://www.ibm.com/developerworks/cn/rational/321_uml/ 养成良好的绘制 UML 序列图的习惯-序列图绘制技巧http://www.ibm.com/developerworks/cn/rational/tip-uml/index4.html 如何绘制 UML 活动图(Activit...

weixin_30848775的博客 223

UML uml高级知识之用例图

uml高级知识之用例图 建模工具推荐使用 visio2010; include:选择菜单栏中的'UML'-》单击’构造型‘-》新建-》构造型那里输入include-》基类那里选择归纳,点击确定 将UML用例下的“扩展”拖到绘图页上-》双击或右键属性-》构造下拉列表中选择include-》确定 虚线:visio 2010,操作方式:1.选中要改变的连接线;2. 在上方工具栏选择“线...

dazhexuan0219的博客 234
上一篇: UML建模风格之状态图
下一篇: TreeView控件心得====转载
SmartJavaer
博客等级 码龄21年 13粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值