发布时间:2022-04-16 04:51:36
开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的1篇软件项目论文,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。
编者按:本文主要从引言;软件项目管理的特殊性;软件项目管理的关键因素;结论进行论述。其中,主要包括:传统作坊式的开发方式逐步被以项目组为单位的协作式开发方式所取代、所谓项目,就是在特定条t"ae下,具有特定目标的一次性任务、项目管理是指“在项目活动中运用专门的知识、技能、工具和方法、软件项目管理和其他的项目管理相比有相当的特殊性、软件项目管理是一种科学的管理手段、软件项目管理的范围不包括传统的软件开发过程、合理配置人力资源、顺畅有效的沟通管理、周密可行的项目计划、健全完备的文档资料、严格的风险管理等,具体请详见。
[论文摘要]科学有效的软件项目管理有助于项目开发的成功.本文介绍了软件项目管理的内容并结合软件项目开发经验,探讨了影响软件项目管理的几个关键因素.
[论文关键词]软件项目软件项目管理
0引言
随着信息技术的飞速发展,软件产品的规模和复杂度随之增加,传统作坊式的开发方式逐步被以项目组为单位的协作式开发方式所取代,这就必然涉及到对软件项目的管理.实践表明,一个软件项目的成败,不在于其项目组的技术人员的技术水平,而在于是否采用的合适的管理:.好的管理方式不一定能使项目完全成功,但是一个不合适的管理模式往往会导致软件项目的失败.
1软件项目管理的特殊性
所谓项目,就是在特定条t"ae下,具有特定目标的一次性任务,是在一定时间内,满足一系列特定目标的多项相关工作的总称.项目具有一次性、独特性、目标的确定性、组织的临时性和开放性以及成果的不可挽回性等基本属性.
项目管理是指“在项目活动中运用专门的知识、技能、工具和方法,使项目能够实现或超过项目干系人的需要和期望.”这一定义不仅仅是强调使用专门的知识和技能,还强调项目管理中各参与人的重要性.项目经理不仅仅要努力实现项目的范围、时间、成功和质量等目标,还必须协调整个项目过程,满足项目参与者及其他利益相关者的需要和期望.
软件项目管理和其他的项目管理相比有相当的特殊性.首先,软件的整个过程都是设计过程,不需要大量的物质资源,而主要是人力资源,软件开发的产品以程序代码和技术文档为主,并没有其他的物质成果;其次,软件是纯知识产品,其开发进度和质量很难估H-和度量,生产效率也难以预测和保证.软件系统的复杂性也导致了开发过程中各种风险的难以预见和控制.因此,软件项目管理和其他项目管理相比,有很大的独特性.
2软件项目管理的内容
软件项目管理是一种科学的管理手段,它是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、~x-2,险等进行分析和管理的活动.管理的范围涉及人员的组织与管理、软件度量、项目计划、风险管理、质量保证、过程能力配置管理等几个方面,这几个方面都是贯穿、交织于整个软件开发过程中的.从软件工程的角度讲,软件开发主要分为六个阶段:需求分析阶段、概要设计阶段、详细设计阶段、编码阶段、测试阶段、安装及维护阶段.不论是作坊式开发,还是团队协作式开发,这六阶段都是不可缺少的.从用户的角度来看,软件项目的生命周期应该包括项目前期的论证工作、项目计划、软件开发、运行、维护及项目评价.由此可见,软件项目管理的范围不包括传统的软件开发过程,还应该包括开发前的准备工作以及运行中的维护工作和对项目的总结工作.根据PMBOK(项目管理知识体系ProjectManagementBodyofKnowledge,简称PMBOK)中的定义,软件项目管理可以分为以下几个方面:
2.1集成管理:项目计划制定、项目计划实施、集成变更控制等.
2.2范围管理:制定范围计划编制、范围定义核实、变更控制、任务协调等.
2.3时间管理:项目任务分解、进度计划编制、任务持续时间估算、进度计划控制等.
2.4成本管理:资源计划编制、成本估算、成本预算和控制等.
2.5质量管理:项目质量计划编制、软件质量保证、软件质量控制、软件过程改进等.
2.6人力资源管理:组织的计划编制、人员职责的分配、团队合作发展等.
2.7沟通管理:建立沟通渠道、信息交换管理等.
2.8风险管理:项目风险识别、项目风险分析、项目风险优先分析、项目风险控制等.
2.9采购管理:采购计划编制、合同管理、合同收尾等.
在面的软件项目管理中,有几个关键因素,它影响着软件项目的成败,下面就这几4-关键因素进行一下探讨.
3软件项目管理的关键因素
3.1合理配置人力资源
众所周知,人是决定组织和项目成败的关键,也是影响软件93:发质量的最关键的因素,因此软件项目管理应该以人为本,有效管理人力资源,合理配置人力资源.应该根据项目组成员的组成结构情况,合理搭配,充分发挥每位成员的技术专长,做到人尽其能;组织组建好项目团队,培养团结一致的团队精神,规范良好的职业道德;建立健全完备的奖惩制度,落实权利责任制度,做到权责明确,并在项目进程能及时化解各种人事冲突,营造良好的团队协作环境.
3.2顺畅有效的沟通管理
开发软件项目是一项知识性极强的工作,对人的依赖性比其它行业更为突出,因此加强人员之间的有效沟通,实现顺畅有效的沟通管理是软件项目成功的另一个关键因素.沟通管理是一个收集、存储、配置和项目生命周期内所形成的各种信息的过程.它把成功所必须的因素——人、想法和信息之间提供了一个关键连接.对于项目来说,要科学地组织、指挥、协调和控制项目的实施过程,就必须进行信息沟通.这里的沟通包括两个方面,一个方面是软件项目组开发人员与用户的沟通,另一方面则是软件项目组内人员的沟通.前者是做好软件需求分析所必须的;而后者则有助于组内成员的彼此交流,减少理解错位,实现信息畅通,改善人际关系,化解可能的冲突,加快项目的进度.沟通的方式是多样的,可以采用常用的项目组例会方式,可以通过面谈彼此交换意见;也可以利用方便快捷的通讯工具如电话、EMAIL、传真等方式加强信息的沟通;总之,顺畅有效的信息沟通,可以取得彼此的理解,剔除项目进度中的“BUG”,有利于项目按计划顺利开展.
3.3正确可靠的软件需求
软件需求是软件项目的根本所在,需求不明确,软件项目开发范围不确定,项目开发就会失去方向,容易造成开发的产品和用户实际的需求“南辕北辙“,最终导致项目的失败.一个可靠的需求,也是项目管理的关键因素之一.软件需求应当是项目有关的人员一致同意的、清楚的、完整的、详细的、可实现的和可测试的需求的确定,开发人员应该反复和用户进行沟通,认真听取用户的意见,及时归档记录,并适时发掘用户的潜在需求,最大限度地满足用户的目标,开发出用户最理想的产品.最后应拿出开发人员和用户一致认可的软件需求说明书,并加以确认.在项目开始以后,应该尽最大可能不更改需求,要与用户进行很好地沟通,以确保开发212作能按照需求进行,减少需求变更带来的风险!因此,正确可靠的软件需求也是项目成功的重要保障.
3.4周密可行的项目计划.
“凡事预则立,不预则废.”软件项目实施过程中,还必须有一个周密可行的项目计划.软件项目计划的目的是为完成软件工程和管理软件项目而制定的合理的计划,它包括以下步骤:估计软件产品规模及所需的资源,制定表,鉴别和评估软件风险和协商约定,而且要标志出几个阶段性的里程碑,这些都是极为关键的.软件项目开发组来说,一个可行的计划的重要性是不言而喻的.在实际发中,:计划的重视程度不够,计划过于笼统、粗糙导致可执行性差,再加上一些人为因素的影响,必然会产生一些反面的影响,或者有了周密可行的计划不严格遵守计划执行,任意变更,都将产生严重的负面影响,有时甚至是灾难性的影响.因此,要想成功进行项目管理,就要对高度重视、周密制定、严格执行.只有严格进行计划才能使成功项目管理得以实施.
3.5健全完备的文档资料
软件项目的文档作为软件产品的主要形式之一,集中体现了软件人员的劳动成果,在整个软件生存周期中占据重要位置.特别是在开发过程中需求发生了变更的情况下,健全完备的文档资料的重要作用就充yJ-~:现出来,开发人员可以及时在文档中回溯,快速锁定问题所在,及时解决问题避免软件项目延期,减少项目.此外,健全完备的档资料在项目接近尾声时也便于软件的测试与后期的维护工作,在项目结尾时,健全完备的文档资料也为人员的培训和项目的再开发发挥重要作用,因健全完备的文档资料也是软件项目成功的重要因素,在项目管理过程中应该高度重视.
3.6严格的风险管理
软件项目的管理是存在风险的,我们应该提前重视风险,并有所防范,最大限度减少风险的发生.实行严格的Ixt.险管理是有效的手段.建立风险项目检查表是进行风险识别的有效地方法就是,主要涉及到产品规模风险检查、过程风险检查、技术风险检查、开发环境风险检查等.此外软件的风险评估也是必不可少的.主要涉及到发生的可能性,最好建立一个尺度表示风险可能性;发生的结果;确定风险评估的正确性;另外,要对每个风险的表现、范围、时间做出尽量准确的判断.同时,要依据以下三个要素对风险进行评价:风险描述、风险概率和风险影响.并从成本、进度及性能三方面对风险进行描述.
4结论
软件项目管理是门科学,也是一门艺术;它是一个复杂的系统,决定了软件项目成败的关键.在软件开发过程中,我们应该理论联系实践,积极从实践中积累经验,注意项目管理中的关键因素,实施有效的管理,使软件项目获得成功.
软件项目团队建设是实现软件项目目标的保证,团队文化和团队精神是团队成功的重要基础,建立一种“相互帮助,共克难关”的工作氛围十分重要。本文初步揭示了项目人力资源管理的含义与内容、软件项目中的人力资源管理流程和获取方法,以及一些常见问题的解决方法与途径。
软件项目的人力资源管理与项目的进度、成本、整体质量和存在风险等方面管理一样,也是一个项目组织必不可少的管理职能。
一、软件项目人力资源管理的含义和内容
软件项目人力资资源管理就是根据软件项目的目标、项目的进展情况和外部开发环境的变化,采用科学的方法,对项目团队成员的思想、心理和行为进行有效地管理,充分发挥他们的主观能动性,实现项目的目标。项目人力资源管理的重点集中在两个方面:一时针对个人的;另一方面是针对团队的。
软件项目人力资源管理包括计划制定、获取人员和建设团队三个阶段。按照业务管理的流程,还可以具体划分为资源规划、解雇、招聘、筛选、培训等基本活动。
软件项目人力资源管理的主要内容包括:
(1)对软件项目进行组织和规划。项目组织规划是项目整体人力资源的计划和安排,是按照项目目标通过分析和预测所给出的项目人力资源的数量和质量上的明确要求、具体安排和计划。
(2)获取和分配软件项目人员。软件项目组织通过招聘获得所需要的人力资源,并根据各自的技能进行工作安排,由于项目的一次性和项目的临时性,项目组织的人员获得与配备和其他组织的人员获得与配备是不同的。
(3)软件项目组织成员的开发。包括:项目人员的培训、考核,激励等等。
(4)团队建设。
由于在项目工作中人员的需求可能是不连续的,容易造成人员的浪费和成本的提高。比如:某软件项目现有20人,设计阶段需要10人;审核阶段需要1周,但不需要项目组成员从参与;编码阶段是高峰期,需要15人,但在测试阶段只需要8人。往往这些阶段进行过程中,会出现没有工作安排的人员。根据大多数大中型软件开发项目的统计,对开发人员的要求是随机变化的,一开始资源需求量较小,然后逐渐上升,达到某个时间常数时需求量达到高峰,之后再逐步下降,减少到较低的数值。
二、软件项目团队的特点
软件项目团队建设,就是吧与软件项目相关的人员组织起来实现项目目标,这是一个持续不断的过程,也是项目经理和项目团队的共同职责。通过团队成员的共同努力能产生群体的协作效应,从而获得比个体成员绩效总和大得多的团队绩效。项目团队不仅可以通过团队成员之间相互的沟通、信任、合作和承担责任,高效地利用有限的人力资源,而且有助于加强员工间的交流与协作。一个好的软件项目管理团队应该具有以下几个特点:
(1)有好的团队带头人,他对项目管理有很丰富的经验,是团队凝聚力的优秀,有很好项目组织及人员协调能力。
(2)好的团体,应该有好的知识及能力体系。每个人毕竟不能什么都会,但对于一个团对应该能做很多事情。就软件项目团队而言,就应该在需求、分析设计、编码、测试等重要阶段有具有此能力的人去参与。对于不同的行业,不同的项目,对项目团队的要求也是不同的。如一个游戏项目团队和一个电信软件团队的差别就是很大的。比如:一个WEB开发项目团队,就要有美工、动画设计人员,WEB端、Server端优秀的开发人员。这样去组织一个团队才可能把WEB项目的开发阶段做好,做的很专业。
(3)好的团队,要保证团队目的与个人目的的统一。这也是管理组织学中团队效力及团队效率的问题。也只有这样才能保证团队有凝聚力,稳定、健康的发展。
(4)好的团队,目标明确,目标统一。
(5)要有良好的沟通,乐与交流习惯。融洽的团队环境。
(6)良好的团队组织及团队合作习惯,不能有什么小的派别等。
(7)好的团队,人员职责分明。
(8)好的团队,有一个好的团队学习习惯。这是团队能力提高的阶梯。
三、软件项目团队的冲突管理
冲突就是个人、团队、组织限制或阻止另一部分个人、团队、组织达到预期目标的行为。软件项目团队内部成员之间相互了解越深入,彼此合作越默契,团队建设也就越出色,效率也会因此提高,但是人与人之间相互了解需要一定的磨合时间,在这一时期必然会存在很多方面的冲突,需要及时对这些冲突做出有效处理。在项目运作过程中,存在冲突是很经常也很正常的,但如果仅仅是试图避免冲突或者是压制冲突,只能是进一步恶化冲突,导致效率的严重下降。冲突既有积极的一面,也有消极的一面,如果能有效地解决这些冲突,可以有助于改善团队的建设和项目的状况,给团队一个学习与提高的机会;如果解决不当,有可能会给项目埋下隐患或者使得整个团队处于一种混乱状态,最终导致解散、失败。因此项目团队管理者要引导冲突解决结果向着团队成员积极协作有利的方向发展,而不是向着消极的方向发展,造成不可挽救的恶果。解决冲突的方式主要有:建立完善的解决冲突的方针与管理程序;冲突双方直接沟通协调,解决矛盾;利用会议解决冲突;在所有的解决方式中都离不开沟通,解决冲突过程中,沟通的方式有很多,如:口头沟通、书面沟通、正式沟通、非正式沟通、面对面或者是通过其他方式沟通等,这需要根据项目以及冲突的不同性质选择不同的沟通方式,以达到效率最高。一般解决软件项目开发过程中的冲突可以从以下几方面出发:
(1)沟通协调一定要及时。团队内必须做到及时沟通,积极引导,求同存异,把握时机,适时协调。唯有做到及时,才能最快求得共识,保持信息的畅通,而不至于导致信息不畅、矛盾积累。
(2)善于询问与倾听,努力地理解别人。倾听是沟通行为的优秀过程。因为倾听能激发对方的谈话欲,促发更深层次的沟通。另外,只有善于倾听,深入探测到对方的心理以及他的语言逻辑思维,才能更好地与之交流,从而达到协调和沟通的目的。同时,在沟通中,当对方行为退缩、默不作声或欲言又止的时候,可用询问引出对方真正的想法,去了解对方的立场以及对方的需求、愿望、意见与感受。所以,一名善于协调沟通的人必定是一位善于询问与倾听的行动者。这样不但有助于了解和把握对方的需求,理解和体谅对方,而且有益于与他人达成畅通、有效的协调沟通之目的。
(3)对上级沟通要有“胆”、有理、有节、有据。能够倾听上级的指挥和策略,并作出适当的反馈,以测试自己是否理解上级的语言和理解的深刻度;当出现出入,或者有自己的想法时,要有胆量 和上级进行沟通。
(4)良好的回馈机制。协调沟通一定是双向,必须保证信息被接收者接到和理解了。因此,所有的协调沟通方式必须有回馈机制,保证接收者接收到。比如,电子邮件进行协调沟通,无论是接收者简单回复“已收到”、“OK”等,还是电话回答收到,但必须保证接收者收到信息。建立良好的回馈机制,不仅让团队养成良好的回馈工作习惯,还可以增进团队每个人的执行力,也就保证了整个团队拥有良好的执行力。
(5)控制非正式沟通。对于非正式沟通,要实施有效的控制。因为虽然在有些情况下,非正式沟通往往能实现正式沟通难以达到的效果,但是,它也可能成为散布小道消息和谣言的渠道,产生不好的作用,所以,为使团队高效,要控制非正式沟通。
要清楚的认识到软件项目人力资源管理的重要性,并掌握软件项目人力资源的筹集,项目团队信息交流的方式,成员激励的要素及处理冲突的方法。总之,人力资源管理是软件项目开发中的重要智力资源,必须做好软件项目人力资源的管理。
论文摘要:软件开发是一项高度知识密集型的创造活动,在这个过程中信息交流扮演了极其重要的角色。信息交流模式对软件开发效率、项目管理和开发工具的发展进化有着深刻的影响。提出信息交流的三个特征模式,并在共享库的基础上论证自然损耗的强信息交流模式对软件开发的积极作用和影响。
论文关键词:软件项目管理 信息交流模式 广义信息交流 共享库
1引言
1970年Sackman对12名程序员用两个不同的程序进行试验,结果发现程序长度差别为6:1,程序运行时间差别为8:1,程序编制时间差别为9:1,程序编码时间差别为18:1,程序排错、调试时间差别为28:1。在实际开发中,软件项目开发成员之间存在差距是非常普遍的。对此通常的做法是采用内部交流,如员工培训、技术会议、成员讨论等方式,达到减少团队成员的差距的目的。
软件开发是一种有特定目标的团队合作活动,而团队只有通过有效的交流才能发挥其集体的力量。在开发活动中信息交流普遍存在,而且扮演着非常重要的角色。它协调成员行为,使工作同步,与团队行为方式及其效果密切相关。因此,如何有效管理和控制信息交流变得非常重要。但信息交流往往难于控制和管理:如果没有良好的管理,开发团队很容易陷入工作低效、信息混乱的境地,并导致种种负面影响——工作中断、思路中断、时间消耗等。调查显示,每周工作40小时的开发工程师,实际开发时间平均仅有16~18小时,其它很大部分时间消耗在人员之间的交流上。相反,一个团队的信息交流简单、通畅、损耗小,其工作往往协调一致,各种活动有条不紊。信息交流对软件开发有深刻的影响。
当代的软件项目管理理论似乎对开发团队的信息交流问题缺乏足够的关注,在这方面多数是强调团队合作的作用。实际上,信息交流模式存在很多内在的规律,研究分析这些因素将有利于软件项目管理工作的改进,有利于为软件业的发展提供有益的思考。
2广义信息交流及其模式分类
从狭义上讲,信息交流仅限于人与人在语言、思想上的直接交流,在广义上则包括一切信息的发送、接收、传递以及这个过程的相互作用(如引伸、扩展、缩小、曲解、联想等等)。在软件开发中,所有从自身以外主动获取信息的活动都属于信息交流的范畴;交流对象不一定是人,可以是机器、经验知识库、软件系统(如DSS)等等;但交流主体一定是人。广义信息交流在软件开发过程中极为普遍,所有任务都在特定的信息背景(专业知识、任务、计划、规范化、管理指令等等)下由各个成员共同完成。
3信息交流模式特征及其条件
根据信息交流的特性,可以将其分为三种特征明显的模式。
3.1强信息交流模式
强信息交流模式的特点是交流非常频繁,不仅发生在项目成员(包括项目经理)之间,而且发生在成员个人网络之问(如某成员与项目组以外的专家、个人进行的交流);信息交流方式表现为面对面或人与人的交流,缺少工具支持;存在很大的损耗,交流虽然活跃但处于无组织的信息混乱状态,过多的交流损耗大大降低了团队的工作效率,成为管理上的瓶颈。
图1表示了一个典型的开发团队的强信息交流模式。可以看出,控制通道M—P或P—c的信息交流相对集中而简单,但项目小组内部的交流则非常频繁,交流频度(复杂度)是n(考虑交流的双向性,n为项目成员的数目)。由于项目的执行优秀分散到每个直接开发软件的各个项目小组成员身上,在强信息交流的模式下,交流频度太高导致整个小组的开发效率低下。同时项目经理M由于忙于应付各方面的交流而导致小组内部缺乏管理。因此这是一种内耗巨大的信息交流模式。大型项目往往容易陷入这种状态,这也证明了为什么大型项目更依赖于有效的管理的事实。
3.2弱信息交流模式
这个模式的信息交流非常有限,只存在项目经理与程序员之间的交流,程序员之间几乎没有信息的交流,更没有项目小组以外的支持;没有利用工具促进交流。由于缺少交流,各自为政,效率低下。项目人员缺乏管理和组织,成员之间存在信息交流障碍,没有内部评审小组对计划进度的严格监督,如图2所示。
这种情况之下交流已经非常少,但仍然有损耗,这种无法避免的损耗就是自然损耗。
3.3自然损耗的强信息交流模式
上述两种信息交流模式都存在着固有的问题,但他们各有所长:强信息交流通畅无阻;弱信息交流损耗接近于自然损耗。若交流模式同时具备这两个特点,则该模式就是自然损耗的强信息交流。该模式既有强信息交流的优点,又克服了其损耗大的缺陷:一方面成员个体之间的信息通道非常畅通,另一方面每个个体受到来自团队内部其他成员的干扰大大减少。
但形成这个模式是需要条件的,存在大量的管理良好的易于获取的充分共享的经验知识库,即图3中的共享库,是其中的一个必要条件。共享库使得大量的信息可以不通过传统的交流获取,提高了信息传递的速度,降低了人与人之间的直接交流的频度。
共享库是一个关键的角色,在这里泛指一切有助于提供有效信息服务的信息集,但应排除团队本身,否则又回到强信息模式的状态。内部资料库、可以提供咨询的专家组、决策支持系统、Internet资源等等都可以成为有效的共享库。其特点是共享,可以同时提供多通道的服务。
另一方面,项目组成员之问必须排除个人色彩,交流通道流畅,不存在任意交流,每次直接交流都是必要交流——共享库无法提供这种信息才由直接交流解决,这是强信息交流模式的一个条件,同时也是自然损耗强信息交流模式的一个条件。
4自然损耗的强信息交流模式对软件开发的启示
信息交流模式的重要性质提醒我们:软件开发中如何避免信息交流的混乱?如何管理好团队的信息交流模式?如何降低信息交流的损耗?信息交流的三个特征模式的为此提供了有益的启示。
4.1从广义信息交流来看软件开发的发展趋势
仅仅从狭义信息交流来看,软件开发的信息交流并不起眼。为了得出建设性的结论,我们必须从广义信息交流的角度来研究问题。基于此,我们认为下面四点均是软件业按照信息交流模式规律发展的证明:
·运用工具促进交流
计算机网络使单机环境向网络环境扩展,大大扩展了信息传播的方式和速度;局域网已经成为各单位的必不可少的环境,特别是Internet已经成为事实上最大的信息源。分布式数据库系统、邮件系统、文件传输协议、即时交流工具、搜索引擎都是基于网络的信息交流工具。这些工具使人们获得所需信息的能力大大提[!]高。
强大的集成环境:普遍认为它是人们应付软件危机 的产物,但从信息交流的角度来看这是软件开发工具发展的必然趋势。它代替程序员做了大量的信息获取、知识输出、信息协调、交流的工作,为降低交流频度起了巨大的帮助作用。可以预见集成开发环境将有更惊人的发展,而且逐步会把其他软件和目前仍然要人工来完成的工作纳入其范围,如配置管理、版本控制、更友好的联合开发环境、自动测试、智能辅助工具、自动化的文档管理技术等等。
·构建更大的信息单元(信息粒度)
软件由模块或对象组成,而模块和对象则由更多的信息单元(包括数学公式,元数据等)组成。多个信息单元可以集成为具有特定功能的更大的信息单元,使得使用信息时不必考虑更多的与目标无关的细节,从而增加信息交流的强度。这种信息单元的扩大化就是软件复用思想。早期的软件开发比较原始,基本上是完全个性化的(比如某个具体功能的汇编语句),随后逐渐出现了直接调用各种工具包、系统函数的情况,直至更正式的复用:面向对象、构件等技术的提出和应用;软件业在软件复用方面做了巨大努力,出现了不同的技术和标准,主要有OMG定义的CORBA和Microsoft公司的DCOM以及SUN公司的Java平台。复用构造了更大的信息单元,为降低信息交流的开销创造了有利条件。
·支持信息共享
驱动软件业发展的一个重要思想是共享,共享在信息爆炸时代充分体现了其优越性。没有共享,信息再多也只是一个孤岛,严重影响信息流通和交流。早期的开发工具缺少共享支持,随着软件需求的快速膨胀,出现了所谓的软件危机。为了应软件危机,出现了支持充分共享的开发平台,这些开发工具普遍出现了可视化、网络化、智能化、自动化的趋势,为共享提供了技术支持,而共享的根本目的在于破除交流的障碍,为实现无损耗的强信息交流模式创造了条件。
·利用智能化
智能化一直是软件工业的一个研究热点,而且将会发挥越来越大的作用。软件开发要减少人的交流开销关键在于减少人的有意识的参与活动。机器智能可以代替人面对面的交流、教育、培训,它不受时空的限制,可以即时提供,可以并行工作,可以随需应变,从而大大减少直接交流带来的损耗。比如智能化的搜索引擎可以提供更好的搜索服务。
由此可以得出一个结论:追求“减少交流损耗”是软件业发展的一个内在的趋势,减少交流损耗是提高效率的重要条件。
4.2保持活跃的信息交流。减少损耗
在软件开发活动中信息不对称普遍存在。信息不对称导致的结果是成员之问的开发速度无法一致,只有充分交流才可以降低信息不对称性,才能加速知识的流通和传播。但实际上,由于信息交流的损耗问题,不允许这种交流无限制地发展,这就需要管理控制和工具辅助,避免并非必要的直接交流的发生,使强信息交流的损耗降低到自然损耗的水平,实现自然损耗的强信息交流模式。
4.3增强工具性。提高共享性
信息的充分共享是强信息交流的一个条件,但也不容易做到,它需要工具的支持,因为工具支持避开了人与人的直接交流。共享库的思想在引导着整个软件业的发展,其根本原因在于共享库减少了信息交流的开销,把信息交流的模式转变为更接近于自然损耗的强信息交流模式。这些开销本身是不可避免的,但共享库利用机器智能和软件的帮助减少了这个开销。可见未来软件工业必须不断增强工具性、共享性,不断提高智能化程度。
5结论
信息交流模式的性质提醒项目管理者:信息交流的模式深刻影响着项目的每个方面,管理者必须采取各种措施实现自然损耗强信息交流模式,避免进入单纯的强信息交流模式或弱信息交流模式的误区。
另一方面,信息交流的模式也对软件开发环境提出了挑战那就是如何提供更好的工具支持,减少不必要的人一人的直接交流,如何提供全方位的信息交流的支持,减少信息交流的开销。
自然损耗的强信息交流模式在软件项目管理中将会产生广泛的影响。技术进步将加快这一进程。成熟的数据分析、数据库技术应用到信息交流工具中去,并与开发环境无缝结合,将大大提高获取知识的速度并提高这些知识的可用性;另一方面,结合人工智能信息交流工具,可以自己整理收集有用的信息;数据挖掘技术将可以把普通的“信息查询”转变为“知识查询”这些技术与共享库的结合将大大减少人工信息交流的损耗,有助于信息交流模式转变为自然损耗的强信息交流模式,从而提高软件的生产效率
应用软件项目经理三步曲
相信任何一个成功的项目经理,都会经历失败的郁闷,成功的喜悦。经常在论坛上会出现某某项目经理的辛酸泪控。外行领导内行的事,时时发生,处处发生。项目的压力就象一座大山一样压在项目经理的头上,不断的夜战,项目不停的延时,不停的捉虫几乎成了每一个项目经理的必然道路。就在忙得焦头烂额的时候,高层的领导忽然宣布,撤消项目计划。一切Gameover!
本人也跟大多数项目经理一样,经历的这种风霜的洗礼。我相信,大多数有思想的人都会在努力的寻找项目成功的方向。今天,我并不算是一个成功的项目经理,但以仅有的经验希望与大家共享。同时,有一句话我觉得很重要,也很关键:你的项目失败了吗,请更多的在自已身上找失败的原因!
在众多的项目中,实践证明,一个成熟的项目经理应该要经过三步曲。
第一步:基础篇——技术
很难想象,一个不懂技术的项目经理如何能把自已负责的项目做好。有很多会画窗口和接数据库的项目经理,认为自己是技术牛人。这类人往往会不加分析,将别人的代码贬低一下,然后,觉得自已有一种飘飘然的感觉。我想这样你会成功吗?要掌握好的技术我想从下面几个角度阐叙。
一、从学习的角度来说,
要想掌握好技术,除了有好的理解能力外,勤奋、谦虚、愿沟通是必不可少的个人品质。关注知识面,倾斜知识点,这是获得高技术的一条途径。否则,世界上就很可能又会多一个夜郎。
勤奋:相信在这个行业里的人都会认识到它的重要性。如果不够勤奋的话,我相信很难在这个行业取得成就,技术天天一个样,如果不前进,就意味着后退。从项目经理的角度来说,如果项目经理本身不勤奋,不仅会影响项目进度,项目质量,很可能会影响项目成员的精神面貌。
谦虚:谦虚的人绝对不会轻而易举,不付责任的对别人的代码狂批一顿。谦虚的人,一定会去寻找和学习别人的闪光点。只有不断的吸收别的先时的东西才能丰富自己的东西。千万不要不加分析,只看了几行别人的代码就开始自大起来。这样,即使有金子,也会因为自大而丢失。其实,虚心的听取别人的意见,认真的看别人的产品或者代码,才能真正的更快的学到好的东西。如果,您还是一个入门级选手,请不要一天到晚的谈创新,可以说没有模仿,就几乎不可能有创新,也就是说如果您不愿虚心接受别人的东西,您就很难有创新。
沟通:沟通,也许在各行各业都已提到了一个相当重要的位置。在一、二十年前,也许您会经常听到某位大侠单独完成了某种创举,成了人们崇拜的对象。可今天,这种大侠,已经很难有生存空间了。代而取之的是,某军团,又攻克了一座什么样的宝垒。这样,沟通,可以说已经变得无比的重要。在软件业,沟通可以说是快速学习和掌握新知识,达到技术上的更高层次的最佳途径。
记得我在大二时,对电脑技术非常感兴趣,几乎夜夜为它为而忙,当然,也有游戏的兴趣,呵呵。现在回忆那段时光,用6个字总结:勤奋、自大、炫耀。由于我的勤奋,当时应该算得上“技术高手”了。喜欢批评别人的代码,批评别人的界面。甚至会为自已写的一个屏保,而觉得风光无限,晕倒!而跟同学交流时,炫耀大于学习。没想到我当年是一个地地道道的夜郎。
今天,象我当年一样的夜郎还不断的在涌出。我想,如果想真正的掌握技术,请拒绝夜郎。
二、从技术的深度来说:
技术的深度需要结合自己的工作实际情况,来确定在某一个知识点上的深入。成为某领域的真正专家。如果项目小组是专攻这个方向,这样的技术深度对项目经理来说是非常有必要的。可以很好的带领团队攻破技术难关。
如:图形处理技术、网络传输技术、设备驱动技术、数据库应用技术等。
三、从技术的广度来说:
一个成熟的项目经理,他必须拥有非常广的知识面。谈到知识面,就会有人说,我会Java、VC、VB、Delphi等,学习了n多的编程语言,这样我的知识面可以说非常广了吧。其实这是一个误区,一定要走出来。
技术的广度,并非指学习语言的多寡而论。广度应该包含两层含义:
1、技术的学习广度。
如果学习了Delphi语言,应该要关心各种相关知识面:
如:delphi的发展动态、windows的消息处理机制、相关数据库的编程知识、各种网络协议、分布式集中式的处理等。
2、技术的应用广度。
技术的应用广度,是指你可以用你掌握的工具,来实现各种各样的应用。如:可以开发分布式的处理软件(中间件),也可以做各种网络传输软件等。
第二步:提高篇——业务
对于大多数人来说,技术已经觉得没什么难度了。然而,行业软件的开发,决非技术可以解决问题的,要想成为项目经理,您仍需努力,提高业务知识,势在必行。谈到业务,就会谈到国内的ERP软件。可以这样说,国内的ERP软件厂商大都是失败的,我敢说失败的原因绝非技术,而败的大部分原因都取决于业务。
相对于ERP软件来说,国内的其它行业软件却要成功得多。如:财务、银行、证券、医疗、保险等行业软件。ERP软件本身的业务是非常复杂的,不象其行它行业软件一样,有很多的规范可以参照,正因为ERP软件业务的复杂性和灵活性,所以ERP软件是非常难以开发的,绝非几个程序员就可以闭门造车。根据国内外行业软件成功和失败的案例可以说明一个问题,应用软件,应该是应用在先,软件在后,一个好的项目经理,必须要理解这个软件的业务应用,并且应用自已掌握的技术才能够开发出成功的软件。这个项目组的项目才有可能成功。
建议,一个在技术上已经有基础的工程师,应尽量找些机会上一些工程,参加一些业务学习的机会,以提高自已的业务能力。从而能真正把握好业务需求,指导项目组的成员进行正确的项目开发。
一个好的项目经理,总能很好的理解客户的业务应用,掌握好业务模型。
第三步:艺术篇——管理
管理是一门艺术,这话一点也不假,大到国家管理,小到项目组的管理。当拥有了技术和业务两种素质以后,更高的层次应该是学习管理这门艺术。既然是艺术,就可以想象它的难度有多大了。管理的重要性,我想这里也不必多叙说了。以本人有限的经历在这里斗胆讨论一下项目管理艺术的几个方面。
1、有效的团队组织。
提高团队组织的工作绩效,提高组员的团队精神。这非常有利团队有效,有序的工作。有效的团队建设,这是管理的重要内容。
2、小组成员的沟通。
组员的沟通,可以很好的加强团队组织的凝聚力。可能更好的让项目良性的进行。而陪养这种气氛,形成有效的沟通,这也是项目管理的基本内容。
3、小组成员的考核。“文秘站”版权所有
在这个竞争的社会 中,我想管理是不能缺少考核制度的。有效的考核有利于提高组员的积极性,同时,能形成一种竞争的气氛。当然,如果不能很好的应用考核,就会导致负面的效果,由此可见,考核是管理的一个关键点。
4、团队的学习。
学习是创新和发展的能源,注重团队的学习,才能让团队不断的发展。作为小组的领导者,一定要组织团队有效的,有针对性的学习,把握学习的方向。这种组织团队学习的能力也必须是管理者要掌握的。
5、小组成员的发展。
每一个人都会希望自己能做出好的成绩,能在公司有好的发展,如果自已看不到发展的曙光,就会影响到团队的工作。因此,项目经理还必须学会让组员获得发展的机会,获得一种成就感。
一天到一家公司拜访一位老总,席间偶然谈起这家公司电脑中病毒泛滥,弄得许多电脑不敢使用。由于我一直对电脑技术颇有业余兴趣,就自告奋勇地提出要教他们杀毒。主人同意之后,我就开始在一台电脑上操作示范。我先用公司现有的杀毒软件进行查杀,杀掉了部分病毒。然后我又从互联网站上下载了若干软件,轮番查杀。有的软件只能防不能杀,有的软件一个病毒也查不出来,有的软件查出病毒却杀不了,有的软件杀不了几个病毒,却造成电脑出现种种异象,比如死机。尽管如此,这些杀毒软件还是功劳不小,杀掉了不少病毒,电脑可以正常使用了。然后我又对各个杀毒软件进行分别处理,留下了个别经证明能查杀病毒的软件,面对那些干不了活的甚至造成电脑死机的软件,试过就删了。还有几个病毒无论用哪个软件都杀不掉,最后我只好删掉有毒文件。
查杀病毒示范做完之后,我就和老总坐下来谈公司管理,老总就谈起以前也请过管理顾问来做诊断和治疗,可是那些项目做完之后,许多问题依然存在,弄得大家很失望,老总问我这是怎么回事。我顺手就把杀毒软件和管理项目做了比较,说明各个管理项目就象一个个杀毒软件,每一个项目至少只能解决管理中的一部分问题,不能指望引入一了一套管理项目,就可以一劳永逸地解决所有问题。不少人一开始对某些管理项目(比如ISO9000)抱有不切实际的幻想,指望它们能包医百病;一旦事实证明并不是那么回事,他们又对所有管理项目一概怀疑和排斥,觉得还是自己凭经验治理的好。
我就接触过一个老板,开始是不顾公司一片混乱,哭着喊着非要搞ISO9000不可,劝都劝不住。因为他觉得一搞ISO9000,一切都会好起来。后来刚开始搞ISO9000,他一听说ISO9000基本上不涉及财务,不能帮助他解决财务管理中的问题,大大出乎他的意料,立马就对ISO9000失去了兴趣。后来人们花了九牛二虎之力总算把这家管理混乱的公司的ISO9000做完了,而且通过了认证,这位老板却一点感谢没有;反而觉得公司里还有很多问题,ISO9000没做好,连费用都不想付,证书也不想拿,而在管理上却基本上回到了老路上去。
不少类似企业好不容易走上了"法治"轨道,略受挫折,就又一头扎回到"人治"的轨道,而且再也不肯回头,让人觉得真是可悲又可笑。文秘站版权所有
其实各个管理项目又岂止是不能解决所有问题?有的项目还根本不适合你和企业,至少是不适合现阶段下的你的企业,如果硬要导入,说不定会使你的企业"死机"呢!
有的管理项目,恐怕也只能"查",不能"杀";可以帮您诊断企业一些毛病,至于解决问题,对不起,恐怕您得另请高明。再者,现在人们推出的各种管理项目五花八门,即使您的企业把这些所有的项目都"做"了,也不可能解决您企业所有的问题,就象将现有的全部杀毒软件都用上,也有可能无法解决全部病毒一样。
您在企业实施的各种管理项目,还存在一个互相衔接、配套的问题,否则就会互相抵销或冲突。这也象各种杀毒软件一样,不能随便混用。有一次我在一台已经安装了某种杀毒软件的电脑上运行另一个杀毒软件,结果一运行就死机,三番五次,不知原因。后来我把电脑原先的杀毒软件卸载掉,新的杀毒软件才得以顺利运行。
最后,您的企业要做什么管理项目,需要一番认真调查,深入了解和系统思考,这一点可不象运行杀毒软件那样,可以不管三七二十一,拿过来试一下再说。
胡乱做一个管理项目,有时不仅无助于企业,还会有害于企业,使企业付出代价。至少,做一个无效的管理项目,即使无害,你也是要花一笔顾问费的。
总之,企业要导入某一个管理项目,一定要事先进行认真调查,深入了解和系统思考。要考虑以下因素:
1)这套管理项目是否确实适合于本企业?
2)这套管理项目用来解决哪些问题?
3)这套管理项目不能解决哪些问题?
4)这套管理项目与其他管理是否兼容、如何兼容?
5)对于通过管理项目实在解决不了的问题,您是否有决心和信心整个端掉染病的个人或群体?
如果您充分考虑了以上问题,我们认为您已经在实施管理项目之前有了充分的思想准备,实施项目的主观因素已经成熟了。
摘要:三峡工程是一举世嘱目的工程建设项目,项目管理的任务其中包括进度控制的任务极其艰巨。业主单位确定应用P3软件作为进度控制的辅助工具已近五年时间,取得了很大的成绩,但还存在有待改进的地方。笔者有幸从93~96年,涉及此方面的工作,对合理地应......
关键词:P3 建设项目 管理 服务
三峡工程是一举世嘱目的工程建设项目,项目管理的任务其中包括进度控制的任务极其艰巨。业主单位确定应用P3软件作为进度控制的辅助工具已近五年时间,取得了很大的成绩,但还存在有待改进的地方。笔者有幸从93~96年,涉及此方面的工作,对合理地应用P3强大的功能为项目管理,尤其是项目进度控制服务,提一点自己的看法。现分述如下,作为抛砖引玉供有关部门参考。
1 统一规定网络进度计划的表达形式
三峡工程因其规模宏大,需要采用分项直接承发包制,业主将与多个独立的承包商建立合同关系,如果承包商们在进度计划表达形式上不统一,各自采用他们习惯的表达形式,对单个合同可能是可行的,但对整个三峡工程的进度控制而言,将产生混乱的而导致无法进行。
网络计划的类型有肯定型、非肯定型,随机型、循环型等。在土建行业大多采用称作关键线路法的肯定型计划网络。而该类型计划网络以其表达形式来分有:双代号、单代号、与单代号搭接网络等表达形式。从业主与监理方使用的网络计划大多是控制性进度网络,以及考虑到工程建设项目的复杂程度与P3软件所能支持网络计划的类型而言,以采用单代号搭接网络最合适。由于它表达相同的计划对象时,可以具有网络的规模最小,表达最为简洁的好处。因为它可免除用其肯定型计划网络时,为了表达活动之间的逻辑关系而需要增加虚活动和要把完整的须加细分的敝端。关于规定统一用搭接网络的建议,必须取得建设各方的共识,并共同执行。只有这样,才能把进度管理,纳入统一的、可操作的进度控制模型之内。
2 分析管理环境,合理确定进度计划网络整体结构
进度计划网络的整体结构是指进度网络系统中整个局部网络之间联系方式不同划分结构类型。
在选择进度计划网络的整体结构形式的时候,必须根据建设项目特点与管理模式出发予以考虑。从三峡工程业已招标发包的合同看,有的一个合同包含了若干个单项工程(如右岸一期工程合同);有的则一个扩大单位工程包含了若干项合同,如永久船闸工程。因此,业主项目与监理单位均处在多个合同管理环境下工作。这大大增加了项目管理的难度与工程协调工作量。我们在确定网络计划整体结构时,都要与上述多项目管理环境相适应,并充分利用P3软件所能提供的功能为前提。
关于进度计划网络的整体结构,可分为两类,一类是多级网络,如以三级网络为例,其示意图见图1。
个工作(或称活动)。因此,分解的详细程度会直接影响网络计划中活动数目。过于详细,则增大网络图的图幅,不利于阅读与管理;分解得过粗,则对进度控制缺乏必要的指导作用。WBS分解的详细程度应考虑如下因素:
(1)WBS分解的详细程度要与计划进度的功用相协调,业主方的计划进度主要用于进度控制,宜粗些。通常分解到分部工程(最多到分项工程)的层次即可;对承包商实施性的进度计划所需的CWBS,可由承包商对其合同范围工程,在业主方WBS框架基础上根据需要,再自行细分;
(2)WBS的框架结构,要兼顾工程分标的具体要求。如永久五级船闸输水工程,宜将其再分成上游输水工程与下游输水工程,以避免出现一个分解单元跨两个合同的情况;
(3)分解的详细程度,对整个工程各部份要做到基本一致,以便能正确确定网络计划中各活动之间的逻辑关系;
(4)WBS分解的详细程度应使之对应的活动,在施工现场较易识别,有利于进度检查与进度控制工作。
总之,WBS分解结构应有利于建设项目进度控制与其他项目管理的需要。
3.2 建立工程项目管理的组织分解结构(OBS)
为使项目管理机构管辖范围清晰、职责分明,常用组织分解结构描述业主方管理机构的设置。并把它与WBS终层次的分解单元对应起来,即把WBS垂直树与OBS水平树按项目管理组织的管辖范围,得出对应的交叉点,以明确其责任主体。OBS的详细程度可分至具体责任人。
3.3 建立为项目管理服务和方便P3应用的代码体系
设计出一好的代码体系与代码方案对于项目管理及相关软件高效应用至关重要,它可使诸如统计、分类、校对、查询、计划的整合、计划的拆分、数据组织、过滤等工作变得简单方便。由于限于文章篇幅仅列项说明如下:
(1)为拟订好WBS框架,建立统一的工程分解结构代码符与词典。并在最高层主网上输入,以便为各层主、子网所共亨。
(2)为拟定好OBS框架,建立统一的组织分解结构代码符与词典,并在最高层主网上输入,以便为各层主、子网所共亨。
(3)依照三峡工程分标设计,统一规定合同代号,并建立词典。
(4)约定各标合同项目活动代码,在单代号搭接网络模型下,活动代码为网络中节点代码,从活动代码易于做到唯一性的易于阅读网络图,建议活动代码的前两位为字母型(与合同代号一致),后4位为数字型混合码为宜。后4位阿拉伯数字均以0、5数字结尾,以便为以后网络中增加活动留地。
(5)约定活动分类码
活动分类码实质上是把某些特性用活动分类码的形式加以识别。P3可为活动提供20个分类码,这些活动分类码可以识别诸如:活动属何种工程;活动所在的工程部位、高程;活动的承包单位;活动的监理单位;活动的业主管理单位;施工活动还是管理性质活动;以及想要识别的其它特性。业主方统一建立活动分类码(包括代码结构、码值与词典)供参与工程建设的有关单位所共亨。
(6)制定统一资源类别代码
制定统一资源类别代码的结构、码值与词典,资源包括:资金、劳力、各种材料、各种专用施工设备等。制定统一资源类别代码,使各承包商以统一的代码把资金、劳力、各种材料、各种专用施工设备的需要量载入网络之中,不仅为承包商编制施工资源、配置计划提供依据,同时也为业主方通过主~子网络结构汇总各种资源的总量及其在时间上的分配提供方便。为业主的材料、设备的采购与供应,资金筹措,施工现场管理等提供信息支持。为了减少这方面的工作量,可仅对业主关心的资源进行,对承包商关心的资源可在其子网络上自行定义。
4 制定运行规则,避免混乱发生
业主与多个承包商建立工程施工合同关系,共同为项目进度目标的实现各自承担其相应的义务情况下,按照一定的准则,规定各方运行规则,是避免发生混乱所必须的,尤其是应用P3采用多层二阶主~子网络非直接传递结构模型时,尤为必要。其运行规则的内容概述如下:
(1)有关各方均应采用为业主方制定的代码结构、码值(符)、词典。最好在最高层主网上输入,以便为各层主、子网所共亨。
(2)为使在主~子网结构内运算协调,在运行进度计划调整、更新时,必须确定相同的更新日期。所有的子网应使用相同的数据日期,以避免冲突与混乱;如果相同的数据日期不可能,应在主网更新、调整,使其数据日期在主~子网上同步;
(3)进度计划调整、更新的数据日期,可统一规定在月支付后的某一天为宜;
(4)承包商在其子网上调整、更新进度计划(增、删活动、调整活动时间、改变活动逻辑关系等),必须在其子网络拷贝版上进行,然后交监理审批,经批准后才能作为正式的子网络,并将原子网络备份(存档)以便恢复或查询;
(5)经(4)所述步骤后,统一建立从合同到整个建设项目各层次的目标进度网络,为事后的进度评价建立基准;
(6)各承包商对各自的进度进行评价时,均以经监理、业主审核确定的实际完成的工程质量为基础进行,使进度评价建立在可靠的基础之上;
(7)当在主网上增加不属于子网络的活动或里程碑日期时,应为主网络定义一个前两个字符的可与子网络活动相区别的活动代码符;
(8)业主、监理方为维护进度计划系统的安全,还应建立如下规定:在网络环境下,建立主网络与子网络的权限,及子网对主网络存取、访问的权限;用于所有子网络工作日历;用于调度/平衡计算如何选项的规定;资源、费用计算单位和小数点位数等。
5 扩大软件使用范围,发挥更大的作用
把P3软件作为项目进度控制的辅助工具,可发挥如下作用:
(1)编制与优化项目总进度计划与标段工程进度计划,按需对进度计划作出适时调整与更新;输出各种图表;
(2)计算时间参数,找出关键线路与关键活动;
(3)对实际进度与计划进度作对比,得出偏差,评价实际进度。并在此基础上,实现实际进度对计划进度的跟踪;
(4)汇总包括资金、材料、劳力、专用施工设备需用量计划及其在时间上的分布,为项目资源供应提供信息支持;
(5)在上述基础上,为制定中、短期进度计划提供方便和依据。
笔者认为,还可以在以下方面扩大使用范围,以充分发挥其P3功能:
(1)在合同管理方面,用于分析承包商提出的工期索赔要求与确定其索赔期限;
(2)为业主、监理在处理不同标段合同之间在进度上发生冲突时,提供最优调度的分析工具。即当不同标段间平行作业的活动会损害工程施工质量或危及安全时,可依据对项目目标实现最佳的原则,确定活动作业顺序,而主~子网络结构模型是最合适的分析模型;
(3)建立费用帐目把工程概算价格、合同价格、实际支出价格等载入网络计划之中,结合本国国情运用赢得值分析技术,还可在项目投资控制中发挥一定作用。
6 结束语
笔者所要阐明的是把P3软件作为项目进度控制的辅助工具,决不是仅涉及软件操作等纯技术性的问题。从业主方角度而言,更为重要的是从组织性质工作入手,做好上面所述及的工作。在统一组织、指挥下才能充分发挥其软件功能,为项目管理提供更好的服务。这犹如交响乐团在高水平乐队指挥下才奏出美妙动听的乐章一样。笔者曾对大型建设项目使用P3软件的情况进行一些调查,凡使用情况不理想的其症结所在大多在于此。这是要引以为戒的。也是笔者写此文的用意之所在。
论文关键词:软件企业;项目管理;现状;分析;对策
论文摘要:本文主要分析了我国软件项目管理的现状及存在的误区,总结了软件项目管理方面的经验,提出了初步的解决方案和办法。
随着计算机硬件水平的不断提高,计算机软件的规模和复杂度也随之增加。计算机软件开发从“个人英雄”时代向团队时代迈进,计算机软件项目的管理也从“作坊式”管理向“软件工厂式”管理迈进。这就要求软件开发人员特别是软件项目管理人员,要更深一步地理解和掌握现代软件工程的理论方法,完成思想观念上的转变。本人结合软件项目管理知识,对我国IT行业的特点及相关的软件项目管理工作普遍存在的问题和思想观念上容易陷入的误区进行了分析,并提出了初步解决方案和办法。
一、IT行业的发展特点
随着信息技术的发展,IT行业以惊人的速度逐步深入到社会各行各业,成为推动社会进步和国民经济发展的重要力量,对我国传统产业和传统的企业管理理念产生巨大的冲击,深刻地改变着人们的生产、生活和工作方式。
1、高技术性
IT行业是最典型的技术密集型、知识密集型的产业。人才是IT行业最宝贵的财富,具有明显的技术性、流动性和年轻化的特点。
2、高渗透性
IT行业具有很强的渗透性和带动作用,是国民经济发展的倍增器,IT行业已逐步渗透到我国第一、第二、第三产业以及社会生活的各个领域,有效地推动了产业结构调整和技术升级,提高了人们的生活质量,为产业发展和整个社会生活带来革命性的变化。
3、高风险性
IT行业在产品研发、生产和市场推广过程中,都要进行巨额的资金、设备和人力投入,由于技术的高度复杂性和市场的高度不确定性,项目风险控制难度加大,项目的成功率较低。但是一旦某个新项目或新产品获得成功,将会带来相对高额的回报。
4、高竞争性
IT行业是一个富有创造性和挑战性的行业,要求在有限的资源条件下,在越来越短的时间范围内,为客户提供技术创新性强、个性化程度高的信息产品和服务。在我国企业ERP系统项目建设中,项目真正的成功率一般在40%一50%之间。目前,攀钢集团公司正投入巨资进行ERP系统项目建设,项目进展虽说顺利,但如何把行业发展和项目管理的实施有机地结合起来,提高企业信息化水平和效益,仍是面临的一个重要课题。
二、软件项目管理所存在的问题及对策
软件项目管理IT行业的一个富有创新意义的领域,是针对特定的项目需求,以团队运作的形式,有效地组织项目资源,通过对项目的管理和控制,实现项目的目标。在我国IT行业起步较晚,但发展迅速,项目管理在IT行业的应用还很不成熟,一般的、常规的组织管理方式已很难适应,这是软件开发中项目管理面临的最大挑战。
1、对项目管理认识和重视不够
项目经理或管理人员不十分了解项目管理的知识体系,所以在实际工作中没有项目管理知识的指导,完全依靠个人现有的知识技能,管理工作的随意性、盲目性比较大。在软件企业中,项目经理主要是因为他们能够在技术上独当一面,而管理方面特别是项目管理方面的知识比较缺乏。希望尽快推行和实施软件项目经理知识技能资格制度,各方面都能充分认识项目管理的重要性,让项目经理自觉学习项目管理的知识和一些常用工具和方法。
2、对项目的系统性把握不够
在软件企业一些项目管理人员对项目总体计划、阶段计划的作用认识不足。项目经理认为计划不如变化快,项目中也有很多不确定的因素,做计划是走过场,因此制定总体计划时比较随意,造成计划与控制管理脱节,无法进行有效的进度控制管理。其实制定计划的过程就是一个对项目逐渐了解掌握的过程,通过认真地制定计划,项目管理人员可以知道哪些要素是明确和重要的,哪些要素是要逐渐明确和次要的,通过渐近明细不断完善项目计划。制定计划的过程,也是在进度、资源、范围之间寻求一种平衡的过程。因此,提高项目管理人员的计划意识,加强对开发计划、阶段计划的有效性,并进行事前事后的评估。
3、管理思想贯彻不到位
项目经理如果没有从总体上去把握管理整个项目,而是埋头于具体的技术工作,造成项目组成员之间任务不均、资源浪费。在软件企业中,项目经理大多是技术骨干,技术方面的知识比较深厚,但无论是项目管理知识,还是项目管理必备的技能、项目管理必备的素质都有待补充和提高。同时由于工作分解结构设计的缺乏合理性,项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。因此加强项目经理在项目管理知识方面的培训和考核,引导项目经理更好地做好项目管理工作。
4、沟通的效率不高
在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足,造成各做各事、重复劳动,甚至造成不必要的损失。在项目沟通管理方面:管理者要用70%的时间用于与人沟通,而项目经理需要花费90%或更多的时间来沟通。所以项目管理人员不但自己要把工作重点放在沟通上,而且要善于沟通,以提高沟通意识和沟通的效率。
5、对付风险的策略不成熟
项目管理人员没有充分分析可能的风险,对付风险的策略考虑比较简单。有些项目管理人员没有充分意识到风险管理的重要性,对计划书中风险管理的章节简单应付了事,随便列出几个风险和一些简单的对策,对于后面的风险防范起不到一定指导作用。项目风险管理是对项目潜在的意外损失进行规划、识别、估计、评价、应对和监控的过程,是对项目目标的主动控制手段。因此通过学习项目管理知识,掌握风险识别、量化、对策研究、反应控制的工具和方法,加强对项目规划中风险管理计划的审核,提高项目组的风险管理意识。
以上对软件开发项目管理中容易出现的问题的分析可能还不够深入,电无法列举所有遇到或将遇到的问题,解决办法也只能在际情况中把握。
三、软件项目管理的误区
1、在项目的需求分析阶段,开发方与客户方在备种的问题的基本轮廓上达成一致即可,具体细节可以在以后填充。因为无论开始时有多么细致,以后对需求的修改几乎是必然的。这是一种非常危险的思想。实际上许多软件项目失败的最主要的原因就是需求阶段对问题的描述不够细致,导致后来预算超出或者时间进度达不到要求。因此,在项目需求分析阶段,双方必须全面地尽可能细致地讨论项目的应用背景、功能要求、性能要求、操作界面要求、与其他软件的接口要求,以及对项目进行评估的各种评价标准。
2、软件项目的需求可以持续不断的改变,而且这些改变可以很容易地被实现。的确,在具体实际中由于种种原因客户方很难在需求分析阶段全面而准确地描述所有问题。随着开发进度的推进,往往会有一些需求的改变。但这并不表明“软件项目的需求可以持续不断的改变,而且这些改变可很容易地被实现”。实践表明:随着开发进度的推进,实现软件需求更改所需要的代价呈指数形式增长。所以软件需求的改变应当尽量早地提出,才可能花费少,容易被实现。
3、既然在项目人员配置中设置了专门的测试人员,那么软件所有的内部测试工作全部应该由测试人员完成。软件程序测试分为“白盒法”和“黑盒法”两种方式。由于使用“自盒法”对测试人员各方面素质的要求极高,程序测试时测试人员总是最优先使用“黑盒法”。如果测试没有通过,不得已造才考虑对程序代码进行“白盒法”测试。显然,这种对“白盒法”有意无意的“逃避”,对软件的可靠性和稳定性构成了威胁。如何解决这个问题?一方面需要提高对测试人员的要求,另一方面也需要程序员完成部分进行”白盒法”测试。
4、在开发进度滞后的情况下,可以聘请更多的程序员加入到开发团队中,通过增加人力资源来赶上进度。如果新加入的程序员很难适应项目管理方式、软件开发风格、团队协作氛围;那么“新人”的加入可能是有害的。
5、技术骨干应该成为项目的项目经理,项目经理一定是所有项目成员中薪水最高的。在“软件作坊”时代,这是一种普遍使用而且效果不错的方法;而在“软件工厂”时代,这种方法却带来各种问题,有时甚至直接导致项目失败。究其原因这主要是因为随着现代软件开发分工的细化,对项目经理的要求也发生了根本的改变一一最注重的不是其对某项专业技术的掌握程度,而是其组织、领导、协调开发团队的能力。项目经理的薪水在项目成员中是比较高的,但不一定是最高的。
四、我国软件企业实施项目管理的实践和经验
我国的许多软件企业按项目方式运作已有多年,在这期间,我国软件企业进行了不懈地探索,有成功的经验,也有失败的教训,其中主要体现在以下几个方面:
1、客户满意作为项目管理的最终目标
客户是项目的委托方,也是项目的受用方,如何使客户对项目的最终结果感到满意,是项目管理的一个优秀问题。为让客户满意项目组要树立以客户为中心的观念,项目管理的整个生命周期都要面向客户,并把客户满意度作为衡量项目成败的一个重要指标,使项目组的利益与客户的利益紧密地联系在一起。项目的需求就是客户的需求,它应包括客户的现实需求和潜在需求。信息技术的迅速发展,导致IT行业客户需求的多样性、多变性、不确定性和个性化。软件产品或解决方案需要企业与客户在充分沟通的基础上,共同提取、挖掘,从而不断逼近客户的真正需求,客户与企业之间体现出很强的互动性。
2.项目管理要面向结果,首先要面向人
项目管理要以人为本,项目经理首先是人力资源经理,对于知识密集型的软件企业来说,尤其如此。通过项目为员工提供平台,通过员工的发展目标与项目目标的有机结合,使员工在项目的平台上实现自我的价值。
3.项目管理的挑战性和推动力
项目管理的实施,特别是全面推行项目管理,对于软件企业而言,不是一改变,而是一种变革,是一项长期性、艰巨性的任务。因此,企业首先要有开放的心态,要勇于改革,并能以长远的眼光和勇气正确对待项目开发中出现的问题,不因暂时的困难和挫折而放弃。其次要有务实的态度,要有相应的措施和落实的力度,推动项目的进程和开发效率的提高。
目前,我国软件开发和项目管理水平与美国、印度等国家相比还不高。而国外水平比较高的软件公司软件开发流程和项目管理十分规范,随着世界范围软件业的发展,在我国已有越来越多的软件公司重视流程和项目管理,软件业的春天一定会来临。
论文摘要:目前,项目教学法在高职院校越来越受到重视。应根据项目教学的理论,从实例入手,研究《平面设计软件》课程实训项目设计方案的理念与构成,对信息收集、方案选择、项目执行中的技术问题及成果评价等环节进行探讨和分析。
论文关键词:平面设计软件;实训课程;项目设计;实训项目;成果评价;职业能力
平面设计软件实训是配合《平面设计软件》课程开设的为时2周的实训课,是培养学生职业能力的一个重要环节。以往的实训课通常是通过让学生做一些课业进行的,教师给出一个课题,学生在指定时间按教师的要求完成作品,整个过程在教师的辅导下完成。在这样的教学过程中,学生的职业能力难以得到很好的训练,团队精神难以得到有效的培养。所以,在实训课上进行项目教学是很有必要的,因为项目教学法的优秀是在教师的指导下,由学生去探寻得到最终结果的途径,学习的重点在学习过程而非学习结果,这对学生能力的培养是很有帮助的。在2周的时间里,如何设计项目才能使学生真实地体验一个项目的完整制作过程,是需要教师研讨的问题。
实训项目设计分析
实训课的教学不同于理论课。由于学生已经初步具备了该课程的知识和技能基础,实训课要在理论课的基础上重点训练学生的专业技能和职业能力。所以,项目的设计要求更能体现实际工作环境的特点,学生通过项目能更好地应用学过的知识解决实际问题,锻炼自己的实际工作能力。
设计理念平面设计是近十几年逐步发展起来的一个复合性职业,涉及面非常广泛,涵盖的职业范畴包括商业展示设计、商业广告设计、商业环境艺术设计、书籍装帧设计、包装结构与装潢设计、服装设计、工业产品设计、商业插画设计、标志设计、企业CI设计、网页设计等等。针对目前平面设计行业及社会其他相关岗位对人才的需求和对教学内容及教学方法的研讨,实训项目设计应该围绕着专业方向和培养目标进行设计;围绕着用完整的实际工作流程训练学生综合设计制作能力的目标进行项目开发,即按照实际工作“调研策划创意设计制作提交审核”的流程进行教学设计;以项目小组的形式开展教学活动;通过实训项目训练,培养学生的创新精神和团队精神,使学生能够综合运用美学思想、平面艺术设计的基本原理和设计规律及计算机图形图像设计软件,完成符合实际要求的平面设计作品,实现平面设计专业的教学目标。项目的设计理念应当是以培养学生完成实际工作任务的职业能力为目标,但设计的项目不一定非要来源于企业,因为本课程的学生是“广告设计与制作”专业的一年级新生,还没有学过平面设计方面的专业课,用2周的时间完成一个真实的企业项目有一定的难度。为了顺利实现《平面设计软件》实训课程的教学目标,可采取将虚拟项目按照真实项目完成的形式进行教学设计。
设计思路平面设计专业的能力目标是使学生能够根据平面艺术设计的基本原理和设计规律,针对不同的用户要求进行各种平面作品的设计与制作。所以,“网站页面设计制作”项目、“POP广告设计制作”项目、“商业插画设计制作”等项目都可以用来作为《平面设计软件》实训课程的实训项目。产品类广告设计可以重点培养学生市场调研、策划、创意等能力;文化类广告设计可以培养学生掌握完整的设计制作流程;“网站页面设计制作”可以通过图形、色彩、文字等设计元素的运用培养学生综合的平面设计能力。下面以“某集团房地产网站页面设计制作”项目为例,分析实训项目的设计方案。
实训项目设计方案
项目背景随着互联网的飞速发展,网络已经成为人们生活中不可缺少的一部分,利用网络查找各种所需要的信息已经是人们习以为常的手段。在这种形势下,很多企业、个人都需要拥有自己的网站和网页。某房地产企业为了更好地宣传企业形象和推介企业产品,需要制作一个引人注目的精美网站展示自己。
项目内容该设计项目是为某房地产开发商的网站进行网页设计和制作,需要学生进行市场调研,了解企业名称和受众群体,并采集各种信息,通过进行实际调查和需求分析,确定网站的市场定位,进行网页的规划和整体方案设计。在网页效果上要注意网站形象设计,以满足人们的审美需求;在制作过程中要合理运用艺术设计的理论知识和软件技术,按计划完成符合客户要求的精美网站制作。具体任务内容包括市场调研、网站策划、网页整体方案设计、网页设计制作、完稿处理、资料整理等,其中市场调研包括收集相关房地产企业的宣传资料和网站形象调研。网站需求分析要通过对宣传资料进行整理分析,明确用户需求,并撰写分析报告。网站整体方案设计包括标准字、LOGO小样、标准色彩、图标设计、网页平面设计等内容。网页设计制作可利用平面设计软件Photoshop、Illustrator等。
项目能力目标为达到专业要求的职业能力培养目标,在项目执行过程中,要求学生能进行基本的市场调研,明确客户需求,撰写广告策划书;能根据策划书进行创意构思,绘制出设计草图;能进行一定的创意设计;能将艺术设计理论知识与软件技术相结合,具备项目执行能力、与人沟通能力及小组协作能力。
项目技术指导在项目执行过程中,教师承担着指导的责任,在设计项目方案时,教师要全盘考虑项目中的一些技术问题,对学生可能遇到的知识和技能问题做到心中有数,以使项目能够顺利进行。
1.网页设计流程。按照一定的设计流程策划、设计、制作网站可以减少失误,确保项目的正确进行。因此,要了解项目的制作步骤及网页的设计流程:(1)市场调研,收集资料;(2)网站策划;(3)网页详细设计;(4)网页制作;(5)验收作品。
2.市场调研。在调研之前首先要确定调查报告内容,对问题进行分析、排除、锁定。这样在与客户沟通时可避免问题模糊、范围过大。资料收集要翔实、丰富,包括该企业的介绍、楼盘信息、图片等一切相关信息。
3.网站策划。网站策划是网站设计的关键步骤,只有真正策划好了,才有可能成为让客户或用户满意的网站。在本项目中,网站策划是了解客户需求、进行信息收集与分析、对网页设计等方面的问题进行整体规划并提供解决方案、撰写“需求分析报告”的过程。在这个过程中最为重要的是需求分析,就是了解、分析、明确用户需求,利用创意草图,对网页进行合理科学的规划,即对网页定位、受众群体、网站色调、网站页面总体风格、各种页面特殊效果及其数量进行确定。
4.网页详细设计方案。在需求分析的基础上,要进一步针对内容建设、网站布局、网站结构方面设计具体的方案。需要画出网站结构图,其中包括网站栏目、结构层次、连接内容、首页中的功能按钮、内容要点、友情链接等,都要体现出来,要切题并突出重点。设计方案要充分展示房地产网页设计的特点,网站形象要庄重平和,信息量要全面、细致,具有人性化特点。网页结构应层次清晰、创意新颖、颜色搭配合理、网页页面设计符合审美要求,网页功能要融入设计方案中,网页的内容与表现形式要统一,要对内容进行合理的分析、加工,按类别分类,栏目设置要一目了然。(1)首页设计。首页设计包括创意设计、结构设计、色彩调配和布局设计。在进行首页设计时,标题要有概括性,要用标题性的文字使访问者快速了解网站所能提供的信息,可将具体内容放到子页里完成;要符合设计时的主题和风格;文字与背景要合理搭配;整个页面色彩选择要统一。(2)网页版式设计。在网页设计中,网页的版式设计以及色彩搭配是很重要的,字体的设计和图片的放置都要考虑整个页面的排版,要合理地运用空间,使网页疏密有致,井井有条,留下必要的空白,使浏览者感觉轻松,没有压抑感,但也要注意不能只追求版面效果而忽视功能方面的问题。(3)网页背景。网页背景设计不好会影响访问者对整个网站的印象,选用的背景应该与整套页面的色调相协调。不同的颜色会给人不同的视觉心理感受,要合理运用色彩,造成良好的视觉效果。使用图片做背景时,要考虑大尺寸给传输速度带来的影响。
5.网页制作。网页制作是通过应用Photoshop、Illustrator等平面设计软件的各种技术实现网页策划所要求的效果的过程。在制作时既要结合平面设计的基本知识,也要遵循网页设计独特的设计要求与原则。(1)网页图标设计。图标是具有明确指代含义的具有标识性质的图形,不仅是一种图形,更是一种标识,具有高度浓缩并快捷传达信息、便于记忆的特性,应用范围很广,例如各种交通标志、学校的校徽、商品的商标等。图标也是网页中重要的设计元素,应根据不同的应用有所区分,既可以用来标识一个栏目,也可以作为链接元素实现网页间的跳转。精美的网页设计图标往往能起到画龙点睛的作用,从而提升软件的视觉效果。网页常用的图标有“导航图标”、“按钮”、“标志”等。图标设计要简单、直观、可识别性强;要能准确表达相应的操作;按钮的设计采用图标和文字可以提高图标的可用性;为吸引用户眼球,颜色应简洁;使用矢量格式可以让图标随意放大缩小;在导航栏上或网页的某些地方使用合适的图标,不仅可以美化网站,还可以引领用户浏览网页。一般制作流程是先做出基本的外形,再进行上色修饰,最后增加一些光影使其具有立体感。(2)导航栏设计。导航栏是网页中用来装饰和展示网页的,是非常重要的组成部分,功能丰富的导航栏可以引导阅览者获取多方面的信息。导航栏的设计应遵循“导航数量适当”、“导航提示明确、清晰、醒目”等原则。(3)网页色彩设计。网页的色彩是网页最重要的部分,是给访问者登录页面时的第一印象,好的页面色彩能给人带来很强的视觉冲击力,可以使浏览者对整个网站产生深刻印象。在设计网页时如果忽视了色彩设计,网站最后的视觉效果可能与客户期望不匹配。因此,设计时需要先了解网站的定位、网页的风格,学习有关的色彩知识,在此基础上合理进行色彩搭配。在配色时应注意尽量将颜色控制在三种以内,一般而言,网页的背景色应该柔和一些、素雅一些,如配上深色的文字,会使人看起来自然、舒畅,文字的颜色在不同底色的衬托下,会给人不同的视觉效果,设计时应综合考虑多方面的因素,设计出能产生好的视觉效果、能营造整体氛围的网页。网页设计还有很多方面的知识,教师可以给学生提供一些资料,让学生通过自主学习掌握这些知识,提高学生的自学能力。
6.项目验收。项目验收包括制作演示文稿、向客户展示最终产品并听取客户意见、按要求将所有图文资料进行整理形成完整文档等。实训项目验收可以采取小组汇报、小组评价、教师对项目进行总结评估的形式。通过一个有效的验收过程,学生可以总结项目进行过程中的经验教训,教师可以提高指导水平,达到预期的效果。项目考核评价应主要评价学生是否达到了项目教学的目标,对学生在执行项目中所表现出来的综合运用知识与技能解决实际问题的能力进行考核,并应结合学生自评和小组互评进行综合考核。不能只关注最后的项目成果,要关注学生在完成项目后学习到的知识、技能和提高的职业能力,这样才有利于培养学生的自信心和创新能力。
项目的选择和设计方法将直接影响到教学的最后效果。选择项目时应选择具有一定的实用价值、相对较大、综合性较强的项目,这样涉及的知识和技能就会多些,学生通过项目训练也就能够做出一些高水平的作品,就会有成就感。通过多个项目的训练,会产生一些高水准的、具有实际价值的作品,这对学生将来的就业会有很大的帮助。随着职业教育理论研究与实践的不断深入,高职院校的教师深刻地认识到,职业教育最主要的任务是培养学生获得职业岗位工作所需要的各种能力。项目教学作为一种新型的教学模式,很好地体现了以行动为导向的教学思想,教师应在不断的实践中总结经验,创造出更多、更好的实训项目,更好地培养学生的能力。
论文关键词:软件项目管理 项目经理 项目
论文摘要:在软件项目开发的过程中,软件项目管理的成功与否是决定一个项目是否能够顺利高效率完成的重要保证。但是我国大部分的软件企业在进行项目管理时都存在着各种问题,从而使项目不能顺利有效地完成。文章探讨了在项目管理过程里出现的常见问题,并给出了相应的解决策略。
计划软件行业在现在的众多行业里是一个极具挑战性和创造性的行、体现了软件开发者的智慧和汗水,同时软件开发是‘项复杂的系统]:程,牵涉到许多方面的因索,在实际工作中,经常会出现各种各样的问题,甚至会面临失败。如何总结、分析失败的原因,得出有益的教训,对于项目开发人员来说,是在今后的项目中取得成功的关l键。
一、软件开发中实行项目管理的意义
项目管理就是在项目活动中运用系列的知识、技能、工具和技术,以满足或超过相关利益者对项目的要求,实际上就是通过项目各方干系人的合作,把各种资源应用于项目,以实现项日的目标,满足项日于系人的需求,其本质就是对时问、质量和成本的管理。
随着软件开发的深入、各种技术的不断创新以及软件产业的形成,人们越来越意识到软件过程管理的重要性,管理学的思想逐渐融入软件开发过程l}f,项目开发的管理日益受到重视。
二、目前在软件项目管理中存在的误区
现在大多数企业都认识到了在项目中进行管理的重要性,是仍然冉许多企、在实施项目管理的过程中存在着这样那样的误区,主要表现在:
1.项目经理不够专业。在软件企业中,缺乏专业的项目管人员来实施项目管理及担任项H经理,通常被任命的项日经主要是因为他们能够在技术上独当一面,但是他们在管理方面特别是项目管理方面的知识比较缺乏。
2.项目规划缺乏纲领性。项目经理对总体计划、阶段计划的作用认识不足,凶此制定总体计划时比较随意,不少事情没有仔细考虑;阶段计划因工作等理由经常拖延,造成计划与控制管理脱节,无法进行有效的进度控制管理。
3.缺乏有效的符理意识。部分项目绎理不能从总体上把握整个项目,而是埋头具体的技术工作,造成项目组成人员之间忙的忙、闲的闲,计划不周、任务小均、资源浪费。有些项目经押没有很好的管理方法,不好安排的工作J好自己做,使项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。
4.缺乏有效的沟通制度和机制。在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足,造成各做各事、重复劳动,甚至造成不必要的损失;有些人没有每天定时收邮件的习惯,以至=无法及时接收最新的信息。
5.风险管理意识淡泊。有些项目经理没有充分意识到风险管理的重要性,对计划中风险管理的章节简单应付了事,随便列出几个风险,随便地写一些简单的对策,对于后面的风险防范起不到什么指导作用。
6.项目干系人的不确定性。在范围识别阶段,项目组对客户的整体组织结构、有关人员及其关系、工作职责等没有足够了解以至于无法得到完整需求或最终经权威用户代表确认的需求;或者是多个用户代表各说各话、昨是今非,但同时又要求项目尽早交付:项目后期需求变化随意,造成项目范围的蔓延,进度的拖延,成本的扩火。
7.缺乏项目团队的合理分工。项目团队内有时由于各阶段不同角色或同阶段不同角色之间的责仟分工不够清晰而造成工作互相推诿、责任互相推卸的现象;有时各阶段不同角色或同阶段不同角色之间的责任分工比较清晰,但是各项目成员只顾完成自己邢部分任务,不愿意与他人协作。这些现象都将造成项目组内部资源的损耗,从而影响项目进展。
三、解决软件项目管理中存在的误区的有效策略
要想解决上面描述的误Ⅸ,归根到底还足要从管理学的角度入手,即在软件项目的开发过程中加入过程管理的内容,这样我们可以在软件开发中对各个过程的质量加以控制,从而达到保证软件产品质量的目的。为了有效提高管理水平,我们应该努力做到:
1.项目经理接受系统的项目管理知识培训是非常必要的,有了专、I领域的知识与实践,再加上项目管理知识与实践和一般管理的知识和经验的有机结合,必能大大提高项目经理的项目管理水平
2.计划的制定需要在一定条件的限制和假设之下采用渐近明细的方式进行不断完善。提高项臼经理的计划意识,采用项目计划制定相关知识、技术、工具,加强对开发计划、阶段计划的有效性进行事前事后的评估。
3.加强项H管理方面的培训,并通过对考核指标的合理设定和宣传f导项目经理更好地做好项目管理工作。技术骨干在担任项目经理之前,最好能经过系统的项目管理知识,特别是其中的人力资源管理、沟通管理的学习,并Ⅱ在实际工作中不断提高自己的管理素质,丰富项目管理经验,提高项目管理意识。
4.制定有效的沟通制度和沟通机制,提高沟通意识:采取多种沟通方式,提高沟通的有效性。通过制度规定对由于未及时收取邮件而造成损失的责任归属;对于特别重要的内容要采用多种方式进行有效沟通以确保传达到位,例如:除发送邮件外还要电话提醒、回执等,重要的内容还要通过举行各种会议进行传达。
5.通过学习项目管理知识掌握风险识别、量化、对策研究、反应控制的工具和方法,掌揖项目风险管理所必备的知识。通过加强对项目规划中风险管理计划的审核提高项目组的风险管理意识。总结本行业项目中常见的风险及其对策作为风险管理计划中必要的风险内容,并切实评估相应对策的有效性和可行性。
6.项目的目的就是实现项目干系人的需求和愿望。项目干系人管理应当从项目的启动开始,项目经理及其项目成员就要分清项目干系人包含哪些人和组织,通过沟通协调对他们施加影响,驱动他们对项目的支持,调查并明确他们的需求和愿望,减小其对项目的阻力,以确保项目获得成功。
7.项目经理应当对项目成员的责任进行合理的分配并清楚地说明,同时应强调不同分工、不同环节的成员应当相互协作,共同完善。实施有效的项目管理绝非易事,对于软件企业而言,这是一个小的改变,而是一种变革,企、世需要为此付出艰苦的努力,同时,成熟有效的项目管理无疑将对企业起着至关重要的作用,项日管理的水平将是企业优秀竞争力之一。
论文关键词:软件产业 软件项目 软件工程 项目管理
论文摘要:信息系统以及相关软件项目的设计开发已经不是企业运作管理中的一部分了,各软件企业都在积极地将软件项目管理引人开发活动中,对软件项目开发实行有效的管理。
目前,中国的软件企业正处于高速发展、急需规范管理并以项目为主导的环境中。企业每天所面对的不仅仅是几个越来越大的大型项目,而将是成百上千不断发生和进行的项目。产生这种变化的因素是多方面的,这包括客户需求的不断提高导致产品生命周期缩短;产品开发项目数量大增;新技术导致了对研究和开发项目需求的增加;为了提高业务赢利能力,改进业务模式的项目需求大增等。在这种多项目并发、技术含量高、变化速度快、资源有限的环境下,如何对企业、项目、资源实施科学的管理,加强团队能力,实现软件企业的生产规模化、规范化、国际化,是当前我国软件业面临的最大挑战。
中国目前软件业的落后状况,实际已经不是技术本身的问题,而是科学管理的问题,软件工程理论与软件项目管理的实际应用与经验,是我国软件企业急待学习与渴求的。中国软件业各个层次上的管理问题,目前可以说已经制约了中国软件业走向国际化的进程。
一、软件项目管理的概念
从概念上讲,软件项目管理是根据管理科学的理论,结合软件产品开发的实际,保证工程化系统开发方法顺利实施的管理实践,为了使软件项目能够按照预定的成本、进度、质量顺利完成,从而对成本、人员、进度、质量、风险、文档等进行分析、管理和控制的一系列活动。实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展(即减小开发风险)。
软件项目的开发不同于其他产品的制造,软件开发的整个过程都是以设计过程为主(几乎没有制造过程);另外,软件开发不需要使用大量的物质资源,而主要使用的是人力资源;并且,软件项目开发的产品大多数是程序代码和技术文档,并没有其他的物质结果。基于上述特点,软件项目管理与其他项目管理相比,具有很大的独特性。
二、软件项目管理的目的
随着信息技术的飞速发展,计算机软件产品的规模和复杂度也随之增加。个人单打独斗的作坊式开发方式已经越来越不适应发展的需要。与此同时,软件项目中“项目黑洞”也应运而生:项目无法按期完成、项目合作方的工作难以协调、用户需求经常变动、工作质量难以保证,给企业带来为了愈来愈多的损失。这种情况说明了软件项目开发及管理过程中,存在着许多的问题,需要更多的重视和研究。
没有运用软件项目管理是面临如此众多问题主要原因之一。软件项目管理作为一种科学的管理手段,是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的一系列活动。因此,对于以“项目”为基本运作单位的各软件开发企业,都在积极地将软件项目管理引人开发活动中,对软件开发实行有效的管理。因此,决定一个软件项目实施成功与否,软件项目管理无疑起着举足轻重的作用,软件项目管理已经是公认的软件开发企业的优秀竞争力之一。
三、软件项目管理的原则
1.平衡原则
在我们讨论软件项目为什么会失败时可以列出很多的原因,如管理问题、技术问题、人员问题等等,但是有一个根本的思想问题是最容易忽视的,也是软件系统的用户、软件开发商、销售商最不想正视的,那就是:需求、资源、工期、质量这四个要素之间的平衡关系问题。
需求定义了“做什么”,定义了系统的范围与规模,资源决定了项目的投人(人、财、物),工期定义了项目的交付日期,质量定义了做出的系统好到什么程度,这四个要素之间是有制约平衡关系的。如果需求范围很大,要在较少的资源投人下,很短的工期内,很高的质量要求来完成某个项目,那是不现实的,要么需要增加投资,要么工程延期;如果需求界定清楚了,资源固定了,对系统的质量要求很高,则可能需求延长工期。对于上述四个要素之间的平衡关系最容易犯的一个错误,就是鼓吹“多快好省”四个字。正视这四个要素之间的平衡关系是软件用户、开发商、商成熟理智的表现,否则系统的成功就失去了一块最坚实的理念基础。
2.高效原则
在需求、资源、工期、质量四个要素中,很多的项目决策者是将进度放在首位的,现在市场的竞争越来越激烈,“产品早上市一天,就早挣一天钱,挣的就比花的多,所以一定要多挣”,基于这样一个理念,软件开发越来越追求开发效率,大家从技术、工具、管理上寻求更多更好的解决之道。基于高效的原则,对项目的管理需要从几个方面来考虑:要选择精英成员;目标要明确,范围要清楚;沟通要及时、充分;要在激励成员上下工夫。
3.分解原则
“化繁为简,各个击破”是自古以来解决复杂问题的不二法门,对于软件项目来讲,可以将大的项目划分成几个小项目来做,将周期长的项目化分成几个明确的阶段。
项目越大对项目组的管理人员、开发人员的要求越高,参与的人员越多,需要协调沟通的渠道越多,周期越长,开发人员也容易疲劳,将大项目拆分成几个小项目,可以降低对项目管理人员的要求,减少项目的管理风险,而且能够充分地将项目管理的权力下放,充分调动人员的积极性,目标会比较具体明确,易于取得阶段性的成果,使开发人员有成就感。
4.实时控制原则
实时控制项目进度的机制,依靠一套规范的过程来保证实时监控项目的进度,以实现实时控制项目的进展,将项目的进展情况完全的实时的置于你的控制之下。实时控制确保项目经理能够及时发现问题、解决问题,保证项目具有很高的可见度,保证项目的正常进展。
5.分类管理原则
对于不同的软件项目其项目目标差别很大,项目规模也是不同的,应用领域是不同的,采用的技术路线差别也很大,因而,针对每个项目的不同特点,其管理的方法、管理的侧重点应该是不同的。就像古人讲的,“因材施教”,“对症下药”。项目经理需要根据项目的特点,制订不同的项目管理的方针政策。
6.简单有效原则
项目经理在进行项目管理的过程中,往往会得到开发人员这样的抱怨“太麻烦了,浪费时间,没有用处”,这是很普遍的一种现象。当然这样的抱怨要从两个方面来分析,一方面从开发人员本身可能存在不理解,或者逆反心理的情况,另一方面,项目经理也要反思:我所采取的管理措施是否简单有效?搞管理不是搞学术研究,没有完美的管理,只有有效的管理,而项目经理往往试图堵住所有的漏洞,解决所有的问题,恰恰是这种理想,会使项目的管理陷人一个误区,作茧自缚,最后无法实施有效的管理,导致项目的失败。
7.规模控制原则
该原则是和上面提到的其他原则相配合使用的,即要控制项目组的规模,不要人数太多,人数多了,进行沟通的渠道就多了,管理的复杂度就高了,对项目经理的要求也就高了。在微软的MSF中,有一个很明确的原则就是要控制项目组的人数不要超过10人,当然这不是绝对的,也和项目经理的水平有很大关系。但是人员“贵精而不贵多”,这是一个基本的原则,这和我们上面提到的高效原则、分解原则是相辅相成的。
8.组织的知识积累原则
有效的积累知识的方法是:人员专业化培养,知识与载体分离。具体的做法是,把需要度量的知识实体分为固定知识(项目成果)和流动知识(参与人员),再把知识实体的价值体现划分成不同的度量平面。根据所有知识实体在不同度量平面上的知识度量值,可以形成不同的知识平面指数和公司知识指数,并可根据此知识指数体系来全面分析公司的知识积累状况,并迅速做出恰当的反应。知识与载体分离体现的是,在组织中人力资本与组织资本是有区别的,简单地说,人力资本属于员工个人,企业只可租借使用;而组织资本就是8小时以外员工带不回家的企业资产,它为公司所有。对企业来说,相比于人力资本,组织资本更为重要。一个管理者(领导者)必须知道如何容纳和积累知识,使之为公司所有。
论文关健词:软件项目 软件质量 软件质量管理 软件项目管理
论文摘要:软件产品是软件项目的最终结果,其功能度和复杂性要比制造业的产品高得多,而且在投入使用后,软件发挥的功效也是其它任何形式的硬件产品所无法比拟的。为了保证软件产品在交付后能够按照用户的需求发挥正常的功效,因此在项目实施过程中进行有效的质量管理是很有必要的。本文结合作者的经历就软件项目中的质量管理做了一些探讨。
一、引言
软件产品是软件项目的最终结果与其相关的质量问题主要来自项目开发过程。但软件是一个纯智力的特殊产品描述软件质量的定义则比描述实际物品质量定义面临着更多的潜在因素。所以保证软件质量比保证设备质量更具挑战性和不确定性。
国际化标准组织Iso在ISOPIEC9126中将软件质量定义为:“反映软件产品满足规定需求和潜在需求能力的特征和特征的总和”。而M .J .Fisher将软件质量定义为:“所有描述计算机软件优秀程度的特性的组合“。目前对软件质量的研究主要从两方面展开:一是软件开发过程的质量保证以过程文档化和管理科学化为内容:二是软件过程和产品的质量评估包括中间产品和最终产品采用软件度量技术作为软件质量特性量化的主要技术。本文将就第一个方面展开讨论通过给出或设计一些符合文档化开发标准的管理规范和文档模板以达到使软件质量满足之前用户对各项功能或性能的精确定义的目的。
二、项目概况及背景
某船厂在信息集成系统CIMS第一期结束后初步建立起企业的基础信息资源的共享平台,并将物资管理与财务管理进行了整合。但在第一期CIMS平台中没有对其涂装生产管理建立相应的系统。为尽快解决涂装生产管理的问题项目组在进行一个月的需求调研后就进入了开发。但是由于前期需求阶段没有细化需求涉众范围太小在开发阶段代码管理松散导致项目在开始不久后就处于一边开发一边继续需求分析细化的状态并伴随不断的需求变更最后在拖期半年后才交付了一个带有隐患的产品而且原定两周的试运行期因为修改不断发现的缺陷也延长为两个月。
在完成涂装项目后,项目组又接到船厂关于开发生产安全监管系统的任务为了避免同样的问题发生和提高软件质量,项目组认为要在软件开发项目过程中引入完善的质量管理,并针对船厂项目特点,结合实际情况重点覆盖需求、编码、测试三个阶段。
三、分析及应对措施
1.定义合适的项目过程
软件过程是指开发和维护软件产品的活动技术和实践的集合。在以计算机网络为基础的现代社会信息化背景下过程管理作为现代企业管理的先进思想和有效工具,随着外部环境与组织模式的变化而变化。因此作为一个好的软件项目过程,必须针对企业和项目的实际情况,确定软件项目运作流程,定义软件功能及相关性能明确各阶段的进入条件和退出条件进行有效的过程控制与管理,在提高软件开发的效率和项目的成功率的基础上进一步保证所开发软件的质量。
在现阶段主流的软件工程过程主要是RUP (Rational Unified Process)和XP (Extreme Programming)。由于新项目的需求明确,并且项目组成员的构成方式是新老搭配,在经过综合考虑后,我们决定采用RUP方法。最后,项目组根据项目实际情况对传统的RUP模式进行按需裁剪,具体方案是将”需求与分析”和‘’设计”两个活动合并为‘’需求分析”,将”配置”和”变更管理”统一纳入’‘项目管理‘’,移除”环境活动‘’环节。
2.明确项目需求
对于任何软件项目过程而言,需求不仅是一个不可避免的环节,也是软件开发的基础。往往用户需求明确变更少的项目的成功率就高而那些用户需求混乱变更频繁的项目几乎从一开始就注定了失败的命运。但是,在现实生活中,用户需求总是在开发进入中后期时,因为各种不同的原因而发生变化。这就给软件项目过程实施带来不确定因素。在涂装项目中,由于前期需求不明确以及随意变更需求,导致项目组在开发阶段不停的返工,进而造成代码质量低下,测试拖期等一系列问题。因此在项目实施过程中,为了保证软件开发的顺利进行和最后交付的产品质量,应该对项目需求变更进行管理。
(1)需求说明书要描述明确详尽。由于与用户沟通的需求人员并不是最后的开发人员,所以有可能导致开发人员对需求说明书的理解与用户真正的意图会产生一定的偏差。另外,当项目在进行到开发(编码)阶段时,由于记忆的缺失,对当初所作的需求说明书的理解也会产生偏差。
(2)要对需求变更进行管理。通常需求分析完成后项目就进入开发阶段,用户可能会因为市场或策略的变化而提出需求变更的要求。此时,若是合理变更则有利于项目实施,但有时所作的变更可能会影响项目整体的设计和开发,造成项目进度的延期。对于这一情况,项目组应该积极与用户沟通,制订需求变更说明书,在双方都认可的情况下方可实施。
(3)在项目开发过程中要尽早明确用户需求,有些内容一时无法确定则应该暂缓该部分的开发,尽量降低因需求变更而带来的风险。
3.代码走查
软件质量在很大程度上依赖于代码质量。在实际环境中对于同一项目而言,由于项目组成员的编程能力、习惯、风格、对需求的理解和个性的不同所开发的代码质量也不尽相同。再加上一些难以预测的人为因素由此带来的隐患将严重影响代码质量最终造成软件质量低下,使得用户无法正常使用并为以后的维护带来更大的工作量和难度。
考虑到项目进度以及实际情况,要进行完整的代码评审不太现实,因此在软件开发过程中可以根据需要引进代码走查。每周在规定的时间内,轮流让程序员讲解其所开发代码的主要部分。这项措施一方面可以从侧面促使程序员本人注意所开发代码的质量,另一方面在走查过程中可以获得他人的意见进一步改善代码效率,使开发成员共享项目实施过程中问题解决的思路和方法同时还可以促进项目组成员之间的交流并加深对需求的理解关注软件开发过程中的各个环节并进行过程改善的讨论,使得软件质量更有保障。
4.进行正式的测试,并形成制度
测试就是对软件产品的检验。软件测试的目的是根据用户需求检查系统是否符合项目合同与任务书规定的要求。项目测试分集成测试和系统测试,主要进行功能测试、健壮性测试性能一效率测试用户界面测试、安全性测试、压力测试可靠性测试安装/反安装测试等活动。测试过程通常在模拟环境中进行。只有通过了上述全部测试的软件,才可以称之为符合用户质量要求的合格的软件。
测试活动要尽可能覆盖整改项目过程,从最初的需求到部署阶段,都应该制订详细的计划并编制相应的文档,如测试计划测试用例文档测试报告等。通过测试活动尽可能早得发现每个阶段中软件存在的缺陷,以方便后续阶段的实施。在这测试活动过程中,我们应该遵守一条基本原则—按照用户需求进行测试。我们即不能为求速度而缩短测试规模,也不能忽视用户需求而提高测试要求。总之一切测试应该符合用户需求。
四、结论
除了上述几个方面外,对于软件产品的质量管理还有其他要考虑的因素,如风险控制、变更管理和配置管理等等。其实,美国软件工程研究所(SEI )开发的软件过程能力成熟度模型(CMMI )和}S09001标准,都着眼与质量和过程管理。而且在组织结构方面,国外成熟的软件企业一般都设有单独的QA (Quality Assure)部门,它与开发部门独立,负责监督流程的执行。但是,对于任何一个具体项目的实施都应制订合适的质量管理方案,不能生搬硬套而这些需要项目经验的积累以及不断的学习新知识。
论文关键词:软件项目 管理软件 产品质量因素
论文摘要:软件项目管理的优秀是全面客户满意。其管理体系包括:战略管理、范围管理、成本管理、时间管理、人力资源管理、沟通管理、风险管理和质量管理。
在软件和信息科技行业,项目管理经常决定了一个产品或者企业能否成功。项目管理得到越来越多的企业和政府部门的重视,例如中国于2002年4月召开了有关项目管理的首次国际研讨会。具体操作与项目最根本的不同在于具体操作是具有连续性和重复性的,而项目则是有时限性和唯一性的。项目是一项为了创造某一唯一的产品或服务的时限性工作。所谓时限性是指每一个项目都具有明确的开端和明确的结束;所谓唯一是指该项产品或服务与同类产品或服务相比在某些方面具有显著的不同。各种层次的组织都可以承担项目工作。项目有时只涉及一个组织的某一部分,有时则可能需要跨越好几个组织。项目是执行组织商业战略的关键。
一、软件产品项目管理的重要性
20世纪80--90年代,许多大型企业管理信息系统M IS的开发都以失败而告终。这是为什么?一个重要原因是软件项目管理水平上不去,尤其是需求分析管理水平上不去,使得项目快要验收或交付时,却出了大问题:要么发现用户需求获取不准确,要么发现用户需求变了,致使做好的系统不能用或不好用。20世纪90年代初,上海一家公司在青岛做一个港口M IS项目,北京有一个单位在天津做一个港口M IS项目,都是因为甲乙双方软件工程基本知识不具备,使得项目管理不到位,导致2个大型项目不成功。现在软件应用领域空前广阔,深人到社会和科学研究等领域的各个方面。软件的需求也比以往更加多,软件系统设计也空前复杂。软件的项目管理问题也就因此而产生了。90年代中期,软件项目管理不善的问题仍然严重。据美国软件工程状况调查,只有10%的项目能够在预定的费用和进度下交付。于是软件项目管理成为软件项目发展中最重要的优秀问题。为了使软件项目开发获得成功,必须对软件开发项目的工作范围、可能遇到的风险、需要的资源(人、硬件、软件)、要实现的任务、经历的里程碑、花费的工作量(成本),以及进度安排等做到心中有数。软件项目管理的目的就是提供这些信息,分析信息,并根据分析结果对项目做出调整。软件项目管理开始于技术工作之前,在软件开发的整个过程中持续进行,最后中止于软件过程结束。
二、软件项目管理体系
随着软、硬件技术以及通信技术的日益成熟,软件技术可以与所有的传统产业相结合,促进产品的更新换代,大幅度提高产品的附加值,提高劳动生产率,推动产业结构与产品结构的调整。因此,软件的开发以及应用不仅仅是软件开发机构的任务,更深地涉及软件使用者的切身利益,尤其像管理信息系统MIS(Managcment Information System)、计算机集成制造系统CIMS ( Computer Integration Manufacturing System )、企业资源计划ERP(Enterprise Resource Planning)及商业智能BI(Business Intelligence)等大型的复杂软件更是综合了管理科学、计算机科学、通信技术以及数学等各方面的知识,需要各类人员的协调工作才能完成。因此也就有必要从项目管理的角度去管理软件的开发和运行。从用户的角度来看,软件项目的生命周期应该包括项目前期的论证工作、项目计划、软件开发、运行、维护以及项目后评价。由此可见软件项目管理的范围不仅包括传统的软件开发过程,还应该包括开发之前的准备工作以及运行中的维护工作和对项目的总结工作。同时,在软件项目生命周期中存在着许多活动。根据活动之间的相关性,可以将软件项目的各种活动分为九大类。
(1)战略管理。根据用户的经营目标制定软件项目的策略,以便为其他各方面的活动提供指导。在制定项目策略的时候应该充分考虑用户和其他利益相关者的实际需求和市场因素。另外创造和谐的项目环境和连续改进也是战略管理的重要任务
(2)范围管理。其目的是控制软件项目的全部活动过程都在需求范围内,以确保项目各种资源的高效利用。成功的项目管理离不开用户、软件开发队伍和项目经理的一致理解和协调配合
(3)成本管理。软件项目的成本不仅包括开发成本,也包括开发之前立项阶段以及软件在运行中的费用。操作者的培训费用和项所使用的各种硬件设施费用也都是整个项目成本的一部分。这些成本都需要很好地计划和控制。
(4)时间管理。其内容有确定各项活动之间的时间相关性;估计各项活动的持续时间,跟踪各项活动的进展情况,动态调筷各项活动之间在时间上的协调。
(5)人力资源管理。在软件项目中应该为软件开发人员和管理人员等各类项目人员创造一个和谐良好的工作氛围。使他们能感到项目成功的把握和积极的工作心态,确保项目队伍的稳定性和连续性。
(6)沟通管理。沟通管理是一个收集、存储、配置和项目生命周期内所形成的各种信息的过程为了让每个项目相关人员及时得到所需的信息,需要很好地解决“什么时候、向什么人礼报什么的”的问题,此外软件开发队伍和用户之间的沟通也是沟通管理中的一项重要工作。
(7)风险管理。由于软件项目中存在着很多的不确定因索,也就必然存在着各种风险而且风险有可能造成不良的结果,对风险进行分析和监控贯穿于整个软件项目生命周期。
(8)质量管理。目前软件的质量还是一个模糊的概念并且难以衡量由于软件质量主要是在开发阶段形成的,因此软件项目质量管理的重点应放在系统分析、系统设计和编码阶段,走查、评审、调试和测试是保证软件质量的重要手段软件工程能力成熟度模型CMM(Capability Maturity Model)较好地解决了软件开发过程中的质量管理问题。
综合管理。综合管理的任务是对前面讨论的各类管理活动进行协调和控制,使这些活动相互配合。其优秀任务是对各种方案进行评价,协调各方面的利益冲突确保项目总体标的最终实现。
三、软件项目管理的优秀是全面客户满意
当前,不少软件业管理人上认为,软件开发的问题主要在软件开发的工程化、规范化和软件开发管理体制。他们按照CMM(Capability Maturity Model),IS09002的标准来建立他们的管理体系。这里有商业竞争的因素在起作用。但是,他们忽略了商业竞争中取胜最重要的因素—客户满意。他们没有考虑到他们的管理方法能否满足客户不断变化的需求。从长远来看,软件项目真正的成功是客户的全面满意。以客户满意为中心的质量是必需的。漠视质量或只关心产品/服务是否符合需要的方法再也不足以留住和获得客户。因此,软件开发项目组织必须先确定什么产品/服务可以让顾客满意,然后再努力满足客户的需求和期望。要实现此目标,组织必须识别对软件产品的各种特性中哪些是对客户的满意起决定作用的要素。例如,服务器操作系统软件,需要长时间稳定连续工作。稳定性则是该软件产品的关键要素。因此系统的开发管理围绕着这一关键要素来展开。尽管不少的组织明白没有客户一个组织就不能生存和发展,或者说没有客户就没有组织,但在项目实施过程中,仍然存在着客户满意的障碍:
(1)项目管理组织没有发展和完善对客户不断变化的需求和期望作出快速响应的能力。
(2)项目管理组织没有听取客户意见和建议的能力。
(3)项目管理组织努力倾听客户对项目的要求,却没有确认客户的需要和期望。
(4)项目管理组织不与客户保持密切关系,也不正视客户变更需求的可能性。这样通常会导致脱离客户,其后果则是失败,甚至最后客户不接受交付的成果。
软件质量是软件开发项目管理的优秀问题。而质量的评价与度量应该由客户的满意度决定。因此,软件开发的项目管理应该围绕着客户全面满意这一中心来展开。客户驱动的项目管理方法体系提供了实现这一要求的基本理论和方法体系。提高软件质量势在必行,只有认识到软件质量的重要性,了解影响软件质量的因素,才能有的放矢,采用科学的管理技术和先进的技术方法,才可以确保软件的质量。