软件项目管理学习笔记
第一章 项目管理概述
-
项目概述
- 工作:日常运作和项目。两者会有重叠但共同之处是由人来做、受制于有限的资源、需要规划执行和控制。
- 运作(Operations):连续不断、周而复始的活动,如企业日常的生产产品的活动
- 项目(Projects):临时性、一次性的活动,如企业的技术改造活动
- 项目的定义:项目是一个特殊的将被执行的有限任务,它是在一定时间内,满足一系列特定目标的多项相关工作的总称。
- 此定义包含三层含义:
- 项目是一项有待完成的任务,且有特定的环境与要求。
- 在一定的组织机构内,利用有限资源(人力物力财力等)在规定的时间内完成任务。
- 任务要满足一定性能、质量、数量、技术指标等要求
- 也可以换一种说法:项目是在一定的资源约束下,完成既定目标的一次性的系列任务。
- 此定义包含三层含义:
- 项目的特点
- 项目具有目的性,有明确的目标
- 项目具有寿命周期
- 项目具有一定独特性(一次性)
- 项目都有其固定用户
- 项目组织开放性和临时性
- 开发实施的渐进性
- 项目具有较强冲突性
- 项目具有一定风险性
- 项目活动的整体性
- 项目的三重约束:时间、功能性能、费用。
- 成功的项目必须满足时间、费用和功能(性能)伤的不同要求。
- 项目利益相关者:
- 政府:提供信息、服务和规范,收到资金
- 客户:提供资金,收到产品和服务
- 供应商 服务商:提供产品和服务,收到资金
- 项目成员:提供劳动,收到资金
- 债权人:提供资金,收到资金
- 投资者:提供资金,收到资金
-
项目管理及发展
- 项目管理:以项目为对象的系统管理方法,通过临时性的、专门的柔性组织,对项目进行高效率的计划、组织、指导(领导)和控制,以实现全过程的动态管理和项目目标达成的综合协调与优化。
- 项目管理的特点
- 对象:项目或被当作项目来处理的运作
- 思想:系统性管理的系统方法论
- 组织:临时性、柔性、扁平化的组织
- 体制:基于团队管理的个人负责制
- 方式:目标管理,包括进度、费用、技术与质量
- 要点:创造和保持一种使项目顺利进行的环境
- 方法、工具、手段具有先进性和开放性
- 项目管理具有复杂性(多学科、不确定型、临时性、约束条件严格)和创造性(探索性、权衡进度费用质量)
- 项目负责人在项目管理中起着非常重要的作用:
- 项目管理的主要原理之一是项目经理负责制
- 项目经理有权独立进行计划、资源分配、协调和控制
- 项目经理应有多学科知识、综合管理及现场处理和决策能力
- 项目经理应有迅速建立一支高效群体的能力
- 项目管理的发展过程
- 项目管理实践 -> 活动:完成任务
- 传统项目管理 -> 方法:满足三重约束
- 新项目管理 -> 学科:从目标上来讲是让利益相关者满意
- 美国的项目管理学会PMI,设立项目管理资质认证制度PMP,认证基准是PMBOK。包括九大知识体系:范围管理、时间管理、成本管理、人力资源管理、风险管理、质量管理、采购管理、沟通管理、综合管理。
- 国际项目管理协会IPMA提出IPMP证书,有四个等级:
- A级(高级项目经理CPD,可管理大型国际项目)
- B级(项目经理CPM,可管理大型复杂项目)
- C级(项目管理专家PMP,可管理一般复杂项目)
- D级(项目管理专业人员PMF,能从事一般项目的管理)
- 当代的项目管理已经发展成为一门学科、一个专业、一种职业。
- 国际项目管理发展的趋向
- 项目管理的全球化发展
- 项目管理的多元化发展
- 项目管理的专业化、学科化发展
- 国际项目管理发展的热点:证书热、培训热、软件热
-
项目管理知识体系概述
- 项目管理的5个标准化过程:启动、计划编制、执行、监控、结束
- 项目管理知识领域
- 项目范围管理
- 管理内容:项目范围计划和定义,范围确认,范围变更控制
- 工具:项目工作分解结构WBS,需求分析等
- 包括:启动过程、范围计划、范围界定、范围核实、范围变更控制等过程
- 项目时间管理
- 任务:活动定义、活动排序、估算活动资源、活动历时估计、进度编制、进度控制等
- 工具和方法:甘特图、里程碑表、网络图方法如CPM和PERT方法等
- 项目成本管理
- 任务:资源计划、成本估算、成本预算和成本控制
- 工具:成本估算技术、生命周期费用分析技术
- 项目质量管理
- 主要过程:质量计划、质量保证和质量控制
- 工具:质量标准控制技术,基准点法,流程图表,帕累托图分析,6 sigma工具(鱼骨图)等
- 作用:确保满足顾客需求达到质量要求,以最大限度减小风险等
- 项目人力资源管理
- 过程:组织计划、人员招聘和项目团队建设
- 工具:责任分配矩阵、组织结构图、人员配置计划、激励和考核模式等
- 项目采购管理
- 包括:采购计划、询价、收货、合同管理和合同收尾
- 任务:确认项目何时需要何种产品和资源的支持,并决定项目组的采购计划
- 技巧:询价、招标、合同管理、谈判技巧等
- 项目风险管理
- 包括:风险计划管理、风险识别、风险评估和风险量化、风险对策(风险应对计划)和风险监控的过程
- 措施:风险规避、风险转移、风险弱化和接受风险
- 作用:将项目发生不良后果的可能性减小到最低,通过对风险的影响做出结合实际的评估以及有效地管理风险等。
- 项目沟通管理
- 指收集、存储、发送项目过程中产生的信息的过程
- 项目综合(整体)管理
- 综合运用其他8各领域的知识,合理集成不平衡各要素之间的关系,将项目管理的各个方面整合在一起确保项目成功的活动。
- 核心:在多个相互冲突的目标和方案中做出权衡以实现项目的目标,它包括制定项目的计划、项目计划的执行和项目整体变更控制。
- 作用:帮助项目管理人员整合、协调项目管理的不同活动领域,有效地对项目中的变更加以控制和管理。
- 项目范围管理
- 项目干系人(stakeholders)
- 包括项目当事人(项目的参与各方)和其利益受该项目影响(受益或受损)的个人和组织,也称作项目的利害关系者。
- 一般项目而言主要的项目干系人包括:
- 项目经理:负责管理项目的个人
- 客户(用户):产品的所有者,或使用项目产品的个人和组织
- 执行组织:可能是企业或其他类型的组织,它许多雇员直接参与项目的各项工作
- 项目发起者:执行组织内部与外部的个人和团体,他们以现金和实物形式为项目提供资金、人力等资源
-
软件项目管理概念与基础
- IT项目:以信息技术(计算机、网络与通讯、微电子等)为基础进行开发的项目,如电子商务、企业信息化、智慧(数字)城市、物联网应用等。
- 软件项目:以软件技术为基础,进行软件开发的项目,软件项目管理的对象是软件工程项目。
- 特征
- 项目目标的不准确性
- 需求的多变性
- 项目功能的渐进性
- 项目时间的不准确性
- 项目风险的不确定性
- 智力劳动的密集型
- 技术的先进性
- 主要构成
- 系统的需求分析
- 网络与硬件系统的设计
- 软件系统的设计
- 系统实施(配置和开发)
- 测试(中试)与转换
- 后期维护与系统升级
- 特征
第二章 软件项目的启动
-
启动阶段的任务
-
熟悉项目背景
- 一般项目环境、项目背景信息:
- 项目是否具有明确的结果
- 项目是否有行业相关国家标准或者国际规范
- 项目是否有合理的截止日期
- 项目发起人是否有权开展项目
- 项目是否有财务支持
- 项目是否有人做过
- 软件项目相关的技术信息
- 项目采用的新技术将会怎样影响使用者
- 项目采用的新技术会对其他软件造成的影响
- 项目采用的新技术和正在使用的操作系统、数据库的兼容性
- 项目采用的新技术,是否其他单位也在使用
- 核心技术的供应商在行业中记录是否良好
- 网络、服务器等基础设施的建设情况如何
- 一般项目环境、项目背景信息:
-
了解利益相关者
- 不同利益相关者,在项目运行过程中扮演不同角色、持不同态度
- 了解他们的心里有利于协调工作、调动相关人员的积极性
-
研究(商业)需求和项目功能
- 软件项目突出时效性,其技术性更具有时代特点,因此分析软件项目商业需求和功能时不能闭门造车,必须进行有效的市场调研和市场预测(内部用户进行内部调研)
-
初步确定项目范围
- 项目范围:为交付具有规定特征和功能的产品或服务所必须要完成的工作。
- 在确定项目范围时需要识别项目、制定项目章程、范围计划和范围说明,同时要进行初步的工作分解和指定范围变更的控制方法。
- 识别项目是确定项目范围的首要工作。项目组成员应该和项目相关利益者进行项目开发范围的确定。
- 在软件项目中,用户和技术是识别项目的关键。
-
给出项目预算
- 预算可以对项目的前进方向起到财务导向的作用。
- 成本估算,需要考虑以下方面的费用:
- 考虑完成项目每个阶段所用的满负荷工作量
- 考虑专业服务的成本
- 考虑设备、软件等外购成本
- 考虑开发附加成本(办公费、用户手册、著作权和专利申请)
- 考虑质量检测要求(测试费)
- 考虑储备金(有一定的比例)
-
制定项目章程
- 项目章程明确地给出了项目的定义,说明了它的特点和最终结果,规定了项目的发起人、项目经理和团队。
- 项目章程的演进过程:项目发起人识别项目和进行初步的项目定义,同时根据项目起源和项目定义,选择和聘用项目经理以及确定项目目标。
- 在此基础上,确定项目团队和需要的项目资源,以上确定或基本确定后,制定项目章程。
- 项目章程由以下要素构成
- 项目的正式名称
- 项目发起人
- 项目经理
- 项目目标
- 关于项目的开展原因
- 项目可交付成果
- 开展工作的基本时间安排(详细的时间安排在项目计划中列举)
- 项目资源(预算、成员、专家以及供应商)
- 主要作用
- 对项目进行完整定义
- 确定项目发起人和项目经理
- 确保项目经理对项目负责
- 授权项目,从项目发起人的角度分配项目经理权力等
- 项目章程由以下要素构成
-
项目启动阶段的过程
- 项目启动步骤(以软件项目为例):需求识别 -> 项目识别 -> 项目研究 -> 项目决策 -> 项目立项 -> 启动会议
- 需求识别(初步分析)
- 信息化功能点需求:性能需求,环境需求,安全需求等,确定需求的优先次序
- 当前业务流程分析、未来业务流程分析,当前业务与未来业务的差异分析
- 初步分析报告形成后还需要组织进行评审,以达成项目关系人对需求的一致认可。
- 项目识别与研究(可行性方案论证,软件项目投入产出成本/效益分析)
- 投入产出评估的依据:考虑清楚该项目的定位,进行投入产出的分析
- 产品选型的依据:可行性方案的制定是建立在业务的需求基础上,是不受任何产品影响的。它使得单位可以在产品选型过程中始终坚持从自身的需求和规划为原则选择产品和方案,而不至于受到供应商解决方案的误导(如ERP数据库的选型)。一切从需要出发。
- 实施方案的约束:可行性方案初步描绘了总体的业务方案与技术架构,而实施方案是可行性方案在各方面的细化。
- 软件项目投入产出(成本/效益)分析
- 货币的时间价值 F=P(1+i)^n,\space P=F/(1+i)^n
- 投资回收期:积累的经济效益等雨最初投资所需要的时间
- ERP:核心思想是供应链的管理,主要宗旨是将企业各方面包括人、财、物、产、供、销等在内的资源充分调配和平衡,使企业在激烈的市场竞争中全方位地发挥各项能力,从而取得良好的经济效益和社会效益。
- 可行性研究
- 经济可行性:成本/效益分析
- 技术可行性:判断系统开发在时间、费用等限制条件下技术层面的可能性,最难决断、最关键。包括:
- 实现风险分析:限制范围内能不能做出来并实现必要的功能和性能
- 资源分析:人员是否存在问题,硬件、软件是否具备
- 技术发展分析:系统技术是否符合相关软件技术的发展
- 外部环境可行性:法律可行性,政策、法规的可行性
- 管理和操作的可行性:操作方式在用户组织内是否行得通
- 项目决策(立项报告审批)
- 立项报告是项目启动阶段的重要文档,在这一阶段,需要从意向提出、需求初步分析,到可行性方案论证,再到产品选型的各阶段产生的重要内容整理形成文档。
- 启动会议
- 启动会准备工作一般包括:建立项目管理制度、会议人员、地点的安排、准备启动会报告和资料等。
- 建立项目管理制度主要包括:
- 项目考核管理制度
- 项目费用管理制度
- 项目例会管理制度
- 项目计划管理制度
- 项目文件(文档)管理制度
- 启动会议是项目开工的正式宣告。任务包括:
- 阐述项目背景、价值、目标
- 项目交付物(成果)介绍
- 项目组织机构及主要成员指责介绍
- 项目初步计划与风险分析
- 项目管理制度介绍
- 项目成员将要使用的工作方式(全职或兼职)
- 建立项目管理制度主要包括:
- 启动会准备工作一般包括:建立项目管理制度、会议人员、地点的安排、准备启动会报告和资料等。
- 需求识别(初步分析)
第三章 范围管理
-
项目范围管理概述
- 范围包括产品范围(产品特征或功能)和项目范围(交付具有规定特征和功能的产品或服务所必须完成的工作)。
- 项目范围:生产(开发)项目的产品所牵涉到的工作和用来生产(开发)产品的过程。
- 两层含义
- 必需的工作(无范围萎缩):遗漏后会造成项目范围的萎缩
- 仅需的工作(无范围蔓延):额外增加会造成项目范围的蔓延
- 两层含义
- 项目范围管理:对项目包括什么与不包括什么定义与控制过程。
- 这个过程用于确保项目组和项目干系人对作为项目结果的项目产品以及生产(开发)这些产品所用到的过程有共同的理解。
- 项目章程/立项报告完成后开始进行项目范围管理,主要过程有:
- 范围计划编制
- 范围定义(WBS)
- 范围核实
- 范围的变更控制
-
范围计划编制
- 项目范围计划:形成正式文件,为将来的项目决策建立基础,包括怎样判断项目和项目阶段已经成功完成的基本标准。简单地说,就是编写项目范围说明书(或工作约定书等)的过程。
- SMART原则
- Specific:绩效指标必须是具体的
- Measurable:绩效指标必须是可以衡量的
- Attainable:绩效指标必须是可以达到的
- Relevant:绩效指标具有相关性,和工作其他目标关联,与本职工作关联
- Time-bound:绩效指标必须具有明确的截止期限
- 范围计划的工具和技术:专家判断,样板、表格、标准等
- 主要内容:项目论证(可行性分析的简要内容)、项目目标、范围简述、项目交付成果简述、工作或服务内容、约束、假设和风险说明等。
-
范围定义(WBS)
- 项目范围定义:把项目的主要可交付成果分为较小的、更易管理的单元。
- 项目的结构分解
- 结构分解的工具是工作分解结构WBS(Work Breakdown Structure),它是一个分级的树型结构,是将项目按照其内在结构或实施过程的顺序进行逐层分解而形成的结构示意图。它可以将项目分解到相对独立,内容单一的,易于成本核算与检查的项目单元,并能把各项目单元在项目中的位置与构成直观地表示出来。
- 核心思想:化整为零
- 特点:强调结构性和层次性。按照相关规则(其内在结构或实施过程)将项目可交付成果逐层分解开来,得到不同层次的项目单元,然后对项目单元再作进一步的分解,得到各个层次的活动单元。
- 重要性:WBS图是实施项目,创造最终产品或服务所必须进行的全部活动的一张清单,也是进行进度计划、人员分配、预算计划的基础。
- 设计方法和原则
- 类比法:以一个类似项目的WBS模版为基础
- 自上而下法(系统思考法):常规方法,从整个项目开始逐步分解,细化工作
- 自下而上法(头脑风暴法):尽可能先确定各项具体任务,然后整合,费时效果好,工程项目用到,软件项目比较少
- WBS编码
-
- 工作包是指处于工作分解结构最低层的可交付成果或产品,工作包原则上不超过两周(80小时原则,软件项目不超过3天)
- 项目结构分解的原则:
- 在各层次上保持项目内容的完整性,尽量避免遗漏工作单元
- 一个项目单元只能从属于某一个上层单元,不能交叉
- 项目单元应能区分不同的责任人和不同的工作内容
- 项目结构分解应能方便工期、成本、质量等的控制
- 详细程度适中
- WBS词典:是一个详细描述WBS每项条目信息的文件。
- 范围基线:核准的项目范围说明书、WBS、WBS词典。
-
范围核实与变更控制
- 范围核实是项目干系人对项目范围的正式承认。
- 项目组必须形成一些明确的文件(文档),说明项目产品范围及其评估程序,以评估是否正确和满意地完成了这些产品。范围核实后,是项目将来进行验收的基准。
- 范围变更控制:如果出现需要改变原定实施范围的需求,应以正式文档方式提出,项目组成员必须谨慎考虑项目范围的改变或需求的改变,将对整个项目进程可能产生的影响,必须在批准后才能进行,在实施过程中必须加以跟踪。
- 范围变更的原因
- 批准程序
- 提出项目变更、需求变更申请报告
- 对于较小的范围改变,需要项目经理查阅和签字批准并内部存档,然后提交双方项目协调小组。
- 凡涉及到整个项目进展,费用成本调整较大的改变,必须交由双方(甲方和乙方)项目领导小组批准通过。
- 申请报告内容
- 说明改变内容,理由
- 说明改变部分在项目进程中的状态
- 评估改变部分对项目进程、费用、质量可能的影响
- 需求变更管理(RCM)过程
- 记录变更日志
- 分析需求变更对工作、产品的影响(质量等)
- 估计变更请求所需的工作量,重新估计交付成果的进度
- 估计增加或减少的成本
- 得出评审结果
- 若评审通过,则更高相应的工作产品(如软件),使其与变更的需求保持一致
- 若评审未通过,将需求变更请求表及相应文档存档
- 范围变更的原因
第四章 时间管理和进度管理
-
项目时间管理概述与重要性
- 进度问题是造成项目冲突的主要原因。
- 项目时间管理,简而言之,涉及确保项目准时完成的必需的过程。其主要任务就是项目进度计划的制定、执行和变更控制。
- 重要性
- 项目时间(进度)管理是整个项目管理中最重要的一个组成部分。
- 它的作用是保证按照完成项目、合理分配资源、发挥最佳工作效率。
- 是项目目标达成的三大约束(限制)之一
- 重要性
-
项目时间管理的过程
-
活动定义
- 活动定义:指识别项目成员和利益相关者为完成项目所必须开展的具体活动——进一步分解WBS。
- 活动(任务):是构成工作的基本要素,来自WBS
- 活动目录:可视为WBS的一个细化,包括项目中所要执行的所有活动
- 细节说明:活动具体描述,以确保项目团队成员能理解工作应如何做。
-
活动排序
- 活动排序:指识别并记录项目活动之间存在依赖关系(确认并编制活动间的相关性)
- 主要输出:项目进度网络图
- 活动依赖关系四种类型
- 完成-开始(FS)
- 开始-开始(SS)
- 完成-完成(FF)
- 开始-完成(SF)
- 活动排序过程包括编制活动间的相关性:
- 内在的相关性(强制依赖关系)
- 指定性的相关性(自由依赖关系)
- 与外部相关性(外部依赖关系)
-
活动的资源估算
- 活动资源估计:指估计分配给每项活动的资源的数量和类型。
- 资源包括:人、设备、原材料、经费
-
活动历时估算
- 活动时间估计:指预计完成各活动所需时间长短,在项目团队中熟悉该活动特性的个人和小组可对活动所需时间作出估计。
- 活动工期估计:估计活动清单上每项活动所需要的工期。
- 输入:活动目录、约束、假设、资源需求、资源库质量、历史资料
- 工具和方法:专家判断、类推估计、仿真
- 输出:活动时间估计、估计的基础、活动目录修改
- 方法:工期=活动消耗的实际工作时间+间歇时间
- 这里有一些图片和计算题看ppt240-260页
-
进度计划编制
- 项目进度计划:是在工作分解的基础上对项目活动做出的一系列时间安排。
- 目的:控制时间和节约时间,安排项目各项活动的时间计划和人员安排。它可以保证按时获利以补偿已经发生的费用支出。协调资源,使资源在需要时可以被利用、预测在不同时间上所需要的资金和资源,并满足严格的完工时间约定。
- 方法:里程碑法、甘特图法
- 里程碑法(最简单,仅表示主要可交付成果的计划开始和完成时间)
- 项目进度计划编制的参考依据:项目网络图、活动(持续)时间的估算、获得的资源、作业制度安排、约束条件(如供货商的供货时间,培训条件的建立等)
- 方法:时间压缩法
- CPM关键路径方法(最长的路径)
- 应急法(并不总是可行)
- 平行作业法(平行做活动,快速跟进,常导致返工和增加风险)
- 结果:项目进度、详细说明、进度管理计划
- 方法:时间压缩法
-
控制项目的进度
- 进度控制是指:
- 确定原有的进度已经发生改变
- 改变某些因素使进度朝有利方向改变
- 当实际进度发生改变时要加以控制,进度计划控制必须和其他控制过程结合
第五章 项目成本管理
-
项目成本管理概述
- 成本:为了达到某一特定的目标而放弃或牺牲的资源。
- 项目的成本管理贯穿于项目实施的始终,项目的开发成本是指开发过程中所花费的工作量及相应的代价。
- 项目的成本管理包括,为确保批准的预算内完成项目,在项目管理过程中所需的方法和过程。
- 项目成本管理过程包括:
- 资源计划:输出一个资源需求清单
- 成本估算:估计完成项目所需资源成本的近似值
- 成本预算:整个成本估算分配到各单项工作,建立衡量成本绩效的基准
- 成本控制:主要结果是修正的成本估算、更新预算、纠正行动、完工估算和取得的教训
- 软件的开发成本:软件开发过程中所花费的工作量及相应的代价。(主要是人的劳动)从项目计划、需求分析、设计、编码、单元测试、集成(组装)测试到确认测试,整个软件开发全过程所花费的代价作为依据。
-
成本管理的基本概念
- 直接成本:工资、买硬件软件等
- 间接成本:办公楼的电费水费交通费等
- 沉没成本:已经花掉的,投资时不包括沉没成本
- 机会成本/择一成本:做一件事的成本和放弃另一件事价值的成本
- 边际成本:缩短时间提高产量或提高质量花费的成本
- 固定成本:短期无法改变的固定投入带来的成本(设备、厂房、利息、保险)
- 可变成本:短期可以改变的可变投入带来的成本(工资、原料、运营费用)
-
资源计划
- 资源计划涉及到决定什么样的资源(人、设备、材料)以及多少资源将用于项目的每一工作的执行过程之中,因此它必然是与费用估计相对应起来的。
- 主要输出是资源需求清单。
-
成本估算
- 成本估计设计计算完成项目所需各资源成本的近似值。
- 输入:工作分解结构、资源需求、资源单价、活动时间估计、历史资料、财务图表
- 工具和方法:类比估计、参数模型、累计估计、计算机软件
- 输出:成本估计、细节说明、成本管理计划
-
成本预算
- 成本预算包括给每一独立工作分配全部费用,以获得度量项目执行的费用(成本)基线(时间-费用计划图中的计划支出线)
-
成本控制
- 成本控制就是要保证各项工作要在它们各自的预算范围内进行。成本控制的基础是事先就对项目进行的成本预算。
- 基本方法:定期通报其费用报告,再由控制人员对其进行费用审核,以保证各种支出的合法性和合理性,然后再将已经发生的费用与预算相比较,分析其是否超支,并采取相应措施加以弥补。
- 工具——挣值分析
- 计算工作预算成本 BCWS=计划工作量*预算定额
- 已完成工作实际成本 ACWP:给定时间内直接成本间接成本总和
- 已完成工作预算成本/挣值 BCWP=已完成工作量*预算定额
- 按照完成情况估计 EAC=实际已发生的费用+(总预算成本-BCWP)*(ACWP/BCWP)
- 软件项目中控制成本的几点措施:
- 通过估算和预算项目的总成本,采用项目经理负责制方式来实施项目
- 定期的工作进度和工作内容检查和评审
- 通过合理的激励方法来提高员工的积极性
- 外包某一技术难点或引进第三方技术
- 通过远程沟通降低差旅费用
第六章 项目质量管理
-
项目的质量概述
- 质量的定义:反应实体(产品)满足明确和隐含需要能力的特性综合。
- 明确需要:指合同中用户明确提出的要求与需要。
- 隐含需要:指由生产企业通过市场调研进行识别与探明的要求或需要。
- 特性:实体(产品)所特有的性质,反映了实体满足需要的能力。
- 项目质量管理的过程
- 质量计划:确定哪些质量标准适用于该项目,并决定如何算达标
- 质量保证:对项目整体绩效进行预先评估(如系统上线前的质量评审),保证该项目将能够达到有关的质量标准。
- 质量控制:监控特定项目的执行结果(如软件输出结果测试),以确定它们是否符合有关的质量标准,并确定适当方式消除导致项目绩效令人不满意的原因。
-
现代质量管理
- 追求顾客满意
- 注重预防而不是检查
- 承认管理层对质量的责任
- 软件质量不仅仅是缺陷率,还包括不断改进、提高用户的满意度,缩短产品(项目)开发周期与投放市场时间,降低质量成本等,是全面质量概念。
-
质量计划编制
- 质量计划编制:确认与项目有关的质量标准以及实现方式。
- 国际标准化组织(ISO)是由各国标准化团体(ISO成员)组成的世界性的联合会。
- 质量计划的内容
- 目的和范围
- 参考的文件列表
- 质量目标
- 质量的任务
- 参与质量管理的相关人员及其责任
- 对一些关键文档提出要求
- 重申适合项目的相关标准
- 评审的流程和标准
- 配置管理要求
- 问题报告和处理系统
- 采用的质量控制工具、技术和方法等
-
质量保证
- 质量保证:对整体项目绩效进行预先的评估,以确保项目能够满足相关的质量标准
- 质量保证和质量控制的输出是质量提高。
- 质量保证的输入主要包括:质量计划、质量控制检测结果
- 工具和技术:基准比较分析、质量审计
- 主要活动包括过程评审和产品审计。
-
质量控制及其工具、技术
- 质量控制:监控特定的项目结果,检查和确保它们遵循了相关质量标准,并识别提高整体质量的途径。
- 质量管理的首要目标就是在不出问题的情况下完成项目,第二个目标则是尽可能及早发现问题。
- 质量控制工具和技术:帕累托分析、质量控制图、软件的测试
- 帕累托分析:确认造成系统质量问题诸多因素中最为重要的几个因素
- 质量控制图:质量过程数据的时序图形表示
- 七点运行法:连续7个数据点都在平均值单侧/都在上升或下降,需要检查这个过程是否有非随机问题
- 质量控制工具和技术:帕累托分析、质量控制图、软件的测试
- 软件测试概述
- 软件测试是控制软件质量的关键步骤,它是对软件系统规格说明、设计和编码的最后复审。
- 软件测试是为了发现错误而执行程序的过程
- 是为了证明程序有错,而不是证明程序无错误
- 好的测试用例在于发现至今未发现的错误
- 成功的测试是发现了至今未发现的错误的测试
- 软件测试是控制软件质量的关键步骤,它是对软件系统规格说明、设计和编码的最后复审。
-
提高软件项目质量
- 强有力的领导
- 理解质量成本
- 质量成本:实施单位为了保证和提高产品质量、满足用户需要而支出的费用,以及因未达到质量标准而产生的一切损失费用的总和。
- 软件过程成熟度是指对过程计划或定义水平、过程实施水平、过程管理和控制水平、过程改善潜力等指标的综合评价。CMM(初始级、可重复级、已定义级、已管理级、优化级,依次从1到5)
- 提供好的工作环境来提高质量
- 努力提供组织在软件开发和项目管理方面的整体成熟度水平,建立IT企业质量管理体系
第七章 项目人力资源管理
- 项目人力资源管理:有效地发挥每个参与项目人员作用的过程,包括
- 组织的计划编制
- 人员获取
- 团队建设
- 人员管理的关键
- 需求、动机和激励
- 层次需求(生理需求、保障或安全需求、社会认同或归属需求、尊重需求、自我实现的需求)
- 保健因素、激励因素
- 力量M=效价V*期望值E
- 影响和能力
- 权利、任务、预算、提升、资金、出发、工作挑战、专门技术、友谊
- 需求、动机和激励
- 计划组织编制
- 包括对项目角色、职责以及报告关系进行识别、分配和归档。
- 人员供给计划(人力资源计划)和招聘过程在人员获取中非常重要。
第八章 项目风险管理
- 风险:结果的不确定性,或者说是一定时期可能发生的各种结果间的差异。
- Risk = 损害Hazard * 对损害暴露度Exposure(内含风险发生的频率和可能性)
- 风险特点(性质):
- 客观性和普遍性
- 某一具体风险发生的偶然性和大量风险发生的必然性
- 风险的可变形
- 风险的多样性和多层次性
- 风险的不利性
- IT项目风险管理:为了最好地达到项目的目标,识别、分析、应对项目生命周期内风险的科学与艺术。
- 包括:风险识别、风险量化、风险应对计划(含风险处理)和风险监控
- 风险识别:确定哪种风险可能影响到软件项目
- 方法:建立风险条目检查表/专家调查法(头脑风暴法和德尔菲法)/流程图法
- 风险量化/风险预测:对已识别的风险要进行估计和评价,主要任务是确定风险发生的概率与后果,风险评价则是确定该风险的经济意义及费与效分析,风险管理的成本一般不应超过潜在的受益。
- 工具和技术:期望货币值EMV、计算风险因子、计划评审技术PERT、模拟(蒙特卡罗分析)法和专家判断(主要是德尔菲法)
- 风险值 = 风险概率 * 风险影响值(收益结果)
- 工具和技术:期望货币值EMV、计算风险因子、计划评审技术PERT、模拟(蒙特卡罗分析)法和专家判断(主要是德尔菲法)
- 风险的应对计划:风险应对是根据风险评估的结果,为消除或者减少风险造成的不良后果而制定的风险应对措施。
- 必须考虑风险的严重程度、项目目标和风险应对措施所花的费用,综合决策选择应对措施,主要有四种方法:
- 风险减轻法:主动采取措施中和风险或采用紧急方案降低风险
- 风险规避:通过变更项目计划(增加时间)消除触发条件
- 风险转移:第三方开发或使用其技术作为替代方案
- 接受风险:风险量不大可以余留风险
- 结果:风险管理计划、应急计划和应急储备
- 必须考虑风险的严重程度、项目目标和风险应对措施所花的费用,综合决策选择应对措施,主要有四种方法:
- 风险监控和风险事项的追踪
- 风险监控:包括对风险发生的监督和对风险管理的监督,前者是对已识别的风险源进行监视和控制,后者是在项目实施过程中监督员工认真执行风险管理的措施。
- 写入RMMP风险驾驭与监控计划
第九章 项目沟通管理
-
沟通的含义、重要性
- 沟通:与他人和群体进行信息传递和交互的过程。软件项目的沟通管理就是要保证项目信息及时且正确地提取、收集、传送、存储以及处置,保证项目组织内部和外部的信息畅通。
- 沟通的重要性:
- 组织外部的良好沟通是组织与外部合作并取得外部支持与帮助的润滑剂
- 组织内部的良好沟通可以改进管理改善人际关系形成组织合力
- 好的沟通可以激励鼓舞人
- 有效沟通可以消除误会增进了解增强团队凝聚力
- 与项目干系人进行有效交互,调整项目的资源和进度
-
沟通计划编制
- 沟通计划的主要内容:
- 项目文档的保存和读取方式
- 统一项目文件格式
- 项目组成员的联系方式
- 工作汇报方式
- 与项目干系人进行沟通分析
-
沟通的层次、方式和渠道
- 沟通的层次
- 低层次沟通:自我防卫型
- 中层次沟通:彼此尊重型
- 高层次沟通:集思广益型
- 沟通的方式
- 正式沟通与非正式沟通
- 上行沟通、下行沟通和平行沟通
- 单向沟通与双向沟通
- 书面沟通与口头沟通
- 言语沟通与体语沟通
-
信息发送
- 四个法则:
- 沟通是一种感知
- 沟通是一种期望
- 沟通产生要求
- 信息不全是沟通
-
实施报告
- 实施报告包括绩效报告、状态报告、进度报告等等,是项目沟通的重要方式
- 三种形式:定期报告、阶段审查、紧急报告
-
如何进行有效的沟通
- 以诚相待、民主作风、保持平等地位、做好听众、双向沟通、信任项目组成员、了解项目组成员
第十章 软件项目采购管理+项目整体管理
-
采购管理的重要性
- 采购:从外界获得产品或服务。
- 组织可以在需要的时候获得专门的技能和技术,还可以提供经营的灵活性,提高责任性。
- 过程:采购计划编制、询价计划编制、询价、承包商选择、合同管理、合同收尾
-
采购计划编制
- 采购计划编制,它确定项目的哪些需要可以通过采用组织外部的产品或服务得到最好的满足
- 采购计划包括:决定是否要采购;如何去采购;采购什么;采购多少;何时去采购
- 输入:项目范围和产品(工作)说明书、市场条件、约束条件和假设
- 工作说明书SOW:对采购要求完成的工作的描述,包括工作范围、工作地点、执行期限、可交付成果时间表、适用标准、验收标准、特殊要求。
-
询价计划与询价、议价
- 询价计划编制,包括拟定采购所需产品的相关文件(询价单和规格、SOW),识别潜在的供应商
- 询价,包括获得报价(乙方)、标书(乙方)、出价(甲方),或合适的工作建议书。
- 询价计划编制输出:包括准备询价所需的文件和确定合同签订的评判标准。
- 最常见的两种询价文件
- 征求建议书RFP
- 报价邀请书RFQ
- 最常见的两种询价文件
-
供应商的评估与选择
-
合同管理和合同收尾
- 合同管理,包括处理与卖方的关系。过程包括监督合同的履行、进行支付、合同修改。
- 合同收尾,即合同的完成和结算,包括任何未决定事宜的解决。这个过程通常包括产品审核、正式验收和收尾以及合同审计。另一个内容是更新反应最终成果的记录和归档将来会用到的信息的管理活动。合同收尾的输出包括合同文件、正式验收和收尾。
-
项目整体管理概述
- 项目整体管理包括在项目生命周期汇总协调所有其他项目管理知识领域所涉及的过程。它确保项目的组成要素(项目的资源)在正确的时间结合在一起,以成功地完成项目。
- 主要过程:
- 项目计划制定(整体性质的计划,不是简单的进度计划)
- 项目计划执行
- 整体变更控制
- 主要过程:
-
项目计划的制定
- 项目计划性质:动态性、灵活性、首要任务是指导项目执行
- 项目干系人分析记录有关干系人的一些重要信息(姓名、角色、实际情况、利益)
-
项目计划的执行
- 项目计划的执行:指管理和运行项目计划中所规定的工作。
- 项目的大部分时间和项目成本(预算)都花在项目执行阶段。
- 工具和技术:工作授权系统、状态审查会议、项目管理软件
-
整体变更控制
- 整体变更控制:指在项目生命周期的整个过程中对变更的识别、评价和管理等工作。
- 变更控制系统:是一个通过正式的、文档化的过程,用来描述项目活动在何时和怎样发生变更。通常包括
- 变更控制委员会CCB
- 配置管理
- 变更信息的沟通过程
- 变更控制委员会是负责项目变更审批的团体。主要职能就是为准备提交的变更请求提供指导、对变更请求作出评价、管理经批准的变更。
第十一章 项目收尾内容
-
项目管理收尾
- 项目收尾是将项目或项目阶段的可交付成果交付的过程,或者是取消项目的过程。
- 包括最后结束项目管理过程的所有活动,正式结束项目,移交已完成或取消的项目
- 还包括核实项目可交付成果的各项活动并形成文件,协调顾客或利益相关人正式验收可交付成果;检查在项目未能完成就终止的理由,并据此形成文件。
-
软件项目审计
- 项目审计:审计委托方对于接受审计的项目和组织依据相关的法规、财务制度、企业的经营方针、管理标准和规章制度,用科学方法和程序审核项目的活动,判断其是否合法、合理和有效,并且从中发现问题,纠正弊端,最终确认项目目标已经实现的一种活动。
-
软件项目验收
- 项目验收:项目结束或项目阶段结束时,项目团队将其成果交付给使用者之前,项目接收方会同项目团队、项目监理等有关方面对项目的工作成果进行审查,核查项目计划所规定范围内的各项工作或活动是否已经完成,应交付的成果是否令人满意。
- 若审查合格,项目成果由项目接受方及时接受,实现投资转入使用。同时,总结经验教训,为后续项目做准备。并将验收结果记录在案,形成文件。
- 意义:
- 标志项目的结束/阶段性结束
- 当事人获得权益终止义务和责任,项目团队可以总结经验接受新的项目任务
- 项目验收是保证合同任务完成,提高质量水平的最后关口
- 整理档案资料可为项目正常使用提供全面系统的技术文件、资料
- 项目验收组织:项目成果进行验收的组成人员及其组织,一般由项目接受方、项目团队和项目监理人员构成。
- 范围包括质量验收和文件资料验收
- 项目质量验收结果:产生质量验收评定报告和项目技术资料
- 项目文件验收结果:项目文件档案和项目文件验收报告
- 范围包括质量验收和文件资料验收
- 项目移交:全部合同收尾后,项目业主与全部项目参与方之间进行所有权移交的过程。
- 实体移交、文件资料移交和项目款项结清后,项目移交方和项目接受方将在项目移交报告上签字,形成项目移交报告。项目移交报告即构成项目移交的结果。
-
软件项目后评价
- 后评价是一个学习过程(总结经验教训),又是增强投资活动工作者责任心的重要手段,主要是为投资决策服务的。
- 评价结果的五个等级:完全成功、成功、部分成功、不成功、失败