【项目管理】软件项目资源管理PPT
合集下载
软件项目管理教材PPT89页

核心三计划
范围计划 进度计划 成本计划
--成本基准,进度基准
0
软件项目管理
第三讲 软件项目范围计划
1
本章要点
一、软件需求管理过程 二、任务分解定义 三、任务分解的类型 四、任务分解的过程 五、案例分析
2
1 软件项目需求管理
影响软件项目成败的因素
其它
过少的用户输入
13%
12% 50%
场景串联提供了用户界面以说明系统操作流程,它容易创 建和修改,能让用户知道系统的操作方式和流程。
根据与用户交互的方式,场景串联被分成三种模式:静态 的场景串联、动态的场景串联以及交互的场景串联。
选择提供哪种场景串联是根据系统的复杂性和需求缺陷的 风险来确定的。
23
如何记录需求------需求跟踪矩阵
Inadequate communications for system integration 8
系统集成阶段 , 交流与沟通不充分
9
Insufficient experience as team 团队缺乏经验
10 Shortage of application domain experts
缺乏应用领域专家
4
1 软件项目需求管理
软件开发的目标——按时按预算开发出满足用户真实需要的软件。 需求—— 一个软件项目的开始阶段。在软件工程中,需求分析阶 段是 包括客户、用户、业务或需求分析员、开发人员、测试人员、用 户文档编写者、项目管理者和客户管理者在内的所有的风险承担者都 需要参与的阶段。
5
1 软件项目需求管理
结构化分析方法的优点与局限性。
28
需求规格
需求分析工作完成的一个基本标志是形成 了一份完整的、规范的需求规格说明书
范围计划 进度计划 成本计划
--成本基准,进度基准
0
软件项目管理
第三讲 软件项目范围计划
1
本章要点
一、软件需求管理过程 二、任务分解定义 三、任务分解的类型 四、任务分解的过程 五、案例分析
2
1 软件项目需求管理
影响软件项目成败的因素
其它
过少的用户输入
13%
12% 50%
场景串联提供了用户界面以说明系统操作流程,它容易创 建和修改,能让用户知道系统的操作方式和流程。
根据与用户交互的方式,场景串联被分成三种模式:静态 的场景串联、动态的场景串联以及交互的场景串联。
选择提供哪种场景串联是根据系统的复杂性和需求缺陷的 风险来确定的。
23
如何记录需求------需求跟踪矩阵
Inadequate communications for system integration 8
系统集成阶段 , 交流与沟通不充分
9
Insufficient experience as team 团队缺乏经验
10 Shortage of application domain experts
缺乏应用领域专家
4
1 软件项目需求管理
软件开发的目标——按时按预算开发出满足用户真实需要的软件。 需求—— 一个软件项目的开始阶段。在软件工程中,需求分析阶 段是 包括客户、用户、业务或需求分析员、开发人员、测试人员、用 户文档编写者、项目管理者和客户管理者在内的所有的风险承担者都 需要参与的阶段。
5
1 软件项目需求管理
结构化分析方法的优点与局限性。
28
需求规格
需求分析工作完成的一个基本标志是形成 了一份完整的、规范的需求规格说明书
软件项目管理(PPT41页).ppt

