这位市场经理不熟,但我还是拿出了令他信服的项目组迭代速度。以此证明,在6天的时间里,我们仍然不可能完成剩下的所有的需求。经过进一步的沟通,最终我们确定了最紧迫的两个需求:“网上查号及选号”和“网上开机”。只要这两个需求能够在6天内被交付,那么,此业务就能够顺利地在9月1日上线。虽然结果可能并不那么吸引人,但这样仍然完成了市场经理及其上司的心理底线。所有剩下的需求都将作为较远期的迭代目标,项目组仅仅给与较模糊的考虑和认识即可。最后,我们把这两个需求分解为可度量的功能点,并又一次去掉了几个琐碎的,难以实现的,并且对交付成果没有太大意义的功能点。除此之外,我们还商定了验收测试用例,并以文字形式保存下来。
在接下来的6天里,我们按照以往的速度平稳推进,并成功地在9月1日完成这次迭代,该无线运营商也抢在了其他运营商前面占领了市场先机。项目组备受鼓舞。
除了敏捷需求的获取之外,我想再说明一下对于敏捷需求的管理。我们在网上营业厅项目中,采用了轻量级的项目管理工具Redmine作为需求管理工具。虽然Redmine不是专业的需求管理工具,但经过我们的实践,把它用在敏捷需求的管理上特别合适。
Redmine以“问题”作为管理的基本单元,在敏捷需求管理的意义上,就是一个可度量的“功能点”。功能点具有发起人、紧急程度、状态、指派给、相关问题、开始日期、结束日期、预计工时、跟踪者和描述等属性。通过把从需求中分解出来的功能点记录下来,就可以对所有的需求问题进行结构化的管理。这样一来,开发人员面对的就不是以往那种文档化的功能点,而是可追溯的,易跟踪的以及结构化的功能点。这对于软件开发的组织和管理有着举足轻重的意义。
通过Redmine对于需求的管理,我们还获得了很多额外的好处。其中最重要的一项就是,开发人员每天对于所参与的功能点的“耗时登记”。这些数据提供了项目组的可以量化的迭代速度。这个可量化的速度对于以后的需求获取和功能点的分解有着很强的说服力。
通过以上的论述,说明了敏捷需求管理对于网上营业厅项目的重要意义。虽然项目的进展十分顺利,但需求过程当中仍然存在一些缺陷值得思考。其中一个就是对于需求的自动化验收脚本的使用。由于项目的复杂性和特殊性,自动化验收仍然面临着众多障碍。这其中包括对于验证码图片的识别、页面文字的正确性、统一计费环境的本地模拟等等。因此,网上营业厅项目的验收测试在很大程度上仍然依赖于人工。好在无线运营商拥有庞大的客服体系,使得此问题并没有阻碍项目的进度。另外有一点遗憾就是在Redmine中,无法对功能点打包。也就是说,它不能够以“用户卡片”或“用例”来组织功能点。不过Redmine是一个开源的工具,我们将在以后的项目当中,结合自己的实践,尝试对其进行改进,使其更加适合敏捷需求的管理。
项目经理胜任力免费测评PMQ上线啦!快来测测你排多少名吧~
http://www.leadge.com/pmqhd/index.html