惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
Google DeepMind News
Google DeepMind News
V
V2EX
B
Blog RSS Feed
有赞技术团队
有赞技术团队
博客园 - Franky
美团技术团队
月光博客
月光博客
酷 壳 – CoolShell
酷 壳 – CoolShell
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
腾讯CDC
云风的 BLOG
云风的 BLOG
L
LangChain Blog
GbyAI
GbyAI
The Cloudflare Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
C
Check Point Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Stack Overflow Blog
Stack Overflow Blog
博客园 - 【当耐特】
The Register - Security
The Register - Security
大猫的无限游戏
大猫的无限游戏
D
Docker
Vercel News
Vercel News
Blog — PlanetScale
Blog — PlanetScale
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 司徒正美
人人都是产品经理
人人都是产品经理
雷峰网
雷峰网
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
N
Netflix TechBlog - Medium
博客园_首页
A
About on SuperTechFans
J
Java Code Geeks
量子位
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
MongoDB | Blog
MongoDB | Blog
Recent Announcements
Recent Announcements
G
Google Developers Blog
小众软件
小众软件
博客园 - 叶小钗
WordPress大学
WordPress大学
博客园 - 聂微东
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Martin Fowler
Martin Fowler
S
SegmentFault 最新的问题
F
Full Disclosure
Jina AI
Jina AI
H
Help Net Security

博客园 - spgoal

使用LINQ TO SQL实现单表数据在DataGridView批编辑 用户中心 - 博客园 用户中心 - 博客园 信息化是全院的信息化,不是信息科信息化 性能很重要 HIS的复杂性 WINFORM的DataGridView使用点滴 CodeDomHelper类初稿 《编写有效用例》读书笔记(11)——用例格式 《编写有效用例》读书笔记(9)——技术和数据的变化 《编写有效用例》读书笔记(8)——扩展 《编写有效用例》读书笔记(7)——场景和步骤 《编写有效用例》读书笔记(6)——前置条件、触发事件和保证 《编写有效用例》读书笔记(5)——三个命名的目标层次 《编写有效用例》读书笔记(4)——项目相关人员和执行者 《编写有效用例》读书笔记(3)——范围 《编写有效用例》读书笔记(2)——用例是规范行为的契约 《编写有效用例》读书笔记(1)——引言 微软Tech.Ed2005广州站第三天见闻
《编写有效用例》读书笔记(10)——连接用例
spgoal · 2005-10-19 · via 博客园 - spgoal

1、子用例:一个执行步骤可以是一个简单的步骤或者是另外一个用例的名称。

一般的,步骤如果用下划线或楷体字区别开写的话,这个步骤就是子用例,UML用例图的表示就是用<<include>>来表示

2、扩展用例

两个用例之间需要另外一种连接,这种连接很像扩展机制。其具有以下特征:

(1)       有一个主活动,主活动可以被中断

(2)       主活动可以被多种方式中断,并且不能控制中断

可以考虑使用与描述场景扩展相同的机制,但这里是创建新用例。新用例称为扩展用例(extension use case)它除了是独立的用例之外,其他都与场景扩展相同。扩展用例从一个条件开始,在基用例中该条件可能满足的地方被引用。应将所有的条件都放到模板的触发事件部分中。请看以下例子

用例:编辑文档

主执行者:用户

范围Wapp

级别:用户目标

触发事件:用户打开应用程序

前置条件:无

主成功场景

1.  用户打开文档并编辑

2.  用户输入或修改文本

……

……用户保存文档并退出应用程序

用例:检查拼写

主执行者:用户

范围Wapp

级别:子功能!

前置条件:一个文档被打开

触发事件当文档被打开并且用户选择了打开拼写检查程序的情况下,在编辑文档中的任何时候。

主成功场景

……等等……

注意“检查拼写”用例的斜体部分,在基用例(编辑文档用例)中并没有提及检查拼写用例,但在检查拼写用例中通过编写触发事件来引出基用例,基用例没有依赖扩展用例,对于以后的扩展具有很好的灵活性,但相反,扩展用例依赖基用例,基用例改变的话有可能影响扩展用例。

3、在必须的情况下才创建扩展用例,第一种情况是当有很多的用户可能使用的异步服务或中断服务的时候,并且这些服务不应该影响基用例。另一种情况是为一个已经锁定的需求文档编写附加文档的时候。在基用例没有锁定的情况下,扩展是脆弱。

这一章其实是说明了UML用例关系中的includeextend关系。