1000000 150000
75000 3000 28000 1256000 44000 1000 43000 13000 30000
毛利
毛利(Gross Margin)
毛利=销售收入-销售产品的“直接成本”
经营利润(Operating Profit)
固定资产的折旧。会计师将设备、工具、厂房和其它固定资产的成本除以各 自的使用年限,以估计出公司在创造利润过程中使用这些资产的成本。。
其输出就是:确定出能够充分保证项目实施所需要的各种
资源清单和计划安排
组织和项目的特征将影响资源计划
成本估算
成本估算就是编制一个为项目各活动所必须资源成本的近
似估算
成本估算和工具
类比估算法/Analogous estimates也叫自上而下估算法
/top-down estimates
使用以前相似的项目实际成本作为目前项目成本估算的根据 是一种专家判断法
产(Assets)、公司欠他人的债务(Liabilities)和所有 者权益投资。资产负债表显示了某一特定日期上述内容之 间的平衡关系,也是公司在某一特定时点所拥有资产的总 结。资产负债表是所有会计记录的基础。
资产负债表
资产负债表包含3大部分的内容,资产,负债和所有者权益,它们在
资产负债表中的一般分布如下:
软件项目管理
Cost Management
Version 2.0
成本管理的基础知识
任何公司或任何项目的最终目的几乎都是为了某种商业利
益,但又该如何去衡量我们在项目中各种资源的投入,又 该如何评价这些投入是否获取了相应的收益呢?这就是项 目成本管理的目的。
大多数技术背景出身的项目人员对于这方面的理解都还比
75000 3000 28000 1256000 44000 1000 43000 13000 30000
毛利
毛利(Gross Margin)
毛利=销售收入-销售产品的“直接成本”
经营利润(Operating Profit)
固定资产的折旧。会计师将设备、工具、厂房和其它固定资产的成本除以各 自的使用年限,以估计出公司在创造利润过程中使用这些资产的成本。。
其输出就是:确定出能够充分保证项目实施所需要的各种
资源清单和计划安排
组织和项目的特征将影响资源计划
成本估算
成本估算就是编制一个为项目各活动所必须资源成本的近
似估算
成本估算和工具
类比估算法/Analogous estimates也叫自上而下估算法
/top-down estimates
使用以前相似的项目实际成本作为目前项目成本估算的根据 是一种专家判断法
产(Assets)、公司欠他人的债务(Liabilities)和所有 者权益投资。资产负债表显示了某一特定日期上述内容之 间的平衡关系,也是公司在某一特定时点所拥有资产的总 结。资产负债表是所有会计记录的基础。
资产负债表
资产负债表包含3大部分的内容,资产,负债和所有者权益,它们在
资产负债表中的一般分布如下:
软件项目管理
Cost Management
Version 2.0
成本管理的基础知识
任何公司或任何项目的最终目的几乎都是为了某种商业利
益,但又该如何去衡量我们在项目中各种资源的投入,又 该如何评价这些投入是否获取了相应的收益呢?这就是项 目成本管理的目的。
大多数技术背景出身的项目人员对于这方面的理解都还比
软件项目管理课程PPT80页

36
10
155 60 8
5
对该方法的有效性有争议:
支持:易计算,很多软件估算模型以它为关键的输入。 反对:LOC依赖于语言,不适用于非过程化语言,在 分析与设计完成之前难以估算。
六盘水师范学院 孙新杰
27
(2)面向功能的度量
“功能”不能直接测量,利用其他的测量数据间接 地导出。 Albrecht提出来的一种称为功能点的度量。用 下表计算5个信息域的值:
另外,可根据文档的页数、评审的时间、功能点及 源代码行数来度量软件的生产率。
六盘水师范学院 孙新杰
23
项目度量可在项目进行的基础上评估产品的质量, 以指导在必要时修改技术方法以改进质量。
软件项目度量建议每个项目都应该测量: • 输入:完成工作所需要的资源(如人员、环境); • 输出:软件工程过程中产生的工作产品; • 结果:最终产品的有效性。 项目度量集成起来产生对整个软件组织公用的过程 度量。
六盘水师范学院 孙新杰
6
⑴列出需要澄清问题的清单
⑵安排与用户进行讨论的会议 ⑶评审用户要求及范围的陈述 ⑷研究推荐的解决方案 ⑸为正式的会议准备工作文档 ⑹共同制订能反映软件的数据、功能和行为特
征的规约,形成软件范围的文档 ⑺评审文档 ⑻根据需求修改文档 …… 庇护性活动贯穿于整个过程。
六盘水师范学院 孙新杰
2名在转换期间数据输入人员
$960
(40小时/名,12美元/小时)
六盘水师范学院 孙新杰
16
培训: 三天的开发人员内部培训课程 30个用户,三天的内部培训课程
复印 磁盘、纸张等消耗品 购买硬件、软件:
20台工作站Windows软件 20台工作站内存升级 网络软件 20台工作站办公软件产品
软件项目管理课程PPT88页

