第8章 软件项目管理与计划
软件项目风险管理-PPT

风险影响项目目标得严重程度 从无影响到无穷大
风险后果度量
高、中、低 极高、高、中、低、极低 灾难,严重,轻微,可忽略 等等
风险概率及后果估计-矩阵图
P Low
R I
High L
Medium High
H
H
Medium L Low L
H
H
M
M
风险评估得方法-定量风险评估
1. 盈亏平衡分析 2. 模拟 3. 访谈 4. 决策树分析 5. 量化风险条目检查表 6. 。。。。。。
间得关系,行动方案得后果以及发生得概率 提供选择一个最佳得方案得依据
决策树分析与EMV ( Expected Monetary Value)
损益期望值就是决策树得一种计算值 根据风险发生得概率计算出一种期望得损益 例如: 某行动方案成功得概率就是50%,收益就是
10 EMV=10*50%=5
风险规划得主要策略
1. 回避风险 2. 转移风险 3. 损失控制 4. 自留风险
-回避风险
回避风险就是对所有可能发生得风险尽可能得 规避,采取主动放弃或者拒绝使用导致风险得方 案
例如放弃采用新技术
-回避风险
注意事项
对风险有足够得认识 当其她风险策略不理想得时候,可以考虑 可能产生另外得风险 不就是所有得情况都适用得
0、5*-2=-1元
0、25*-2=-0、5元
GameB:EMV=0、5
量化检查表
McFarlan’s Risk Questionnaire
1. What is the project estimate in calendar (elapsed) time?
( ) 12 monthsce changes Low = 1
软件项目质量管理及实施控制方法

软件项目质量管理及实施控制方法第一章引言 (2)1.1 项目背景 (2)1.2 项目目标 (2)1.3 项目范围 (3)第二章项目质量管理概述 (3)2.1 质量管理基本概念 (3)2.2 质量管理原则 (4)2.3 质量管理过程 (4)第三章项目质量策划 (4)3.1 质量策划概述 (4)3.2 质量策划流程 (5)3.3 质量计划编制 (5)第四章项目质量保证 (6)4.1 质量保证概述 (6)4.2 质量保证方法 (6)4.3 质量保证工具 (7)第五章项目质量控制 (7)5.1 质量控制概述 (7)5.2 质量控制方法 (8)5.3 质量控制工具 (8)第六章项目质量改进 (8)6.1 质量改进概述 (8)6.2 质量改进方法 (9)6.3 质量改进工具 (9)第七章项目风险管理 (10)7.1 风险管理概述 (10)7.2 风险识别 (10)7.3 风险评估与应对 (10)第八章项目进度管理 (11)8.1 进度管理概述 (11)8.1.1 进度管理的目的 (11)8.1.2 进度管理的原则 (11)8.2 进度计划编制 (11)8.2.1 识别项目活动 (12)8.2.2 确定活动顺序 (12)8.2.3 估算活动持续时间 (12)8.2.4 制定进度计划 (12)8.3 进度控制 (12)8.3.1 监督项目进度 (12)8.3.2 测量项目进度 (12)8.3.3 调整项目进度 (12)8.3.4 加强组织管理 (12)8.3.5 应对项目风险 (12)第九章项目成本管理 (13)9.1 成本管理概述 (13)9.2 成本估算 (13)9.3 成本控制 (13)第十章项目人力资源管理 (14)10.1 人力资源管理概述 (14)10.2 团队组建 (15)10.3 团队管理 (15)第十一章项目沟通管理 (15)11.1 沟通管理概述 (15)11.2 沟通计划编制 (16)11.3 沟通控制 (16)第十二章项目收尾管理 (17)12.1 收尾管理概述 (17)12.2 项目验收 (17)12.3 项目总结与评价 (17)第一章引言在当今快速发展的时代背景下,项目管理和实施已成为推动社会进步的关键因素。
软件项目管理项目计划

