“大图景”一节以更通用的方式描述了主线模型。pmp.mypm.net
本节中,我将针对如何实施该模式提出一些典型的变种。training.mypm.net
“完成”的定义不必一定是“可发布的”。项目管理者联盟
先确定“完成”一词的任何定义,然后确保有一个分支可以容纳根据该定义已经“完成”的故事。不过还是要注意别遗漏重要的内容。如果集成测试没有包含在“完成”中,那什么时候进行集成测试呢?service.mypm.net
主干不必是主线项目管理培训
这个模式需要一条主线才能进行下去,不过不必是主干(虽然在大多数情况下,使用主干是很自然的选择)。www.mypm.net
团队不一定必须有自己的分支项目管理者联盟文章
当然可以有多个团队共享同一分支,甚至直接在主线上展开工作。只要保证遵循分支的方针即可。项目管理者联盟
通常,团队希望有自己的分支,以避免未完成的故事在多个团队之间造成干扰。项目经理圈子
不必每次都创建一个全新的发布分支项目管理论坛
可以使用同样的发布分支,而不是在每个sprint结束后都创建新分支。那个分支可以称为“最新生产系统”或其他类似的名字。如果在生产系统中总是保持只有一个版本,这当然是很好的模型。项目管理者联盟
不必在每个sprint结束后都进行发布项目管理者联盟
可以在每个故事完成后进行发布。或者每三个sprint完成后发布一次。确定你自己的步伐。项目经理圈子
不必针对每个故事都运行回归测试项目管理者联盟
如果在你的环境中,回归测试或集成确实很难实际操作,那么可以在sprint接近尾声时进行。这样就可以针对一批故事进行测试和集成的工作。你自己要承担相关风险。如果回归测试和集成属于“完成”的定义,这可能意味着你在sprint末尾时可能会遇到问题,导致没有任何故事完成的风险。项目管理者联盟
FAQbbs.mypm.net
持续集成(CI)在这个模式中如何使用?项目管理者联盟
CI服务器应该针对哪个分支运行?这要根据具体情况,不过下面的叙述是一个好的起点。blog.mypm.net
假定主干的方针是“完成而且可发布”,而每个工作分支的方针是“通过单元测试”:项目管理者联盟
对每个工作分支来说,CI服务器自动并持续地检查构建和运行所有单元测试的状况。项目管理者联盟
如果有任何失败,就给出一个红色警告。让机器冒烟……service.mypm.net
对每个工作分支来说,CI服务器自动并有规律地(如果不能持续地)运行集成测试和回归测试。项目经理圈子
如果有任何失败,就给出一个分离的警告。因为这不是当前分支的方针。bbs.mypm.net
当有人考虑从工作分支向主干发布代码时,要触发该手工测试,以检查故事是否“完成”。项目管理者联盟
对主干来说,CI服务器自动并持续地运行集成测试和回归测试。项目管理者联盟
|