一周的工作量(40小时)。
8 .2 软件项目任务分解
5.责任分配及成本分解
WBHS编o号t Ti预p算
责任者
1
0.1
张明
2
0.46
李立
3
0. 46
张明、李立
3.1
0.04
张明
3.2
0.15
李立
WBS编号 预算
3.3
0.15
3.4
0.1
3.5
0.02
4
0.08
5
0.1
责任者 李立 李立 张明 万风 张明
Requirements 82%
Design 13%
Other Code 4% 1%
一个小故事
如何练就需求分析的火眼金晴?
❖5W + 1H + 8C ❖5W就是 Who、When、Where、What、Why ❖ Why是关键 ❖1H就是 How – 需求本身的流程 ❖ 8C指的是8个约束和限制,即8个Constraints: ❖ 包括性能Performance、成本Cost、时间Time、
• •
H需流o求程t 分 优T析 化ip计划
• 编写需求说明书
• 编写需求规格词汇表
• 绘制业务流程
• 抽象业务类
• 建立数据模型
• 将需求分析图示加入规格文档
• 需求规格测试
① 需求规格确认
8 .2 软件项目任务分解
• 任务分解过程 1.H分ot解T步i骤p
(1)确认并分解项目的主要组成要素。 (2)确定分解标准 (3)确认分解是否详细,分解结果是否可以作为
东西时就会知道—感觉会随环境变化)
❖过早作出结论(截断需要表达过程——需求分析 需要耐心和自我控制)
8 .2 软件项目任务分解
5.责任分配及成本分解
WBHS编o号t Ti预p算
责任者
1
0.1
张明
2
0.46
李立
3
0. 46
张明、李立
3.1
0.04
张明
3.2
0.15
李立
WBS编号 预算
3.3
0.15
3.4
0.1
3.5
0.02
4
0.08
5
0.1
责任者 李立 李立 张明 万风 张明
Requirements 82%
Design 13%
Other Code 4% 1%
一个小故事
如何练就需求分析的火眼金晴?
❖5W + 1H + 8C ❖5W就是 Who、When、Where、What、Why ❖ Why是关键 ❖1H就是 How – 需求本身的流程 ❖ 8C指的是8个约束和限制,即8个Constraints: ❖ 包括性能Performance、成本Cost、时间Time、
• •
H需流o求程t 分 优T析 化ip计划
• 编写需求说明书
• 编写需求规格词汇表
• 绘制业务流程
• 抽象业务类
• 建立数据模型
• 将需求分析图示加入规格文档
• 需求规格测试
① 需求规格确认
8 .2 软件项目任务分解
• 任务分解过程 1.H分ot解T步i骤p
(1)确认并分解项目的主要组成要素。 (2)确定分解标准 (3)确认分解是否详细,分解结果是否可以作为
东西时就会知道—感觉会随环境变化)
❖过早作出结论(截断需要表达过程——需求分析 需要耐心和自我控制)
软件项目管理教材PPT41页

3.2 项目经理的责任和权力
二.项目经理的权力 1.生产指挥权 2.项目团队的组建权 3.财权 4.技术决策权
责任大于权力!!!
3.2 项目经理的责任和权力
• 项目经理的能力
12. .获消H得除ot项障T目 碍ip资 和源 解的 决能问力题的能力
3.领导能力和权衡能力 4.沟通能力 5.管理时间的能力 6.灵敏性
这既是矩阵型组织的优点也是它的缺点。资源在 项目经理之间流动容易引起项目经理之间的争斗, 每个项目经理都更关心自己项目的成功,而不是 整个公司的目标。 ➢ 许多因素使矩阵项目团队非常难以管理。团队成 员觉得这样的团队是临时的,所以对团队的忠诚 是有限的。
3.3 项目组织类型
四. 项目组织的设计
1H.o目t标T一ip致性原则
3 .1 项目相关利益主体
• 项目相关利益主体之间的关系
1.业H主ot与T项ip目实施组织之间的利益关系
二者的利益关系中相互一致的一面使项目业主与项目的
实施组织最终形成一种委托和受托,或者委托与代理的关 系。但是双方的利益有一定的对立性和冲突,如果处理不
好会给项目的成功带来许多不利的影响。这种利益冲突一 般需要按照互利的原则,通过友好协商,最终达成项目合 同的方法解决。因此在项目管理中,项目业主与项目实施
矩阵项目组织类型-弱矩阵 弱矩阵型组织管理形式
矩阵项目组织类型-平衡矩阵 平衡矩阵型组织管理形式
矩阵项目组织类型-强矩阵 强矩阵型组织管理形式
3.3 项目组织类型
矩阵型组织结构具有以下优点:
➢H项矩ot目阵T是型ip工组作织的具重有点项,目项型目组经织理的负长责处管。理整个项目,
➢ 可以有效地利用资源,项目可以分享各个部门的 技术、人才和设备。当多个项目同时进行时,公 司可以平衡资源以保证各个项目都能完成各自的 进度、费用和质量要求。
项目的资源管理PPT课件