软件项目管理项目计划
1. 项目范围,确定项目的目标和范围,明确需要实现的功能和
交付的成果。
这包括需求分析、功能规格、技术规格等。
2. 时间表,制定项目的时间计划,包括项目启动、设计、开发、测试、部署和维护等阶段的时间安排。
在制定时间表时需要考虑到
资源的可用性、依赖关系和风险因素。
3. 成本管理,制定项目的预算和成本控制计划,包括人力资源、硬件设备、软件工具、培训等方面的成本预算和控制措施。
4. 质量管理,确定项目的质量标准和质量控制措施,包括测试
计划、质量评估、缺陷管理等。
5. 沟通计划,制定项目团队内部和外部沟通的计划,包括会议
安排、报告频率、沟通工具和沟通内容等。
6. 风险管理,识别项目可能面临的风险,制定风险评估和应对
计划,包括风险预警机制、风险应对策略和风险管理的责任分配。
在执行软件项目管理项目计划时,需要不断监控和调整计划,确保项目按计划进行并达到预期的目标。
同时,也需要与项目相关方保持沟通,及时报告项目进展和风险情况,以便及时调整计划,确保项目顺利完成。
软件项目管理习题答案

第0章软件项目管理概述二、判断题1. 项目开发过程中可以无限制地使用资源。
(X)2. 项目具有暂时的特征。
(√)3. 项目管理核心的三角形是范围、进度、风险。
(X)4. 过程管理与项目管理在软件组织中是两项很重要的管理,项目管理用于保证项目的成功,而过程管理用于管理最佳实践。
(√)5. 运作管理(Operation Management)是从宏观上帮助企业明确和把握企业发展方向的管理。
(√)第1章软件项目初始过程一、选择题1. 项目建议书是哪个阶段开发的文档()A. 项目执行阶段B. 项目结尾阶段C. 项目初始阶段D. 项目计划阶段2. 项目章程()A. 明确了项目经理B. 确定了项目的质量标准C. 明确了团队的纪律D. 定义了项目需求3. 对于风险比较大的项目,最好选择()生存期模型,A. 瀑布模型B. 原型C. 螺旋模型D. V模型4. 开发项目建议书的目的是为了()A. 验收B. 竞标或者签署合同C. 编写计划D. 跟踪控制项目三、判断题1. 项目经理是一个综合的角色()2. 软件项目都是需要签署合同的()3. 增量式模型可以避免一次性投资太多带来的风险()4. 项目章程类似一个项目授权书()5. 在甲乙合同项目中,提出需求的一方是乙方()6. 如果是内部项目,在项目初始阶段可以不提交招标书()C A C B√×√√×√第二章-范围计划一、选择题1. 需求分析是回答系统必须()的问题A. 做什么B. 怎么做C. 何时做D. 为谁做2. WBS(工作分解结构)非常重要,因为下列原因,除了()A. 帮助组织工作B. 防止遗漏工作C. 为项目估算提供依据D. 确定团队成员责任3. 项目范围()A. 只在项目开始时重要B. 在授权项目的合同或者其他文件得以批准后就不再重要了C. 从项目概念阶段到收尾阶段都应该加以管理和控制D. 是在项目执行阶段通过变更控制步骤进行处理的问题4. 为了有效地管理项目,应该将工作分解为更小的部分,以下各项中,哪一项不能说明任务应该分解到什么程度?()A. 可以在80小时内完成B. 不能再进一步进行逻辑细分了C. 可由一个人完成D. 可以进行实际估算5. 范围变更是指()A. 修改技术规格B. 对范围陈述进行修订C. 对批准后的WBS进行修改D. 以上都不是6. 下面哪个不是需求管理的过程()A. 需求设计B. 需求获取C. 需求分析D. 需求变更7. 下面那个不是创建WBS的方法()A. 自顶向下B. 自底向上C. 控制方法D. 模版指导8. 任务分解可以(),它是范围变更的一项重要输入A. 提供项目成本估算结果B. 提供项目范围基线C. 规定项目采用的过程D. 提供项目的关键路径9. 范围基线由()组成A. 项目章程、批准的详细的项目范围说明书和WBSB. 批准的详细项目范围说明书、WBS和WBS字典C. 项目章程、项目工作说明书和WBSD. WBS二、判断题1. 需求分析过程是确定项目如何实现的过程,并确定项目的技术方案()2. 对于一个重来没有做过的项目,开发WBS时,可以采用自底向上的方法()ADCBDACBB×√第三章-软件项目进度计划一、选择题1. 快速跟进是指(A )A. 采用并行执行任务,加速项目进展B. 用一个任务取代另外的任务C. 如有可能,减少任务数量D. 减轻项目风险2. 赶工一个任务时,你应该关注(D )A. 尽可能多的任务B. 非关键任务C. 加速执行关键路径上的任务D. 通过成本最低化加速执行任务3. “软件编码完成之后,我才可以对它进行软件测试”,这句话说明了哪种依赖关系?(A )3A. 强制性依赖关系B. 软逻辑关系C. 外部依赖关系D. 里程碑4. 如果用户提供的环境设备需要5月10日到位,所以环境测试安排在5月10日以后,这种活动安排的依赖依据是:(C)A. 强制性依赖关系B. 软逻辑关系C. 外部依赖关系D. 里程碑5. 对一个任务进行进度估算时,A是乐观者,估计是6天完成,B是悲观者,估计是24天完成,C是有经验者认为最有可能是12天完成,那么这个任务的历时估算是介于10天到16天的概率是(B )A. 50%B. 68.3%C. 70%D. 99.7%δ=(P-O)/6=(24-6)/6=3E=(O+4M+P)/6=(6+4*12+24)/6=136. 下面哪项可能延长项目的进度?(A)A. LagB. LeadC. 赶工D. 快速跟进7. 关于浮动,下面除了哪个都是不正确的?(D )A. 每个任务都有浮动B. 只有复杂的项目有浮动C. 浮动是在不增加项目成本的条件下,一个活动可以延迟的时间量D. 浮动是在不影响项目完成时间的前提下,一个活动可以延迟的时间量8. 关于网络图,下面哪个是不正确的?(C)A. 网络图可用于安排计划B. 网络图展示任务之间的逻辑关系C. 网络图可用于跟踪项目D. 网络图可用于详细的时间管理9. 资源平衡最好用于(D)活动A. 时间很紧的B. 按时的C. 非关键路径10. 下面哪项可以决定进度的灵活性(B )A. PERTB. Total floatC. ADMD. 赶工第四章-软件项目成本计划一、选择题1. (A )是用系统的功能数量来测量其规模,与实现产品所使用的语言和技术没有关系的。
软件项目管理制度模板

