项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的努力。
生活中的项目
大项目
1.为什么那么多的信息化项目都失败了?
2.为什么有那么多的豆腐渣工程?
3.为什么房地产公司注册资金那么少,而承担的项目如此之大?——巨人
4.为什么房地产刹车失灵?为什么银行的贷款收不回来?
5.为什么很多工程人员流动非常之大,工期一拖再拖?为什么民工会走向极端?
项目管理领域,目前有两个广为流行的知识体系:
最重要的是第一个,项目管理的知识体系
1.项目集成管理(Project Integration Management)
2.项目范围管理(Project Scope Management)
3.项目进度管理(Project Time Management)
4.项目成本管理(Project Cost Management)
5.项目质量管理(Project Quality Management)
6.项目人力资源管理(Project Human Resource Management)
7.项目沟通管理(Project Communication Management)
8.项目风险管理(Project Risk Management)
9.项目采购管理(Project Procurement Management)
10.项目干系人管理
PMBOK五大过程组是:启动过程组、规划过程组、执行过程组、监控过程组、收尾过程组。
1、启动过程组:作用是设定项目目标,让项目团队有事可做;
2、规划过程组:作用是制定工作路线,让项目团队“有法可依”;
3、执行过程组:作用是“按图索骥”,让项目团队“有法必依”;
4、监控过程组:作用是测量项目绩效,让项目团队“违法必究”,并且尽量做到“防患于未然”;
5、收尾过程组:作用是了结项目(阶段)“恩怨”,让一切圆满。
1.项目业务分析 (业务模型 、需求、设计) EA Visio 2.原型界面和流程设计 Axure RP 3.数据库设计 ERStudio 4.配置管理 SVN Gitee Git 5.进度计划 Project 6.项目开发过程管理(项目需求、进度任务、缺陷管理) 禅道 7.项目经营管理:资金、合同、风险、成本管理。 自行开发
EA 可以用来设计用例和领域模型、类图、流程图。
Axure画出功能页面
ERStudio 或者是 Navicat
SVN/GitHub/Gitee/GitLab
前言
1.项目是啥:西游记,最成功的项目
2.干什么:【你所认为的需求】
3.谁来干:自组织团队的组建(项目需要一个优秀的团队)
4.怎么干:指路明灯:项目过程标准:CMMI的讲解,以吃饭为例子,串起CMMI,PMBOK,ISO9000等
1.概念:项目范围管理包含一系列子过程,用以确保项目包含且只包含达到项目成功所必需完成的工作。
概念解释:
2.范围管理常用的方法是:WBS(工作分解结构)
主要介绍了需求工程的内容
3.2.1需求工程含义
1.需求工程:是一门学科,专门用于需求的。
3.2.2需求工程内容
1.需求工程内容:包括需求开发和需求管理。
需求开发:
需求管理:
3.2.3需求的含义
软件需求并不是要解决软件系统“如何做”的问题,它的根本任务在于解决目标系统“做什么”的问题。
功能需求是干什么,完成什么样的操作
性能需求是产品并发数,响应时间等等
1.需求的含义:需求是指用户对软件的功能和性能的要求。
3.2.4开发者对待需求工程的态度
领先型,是需求工程的最高境界。开发者发掘了连用户自己都没有意识到的需求,导致用户跟着新产品跑而不是新产品围着用户转,这叫引导消费。
需求工程做到这个程度上,才能使产品立于不败之地,长盛不衰。
3.2.5需求类型
1.需求类型:业务需求、用户需求和功能需求。
3.3.1需求开发过程中的四个主要活动
1.需求开发中的四个主要活动
3.3.2需求管理的过程
3.3.3需求分析说明书和需求规格说明书
https://www.jianshu.com/p/db08
3.3.4需求获取方法
访谈和调研
专题讨论会
头脑风暴:也叫做智力激励法,自由思考法
场景串联
3.3.5需求分析
1.概念:是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么。
解释:
3.3.6需求验证(评审)
不论是复杂的项目还是简单的项目,需求分析员和用户都有可能误解需求。所以,需求验证(需求评审)工作必不可少。
3.4.1需求变更的原因
3.4.2需求变更的影响
3.4.3需求变更的处理原则
3.4.4需求变更的管理流程
1、提出变更申请
2、审批
3、修改需求文档
4、重新进行需求确认
5、变更结束
3.5.1WBS(任务分解结构)
1.简介:
2.WBS的组成部分
3.5.2结构化编码
编码是最显著和最关键的WBS构成因子,首先编码用于将WBS彻底的结构化。 通过编码体系,我们可以很容易识别WBS元素的层级关系、分组类别和特性。
3.5.3工作包
工作包(work package)是WBS的最底层元素,一般的工作包是最小的“可交付成果”,这些可交付成果很容易识别出完成它的活动、成本和组织以及资源信息。
3.5.4WBS词典概念
WBS词典是在创建工作分解结构的过程中编制的,是工作分解结构的支持性文件,用来对工作分解结构中的控制账户和工作包做详细解释。
解释的详细程度可以根据具体需要加以确定。
控制账户是工作分解结构中的要素,是项目经理对项目的管理控制点,即针对控制账户的要素对项目的执行情况进行检查与考核。可以把工作包作为控制账户,也可以把更高层的要素作为控制账户。
3.5.5WBS词典的属性
WBS词典:包括编码、工作包描述(内容)、成本预算、时间安排、质量标准或要求、责任人或部门或外部单位(委托项目)、资源配置情况、其他属性等。
3.5.6WBS的主要用途
项目WBS的主要用途:
1.明确并准确说明项目的范围
2.为各独立单元分配人员,进行责任的划分和指派
3.对各单元进行时间、费用和资源需要量的估算
4.为计划、预算、进度安排和费用控制奠定基础
5.将项目工作与项目的财务和会计账目建立联系
6.确定工作内容和工作顺序
3.5.7任务分解的基本步骤
任务分解的基本步骤:
1.确认并分解项目的组成要素(WBS编号)
2.确定分解标准
3.确定分解是否详细
4.确定项目交付成果(可以编制WBS字典)
5.验证分解的正确性
3.5.8工作分解结构应把握的原则
工作结构分解应把握的原则:
•在各层次上保持项目的完整性,避免遗漏必要的组成部分。
•一个工作单元只能从属于某个上层单元,避免交叉从属。
•相同层次的工作单元应用相同性质。
•工作单元应能分开不同的责任者和不同工作内容。
•便于项目管理计划、控制的管理需要。
•最底层工作应该具有可比性,是可管理的,可定量检查的。
•应包括项目管理工作(因为是项目具体工作的一部分),包括分包出去的工作。
4.1.1项目成本管理
1.项目成本管理包括为使项目在批准的预算内完成而对成本进行规划、估算、预算、融资、筹资、管理和控制的各个过程,从而确保项目在批准的预算内完工。项目成本管理过程包括:
4.1.2一个重要的流程
规模估算->工作量估算->开发工期估算->成本估算
4.2.1衡量软件的单位
•源代码行数(Line of Code,LOC)
•功能点数(Function Point,FP)
4.2.2规模估算–德尔菲(Delphi)方法
1.协调员给每位专家一份规格说明书和一张记录估计值的表格。
2.协调员召集小组会议,专家与协调员以及专家之间对估计问题进行讨论。
3.专家无记名地填写表格。
4.协调员对专家填写在表上的估计结果进行小结。
5.协调员召集小组会议,让专家对差异很大的估计项进行讨论。
6.专家重新无记名地填写表格,该过程要适当地重复多轮。
4.2.3规模估算–类比估算法(自顶向下估算法)
1.概念:类比估算法,又称自顶向下估算法(Top Down Estimates)。
2.基本步骤
3.计算等价代码行
等价代码行=[(重新设计%+重新编码%+重新测试%)/3]×已有代码
4.3.1工作量
1.工作量:指在软件项目建设过程中需要投入的人力和时间,一般用人月数进行度量。
4.3.2工作量的计算公式
工作量估计公式:
LOC:源代码的行数
工作量(人月) = {规模(LOC) / 生产率(LOC/人天)} / 22(天/月)
参考历史项目数据中各阶段工作量所占百分比,可估算出各阶段工作量:
各阶段工作量(人月)= 总工作量(人月)× 各阶段工作量的百分比
4.3.3项目建设阶段
项目建设阶段一般可分为:
4.3.4工作量估算-普特纳姆模型
这是1978年普特纳姆(L. H. Pumam)提出的,一种动态多变量模型,通用的形式为:
4.3.5工作量估算-经验估算模型(COCOMO模型)
lCOCOMO模型主要从两个方面来构建:以源代码行(Single Line Of Code,SLOC)统计的软件规模,成本驱动因子(Cost Driver),这些因素可以被归入产品,平台,人员和项目四个方面。
4.3.5工作量估算-功能点计算
1.功能点计算:软件功能计算中一旦估算出应用程序中每个功能要素的数量后,就可以将每个计数与一个复杂度值(加权因子)相乘,最后进行合计,算出一个初步的总的功能点数(Function Points Count,UFC)。
4.3.6工作量估算-开发阶段工作量估算
可以采用的估算方法有:
功能点估算法
任务估算法
4.3.7工作量估算-维护阶段工作量估算
1.维护阶段:
4.5.1成本估算概念
1.成本估算:是指对完成项目各项活动所必须的各种资源的成本做出的估算。
4.5.2常见的成本
咨询费:软件项目立项前期,请专业机构或者专家进行技术咨询、可行性分析、需求分析,造价评估、方案设计、项目招标代理等方面工作所发生的费用。
建设费:包括支付给软件开发商的进行软件开发、实施、维护等方面工作的费用。主要依据工作量(完成该项目需要投入的人力,以人月度量)和人月成本进行估算。
服务费:
5.1.1项目的进度管理的过程组
项目的进度管理包含两个过程组,规划和监控
规划过程组:
监控过程组:
5.1.2项目进度管理两大部分内容
项目进度管理包括两大部分的内容:
5.1.3规划进度管理
甘特图、里程碑计划、关键路径、网络图等知识点
5.2.1甘特图
1.概念:
2.甘特图类型:
3.绘制甘特图步骤
4.甘特图优缺点
优点:
缺点:
5.2.2网络图法
1.简介:
2.网络图类型:网络图按其表示方法的不同可分为两种。
双代号的工作是线来表示,单代号的是用节点进行表示的
5.2.3网络图法---双代号AOA
双代号网络图(Active On the Arrow,AOA)中的工作由带有两个节点的箭线来表示
5.2.4网络图法---单代号-AON或前导图法-PDM
单代号网络图(Activity On Node,AON)中的工作用节点表示
5.2.5里程碑图
1.里程碑法(Milestone)也称可交付成果法,是在横道图上或网络图上标示出一些关键事项。
2.里程碑图:里程碑图仅标出主要可交付成果和关键外部接口的计划开始或完成日期。
3.里程碑图的绘制步骤:
(1)认可最终的里程碑。
(2)集体讨论所有可能的里程碑。
(3)审核备选里程碑。
(4)对结果路径进行实验。
(5)用连线表示里程碑之间的逻辑关系。
(6)确定最终的里程碑计划。
5.2.6三个与时间相关的重要概念-检查点,里程碑和基线
软件开发项目生命周期中有三个与时间相关的重要概念:检查点、里程碑、基线
三者的关系:重要的检查点是里程碑,重要的需要客户确认的里程碑就是基线。
5.3.1任务历时估算
1.什么是任务历时估算?
2.常用的任务历时估算的方法
5.3.2参数估算法
参数估算法也称为定额估算法,是一种基于历史数据和项目参数,使用某种算法来计算成本或持续时间的估算技术。公式:
5.3.3任务历时估算---经验导出模型
经验导出模型是根据大量的数据统计分析结果得出的经验公式:
5.3.4任务历时估算---PERT工程评估技术
1.简介:
5.3.5任务历时估算---PERT工程评估技术的三个重要概念
需要明确三个概念:事件、活动和关键路线。
1、事件(Events)表示主要活动结束的那一点;
2、活动(Activities)表示从一个事件到另一个事件之间的过程;
3、关键路线(Critical Path)是PERT网络中花费时间最长的事件和活动的序列。
5.3.6任务历时估算---PERT工程评估技术的计算方法
1.工程评估评审技术(PERT)-加权算法
2.对于一个项目而言,需要估算网络图中串联的若干活动的历时。
期望值和标准差的计算方法如下:
期望值:
方差:
标准差:
3.根据概率分布理论,对于遵循正态概率分布的均值E而言,"E"±𝜎的概率分布是68.3%, "E"±2𝜎的概率分布是95.5%, "E"±3𝜎的概率分布是99.7%。
5.3.5任务历时估算---类比估算法
类比估算是一种使用相似活动或项目的历史数据估算当前活动或项目的持续时间或成本的技术。
类比估算以过去类似项目的参数值(如持续时间、预算、规模、质量和复杂性等)为基础来估算未来项目的同类参数或指标。
相对于其他估算技术,类比估算通常成本较低、耗时较少,但准确性也较低。
5.4.1进度计划编排---关键路径法
1.关键路径法(Critical Path Method,CPM)是一项用于确定软件项目的起始时间和完工时间的方法。 CPM是一种最常用的数学分析技术,即根据指定的网络顺序逻辑关系和单一的历时估算,计算每一个活动的单一的、确定的最早和最迟开始和完成日期。
5.4.2进度计划编排---关键路径法特征
关键路径具有下列特征:
5.4.3进度计划编排---关键路径法例题
1.题目内容:字母A、B、C、D、E、F、G、H、I、J代表了项目中需要进行的子项目或工作包,连线箭头则表明了工作包之间的关系,节点数字1,2,3,4,5,6,7,8则表明的是一种状况,从1开始,到8结束,中间的数字则表明上一工作包的结束和下一工作包的开始。
解答:
关键路径是该图中最长的路径,即路径2,由B,E,H,J组成,历时16天。
关键路径反映了完成项目需要的最短时间,其所有的组成工作包的执行情况都应给与密切关注,避免项目的延期完成。
关键活动在资源管理上享有最高的优先权。
5.4.3进度计划编排---关键路径法和计划评审技术(PERT)比较
1.计划评审技术(PERT)和关键路径法(CPM)基本上一样,唯一的区别是计划评审技术的每个活动的工期不是确定的,而是包括了悲观值,乐观值和最有可能值三个值。
2.关键路径法是用寻找关键路径及其时间长度来确定项目的完成日期与总工期的方法。
3.根据绘制方法的不同,关键路径法可以分为两种:即箭线图(ADM)和前导图(PDM)。
6.1.1三体系认证是什么
三体系认证:即ISO9001认证、ISO14001认证和OHSAS18001认证的统称。
6.1.2质量管理的8大原则
6.1.3推行ISO9001有如下五个必不可少的过程
知识准备-立法-宣贯-执行-监督、改进。
6.1.4质量的定义
ISO9000的定义是:一组固有特性满足需求的程度。 需求指明示的、通常隐含的或必须履行的需求或期望 特性是指可区分的特征,可以是固有的或赋予的、定性的或定量的、有各种类别的(物理的、感官的、行为的、时间的、功能的等)
一般说来,质量的内涵包括功能、美学性、特殊性、一致性、安全性、可靠性、寿命、售后服务等多方面。
6.1.5项目的质量管理
项目质量管理主要包括质量规划、质量保证及质量控制等三个过程。
6.1.6质量的形成
质量形成于产品或者服务的开发过程中,而不是事后的检查(测试)把关等。
6.1.7质量成本
质量成本是由于产品的第一次工作不正常而衍生的附加花费,包括两部分
6.1.8质量管理的对象
过程的质量 产品的质量
6.2.1质量规划
确定项目应达到的质量标准(目标) 决定如何满足质量标准的计划安排和方法
6.2.2质量计划方法
6.3.1质量保证的要点
1.对项目进行评价
2.推测能否达到质量指标
3.建立对项目的信心
6.3.2质量保证活动-审计
6.3.3软件项目中常用的质量保证活动
项目执行过程审计 项目产品审计
6.4.1质量控制要点
1.检查工作结果
2.按照标准跟踪检查
3.确定措施消灭质量问题
6.4.2质量控制活动
1.1.1识别功能点的重要
功能点估算法是软件项目管理众多知识中比较有技术含量的一个。在软件项目管理中项目计划制定的优劣直接关系到项目的成败,项目计划中对项目范围的估算又尤为重要,如果项目负责人对项目的规模没有一个比较客观的认识,没有对工作量、所需资源、完工时间等因素进行估算,那么项目计划也就没有存在的意义。
1.1.2适用范围
适合: -以数据和交互处理为中心 -以功能多少为主要造价格制约因素 -如:电子政务、银行电信的用户和业务管理系统 不适合: -数据处理过程复杂 -创意型软件 -对性能和质量有特殊要求的 -如:视频和图像处理软件,杀毒软件、网络游戏
1.1.3是被项目的类型
国际IFPUG组织将软件项目分为三类,功能点估算法适用于任何一类项目:
从使用者的角度,而非制造者的角度
1.2.1估算步骤
具体步骤包括:
1.1.1什么是”挣值“
白话:活儿干了一部分,实际干了的这部分活儿按计划应该花多少钱,是挣值。
1.挣值(EV,Earned Value),指项目实施过程中某阶段实际完成工作量及按预算定额计算出来的工时(或费用)。又叫已完成工作量的预算成本(BCWP,Budgeted Cost for Work Performed)。
2.挣值的计算公式:
EV=BCWP=已完成工作量*预算定额
1.1.2挣值的案例
白话:活儿干了一部分,实际干了的这部分活儿按计划应该花多少钱,就是挣值。
1.问:按计划做一套煎饼果子要5元,今天做了100套,挣值是多少?
2.问:按计划,做一套煎饼果子要5块钱,不过今天鸡蛋便宜,现在实际上一套成本只要4块钱。原计划今天做100套,实际上偷了会儿懒儿,只做了90套。挣值是多少?
1.2.1ACWP(已完成工作量的实际费用
ACWP白话解释:到目前为止所完成工作的实际成本。它表示“到日期为止所完成工作的实际成本。”说明了“到该日期为止实际花了多少钱”) 如:4*90=360
1.ACWP(已完成工作量的实际费用):ACWP指项目实施过程中某阶段实际完成的工作量所消耗的工时(或费用)。ACWP主要反映项目执行的实际消耗指标。(ACMP也称为AC,即实际成本)
1.2.2BCWP(已完工作量的预算成本)
BCWP白话解释:已完成工作的预算成本,到目前为止已经完成的工作的原来预期成本。
它表示“到该日期为止完成了多少工作?” 如:5*90=450
BCWP(已完工作量的预算成本):BCWP是指项目实施过程中某阶段按实际完成工作量及按预算定额计算出来的费用,即挣得值(Earned Value),或称挣值、盈值和挣得值。(BCMP也称为EV,即挣值)
BCWP的计算公式为:BCWP=已完工作量×预算定额。(实质是将已完成的工作量用预算费用来度量)
1.2.3BCWS(计划工作量的预算费用)
BCWS白话解释:到目前为止的总预算成本。
它表示“到目前为止原来计划成本是多少?”或者“到该日期为止应该完成的工作是多少?” 如:5*100=500
BCWS(计划工作量的预算费用):BCWS是指项目实施过程中某阶段计划要求完成的工作量所需的预算费用。计算公式为:BCWS=计划工作量×预算定额。BCWS主要是反映进度计划应当完成的工作量(用费用表示)。
BCWS是与时间相联系的,当考虑资金累计曲线时,是在 项目预算s曲线上的某一点的值。当考虑某一项作业或某一时间段时,例如某一月份,bcws是该作业或该月份包含作业的预算费用。(BCWS也称为PV,即计划值)
四个评价指标:进度偏差(SV)、成本偏差(CV)、成本执行指数(CPI)和进度执行指标(SPI)
1.3.1进度偏差
进度偏差(SV,Schedule Variance)SV是指检查日期EV和PV之间的差异: SV=EV-PV=BCWP-BCWS 当SV为正值时,表示进度提前; 当SV等于零时,表示实际与计划相符。 当SV为负值时,表示进度延误。
1.3.2成本偏差
成本偏差(CV,Cost Variance)。CV是指检查期间EV和AC之间的差异: CV=EV-AC=BCWP-ACWP 当CV为正值时,表示实际消耗的人工(或费用)低于预算值,即有结余或效率高; 当CV等于零时,表示实际消耗的人工(或费用)等预算值; 当CV为负值时,表示实际消耗的人工(或费用)超出预算值或超支。
1.3.3成本执行指数(CPI)
费用执行指标(CPI,Cost Performed Index)。指预算费用与实际费用之比(或工时值之比): CPI=EV/AC=BCWP/ACWP 当CPI>1时,表示低于预算,即实际费用低于预算费用; 当CPI=1时,表示实际费用与预算费用温和; 当CPI<1时,表示超出预算,即实际费用高于预算费用;
1.3.4和进度执行指标(SPI)
进度绩效指标(Shedul Performed Index)。指项目挣值与计划值之比: SPI=EV/PV=BCWP/BCWS ,
当SPI>1时,表示进度超前 当SPI=1时,表示实际进度与计划进度相同 当SPI<1时,表示进度延误
项目经理需要下列首要数据: