软件项目管理
软件开发的工作可分为两部分:
- 软件生产(Software Creation)
- 软件项目管理(Software Project Management)
软件项目
项目是定义明确的任务,是为实现一个目标的所有步骤的集合。
一个项目有如下特点:
- 项目有明确的目标。
- 项目有开始时间和结束时间。
- 项目完成的标志是目标达成。
- 项目需要资源,包括人才和资金。
软件项目是软件开发的完整过程,经历了整个软件开发生命周期。
软件项目在特定的时间段内实现预期的软件产品。
软件项目管理
在软件开发过程中,我们需要权衡三个因素:
- 时间:尽量高效完成项目
- 成本:将成本控制在客户的预算范围内
- 质量:提供高品质、可靠的产品
这三个因素项目制约,软件项目管理负责处理这三个因素的关系。
软件项目经理
软件项目经理(Product Manager)是软件项目的负责人。
项目经理的职责包括:
- 管理开发生命周期的每个阶段。
- 保证所有团队成员之间的顺畅沟通。
- 界定软件的开发范围,确保开发必要的功能。
- 评估工作量
- 评估项目所需时间
- 估算项目成本,包括硬件、人力等费用。
项目管理工具
有一些可用的工具可以帮助进行有效的项目管理。
1. 甘特图
用于说明项目进度和完成项目所需的时间。
gantt
title 任务甘特图
dateFormat DD
axisFormat %d
设计 :a, 03, 4d
编码 :b, 05, 3d
测试 :c, after b, 3d
2. 资源直方图
表示项目阶段随时间推移所需资源数量的条形图或者图表。
month 1 | month 2 | month 3 | |
---|---|---|---|
Designer | 4 | 4 | 2 |
Developer | 0 | 4 | 3 |
Tester | 0 | 0 | 1 |
Total | 4 | 8 | 6 |