软件项目管理制度第一章总则第一条为了规范软件项目的管理,提高软件项目质量和效益,依据我国相关法律法规,制定本制度。
第二条本制度适用于公司内部所有软件项目的管理工作,包括项目立项、需求分析、设计、开发、测试、上线及维护等各个阶段。
第三条软件项目管理应遵循以下原则:(一)客户需求为导向:充分了解和分析客户需求,确保项目目标的实现。
(二)过程控制:加强对项目过程的管理,确保项目按计划推进。
(三)质量第一:注重软件项目的质量,确保项目交付后能正常运行和满足用户需求。
(四)团队合作:加强团队建设,提高项目团队成员的协作能力和综合素质。
第四条公司应设立项目管理组织,负责公司软件项目的管理工作,确保项目制度的落实和执行。
第二章项目立项第五条项目立项应依据市场需求和公司战略发展进行,充分分析项目的可行性和预期效益。
第六条项目立项时,应明确项目目标、范围、预期成果、项目组成员、项目预算、项目进度计划等。
第七条项目立项后,项目组应按照项目计划开展各项工作,确保项目按计划推进。
第三章需求分析第八条需求分析是项目成功的关键,项目组应充分了解和分析客户需求,确保项目目标的实现。
第九条需求分析应采用问卷调查、访谈、座谈会等方式进行,确保需求的准确性和完整性。
第十条需求分析成果应形成需求说明书,作为后续设计、开发、测试等工作的重要依据。
第四章设计第十一条设计阶段应根据需求说明书进行,确保设计方案的科学性和合理性。
第十二条设计成果应包括系统架构设计、数据库设计、界面设计等,形成设计文档,供后续开发、测试等工作参考。
第五章开发第十三条开发阶段应按照设计文档进行,确保代码的质量。
第十四条开发过程中应遵循软件工程规范,采用合理的编程习惯,确保项目的可维护性。
第十五条开发成果应进行代码审查,确保代码的规范性和可读性。
第六章测试第十六条测试阶段应根据需求说明书和设计文档进行,确保软件的功能和性能满足要求。
第十七条测试应采用黑盒测试、白盒测试、压力测试等多种测试方法,确保软件的质量。
软件项目管理计划

