小团队的敏捷开发-第三章
大多数项目存在7种循环:
1.项目周期(一个筹款期单位,持续时间不限)
2.交付周期(一个交付的时间单位,持续时间不限)
3.迭代周期(一个评估、开发以及庆祝的时间单位,一个星期到3个月不等)
4.工作周
5.集成周期(一个开发、集成以及系统测试的时间单位,30分钟到3天不等)
6.工作日
7.开发部曲(对一段代码进行开发以及测试的过程,几分钟到几个小时不等)
项目周期
在水晶项目管理体系中一个项目周期包括三个部分:
a.租用活动
它主要包括4个步骤
1.组建团队核心
2.执行360度全方位考察(这也许导致项目的取消)
3.建成以及调整方法体系及工作惯例
4.制定初期项目计划
b.一连两个或更多的交付周期
交付周期由3~4个部分组成:
1.再校准发布计划
2.一次或多次迭代,每一次迭代都能生成已集成的、已测试的编码
3.对实用户进行交付
4.一场完成例行仪式,包括对生产的产品及采用的工作惯例进行反思
c.一场完成例行仪式:项目综合终结报告
交付完成后之后,团队还要对两个问题进行反思:
1.系统配置的如何?在交付周期的早期应当采取哪些不同措施以减少配置以及培训所带来的麻烦?
2.用户觉得系统如何?系统的优点和缺点是什么?最重要的是,团队能通过与原先需求的比较而获知用户的真正需求吗?
迭代周期
一次迭代包括3个部分:
1.计划迭代
2.日常活动与集成周期活动
3.完成仪式(反思研讨会以及庆祝)
集成周期
根据团队的工作惯例不同,集成周期可从半个小时到数天不等。一些团队利用单个机器连续运行建立与测试脚本,而另外一些
团队则每搁几个开发部曲便进行一次集成,以便保持各个活动之间密切的关联性。还有一些团队一天进行一次或者每周进行三
次系统集成。尽管集成的间隔时间越短越好,但是水晶项目管理系统并没有明文规定具体的间隔时间长度。
开发部曲
Ward Cunningham 将“部曲”这个词定义为敏捷开发中编程人员的基本工作单位。在一个开发部曲中,团队成员选择一些小型的设计任务,完成这些任务的编程工作,然后将其注册到配置管理系统中去。这也需要花上15分钟到一些天的时间,主要取决于编程人员以及项目的工作惯例。