软件项目管理培训大纲
一、软件项目管理介绍
1、软件项目管理(Software Project Management)概述
软件项目管理是一种引导、协调和控制软件项目从规划、分析、设计和实施到实现特定可测量的软件的过程的组织方式。
它也被称为软件生命周期管理(Software Life Cycle Management)、软件开发管理(Software Development Management)和软件工程管理(Software Engineering Management)。
软件项目管理涉及如下5个关键概念:
(1)可测量目标:可测量目标是任何能够仔细评估的软件系统,以及如何创建、实施和维护软件系统。
(2)软件发展计划:软件发展计划是实现软件可测量目标的计划,包括需求分析、调研、测试、配置管理和可行性研究等过程。
(3)软件架构:软件架构是对软件技术框架的抽象,用于定义软件系统的功能、结构和交互性。
(4)软件设计:软件设计是基于软件架构,实现软件可测量目标的过程,其中包括确定功能、明确接口、记录组件和生成程序代码等子过程。
(5)软件项目管理:软件项目管理是引导、协调和控制软件项目从规划、分析、设计和实现特定可测量的软件到实施的过程的组织方式。
软件项目管理通常分为六个过程:
1、规划过程:规划过程的重点是构建一个完整的可测量的软件项目计划,以满足用户需求和预算资源,并定义软件项目的范围、时间表、成本预算、责任落实和危机点等内容,以便达到项目所需要的可测量目标。
2、分析过程:分析过程的重点是明确软件可测量目标,使用户需求明确软件的功能要求和明确其参数控制。
3、设计过程:设计过程的重点是为了满足对软件可测量目标的要求,使用软件设计方法,根据分析的结果确定软件的功能、结构和交互性,以及程序逻辑,编制相应的文档作为程序开发参考。
4、实现过程:实现过程的重点是根据软件设计文档和采用的技术生成软件源程序代码,并根据软件项目计划按期完成。
5、实施过程:实施过程的重点是将软件交付用户使用,包括设置测试环境、分析和修正错误、并在现场进行详细的测试,并确保软件可满足用户要求。
6、完善过程:完善过程的重点是按期处理客户反馈,并且根据后续发展更新软件产品。
软件项目管理需要一系列有效的工具帮助管理者实施。
1、项目规划工具:用来协助管理者制定工作日程、成本计划以及资源分配等内容,其中有PERT图、Gantt图、进度表等。
2、项目控制工具:用来监控项目的进度和成本,以及安排项目中的里程碑,其中有变更管理、质量管理、配置管理等。
3、项目风险分析工具:用来识别和评估与项目相关的威胁和机会,以帮助管理者制定风险应对方案,其中有SWOT分析、FMEA以及Risk Analysis等。
4、项目可行性分析工具:用来评估项目的经济可行性和技术可行性,其中有Net Present Value(NPV)、Payback period等。
1、分析技能
软件项目管理发挥分析的关键作用,管理者应有条理的思考和分析,特别是变更统计学、质量管理分析、影响分析和可行性分析等。
2、项目规划技能
项目规划是构建可测量目标的基础。
项目管理者必须具备制定进度安排、识别项目路径、定义系统端口、利润预算等技能。
3、沟通技能
沟通是软件项目管理中最基本的技能,可以通过建立双赢的互动沟通关系,通过技术平台解决问题和加强项目处理,以便有效地沟通,促进协作和创新。
4、领导能力
软件项目管理的另一个关键能力是领导能力。
项目管理者必须学会鼓励团队成员深入参与、有效利用资源和及时完成工作,以及学会在团队内部正确地运用紧急管理、激励管理和决策管理等。
5、冲突管理技巧
冲突管理是软件项目管理中十分重要的技能。
项目管理者必须熟悉多个利益相关者之间冲突的根源以及冲突处理的相关方法和技巧,以进行及时的预防和解决冲突。