您好,欢迎访问三七文档
信息系统项目管理计算机科学技术发展系列讲座第一节概论一、项目的定义与特点1项目的定义项目是在一定的资源约束下完成的既定目标的一次性任务。2项目的特点①项目具有目的性②项目具有寿命周期③项目具有一定独特性④项目都有其固有客户⑤项目组织开放性⑥项目具有较强冲突性⑦项目具有一定风险性二、项目管理的定义与特点1项目管理的定义项目管理是通过项目经理和项目组织机构运用系统理论和方法对项目及其资源进行计划、组织、协调、控制,旨在实现项目的特定目标的管理方法体系。项目管理中的三要素:目标、成本、进度目标、成本、进度三者在项目管理过程中是互相制约的进度成本目标2项目管理的基本特征:(1)项目管理是一项复杂系统工程●项目需要多种学科知识来解决实际问题;●项目执行中的未知因决定项目的不确定性;●项目的临时性给组织管理带来难度;●项目建设是在严格的约束条件下进行的;(2)项目管理具有创造性,充满着权衡●创造带有探索性,有较高的失败率;●项目建设中对进度、费用与质量三者之间的权衡。(3)项目负责人在项目管理中起着非常重要的作用●项目管理的主要原理之一是项目经理负责制;●项目经理有权独立进行计划、资源分配、协凋和控制;●项目经理应有多学科知识、综合管理能力及现场处理能力;●项目经理应有迅速建立一支高效率群体的能力。三、信息系统项目特点(1)信息系统项目的目标不精确,任务的边界模糊,各种技术指标更多地由项目组来定义。(2)信息系统项目客户需求不断激发,导致项目的进度、费用等计划不断更改。(3)信息系统项目是智力密集、劳动密集型,受人力资源影响最大,项目成员结构、责任心、能力和稳定性对信息系统项目的质量以及是否成功有决定性的影响。(4)信息系统项目的生命周期包括系统规划、系统分析、系统设计、系统实施、系统运行和维护五个阶段,其各阶段间的关系密切、相互制约。(5)信息系统项目不是交钥匙工程,项目开发队伍通常要跟踪到系统的使用生命周期结束,因此要求项目开发队伍在较长时间保持稳定。一、信息系统项目计划管理1项目计划用途:项目计划是用来指导组织、实施、协调和控制信息系统建设的重要文件。●项目计划可作为客户与建设团队间解决冲突的依据。●项目计划可使项目成员有明确的分工及工作目标。●项目计划有助于项目成员之间的交流沟通。●项目计划可作为对项目过程控制和工作考核的基准。2项目计划分类:●进度计划●质量保证计划●费用计划●风险管理计划●人力计划3项目计划编制原则:全过程计划(总体计划):应保持大体上稳定,并尽可能留有一定余量和弹性,阶段性计划或子系统计划:按近期精细、远期概略方法展开。第二节项目计划、费用与进度管理4项目计划管理:通常信息系统项目计划的管理包含以下工作:⑴项目计划编制:项目经理或子项目负责人完成。⑵计划执行控制:定期进行检查、督导,并制定项目进度周报、月报等相关制度。⑶计划变更处理:尽可能保证进度、费用和系统目标不变为基础,运用一定的方法和理论调整、处理各种复杂情况。⑷计划文档管理:计划文档应包含:各类项目计划文本;计划执行检查情况记录及统计;计划变更、调整记录等。二、信息系统项目的成本估算1信息系统项目成本构成信息系统项目的成本随着系统的类型、范围及功能的不同而有较大差异。但是,可以从信息系统生命周期的各阶段划分为开发成本和运行维护成本两大类:信息系统成本开发成本运行维护成本分析、设计费用系统实施费用管理费用系统规划系统分析系统设计系统开发成本编程与调试硬件平台费用系统软件费用网络施工费用数据整理录入系统运行费用行政管理费用维护费用人员费用消耗材料费用固定资产折旧硬件维护费用软件维护费用二次开发费用技术资料获取人员培训费用系统平台成本其它费用信息系统项目的成本估算通常注意以下三个原则:△真实性与预见性原则△透明性与适应性原则《信息经济学教程》(陈禹主编。清华出版社)△方便性与稳定性原则信息系统项目成本估算时,最难确定的是软件开发成本,所以成本估算的重点是软件开发成本。2软件开发规模与成本估算的方法常用的四种估算方法:(1)类比估算法:参照已完成类似项目,估算软件开发成本和工作量。(2)分解估算法:将项目分解成若干子系统,先估算每个子系统成本和工作量,再估算整个软件开发成本。(3)周期估算法:将系统按系统生命周期分解为若干阶段并估算,然后汇总出总工作量和成本。(4)经验估算法:根据实验或历史数据给出软件开发工作量或成本的经验估算公式。注意:采用分解法估算时应考虑系统集成时需要的工作量。信息系统开发成本测算的一般过程:以往项目数据待开发软件特征硬件与系统软件特征以往项目数据对以往项目数据的分析软件开发规模测算硬件和系统软件计划培训和系统切换计划软件开发成本测算人力和时间的分配灵敏度与风险分析经验数据环境因素安装测试的人力和时间培训切换的人力和时间人力、时间测算数据人力、进度及其他资源分配结果3软件规模度量方法(1)软件代码行的方式用代码行(LOC)数表示软件开发规模十分自然、直观。用代码行数不仅能度量软件的规模,而且可以度量软件开发的生产率、每行代码的平均成本、千行代码出错率等。软件开发的生产率:Pl=L/E其中:L软件总代码行数。E软件的总工作量,用人/月(PM)度量。Pl开发生产率,每人月完成代码行数(LOC/PM)。每行代码的平均成本:Cl=S/L其中:S开发的总成本,用人民币元或美元度量。Cl每行代码平均成本,人民币元(或美元)/代码行。用软件代码行估算软件的开发规模直观、简单易行。其缺点为:①代码行数估算依赖于开发工具的功能和表达能力;②项目开发初期估算它的代码行数十分困难;③用代码行估算方法会对需要设计精巧的项目产生不利影响;④代码行估算不适宜非过程式的程序设计;(2)软件功能点的方式功能点度量是涉及多种因素的间接度量方式。该方法用6个信息量的“加权和”CT和14个复杂性调节值Fi(i=1…14)。在系统分析初期就能估算出软件开发的规模。计算功能点FP参数公式:FP=CT﹙0.65+0.0l﹚其中:CT为信息量,按表1计算,Fi为影响因子,由表2给出,Fi取值为:0至5,当Fi=0时,表示否定或不起作用,Fi=5时,表示肯定或Fi影响最大。为复杂度,它是Fi(i=1…14)的类加和。141iiF141iiFCT的度量(表1):()()()算法()()外部界面数()()文件数()()用户查询数()()用户输出数()()用户输入数加权结果权值值测量参数CT3*7*7*4*5*4*Fi定值表(表2)的修改和使用吗?系统的设计有利于用户织的多次安装吗?系统的设计支持不同组吗?设计中包括转换和安装代码设计可重用吗??系统的内部处理复杂吗件、查询复杂吗?系统的输入、输出、文件吗?系统需要联机更新主文复杂界面或操作吗?联机数据入口需要建造数据入口吗?系统需要联机(操作环境下运行?系统是否在一个实用的性能是临界状态吗??系统有分布处理功能吗系统需要数据通信吗?复原吗?系统需要可靠的备份和,,,,,取值问题序号1413121110987)654321543210Filineon用功能点也可以定义软件的开发效率、成本等度量:软件开发的生产率:Pf=FP/E其中;Pf表示每人月完成的功能点数。每功能点的平均开发成本:Cf=S/fp其中:Cf为每功能点的平均成本;S为开发总成本;采用功能点度量的优点:(1)与程序设计工具无关,适用于各种语言环境,这对于面向对象的开发方式尤为有用;(2)由于项目启动时就能基本上确定系统的输入、输出等参数,所以功能点度量能用于软件开发成本在初期预估。采用功能点度量的缺点:(1)该方法涉及到的主观因素比较多,如Fi的选取与评估人的经验和态度有较大的关系。(2)计算公式中的FP值的物理意义不直观,不易理解。4软件的经验估算模型应用软件的估算模型是根据以前完成项目的实际情况导出的,这些模型的结果仅有一定的参考价值。下面将介绍两个常用的估算模型:CoCoMo模型和Putnam模型。(1)CoCoMo模型CoCoMo模型是“构造性成本模型”(Constructivecostmodel,简称CoCoMo模型)的英文缩写,分为基本、中间、详细三个层次,分别用于软件开发的不同阶段。基本CoCoMo模型:用于系统开发初期,估算整个系统的工作量包括软件维护,和软件开发所需要的时间;中间CoCoMo模型:用于估算各个子系统的工作量和开发时间;详细CoCoMo模型:用于估算独立的软部件,如子系统内部的各个模块。本课程,我们只介绍基本CoCoMo的情况,关于中间和详细CoCoMo模型可以阅读BoehmBW.的著作《SoftwareEngineeringEconomics》(Prentice-Hall,1981)。基本CoCoMo模型是静态、单变量模型,具有下列形式E=aLbD=cEdC=E其中:L是项目的代码行估计值,单位是千行代码(KLOC)。E表示工作量,单位是人月(PM)。D表示开发时间,单位为月。C表示开发成本,单位是万元。表示每人月的人力成本,单位是万元/人月。a,b,c,d是常数。不同软件类型a,b,c,d取值如下表所示:软件类型abcd适用范围组织型2.41.052.50.38各类应用程序半独立型3.01.122.50.35各类实用程序、编译程序等嵌入型3.61.202.50.32实时处理、控制程序、操作系统(2)Putnam模型Putnam模型是为大型软件项目(一般30人年以上)进行估算的模型。它是动态多变量的模型,适用于软件开发各个阶段。估算模型以项目实测数据为基础,描述开发工作量、开发时间和软件代码行数之间的关系。相应的方程为:L=CkE1/3td4/3其中:L表示源程序代码行数。E表示工作量(以人年计,包括维护)。td表示开发时间(以年计)。Ck表示技术状态常数,它反映“妨碍程序员进展的限制”。相应的方程为:L=CkE1/3td4/3技术状态常数Ck的取值:Ck的典型值开发环境开发环境举例2000差没有系统的开发方法,缺乏初期文档和复审,批处理方式8000好有合适开发方法,有充分的文档和复审,交互执行方式11000优有自动开发工具和技术由上面方程可得到如下公式:E=L3/(Ck3td4)C=E其中,C表示项目开发总成本;表示每人年的人力成本。(3)软件的自动估算工具以上介绍的经验估算模型已用软件,成为自动估算工具。项目管理可能够使用这些工具自动估算项目的成本和工作量,还可对人员配置和交付日期等进行估计。通常需要管理者提供以下数据:(1)定量估算软件项目规模,如:总代码行数或功能点数据;(2)定性地说明项目特性,如复杂性、可靠性或事件的关键性等;(3)开发人员和(或)开发环境的描述。根据这些数据,自动估算工具即可提供:项目所需的工作量、成本、人员配备、开发进度和相应风险等数据。目前几种具有代表性的自动估算工具:工具名称产品制作公司工具基于原理BYLGordon集团基于CoCoMo模型WICOMOWang研究所基于CoCoMo模型DECPlanDEC公司基于CoCoMo模型SLIM------基于Putnam模型SPQR/20------基于功能点模型ESTIMACS------基于功能点模型三、信息系统项目的进度管理1建立项目成员责任矩阵根据以上对项目工作量、成本的估算,项目经理应组织项目团队,并绘制专业领域技术编制表,建立工作分析结构(WBS),在此基础上建立项目成员责任矩阵,落实任务。(1)专业领域技术编制表每个项目都需要多种技术与工作任务相匹配,分析、掌握项目组成员技术特长,对项目管理者十分重要。专业领域技术编制表的X轴上为技术及专业领域,Y轴上为项目成员,两轴对应格为分数(最高分取专业领域个数)。例如:人员领域系统分析程序设计系统测试数据库技术硬件技术XXX54312XXX55423XXX23435XXX25544XXX14553(2)工作分析结构(WBS)工作分析结构是指将一个信息系统项目分解成易于管理的几部分或几个细目,细目再展开成子细目,任何分支最低层的细目叫工作包。待建系统可以先按生
本文标题:信息系统项目管理
链接地址:https://www.777doc.com/doc-766543 .html