第14章软件项目管理.docx

上传人:b****8 文档编号:11110878 上传时间:2023-02-25 格式:DOCX 页数:13 大小:18.72KB
下载 相关 举报
第14章软件项目管理.docx_第1页
第1页 / 共13页
第14章软件项目管理.docx_第2页
第2页 / 共13页
第14章软件项目管理.docx_第3页
第3页 / 共13页
第14章软件项目管理.docx_第4页
第4页 / 共13页
第14章软件项目管理.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

第14章软件项目管理.docx

《第14章软件项目管理.docx》由会员分享,可在线阅读,更多相关《第14章软件项目管理.docx(13页珍藏版)》请在冰豆网上搜索。

第14章软件项目管理.docx

第14章软件项目管理

第14章、软件项目管理

前置说明:

关于软件项目管理,有专门的课程。

本章内容一般只要求大体理解,不要求精确掌握。

一、概述(教材14-1)

1、关注点

1)人员

▲教材列举:

5类人员

▲初学着一般只关注:

开发人员,而且主要是编程人员

▲教材的启示

2)产品

▲教材列举

—环境

—目标

—功能与性能

▲如何理解教材的论述

结合教材第2章,从项目规划的角度理解。

3)过程

▲软件工程的第1要素——过程

▲项目管理核心——面向过程进行管理

▲关于过程模型——教材1-4

▲关于公共过程框架

—客户交流

—计划

—风险评估

—开发

—客户评估

▲结合螺旋模型理解公共过程框架

4)项目

项目管理者应遵循的基本原则

▲明确目标与过程

▲保持动力

▲跟踪进展

▲做出“聪明”的决策

▲项目总结

2、项目管理过程

项目管理过程参考图14-1,说明如下:

1)项目启动

—目标

—成本、效益与技术可行性分析

—计划

—组织

参照教材第2章理解上述内容。

2)项目组织

—对人数、结构的评估(教材列出参考因素)

—任务分工

—管理机制

3)项目计划

—核心:

进度计划

—其它:

参考教材论述

4)软件度量

内容

目的

对软件开发工作量的度量

合理制订项目计划,合理安排任务分工与管理进度。

对软件质量标准的度量

确定质量指标的度量方法,保障软件达到既定的质量标准。

5)风险管理

—评估项目的风险因素

—提出控制风险的策略

6)进度安排

—分解任务

—落实到人

—明确每项任务的时间、资源与验收标准

7)追踪与控制

—追踪,及时掌握任务的实际执行情况

—控制,发现问题及时解决。

—关键,根据不同类型的任务,订立可行的跟踪机制,能管控、同时少扰民。

8)软件配置管理

教材14-8讲述

二、软件度量(教材14-2)

1、针对软件开发工作量的度量(教材14-2-1/2)

1)面向软件规模(即代码行)的度量

—特点,能比较客观地体现软件开发的工作量

—缺陷,属于秋后算帐

而且,与所选择的软件开发工具、以及软件设计水平有关。

2)面向功能点的度量

—特点:

事先估算软件开发工作量的可行方法

—提示:

需要根据功能类型调整测算系数

通过原型开发,有助于合理测算

2、针对软件质量的度量(教材14-2-3)

1)基本原理——三个层次的质量度量模型

层次

名称

作用

1

质量要素

面向管理者、给出结论的每项质量指标。

2

评价准则

针对每项质量要素,确定使用哪些指标进行评价。

3

度量方法

针对每项评价指标,确定具体的评价算法

以“软件可维护性”评价为例,理解三层质量模型。

2)McCall模型

—基本概念

质量要素:

11项

评价准则:

21项

度量方法:

软件企业自行定义

—质量要素与评价准则之间的对应关系

表14-12

启示:

提高软件质量从何着手

—质量要素之间的正/负相关性

表14-11

启示:

提高软件的整体质量,需要综合权衡

3)ISO模型

具体内容:

目的:

深化对软件三层质量模型的理解。

特点:

第1层(即质量特性)有如下6项:

功能性

可靠性

操作性

效率

可维护性

可移植性

与MaCall模型比较,更加清晰。

 

3、软件复杂性度量(教材12-2-4)

1)软件复杂性的构成

程序复杂性(重点)

文档复杂性

2)程序复杂性的核心

理解、修改程序的难度

对照教材所列举的6点理解上述论断。

3)衡量程序复杂性的基本原则

与程序大小有关、但并非线性;

与控制结构的复杂性相关

与数据结构的复杂性相关

与编程规范相关(补充)

与全局、非局部变量的数量相关

与模块之间的藕合度相关

与模块的调用深度有关

…….

4)2个典型的程序复杂性度量模型(了解即可)

McCabe模型:

从控制结构的角度衡量

Halstead模型:

从操作符与操作数的角度衡量

5)启示

合理的设计、规范的编程、清晰的文档,有助于降低软件复杂性。

4、软件可靠性度量(教材14-2-5)

1)软件可靠性定义

参考教材

2)为什么需要度量软件可靠性

—背景

从开发方的角度,软件不可能不出现错误;

从用户的角度,对软件出错有一个“容忍度”。

—为此

软件交付前,需要对“可靠性”进行评估;

软件交付后,如有必要,也需要进行计算。

3)相关指标

MTBF:

2次故障之间平均相隔多长时间出现

MTTF:

平均运行多长时间会出现1次故障

MTTR:

每次故障平均花多长时间才能排除

4)如何理解如下公式

MTBF=MTTF+MTTR

软件可用性=MTTF/(MTTF+MTTR)*100

5)如何在软件交付前评估软件可靠性

—假定:

软件进行了测试;

测试时发现的错误均已改正。

—核心:

评估软件到底还隐藏了多少bug;

—方法:

根据测试记录评估bug被发现的概率

—方法1:

经验猜测

—方法2:

错误植入

—方法3:

重复测试

—方法4:

选取若干典型、进行重点复查。

上述内容可参考教材14-3-5

6)启示

—软件交付前,最好对软件可靠性有一个大致的判断。

—通过评估,发现关键问题,重点整改。

三、软件项目估算(教材14-3)

1、目的

在项目正式启动前,评估开发工作量;

据此,提出人员需求与进度计划

2、基本方法

1)基于已经完成的同类项目

2)基于问题与过程分解进行估算

3)基于经验模型进行估算

3、基于代码行、功能点的估算

1)基于代码行的估算

2)基于功能点的估算

4、若干典型的估算模型(了解即可)

5、启示

—邀请有经验的人参与评估;

—以功能点为评估的主要依据;

—要考虑人员素质、开发工具、功能类型等因素;

—通过原型开发,有助于增强评估的准确性。

四、项目进度管理

1、基本原则

—任务划分

—明晰任务之间的相互依赖性

—落实每项任务的人员、责任与时间要求

—确定每项任务的结果

—定义里程碑

2、人员与工作量之间的关系

—组织管理、人员之间的交流,需要花费时间成本

 

3、任务分解、以及任务之间的串行/并行关系

4、任务工作量的确定

—40/20/40的工作量分配比例

—确定工作量分配比例需要考虑的因素

项目类型

同类项目的经验

人员素质

开发环境

组织管理能力

5、进度安排

—描述项目进度的方法:

甘特图

—跟踪项目进度的方法:

参考教材

五、风险管理(教材14-5)

1、风险类型

1)商业风险

多种商业风险因素(见教材)

2)技术风险

—陈旧落后、即将淘汰的技术

—过于“先进”但是不成熟的技术

—与产品定位不符的技术

—项目组成员不掌握的技术

3)项目管理风险

2、启示

项目管理人员必须了解整个项目、以及项目开发过程中每个阶段的风险因素,实施有效的预防与控制。

六、项目组织(教材14-6)

1、组织形式

—按子项目划分

—按职能划分

—矩阵形

2、程序员的组织

—为什么专题讨论程序员的组织

人数多

素质参差不齐

内部需要频繁交流

除了编程,往往还包揽部分的设计与测试工作

—组织形式

主程序员制

民主制

层次式

3、人员配备

确定不同时期对人员类型、数量、与素质要求

配备合适的人员

4、对不同类型、不同层次人员的素质要求

七、软件质量管理(教材14-7)

1、确定质量目标与标准

对照3层软件质量模型,理解目标与标准的关系

2、确定保障软件质量的人员与管理体制

3、软件评审

参考《需求分析》有关需求文档评审的讲述。

八、软件配置管理(教材14-8)

1、若干基本概念

1)软件配置项

2)软件配置

3)配置管理

4)版本

5)发布

6)基线

7)变更控制

8)配置审查

9)配置状态记录

2、重点理解如下概念

1)软件配置项到底包含哪些内容

程序:

源程序、目标代码、可执行代码。

文档:

商务、技术、管理、用户等不同类型。

相关产品:

软件开发与运行所必须外部软件。

2)什么是软件配置

软件产品在不同时期的组合

3)什么是基线

3、配置管理的主要活动

1)制订配置管理规则(补充)

—确定配置项

—确定配置标识方案

—确定存/取管理规则

2)版本管理

—描述软件版本演化的路线图

—记录每个版本的演化内容

—保管不同版本的配置项

3)变更控制

—控制对象

基线创建后的配置项

—管理流程

参考教材

—区分对待如下不同情况的变更

软件开发阶段

软件维护阶段

版本升级阶段

具体内容后面讲述

4)配置审查

—对软件完整性、一致性概念理解的延伸

—配置审查的目的

保障配置项的完整性与一致性。

5)状态记录

4、启示——软件配置管理的运用(补充)

1)项目启动时

制订配置管理规则

2)软件开发阶段

实施变更控制,

保障需求、设计、程序之间的一致。

3)开发结束时

配置审查,保障软件配置的完整

4)软件维护阶段

实施变更控制

保障软件配置项的完整性与一致性

5)软件版本升级

实施版本管理,保障每个版本的配置完整

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 纺织轻工业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1