软件项目管理考试.docx
- 文档编号:8030860
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:12
- 大小:40.77KB
软件项目管理考试.docx
《软件项目管理考试.docx》由会员分享,可在线阅读,更多相关《软件项目管理考试.docx(12页珍藏版)》请在冰豆网上搜索。
软件项目管理考试
注:
考生属哪种类别请划“√”
(博士、在校硕士√、工程硕士、师资硕士、同等学力、研究生班)
辽宁工程技术大学
研究生考试试卷
考试时间:
考试科目:
软件项目管理
考生姓名:
评卷人:
考试分数:
注意事项
1、考前研究生将上述项目填写清楚
2、字迹要清楚,保持卷面清洁
3、试题、试卷一齐交监考老师
4、教师将试题、试卷、成绩单,一起送研究生学院;
专业课报所在院、系
这个学期上了软件项目管理这个课程,课堂上郭老师精彩幽默地给我们讲授了有关项目管理的知识,其中很大部分是老师亲身经历过的项目,以及老师对这些项目的经验总结。
我觉得这样的课程让我学到了很多书本上学不到的知识,老师的经验总结更是对我们以后再软件项目管理方面起到指导和警示的作用,能够帮助我们少走弯路。
同时,在项目管理实例中,我们通过模拟项目实战,更加加深了对软件项目管理过程和意义的认识。
在项目实践中,我们也遇到了以前没有遇到过的问题,并尝试着运用所学的知识去寻找出解决问题的方法。
我们从书本上可以学习到项目管理的理论知识,比如对项目管理的认识,项目管理流程的认识以及项目风险分析等等,但是我们不能够学习到软件项目中会出现的所有各种问题,以及对这些问题的解决方法。
我们只能通过别人的经历,或者更多的自己的实践,总结,积累,使自己的经历成为我们的收获,才能为我们以后遇到的问题提供一个解决的思路。
随着信息技术的飞速发展,软件产品的规模也越来越庞大,个人单打独斗的作坊式开发方式已经越来越不适应发展的需要。
各软件企业都在积极将软件项目管理引入开发活动中,对开发实行有效的管理。
从概念上讲,软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。
实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展(即减小开发风险)。
在软件项目中有两条非常重要的线索,一条是软件项目开发过程,另外一条是软件项目管理过程。
通常,人们容易注意软件项目开发过程,而忽略软件项目管理过程的线索。
事实上,后者很重要,有时其重要性甚至超过项目开发过程。
项目管理可以让一个项目获得高额的盈利也可以让一个项目损失惨重,而编码的影响力则相对小一些。
现实中由于出色的项目管理,将已经亏损很严重的项目又重新扭亏为盈的例子并不少见。
项目管理在生活中的例子很多。
例如进行一次商品采购,你会在一张纸上记录所有需要购买的东西(即采购清单),这个采购清单帮助你不要遗漏采购项,你可以采用“完成一个采购项,在采购清单上打一个勾”的方法协助你完成采购。
与此类似,软件项目管理也是如何管理好软件项目的内容、花费的时间(进度)以及花费的代价(规模成本关为此需要制定一个好的项目计划,然后控制好这个计划。
编制软件项目计划、跟踪控制软件项目计划这就是软件项目管理的实质。
其中,计划是项目成功实施的指南和跟踪控制的依据,而跟踪控制是项目计划成功执行的保证。
本次报告用已有的实际案例实践分析软件项目管理过程,带着我们从总体来把握软件项目管理的应用,并就笔者本人了解的以及课上笔记记录的软件项目管理理论对案例进行分析。
这样可以使我们更加深入的了解并更好的应用软件项目管理理论。
中国航空结算中心软件开发项目管理案例与分析
目前,我国几乎所有民航企业都成立了自己的软件开发部门,但是在软件工程项目的实施过程中,由于许多民航企业套用传统项目管理模式,同时因为民航企业在组织体系、项目实施目标等方而与纯粹意义的软件开发企业存在巨大差异,没有一套适合的项目管理模式,导致了项目成功的比率很低,进而影响了民航业信息化的过程。
下而我们通过对中国航空结算中心(下简称中心)软件开发案例的分析详尽阐明民航企业软件工程项目管理中存在的问题。
1998年,民航总局部署了解决“2000年问题”的任务,中心成立了“2000问题”,领导小组,第一次引进了软件工程项目组织形式。
项目经理由计算机部经理担任,下设个科室相应成为项目小组。
项目目标分为两个方而,其一,1999年10月前完成总局下达的任务,其二,同期实现分摊系统功能升级,增加特殊比例分摊(SPA)功能。
中心希望通过引进软件工程项目提高专业软件开发能力,进而加快主业自动化进程。
但项目的结果并不理想,例如总局指令性指标虽然按时完成,SPA模块却延期至2000年3月结束,可以说项目的实施是不成功的。
其问题主要表现在以下几个方而:
1、项目组织形式
中心引入项目这种组织形式的目的是为了灵活高效完成软件开发工作,进而实现主营业务信息化。
但组织项目时没有经过详尽分析,混淆了项目和部门的概念,简单地将计算部纳入同一个项目。
另外,从项目目标来看,解决2000年问题模块主要工作集中在对原系统年份函数的修改,尽管战略意义重大,但工作量并不大,难度也很低。
而SPA模块是在新引进的由汉莎航空公司开发的分摊系统上进行再开发,一方而与中心原有新航系统关联性不强,另一方而,由于硬件环境的变化以及特殊比例分摊协议极为复杂,汉莎系统与中心大型机设备不兼容,需要大范围修改以及逻辑的重建,工作量和难度都很大。
按照项目目标,应该组建两个独立的项目组,而组建项目时对此认识不够透彻,大项目组的设置没有体现项目灵活高效的特点,也限制了下属项目小组的权限以及项目经理对所需客户支持部人力资源的支配能力,进而影响了项目的进程。
2、人力资源配置
由于长期受训一划体制的影响,中心一直没有形成“以人为本”的现代人力资源管理体系。
计算机部人员流动性很强,“四年现象”明显,即第一年培训,第二年熟悉业务,第三年成为业务骨干,第四年辞职。
通过对离职人员的调查,发现他们离开中心的主要原因并不是薪金,而是诸如岗位培训机会少、工作挑战性不强、晋升机会少等因素。
这些充分说明了中心在人力资源管理方而存在严重的问题。
人员流动过于频繁给项目的启动和开展带来了极大的负而影响,尤其是SPA模块的开发工作。
分摊业务是结算业务的核心,而特殊比例分摊更是整个结算体系中的难点,专业性强。
熟悉分摊业务的软件开发人员的匾乏直接妨碍了项目的正常启动,这也是项目失败的重要原因之一。
3、项目沟通与冲突管理
中心组建软件开发项目时,沿用了职能部门组织体系,没有体现项目作为跨部门平台的特点,其组织形式以及项目成员配置决定了项目组必须通过客户支持部与最终用户沟通,沟通渠道不通畅也导致了软件开发过程中频繁冲突的发生。
冲突主要表现在两个方而:
其一,项目经理和客户支持部负责人关于人力资源的竞争。
依据中心职能机构设置,与航空公司联系属于客户支持部业务范围,如现行系统的用户支持,同时该部门又是项目组和用户沟通的唯一正式渠道。
由于用户支持部不需对项目负责,因此对他们而言,本职业务优先级高于项目业务。
其二,项目组和用户之间信息传递延迟或丢失引起的误会。
项目经理和用户合同经理不能直接沟通必然造成信息传递的延迟,在项目开展的过程,经常出现用户需求不能及时提交到开发人员而前甚至被曲解的现象,其结果往往是开发人员重新设计程序。
4、知识管理
知识管理作为项目管理的新内容,并没有引起中心项目管理人员的充分重视,代表性的一个例子是开发文档的整理极不规范。
程序文档是开发人员与用户重要的交流渠道,是用户使用和维护系统的重要依据,是软件工程项目成果的重要组成部分,因此监督开发人员编写程序文档必然成为项目经理管理项目知识成果的重要内容。
在项目进程中,项目组成员都没有认识到知识管理的重要性,程序文档的整理被安排为项目终止阶段任务,而没有与开发工作同步,致使文档不完备,给系统移交以及用户维护带来了许多计划外的工作上自一月致。
以上案例存在的问题来看,其代表了大部分项目面临的问题,一下为作者根据课上老师讲解和一些资料总结的软件项目管理四个步骤。
一、确定软件项目开发的策略
项目经理的首要任务是编制项目计划。
项目计划有三大核心目标:
确定项目范围、项目预算、项目进度,即明确项目做什么、花多少钱、需要多长时间。
为了制定一个合理有效的计划,项目经理需要从项目需求开始确定项目范围,然后将项目的需求进行分解,以便于估算、安排资源和合理的进度等。
这样就形成了三个核心计划:
范围计划、成本计划和进度计划。
此外,作为完整的项目计划,质量计划、风险计划、沟通计划等同样也必不可少。
没有质量管理的项目是失败的项目,没有风险管理的项目会时时处于风险之中,没有沟通的项目是很难完成的。
项目规划从合同阶段就开始了,其实任何一个合同的主要内容也是确定项目的范围、时间和成本。
软件项目最终的结果是根据用户的需求提交一个用户满意的产品,这是一个从无到有的过程。
因此计划首先应该确定项目开发的策略,即项目的生存期模型。
瀑布、V、原型、螺旋、渐进式阶段提交等模型是几种常见的生存期模型,渐进式阶段提交模型体现了软件项目渐进性的特点,同时,分阶段提交项目结果,也有利于软件项目开发。
RUP(Rational的统一过程)提及的软件项目生存期模型就是一种渐进式阶段提交模型。
如果项目周期不是很长,可以不分阶段提交结果,而只是分阶段开发,这样渐进式阶段提交模型就演化为增量模型。
例如本人所了解的《辽宁工程技术大学校级学生组织信息管理系统》项目,它是对校级五大组织的学生干部进行综合管理的平台系统。
尽管分阶段实施项目是比较理想的项目管理模型,但是由于这个项目不大,没有必要分阶段提交一个执行系统,所以采用增量的模型。
生存期模型中可以定义软件开发中采用的过程、程序,如果过程定义得很明确,或者过程定义的操作性很强,那么作为工厂化的软件开发就会很顺利,项目管理的过程也会很顺利,所以在软件项目中的这两条线索也是相辅相成的。
二、制定项目核心计划
项目的核心计划是范围、时间、成本的确定,这三方面并不是截然分开的,而在项目计划的制定过程中相互交织。
确定项目范围要从需求入手,将一个项目分解为更多的工作细目或者子项目,使项目变得更小、更易管理、更易操作。
目的是为了提高估算(成本、时间和资源)的准确性,使工作变得更易操作,责任分工更加明确。
任务分解的结果是WBS(WorkBreakdownStructure)。
只有在WBS中的工作才属于该项目的工作范围。
任务分解之后,可以根据分解的结果,估算任务的规模、成本,同时可以根据分解的结果进一步分解详细的项目活动,以便安排任务之间的关联关系,估算每个任务的工期,然后进一步估算项目总的工期。
项目的规模和进度估算有一定的关系。
进度估算是从时间的角度对项目进行规划,而成本估算则是从费用的角度对项目进行规划。
类比估算法、参数模型估算法、自下而上估算法等都是规模成本估算的方法,而经验导出模型、工程评价技术关键路径法可能要不断重复进行估算法,以减少估算的误差。
在项目的不同阶段可以采用不同的估算方开始可能很粗糙,随着项目的进展会逐步精确。
在安排项目进度的时候,可以根据WBS的分解情况,继续分解相应的活动(任务),分析确定各个活动之间的顺序关系,如图1画出任务的PDM网络图。
图1PDM网络图
图1中的每一项任务必须有一个前驱和后继,除了项目中的第一项和最后一项任务。
确定关键路怪在哪里、哪些任务还有变化,然后结合资源、成本等情况,再不断进行资源调整优化以及工期、活动关系的调整等。
计划调整的过程虽然很费时费力,但也是一个关键的过程,要经过多次调整、修改、评审讨论等,最后才能确定一个计划,将此计划存为基准计划。
这个基准计划可以存入项目管理系统中。
通过这个基准计划可以确定项目的范围即项目所有的任务,还可以确定项目的时间进度表,这个计划也确定了各个任务的资源(人力资源、物力资源等),当然项目的成本就可以确定下来。
仍以《辽宁工程技术大学校级学生组织信息管理系统》项目为例,根据项目WBS的分解情况,继续分解相应的活动(任务),然后确定各个活动之间的关系,系统的功能采用增量方式实现,实施阶段分6个增量,对各个任务(活动)分配相应的资源,经过多次的活动调整以缩短工期,多次的资源调配以解决资源冲突和减少成本,最终形成了基准计划。
三、制定辅助计划
1.质量保证计划
质量保证的主要活动包括过程评审和产品审计。
过程评审和产品审计的目的是为了确保在项目进展过程的各个阶段和各个方面采取各项措施来保证和提高产品质量。
产品审计由质量保证人员来进行,检查项目产品是否达到质量目标。
质量保证人员对项目生存期中创建的工作产品可以有选择性地进行审计,以验证是否符合适当的标准,是否进行了质量检查。
过程评审是检查项目是否严格按照组织定义的软件过程进行开发,过程评审的具体依据可以参照企业的过程规范,以保证项目中的所有过程活动都在实施范围内。
在每次评审之后,要对评审结果做出明确地决策并形成评审记录。
评审可采取文件传阅、评审会等形式。
这里质量保证人员负责对项目过程进行监督,发现的问题和解决情况在每周的例会上通报,对没有解决的问题进行讨论,对不能解决的问题提交高级管理者处理。
项目的质量活动包括质量保证和质量控制,质量保证是一种管理职能、质量控制是一种检查职能,质量保证是确定项目完成的是否正确,质量控制是确定项目是否正确地在进行。
有时将质量控制归类到开发活动中,质量控制活动更多由开发人员完成。
2.配置管理计划
软件配置管理贯穿于软件生存期的全过程,目的是用于建立和维护软件产品的完整性和可追朔性。
软件配置管理是一组追踪和控制活动,软件配置管理可以管理好项目进行的中间产品以及它们之间的关系。
配置管理计划中包括很多的内容,例如配置管理工具、配置项计划、基线计划、配置管理规程等。
3.沟通计划
为了保证项目开发过程的顺利进行和信息的有效沟通,从而使一些重要的项目信息实时、最新、及时获取,做到实时同步,就必须有一个灵活而且容易使用的沟通方法和沟通计划。
4.风险管理计划
任何项目都有一定的不确定性,如果没有很好的风险管理,项目就可能遇到麻烦。
所以,软件项目管理过程中,风险计划同样必不可少。
风险管理中常用的工具是TOP10风险清单,它是通过一系列的风险识别、风险评估、风险规划得到的。
由于笔者在课上讲述的风险评估,所以在此对其做较详细介绍。
图2显示了风险评估的总体分支。
图2风险管理示例图
下面对各个分支进行详细介绍。
风险识别
确定可能对项目造成影响的风险,并且把每一风险的特性编制成文档。
风险识别不是一次性活动,必须在整个项目过程中经常进行风险识别的工具和办法:
风险检查列表;调查问卷;Delphi;头脑风暴法。
风险分析
在风险分析中,存在三个主要主要的要素:
风险因素、风险驱动因子对风险因素的四个影响类别(如表1所示)以及风险暴露量的计算。
风险因素:
1、性能风险—产品能够满足需求且符合于其使用目的的不确定的程度。
2、成本风险—项目预算能够被维持的不确定的程度。
3、支持风险—软件易于纠错、适应及增强的不确定的程度。
4、进度风险—项目进度能够被维持且产品能按时交付的不确定的程度。
表1风险驱动因子对风险因素的四个影响类别
类别/因素
性能
支持
成本
进度
灾难的
1
无法满足需求而导致任务失败
错误将导致进度延迟和成本增加
2
严重退化使得根本无法达到要求的技术性能
无法做出响应或者无法支持的软件
严重的资金短缺,很可能超出预算
无法在交付日期内完成
严重的
1
无法满足需求而导致系统性能下降,使得任务能否成功受到质疑
错误将导致操作的延迟,并使成本增加
2
技术性能有所降低
在软件修改中有少量延迟
资金不足,可能会超支
交付日期可能延迟
轻微的
1
无法满足要求而导致次要任务的退化
成本、影响和既可恢复的进度上的小问题
2
技术性能有较小的降低
较好的软件支持
有充足的资金来源
实际的、可完成的进度计划
可忽略的
1
无法满足要求而导致使用不方便或不易操作
错误对进度及成本的影响很小
2
技术性能不会降低
易于进行软件支持
可能低于预算
交付日期将会提前
注:
1、为测试出的软件错误或缺陷所产生的潜在影响。
2、如果没有达到预期结果所产生的潜在影响。
风险暴露量(RiskExposure)计算方法
RE=不希望的损失的概率*损失的程度(如表2所示)。
风险优先级
按风暴暴露量排序,确定风险优先级(如表2所示)。
表2某项目风险暴露量
风险
发生的概率
损失大小(周)
风险暴露量(周)
计划过于乐观
50%
5
2.5
增加自动更新的需求
5%
20
1.0
设计欠佳,返工
15%
15
2.25
设备不能及时到位
10%
2
0.2
以下还是以中国航空结算中心软件开发项目的风险评估为例,以实例带动理解。
风险识别
1、产品规模风险
由于采用功能点估算成本,代码行小于30000行,权重确定主观,另外,功能点到代码行的转换率全凭业界经验所得产品的初定在线活跃用户为8500人。
软件接口包括财务分析软件,薪酬管理软件。
2、需求风险
对在线活跃用户缺少确定的把握;与其他部门沟通不协调;分析员对业务了解不全面。
3、商业影响所带来的风险
增加了信息真伪评估成本;签约安全成本增加;增加消费者的信息管理成本,增加服务成本;延迟交付造成成本消耗。
4、相关性风险
财物资源有限;项目经理管理经验不足;不可抗力造成的危害;高层管理人员对项目的时间要求不合理。
5、人力资源有限
开发人员没有接受过正规培训;项目中有一些开发人员只能部分时间工作;
开发人员不能按时到位;开发人员经验不足。
风险分析
中国航空结算中心软件开发项目风险评估如表3所示。
表3中国航空结算中心软件开发项目风险管理
类别
潜在风险事件
风险发生概率的定性等级
风险后果影响的定性等级
综合风险指数
产品规模风险
功能点估计不精确
中
轻度
11
产品的初始在线活跃用户为8500人
高
严重
5
软件接口包括财务分析软件,薪酬管理软件
极高
严重
3
需求风险
对在线活跃用户缺少确定的把握
高
轻度
9
与其他部门沟通不协调
高
轻度
18
分析员对业务了解不全面
中
轻微
11
商业影响所带来的风险
增加了信息真伪评估成本
中
轻微
18
签约安全成本增加
低
轻微
19
增加消费者的信息管理成本
中
轻度
11
延迟交付造成成本消耗
中
灾难性
4
相关性风险
财物资源有限
中
轻度
11
项目经理管理经验不足
极高
严重
3
不可抗力造成的危害
低
灾难性的
8
高层管理人员对项目的时间要求不合理
极高
灾难性的
1
人员数目及经验风险
人力资源有限
中
轻度
11
开发人员没有接受过正规培训
高
轻微
16
项目中有一些开发人员只能部分时间工作
中
轻度
11
开发人员不能按时到位
中
轻度
11
开发人员经验不足
高
严重
5
(1-5是不能接受的风险;6-9是不希望有的风险;10-17是有控制的接受的风险;18-20是不经评审即可接受的风险)
四、项目计划的跟踪控制
如同采购时,你通过采购单(在其上打勾)保证采购的顺利进行;在聚会演出时,你通过节目清单(你的计划)来控制节目的顺利进行等。
同样,软件项目管理也需要跟踪控制,跟踪控制就是为了保证项目能够按照预先制定的计划进行,使项目不要偏离预定的发展进程。
跟踪控制的对象就是项目计划。
在项目进展过程中,项目经理根据项目计划来及时跟踪项目实际的执行情况,关注项目的范围、成本、进度、质量、风险等情况,记录实际的进展情况,对照计划与实际的情况,发现问题并及时解决。
进行项目跟踪控制的基本步骤如下:
1、建立标准,即建立项目正确完成应该达到的目标;
2、建立项目监控和报告体系,确定控制项目必要的数据;
3、测量和分析结果,将项目的实际结果与计划进行比较;
4、采取必要措施,如果实际的结果同计划有误差时,采取必要的纠正措施,必要时修改项目计划;
5、控制反馈,如果修正计划,应该通知有关人员和部门。
软件项目经理要确定如何获取项目的时间、成本、范围的进展信息等(例如计划中可以规定跟踪频率和步骤,设置专门人员负责收集项目数据或者项目人员按照规定的度量标准统计上报项目数据关然后将项目的实际结果与计划进行比较,采用一定的方法分析项目的进展情况,如偏差分析和挣值分析等。
项目跟踪分析应该根据计划的要求实时进行,要随时了解项目的进展情况,以便做出正确的决定。
另外,还要跟踪其他计划的执行情特别要关注风险管理计划,项目经理应该定期回顾和维护风险计及时更新风险清单,对风险进行重新排序,并更新风险的解决情况,这些活动应该包含在项目计划中,以防遗忘。
只有这样才能使项目经理们经常思考这些风险,居安思危,对风险的严重程度保持警惕。
项目管理一个非常重要的手段是进行项目评审。
项目评审的主要目的是根据项目计划对项目的执行活动进行检查,及时进行沟通,发现问题,研究解决对策,纠正偏差,保证项目的顺利实施。
评审可以针对产品的评审,例如设计评审,或者针对质量的评审,例如质量过程评审,但更多的是针对管理的评审,例如定期的周例会等,以及针对突发事情的评审等。
项目的最后一项是进行项目总结,这是一项必要的工作。
就如同我们聚会活动结束之后,要核算或者说总结,节目单的活动执行的如何?
费用如何?
时间如何?
同样,作为项目管理的最后一件事情也是总结,即最后评审,总结经验教训,编写项目总结报告等,为以后的项目提供参考。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 项目 管理 考试
![提示](https://static.bdocx.com/images/bang_tan.gif)