刑侦界中的敏捷团队:FBI
世界足坛的敏捷团队:巴西国家队
战争中的敏捷团队:中国人民解放军
团队的所有“猪”类人员坐在一起工作,这是一体化团队的 基础,因为这样做缩小了彼此时空间的距离,但是能缩小
心灵与行动间的距离,这才是一体化团队的根本。
我们面临的问题:
开发、测试、资料与系统组在同一办公区域办公,运作过程中
却是按各自的计划、利益来机械合作。
根因:大家潜意识存在“扔出去不管”的心态,只能做到“关心自己”,
无法“关心他人”。这样的团队失去共同的目标,无法形成一
个有机整体,必将面临最终的失败。
作战单元:
开发、测试和资料人员共同结对,共同对系统中各个功能特性负责。
演示:
项目的阶段性演示,团队成员一同分享成果,增强个人责任感
尽量减少过程性文档:
团队成员间不要过分依赖文档驱动,提倡依赖实时的面对面交流沟通。
敏捷的核心之一:迭代。它其实就是一个戴明环(PDCA)。
迭代划分是团队内部的事情,与外界无关。迭代也不是
简单分步骤,它有自己的划分方式。
UserStory是一种需求分析的轻量级技术。主要是让开发者、
测试人员明白客户需求的价值。最终可以达到开发知道如何
开发,测试如何测试,有明确的验收里程碑以及用例就行了。
划分US的基本方法:
按照US所支持的数据边界来分割大型US。
按照US中进行的操作对其进行分割。
去除横切面的考虑来划分。
隔离功能性与非功能性需求到不同的US中。
按优先级分割大型US中的小US。
不要将大型US分割成任务,需要一颗曳光弹穿过这个US。
避免在适当规模中增加相关变化,除非这些变化有同样的优先级。
<<敏捷软件开发 原则、模式与实践>> Robert C.Martin; 清华大学出版社
<<Scrum敏捷项目管理>> Ken Schwaber; 清华大学出版社
<<敏捷估计与规划>> Mike Cohn; 清华大学出版社
<<硝烟中的Scrum与XP>> HenricKniberg; InfoQ
<<重构 – 改善既有代码的设计>> Martin Flower; 中国电力出版社
<<User Stories Applied>> Mike Cohn
<<修改代码的艺术>> Michael C. Feathers; 人民邮电出版社
<<测试驱动开发 中文版>> Kent Beck;中国电力出版社