软件项目管理中的4P
在日常的软件开发中,很多人可能认为只要技术实力够了,不需要任何的软件项目管理。但殊不知的是,
软件项目管理
对于整个软件项目起着至关重要的作用,甚至有可能关乎到软件项目的生死存亡。一项调查显示,
70%的项目失败是由于管理不善引起的
,而并不是因为技术实力不够的原因。
那在软件项目管理当中,重要的4个因素又是什么呢?
在下面的这篇文章当中,将讲解软件项目管理中的4个重要因素4P,
people
、
product
、
process
、
project
。
一、项目管理的重要性和定义
1、重要性(两个阶段)
(1)20世纪70年代中期
①70%的项目失败是由于
管理不善
引起的,而并不是因为技术实力不够;
②
管理是影响软件研发项目
全局
的因素,而技术只影响
局部
的因素。
(2)20世纪90年代中期
美国软件工程实施现状的调查:
①
10%的项目能够在预定的费用和进度下交付;
②
软件项目管理成为软件项目开发中最重要的
核心问题
之一。
2、软件项目管理的定义
(1)定义
软件项目管理是为了使软件项目能够顺利完成,而对
成本
、
人员
、
进度
、
质量
、
风险
等进行分析和管理的活动。
(2)对象
软件工程项目
,它所涉及的范围覆盖了整个软件工程过程。
(3)何时(即什么时候做项目管理)
这种管理在技术工作开始之前就应
开始
,在软件从概念到实现的过程中
继续进行
,当软件工程过程最后结束时才
终止
。
二、管理四要素4P
1、管理的四要素(4P)
-
人员People
—— 成功项目的重要因素;
-
产品Product
—— 要开发的软件;
-
过程Process
—— 软件工程的框架活动,包含了任务、里程碑、工作产品以及质量保证点;
-
项目Project
—— 开发软件所需要的所有工作
2、软件项目中影响最终结果的要素
-
规模
-
提交的期限
-
预算和代价
-
应用领域
-
运用的技术
-
系统约束
-
用户需求
-
可提供的资源
3、项目管理关心的问题
-
产品的质量
-
风险的识别和管理
-
度量
-
代价估算
-
项目进度
-
和客户交流
-
项目成员
-
其他资源
-
项目监控
PS: 以下将对4P的内容进行详细分析。
三、项目参与者类型(people)
项目参与者类型一般包括以下几类:
-
高级管理者
:负责定义业务问题;
-
项目(技术)管理者
:必须计划、激励、组织和控制软件开发人员;
-
开发人员
:负责开发一个产品或应用所需的专门技术;
-
客户
:负责说明待开发软件相关需求的人以及其他风险承担者;
-
最终用户
:一旦软件发布成为产品,最终用户是直接与软件进行交互的人
总结:
①高级管理者,即
定义业务问题
的人; ②项目管理者,即
管理软件开发
的人; ③开发人员,即
应用技术开发软件
的人; ④客户,即
提出软件需求,并承担一定风险
的人; ⑤最终用户,即
与软件交互
的人。
四、项目小组结构(people)
1、项目的三种一般小组组织形式
(1)民主分散式
(Democratic Decentralized, DD)
(2)控制分散式
(Controlled Decentralized, CD)
(3)控制集中式
(Controlled Centralized, CC)
2、关于小组结构的说明
(1)DD(民主分散式)
:没有固定的负责人,适合
难度比较高、交付期限很长及生存期较长
的项目,最适合于解决
模块化程度比较低
的问题,因为需要通信;
通俗来说
:没有负责人,只有水平通信,成员之间需要广泛的两两交流。
(2)CD(控制分散式)
:有一个
固定的负责人
,若有子负责人,子负责人和总负责人的通信是
垂直
的,而个人间的通信是
水平
的,适合
交付期限较长、比较简单
的项目;
通俗来说
:有固定负责人,成员之间需要交流,成员与负责人之间也需要交流;若有子负责人,成员跟子负责交流,子负责人跟总负责交流。
(3)CC(控制集中式)
:负责人和小组成员之间的通信是
垂直
的,适合解决
交付期限比较严格的、简单的、模块化程度高
的项目
通俗来说
:有固定负责人,成员之间不沟通,只跟上级沟通。
注
:CD和CC两种结构都需要有一个固定的负责人,而DD不用;且会比DD产生更少的缺陷。
3、项目小组人员间的通信路径
从上图中可以看出,项目小组人数越多,通信路径越多。
通信路径计算公式为
:
Cn2=n(n−1)2,n表示水平通信成员间的人数C_n^2=\frac{n(n-1)}{2} ,n表示水平通信成员间的人数Cn2=2n(n−1),n表示水平通信成员间的人数
4、小组结构的选择需考虑的因素
对于一个小组来说,选择一个合适的结构需考虑以下因素:
-
待解决软件项目的
困难程度
;
-
产生的
程序规模
,以代码行或者功能点来衡量;
-
小组成员需要共同工作的时间(
小组生存期
);
-
项目所需要的
通信的程度
;
-
问题能够被
模块化的程度
;
-
待建造系统所要求的
质量和可靠性
;
-
交付日期
的严格程度
5、思考题
Q1
:某公司有21名员工,请问分别按DD、CD、CC方式来进行组织结构的划分,各自会产生多少条的通信路径?假设在CD和CC方式下被分成四组,画出大概的组织结构图。
A1
:
下面给出
无子负责人
和
有子负责人
的框架图:
写到这里,不妨再思考下,在CD和CC方式下被分成
五组
,有多少条通信路径?组织架构又是怎么样的呢? 评论区留下你的答案~