论信息系统项目中质量管理的重要性[摘要]本文以我承担方第二任项目经理承担某市数字人事局系统项目建设为例,探讨了信息系统建设中质量管理的重要性,及个人的一些经验和教训。
质量管理应该正确贯彻质量方针、强抓质量保证实施。
案例中主要讨论了这些问题:第一,系统范围偏移,功能、性能、可用性等质量指标不统一;第二;测试范围出现偏差,工作结果无法满足干系人期望;第三;资源分配不合理造成资源浪费和成本增加。
本文总结笔者针对性采取修正质量规划,确认统一质量指标,将质量规划贯穿于项目全过程;严格按照需求说明书的要求制定测试计划,加强测试人员培训,请项目干系人一起确认测试计划;借鉴以往项目经验,利用基准比较法安排人员工作,合理控制成本等方法,实际结果表明,将项目的成本控制在合理范围内,满足了干系人的期望,系统按时上线成功运行。
对外为公众提供了服务,对内满足了用户的管理需求。
[正文]随着知识经济时代的到来,企业能否合理有效的管理自己的知识已成为企业在激烈的市场竞争中能否获取竞争优势的关键。
知识经济的时代同时也是信息化的时代,整个社会的高效运作对计算机软件产品的依赖程度越来越高。
软件质量以及软件质量管理日益成为人们关注的焦点。
软件质量特性,反映了软件的本质。
对软件的开发过程进行质量管理是解决软件质量问题的重要方法。
目前国际上流行的ISO9001标准和CMM模型等都是为了指导企业如何建立符合质量管理要求的开发过程而提出的。
但软件产品是一种特殊的逻辑产品,它的“制造”过程基本等同于“设计”过程,显然不能生搬硬套软件产品质量管理方法来管理软件产品的质量,因此,需要建立专门针对软件产品的质量管理方法。
由于系统集成大部分工作是在现场完成的,因此项目质量管理显得非常重要。
由于系统集成项目的唯一性,不同的项目要达到的目标是不一样的,本项目要达到的总目标是使客户能够借助新的信息系统尽快实现信息化管理、网络办公和信息共享。
除了这个总目标外,我还把整个项目进行了细化,确定了各个项目实施阶段的分目标,使大家作到心中有数,对于必要的环节及时与客户的领导小组沟通,提高工程建设的质量。
并根据工程实施流程建立了质量保证体系,制定了相应的措施和制度,确保每一阶段都有人检查,每一工作都有人负责整改,使工程的质量一直处于闭环控制状态。
重视技术文档的作用,要求技术文档要及时、具体、明白,特别是一些非标的工作,更要详细留档,以便今后的审查和改进。
质量是系统的生命线。
质量管理通常分为质量规划、质量保证和质量控制三个环节。
我国大部分软件公司取得了ISO9001认证和CMMI认证。
企业期望按照质量管理的体系完成质量管理,用户希望得到一套质量过硬的系统。
高质量、严要求能够保障系统稳定运行,减少BUG。
高质量与高投入有必然的联系,如何让企业在合理的投入后取得高质量的结果,是我们项目共同探讨和期待的论题。
本文是以我的实际经验,论述项目中如何合理贯彻质量计划、投入合理成本,保证项目质量。
几年前,某市人事局为提高政府办公效率,开发了一套数字人事局的系统。
用户期望通过新系统的运行对外为公众提供服务的同时建立人力资源数据库,对内加强流程管理,简化管理流程,提高效率。
项目是经过政府招标确定我公司为中标方,金额约1160万人民币,工期为12个月。
由于是异地项目,在初期,公司为了节约资源,决定项目组成员由两部分组成,项目经理、架构师、主要开发人员由总公司派出,另外人员由项目经理在本地招。
系统需求调研为2个月,开发4个月,测试为4个月,试运行2个月后上线。
经过了5个月工作,用户的一次公开汇报会后,总公司得到用户的反馈,项目出现严重偏差,用户需要的功能系统没有,系统开发了一些用户没有要求的功能,界面、操作风格不统一,统计查询速度与用户期望相差甚远。
用户发来函,若2个月内没有明显改善,系统将停止开发。
公司考虑到项目的严重性,正巧我的项目刚刚顺利结束,公司决定派我去任项目经理,完成此项目。
一到项目组,我先找原项目经理老王沟通了解项目的情况。
由于老王被总部批评,并且要求留任项目组做文档管理工作,老王的抵触情绪很严重,不愿意沟通项目的问题,只给了我一套项目章程、需求分析说明书、范围说明书、质量规划、概要设计、详细设计、测试计划、项目会议纪要等文档。
经过3天通宵研究及与项目组中的员工沟通,我了解了项目的需求和规划,也初步判定了问题的原因:项目初期制定的规划文档完整,执行中没有更新记录、在5个月的会议纪要中能够看出每次的项目例会都是汇报进度,没有与用户的进一步沟通,也没有定期向直接用户演示系统完成功能,一直到近期的演示后,引起用户的极度不满。
本文主要探讨案例中如下三个问题:(1)用户要的功能我们没有做出来,不关注的功能做了一大堆。
查询统计生成报表的速递极慢,当查询条件超过3个时,系统需要等待5分钟以上;报表绘制界面用户无法接受,认为花费3个月的时间也学不会定制报表,同时定制语句需要有初级以上程序员的水平才能操作,用户无此样人才;各模块界面布局完全不统一,菜单、操作按钮、界面风格五花八门;(2)用户认为我公司没有经过测试,也没有相关测试人员,否则在演示时不会错误频出。
有些问题是本质性的,用户没有接受的可能。
例如:系统在使用最基础的信息录入时,数据保存不上,录入界面交互性很差等问题。
(3)在我公司内部评审时,认为本项目投入了过多的人力物力,测试人员与开发人员的比例为1:1,这是以往项目中没有过的。
而且投入了大量的程序人员,程序员每天加班,工作12个小时。
从项目组的人员工资成本加上管理成本已经化费了预期成本的2/3,而项目只完成了1/41、关于问题一方案与实施笔者总结为系统范围偏移,功能、性能、可用性等质量指标不统一造成的。
尽管在项目初期制定了质量管理的计划,但是在项目执行过程中,缺乏与用户的沟通,缺乏干系人的认可,在第一次项目汇报时暴露出的问题与质量计划应该贯彻于整个系统的开发过程相悖。
我接手后找到老王,鉴于老王对项目的各类问题和干系人都非常了解,我请他做我的副手,推心置腹地沟通了我认为出现现有问题的原因,及解决方案。
虚心请教他,我修改计划不足之处,表示希望与他一起完成此项目。
他考虑后同意了我的要求。
我们首先将原来QC人员的职责再次明确,要求其每周一汇报质量管理情况。
同时我们一起更新了质量规划,修正了质量指标,召集美工、程序员着重强掉界面、操作的统一性,并且每周五下午我和老王还有QC老张及需求分析人员和演示人员向干系人演示系统完成的功能,请干系人提出修改意见,双方协商后制定修改计划,将质量管理规划按照项目的进度进行合理的修正。
2、问题二的方案与实施理解为测试范围出现偏差,工作结果无法满足干系人期望。
我们的系统之所以出现如此多的BUG,是因为我们的测试计划做的不够全面。
测试组组长没有参加需求分析工作,对需求的理解不全面。
我调整了工作流程,要求测试计划制定时需求分析人员一起参加,当有拿不准的时候,请需求工程师先找用户沟通,得到用户的认可。
层层严把测试关,单元测试、集成测试、系统测试与黑盒、白盒测试合理应用。
提高了系统功能和性能质量。
3、问题三的方案与实施资源分配不合理造成资源浪费和成本增加。
我接手后按照系统中未完工的部分,调整了项目进度,和成本计划。
本项目的监理刘总,在信息系统建设方面有丰富的经验,我与他商量,请他拿出以前类似项目的进度计划和成本计划作为我的标杆,利用基准分析法我调整了项目进度,和成本计划。
在保证成本适量增加的前提下,保证项目按期完成。
取得了公司项目管理部门的认可。
如果按照软件工程学的要求测试与开发人员比例为1:1.但是在企业中我们通常为了压缩成本,做不到这一点。
我调动项目组内部资源,要求需求工程师作为测试小组中的一员,每天早晨1小时和中午1小时,晚上抽出2小时,请他们每天保证4个小时做功能测试。
这样可以缓解人手不足的压力,他们请他们站在客户的角度,为系统的易用性提出建议。
统一整理后评估,按照轻重缓急分成几类,若用户有同样要求,我们把修改计划拿出,说上线后,我们在下一期统一修改。
并且我们也考虑到了,取得客户的认可。
实际结果表明,修正质量规划,确认统一质量指标,将质量规划贯穿于项目全过程;严格按照需求说明书的要求制定测试计划,加强测试人员培训,请项目干系人一起确认测试计划;借鉴以往项目经验,利用基准比较法安排人员工作,合理控制成本等方法,将项目的成本控制在合理范围内,满足了干系人的期望。
系统保质保量按时上线,用户按时验收,并且在本省的科技进步成果中申报了奖项。
项目质量管理是项目管理中一个非常重要的组成部分,项目质量反应软件产品满足规定需求和潜在需求能力的特征和特征的总和。
项目质量的工作流程主要有项目质量规划,执行质量保证,执行质量控制。
项目质量管理是一个项目能否顺利的完成并交付使用的一项基础性的工作。
对于这个案例我认为在以后的大中型软件开发项目中可以有如下的借鉴意义。
第一;项目中质量规划要不断修正,要贯彻于整个项目中,在项目中要明确QC的职责和范围,定期检查QC工作日志汇总,提升项目中质量管理的意识,强化质量管理;第二;测试计划要切实可行,要不断修正,要层层分解,统一管理。
请需求工程师站在用户的角度提出问题,归档整理后与用户沟通,为了保证进度可以等到系统上线后修改,但是一定要计划先行,问题考虑在用户前面。
第三;在任何项目中都要借鉴前人的经验,利用标杆法确认项目的成本,合理使用资源,在资源紧缺的情况下适当增加现有人员的待遇,不要盲目增加新的人手。
项目组中新来员工的培训、适应及潜在的流动都会使成本大幅度增加,而合理提升现有人员的待遇,是稳定团队、激发团队积极性同时为公司节约成本的合理方法之一。
在今后的工作中,本人一定强化质量管理,重视质量的持续改进,对整个项目生命周期的各个阶段,尤其是系统分析、设计、实施、测试等阶段进行有效的质量控制和管理,注意贯彻预防为主和检验把关相结合的质量控制原则,对于超出既定标准的偏差及时分析原因,并采取有效的纠正措施,确保系统的关键指标在实施过程中得到全面的监控。
从而实现最大限度地满足项目干系人的需求和希望的目的。