- 浏览: 586057 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
小网客:
噱头 没实际意义
【互动出版网】11.11购物狂欢节重磅大促,免费领万千优惠券 -
tongchuang123:
这是要出书了吗:o
微信控 控微信 -
韶华无限:
这也可以出本书……
玩转微信(彩印) -
zhukewen_java:
无语了。。。哪天出本《玩转QQ》?
玩转微信(彩印) -
yaying:
我只见过MySQL Cookbook中文版
jQuery Cookbook中文版
《实例化需求:团队如何交付正确的软件》
基本信息
原书名:Specification by Example:How Successful Teams Deliver the Right Software
作者: (塞尔)阿契克(Adzic,G.) [作译者介绍]
译者: 张昌贵 张博超 石永超
丛书名: 图灵程序设计丛书
出版社:人民邮电出版社
ISBN:9787115290267
上架时间:2012-8-28
出版日期:2012 年9月
开本:16开
页码:1
版次:1-1
所属分类: 计算机
更多关于 》》》《实例化需求:团队如何交付正确的软件》
目录
《实例化需求 : 团队如何交付正确的软件》
第一部分 开始
第1章 主要优点 2
1.1 更有效地实施变更 4
1.2 更高的产品质量 5
1.3 减少返工 8
1.4 更好的协作 10
1.5 铭记 11
第2章 关键过程模式 12
2.1 从目标中获取范围 13
2.2 协作制定需求说明 14
2.3 举例说明 14
2.4 提炼需求说明 15
2.5 自动化验证时不修改需求说明 15
2.6 频繁验证 17
2.7 演化出一个文档系统 17
2.8 实际的例子 18
2.8.1 商业目标 18
2.8.2 范围 18
2.8.3 关键实例 18
2.8.4 带实例的需求说明 19
2.8.5 可执行的需求说明 20
2.8.6 活文档 20
2.9 铭记 20
第3章 活文档 21
3.1 为什么我们需要权威的文档 22
3.2 测试可以是好文档 22
3.3 根据可执行的需求说明创建文档 23
3.4 以文档为中心的模型所具有的好处 25
3.5 铭记 25
第4章 开始改变 26
4.1 如何开始改变过程 27
4.1.1 把实施实例化需求说明当作更广阔的过程变更的一部分 27
4.1.2 专注于提高质量 27
4.1.3 从功能测试自动化开始 28
4.1.4 引入一个可执行需求说明的工具 29
4.1.5 使用测试驱动开发作为踏脚石 30
4.2 如何开始改变团队文化 31
4.2.1 避免使用“敏捷”术语 31
4.2.2 确保你得到管理层的支持 32
4.2.3 把实例化需求说明当作是比执行验收测试更好的方式来推销 33
4.2.4 不要让测试自动化成为最终的目标 34
4.2.5 不要太关注工具 34
4.2.6 在迁移过程中,遗留脚本也要有人维护 35
4.2.7 跟踪哪些人在运行(以及没有运行)测试自动检查程序 35
4.3 团队如何在流程和迭代中集成协作 36
4.3.1 ultimate软件公司的global
talent management团队 37
4.3.2 bnp paribas银行的sierra团队 38
4.3.3 天空网络服务部门 39
4.4 处理签收和可追溯性 40
4.4.1 在版本控制系统中保存可执行需求说明 41
4.4.2 通过导出的活文档来签收 41
4.4.3 签收的是范围,而非需求说明 41
4.4.4 在“精简的用例”上签收 42
4.4.5 引入用例实现 42
4.5 警告信号 43
4.5.1 注意频繁改动的测试 43
4.5.2 当心回退 44
4.5.3 注意组织级的失调 44
4.5.4 当心“以防万一”的代码 44
4.5.5 注意霰弹式修改 45
4.6 铭记 45
第二部分 关键过程模式
第5章 从目标中获取范围 48
5.1 构建正确的范围 49
5.1.1 理解“为什么”和“谁” 50
5.1.2 理解价值从何而来 51
5.1.3 了解商业用户预期的输出是什么 52
5.1.4 让开发人员提供用户故事的“我想要”部分 53
5.2 在没有高层次控制权的情况下,协作确定范围 53
5.2.1 询问“为什么这些东西有用?” 54
5.2.2 询问替代方案 54
5.2.3 不要只顾最低层次的需求 55
5.2.4 确保团队交付完整的功能 55
5.3 更多信息 56
5.4 铭记 56
第6章 通过协作制定需求说明 58
6.1 为什么需要协作制定需求说明 58
6.2 最热门的协作模型 59
6.2.1 尝试大型的全体工作坊 59
6.2.2 尝试小型工作坊(“神勇三剑客”) 61
6.2.3 结对编写 62
6.2.4 让开发人员在迭代开始前频繁地审查测试 63
6.2.5 尝试非正式交谈 64
6.3 准备协作 65
6.3.1 举办介绍会 65
6.3.2 邀请项目干系人 66
6.3.3 进行具体的准备工作并事先审查 67
6.3.4 让团队成员尽早审查故事 68
6.3.5 只准备初始的实例 69
6.3.6 不要让过度的准备阻碍了讨论 69
6.4 选择协作模型 70
6.5 铭记 71
第7章 举例说明 72
7.1 举例说明:一个例子 74
7.2 例子必须精确到位 75
7.2.1 不要在例子中出现“是/否”的回答 75
7.2.2 避免使用等价抽象类 75
7.3 例子必须完整 76
7.3.1 用数据作试验 76
7.3.2 使用替代方法来检验功能 76
7.4 例子必须要真实 77
7.4.1 避免虚构自己的数据 77
7.4.2 直接从客户那里获得基本的例子 78
7.5 例子应该易于理解 79
7.5.1 避免探讨所有可能的组合 80
7.5.2 寻找隐含的概念 80
7.6 描述非功能性需求 81
7.6.1 取得精确的性能需求 82
7.6.2 为ui使用低保真度的原型 82
7.6.3 试用quper模型 83
7.6.4 讨论时使用核查清单 84
7.6.5 建立一个参照的例子 84
7.7 铭记 85
第8章 提炼需求说明 86
8.1 一个好的需求说明的例子 87
8.1.1 免费送货服务 87
8.1.2 实例 87
8.2 一个劣质需求说明的例子 88
8.3 提炼需求说明时要关心什么 90
8.3.1 实例要精确可测 90
8.3.2 脚本不是需求说明 90
8.3.3 不要使用流程式的描述 91
8.3.4 需求说明应关注业务功能,而不是软件设计 92
8.3.5 避免编写与代码紧密耦合的需求说明 92
8.3.6 不要在需求说明中引入技术难点的临时解决方案 93
8.3.7 不要陷入到用户界面的细节里 93
8.3.8 需求说明应该是不言自明的 94
8.3.9 使用叙述性标题并使用短篇幅阐释目标 94
8.3.10 展示给别人看并保持沉默 94
8.3.11 不要过度定义实例 95
8.3.12 从简单的例子入手,然后逐步展开 96
8.3.13 需求说明要专注 97
8.3.14 在需求说明中使用“given-when-then”语言 97
8.3.15 不要在需求说明中明确建立
所有依赖 98
8.3.16 在自动化层中应用缺省值 99
8.3.17 不要总是依赖缺省值 99
8.3.18 需求说明应使用领域语言 100
8.4 提炼实战 100
8.5 铭记 102
第9章 自动化验证而不修改需求说明 103
9.1 非得自动化吗 104
9.2 从自动化开始 105
9.2.1 为了学习工具,先尝试一个简单的项目 105
9.2.2 事先计划自动化 106
9.2.3 不要拖延自动化工作或将其委派他人 107
9.2.4 避免根据原有的手动测试脚本进行自动化 107
9.2.5 通过用户界面测试赢得信任 108
9.3 管理自动化层 109
9.3.1 别把自动化代码当作二等公民 109
9.3.2 在自动化层里描述验证过程 110
9.3.3 不要在测试自动化层里复制业务逻辑 111
9.3.4 沿着系统边界自动化 112
9.3.5 不要通过用户界面检查业务逻辑 113
9.3.6 在应用程序的表皮之下进行自动化 113
9.4 对用户界面进行自动化 115
9.4.1 以更高层次的抽象来详细说明用户界面的功能 115
9.4.2 ui需求说明只检查ui功能 117
9.4.3 避免录制的ui测试 117
9.4.4 在数据库中建立环境 118
9.5 管理测试数据 119
9.5.1 避免使用预填充数据 119
9.5.2 尝试使用预填充的引用数据 120
9.5.3 从数据库获取原型 120
9.6 铭记 121
第10章 频繁验证 122
10.1 提高稳定性 123
10.1.1 找出最烦人的问题并将其解决掉,然后不停地重复 123
10.1.2 用ci测试历史找到不稳定的测试 124
10.1.3 搭建专用的持续验证环境 125
10.1.4 使用全自动部署 125
10.1.5 为外部系统创建较简单的测试替代品 125
10.1.6 选择性地隔离外部系统 126
10.1.7 尝试多级验证 127
10.1.8 在事务中执行测试 127
10.1.9 对引用数据做快速检查 128
10.1.10 等待事件,而非等待固定时长 128
10.1.11 将异步处理变成可选 129
10.1.12 不要用可执行需求说明做端到端的验证 129
10.2 获得更快的反馈 130
10.2.1 引入业务时间 130
10.2.2 将较长的测试分割成较小的模块 131
10.2.3 避免使用内存数据库做测试 131
10.2.4 把快速的和缓慢的测试分开 132
10.2.5 保持夜间测试的稳定 132
10.2.6 为当前迭代创建一个测试包 133
10.2.7 并行运行测试 133
10.2.8 禁用风险较低的测试 134
10.3 管理失败的测试 135
10.3.1 创建已知失败了的回归测试包 135
10.3.2 自动检查那些被禁用的测试 136
10.4 铭记 137
第11章 演化出文档系统 138
11.1 活文档必须易于理解 138
11.1.1 不要创建冗长拖沓的需求说明 138
11.1.2 不要使用许多小的需求说明来描述单个功能 139
11.1.3 寻找更高层次的概念 139
11.1.4 避免在测试中使用技术上的自动化概念 139
11.2 活文档必须前后一致 140
11.2.1 演化出一种语言 141
11.2.2 将需求说明语言拟人化 142
11.2.3 协作定义语言 143
11.2.4 将构建模块文档化 143
11.3 活文档必须组织得井井有条,便于访问 144
11.3.1 按用户故事组织当前的工作 144
11.3.2 按功能区域组织用户故事 145
11.3.3 按用户界面的导航路径组织 146
11.3.4 按业务流程来组织 146
11.3.5 引用可执行需求说明时请使用标签而不要使用url 147
11.4 聆听活文档 147
11.5 铭记 148
第三部分 案例研究
第12章 uswitch 152
12.1 开始改变流程 152
12.2 优化流程 154
12.3 当前的流程 156
12.4 结果 157
12.5 重要的经验教训 157
第13章 rainstor 159
13.1 改变流程 159
13.2 当前流程 161
13.3 重要的经验教训 162
第14章 爱荷华州助学贷款公司 163
14.1 改变流程 163
14.2 优化流程 164
14.3 活文档作为竞争优势 166
14.4 重要的经验教训 167
第15章 sabre airline solutions 168
15.1 改变流程 168
15.2 改善协作 169
15.3 结果 171
15.4 重要的经验教训 171
第16章 eplan services 172
16.1 改变流程 172
16.2 活文档 174
16.3 当前的流程 175
16.4 重要的经验教训 176
第17章 songkick 177
17.1 改变流程 177
17.2 当前的流程 179
17.3 重要的经验教训 180
第18章 思想总结 182
18.1 协作制定需求能在项目干系人与交付团队之间建立信任 182
18.2 协作需要事先准备 183
18.3 协作的方式多种多样 183
18.4 将最终目的视为业务流程文档,不失为一种有用的模型 184
18.5 活文档带来的长期价值 184
附录a 资源 186
本图书信息来源于:中国互动出版网
发表评论
-
【互动出版网】2013双12全场科技类图书6.5折封顶
2013-12-12 16:30 1147【互动出版网】2013双12全场科技类图书6.5折封顶 ... -
C#编程兵书
2013-08-28 17:43 1209《C#编程兵书》 基本信息 作者: 张志强 胡君 丛书 ... -
C++编程兵书
2013-08-28 17:24 1226《C++编程兵书》 基本 ... -
HTML+CSS网站开发兵书
2013-08-28 17:04 1410《HTML+CSS网站开发兵书 ... -
Java编程兵书
2013-08-27 17:57 1233《Java编程兵书》 基本 ... -
网络运维与管理2013超值精华本
2013-08-27 17:44 1357《网络运维与管理2013超值精华本》 基本信息 作者: ... -
HTML5游戏开发进阶指南
2013-08-27 17:26 1329《HTML5游戏开发进阶指 ... -
ASP.NET MVC 4高级编程(第4版)
2013-08-26 17:58 1099《ASP.NET MVC 4高级编程(第4版)》 基本信息 ... -
嗨翻C语言
2013-08-26 17:40 1181《嗨翻C语言》 基本信息 作者: (美)David Gr ... -
C++ Primer中文版(第5版)
2013-08-26 17:20 1146《C++ Primer中文版(第5版) 》 基本信息 作 ... -
云计算原理与实践
2013-08-20 17:02 580《云计算原理与实践》 基本信息 作者: 游小明 罗光春 ... -
微信公众平台搭建与开发揭秘
2013-08-20 16:53 997《微信公众平台搭建与开发揭秘》 基本信息 作者: 易伟 ... -
精通iOS开发(第5版)
2013-08-20 16:25 1045《精通iOS开发(第5版)》 基本信息 原书名:Begi ... -
企业门户(Portal)项目实施方略与开发指南
2013-08-20 16:12 973《企业门户(Portal)项目实施方略与开发指南》 基本信 ... -
Java开发手册
2013-08-20 15:56 947《Java开发手册》 基本信息 作者: 桂颖 谷涛 出 ... -
Unity3D手机游戏开发
2013-08-08 17:33 1136《Unity3D手机游戏开发》 基本信息 作者: 金玺曾 ... -
矛与盾:黑客攻防命令大曝光
2013-08-08 16:30 777《矛与盾:黑客攻防命令大曝光》 基本信息 作者: awk ... -
视觉繁美:信息可视化方法与案例解析
2013-08-08 16:10 934《视觉繁美:信息可视 ... -
精益设计: 设计团队如何改善用户体验
2013-08-08 15:55 773《精益设计: 设计团队如何改善用户体验》 基本信息 原书 ... -
云计算与OpenStack(虚拟机Nova篇)
2013-08-08 15:19 952《云计算与OpenStack(虚拟机Nova篇)》 基本信 ...
相关推荐
实例化需求 团队如何交付正确的软件.pdf
《实例化需求:团队如何交付正确的软件》是在世界各地调查了多个团队软件交付过程后的经验总结。书中介绍了这些团队如何在很短的周期内说明需求、开发软件,并交付正确的、无缺陷的产品;为团队在实施实例化需求说明...
在《实例化需求 - 如何交付正确的软件》PDF文档中,你可能会学习到以下关键概念: 1. **需求定义**:实例化需求首先从明确和细化需求开始,这通常涉及编写具体、清晰且无歧义的故事或场景,以便所有相关人员都能...
实例化需求-团队如何交付正确的软件(1).epub 手机上看 随时刷知识 推荐产品经理看,对于整理需求及整个团队管理很有帮助。
- **促进有效沟通**:实例化需求过程中的讨论有助于团队成员之间的有效沟通,特别是跨职能团队之间。 - **增强测试有效性**:实例化需求可以直接用于测试计划,帮助团队提前定义测试案例,确保测试覆盖全面。 - **...
《实例化需求》的概念和实践对提高软件开发的效率和质量具有重大意义,它强调了需求的可验证性、可读性和可维护性,使得开发团队能够更准确地理解和实现业务需求,从而构建出更符合用户期望的软件产品。
《软件工程需求说明书实例》是软件开发过程中至关重要的一环,它是整个项目的基础,定义了软件产品的功能、性能、用户界面以及系统约束等关键要素。需求说明书不仅为开发团队提供了清晰的指导,也是与客户沟通、确认...
它详细记录了用户对软件系统的期望,是开发团队理解并实现客户需求的关键文档。对于在校大学生,尤其是准备毕业论文的学生而言,掌握如何编写一份规范、全面的软件需求说明书至关重要。 一、软件需求说明书的基本...
"软件需求规格说明书(实例)" 软件需求规格说明书是软件开发过程中不可或缺的一部分,它详细描述了软件的功能和非功能性需求。以下是基于学校教材购销系统的软件需求规格说明书,用于明确系统的需求和规范。 1. ...
这份“软件需求分析说明书实例”旨在为开发者和项目团队提供一个模板,帮助他们理解如何编写规范、全面的需求文档,确保所有利益相关者对项目目标有共同的理解。 在需求分析中,我们需要明确以下几个关键要素: 1....
本资源包“软件工程 需求分析 实例”包含三份精心整理的需求分析书籍,旨在帮助开发者和项目管理人员深入理解并掌握需求分析的核心技巧。 首先,我们要了解需求分析的含义。需求分析是软件工程中一个关键阶段,它...
《软件需求_第三版》是微软出版的一部深入探讨软件工程领域的经典著作,它全面而细致地阐述了软件开发过程中的需求分析、管理和实现。这本书是软件开发人员、项目经理、业务分析师以及对软件工程感兴趣的读者不可或...
在软件开发过程中,需求文档和概要设计是两个至关重要的环节。需求文档是软件开发的起点,它清晰地定义了用户的需求,而概要设计则是根据需求文档将这些需求转化为可实现的系统架构和模块设计。以下是这两个概念的...
6. **需求建模**:用例图、序列图、状态图和活动图等UML工具可以帮助可视化需求。考试可能会要求绘制或解释这些模型的含义。 7. **需求验证**:确保需求正确无误的方法包括评审、原型演示和使用案例测试。考生应...
软件需求分析报告实例 ...软件需求分析报告实例是软件开发团队了解软件系统的需求和限制的重要工具。通过本报告,开发团队可以对软件系统的需求和限制进行了解和评估,从而确保软件产品的质量和可靠性。
需求规格说明书是软件开发过程中的重要文档,它详细定义了软件产品应具备的功能、性能、接口、限制等关键要素,为项目的开发团队提供明确的开发目标。本压缩包包含了一系列不同类型的系统的需求规格说明书实例,涵盖...
在软件开发过程中,一套完整的文档体系对于项目的成功至关重要。这些文档不仅帮助团队成员明确目标,协同工作,还能为项目的管理、评估和维护提供...通过学习这些实例,我们可以更好地理解和实践软件工程的标准化流程。
敏捷软件测试作为当前软件开发领域的一种热门方法论,强调的是在整个开发周期中持续进行软件测试,以确保产品能够在每个迭代中交付预期质量和满足用户需求。Lisa Crispin 和 Janet Gregory 是敏捷测试领域的权威专家...
《软件需求规格说明书(范例)》是一份详尽阐述软件开发项目——“成绩管理系统”的需求文档,旨在为开发团队和用户提供清晰明确的系统需求描述。文档由安博教育集团于2008年10月编撰,作者是吴子敬。 1. **修订...