敏捷软件开发

首先介绍 Scrum 中文网

Scrum 中文网(http://www.scrumcn.com)  成立于2008  年初,由资深敏捷顾问团队共同创办,是中国领先的敏捷及Scrum推广组织.

一 什么是敏捷

敏捷是一种价值观,通过一套简明扼要的《敏捷宣言》,传递给世界,宣告了敏捷开发运动的开始.

                                                                   敏捷宣言

                 我们通过身体力行和帮助他人来揭示更好的软件开发方式,经由这项工作,我们形成了如下价值观:

                                          个体与交互    重于       过程和工具

                                           可用的软件   重于       完备的文档

                                  客户协作      重于        合同谈判

                                   响应变化      重于        遵循计划

              在每组对比中,后者并非全无价值,但我们更看重前者

  敏捷原则

   1.  我们的最高目标是,通过尽早和持续地交付有价值的软件来满足客户.

   2.  欢迎对需求提出变更————即使是在项目开发后期。要善于利用需求变更,帮助客户获得竞争优势.

   3. 要不断交付可用的软件,周期从几周到几个月不等,且越短越好。

   4. 项目过程中,业务人员与开发人员必须在一起工作.

   5. 要善于激励项目人员,给他们以所需要的环境和支持,并相信他们能够完成任务.

   6. 无论是团队内还是团队间,最有效的沟通方法是面对面的交谈.

   7. 可用的软件是衡量进度的主要指标

   8.  敏捷过程提倡可持续的开发。项目方、开发人同和用户应该能够保持恒久稳定的进展速度.

   9.  对技术的精益求精以及对设计的不断完善将提升敏捷性.

   10. 要做到简洁,即尽最大可能减少不心要的工作。这是一门艺术.

   11.  最佳的架构、需求和设计出自于自组织的团队.

   12. 团队要定期反省如何能够做到更有效,并相应地调整团队的行为.

二  Scrum概要、框架及流程

Scrum 的特点

   *   团队自组织

    *    通过迭代增量交付可工作的软件

    *    项目进展对所有人公开可见

    *    交付过程中持续的检视和调整

    *    商业价值驱动,以客户为导向

    *    时刻关注质量,降低长期成本

Scrum  框架

 如图 scrum框架.jpg   所示

a  产品backlog 是一个产品或项目期望的、排列好优先级的功能列表,优先级由商业价值、风险、必要性决定。产品负责人负责产品backlog 的内容、可用性和优先级。

b  一个 Sprint 就是一个迭代,2-4周。是一个时间箱,以Sprint 计划会议作为开始,以Sprint 评审和回顾会议作为结束,结束时交付可以工作的软件.

C  Sprint 计划会议在Sprint  的第一天进行。Sprint  计划会议的产物是Sprint  backlog。 对于一个月为周期的Sprint  ,计划会议的时间箱限定为8 小时。对于较短的Sprint ,计划会议一般安排整个Sprint 周期的 5% 时间

d Sprintbacklog 定义了Sprint 的目标,明确了Sprint 过程中具体需要完成的任务

e  Sprint  评审会议 团队向产品负责人和客户展示Sprint 中完成的功能。产品负责人接受或拒绝团队交付的功能。时长一般2-4小时

    特点:  (1)  通过系统演示的方式展示,而不是PPT

              (2)  产品负责人必须参加,邀请客户和管理层参加

              (3)  团队所有成员参加

Sprint  回顾会议

    目的:  Sprint 周期中的人、 关系、过程和工具进行反省,确定调整策略

    特点:  2周的Sprint ,回顾会议控制在1- 1.5小时,一个月的Sprint 控制在2-3 小时

              回顾会议上做出的调整决定需要付诸行动

              每个Sprint 都要做

              团队和 ScrumMaster 参加

Scrum  三大支柱:  检查,可见性,适应

 三   深入学习Scrum

  对完成的定义

   Sprint 开始的时候,团队要和产品负责人,项目干系人在完成的定义上达成统一。对完成的定义取决于产品的质量目标,通常情况完成是指:这个功能至少拥有整滞的代码、经过了重构、进行了单元测试、通过构建、完成了验收测试,对于一些需要交付文档的产品,文档也要包括其中.

Scurm 会议

会议时间限制频率参会人
发布计划会按需要,在第一次Sprint 计划会议之前产品负责人,其他可能对产品发布计划有帮助的人,Scrum  Master 和团队可以选择参加
Sprint 计划会议第一部分4小时(4周的Sprint)每个Sprint 的开始产品负责人,Scrum Master 和团队,及其他任何能提供帮助的人
Sprint 计划会议第二部分4小时(4周的Sprint)每个Sprint 的开始产品负责人,Scrum Master 和团队,及其他任何能提供帮助的人
每日站会15分钟每天Scrum  Master 和团队,其他人可以以观察者身份参与
Sprint  评审会3-4 小时(包括准备时间)每个Sprint 的结束产品负责人,Scrum Master 和团队,对该发布有兴趣的其他干系人
回顾会议通常为1小时每个Sprint  的结束Scrum Master  和团队

目录   译者序   第2版前言   第1版前言   第0章不可知和不可说   0.1和解析体验相关的问题   0.1.1解析模式的冲突   0.1.2检测解析模式   0.1.3思考不准确的思想   0.2沟通的不可能性   0.2.1内部重新组织   0.2.2触及共享体验   0.2.3管理不完美的沟通   0.3聆听的三个层次   0.3.1三个层次和方法集   0.3.2三个层次与本书   0.3.3守-破-离   0.4那么,明天我做什么   第0A章不可知和不可说:演进   0A.1沟通和共享的体验   0A.2守-破-离   第1章创造和沟通的合作博弈   1.1软件和诗歌   1.2软件与博弈   1.2.1博弈的类型   1.2.2软件与攀岩   1.2.3创造和沟通的博弈   1.2.4软件与工程化   1.2.5软件与模型构建   1.3再论合作博弈   1.3.1程序员成为沟通专家   1.3.2更快地博弈   1.3.3标识物和道具   1.3.4减少回报   1.3.5对于首要目标的充分度   1.3.6对于积淀的充分度   1.3.7博弈中的博弈   1.3.8开放源码开发   1.4这对我意味着什么   第1A章创造和沟通的合作博弈:演进   1A.1沼泽游戏   1A.2合作中的竞争   1A.3其他领域的合作博弈   1A.4软件工程的重建   1A.4.1这一词汇从哪里来   1A.4.2我们从哪里走错了   1A.4.3重建软件工程   1A.4.4技艺   1A.4.5合作博弈   1A.4.6精益制造   1A.4.7重建后的软件工程   1A.4.8其他工程化中的协作   第2章个人   2.1人是古怪的   2.1.1寻找特征函数   2.1.2古怪性格的元素   2.1.3不可避免的多样性   2.1.4技术的作用   2.1.5相互冲突的共同点   2.2克服失败模式   2.2.1犯错误   2.2.2宁可失败也要选择保守   2.2.3创新而不研究   2.2.4不能始终如一的习惯动物   2.2.5使用纪律和容忍来应对   2.3以一些更好的方式工作   2.3.1具体化   2.3.2实物   2.3.3在某些东西的基础上进行修改   2.3.4观察和聆听   2.3.5支持专注和沟通   2.3.6工作分配要与个性相匹配   2.3.7天赋   2.3.8奖励要能保留乐趣   2.3.9组合奖励   2.3.10反馈   2.4利用成功模式   2.4.1善于四处寻找   2.4.2人们学习   2.4.3可塑性   2.4.4贡献和采取主动   2.4.5组合成功模式   2.4.6英雄也是普通人   2.5明天我该做什么   第2A章个人:演进   2A.1策略平衡   第3章团队的沟通与合作   3.1信息的对流   3.1.1延迟和机会损失成本   3.1.2尔格-秒   3.1.3渗透式沟通   3.1.4穿堂风   3.1.5信息辐射源   3.1.6热空气理论的应用   3.2跨越沟通的鸿沟   3.2.1沟通的形态   3.2.2去掉某些形态所产生的影响   3.2.3利用各种形态   3.2.4黏度与跨越空间的鸿沟   3.3团队就是集体   3.3.1友善和冲突   3.3.2工作时间的公民意识   3.3.3敌意的XP与友善的XP   3.3.4使用胜利来建立“团队”   3.3.5团队文化与亚文化   3.4团队就是生态系统   3.5我明天该做什么   第3A章团队:演进   3A.1一个修订后的办公室布局样本   第4章方法集   4.1一个交付软件的生态系统   4.2方法集中的概念   4.2.1结构术语   4.2.2范围   4.2.3概念术语   4.2.4发布一个方法集   4.3方法集的设计原则   4.3.1常见设计错误   4.3.2在方法集上成功的项目   4.3.3与作者的相关性   4.3.4七条原则   4.4细看XP   4.4.1XP简介   4.4.2剖析XP   4.4.3调整XP   4.5到底为什么使用方法集   4.5.1方法集解决什么问题   4.5.2如何评估一个方法集   4.6明天我应该做什么   第4A章方法集:演进   4A.1方法集与策略   4A.2组织级的方法集   4A.3过程就是循环   4A.4更简单地描述方法集   第5章敏捷与自适应   5.1轻但足够   5.1.1刚好足够   5.1.2对于编制文档的建议   5.2敏捷   5.2.1最佳击球点   5.2.2虚拟团队的麻烦   5.3变得自适应   5.3.1不厌其烦地进行反思   5.3.2方法集成长技术   5.3.3反思研讨会技术   5.4明天我该做什么   第5A章敏捷与自适应:演进   5A.1对于寓意的误解   5A.1.1迭代必须简短   5A.1.2敏捷团队必须驻扎在一起   5A.1.3敏捷团队不需要计划   5A.1.4架构已死;重构是你全部所需要的   5A.1.5我们不需要什么经理   5A.1.6敏捷开发在纪律上要求很低   5A.1.7敏捷只适合最优秀的开发人员   5A.1.8敏捷是既老又新的、失败的、没有尝试过的   5A.2敏捷方法集的演进   5A.2.1XP第2版   5A.2.2Scrum   5A.2.3实用主义和无名的   5A.2.4可预测、计划驱动和其他中心调整   5A.2.5约束理论   5A.2.6精益开发   5A.3新的方法集话题   5A.3.1敏捷项目管理   5A.3.2测试   5A.3.3用户体验设计   5A.3.4规划管控、Burn图和系统工程   5A.3.5用例和用户故事   5A.4经久不绝的问题   5A.4.1最佳击球点和下降   5A.4.2固定价格、固定范围的合同   5A.4.3敏捷、CMMI和ISO9001   5A.4.4何时停止建模   5A.4.5高科技/高接触的工具箱   5A.4.6敏捷的中心   5A.4.7你有多敏捷   5A.4.8引入敏捷   5A.5软件开发之外的敏捷   5A.5.1项目组合管理   5A.5.2客户关系   5A.5.3合同   5A.5.4将变更引入组织   5A.5.5程序员读哈佛商业周刊   5A.5.6建造房屋   5A.5.7机场建设   5A.5.8图书出版   5A.5.9会议组织和敏捷模型的限制   第6章Crystal方法集   6.1对Crystal家族塑形   6.1.1核心Crystal元素   6.2CrystalClear   6.2.1CrystalClear的简要描述   6.2.2CrystalClear的反思   6.3CrystalOrange   6.3.1CrystalOrange的简要描述   6.3.2CrystalOrange的反思   6.4CrystalOrangeWeb   6.4.1CrystalOrangeWeb的简要描述   6.4.2CrystalOrangeWeb的反思   6.5明天我该做什么   第6A章Crystal方法集:演进   6A.1Crystal基因代码   6A.1.1合作博弈的理念   6A.1.2方法集的重点   6A.1.3方法集设计原则   6A.1.4高度成功的项目的7个特性   6A.1.5技术与选择   6A.1.6样本方法集设计   6A.2CrystalClear   6A.3把CrystalClear扩展到Yellow   附录A敏捷软件开发宣言   附录Aa敏捷软件开发宣言和相互依赖声明   附录BNaur、Ehn、宫本武藏   附录BaNaur、Ehn、宫本武藏:演进   附录C后记   参考文献
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值