软件项目管理计划一、项目背景。
本软件项目管理计划旨在对软件项目进行全面的规划和管理,确保项目顺利完成并达到预期的效果。
本项目的背景是针对公司内部业务流程进行优化,开发一款集成管理系统软件,以提高工作效率和管理水平。
二、项目目标。
1. 确定项目范围和目标,明确软件项目的功能模块和实现目标,确保开发的软件能够满足公司内部业务管理的需求。
2. 制定项目计划,合理安排项目的时间节点和资源分配,确保项目按时交付。
3. 管理项目风险,及时发现和解决项目中的问题和风险,确保项目顺利进行。
4. 保障项目质量,严格按照软件开发流程和质量标准进行管理,确保软件质量达到预期水平。
三、项目组织。
1. 项目组成员,项目组成员包括项目经理、开发人员、测试人员、需求分析师等,各成员具体职责明确。
2. 项目沟通机制,建立项目组内部的沟通机制,确保信息畅通,问题及时反馈和解决。
3. 项目决策机制,明确项目决策的流程和责任人,确保项目决策的及时性和有效性。
四、项目计划。
1. 项目启动阶段,确定项目范围、目标和需求,制定项目计划和时间节点。
2. 项目执行阶段,开展软件开发和测试工作,确保按照计划进行。
3. 项目收尾阶段,完成软件交付和验收工作,确保项目按时完成。
五、项目风险管理。
1. 风险识别,对项目可能存在的风险进行全面的识别和分析。
2. 风险评估,对识别的风险进行评估,确定风险的影响和可能性。
3. 风险应对,针对不同的风险制定相应的风险应对措施,确保项目风险可控。
六、项目质量管理。
1. 质量目标,明确软件项目的质量目标和标准,确保软件质量符合公司要求。
2. 质量控制,建立软件开发过程中的质量控制机制,确保质量问题及时发现和解决。
3. 质量评估,对软件开发过程中的质量进行评估,及时调整和改进软件开发流程。
七、总结。
本软件项目管理计划旨在对软件项目进行全面的规划和管理,确保项目能够顺利完成并达到预期的效果。
通过对项目的范围、目标、组织、计划、风险和质量进行全面的管理,确保项目按时交付且质量可控。
软件开发项目管理及实施方案

