一般项目中的角色如下:
- 客 户 负责说清楚他们的业务需求是什么需要什么样的能力。
- 分析人员 主要负责与客户交互、沟通和了解详尽需求。
- 项目经理 主要负责持续的项目团队的跟踪并关注关键的交付产物。
- 开发人员 主要负责设计、实现和单元测试。
- 项目经理 主要负责持续的项目团队的跟踪并关注关键的交付产物。
- 开发人员 主要负责设计、实现和单元测试。
- 测试人员 主要负责功能、性能和系统测试。
- 质量保证和方法专家 负责质量标准和最佳实践。
分析人员应要求开发人员、测试人员参与需求分析,以便更早的发现问题及找出更好的解决办法。由于很少有人同时在业务和技术领域具有深厚的知识背景,所以分析人员、开发人员、测试人员和客户应该一起工作提供需要的所有的信息,以确保开发人员可以创建“正确的”、“高效的”系统。并且,分析人员与最终客户的沟通交流应自始自终贯穿于整个开发过程及整个项目的生命周期。
开发人员在过去以寻找最佳的问题解决方法,应转为以高度重用代码、开源软件、WEB集成寻找一整套方案为主的技术人员,包括质量、测试,每个开发人员都应对自己的代码负责,而不是把此任务全交给测试人员。此才为优秀的开发人员。
测试人员的职责在使用迭代的开发方法时,仍然要负责确定系统的质量是否足以发布,但是他们确保完成高质量系统的方法却从根本上发生了变化。因项目一开始就产生可以被立即测试的可执行结果,所以每一个迭代都需要与开发人员一起进行测试。在项目的后期,测试人员作为质量专家,对整个开发团队提供专家意见。