需要的总劳 动时数 40 12 24 14 35 36 35
5 0 13
③ 8
5 0 13
5 1 12
④ 7
6 1 13
13 0 17
⑥ 4
13 0 17
17 0 22
⑦ 5
17 0 22
结束
第13页/共55页
1. 最早开始进度计划
0 05
① 5
005
5 0 13
③ 8
5 0 13
开始
02 3
② 3
劳动力成本(人力资源) 材料成本及诸如分包、借款等其他“生产成 本”
第2页/共55页
(2)根据项目所需要的资源的可得性进行分类 主要可以分为以下三类资源 : ① 可以持续使用的资源 例如,固定的劳动力 ② 消耗性的资源 例如,各种材料或计算机的机时 ③ 双重限制资源 在项目的各个阶段的使用数量是有限制的; 总体的使用量也是有限制的。 资金的使用就是一个典型的双重限制资源
② 3
225
5 1 12
④ 7
6 1 13
13 0 17
⑥ 4
13 0 17
06 7
⑤ 7
6 6 13
– 最迟开始进度计划相应的甘特图
17 0 22
⑦ 5
17 0 22
结束
第17页/共55页
– 最迟开始进度计划相应的资源需求图
资源(每周工时)
活动
① ② ③ ④ ⑤ ⑥ ⑦
持续时间 (周) 5 3 8 7 7 4 5
77
9 10 11 10 10 10 20 21 22 777
(二)资源约束条件下的资源分配
很多的项目都受到来自资源的约束条件的制约
在资源使用的约束条件下,通常运用关键线路法(CPM)不能求得项 目的完成日期。
软件项目资源管理PPT课件

居善地:善于自处而甘居下地,要谦让。 心善渊:心存善良,心胸开阔,能容纳百川。 与善仁,行为修到同水一样助长万物的生命和善良,与人为善。 言善信,说话如同潮水,言而有信,拥有信任,才能获得足够的支持。 正善治,立身处世,尽量做到公平、公正,才能更好地治理团队。 事善能,担当做事,沟通融和,问题容易解决,能耐显现。 动善时,以静制动,及时而动,把握机会。 老子所弘扬水的精神,其实对项目管理有很好的启发。作为一个项目经理,确实需要水的柔
c
基本概念
软件项目人力资源管理的主要内容
项目组织设计 工作设计 项目组织规划 职务分析
外部招聘
人员获得
内部招聘
团队成员
人员配备
团队人员开发
项目团队 团队建设
人员培训、评估、激励 团队精神、沟通、冲突处理
c
人力资源管理
基本概念 人力资源分析与策划 人力资源的获取 团队组织和分工 人力资源评估
c
人力资源分析与策划
软件项目开发的不同阶段,项目对技术人员的类型、 层次和数量表现出不同的特点。
需求分析:系统分析员、软件高工、项目高管;
概要设计:增加高级程序员;
详细设计:增加软件工程师和程序员;
编码测试:增加程序员和软件测试员。
高 人 员 参 与 程 度低
分析
设计
高级技术人员 初中级技术人员
牢记:不要当众批评项目成员 主动承担责任 奖罚分明
c
项目经理的职责
项目经理的职责定义须视具体项目而定, 通常其最基本的职责是领导项目的计划、组织 和控制工作,以实现项目目标。 主要职责
确保项目目标实现(保证用户满意); 分解目标、编制计划; 组织实施(组建团队、任务分工、营造环境); 项目控制(实时监控、信息畅通、规避风险)。
c
基本概念
软件项目人力资源管理的主要内容
项目组织设计 工作设计 项目组织规划 职务分析
外部招聘
人员获得
内部招聘
团队成员
人员配备
团队人员开发
项目团队 团队建设
人员培训、评估、激励 团队精神、沟通、冲突处理
c
人力资源管理
基本概念 人力资源分析与策划 人力资源的获取 团队组织和分工 人力资源评估
c
人力资源分析与策划
软件项目开发的不同阶段,项目对技术人员的类型、 层次和数量表现出不同的特点。
需求分析:系统分析员、软件高工、项目高管;
概要设计:增加高级程序员;
详细设计:增加软件工程师和程序员;
编码测试:增加程序员和软件测试员。
高 人 员 参 与 程 度低
分析
设计
高级技术人员 初中级技术人员
牢记:不要当众批评项目成员 主动承担责任 奖罚分明
c
项目经理的职责
项目经理的职责定义须视具体项目而定, 通常其最基本的职责是领导项目的计划、组织 和控制工作,以实现项目目标。 主要职责
确保项目目标实现(保证用户满意); 分解目标、编制计划; 组织实施(组建团队、任务分工、营造环境); 项目控制(实时监控、信息畅通、规避风险)。
软件项目管理课程PPT113页