软件开发项目管理及实施方案第1章项目立项与规划 (4)1.1 项目背景分析 (4)1.2 项目目标与需求 (4)1.3 项目可行性研究 (5)1.4 项目规划与时间表 (5)第2章项目团队组织与管理 (6)2.1 团队组建与职责分配 (6)2.2 团队沟通与协作 (6)2.3 人员培训与技能提升 (7)2.4 团队绩效考核与激励 (7)第3章软件需求分析 (7)3.1 用户需求调研 (7)3.1.1 调研目标 (7)3.1.2 调研方法 (7)3.1.3 调研对象 (8)3.2 需求分析过程 (8)3.2.1 需求收集 (8)3.2.2 需求分析 (8)3.2.3 需求确认 (8)3.2.4 需求优先级排序 (8)3.3 需求规格说明书 (8)3.3.1 编写目的 (8)3.3.2 内容结构 (8)3.4 需求变更控制 (9)3.4.1 变更原因 (9)3.4.2 变更流程 (9)3.4.3 变更控制措施 (9)第4章软件设计与架构 (9)4.1 系统架构设计 (9)4.1.1 架构概述 (9)4.1.2 架构模式 (9)4.1.3 技术选型 (10)4.2 模块划分与接口设计 (10)4.2.1 模块划分 (10)4.2.2 接口设计 (10)4.3 数据库设计 (10)4.3.1 数据库选型 (10)4.3.2 数据库表设计 (10)4.3.3 数据库访问层设计 (11)4.4 设计评审与优化 (11)4.4.1 设计评审 (11)第5章编码与实现 (11)5.1 编程规范与技术选型 (11)5.1.1 编程规范 (11)5.1.2 技术选型 (12)5.2 代码编写与质量控制 (12)5.2.1 代码编写 (12)5.2.2 质量控制 (12)5.3 代码审查与测试 (12)5.3.1 代码审查 (12)5.3.2 测试 (12)5.4 版本控制与协同开发 (13)5.4.1 版本控制 (13)5.4.2 协同开发 (13)第6章软件测试 (13)6.1 测试策略与计划 (13)6.1.1 测试策略 (13)6.1.2 测试计划 (13)6.2 单元测试与集成测试 (13)6.2.1 单元测试 (13)6.2.2 集成测试 (14)6.3 系统测试与验收测试 (14)6.3.1 系统测试 (14)6.3.2 验收测试 (14)6.4 缺陷管理与跟踪 (14)第7章项目风险管理 (14)7.1 风险识别与评估 (15)7.1.1 风险识别 (15)7.1.2 风险评估 (15)7.2 风险应对策略 (15)7.2.1 需求风险应对策略 (15)7.2.2 技术风险应对策略 (15)7.2.3 人员风险应对策略 (16)7.2.4 进度风险应对策略 (16)7.2.5 质量风险应对策略 (16)7.2.6 成本风险应对策略 (16)7.2.7 外部风险应对策略 (16)7.3 风险监控与沟通 (16)7.3.1 风险监控 (16)7.3.2 风险沟通 (16)7.4 风险管理总结 (17)第8章项目进度与成本控制 (17)8.1 项目进度计划与监控 (17)8.1.1 进度计划编制 (17)8.1.3 进度更新与调整 (17)8.2 成本预算与控制 (17)8.2.1 成本预算编制 (17)8.2.2 成本控制方法 (17)8.2.3 成本控制措施 (17)8.3 资源分配与优化 (18)8.3.1 资源分配原则 (18)8.3.2 资源优化方法 (18)8.3.3 资源监控与调整 (18)8.4 项目调整与变更管理 (18)8.4.1 项目调整原则 (18)8.4.2 变更管理流程 (18)8.4.3 变更控制措施 (18)第9章项目交付与验收 (18)9.1 项目成果整理与交付 (18)9.1.1 成果整理 (18)9.1.2 成果审查 (19)9.1.3 成果交付 (19)9.2 客户验收与满意度调查 (19)9.2.1 客户验收 (19)9.2.2 满意度调查 (19)9.3 项目总结与经验教训 (19)9.3.1 项目总结 (20)9.3.2 经验教训 (20)9.4 后期维护与优化 (20)9.4.1 后期维护 (20)9.4.2 优化服务 (20)第10章项目质量管理 (20)10.1 质量管理体系构建 (20)10.1.1 制定质量方针和目标 (20)10.1.2 确定质量标准和规范 (21)10.1.3 设计质量组织结构 (21)10.1.4 分配质量责任和权限 (21)10.1.5 制定质量流程和程序 (21)10.1.6 建立质量培训和提升机制 (21)10.2 质量控制与检查 (21)10.2.1 质量计划制定 (21)10.2.2 质量控制工具和方法选择 (21)10.2.3 质量检查流程设计 (21)10.2.4 监控质量指标和关键绩效指标 (21)10.2.5 质量问题识别、分析和解决 (21)10.3 质量改进与持续优化 (21)10.3.1 质量改进计划制定 (21)10.3.2 质量改进团队组织与职责划分 (21)10.3.3 质量改进方法与工具应用 (21)10.3.4 质量改进实施与跟踪 (21)10.3.5 持续优化质量管理体系 (21)10.4 项目质量评估与审计 (21)10.4.1 质量评估标准与指标体系构建 (21)10.4.2 质量评估方法与工具选择 (21)10.4.3 质量审计流程设计 (21)10.4.4 质量评估与审计结果分析 (21)10.4.5 质量评估与审计报告编制 (21)第1章项目立项与规划1.1 项目背景分析信息技术的飞速发展,软件行业已成为国民经济的重要组成部分。
第8章 软件项目管理

