信息系统建设的项目管理.ppt
《信息系统建设的项目管理.ppt》由会员分享,可在线阅读,更多相关《信息系统建设的项目管理.ppt(87页珍藏版)》请在三一办公上搜索。
1、第五章信息系统建设的项目管理,一、信息系统与项目管理,二、信息系统项目的计划、费用与进度管理,三、信息系统项目的人员管理,四、信息系统建设的质量管理,本节内容:,一、信息系统与项目管理,1、项目的定义与特点,2、项目管理的定义与特点,3、信息系统项目的特点,通俗地讲,项目就是在一定的资源约束下完成既定目标的一次性任务。这个定义包含三层意思:一定资源约束、一定目标、一次性任务。这里的资源包括时间资源、经费资源、人力资源、物质资源,比如工具、设备等,项目具有目的性。项目具有寿命周期。项目具有一定的独特性。每个项目都有客户。项目组织具有临时性和开放性。项目具有较强的冲突性。项目包含一定的不确定性。,
2、1、项目的定义与特点,2、项目管理的定义与特点,项目管理是通过项目经理和项目组织的努力,运用系统理论和方法对项目及其资源进行计划、组织、协调、控制,旨在实现项目的特定目标的管理方法体系。,如果将时间从资源中单列出来,称做进度,而将其他资源都看作可以通过采购获得从而表现为费用或成本的话,那么我们就可以给项目下这么一个定义:在一定的进度和成本约束下,为实现既定的任务,并达到一定的质量,所进行的一次性的任务。,一般来讲,目标、成本、进度三者是互相制约的,其关系如图5-2所示。当进度要求不变时,质量要求越高或者任务要求越多,则成本越高;当不考虑成本时,质量要求越高或任务要求越多,一般进度越慢;当质量和
3、任务的要求都不变时,进度过快或过慢都会导致成本的增加。项目管理的目的是谋求(任务)多、(进度)快、(质量)好、(成本)省的有机统一。,当然,对于一个确定的项目,其任务的范围是确定的。项目管理就演变为在一定的任务范围下如何处理好质量、进度与成本三者关系的问题,也就是要处理好好中求快和好中求省的问题。项目管理既是一门科学又是一门艺术。之所以被看作一门科学是因为项目管理是以各种图表、数学计算以及其他技术手段为依据的;但是项目管理也受到人际关系因素以及组织因素的制约,因而相互沟通、协商谈判及解决矛盾等即为项目管理的“艺术”。,这门“艺术”具有其自身的三个基本特点:项目管理是一项复杂工作。项目管理具有创
4、造性,充满着权衡。项目负责人(或称项目经理)在项目管理中起着非常重要的作用。,3、信息系统项目的特点,信息系统的建设是一类项目。因为信息系统的建设符合项目的几个特点:首先信息系统的建设是一次性的任务,有一定的任务范围和质量要求,有时间或进度的要求,有经费或资源的限制。信息系统具有生命周期,这与项目具有寿命周期也是一致的。所以信息系统的建设也是一类项目的建设过程,可以用项目管理的思想和方法来指导信息系统的建设。,信息系统的生命周期包括系统规划、系统分析、系统设计、系统实施、系统运行和维护五个阶段。显然,信息系统项目也可按照上述五个阶段进行管理,依次制定各阶段的任务范围、进度、费用安排以及质量要求
5、。从具体构成来看,信息系统项目又可分为客户需求分析、应用软件开发、网络规划与设计、设备采购以及系统调试与集成等多项内容,在上述几项内容中,首先是客户需求分析,在此基础上进行应用软件开发和网络规划设计,最后才是设备采购和系统调试与集成。,在随信息系统项目进行基本分析之后,我们来看看信息系统项目的特点:,(1)信息系统项目的目标是不精确的,任务的边界是模糊的,质量要求更多是由项目团队来定义的。(2)信息系统项目进行过程中,客户的需求会不断被激发,被不断地进一步明确,导致项目的进度、费用等计划不断更改。(3)信息系统项目是智力密集、劳动密集型的项目,受人力资源影响最大,项目成员的结构、责任心、能力和
6、稳定性对信息系统项目的质量以及是否成功有决定性的影响。,信息系统项目的计划是用来指导组织、实施、协调和控制信息系统建设的文件,制定一个良好的计划有诸多好处,比如可以将计划的假设与前提写成书面文件,以备发生变更时考察;有助于项目成员之间的交流沟通,有助于大家统一认识;可以确定对项目进行控制和考核工作业绩的基准。本节内容:1、信息系统项目成本的构成及预算的一般过程2、软件开发规模与成本估算方法3、信息系统项目的进度和成本计划4、信息系统项目计划的变更管理,二、信息系统项目的计划、费用与进度管理,1、信息系统项目成本的构成及预算的一般过程,信息系统项目的成本随着系统的类型、范围及功能要求的不同而异。
7、但是,我们可以从信息系统生命周期的各阶段划分为开发成本与运行维护成本两大类,在各类中又根据费用的目的进行逐级细分,如图5-3所示。,其中,系统开发成本又可分为软件开发成本、硬件成本和其他成本三大类。信息系统项目的成本测算,就是根据待开发的信息系统的成本特征以及当前能够获得的有关数据和情况,运用定量和定性分析方法对信息系统生命周期各阶段的成本水平和变动趋势做出尽可能科学的估计。在图5-3中,最难确定的是开发成本中的软件开发成本,而硬件成本和其他成本相对容易估算出来。至于运行维护成本,则可以根据开发成本与运行维护成本比值的经验数据和测算出来的开发成本一起计算。并且,对于信息系统项目的用户来讲,项目
8、开发成本的不确定性因素较大,而项目的运行维护成本由于多次发生,且在自身的使用中发生,相对来讲容易控制一些。所以信息系统项目成本测算的重点是软件开发成本。,图5-4给出了信息系统开发成本测算的一般过程,从图中可以看出,信息系统开发成本测算首先应该建立在对过去项目成本情况进行数据分析的基础上,历史的经验和教训对于成本测算的各个阶段均有参考价值;其次,进行硬件成本及用户方面(培训、数据收集、系统转换等)成本的测算,这是因为它们对软件成本的分析有着一定的影响。比如开发人员对所采用的硬件或数据库系统的使用经验将明显影响软件生产率,从而影响着软件成本,对此先做测算可以减少软件成本测算中的不确定因数。然后是
9、软件成本测算,通常分两步走:第一步,测算软件的规模或程序量;第二步,利用有关的经验参数模型测算出该种规模的软件成本。当然,也可运用专家判定等方法将上述两步合并直接测算成本。在测算软件开发成本、硬件成本和其他成本的同时,对各种任务所需 的人力、时间等资源也做出安排,即为人力计划和进度计划。,软件开发成本测算出来以后,与硬件成本和其他成本累加则构成信息系统项目的开发成本,在此基础上,根据运行维护成本与开发成本之间比值的经验系数导出信息系统的运行维护成本。开发成本与运行维护成本之和即为信息系统项目的总成本。,显然,信息系统项目成本的测算重点在于软件开发成本的测算,软件开发成本的测算又离不开软件规模的
10、测算。所以,我们应对软件的规模与成本估算的方法予以讨论。,2、软件开发规模与成本估算的方法,软件度量的两种典型方式 软件代码行的方式 用软件的代码行(LOC)数表示软件开发的规模是十分自然和直观的。代码行数可以用人工或软件工具直接测量。利用代码行数不仅能度量软件的规模,而且还可以度量软件开发的生产率、开发每行代码的平均成本、文档与代码的比例关系、每千行代码存在的软件错误个数等。,软件开发的生产率:Pl=L/E(5.1)其中:L是应用软件的总代码行数。E是应用软件的工作量,用人月(PM)度量。Pl是软件开发的生产率,用每人月完成的代码行数(LOC/PM)度量。每行代码的平均成本:Cl=S/L(5
11、.2)其中:S是软件开发的总成本,用人民币或美元度量。Cl是软件项目每行代码的平均成本,用人民币(或美元)/代码行度量。,用软件代码行数估算软件的开发规模简单易行,其缺点也有不少:代码行数的估算依赖于程序设计语言的功能和表达能力;采用代码行估算方法会对设计精巧的软件项目产生不利的影响;在软件项目开发前或开发初期估算它的代码行数十分困难;代码行估算只适用于过程式程序设计语言,对非过程式的程序设计语言不太适用等。,软件功能点的方式,面向功能的软件功能点度量与统计代码行数的直接度量方式不同,是涉及多种因素的间接度量方式。它是根据软件拟实现的基本功能定义的,因此在系统分析初期就能够估算出软件开发的规模
12、。这种方法用6个信息量的“加权和”CT和14个因素的“复杂性调节值”Fi(i=1,2,14)计算功能点FP:,其中:CT按表5-1计算,Fi由表5-2给出,Fi取值为0,1,5,表示Fi在FP中起作用的程度。当Fi=0时,表示否定或Fi不起作用,Fi=5时,表示Fi作用最大。,与用代码行定义软件的开发效率、成本等度量一样,用功能点也可以定义相应的概念。软件开发的生产率:Pf=FP/E(5.4)其中:Pf表示每人月完成的功能点数。每功能点的平均开发成本:Cf=S/FP(5.5)其中:Cf表示每功能点的平均开发成本(人民币或美元)。采用功能点度量的优点:第一,与程序设计语言无关,它不仅适用于过程式
13、语言,也适用于非过程式的语言,这对于面向对象的开发方式尤为有用;第二,由于在信息系统项目启动时就能基本上确定系统的输入、输出等参数,所以功能点度量能用于软件开发成本在初期的预估。缺点主要是它涉及到的主观因素比较多,如Fi的选取与评估人的经验和态度有较大的关系,并且FP的值没有直接的物理意义。,软件开发的规模是影响软件开发成本和工作量的重要因素。应用软件代码行和功能点估算是成本和工作量估算的基础。采用前述四种估算方法可以估算出L或FP的乐观值a、悲观值b和一般值m,然后根据下面加权公式计算出期望值e=(a+4m+b)/6(5.6)当L或FP的期望值估算出来之后,根据以前开发软件的数据可知软件开发
14、平均生产率(LOC/PM或 FP/PM)就可以计算出工作量。例:软件项目的规模按功能点估算为310FP,假设已知以前完成项目的软件开发平均生产率为5.5FP/PM,已知目前每人月的开发成本为1万元,于是:工作量估算为 E=310/5.5=56PM(5.7)软件开发成本估算为 C=56 1=56 万元(5.8)如果当前估算的软件子项目比以前完成的项目复杂,那么所用的生产率值可以低于平均生产率,反之也可以高于平均生产率。,软件的两个经验估算模型,应用软件的估算模型是根据以前完成项目的实际数据导出的,由于导出模型的数据是“从前的”、“局部的”,因此估算模型不可能适用于当前所有的信息系统项目和全部开发
15、环境。这些模型的计算结果仅有一定的参考价值。有的信息系统项目采用专家评分法分别对软件开发规模、成本、时间和人力投入给出乐观、悲观、一般三个值,然后采用类似(5.6)的加权公式直接计算出软件开发的规模、成本、时间和人力投入。,常用的估算模型:CoCoMo模型和Putnam模型,CoCoMo模型 CoCoMo模型是“构造性成本模型”(constructive cost model,简称,CoCoMo模型)的英文缩写,分为基本、中间、详细三个层次,分别用于软件开发的不同阶段。基本CoCoMo模型用于系统开发的初期,估算整个系统的工作量(包括软件维护)和软件开发所需要的时间;中间CoCoMo模型用于估
16、算各个子系统的工作量和开发时间;详细CoCoMo模型用于估算独立的软部件,如子系统内部的各个模块。这里,我们只介绍基本CoCoMo模型的情况。,基本CoCoMo模型是静态、单变量模型,具有下列形式:E=aLb(5.9)D=cEd(5.10)C=E(5.11)其中:L是项目的代码行估计值,单位是千行代码(KLOC)。E表示工作量,单位是人月(PM)。D表示开发时间,单位是月。C表示开发成本,单位是万元。表示每人月的人力成本,单位是万元/人月。a,b,c,d是常数,取值如表5-3所示。表5-3把软件划分为组织型、半独力型和嵌入型三类,允许不同应用领域和复杂程度的软件按照上述三类软件的适用范围选取相
17、应的参数a,b,c,d。,Putnam模型,Putnam模型是由Putnam提出的大型软件项目工作量(一般在30人年以上)估算模型。它是一个动态多变量模型,适用于软件开发的各个阶段。估算模型以大型软件项目的实测数据为基础,描述了开发工作量、开发时间和软件代码行数之间的关系。相应的方程是(5.12)其中:L表示源程序代码行数。E表示工作量(以人年计,包括维护)。td表示开发时间(以年计)。Ck表示技术状态常数,它反映出“妨碍程序员进展的限制”,并因开发环境而异,其典型值的选取如表5-4所示。,由式(5.12)有:(5.13)C=E(5.14)其中,C表示开发成本,单位是万元;表示每人年的人力成本
18、,单位是万元/人年。式(5.13)表明,开发软件项目的工作量与交付时间的4次方成反比,将0.9td代替式(5.13)的td计算E。我们发现,提前10%的时间要增加52%的工作量,显然是降低了软件开发生产率。因此,软件开发过程中人员与时间的折衷是一个十分重要的问题。,CoCoMo模型和Putnam模型都是在估算软件代码行的方式基础上,估算出了软件开发的工作量和软件开发的成本。对于软件的开发时间,CoCoMo模型是根据经验公式估算出来的,对于Putnam模型则是与工作量相权衡的结果。对于软件的人力投入,两个模型都可以根据工作量和开发时间的比值测算出来。,两种方式相比较,软件的自动估算工具,以上介绍
19、的经验估算模型已经用软件实现,成为自动估算工具。这种自动估算工具使得管理或计划人员能够估算待开发软件项目的成本和工作量,还可以对人员配置和交付日期等进行估计。它们需要以下一种或多种数据:定量估算软件项目模型,如用总代码行数或者用功能点数据;定性地说明项目的特征,诸如复杂性、需要的可靠性或时间的关键性;开发人员和(或)开发环境的描述。根据这些数据,由自动估算工具实现的模型就能给出完成软件项目所需的工作量、成本、人员配备、某些情况下的开发进度和相应风险的估算。,下面简要介绍6种有代表性的工具:,Gordon集团的BYL(Before You Leep)Wang研究所的WICOMO(Wang Ins
20、titute Cost Model)DEC公司的DECPlan(基于COCOMO的自动估算工具)SLIM是基于软件生存期中RayleighNorden曲线和Putnam估算模型的一种自动成本估算工具。ESTIMACS和SPQR/20是根据功能点估算模型开发出来的,上述每种自动估算工具都能与管理或计划人员对话,从而得到合用的项目与支持信息,并产生表格式的输出及在某些情况下产生图形输出。国外有学者曾对上述部分工具做过一个比较。他把各种工具都用于同一个项目,发现估算结果中出现了比较大的偏差,而且预测值有时与实际值相比,存在明显的不同。显然,不管估算是采用代码行的方式,还是采用功能点的方式,不管是采用
21、经验模型还是采用自动估算工具,都离不开掺杂在其中的许多主观判断。这是由于软件开发规模测算过程中不确定的因素太多,必须要采用定性与定量方式结合起来的方法才能测定。到此,我们就讨论完了软件规模、成本、开发时间、人力投入的测算过程。在此基础上,就可以根据测算的软件开发成本、硬件成本和信息系统开发期间的其他成本计算出信息系统可开发成本,再根据信息系统开发成本占信息系统总成本比例的经验数据得出信息系统项目的总成本。相应地,也可以根据软件开发时间或人力投入占信息系统项目总时间或总人力比例的经验数据知道信息系统项目建设所需要的总时间和总人力。,3、信息系统项目的进度和成本计划,根据上一小节的测算,我们能估测
22、出信息系统项目所需要的工作量、总的项目建设时间和项目成本。现在假设项目经理已经和客户在上述测算的基础上经过讨价还价,基本达成了一致,并签订了开发合同。那么,项目经理就要开始组织队伍形成项目团队,绘制专业领域技术编制表,建立一个工作分析结构(WBS),并在此基础上建立项目组成员的责任矩阵。所谓工作分析结构是指将一个信息系统项目分解成易于管理的几部分或几个细目,细目再展开成子细目,任何分支最底层的细目叫工作包。比如对于一个待建系统可以先按照生命周期的各阶段展开,然后按照子系统或系统功能点展开。,责任矩阵一旦建立,就可以进行项目各建设活动的工期估计和预算分摊估计。工期估计和预算分摊估计各有两种办法,
23、一种是自上而下法,即在项目建设总时间和总成本之内按照每一工作包的相关工作范围来考察,以项目总时间或总成本的一定比例分摊到各个工作包中。另一种方法是自下而上法,它是由每一工作包的具体负责人来做估计的方法。经验表明,让某项工作的具体负责人进行估计是较好的方法,因为这样做既可以得到该负责人的承诺,对他产生有效的参与激励,又可以减少由项目经理一个人进行所有活动的工期估计时所产生的偏差。当然,某些情况下,如对一个需花费数年时间、由几百个人来做不同工作才能完成的大型信息系统项目来说,让每个人在项目开始时就做出其所要完成活动的各项估计是不实际的。至于工作包各负责人估计的方法,还可以参照上一节中的测算方法,比
24、如中间CoCoMo模型就可用于各个子系统的估计,详细CoCoMo模型可用于子系统各个模块的估计。,在上述估计的基础上,项目经理进行各工期的累计和分摊预算的累计,与项目总建设时间和总成本比较,根据一定的规则进行调整。,实例分析:现在某企业准备开发一个客户关系管理的信息系统,合同双方将系统交付使用作为项目终结的依据,双方同意维护期间费用另行支付。经上述测算,估算该项目总开发工作量为4人年,项目总开发时间为50周,项目的总成本(包括软件开发成本、硬件成本和开发中的其他成本)是100万元人民币。根据上述估计和准备,项目经理绘制了如图5-5所示的甘特图,项目总开发时间为50周。图中将该项目划分为六个大的
25、活动,并明确了各活动的工期:系统规划(5周)、系统分析(10周)、系统设计(10周)、系统实现(15周)、系统测试(8周)和系统转换(5周)。,上述六个大的活动又细分为22项小活动,各项小活动之间的顺序关系以及每项小活动的工期估计和预算分摊估计如表5-5所示。在此基础上,可以画出该项目的网络图,如图5-6所示。到此为止,已经估计出该项目中每项活动的工期和项目的总时间,为了确定这些活动是否能在要求的时间内完成。我们必须计算出一个项目进度计划,为每项活动的执行提供一个时间表,这个时间表主要解决以下两个内容:,图5-6 客户关系信息系统项目网络图,(1)最早开始时间(earliest start t
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息系统 建设 项目 管理
链接地址:https://www.31ppt.com/p-5230462.html