计算程序控制结构的V(G)值
E = 4 E = 3 N = 4 N = 3 V = 2 V = 2
计算程序控制结构的V(G)值
E = 6 N = 5 V = 3
例3.1 计算如图所示程序控制结构图的V(G)值。 (a) e=1,n=2,v=1; (b) e=3,n=3,v=2; (c) e=4,n=4,v=2; (d) e=3,n=3,v=2; (e) e=6,n=5,v=3.
过程的内部属性 工作量 计划和进度 一段时间内某类事件发生的次数 过程的外部属性 成本 可控制性 可观察性 稳定性 资源的内部属性 人 软硬件环境 方法 经验 资源的外部属性 成本 时间
3.1.1.2 面向规模的度量
代码行数 LOC或KLOC 生产率 Pl=L/E 其中 L 软件项目代码行数 E 软件项目工作量(人月 PM) Pl 软件项目生产率(LOC/PM) 代码出错率 EQRl=Ne/L 其中 Ne 软件项目的代码错误数 EQRl 每千行代码的错误数
每行代码平均成本 Cl=S/L 其中 S 软件项目总开销(元/美元) Cl软件项目每行代码的平均成本 文档与代码比 Dl=Pd/L 其中 Pd 软件项目文档页数 Dl 每千行代码的平均文档数
软件的外部属性和内部属性 外部属性 软件产品、过程、资源与环境的关系 如,成本、效益、劳动生产率、可靠性、可维护性 内部属性 软件产品、过程、资源、环境自身的属性 如,产品结构、模块化程度、复杂性、程序长度等。
产品-过程-资源
产品的内部属性 程序代码长度 程序功能 模块化 重用性 控制流 数据流 模块耦合度与内聚度 产品的外部属性 程序的可靠性 可用性 可维护性 软件的可理解性 有效性 可移植性
例3.1计算程序控制结构的V(G)值
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
获取人力资源信息、招聘员工、确定劳资关系。 培训员工、任用员工。 评估员工业绩,依据人力资源评价体系奖惩员工。
7.1.2 人力资源分析与策划
在软件开发过程中,人员的获取、选择、分配和组织 是设计软件开发进度、软件开发过程管理和软件产品质量 的重大问题,必须引起项目负责人的高度重视。软件项目 的开发实践表明,软件开发各个阶段所需要的技术人员类 型、层次和数量是不同的。
在软件项目的计划与分析阶段只需要少数人,主要是 系统分析员、从事软件系统论证和概要设计的软件高级工 程师和项目高级管理人员;在概要设计阶段,要增加一部 分高级程序员;在详细设计阶段要增加软件工程师的程序 员;在编码和测试阶段,还要增加程序员、软件测试员。
通过上面的论述说明,在项目启动时就要做好人力资源的分析和规
② 个人绩效:采用员工自评与项目经理考核相结合的方式,从敬 业精神、工作责任感、个人技能、个人贡献、团队合作、工作 效率及完成情况等方面进行考察,对项目成员进行打分、
2.激励
① 正激励:主要以物质奖励和精神鼓励等方式体现 ② 负激励:主要以提醒、交谈、批评及体罚等方式。
7.2 软件资源管理
1.软件资源管理的概念
……
……
人力资源需求表
制定软件项目人力计划,主要依据工作量和进度进行人 员需求预估。一般来讲,工作量与项目总时间的比值就是理 论上所需的人员数量,但选取和分配人力资源有许多值得研 究的问题。许多学者从软件工程角度提出了一些经验思路, 可作为软件项目人力资源管理参照,再次进行简单介绍:
• 人员——进度权衡定律 • Brooks定律 • Norden-Rayleigh曲线 • 人力资源计划的平衡
下面将对前两个做以详细的介绍
1.人员——进度权衡定律
著名学者Putnam在估算软件开发工作量时得出的公式:
E=S3 / ( C3×t4 )
其中,E是以人年为单位的工作量,S是LOC,C是技 术银子,t是以年为单位的耗费时间,截至产品交付所用 的时间。
由于软件项目的建设时间主要取决于应用软件的开发 时间,因此可将这种人员与进度之间的非线性替代关系称 为“人员——进度权衡定律”。
7.1.5 团队建设
1.建立沟通机制 通常可以采用的沟通方式有以下几种:
① 会议沟通 ② 文件沟通 ③ 电子邮件 ④ 电话
2.培训与学习型组织 在项目实施过程中,逐步建立起学习型项目团队是
项目成功的另一个标志
7.1.6 人力资源评估
1.绩效考核
① 项目绩效:从项目成本、利润、计划完成情况、项目质量、规 范程度、文档水平、技术、产品化和共享度等方面评价项目效 果。
即中等规模复用,如软件设计结果的复用。
3. 大粒度复用
即大规模复用,如应用于系统的复用。
7.2.4 可复用软件资源的管理
为提高软件生产率和软件质量,需要把有重用价值的软 件模块或构件收集起来,再把相关的资料组织在一起,标 注说明,建立索引,从而建立可复用的软件构件库。
① 独立性强 ② 高度可塑性 ③ 接口清晰、简明
3. 根据类的特性,类模块复用又可进一步分为以下3种方式:
① 实例复用 ② 继承复用 ③ 多态复用
7.2.3 软件复用的粒度
1. 小粒度复用
即小规模复用,如程序源代码复用和目标代码复用,主要表现 为函数、子程序、面向对象中的类、方法的复用。
2. 中粒度复用
软件项目资源管理
本章目录
• 7.1人力资源管理 • 7.2软件资源管理 • 7.3硬件资源管理 • 7.4案例故事解析
7.1.1 人力资源管理概念
软件项目中的人力资源管理包括所有项目干系人:资 助者、客户、项目组成员、支持人员及供应商等。软件项 目的人力资源管理就是有效地发挥每个项目干系人作用的 过程。一般来说,人力资源管理是一项复杂的工作,其具 体的工作内容是由若干相互关联的任务所组成。
7.1.3 人力资源的获取
人员的获取是项目团队的逐组建关键,在选拔项目 成员时,成员的来源有3种渠道:
① 在组织内部选拔合适的人选 ② 通过招聘吸收新成员; ③ 通过熟悉的人员介绍,引进所需要的中高级技术人才。
项目经理是全包项目成功的关键,因此,项目经理 应具备的基本素质如下。
① 良好的交流沟通能力 ② 良好的文档能力 ③ 解决冲突的能力和项目实践经验
在软件开发过程中,可以尽可能重复使用以前开发活动中曾经 积累或使用过的软件资源,这些软件资源被称为可复用软件资源。
2.软件资源的复用方式
① 源代码的复用 ② 目标代码复用 ③ 设计结果复用 ④ 分析结果复用 ⑤ 类模块复用
类库与库函数的联系与区别:
1. 联系:而这都是经过特定开发语言编译后的二进制代码。 2. 区别:二者有本质区别,主要表现在一下几方面:
7.1.4 团队组织和分工
组建软件项目团队取决于可供选择的人员、项目的需求以及组 织的需求,这里介绍一下各种软件项目段对组织的策略。
1. 软件团队中的角色
① 项目经理 ② 分项目经理 ③ 系统分析员 ④ 系统架构师 ⑤ 数据库管理员 ⑥ 程序员 ⑦ 配置管理员 ⑧ 系统测试员
2. 开发人员的组织
① 水平团队方案 ② 垂直团队方案 ③ 混合团队方案
2.Brooks定律
曾担任IBM公司操作系统项目经理的F.Brooks,从大 量的软件开发实践中得出了另一条结论:“向一个已经拖 延的项目追加新的开发人员,可能会是这个项目完成得更 晚”。从另一个角度说明了“时间与人员不能线性互换”。
对这个定律的合理解释是,当开发人员以算术级数 增长时,人员之间的通信将以几何级数增长,从而可能导 致“得不偿失”的结果。一般说来,由N位开发人员组成 的小组要完成既定的工作,相互之间的通信路径总数为: C=N(N-1)/2,而通信时需要时间的。
划,制定项目整个过程的人力资源需求表,如下:
序号
角色
1 项目经理
2
分项目经理
3 系统分析员 4 架构设计师 5 数据库工程师 6 程序员 7 文档管理员 8 测试员
数量
到位时间
备注
1
× × × ×年× ×月
分项目1: × × × ×年× ×月 分项目1、3的经理人 6 分项目2: × × × ×年× ×月 选尚空缺,待招聘
7.1.2 人力资源分析与策划
在软件开发过程中,人员的获取、选择、分配和组织 是设计软件开发进度、软件开发过程管理和软件产品质量 的重大问题,必须引起项目负责人的高度重视。软件项目 的开发实践表明,软件开发各个阶段所需要的技术人员类 型、层次和数量是不同的。
在软件项目的计划与分析阶段只需要少数人,主要是 系统分析员、从事软件系统论证和概要设计的软件高级工 程师和项目高级管理人员;在概要设计阶段,要增加一部 分高级程序员;在详细设计阶段要增加软件工程师的程序 员;在编码和测试阶段,还要增加程序员、软件测试员。
通过上面的论述说明,在项目启动时就要做好人力资源的分析和规
② 个人绩效:采用员工自评与项目经理考核相结合的方式,从敬 业精神、工作责任感、个人技能、个人贡献、团队合作、工作 效率及完成情况等方面进行考察,对项目成员进行打分、
2.激励
① 正激励:主要以物质奖励和精神鼓励等方式体现 ② 负激励:主要以提醒、交谈、批评及体罚等方式。
7.2 软件资源管理
1.软件资源管理的概念
……
……
人力资源需求表
制定软件项目人力计划,主要依据工作量和进度进行人 员需求预估。一般来讲,工作量与项目总时间的比值就是理 论上所需的人员数量,但选取和分配人力资源有许多值得研 究的问题。许多学者从软件工程角度提出了一些经验思路, 可作为软件项目人力资源管理参照,再次进行简单介绍:
• 人员——进度权衡定律 • Brooks定律 • Norden-Rayleigh曲线 • 人力资源计划的平衡
下面将对前两个做以详细的介绍
1.人员——进度权衡定律
著名学者Putnam在估算软件开发工作量时得出的公式:
E=S3 / ( C3×t4 )
其中,E是以人年为单位的工作量,S是LOC,C是技 术银子,t是以年为单位的耗费时间,截至产品交付所用 的时间。
由于软件项目的建设时间主要取决于应用软件的开发 时间,因此可将这种人员与进度之间的非线性替代关系称 为“人员——进度权衡定律”。
7.1.5 团队建设
1.建立沟通机制 通常可以采用的沟通方式有以下几种:
① 会议沟通 ② 文件沟通 ③ 电子邮件 ④ 电话
2.培训与学习型组织 在项目实施过程中,逐步建立起学习型项目团队是
项目成功的另一个标志
7.1.6 人力资源评估
1.绩效考核
① 项目绩效:从项目成本、利润、计划完成情况、项目质量、规 范程度、文档水平、技术、产品化和共享度等方面评价项目效 果。
即中等规模复用,如软件设计结果的复用。
3. 大粒度复用
即大规模复用,如应用于系统的复用。
7.2.4 可复用软件资源的管理
为提高软件生产率和软件质量,需要把有重用价值的软 件模块或构件收集起来,再把相关的资料组织在一起,标 注说明,建立索引,从而建立可复用的软件构件库。
① 独立性强 ② 高度可塑性 ③ 接口清晰、简明
3. 根据类的特性,类模块复用又可进一步分为以下3种方式:
① 实例复用 ② 继承复用 ③ 多态复用
7.2.3 软件复用的粒度
1. 小粒度复用
即小规模复用,如程序源代码复用和目标代码复用,主要表现 为函数、子程序、面向对象中的类、方法的复用。
2. 中粒度复用
软件项目资源管理
本章目录
• 7.1人力资源管理 • 7.2软件资源管理 • 7.3硬件资源管理 • 7.4案例故事解析
7.1.1 人力资源管理概念
软件项目中的人力资源管理包括所有项目干系人:资 助者、客户、项目组成员、支持人员及供应商等。软件项 目的人力资源管理就是有效地发挥每个项目干系人作用的 过程。一般来说,人力资源管理是一项复杂的工作,其具 体的工作内容是由若干相互关联的任务所组成。
7.1.3 人力资源的获取
人员的获取是项目团队的逐组建关键,在选拔项目 成员时,成员的来源有3种渠道:
① 在组织内部选拔合适的人选 ② 通过招聘吸收新成员; ③ 通过熟悉的人员介绍,引进所需要的中高级技术人才。
项目经理是全包项目成功的关键,因此,项目经理 应具备的基本素质如下。
① 良好的交流沟通能力 ② 良好的文档能力 ③ 解决冲突的能力和项目实践经验
在软件开发过程中,可以尽可能重复使用以前开发活动中曾经 积累或使用过的软件资源,这些软件资源被称为可复用软件资源。
2.软件资源的复用方式
① 源代码的复用 ② 目标代码复用 ③ 设计结果复用 ④ 分析结果复用 ⑤ 类模块复用
类库与库函数的联系与区别:
1. 联系:而这都是经过特定开发语言编译后的二进制代码。 2. 区别:二者有本质区别,主要表现在一下几方面:
7.1.4 团队组织和分工
组建软件项目团队取决于可供选择的人员、项目的需求以及组 织的需求,这里介绍一下各种软件项目段对组织的策略。
1. 软件团队中的角色
① 项目经理 ② 分项目经理 ③ 系统分析员 ④ 系统架构师 ⑤ 数据库管理员 ⑥ 程序员 ⑦ 配置管理员 ⑧ 系统测试员
2. 开发人员的组织
① 水平团队方案 ② 垂直团队方案 ③ 混合团队方案
2.Brooks定律
曾担任IBM公司操作系统项目经理的F.Brooks,从大 量的软件开发实践中得出了另一条结论:“向一个已经拖 延的项目追加新的开发人员,可能会是这个项目完成得更 晚”。从另一个角度说明了“时间与人员不能线性互换”。
对这个定律的合理解释是,当开发人员以算术级数 增长时,人员之间的通信将以几何级数增长,从而可能导 致“得不偿失”的结果。一般说来,由N位开发人员组成 的小组要完成既定的工作,相互之间的通信路径总数为: C=N(N-1)/2,而通信时需要时间的。
划,制定项目整个过程的人力资源需求表,如下:
序号
角色
1 项目经理
2
分项目经理
3 系统分析员 4 架构设计师 5 数据库工程师 6 程序员 7 文档管理员 8 测试员
数量
到位时间
备注
1
× × × ×年× ×月
分项目1: × × × ×年× ×月 分项目1、3的经理人 6 分项目2: × × × ×年× ×月 选尚空缺,待招聘