8.2 软件项目启动及组织
8.3.1 软件项目进度估算
1. 软件规模与工作量估算 常用的软件规模度量单位有千行代码KLOC(Kilo-Lines Of Code)、功能点FP(Function Points)和对象点OP(Object Points);常用的工作量度量单位有人年、人月和人日等。 1)软件规模估算 (1)千代码行(KLOC)估算法。 (2)功能点(FP)估算法。 2)工作量估算。常用的两个估算模型是:CoCoMo模型 和Putnam模型。 3) 估算工具及其他方法
第8章 软件项目管理
8.1.2 软件项目管理过程及内容
1. 软件项目管理的过程 软件项目管理的对象是软件工程项目的相关活动,涉及的范围覆盖了整 个软件工程过程。为使软件项目开发获得成功,关键问题是必须对软件项 目的工作范围、风险、资源、任务、过程、成本、进度安排等做到心中有 数。 软件项目管理开始于技术工作之前,在软件从概念到实现的过程中持 续运行,最后终止于软件工程过程结束。 软件项目管理主要侧重在人员、质量、过程、进度和成本等几个方面。 从管理过程看,软件项目管理可分为项目启动、项目计划、项目组织实施、 项目监控和项目验收五个阶段。从目标管理分,有质量管理、成本管理 、进度管理等;从资源管理分,有人力资源管理、财务管理、文档
8.1 软件项目管理概述
8.2.1 项目启动过程及任务 软件项目的启动过程是一个新项目决策立项与开始准备实 施的过程。 在项目启动前做好准备和实施方案至关重要。包括5个方面: (1)研发团队及项目干系人分析。 (2)明确研发项目的目标。 (3)清晰的项目范围。 (4)确定项目资源需求。 (5)制定项目实施计划。
上海市教育高地暨 特色专业建设配套教材
高等院校计算机与 信息类规划教材
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4. 评价人员的条件
软件项目中人的因素越来越受重视. 软件项目中人的因素越来越受重视.在评价和任用软件人 员时,必须掌握一定的标准. 员时,必须掌握一定的标准.人员素质的优劣常常影响到 项目的成败. 项目的成败. 牢固掌握计算机软件的基本知识和技能. 牢固掌握计算机软件的基本知识和技能. 善于分析和综合问题,具有严密的逻辑思维能力. 善于分析和综合问题,具有严密的逻辑思维能力. 工作踏实,细致,不靠碰运气,遵循标准和规范, 工作踏实,细致,不靠碰运气,遵循标准和规范,具有严 格的科学作风. 格的科学作风. 工作中表现出有耐心,有毅力,有责任心. 工作中表现出有耐心,有毅力,有责任心. 善于听取别人的意见,善于与周围人员团结协作, 善于听取别人的意见,善于与周围人员团结协作,建立良 好的人际关系. 好的人际关系. 具有良好的书面和口头表达能力. 具有良好的书面和口头表达能力.
17
8.1.3 分解技术
当一个待解决的问题过于复杂时, 当一个待解决的问题过于复杂时,可以把它进一步 分解,直到分解后的子问题变得容易解决为止. 分解,直到分解后的子问题变得容易解决为止.然 分别解决每一个子问题, 后,分别解决每一个子问题,并将这些子问题的解 答综合起来,从而得到原问题的解答. 答综合起来,从而得到原问题的解答.
第 8章
软件项目管理与计划
1
1. 2. 3. 4. 5. 6.
软件工程中程序出错, 软件工程中程序出错,成本超支和没完成要求等 都可以归结到软件项目管理太弱.因此, 都可以归结到软件项目管理太弱.因此,工程中 要进行管理与计划 本章内容: 本章内容: 软件项目管理概述 项目管理过程 软件开发成本估算 风险分析 进度安排 软件项目的组织
项目管理是指"在项目活动中运用专门的知识, 项目管理是指"在项目活动中运用专门的知识, 知识 技能,工具和方法, 技能,工具和方法,使项目能够实现或超过项目 干系人的需要和期限. 干系人的需要和期限." 问题: 超过项目干系人的需要和期限" 问题:"超过项目干系人的需要和期限"
说明有潜 换句话说, 收集数据信息, 力可挖 换句话说,项目计划不准确 收集数据信息, 为软件过程改进提供依据 持续的进行过程改进
15
宿主机连同必要的软件工具构成软件开发系统. 宿主机连同必要的软件工具构成软件开发系统. 软件开发系统 软件资源包括用于开发的运行平台,各种CASE工 软件资源包括用于开发的运行平台,各种 工 具可以帮助分析和设计软件, 具可以帮助分析和设计软件,开发程序所有的编程 语言等. 语言等. 这里涉及到项目资金的投入问题, 这里涉及到项目资金的投入问题,由于软件的开发 时间有时会比较长, 时间有时会比较长,所以在开发期只需要投入一些 必要的软件开发系统环境就够了,运行环境可以到 必要的软件开发系统环境就够了, 后期在投入,这样可以节约大笔资金(为什么?). 后期在投入,这样可以节约大笔资金(为什么?).
9
实际人力需求与开发进度的关系如下图中的曲 线所示. 线所示. 需要而缺少的工作量 人 力
因人力配备 不当, 不当,要求 增加的额外 工作量
浪费掉 的 工作量
无用工作量
时间
10
按此曲线,需要的人力随开发进展逐渐增加, 按此曲线,需要的人力随开发进展逐渐增加,在 编码与单元测试阶段达到高峰,以后又逐渐减少. 编码与单元测试阶段达到高峰,以后又逐渐减少. 如果恒定地配备人力, 如果恒定地配备人力,在开发初期将会有部分人 力资源用不上而浪费掉.在开发中期, 力资源用不上而浪费掉.在开发中期,需要的人 力不够,造成进度的延误, 力不够,造成进度的延误,不得不在开发后期增 加人力以赶进度. 加人力以赶进度. 结论:一般情况下, 结论:一般情况下,恒定地配备人力会造成人力 资源浪费. 资源浪费.
18
8.2 项目管理过程
软件项目管理的对象是软件工程项目. 软件项目管理的对象是软件工程项目.它所涉及的 范围覆盖了整个软件工程过程. 范围覆盖了整个软件工程过程. 1. 启动一个软件项目 2. 成本估算 3. 风险分析 4. 进度安排 5. 追踪和控制
ห้องสมุดไป่ตู้19
什么是项目管理? 1. 什么是项目管理?
14
2. 硬件 软件资源 硬件/软件资源
硬件是作为软件开发项目的一种工具而投入的. 硬件是作为软件开发项目的一种工具而投入的.在 软件项目计划期间,考虑三种硬件资源: 软件项目计划期间,考虑三种硬件资源: (1)宿主机(Host machine)——软件开发 )宿主机( ) 软件开发 时使用的计算机及外围设备. 时使用的计算机及外围设备. 2)目标机( machine)——运行已 (2)目标机(Target machine)——运行已 开发成功软件的计算机及外围设备. 开发成功软件的计算机及外围设备. (3)其他硬件设备 )其他硬件设备——专用软件开发时需要的特 专用软件开发时需要的特 殊硬件资源. 殊硬件资源.
4
8.1.1 软件管理的对象 在软件项目管理中,重要的是人 问题和过程三者 三者. 在软件项目管理中,重要的是人,问题和过程三者. 其中人是最重要的管理对象. 其中人是最重要的管理对象. 组成一个软件工程的开发项目的人员有以下几类: 组成一个软件工程的开发项目的人员有以下几类: (1)高级管理者:负责确定软件的问题. )高级管理者:负责确定软件的问题. (2)项目技术管理者:管理软件开发人员. )项目技术管理者:管理软件开发人员. (3)开发人员:软件开发的专门的技术人员. )开发人员:软件开发的专门的技术人员. (4)客户:负责说明软件需求的人员. )客户:负责说明软件需求的人员. (5)最终用户:最终使用软件的人员. )最终用户:最终使用软件的人员.
16
3. 可复用构件资源
为了促成软件的复用, 为了促成软件的复用,以提高软件的生产率和软件 产品的质量,可建立可复用的软件部件库. 产品的质量,可建立可复用的软件部件库.根据需 对软件部件稍做加工, 要,对软件部件稍做加工,就可以构成一些大的软 件包.要求对这些软件部件加以编目,以利于引用, 件包.要求对这些软件部件加以编目,以利于引用, 并进行标准化和确认,以利于应用和集成. 并进行标准化和确认,以利于应用和集成. 遗憾的是,在计划阶段,人们往往忽视软件资源. 遗憾的是,在计划阶段,人们往往忽视软件资源. 直到软件工程过程的开发阶段, 直到软件工程过程的开发阶段,软件资源成为一个 重大问题时才引起人们的重视.最好是尽早确定软 重大问题时才引起人们的重视. 件资源的需求, 件资源的需求,这样可以对各种候选方案进行技术 评价,并及时地获取这些软件.( .(在需求分析后可 评价,并及时地获取这些软件.(在需求分析后可 以进行软件体系结构的设计,以强调资源的复用) 以进行软件体系结构的设计,以强调资源的复用)
20
经过多年的发展, 经过多年的发展,项目管理已经成为一个较为成 熟的领域. 熟的领域. 美国项目管理协会为此建立了一套《 美国项目管理协会为此建立了一套《项目管理知 识体系指南》 识体系指南》,作为了解和学习项目管理的知识 框架和起点.它包括项目管理引论, 框架和起点.它包括项目管理引论,9 大项目管 理知识领域的简要描述以及相关术语. 理知识领域的简要描述以及相关术语.
21
9大知识领域的核心功能 大知识领域的核心功能 项目 干系 人的 需要 和期 望 范围 管理 时间 管理 成本 管理 质量 管理
工具和 技术
项目整体管理 人力 资源 管理 沟通 管理 风险 管理 采购 管理
项目 成功
促成功能
项目管理框架
2
8.1 软件项目管理概述
1 软件项目管理的特点 软件项目的特点: 软件项目的特点: 1)智力密集,可见性差 )智力密集, 2)单件生产 ) 3)劳动密集,自动化程度低 )劳动密集, 4)软件工作渗透了人的因素 )
3
2. 软件管理的主要职能
软件管理的主要职能包括: 软件管理的主要职能包括: (1)制定计划:规定待完成的任务,要求,资源, )制定计划:规定待完成的任务,要求,资源, 人力和进度等. 人力和进度等. (2)建立组织:为实施计划,保证任务的完成,需 )建立组织:为实施计划,保证任务的完成, 要建立分工明确的责任制机构. 要建立分工明确的责任制机构. (3)配备人员:任用各种层次的技术人员和管理人 )配备人员: 员. (4)指导:鼓励和动员软件人员完成所分配的工作. )指导:鼓励和动员软件人员完成所分配的工作. (5)检验:对照计划或标准,监督和检查实施的情 )检验:对照计划或标准, 况.
7
人
员 高 参 与 程 度
高级技术人员
初级技术人员
人员
计 划 需 求 分 析 概 要 设 计 详 细 分 析 程 序 编 码 单 元 测 试 集 成 测 试 确 认 测 试
8
人数上反映的特点: 人数上反映的特点: 一个软件项目完成的快慢, 一个软件项目完成的快慢,取决于参与开发人员的 多少,专业水平和合作默契程度.并不是说" 多少,专业水平和合作默契程度.并不是说"人越 多越好" 多越好". 在开发的整个过程中, 在开发的整个过程中,多数软件项目是以恒定人力 配备的.但有些问题. 配备的.但有些问题.
项目干系人是指参与项目和受项目影响的人, 项目干系人是指参与项目和受项目影响的人,包 是指参与项目和受项目影响的人 括项目发起人,项目组,支持人员,客户, 括项目发起人,项目组,支持人员,客户,最终 用户,供应商,项目对手. 用户,供应商,项目对手. 项目的核心知识是范围 时间,成本和质量. 范围, 项目的核心知识是范围,时间,成本和质量.辅 助知识是人力资源管理 风险管理和采购管理. 人力资源管理, 助知识是人力资源管理,风险管理和采购管理.
12
3. 对项目经理的要求
软件经理是工作的组织者, 软件经理是工作的组织者,他的管理能力的强弱是项目 成败的关键.他应具有以下能力: 成败的关键.他应具有以下能力: 把用户提出的非技术性要求加以整理提炼, 把用户提出的非技术性要求加以整理提炼 以技术说明 书的形式转告给分析员和测试员. 书的形式转告给分析员和测试员. 能说服用户放弃一些不切实际的要求, 以保证合理的要 能说服用户放弃一些不切实际的要求 求得以满足. 求得以满足. 能够把表面上似乎无关的要求集中在一起, 能够把表面上似乎无关的要求集中在一起 归结为 "需 要什么" 要解决什么问题 要解决什么问题" 要什么", "要解决什么问题".这是一种综合问题的能 力. 要懂得心理学, 能说服上级领导和用户, 要懂得心理学 能说服上级领导和用户,让他们理解什 么是不合理的要求.但又要使他们毫不勉强, 乐于接受, 么是不合理的要求.但又要使他们毫不勉强 乐于接受, 并受到启发. 并受到启发.