类似于项目组群聊的功能,每次讨论的记录可以记录和保存。讨论板可以贴图,可以发文件,最好还有主题内容的置顶功能。由于在Web上面实现,为了避免频繁刷屏的问题需要引入Ajax等相关技术来实现。
讨论板是敏捷开发中,特别是虚拟团队最常用的功能,也是很多企业内部IM及时通讯软件说具备的常用功能。
2.任务管理
需要对项目管理软件所具备的任务管理,进度计划,资源平衡,活动依赖,成本管理等内容做较大的简化。敏捷开发中的活动是根据需求(用例),或故事场景驱动的,有此驱动的需求,设计开发等活动自然会汇聚到根据功能点的工作包中。而且根据用例或功能点的需求追踪也可以根据系统自动来进行建立。
敏捷中强调迭代,迭代是重要的里程碑点,因此在任务管理中最好能够体现各个功能点在每个迭代周期中的进展和分布。
团队中各资源的使用情况最好是以图形化的方式直观的显示出来,在任务下达过程中任务本身的工作量和要求完成的时间点是终于的属性,系统应该根据资源的最大可使用情况自动来建立一些必要的约束。
任务的完成和反馈越简单越好。对于项目成员而言可以方便的查询到自己的待处理任务,而项目Leader可以通过总体任务进展图(类似停车场图)很方便的跟踪到任务的实际完成情况和进度。对于各种异常点系统应该给出很醒目的提示。
3.文档管理
敏捷开发仍然有过程,因此在各个阶段仍然存在相关的交付物和文档。因此对于文档的创建,更新,检索是必须的功能。文档的权限管理可以弱化,但对于文档本身根据工程域或支持域进行的分类管理则很重要。
对于各种模板,规范,最佳实践等内容应该作为项目知识库最重要的内容。各种知识的收集,分类,整理,抽取就显得更加重要。知识库是项目的重要核心资产,在项目进展过程中不断发展和完善。
但任务和知识关联的时候,知识库价值进一步发挥。比如但我们创建一个编码任务的时候,任务本身有很方面的连接可以看到相关的最佳实践和编码规范的内容。
4.问题管理和风险管理
敏捷项目中这两点显得根据重要。风险在分析后可以转化为减轻风险的任务,如果不做处理风险往往又暴露为问题。风险,问题,任务之间紧密联系。每个人都需要随时关注自己的问题和风险,
十大风险跟踪单,问题跟踪解决单最好能够在系统中体现。敏捷项目管理的过程应该就是一个不断消除项目风险的过程。
5.变更管理和缺陷管理
需求变更和缺陷跟踪处理是软件开发中必须要关注的内容。这两种类型的故障要区分开来对待,有助于后期数据的分析和改进。对于缺陷跟踪管理没有太负责的流程,重点是查询的自定义和相关数据的报表展示。
很多开源的Bug跟踪工具提供了很多很好的借鉴,但考虑产品化的时候,对于需求变更或缺陷对象应该可以方便灵活的定义流程和各个扩展的数据项。
6.基于Web的多方语音协同
这点难度很大,但确实对于虚拟开发团队重要的沟通方式和工具。一些IM软件提供有多方通话的功能,但基于Web的相关应用并不是多。WebEx好像有类似的应用,但没有实际试用过。