1 引入信息系统工程监理的必要性
随着信息技术和网络技术的发展,信息系统网络化、复杂化、多样化,尤其是大型信息系统的开发已经成为一项庞大的系统工程,投资大、周期长、高技术、高风险。因此,对信息系统的生命周期进行严格、规范的质量管理与控制至关重要。由于开发单位往往由于其技术力量有限,无力对项目的技术、设备、质量、进度等进行控制,因此在系统的开发方与委托方之间引入第三者——监理,这是信息系统工程中保证工程质量、进度、成本的重要手段,也是保证项目实施成功的要素之一。
为了加强信息系统工程的规范化管理,保障信息系统工程的质量,北京已经率先实行《北京市政务与公共服务信息化工程建设管理办法》,对于重大信息化工程项目必须通过招标方式选择信息系统工程监理单位,实行强制监理,从而保证工程能够按照委托方需求,高效、经济地按时完成,实现预期建设目标。信息系统监理的主要任务是指具有信息系统工程监理资质的单位,接受建设单位的委托,依据国家或地方的有关规定、系统工程建设标准、工程承建、建立合同等,对信息系统质量、成本、进度等方面进行动态的有效的控制,及早预测与发现可能影响工程计划的要素,并予以纠正,改善,从而保证其安全、可靠与有效性。
进度控制是监理过程中的一个十分重要的内容,因为进度管理的不科学、不系统是当前信息系统开发失败的重要因素。该文主要是从监理的角度研究如何对进度进行控制,从而保证工程进度能够按计划完成。
2 进度监理的实施过程
进度是系统进展情况的反应,它贯穿于信息系统整个生命周期中,进度不仅是一个时间概念,还包括任务、时间、成本等因素,只有全方位地考查进度才不至于顾此失彼,既保证预定时间,又能使项目保质保量完成。时间、成本、质量是项目成功的基本要素,而这三者之间相互矛盾,不可能使三个控制目标同时达到最优。提高质量意味着投资增加或者延长进度,压缩进度就会出现盲目赶工,势必影响成本与质量,如图1 所示。因此,合理的进度计划对于控制成本和质量,以及对项目的成败起着至关重要的作用也具有十分重要的意义。
图1 质量、成本、进度之间关系图
从项目实施的过程来讲,有效的进度控制应该具有以下的特征:具有有效的进度基准计划,项目经理能够实时地掌握项目实际进展状况;能预见性地发现和解决在项目实施中影响项目进展的问题;在实施过程中根据实际情况动态地进行调整、补充进度计划;能够采取有效方法控制影响项目进展的因素项目能在预定的(或可接受的)时间内完成。在项目过程中,进度监理的主要流程如图2 所示。
图2 进度监理流程图
3 进度监理的主要内容
监理人员主要是对进度管理的整个过程进行审查,包括审查进度计划的合理性、可行性,进度进程的完成情况,以及进度的调整与改进对策等,如表1 所示。
表1 项目进度控制中监理的主要职责
3.1 进度计划制定的监理
进度计划主要是对进度安排的合理性做出评价,目的在于为评价实际进度提供一个可靠的尺度。任何过紧或过松的进度都不足以反映开发方的工作情况。进度太紧会导致项目为了赶工而损害质量,提高成本,进度太松对于开发方没有压力,也会影响质量。合理的进度计划及要给各方一定的压力,要使其通过努力达到既定的目标。
3.1.1 进度计划书的规范性
监理人员在审查进度计划时,要检查计划书是否按照标准格式编写,这种格式应尽量依照国家标准和国际标准。如果在某项业务上没有相应的标准,开发方应该预先制定本项目的进度计划编写规范,这个规范应该是经过监理人员评审并同意的进度计划的规范,能够全面反映项目过程,并为各种需要阅读计划书的人提供良好的可读性。
3.1.2 计划书内容的完备性
计划中是否反映出时间、人物、结果等形式,在项目计划的早期可以首先建立一个宏观的进度安排表,该进度表应反映出任务的大致时间段,每个阶段的结果形式,如表2 所示。
随着项目的进展,再将宏观进度表中的每一项内容细化成详细的进度表。详细进度表应该细化到每周,包括每个人的职责和任务分派情况。正确的任务分派要控制好三个关键点。时间点、交付品、责任人。时间点是指任务明确的开始/结束时间最后同时交代清楚工作上下游关系;交付物是指任务的结果交付品应明确指明具体要求;责任人应该对具体问题负主要责任,尤其在几人协作完成任务情况下,更要明确负责人,防止责任推诿。任务委派最好有文字记录,如果任务比较简单,可以用责任矩阵描述,而复杂的任务可以给每个人任务书。 无论采用哪种方式,委派时最好要当面沟通和确认,并得到责任人的承诺。为了检查方便,在制定计划时要注意任务的颗粒度要适中,即应该尽量让任务的工期小于检查周期,这样项目例会上可以比较确切地判断任务的完成情况。
表2 宏观进度安排表
3.1.3 进度安排的合理性
监理人员可以从以下几个角度来度量进度安排的合理性。
(1)总的开发周期。总开发周期的制定有两种情况:第一种是首先规定了系统的最终发布日期,并且不能更改,信息系统开发方要在这一约束条件下将工作量分布在预先确定的时间框架中。第二种情况是,大致的时间界限由委托方给定,但需求尚未给定,所以总的开发周期是一个模糊的期限,这种情况下,在开发方对系统进行了解之后,会在总开发周期的基础上做出详细的开发计划,将最好的利用资源的方式对工作量加以分布,这个计划应当由开发方与委托方和监理方共同商量、讨论最后制定新的开发期限。
(2)在制订进度计划时,要根据项目规模分成几个里程碑,两个里程碑之间留大约30%的缓冲时间。
(3)工作量安排。在工作量分布上,可以考虑开发的顺序而统筹规划,有些任务必须顺序执行,而有些可以并发执行,有些只有等其他活动结束时才能开始,有些则可以独立进行。在工作量分配上,监理人员应重点考查人员数量与其工作量之间是否平衡,要保证在任一时间段内分配给任务的人员数量不能超过项目人员的数量。例如,一个项目有五人参加,每人每天工作量是1,如果在某一天中需要完成12项并发任务,每个任务需要的工作量是0.5,则这种情况下所分配的工作量就大于可用于分配的工作量,因而是不可行的。
(4)开发人员的可靠性。要充分考虑人员完成任务的能力,避免人员的频繁更换,尤其是主力人员。开发方往往有一种错误认识,即使进度拖延,也可以通过增加更多程序员在后期赶上进度。实际上,项目后期增加人员通常会产生一种破坏性影响 其结果会使进度进一步拖延。主要因为新手必须首先学习这一系统,而培训者正是过去一直工作的人,从而耽误他们的工作,此外,新加入人员会增加人员之间的通信路径数量和整个项目中通信的复杂度,从而需要更多时间。
(5)开发能力与资源的限制。在制定计划时 开发方的能力也是监理人员重点考核的因素之一。只有在能力允许下制定的进度计划才是可信的。有时开发方因为某种原因,会出现脱离实际的进度安排。如果开发方是新组建的团队,队伍里缺少富有经验的管理者,再将系统设计时间缩得很短,计划往往会难以修改而容易导致失败。对于新的开发者,在制定计划时不能将计划进度排得太满,要对系统的开发过程留有一定的余地,作为备用和应急准备。
(6)系统开发方法与过程。开发方法不同,各阶段的内容也有不同,每个阶段递交的成果也不同,要考虑计划与开发方法是否对应。
(7)工作量分布。项目各阶段的工作量分配上,有一种推荐性的指导原则,即,“40-20-40”原则,即40%工作量分配给前端的分析与设计,类似比例的工作量用于后端测试,编码的比例大约是20%的工作量。这个原则也要跟具体情况进行调解,如果是大型复杂的软件开发,分析设计任务的工作量多于40%;如软件系统是人命关天的,则要考虑分配更高比例的测试工作量。
3.2 进度进程实施的监理
在进度计划制定后,监理人员需要对进度进程进行实时跟踪和控制,通过使用多角度、多层次的数据、表格、图形,增强项目任务与进度状态的可视性,将实际与计划进度进行对比。监理人员在审查进度时可以在执行过程中的检查点进行,也可以在特定的时间进行。检查的目的是比较实际情况与计划差异,以确定当前的状态。比较正式的检查方式有例会、周报、汇报;非正式的方式包括口头询问、非工作时间的交流。另外,交付品的质量和提交情况、变更记录也是重要的检查手段。在正式检查方法中,参加项目组的例会是一种非常简单有效的方式。
在进度监理过程中,往往会发现进度与计划出现偏差的现象,对此,监理人员要认真分析导致进度延迟的原因,通常有以下几点:
(1)进度计划的失误。进度计划不仅包括正常进行的进度计划,还应包括进度拖延的调整计划。计划失误是常见的现象,在制定计划时不可避免地会与实际情况有所偏差。有时将持续的时间安排得过于乐观,如计划时遗漏了部分必须的工作;或计划工作量不足,而实际工作量增加;或资源或能力不足,例如计划时没有考虑到资源的限制或缺陷,没有考虑如何完成工作;以及出现计划中未能考虑的风险等等。这些都是计划的失误导致的进度拖延,解决的办法是在制定计划时充分论证和留有余地,并在过程中不断完善。
(2)边界条件的变化。边界条件是一个很广的范围,包括:系统需要的变更,委托方提出新的要求、修改项目的目标及系统范围的扩展;系统开发过程中方法选择不当、系统逻辑模型错误和修改、设计的错误或修改;委托方对开发过程结果的评审签字不及时等等。边界条件的变化,不仅造成对实施进度的干扰,有时甚至直接要求调整原来已确定的计划。
(3)管理的失误。管理的失误是对进度影响较大的因素,存在如下几种情况:委托方与开发方之间、计划方与实施方之间缺少沟通;开发方缺乏时间意识;责任落实不明确,不同开发组之间的接口不清。
(4)由于质量原因造成的拖延。时间和质量是一对矛盾统一体,在信息系统过程中,确保质量需要大量的时间为代价,有时往往为了赶进度而放弃质量,其结果是信息系统不能起到预想的作用,IT人员不得不再花更大的代价来维护和修改,导致进度拖延。
当出现进度偏差时,监理人员要认真分析,并向项目组人员提出建议,尽快弥补进度的偏差,偏差的大小及其所处的位置对后续工作及总进度的影响程度是不同的。在对进度计划实施分析的基础上,确定调整方案。进度偏差的主要控制措施如表3 所示。
表3 控制进度偏差措施表
在进度纠偏过程中,监理人员主要关注以下几点:开发方是否制定进度管理的方法、体制,是否得到计划、开发、运行及维护各业务负责人的认可;计划、开发、运行及维护各业务负责人是否把握进度状况,是否按计划执行;纠偏措施所产生的风险;各业务结束时,是否按计划等实施状况进度分析与评价;评价的结果是否反映到下阶段工程的进度计划中;评价的结果是否反映对进度管理的方法与体制等进行改进。尤其是压缩进度时会影响到系统的质量,如何取舍是非常关键的,IT 监理人员应当将情况及时向委托方报告,并征求委托方的意见。
3.3 进度调整的监理
由于边界条件的变化、系统的变更、管理失误等原因,需要及时重新调整原来确定的计划,避免新的变化引起的进度拖延。进度调整要跟踪需求变化,以控制需求的稳定性,并进行需求变更的影响分析,如表4 所示,并建立需求跟踪能力矩阵,需求跟踪支持工具集,支持任务与进度跟踪数据的变化与修改。
表4 变更影响分析模板
在这一阶段,监理人员主要针对以下要点进行检查:
3.3.1 分析进度调整计划的合理性
对于进度延迟,监理人员应该收集数据实地检查,与开发者进行会谈,获取对项目进展可能出现问题的客观评估,分析产生偏差的原因;在查明原因之后,要分析偏差对后续工作和总进度的影响,确定是否应当调整。监理人员主要审查以下几点:
1)调整计划是否对后续工作、总进度和质量造成不良影响;
2)进度调整后主要关键节点、后续工作的限制条件以及总进度允许变化的范围;
3)对于调整后的进度计划项目组是否有能力完成;
4)对于调整后的工作或计划,是否落实到具体的行动方案上;
5)在项目继续实施中,执行调整后的进度计划,并继续进度跟踪。
3.3.2 分析进度调整方法的科学性
在进行进度控制与调整的基础上,监理人员还需要对进度的合理性给予评价,并检查开发或维护人员是否根据评价结果对系统进行相应的改进,从而实现进度评价的有效性。进度评价主要有以下几点:
1)检查在各业务结束时,是否按计划对实施状况进行分析与评价,评价的结果是否客观、真实,是否分析了影响进度的主要原因,是否提出了相应的应对措施,应对措施是否合理,能否实现等。
2)检查评价的结果是否反映到下阶段工程的计划中,在下阶段的工程实施过程中是否按照相应的进度调整计划进行实施。
3)对进度的评价是否反映对进度管理的方法与体制等的改进。
4 监理报告的提交
监理单位应当按照计划,分阶段定期向委托方书面报告工程情况,例如:在进度过程中,针对各个阶段进度方面出现的问题,可以提交以下报告:
1)每周一次的例行工作报告。
2)针对工程中某一进度问题的专题分析报告,并对计划做出合理的调整。
3)对文档的审查报告。
4)阶段性报告,在每一个里程碑结束后,提交阶段性监理报告。
此外,在监理过程中,监理单位应按照公正、独立、自主的原则开展监理活动,维护委托方与开发方的合法权益,一方面,严格按照有关法律、法规、规范、标准实施监理,严格按照监理合同和其它合同实施监理;另一方面,要运用合理的技能,谨慎而努力地工作,为委托者提供满意的服务。同时,应当与开发方友好合作,共同实现项目总目标。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
读过这篇文章的人还读过:
4006199527