
研究表明,大量使用IT的行业所表现出来的生产率是其它行业的10倍,在国际上,发达国家金融业在进行IT系统建设和管理上已经广泛推行了IT服务管理战略,帮助企业实现IT与业务的整合,提高IT投资回报率,促进企业信息化的可持续发展。
现在,金融业务对计算机网络和信息系统的依附程度越来越高,在金融行业的发展过程中,IT项目在推动金融行业发展和创新方面显示出日益重要的作用。加强 IT项目管理工作成为当前金融信息化建设的一项重要工作,应引起各方面高度重视,进一步加强IT项目管理工作,提高应急响应、处理和故障恢复能力,确保IT系统安全、稳定运行。
金融信息化过程不是简单的技术化过程,其本质在于通过运用现代信息技术确保银行业内各环节信息的畅通,并且强调各种信息之间互动性、关联性和智能化。在金融行业的信息系统开发过程中,只有确保项目与质量管理体系在IT项目中得到较好的应用,组织内项目管理的方法和手段才能趋于一致,项目开发过程才能做到运作规范、过程明晰。
1、IT在金融行业中的作用
在信息化时代,在中国入世、金融证券业向外资开放的巨大压力面前,通过顶级的网络管理实现竞争手段与国际金融机构同步升级成为必然的选择。纵观国内金融业界,无论是大型银行,还是保险公司,或者是证券行业,在这些机构内,IT成为有具体目标、为其业务需求服务的战略工具。比如,花旗银行IT部门,已经不再只是一个单一的IT部门,而是一个向整个银行业务提供业务管理与解决方案的平台,在这一平台上实现业务运行,实现资源调配,实现业务变革。
随着业务的发展和金融业科技应用水平的不断提高,金融机构启动、规划、开发的IT项目规模越来越大,项目复杂度和管理难度随之不断提高,项目团队能否有效解决项目执行过程中出现的各种问题已成为影响项目效果的关键。但是,IT在极大地促进了银行业的发展,为金融业提供了巨大发展机会的同时也使之面对巨大的风险。
2、金融行业IT项目管理中存在的问题
在金融行业实施IT项目开发管理的过程中,项目总是会遇到各种各样的困难和问题。例如,因某些技术问题无法有效解决,项目进度受到严重影响;开发环境管理不善,造成项目前期资料和工作成果遗失,出现IT项目中断或宣告失败,或者某IT项目未按计划完成而不得不追加投资的情况,严重影响了金融业务的正常运行。
(1)对IT项目管理的重视度不够。金融机构高级管理层的决策更多地是关注新产品、新项目的开发。而IT运营方面除非出现了重大的问题,否则高级管理层极少触及。因此,对高级管理层而言,IT运营风险相对于其它风险来说要疏远得多。存在的误区包括:认为在IT发展水平不高的情况下,信息技术风险所造成的威胁也不大;信息技术风险基本上是小概率事件,因此可以认为不会发生;建立质量最好的IT基础设施就可以防范风险等。
(2)缺乏应急机制。金融业IT系统大都是全国性集中的大型应用系统,对设备、通信、电力、技术高度依赖,具有很强的时效性、连续性、关联性。当有IT系统危机。或事故发生时,仅仅依靠单个金融机构自身力量处置往往是不够的。
但是,但从总体情况来看,IT系统应急预案还不够完善,很多是在套用上级机构应急预案的基础上建立起来的,没有很好地结合本地、本业务的具体情况;从形式上看,现行的应急注重内部应急机制建设,对外部因素估计不足;IT系统应急有别于公共应急,具有很强的专业性。目前许多单位制定的应急预案以及在人员、设备、流程等方面的考虑只盯住了单位内部,对外来的硬件、软件、非本单位管理的外部基础设施等问题考虑不够;风险评估机制、安全策略评估机制不健全,不能为IT系统的运行提供有效预测、预警,不能支持应急处理。
3、金融行业中IT项目管理的基本理念
IT信息管理与金融企业业务开展之间的关系越来越密切,对业务开展的作用越来越重要。在IT系统建设和管理中,除了要有先进的设备和技术外,还必须有一套规范、可管理的IT服务管理流程。
(1)IT项目管理需要将IT技术与企业目标的整合,并满足客户对IT服务品质和服务体验的要求。即在提供IT服务的时候,首先应该考虑客户的业务需求,根据业务需求来确定IT需求。
(2)IT只是银行运营业务流程的一种手段,不是目的。IT服务管理必须强调根据客户的需求对IT进行“量身定做”式的管理,通过提供高品质的IT服务提高客户的满意度。金融IT服务管理在实施每个管理流程时都应该从客户需求的角度出发。
(3)IT项目的风险管理主要体现在运营管理和安全管理两个方面。如何通过强化运营管理和安全管理,最大限度地发挥IT系统的效率,已经成为金融机构一项重要的工作。
(4)IT部门要侧重于从技术角度对基础设施进行管理。
这种管理覆盖了IT基础设施管理的所有方面,包括识别业务需求、实施和部署、对基础设施进行支持和维护等活动。通过良好IT基础架构管理,可以在确保IT基础架构稳定可靠的同时能够满足业务需求和支撑业务运作。
4、金融行业如何进行IT项目管理
(1)建立IT应急协作机制。突发事件影响金融机构的案例越来越多,严重影响了金融业务的正常运行。而且,金融业IT系统大都是技术复杂的大型 IT系统,要依赖多家厂商、集成商、运营商的产品和服务,有极强的专业性。在灾害、事故发生的紧急情况下,金融机构依靠自身力量往往无法完成对所有故障节点的控制。因此,加IT系统应急管理工作成为当前金融信息化建设的一项重要工作,应进一步加强应急管理工作,提高应急响应、处理和故障恢复能力,确保IT项目安全、稳定运行。
(2)通过在金融信息化建设中引入信息系统工程监理。金融信息安全直接影响着国家安全,对金融信息化项目实施临理,有助于严格执行国家有关的业务、安全及技术标准,符合国家和金融企业的根本利益。有了信息系统工程监理,可以力求实现以担各自的责任、权利与义务,明确和保护各方利益,规范项目 *** 作,区分各方责任,进而提高项目的执行效率。金融企业可以利用监理单位技术与管理经验,依托国家规范,强化系统集成软件过程管理和项目管理,控制系统建设过程中质量、进度、投资以及变更等问题的出现。
(3)对IT项目进行问题管理。在金融机构中的IT项目团队能否有效解决项目执行过程中出现的各种问题尤其重要,因此,在金融机构实施 IT项目的实践活动中,有必要结合现代项目管理知识对问题管理作进一步的研究和分析,通过制定一套行之有效的解决问题的方法和问题管理机制,快速提高项目团队识别、分析、解决问题的能力。这对于提高IT项目管理水平和组织工作效率,提高IT项目社会经济综合效益,实现成功的项目管理具有十分积极的推动作用。
捷为iMIS-PM集成项目管理系统-中国项目管理系统领跑者
IT项目管理是项目管理在IT领域的应用,结合IT行业特点运用项目管理技术、理念和方法,包括9大知识领域(项目综合、范围、时间、成本、质量、人力资源、沟通、风险和采购管理)以及启动、计划、实施、控制和收尾等过程组成。
软件项目开发管理过程中,不仅要努力实现项目的范围、时间、成本和质量等目标,还必须协调整个项目过程,以满足项目参与者及其他利益相关者的需要和期望;随着软件规模和所涉及的领域不断地扩大,软件项目的管理越来越困难。纵观所有失败的软件项目,基本原因是不能管理其软件过程,在无纪律的、混乱的项目状态下,组织不可能从较好的方法和工具中获益。严谨的软件过程控制与管理不仅可以在每个阶段回顾和纠正项目的偏差,识别软件项目的风险甚至果断中止项目,而且可以将人才流动所带来的不利影响减少到最小。要进行有效的过程控制,必须明确软件项目管理流程。
1、流程第一阶段:项目的启动
在项目管理过程中,启动阶段是开始一个新项目的过程。启动信息技术(IT)的项目,必须了解企业组织内部在目前和未来主要业务发展方向,这些主要业务将使用什么技术及相应的使用环境是什么。启动信息技术(IT)的项目的理由很多,但能够使项目成功的最合理的理由一定是为企业现有业务提供更好的运行平台,而不是展示先进的IT技术。
2、流程第二阶段:项目的计划
在项目管理过程中,计划的编制是最复杂的阶段,项目计划工作涉及九个项目管理知识领域。在计划编制的过程中,可看到后面各阶段的输出文件。计划的编制人员要有一定的工程经验,在计划制定出来后,项目的实施阶段将严格按照计划进行控制。今后的所有变更都将是因与计划不同而产生的。也就是说项目的变更控制将是参考计划阶段的文件而产生的。
3、流程第三阶段:项目的实施及控制
在项目实施阶段是占用大量资源的阶段,此阶段必须按照上一阶段定制的计划采取必要的活动,来完成计划阶段定制的任务。在实施阶段中,项目经理应将项目按技术类别或按各部分完成的功能分成不同的子项目,由项目团队中的不同的成员来完成各个子项目的工作。在项目开始之前,项目经理向参加项目的成员发送《任务书》。
4、流程第四阶段:项目的收尾
在项目管理过程中,计划的编制是最复杂的阶段,项目计划工作涉及九个项目管理知识领域。在计划编制的过程中,可看到后面各阶段的输出文件。计划的编制人员要有一定的工程经验,在计划制定出来后,项目的实施阶段将严格按照计划进行控制。今后的所有变更都将是因与计划不同而产生的。也就是说项目的变更控制将是参考计划阶段的文件而产生的。
5、流程第五阶段:项目的维护期
在项目收尾阶段结束后,项目将进入到后续的维护期。项目的后续维护期的工作,将是保证信息技术能够为企业中的重要业务提供服务的基础,也是使项目产生效益的阶段。在项目的维护期内,整个项目的产品都在运转,特别是时间较长后,系统中的软件或硬件有可能出现损坏,这时需要维护期的工程师对系统进行正常的日常维护。维护期的工作是长久的,将一直持续到整个这个信息技术(IT)项目的结束。
IT项目开发人员普遍认为,要高质量并按时完成项目是难以实现的,项目经理们并非不想要高质量的项目成果,他们只是想在质量的基础之上,能够按时完工和低于或等于预算的情况下,实现这个项目。有些项目管理技巧虽然确实可以成功地在降低成本和开发时间的同时不会对质量造成影响,然而,必需注意的是,过度地利用这些技巧就有造成灾难性后果的潜在可能。
1、时间盒(Time boxing)
在破坏项目质量的事件列表上,时间盒的应用排在第一位,当您告诉某人在任务必须移交之前,他拥有多长时间来完成这项工作,我说“移交”而不是“完成”,因为在极端情况下,这经常意味着代码并不完善,仅仅是抓紧时间去完成这项工作。
在大多数情况下,时间盒是有效的,因为它可以做到四件事:
1 它迫使开发者能够富有创造性地在他们的预算之内发现解决方案。
2 它排除了经常添加在软件中不必要的虚饰,而这些虚饰往往并不能增加软件的价值。
3 它防止开发者过度测试。
4 目的只是要得到这件产品,在完整的质量评价(QA)阶段将会有详细的测试,希望在此阶段中能够发现代码中存在的问题。
当存在未知问题,或技术没有经受检验,或没有正确的方法来检验结果的时候,时间盒就无能为力了;当时间盒很小,而且在分配的时间之内并没有可能的办法来实现目标时,这种方法也是无效的。换句话说,时间盒可以很好地解决一些问题,比如充分理解、谨慎评估和执行类的任务;然而,也确实存在时间盒方法不能很好解决的问题,比如研究和发展,还有解决问题等等。
如果时间盒是正确使用的,那么不应当导致测试到很糟糕的代码,这些糟糕的代码可能会导致数百个小时的诊断和返工。时间盒应当适度使用来确保最低的成本、最快和最高质量的软件。
2、误期
所有人都要有奋斗的目标,里程碑是一种受到尊敬的方法,它用来激发人们向同一个目标前进,这种动力可以在很短的时间内得到重大成果。然而,每个人都必须承认里程碑所界定的时间并不是每次都能实现,这时就必须要做出新的决定。
项目经理们必须要在团队中树立里程碑的目标,以此来激励他们前进,但是,当里程碑确立的日期并不现实,而且队员们一再出错,那就应该重新评估这个计划了。如果因为某种特殊情况可以使这个日期不再重要,那么当这个重要日期真正来临的时候,整个团队就只有很小的动力来实现这个里程碑日期。当整个团队连续错过了10个日期,那么第11个日期还重要么这就像喊着“狼来了”的孩子一样。
如果在设定的时间线之后并没有任何处罚,那么当错过这个时间的时候就应该强制执行或者移动整个时间线。
长远来看,不断创造持续的压力和令人迷惑的环境并不能创造出好的软件,开发人员需要能够专心工作的环境。完成项目的日期和关于里程碑日期是否真实的混乱,经常会导致开发人员在开发过程中跳过关键步骤或者造成难以发现的问题。
3、忽视相关性
在软件开发中,我们有很多技巧可以用来延迟相关性,我们可以停用一些函数、移动相连的基本架构,或者绕开众多的错误处理,在正确使用的情况下,所有这些技巧都可以帮助推进一个项目,然而,当为了完成项目,而这些技巧的成本因素又没有被考虑到整个计划当中时,就埋下了烦恼的种子。
很多时候,在项目中排列软件开发的顺序是非常具有挑战的事情,相关性并不容易被发现,因此也就不可避免地有很多相关性因素没有被安排到计划当中。为这些不可预见的相关性安排日程表可以让人变得疯狂,因此,压制相关性的方法是经常使用的,但是,如果过度使用了这些技巧,这些费用可能经常会占据项目总成本中很重要的一部分,而且直到项目的最后才会被发现。
所以要确信您现在所做的对于管理相关性是必需的,不会添加过多的成本,而且是整个软件开发项目中必不可少的一部分。当项目经理不能在成本与降低相关性的便利中取得平衡,那么他们草率地组装的代码将会展示出质量问题。
4、假装没有错误
在项目管理中,忽视并不是一种幸福。为了成功地完成项目,除了不可阻挡的政治压力,向公司其他的员工介绍项目的风险也是必需的。几乎每个软件开发项目都有延期或超出预算或同时出现这两种情况的风险。
问题在于,当最终某一时间,这些风险真正变为现实的时候将会引起恐慌,每个人都在混乱中将项目其余的部分组装在一起,整个项目的质量将因为最终轻率的装配而遭受损失。
当然,当整个项目还没有落后于计划之前,这一问题还不会充分暴露出来,然而,大多数项目都有办法只让项目的某些部分落后一点点,而几乎每个项目都有过于仓促的风险,这是因为管理层在很长一段时间之内都在项目没有任何问题之后得知项目的真实状态。
据调查,只有37%的IT项目在计划时间内完成,42%的在预算内完成。IT项目成功率不高的根源在于,IT项目管理是项系统工程,不仅需要项目经理个人具备一定的组织、决策、沟通、业务、技术能力,更需要运用多种手段对项目的时间、成本、质量和风险进行严格控制。如何提高IT项目的成功率呢?
关键控制点一项目的时间控制
首先,要明确项目期望值,做好需求调研,围绕企业的核心业务流程,制定切实可行的项目目标,这个目标万不可贪大求全,面面俱到,目的是满足核心业务流程需求,与核心业务流程关系不大或者毫无关系的内容,缓建或根本不建,将业务期望聚焦在更容易把控和量化的目标上来。项目实施完全围绕该期望进行,这也是项目实施中最重要的一点。
其次,信息化项目是需要多部门、多环节充分协作的系统工程,任何部门和环节的时间延误,都会导致整个项目实施周期的延长。因此,对影响项目进度的“短板”环节,进行着力攻坚,促进其与项目的其它环节步调一致,协同共进,能够有效保障项目的实施周期。
再次,信息化项目往往周期较长,因此需要针对项目的实施阶段制定“日清日高(?)”的项目时间保障机制,保证项目每一天都有明确的目标,才能对项目的进度进行有效掌控。
最后,由于信息化项目涉及面较广,参与人数众多,人员的素质参差不齐,对项目的把握也各不相同,因此在项目开始前需对参与项目的人员甚至高层管理人员,进行项目普及性培训,在项目进行中进行相关的项目培训……俗话说,磨刀不误砍柴工,提高每一位参与人员的项目能力才能有效提高项目实施的效率,从而保障项目的实施周期。
关键控制点二项目的成本控制
首先,信息化项目是IT技术在企业业务的应用,其开发和实施都建立在业务部门提出的项目需求之上。然而,由于项目开发和实施的时间较长,常常出现这样的情况,在系统开发完毕后,业务需求却已经改变,致使项目不得不重新进行开发。形成影响项目成本的主要因素。
产生这种情况的原因,一方面是因为项目小组前期调研不够深入,没有全面掌握业务部门的真正需求和需求的发展方向,另一方面是因为随着项目的深入,业务部门对项目在业务中的应用有了更加深刻的认识。想要控制这种来自需求改变的成本增加,项目经理除了在项目前期进行更加深入的项目调研外,还应该加大对业务人员的培训力度,让他们先于项目应用而对项目拥有更加深入的了解。
其次,在项目实施过程中,各种与业务相关的应用需求纷至沓来,不断增加的项目需求,将使项目预算不断增加,从而形成影响项目成本的又一重要因素。对于这种情况,项目经理要区别对待,如果确系有助项目期望的实现并能够帮助提高项目实施效果的需求,哪怕影响到项目的成本和延长项目的实施周期也要采纳这种需求,这是对项目的一种有益补充;如果与项目期望关系不大甚至没有关系的需求,则应坚决摒弃。
因此在项目实施前做好准确的项目期望,划定明确的项目开发任务和范围并严格执行,能够有效控制这类项目成本增加。
最后,信息化项目成本的另一主要来源是人力资源成本,因此在看到项目的硬件、软件等硬性成本同时,也不能忽略人力资源这一软性成本。有效控制项目实施时间、合理配置人力资源、避免人力资源浪费是控制这项成本的关键。
关键控制点三项目的质量控制
信息化项目的质量控制包括两个方面,一方面是IT技术本身(硬件、软件、系统)的质量控制,另一方面也是最重要的一方面,是IT技术应用于企业的质量控制。对于前者,我们可以依照国家的质量标准进行考量,而对于后者,则没有统一的标准,并难以实行量化控制,但无论如何,信息化项目的主体是企业,检验IT技术应用于企业质量好坏的标准则应该是项目在企业中的实施效果。因此做好信息化项目中的质量控制需做到:
对项目技术方案进行适应性评估信息化项目的最终效果体现在企业的应用,因此不适应企业实际情况的方案即使技术再先进、架构再稳定也不是好的方案。这就要求企业的项目经理,在拿到软件公司(实施方)提供的项目方案后,首先要对其进行适应性评估:一方面,评估项目方案与企业其它项目的技术路线是否一致。信息化项目是影响企业多个层面的系统工程,因此它并不是独立的,而是与其它项目紧密相连的。如果信息化各个项目的技术路线不一致,将会导致信息化项目间信息流通不通、数据接口不一致,形成各种信息“孤岛”;另一方面,评估项目方案与企业业务的结合程度。信息化系统最终用户是业务部门,因此项目方案要适应企业的业务需求,并易于与企业的业务流程融合在一起,并在充分满足业务需求的基础上,对业务水平有计划的进行提高。
阶段性评估与项目验收并重信息化项目的建设一般周期较长,且信息化项目建设的效果也需要一定的时间才能显现出来,因此如果项目的验收和评估都集中到项目完成后进行,就会导致项目承担风险过大。信息化项目边实施、边应用、边考量、边改进的阶段性评估,不仅有助于项目经理在项目进行中进行质量控制,而且能够有效降低信息化项目的风险。
对项目实施进行文档跟踪在项目实施过程中,分别根据实施的每个阶段编写建设(使用)手册,进行文档跟踪,并在项目完成后最终汇总成统一的项目建设(使用)文档,能够有助于项目经理对项目质量的把握和监督。
关键控制点四项目的风险控制
对信息化项目进行风险控制能够减少信息化项目实施过程中的不确定因素,有效提高信息化项目实施的成功率。由于信息化项目的核心是通过IT技术为企业的业务提供应用服务,因此信息化项目的风险主要来自以下三个方面:
一是技术风险,技术架构好坏、软件提供方的技术能力以及项目实施方的实施经验等因素形成了信息化项目的技术风险。为了规避项目的技术风险,企业的项目经理,一方面要选择开发能力较强的软件提供方和经验丰富、服务优良的项目实施方;另一方面还要把握项目的技术架构与企业其它信息化项目技术架构之间的一致性;此外,引入第三方的专业咨询、监理和项目评估也是企业规避技术风险的有效手段。
二是应用风险,信息化项目应用于企业,与企业业务之间的适应水平、结合程度以及项目实施带来的影响等因素形成了信息化项目的应用风险。在项目实施前,进行项目适应性评估能够预测项目与企业业务之间的结合程度,并能够有效预期项目应用后所带来的问题,提前研究解决办法;项目实施中,边实施、边应用,随时监控项目的实施情况和应用效果,出现问题及时解决,也能够有效规避项目的应用风险。
对于复杂的IT项目而言,其投资规模较大,实施周期较长,在实施过程中存在诸多风险,所以对其质量进行合理的跟踪与管理,以保证最终结果能够满足企业的要求,是一件非常重要的事。
IT项目管理同其他项目一样,都包括计划管理、质量管理、时间管理、预算管理、人员管理、风险管理等。项目质量管理是IT项目管理的一个重要组成部分。
从管理流程来看,IT项目质量管理是为了保证it项目最终能够达到预期的质量目标而进行的一系列的管理过程。it项目的质量管理可以分解为质量规划、质量控制与质量保证等三个过程。整个it项目质量管理过程可以分解为以下四个环节。
首先,要确立有效的质量标准体系。
建立适当的质量衡量标准是进行it项目质量管理的前提性的关键性工作。根据企业在实施it项目方面的整体战略规划与it项目实施计划,实施it项目的主体企业首先要确立衡量项目质量的标准体系。衡量项目质量的标准一般包括项目涉及的范围、项目具体的实施步骤、项目周期估计、项目成本预算、项目财务预测与资金计划、项目工作详细内容安排、质量指标要求以及客户满意度等。这里需要注意的是,项目质量指标体系一定要具备完整性、科学性与合理性,项目实施各相关主体应该事先进行讨论与沟通,以保证其完整、无漏洞,又具备较强的可实施性。
其次,要在项目执行过程中采取有效措施来监控项目的实际运行。
在IT项目实施过程中,根据要求收集项目实施过程中的相关信息,观察、分析项目实施进程中的实际情况以便监控。为了达到有效监控项目的目的,可以利用的监控措施与沟通渠道包括正式的监控与沟通渠道,比如,项目进度报告、项目例会、里程碑会议、各种会议纪要等;非正式的监控与沟通渠道,比如,与项目小组成员或最终用户进行交谈与讨论,与企业管理层进行非正式的交流等。在这个环节上,要根据项目质量标准体系的要求,通过有效的监控措施与渠道,全面、客观地跟踪与反映项目实施的实际情况。
再次,把项目实施过程中的实际表现与项目质量衡量标准进行比较,分析出差异。
在监控与跟踪项目实际运行状况时,往往需要解决这样一些问题,比如,“项目进展如何”,“如果发生了与项目计划偏离的情况,是如何造成的”等。通过对项目实施相关衡量指标的综合分析,为客观评价项目质量状况提供依据,帮助项目决策人员迅速、有效地对项目的实际进展情况进行监控与管理,从而可以根据需要采取有效措施来保证项目实施按着既定的轨道运行。
最后,根据具体情况采取合理的纠正措施。
经过比较与分析,如果发现偏差,就要采取适当的措施进行纠正,让项目实施回到正轨。可供选用的纠正措施包括重新制定项目计划、重新安排项目步骤、重新分配项目资源、调整项目组织形式、调整项目管理方式等。一般而言,为了保证it项目不偏离正常轨道,按着既定计划走向成功,保证纠正措施的合理性与有效性,需要it项目的实施主体事先了解一些it项目质量管理基础知识与相关案例,确保纠偏措施的有效性。
从IT项目质量管理的承担主体来看,既可以由IT项目实施主体来承担,也可以选择外包。it项目实施双方可以成为项目质量管理的主体,分别或者共同对项目实施质量进行管理。此外,还可以根据需要与企业资金实力情况,决定是否选用专业的第三方项目监理商协助对项目实施质量进行管理。
无论是否采取外包协助的方式进行it项目的质量管理,实施it项目的企业都应该作为主体首先提出IT项目的整体规划,为IT项目质量规划确立明确的方向,清楚自己究竟想要通过IT项目的实施得到什么。作为IT项目实施的服务提供商,对项目质量承担根本责任。因而,需要为IT项目的质量管理制定更为明确的计划,协助客户实现IT项目规划,达到预期目标。
另外,还要注意做好项目质量管理的组织工作。由于整个IT项目实施过程往往可能涉及到两方、三方甚至更多相关方的参与者,为了做好项目质量管理,达到预期的质量目标,在整个项目的组织架构中,还要明确建立对项目质量管理负责的团队及其相关的工作流程,从组织方面为项目质量管理做好准备。
很多项目经理可能对管理技巧与艺术知之甚少,因此必须迅速完成从技术向管理的转变。
知识经济时代,IT企业正处于高速发展并以项目为主导的环境之中。由于IT行业的需求千变万化,客户要求不断提高,技术进步对研究和开发项目的压力不断增大,法律、法规要求也不断严格,加之企业每天所面对的不仅仅是几个大型项目,因此IT企业的成功与否,将取决于项目的成功与否。在这种情况下,项目经理对于项目的成功与否起着关键的作用,自然成为企业的核心人物。
所谓项目经理,就是企业选拔并授权组织项目团队运用一定的工具与技术、按照一定的流程完成特定任务的负责人。IT项目经理除了要具有一定的专业背景和开发经验外,还要掌握管理的技能、领导艺术及个人魅力,特别要具备以下能力:
·管理能力
·学习能力
·沟通能力
·处理矛盾、解决冲突的能力
管理
在小孩子喜欢的动画片《变形金刚》中,当几个小机器人组合到一起时,就会变成一个可以打败任何强大对手的超人。IT公司中组建的项目团队也是一个道理,而项目经理就承担着管理这个超人团队的重大责任:你必须保证任何情况下都能演绎“1+1>2”的逻辑。
在国内IT界的公司中,绝大多数的项目经理都是曾经作出过突出贡献的技术专家。软件项目具有“外行比较吃力”的特点,所以项目经理的技术专家出身现象存在其必然性。但必须认识到,技术专家担当项目经理后,必须及时调整自己的定位,把握合适的角色:你是管理者、组织者,而不仅仅是技术专家;你的使命是提高团队的战斗力和凝聚力,是去指挥战斗,而不是充当一名战士。人们经常看到这样的情景:项目经理的电话几乎没有停歇,每月费用都是几千块,发出的指令多如牛毛,事必躬亲,结果效率却很低下。有时项目经理甚至亲自参与软件项目的编码工作,因为他们擅长这项工作,以至于总是对技术人员不放心。如果仅有几个项目,那这种做法还可能行得通;但如果一个公司十几个、几十个项目经常同时进行,而项目经理却要参与具体的技术工作,那会是什么后果?所以经常能听到项目经理“我很忙”、“我很累”、“我需要增加人手”的抱怨。按照上述做法,问题永远也得不到解决。一个人的精力毕竟有限,如果项目经理把精力都放到解决技术问题上,那管理的问题谁来解决?谁来考虑部门的未来发展,谁来协调部门之间的关系,谁来关心日常行政事务?
项目管理有一个完整的过程及本身的规律,它涉及广泛的知识领域。与一般管理活动相同,项目管理就是运用各种知识、技术、工具和方法,来计划、组织、指挥、协调和控制项目的进度、成本、质量、人力资源等因素,来满足或超越顾客的需求和期望,实现项目目标的过程。即项目经理带领其团队运用工具、技术和知识,按照一定的程序来处理项目活动中的各种关系,完成项目目标的过程。所以,项目经理的工作重心应该从处理80%的技术问题向处理20%的技术问题转变。
学习
作为一个项目经理,必须理解、掌握项目管理的以下知识:
·项目的一般过程:启动、计划、实施、跟踪、控制、收尾;
·项目本身的一些规律,如范围、时间、质量、成本间的制约关系等;
·项目的风险管理、采购管理、信息交流管理等;
·项目管理的技术和工具,如项目分解、项目计划、进度估计、费用估算、风险评估与分析、项目控制等。
为了理解、掌握上述知识,你必须具有很强的学习能力。21世纪持久的竞争优势就是你比竞争对手学得更快,在迅速变化的竞争环境中,不学习只能变成一只濒临灭绝的恐龙。因此你要:
1、向别人学习
每个人都有自己的知识储备,但随着竞争环境的变化,项目经理能否与时俱进的关键,在于你的知识“数据库”能否不断更新。你需要同其他项目经理、团队成员、客户进行沟通,交流知识,他们可以告诉你最新的产品信息、竞争对手的情况、客户偏好的变化及对变化的预测、对服务和产品使用方法的及时反馈,从而帮助你解决不断涌现的新矛盾、新困难、新问题。
2、知识的传递
项目经理必须能够使学到的知识在整个团队中进行有效的传播。当更多的人能够接受时,知识才能产生更大的作用,团队的整体实力才能增加,从而知识在实践的循环中才能有新的创造,才能增加新的知识。
3、知识的整合
如果一个探险队要穿过一片森林,当队长手中有一张地图的时候,他可以借助地图带领队伍穿过森林,也可以找当地人作向导。无论怎么做——使用地图、还是找向导,队长得到的指示应该都是一样的。为了得出正确的结论,队长应该把当地人的经验和自己对地图的理解结合在一起,将外部知识和内部知识结合起来,使风险降到最小,这就是知识整合的过程。而这里的队长就是IT企业的项目经理。
沟通
在IT企业整个项目管理活动中,沟通起着非常重要的作用。沟通包括项目团队及队员个人同客户的沟通、项目团队与供应商的沟通、团队队员内部的沟通等。在每个沟通环节,项目经理都处于核心地位。如果把团队比作爵士乐队,那么项目经理就要为团队创造一种和谐的旋律,让每个乐手都能创造出自己独特的演奏手法、节奏和发音,也使其他队员及整个团队受到鼓励。
项目经理要具有进行全方位沟通的能力:向上级管理者汇报、交流,同下级部属及小组成员交流,同公司其它职能部门协调、交流,同公司外部——政府、社会团体、公众、赞助商等进行沟通。
项目经理应该能够激起沟通对象的兴趣:建立清晰的、鼓舞人心的阶段性企业目标,指出达到目标的明确途径,采用令大多数员工都能感到兴奋的手段;开展“脑力激荡”活动,不断调动团队的积极性,发挥团队每一个人的潜能,激发创造的灵感。
此外,项目经理还应具备准确、积极、有效地传达信息的能力等。
融合
在IT企业中,每一种人在对待个人、工作、金钱、时间、技术和权威等问题上都有各自的态度,至少有三种彼此独立的文化,即“业务文化”、“管理文化”和“技术文化”。同时,IT企业又是一个个性化的团队,个性是“新创意”和“成功的可能性”的种子,成功的IT企业必须要让每个队员的理想、渴望、激情在这个多元化的场所中得到充分的释放。可以说,IT企业生活在文化冲突之中,所以项目经理的一个重要责任就是解决文化冲突问题:化解冲突和矛盾,创造和谐的工作环境,达到个性与共性的统一。因此,项目经理必须具有很强的处理矛盾、解决冲突的能力。具体表现在:
能够让这些来自不同文化的队员和谐工作、顺畅交流。
对于合资企业的项目经理来说,你的队员可能来自不同国家、不同文化,因此项目经理必须具备——建立共有价值观,避免文化冲突带来沟通障碍——的能力。
总之,项目经理责任重大,想要平衡方方面面的要求存在很多困难。很多项目经理是在业务或者说技术方面积累过硬的能力之后才被赋予这一责任的,他们可能对管理技巧与艺术知之甚少,因此必须迅速完成从技术向管理的转变。
项目开发方面
项目应以需求为核心。一个项目是否能够成功,对需求的准确把握在成功因素中要占上60%的比例。不管系统的架构设计、团队管理有多么的成功,如果需求出现偏差,仍然是南辕北辙。由于eas项目的特殊性,项目开发过程中能够与客户建立有效快速的沟通渠道,是项目成功的关键。
需求必须获得客户的确认。通过需求调研与分析后获得的用户需求说明书,以及软件需求规格说明书都必须得到客户的签字确认。确认的内容包括项目的目标、范围以及项目需求功能点(用例)。eas项目在前期对需求不够重视,导致在需求理解上出现了一些偏差,从而影响了项目的进度。幸而得到了及时的纠正,在项目管理部的协助下,所有需求都得了客户或客户代表的签字确认。从而使得项目在客户验收时,有了充分的保证。
项目应确立专门的需求分析师。公司没有专门的需求分析师,不能不说是人员配备上的一大弊端。(软件开放工作细分的第一步就是要有专门的系统分析员或需求分析师)从eas项目的开发过程中,我们就充分地认识到这一问题的严重性。需求的不断更改,客户迟迟未签字确认,原因正是在于我们没有专门的具有丰富经验的需求分析师。普通开发人员在调研需求以及撰写需求规格说明书时,总是会出现偏差或理解错误的地方。软件需求分析是一项重要且负责的技术,没有经过专门训练的需求分析师,通常会给项目带来隐患。
项目应指定各个模块的需求接口人。只有这样,才能有效地保证项目组与客户的及时沟通,快速响应客户的请求与反馈。eas项目在开发早期及时地确立了需求接口人,在一定程度上规避了需求变更给项目带来的风险。但是,确立的需求接口人未经过系统培训,在需求调研以及与客户沟通的过程中,工作表现只能说是差强人意。
注意维护需求调研记录以及需求跟踪表。这一工作做得不够好。由于需求调研人不够专业,而项目经理以及需求分析负责人对这一过程还欠缺足够的重视,同时没有好的工具或流程来监控这一过程,使得需求调研记录没有发挥更大的作用。此外,需求跟踪也非常重要,毕竟,任何项目的需求都不是固定不变的,需求随时会发生变更,而开发人员实现的需求也可能会与客户的要求偏差。
注意维护需求矩阵。项目经理对这一内容缺乏足够的重视与理解,项目开发过程体系中也缺乏好的需求矩阵文档模板。但是在项目中后期,项目及时撰写了eas项目需求功能列表,并结合交付版本与客户进行了沟通和协商,从而规避了需求偏差的风险。(需求追踪,任何原始需求来有头就有尾。原始需求->用户需求->产品需求->软件需求->设计->测试等一系列的追踪。需求追踪的目的一方面是检查需求是否都已经实现有无遗漏,更多的是为了做变更影响分析使用)
控制需求变更。重视ccb的作用,同时应建立需求变更的响应机制。eas项目组对于需求变更的响应还不够及时,这一点项目经理与项目管理小组要担负一定的责任。(范围管理中范围控制的内容,变更管理是配置管理的一个重要内容。需求必须要受到控制,否则容易引起计划的频繁调整而发生混乱)
设计
重视架构设计。eas项目的成功,一定程度是源于我们有个优秀的框架开发小组,我们在项目立项之初就基本确定了整个系统的架构。其中虽然发生了一些变化,但核心架构仍然没有发生大的变化。由于,我们建立了稳定、简单的系统框架,可以极大地提高开发效率,规避了对框架的重复编码。(软件开发的第二个重要分工就是最好有专门的架构设计人员,架构设计和总体设计要由1-2个人来完成,以保证高度的概念完整性和设计统一)[1][2][3][4]
善于对设计作出取舍。项目开发的三要素是成本、质量与进度。在保证质量的前提下,为了项目进度不出现大的偏差,eas项目组并没有过分强调技术,特别是在考虑进度的情况下,牺牲了系统的部分可扩展性。虽然这为系统的后期维护带来一定隐患,但却能够有效地保证项目的进度。从eas最初的架构设计来看,我们引入了 castle与aop,试图简化orm以及横切关注点例如日志、异常、权限、事务等功能的实现。同时,希望采用wcf,利用soa思想建立松散耦合的面向服务应用程序。但随着客户需求的变化,我们果断地放弃了采用wcf的构想,同时又克服了技术困难,坚持了对castle与aop的使用,并为此成立了框架开发小组。事实证明,在技术的抉择上我们作出了正确的决定。
重视ui原型设计。系统的原型设计与需求分析相辅相成。如果有好的原型版本交付给客户,则客户更能够理解系统的实现,促进沟通的有效性与准确性。在eas项目中,我们从一开始就确立了原型设计小组,并在分析需求阶段,就开始了原型设计。这一做法无疑在客户沟通、需求确认、ui设计等方面都发挥了很大的作用。但是,我们在这一点上,由于缺乏专门的ui设计人员,因此,这一工作还存在很大的缺陷,甚至于ui的设计为迭代版本的交付带来了很大的障碍。在项目后期,关于ui的bug是最多。因此,我们认为在开发类似的web应用程序时,应尽早确立ui设计规范,以约束所有的ui设计。同时,必须培养专门的ui设计师,在开始原型设计时,就尽快完成ui交互的设计。并且,必须成立专门的ui 设计小组,在需求阶段与需求分析师合作,在编码阶段与开发人员合作。(原型设计是加强前期用户需求挖掘和减少后期需求变更的重要手段,不一定需要专门的ui设计人员,原型设计可以由需求分析师来完成)
测试
测试成员应了解需求。如果不了解需求,测试人员无法编写正确的测试用例,同时在测试过程中,也可能因为错误地理解需求,从而导致报告错误的bug,影响开发人员效率。加强开发人员与测试人员的合作。开发人员必须及时响应测试人员提交的bug。而测试人员也应跟踪开发人员对bug的修复情况。(测试人员应该要意识到自己和需求分析人员的区别,测试人员不用想需求分析人员一样分析和开发业务,但是他们必须和需求分析人员一样对已经分析出来的需求和业务高度熟悉)
测试之初必须确定测试原则,对bug的严重程度进行分级。同时,必须确定修复bug的优先级别。
进度管理
保证项目进度不出现大的偏差的前提是制定一个好的项目计划。必须根据项目规模,成员情况,技术难度等多方面考虑整个项目计划。如果项目的deadline已经确定,则必须采用一些方法来保障项目计划的完成。首先是选择符合项目的软件开发生命周期。通常情况下,并不建议采用瀑布开发方式。最佳的办法,应该是 rup或者敏捷开发,然后结合原型法制订项目计划。这样可以规避因为需求变更产生的风险。
其次,要每日跟踪项目的进展情况。可以通过晨会、周会以及项目日报、项目周报了解项目进展情况。同时,需要为各个小组指定进度跟踪人,根据各个小组长的日报,判断实际的进度是否与计划出现偏差。
要制定项目进度偏差的应对方法。一旦项目进度出现了偏差,必须采取相应错误解决问题。或者通过加班、增加人手、申请项目进度等方法及时作出响应。
及时向项目成员汇报项目进度情况。只有让各个项目成员了解到项目现状,才能够给每个成员增加压力,不至于松懈。同时,也能够使得每个成员能有一个目标,而不至于茫然失措。
制定项目计划时,必须考虑阶段评审与同行评审的时间。这一点在eas项目中做得不够好。其中原因也是由于项目进度本身较紧的缘故。注意维护项目进度跟踪表与项目进度偏差跟踪表。让项目管理部以及qa及时掌握项目进度,有利于对项目进度的管理。
变更管理
变更包括需求变更、人员变更。如果不控制好,两者对项目的进展都会带来灾难性的后果。需求变更在前面已经叙述,而eas项目中发现人员变更的情况也非常严重,因此这里重点介绍关于人员变更的管理。
如果发生人员进入的情况,那么对项目带来的通常都会是好的影响。但我们也必须注意如何让新成员更快地融入团队。整体上讲,如果需要新成员加入,发生变更的最佳时机是项目前期。如果在项目中后期加入新成员,无疑则意味着项目出现了灾难性的后果。而新增加的成员,由于不熟悉项目,所能带来好的影响也是有限的。如果不处理好新成员与老成员之间的合作关系,反而会带来负面影响。
人员的退出很多时候是不可控的,同时对项目带来的影响也是不可估计的。为了将这些影响降到最低,就必须在项目开始之初就要确立编码规范。同时,还应该重视对文档的维护与更新。而在人员退出时,必须做好交接工作。同时,还应对这种变更进行合理的评估,并及时报告项目管理部,并与客户及时沟通。如果对项目进度有严重影响,应争取最大的努力取得客户的理解,提出项目延期的申请。
风险管理
要在项目开始之初就考虑到项目过程中可能出现的所有风险,是不现实的。但是,我们必须考虑对风险的管理,尤其是在制订项目计划以及创建团队的时候,考虑这一因素。风险有很多,包括需求的风险、进度的风险、质量的风险以及技术风险等。必须制定一套完整的风险管理计划,而一旦发生了风险,则必须及时响应,组织相关人员解决风险。不能忽略任何一个小的风险,否则一个小的风险到最后会造成大的灾难。风险的把握必须要有项目经理与系统架构师把关。
成员管理
不团结的项目组是无法保证项目的成功地。项目经理与项目组长在管理团队成员时,必须时刻注意成员状况,即使处理工作出现的矛盾与摩擦,随时保证团队合作精神得到最大程度的执行。
持续地保证项目成员的士气非常重要。项目每取得一个阶段性的进展,必须告知全体成员,如此才能收获成功的信心。项目开发过程需要注意劳逸结合。一味地强制性加班,只能降低项目成员的工作效率。项目过程中,如能适当地开展一些活动,无疑能够让团队成员感受到项目组的集体气氛。在阶段实现的重要时刻,项目经理必须注意通过文字、语言等激励项目组成员。而项目经理的自信也是保证成员士气的一个关键。
必须注意了解团队成员的心理状态与工作状态。项目成员的战斗力除了是个人的能力发挥之外,一个好的领导也是至关重要的。因此,必须选择合适的项目组长,通过他们掌握整个项目团队成员的工作进展。同时,还要了解每个成员的能力,以安排合适的角色与岗位。
重视开发组与测试组以及项目管理小组的合作。项目组是一个整体,每个成员的角色不同,但大家都是团队的重要一员。
作者:张逸具有多年的软件开发与设计经验,他是两届微软最有价值专家(mvp),著作/译作包括《软件设计精要与模式》、《wcf服务编程》。张逸熟悉c#,asp,wcf等技术,同时深谙面向对象领域的相关技术。目前,他主要从事 soa企业信息解决方案的设计与研究,以及敏捷方法的推广与实践。张逸是捷道·敏捷堂的创始人。
以上就是关于如何做好金融行业IT项目管理全部的内容,包括:如何做好金融行业IT项目管理、IT项目如何做好项目流程管理、IT项目质量管理技巧应用的注意事项等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)