需求用例分析之六:业务用例之科伯恩系

作者:张克强    作者微博:张克强-敏捷307

来自于科伯恩《编写有效用例》对业务用例的说明

在《使用 UML 进行业务建模:理解业务用例与系统用例的相似和不同之处》中分析科伯恩编写有效用比例如以下:

Cockburn 的 Writing Effective Use Cases 给业务和系统用例使用了同样的用例说明模版。

业务用例与系统用例说明使用这个模版的差别是设计范围,而不是模版。

Cockburn 想通过目标层次对用例进行分类。如表格1所看到的。


图1: Alistair Cockburn 对业务和系统用例的分类


高层概要


概要


用户目标


子功能


最低层

Cockburn 编写 Writing Effective Use Cases 的最初目标是系统用例。但他在业务用例上也花了非常多精力。

他利用目标层次来区分业务与系统用例。而不是使用不同的模版类型。

那么这些图标和目标层次又意味着什么呢?

这些图标本身代表着一个简单的系统,它是依据用例与“海平面”(用户的实际层次)的相对高低来确定的。系统用例的最佳点是用户目标,通过海平面图标来表明。有时候须要将复杂的系统用例分解成其他有子功能目标、通过鱼图标表明的用例。可是您应该尽量避免将海平面系统用例分解成蛤或者最低层系统用例。

或许您会推測到。概要或者蛤用例应该是业务用例。云或者高层概要也可能是业务用例。

Cockburn 的方法是将这些用例看作是一个光谱。从一个组织的最高层次业务目标。到为实现这些业务目标而运行的软件解决方式的需求具体资料。

这样的方法将系统用例看作是一个业务用例的分解。这个用例分解方法能够用来帮助您从这个业务模型驱动系统用例模型。

业务用例在编写有效用例的位置

编写有效用例的章节安排是一開始就直接讲用例,第一部分的标题用例体部分,没有提到业务用例。是到第二部分的第15章才提到业务过程建模和业务用例,第15章总共的篇幅6页。第2部分的标题是常常讨论的主题,第12章是第二部分的第1章,标题是什么时候才算完毕。第13章标题是扩展到多个用例;第14章标题是CRUD和參数化用例。

关于业务用例的两个坏消息

他在第15章最后说到:

业务用例与系统用例具有同样的特征,因此编写和评审用例的方法对两者都适用。在业务用例中说明的东西,也会在系统用例中说明。

这形成了系统用例和用户用例之间的合作。但这样带来了两个坏消息。

第一:编写者和读者常常把二者弄混,可能把系统行为放入业务用例中。也可能把业务操作归于系统用例。假设可以商议着去做将会有所帮助。但通常编写者和读者不会认识到这样做的重要性。使用系统用例的读者批评业务用例所处层次太高,但却没有认识到提供系统具体的行为细节不是业务用例应该做的;业务用例编写者偶尔把系统行为细节写入当中,结果导致业务主管对这类有具体细节行为的文档失去了兴趣。

第二:全然且正确的连接系统和用户用例不太值得。

通常,业务用例编写者应对业务过程到系统使用(通常没有描写叙述)进行描写叙述。而在描写叙述日常生活中客户怎样使用新系统之前,用例编写者已经花光时间、財力、精力以及热情。

而系统用例编写者有时为了保持一致,会在业务过程中加一两句。可是他们通常不愿意重写一个包括新系统功能的业务用例。这样就在系统用例和业务用例之间形成了空隙,即系统用例和业务用例之间的不一致。

尽管科伯恩在后面附了来自于FirePond公司使用业务用例的正面样例,但能够看出那是少数派。

时间: 2024-10-22 05:19:23

需求用例分析之六:业务用例之科伯恩系的相关文章

需求用例分析之业务规则

作者:张克强 作者微博:张克强-敏捷307 在雅各布森用例分析方法和科伯恩用例分析方法中其实都没有"业务规则"的属性,在科伯恩方法中有个相近的属性是约束条件.但是业界使用中常常会给用例加上这个属性,这是为什么呢?为什么两位大师没有加上,是大师们疏忽了?而为什么不少人加上了呢? 从时间和传播上很容易推断,业务规则的来源是传统的需求规格说明书.在传统的需求规格说明书中,整理提炼业务规则或称业务逻辑是其中核心的分析产物.受到传统需求规格说明书的深远影响,不少人觉得这样的业务规则是值得写的用例

苍狼敏捷需求用例分析方法简介并讲义下载

作者:张克强    作者微博:张克强-敏捷307 用例分析方法已经有不短的历史,发展出了多种用例分析方法.笔者花费了大量时间,对用例分析的各个方面进行实践和分析,得到如下系列文章: 需求用例分析之一:异常流 需求用例分析之二:级别设置需求用例分析之三:补充规约 需求用例分析之四:业务规则 需求用例分析之五:业务用例之Rational系 需求用例分析之六:业务用例之科伯恩系 需求用例分析之七:业务用例之小结 需求用例分析之八:用例颗粒度 在这些分析的基础上与及笔者的实践,总结整理得到"苍狼敏捷需求

