APP下载

基于MBOK的软件项目适应性生命周期

2018-01-18蒋梦云

电子技术与软件工程 2017年21期
关键词:适应性生命周期排序

摘 要PMBOK中論述“适应性生命周期,目的在于应对大量变更,获取干系人的持续参与”。本文从价值驱动交付入手,说明软件的优先级排序和项目三角形,并介绍了计划扑克估算。在给出软件开发方法模型后,进一步说明用户故事和增量这个可交付成果。

【关键词】软件项目 生命周期

1 适应性生命周期概述

1.1 软件价值驱动交付

适应性软件生命周期适合在早期难以定义顾客需求的情况。特别是互联网项目,往往客户在刚开始也不清楚他们究竟想做什么。所以,需要引导客户根据价值的理念对产品功能的优先级进行排序,优先做价值高的特性,在PDCA循环中调整,尽早交付可工作的软件。

P(Plan)计划,方针和目标的确定;

D(Do)执行,设计具体的方法和计划;

C(Check)检查,执行计划的结果;

A(Adjust)调整,成功的肯定,失败的教训总结。

1.2 软件价值优先级排序

早期交付的价值,在于提前曝光风险。对项目来说,风险等于反价值。越早交付越能提高项目成功的概率。有利于增强客户的信心,使尽早的参与反馈。对于价值的排序,采用MoScoW技术:

M-must ,必须有的需求和功能,没有这些产品不能正常工作;

S-should,应该有的需求和功能,有重要的商业价值;

C-could,可能有的,可以增加产品的商业价值;

W-wont,希望有的,但不是必须的商业价值。

1.3 软件项目管理三角形

适应性软件项目的另一方面是产品范围、时间、成本之间的倒三角关系。对于瀑布模型,产品范围是固定的,时间和成本则会随着项目的进行不断调整。但在适应性软件项目中,每个迭代的时间(2~6周)和成本是固定的,因为在迭代周期内项目人员的数量和时间固定,整个产品范围需要受固定时间和成本约束,如图1所示。

1.4 软件项目实施估算

适应性软件项目,团队用故事点、用例、实施来确定项目待完成的特性。采用计划扑克的形式,首先估算出完成每个项目特性所需要的故事点。在项目初期,允许估算故事点出现偏差,再通过一次到两次的迭代,确定团队迭代速度,所以,将很快掌握每个迭代周期中的故事点数,积累的经验能准确预测实现一组特性的时间。测量出项目的开发速度,预测最终的成本和完成日期。

2 适应性软件项目生命周期开发模型

2.1 模型结构图

模型如图2所示,主要内容包括产品功能列表和迭代任务集。产品特性集常被称为产品待办事项,由产品负责人和客户沟通,采用用户故事形式整理.例如:作为一名<角色>,我想<功能>,这样就可实现<商业价值>,并根据优先级排序。产品待办事项可以添加、删除、也会随着客户的要求进行修正而重新设置优先级。迭代特性集也被称为迭代待办事项,是从产品待办事项中选定的最高优先级特性,是开发团队对于下一个产品增量需要完成的功能以及把这些功能“完成”交付所需工作的预测,是当前迭代中对可交付产物的承诺。

2.2 定义可交付成果

每个迭代周期都包含完整(设计-构造-测试-集成-演示)循环,其核心是持续集成和频繁交付。持续集成可以发生在每小时、每天、每周。每日站会是一个短时会议,包括:昨天工作内容,遇到的困难及今天计划,时间控制在15分钟以内。

迭代的可交付成果被称为增量,当增量被描述为“完成”时,每个人都必须确保理解“完成”的含义。为了避免歧义,团队在开始工作之前就要对“完成”做好定义,这将会保证产生正确的产品。

3 结论

价值驱动交付是适应性软件项目的核心,持续集成和频繁交付是重要手段。但在PMBOK中未对软件模型给出实例参考。我们需通过学习来指导实践,学以致用。

参考文献

[1]美国项目管理协会.项目管理知识体系指南(第5版)[M].

[2]刘芳,石泉.如何准备ACP考试[M].机械工业出版社.

作者简介

蒋梦云(1983-),男,硕士(PMP/ACP),现为中国(南京)软件谷高级工程师。研究方向为敏捷软件开发和智能设备。

作者单位

中国(南京)软件谷 江苏省南京市 210000endprint

猜你喜欢

适应性生命周期排序
谷子引种适应性鉴定与筛选初报
排序不等式
恐怖排序
从生命周期视角看并购保险
民用飞机全生命周期KPI的研究与应用
健全现代金融体系的适应性之“点论”
企业生命周期及其管理
大型飞机A380-800在既有跑道起降的适应性研究
固有免疫和适应性免疫与慢性丙肝的研究进展