编写有效用例

编写有效用例
书籍作者:
(美)AlistairCockburn(阿利斯泰尔.科伯恩)
书籍出版:
电子工业出版社
书籍页数:
书籍ISBN:
9787121166723
书籍人气:
6057
推荐指数:
★★★★

编写有效用例
Jolt大奖素有“软件业之奥斯卡”的美称,本丛书精选自Jolt历届获奖图书,以植根于开发实践中的独到工程思想与杰出方法论为主要甄选方向。本书作者Alistair Cockburn,凭借自己在面向对象领域的丰富经验,并参考其他专家的建议,扩展了典型的用例处理方法,为软件开发人员编写用例提供了一种“基本、具体和实用的”指南。本书完整地叙述了有关用例的初、中、高级概念,并提供了大量的、正反两方面的用例编写实例,是一本概念清晰、结构完整、内容丰富的专业图书。
  本书荣获2001年Jolt世界图书大奖,适用于不同知识层次的软件工作、研究人员和用例编写人员。
第1章 引言
1.1 用例是什么(梗概)
用例1  通过网络购买股票
用例2  汽车交通事故索赔
用例3  对运到的包装箱进行登记
1.2 你的用例不能作为我的用例
用例4  买东西(非正式版本)
用例5  买东西(完整正式版本)
◆ Steve Adolph:在新领域中“”发掘“”需求
1.3 需求和用例
图1-1 ““轮轴和轮辐”“需求模型
用例作为项目连接结构
1.4 用例的增值点
1.5 合理安排你的精力
1.6 先用使用叙述做热身
1.7 练习
第1部分 用例体部分
第2章 用例是规范行为的契约
2.1 具有目标的执行者之间的交互
执行者具有目标
图2-1 一个具有目标的执行者请求另一个执行者履行职责
目标可能失败
交互是复杂的
用例聚集场景
图2-2 条形裤:成功和失败场景
图2-3 在条形裤中展示子目标的小条形裤
2.2 涉及利益的项目相关人员之间的契约
图2-4 SuD为主执行者提供服务,同时维护幕后项目
相关人员的利益
2.3 图形模型
图2-5 执行者和项目相关人员
图2-6 行为
图2-7 用例是职责的激发者
图2-8 作为组合的交互
第3章 范围
表3-1 ““内/外”“列表
3.1 功能范围
执行者·目标列表
表3-2 ““执行者·目标”“列表
用例简述
表3-3 用例简述
3.2 设计范围
◆ 一个简短而真实的故事
图3-1 设计范围的大小是任意的
用图标来突出设计范围
设计范围示例
(1)企业系统范围
用例6  增加新服务(企业)
用例7  增加新服务(Acura)
(2)一个应用程序对应多台计算机
用例8  输入和修改请求(联合系统)
用例9  添加新服务(给Acura添加)
用例10  通知新服务请求(BSSO中)
用例11  更新服务请求(BSSO中)
用例12  通知更新后的服务请求(Acura中)
(3)基本用例
图3-2 Acura-BSSO的用例图
图3-3 Acura-BSSO的一组用例图
用例13  资源的串行存取
用例14  实施资源锁转换政策
用例15  实施存取兼容性政策
用例16  实施存取选择政策
用例17  令服务客户等待获得资源存取权限
3.3 最外层用例
3.4 使用范围确定的工作产品
3.5 练习
第4章 项目相关人员和执行者
4.1 项目相关人员
◆ 一个简短而真实的故事
4.2 主执行者
主执行者为什么有时是不重要的(而有时又是重要的)
在开始用例编写时
在用例编写和设计过程中
设计之后,准备配置系统时
执行者与角色
统一建模语言(UML)图和执行者/角色规格说明
刻画主执行者的特点
表4-1 ““执行者概况”“表示例
4.3 辅助执行者
4.4 被讨论系统
4.5 内部执行者和白盒用例
4.6 练习
第5章 三个命名的目标层次
图5-1 用例层次
5.1 用户目标(蓝色,海平面 )
◆ 一个简短而真实的故事
蓝色的两个层次
5.2 概要层次(白色,云朵 /风筝 )
用例18  操作保险单+
重温最外层用例的内容
5.3 子功能(靛青色/黑色,海平面以下 蛤 )
目标层次总结
5.4 利用图标来突出目标层次
5.5 找出正确的目标层次
找出用户目标
提升和降低目标层次
图5-2 通过问”“为什么”“的问题来转换层次
5.6 一个较长的编写实例:““处理索赔”“的多层次示范
用例19  处理索赔(业务)
用例20  评估工作补偿索赔
用例21  处理索赔(系统)+
用例22  损失注册
用例23  查找……(问题陈述)
5.7 练习
第6章 前置条件、触发事件和保证
6.1 前置条件
6.2 最小保证
6.3 成功保证
6.4 触发事件
6.5 练习
第7章 场景和步骤
7.1 主成功场景
常见的环境结构
场景主体
7.2 执行步骤
准则
准则1:使用简单的语法
准则2:明确地写出”“谁控制球”“
准则3:从系统外部的角度来编写用例
准则4:显示过程向前推移
准则5:显示执行者的意图,而不是动作
准则6:包含”“合理”“的活动集
图7-1 一个事务由4个部分组成
准则7:““确认”“而不是”“检查是否”“
准则8:可选择地提及时间限制
准则9:习惯用语:““用户让系统A与系统B交互”“
准则10:习惯用语:““循环执行步骤x到y,直到条件满足”“
编号或不编号
7.3 练习
第8章 扩展
8.1 扩展的基础
8.2 扩展条件
集中讨论所有可能的失败和可选择的过程
准则11:用”“检测到什么”“的方式来编写条件
◆ 一个真实的、令人不快的小故事
关于集中讨论列表
扩展列表的合理化
逐层合并失败
8.3 扩展处理
准则12:条件处理的缩排方式
失败的嵌套
从扩展中创建新用例
8.4 练习
第9章 技术和数据的变化
图9-1 在UML中使用具体化方式表现技术变化
第10章 连接用例
10.1 子用例
10.2 扩展用例
图10-1 扩展用例的UML图
什么时候使用扩展用例
10.3 练习
扩展用例
第11章 用例格式
11.1 供选择的格式
完整正式的用例格式
用例24  完整正式的用例模板<名字>
非正式用例格式
用例25  实际登录(非正式版本)
单列表格格式
表11-1 用例的单列表格格式
双列表格格式
表11-2 双列表格
RUP格式
用例26  登记课程
条件语句格式
Occam格式
图形方式
UML用例图
11.2 影响用例书写格式的因素
矛盾的因素:业务环境、社会作用、不同文化
理解层次
项目相关人员的要求
经验与格式
覆盖面
一致性
复杂度
冲突
完整性
目标与任务--完成什么与怎样完成
资源
其他因素
11.3 5种项目类型的标准
需求了解阶段用例
用例27  需求了解用例模板--Oble a New Biscum
业务过程建模用例
用例28  业务过程用例模板--Symp a Carstromming
确定系统需求用例规模
用例29  确定系统需求用例规模模板--
Burble the Tramling
短期、高强度的项目用例
用例30  高强度项目用例模板--Kree a Ranfath
详细功能需求用例
用例31  用例名字--Nathorize a Permion
11.4 总结
11.5 练习
第2部分 经常讨论的主题
第12章 什么时候才算完成
关于”“正在完成”“
第13章 扩展到多个用例
简单描述每个用例(低精度表示)
创建用例簇
第14章 CRUD和参数化用例
14.1 CRUD用例
用例32  管理报表用例
用例33  存储报表用例
14.2 参数化用例
第15章 业务过程建模
15.1 建模与设计
从核心业务
图15-1 核心业务黑盒
图15-2 白盒用例中的新业务设计
从业务过程到技术
图15-3 白盒用例中的新业务设计(又一次)
图15-4 带黑盒系统用例的新业务过程
从技术到业务过程
15.2 业务用例和系统用例
◆ Rusty Walters:业务建模和系统需求
第16章 遗漏的需求
16.1 数据需求的精度
16.2 从用例到其他需求的交叉链接
图16.1 翻新图1.1,”“轮轴和轮辐”“需求模型
第17章 用例在整个过程中的作用
17.1 用例在项目组织中的作用
通过用例标题进行组织
表17-1 规划表示例
◆ 一个真实的小故事
跨版本处理用例
交付完整场景
◆ 一个短而真实的集成实例
17.2 从用例到任务或特征列表
用例34: 获得折扣
表17-2 ““获得折扣”“任务列表
17.3 从用例到设计
◆ 一个真实的小故事
面向对象(OO)设计者特别注意
17.4 用例到用户界面(UI)设计
17.5 用例到测试用例
用例35: 订购商品,产生发货单(测试例子)
表17-3 主要成功场景测试(好信用)
表17-4 主要成功场景测试(坏信用)
17.6 实际用例编写
分工合作过程
第1阶段:制定粗略的系统功能图
第2阶段:制定详细用例视图
用例需要的平均时间
从大型团队中收集用例
◆ Andy Kraus:从庞大、不同层次的团队收集用例
第18章 用例概述和极端编程
第19章 错误改正
19.1 没有系统
19.2 没有主执行者
19.3 过多的用户接口细节
19.4 过低的目标层次
19.5 目标和内容不符
19.6 用户接口描述过多的改进实例
用例36: 寻找一种解决方案--修改前
用例37: 寻找可能的解决方案--修改后
第3部分 对忙于编写用例的人的提示
第20章 对每个用例的提示
提示1:每个用例都是一篇散文
提示2:使用例易于阅读
提示3:仅用一种句型
提示4:““包含”“子用例
提示5:谁控制着球
提示6:正确地得到目标层
图20-1 问”“为什么”“以提高层次
提示7:不考虑GUI
提示8:两个结局
提示9:项目相关人员需要的保证
提示10:前置条件
提示11:对用例进行通过/失败测试
表20-1 对用例进行通过/失败测试
第21章 对用例集的提示
提示12:一个不断展开的故事
提示13:业务范围和系统范围
提示14:核心价值和变化
核心价值
适当的改变
不合适的改变
提示15:用例集中的质量问题
第22章 处理用例的提示
提示16:仅仅有3章(第4章在哪儿呢?)
提示17:首先向广度上努力
图22-1 工作随着细化而增加
提示18:12步秘诀
提示19:认识到错误的开销
提示20:喜欢蓝色牛仔裤
提示21:处理失败情况
提示22:前期和后期的工作标题
提示23:执行者扮演角色
提示24:大的图画恶作剧
图22-2 ““妈妈,我想回家。”“
图22-3 椭圆图形式的语境图
表22-1 语境图的执行者·目标列表
提示25:大型工具的争论
提示26:使用标题和简介的项目计划
附录A UML中的用例
A.1 椭圆和”“小人”“图符
A.2 UML中的包含关系
图A-1 包含关系的画法
准则13:将高层目标画得高一点
A.3 UML的扩展关系
图A-2 扩展关系的画法
准则14:将扩展用例画得低一些
准则15:用不同的箭头形状
正确地使用扩展
图A-3 扩展一个基用例的三个中断用例
扩展点
A.4 UML的泛化关系
正确地使用泛化关系
图A-4 泛化关系的画法。
准则16:将泛化目标画得高一点
泛化的危害
图A-5 泛化的危害--终止大交易
图A-6 改正后的终止大交易
A.5 从属用例与子用例
A.6 用例图的画法
准则17:语境图中的用户目标
准则18:将支持执行者放在右边
A.7 代之以编写基于文本的用例
附录 B 部分习题的答案
第3章
练习3.1
练习3.2
第4章
练习4.2
练习4.3
第5章
练习5.1
练习5.2
第6章
练习6.1
练习6.4
第7章
练习7.1
练习7.2
练习7.4
用例38  使用订单处理系统
第8章
练习8.1
练习8.5
用例39  在网上买股票
第11章
练习11.1
用例40  执行清洁火花塞服务
附录 C 术语表
主要术语
用例类型(Use Case Type)
图形
附录D 参考读物
本书参考了以下书籍
本书参考了以下文章
有用的在线资源
索引
  • 下载地址

数据库书籍

网络通讯书籍

系统管理书籍