软件项目管理 概述
软件项目管理的对象是软件工程项目。
软件项目管理的根本目的是为了让软件项目尤其是大型项目的整个软件生命周期(从分析、设计、编码到测试、维护全过程)都能在管理者的控制之下,以预定成本按期,按质的完成软件交付用户使用。
项目
项目就是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的努力;是以一套独特而相互联系的任务为前提,有效地利用资源,在一定时间内满足一系列特定目标的多项相关工作的总称。
项目的特征
- 目标性
- 相关性
- 临时性
- 独特性
- 资源约束性
- 不确定性
项目 与 日常运作
上课、每天的卫生保洁 等属于日常运作。
搬家、野餐活动、集体婚礼、开发操作系统 等属于属于项目。
- [ √ ] A.项目是以目标为导向的,而日常运作是通过效率和有效性体现的。
- [ √ ] B.项目是通过项目经理及其团队工作完成的,而日常运作是职能式的线性管理。
- [ × ] C.项目需要有专业知识的人来完成,而日常运作的完成无需特定的专业知识。
- [ √ ] D.项目是一次性的,而日常运作是重复进行的。
软件项目
软件项目除了具备项目的基本特征外,还具有以下特点:
- 软件是一种逻辑实体,而不是物理实体。
- 软件的生产与硬件不同,开发过程中没有明显的制造过程,为不存在重复生产过程。
- 无磨损、老化现象,但软件存在退化问题。
- 受限于计算机系统。
- 至今仍为手工开发模式。
- 软件本身是复杂的。
- 成本高昂。
- 受限于社会因素。
项目管理
实施项目管理会提高项目的效益。
项目管理是指把各种系统、方法和人员结合在一起,在规定的时间、预算和质量目标范围内完成项目的各项工作。
软件项目管理
根本目的:让软件项目尤其是大型项目的生命周期能在管理者的控制下,以预期成本按期、按质地完成软件项目。
特殊性:
- 软件是纯知识产品,其开发进度和质量很难估计和度量。
- 项目周期长,复杂度高,变数多。
- 软件需求要满足一群人的期望。
项目管理 与 过程管理
软件过程不能简单地理解为软件产品的开发流程。
软件开发关注的是过程,而不是结果。
也就是说,产品的质量依赖于企业的过程能力,不依赖于个人能力。
软件项目管理的四个阶段
项目初始:确定项目的目标范围,包括项目立项、招投标、合同协议的确定,明确软件要完成的主要功能,以及项目开发的阶段周期等。
项目计划:包括对软件项目的估算、风险分析、进度规划、人员配备、产品质量规划等,需要完成《项目计划书》
项目执行控制:包括测量实际的进程,并与计划进程相比较,同时发现计划的不当之处。
项目结束:适当地做出项目终止的决策,确认项目实施的各项成果,进行项目的交接和清算等,同时对项目进行最后的评审,并对项目的文档、资源等进行总结。
关于PMP
Project management Professional,项目管理专业人员
PMI组织在1984年提出项目管理认证计划(PMP),是目前全球认可程度最高的项目管理专业认证
是项目管理资格最重要的标志之一。
关于PMBOK 2012
Project management Body Of Knowledg,项目管理知识体系
关系:各个过程组通过其结果进行连接,一个过程组的结果或输出是另一个过程组的输入。其中,计划过程组、执行过程组、控制过程组是核心管理过程组。
启动过程组:主要是确定一个项目或一个阶段可以开始了,并要求着手实行;定义和授权项目或者项目的某个阶段。
计划过程组:为完成项目所要达到的商业要求而进行的实际可行的工作计划的设计、维护,确保实现项目的既定商业目标。计划基准是后面跟踪和监控的基础。
执行过程组:根据前面制定的基准计划,协调人力和其他资源,去执行项目管理计划或相关子计划。
控制过程组:通过监控和检测过程确保项目达到目标,必要时采取一些修正措施。集成变更控制是一个重要的过程。
收尾过程组:取得项目或阶段的正式认可并且有序地结束该项目或阶段。向客户提交相关产品,发布相关结束报告,并且更新组织过程资产并释放资源。