需求用例分析之九:序列图

作者:张克强    作者微博:张克强-敏捷307 序列图,也称时序图.顺序图,英文名Sequence Diagram.在雅各布森用例分析方法中鼓励使用各类图形来表达,但恰恰没有明确提到序列图.而科伯恩用例分析方法以结构化/半结构化文本用例为中心,强调基于目标的文本格式,对UML各类图所提甚少. 在RUP和OOAD中,UML序列图的最基本定位是用于识别类与类之间的信息传递,是识别类的方法的最佳场合.它是在得到用例之后初步识别了类之后发挥巨大作用的.序列图是交互图(interaction diagr

需求用例分析之二:级别设置

在<编写有效用例>(阿莱斯特-科伯恩著,下面用科伯恩用例来指代)一书中,赋予了用例不同的级别,科伯恩形象的设定了例如以下级别:海平面.云朵.风筝.蛤等等. 科伯恩建议用例级别分为多个个目标层次:概要.用户目标.子功能,书写需求用例时,仅仅能选择其一,以下对其详细说明: 概要:包含多个用户目标,它有"显示相关目标的生命周期顺序"和"为低层用例提供一个文件夹表"的功能,概要用例通常须要运行几个小时.几天.几个星期.几个月.甚至几年. 用户目标:它是主运行者努

需求用例分析之级别设置

在<编写有效用例>(阿莱斯特-科伯恩著,以下用科伯恩用例来指代)一书中,赋予了用例不同的级别,科伯恩形象的设定了如下级别:海平面.云朵.风筝.蛤等等. 科伯恩建议用例级别分为多个个目标层次:概要.用户目标.子功能,书写需求用例时,只能选择其一,下面对其具体说明: 概要:包括多个用户目标,它有"显示相关目标的生命周期顺序"和"为低层用例提供一个目录表"的功能,概要用例通常需要执行几个小时.几天.几个星期.几个月.甚至几年. 用户目标:它是主执行者努力使工作

关于用例需要多少文档以及业务用例等等

整理者:张克强 缘起 @jackyrong 发了如下一条微博 敏捷中的文档该写多少合适,一直是永恒的话题,每个用例故事的设计简要卡片,用例图,序列图,类图,数据字典,简要原型图,算法补充说明,应该是必要的吧,大家可以继续探讨 @袁斌_AgileDo @竹十一 @敏捷广州联盟 @火球_Fireball | 转发(58)| 收藏| 评论(35) 5月16日 张克强-敏捷307:这些都写了,那不就是RUP了? (5月18日 17:37) jackyrong:回复@张克强-敏捷307:那倒不一定,看的是

关于用例须要多少文档以及业务用例等等

整理者:张克强 缘起 @jackyrong 发了例如以下一条微博 敏捷中的文档该写多少合适,一直是永恒的话题,每一个用例故事的设计简要卡片,用例图,序列图,类图,数据字典,简要原型图,算法补充说明,应该是必要的吧,大家能够继续探讨 @袁斌_AgileDo @竹十一 @敏捷广州联盟 @火球_Fireball | 转发(58)| 收藏| 评论(35) 5月16日 张克强-敏捷307:这些都写了,那不就是RUP了? (5月18日 17:37) jackyrong:回复@张克强-敏捷307:那倒不一定,

需求用例分析之补充规约

补充规约在RUP中是记录那些在用例模型的用例中不容易体现出来的系统需求.这些需求包括: § 法律法规方面的需求和应用标准. § 要建立的系统质量属性,包括可用性需求.可靠性需求.性能需求和可支持性需求. § 其他需求,诸如操作系统和操作环境.兼容性需求以及设计约束. 补充规约是对用例模型的重要补充.补充规约和用例模型应该一起获取对系统的一整套需求. 通过以上文字可以知道,补充规约是全局性的要求,与上述c文中的"全局规则"极为接近.而中文中"补充规约"的说法让不少人以

需求用例分析之异常流

问题的引出 备选流,又称备选事件流,英文是Alternative Flow.在RUP和UML中,备选流的解释如下:备选事件流包括与正常行为相关的可选或异常特征的行为,同时也包括正常行为的各种变形.您可以将备选事件流看作是基本事件流的"绕行道",有些备选事件流将返回到基本事件流,而有些将结束此用例的执行. 分析RUP对于备选流的定义,可以看到备选流可以分成两类: 1,不同做法但仍然达成用例目标: 2,异常情况,无法达成用例目标. 在实际用例分析中,由于备选流可能存在两种情况,导致备选流存