
科学有效的软件项目管理有助于项目开发的成功.本文介绍了软件项目管理的内容并结合软件项目开发经验,探讨了影响软件项目管理的几个关键因素.
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结论
软件项目管理是门科学,也是一门艺术;它是一个复杂的系统,决定了软件项目成败的关键.在软件开发过程中,我们应该理论联系实践,积极从实践中积累经验,注意项目管理中的关键因素,实施有效的管理,使软件项目获得成功.
随着Internet的不断发展,伴随而来的网络信息安全问题越来越引人关注。计算机信息一旦遭受破坏,将给单位造成严重的损失。就网络信息安全问题,对可能产生的安全因素进行剖析,并采取一定的措施。 一、信息安全的概念 目前,我国《计算机信息安全保护条例》的权威定义是:通过计算机技术和网络技术手段,使计算机系统的硬件、软件、数据库等受到保护,最大可能不因偶然的或恶意的因素而遭破坏、更改或泄密,系统...
主要介绍利用ASP技术设计和开发安阳钢铁网站,如何进行网站动态设计,以便于网站的维护与更新,并且体现了网站可更新性、可兼容性、可发展性的设计理念。 随着互联网技术的不断革新与发展,给全球经济带来新的革命,中国正在以迅捷的速度建立自己的互联网环境,随着这种环境的逐步形成,企业已经意识到网络对其本身的影响,从而纷纷建立起企业形象和商业宣传类型网站。主要是为了全面展现企业的整体理念,介绍公司的业务和宣...
文章针对计算机网络具有联结形式多样性、终端分布不均匀性和网络的开放性、互连性等特征,致使网络易受黑客、怪客、恶意软件和其他不轨的攻击的安全和保密问题,归纳并提出了一些网络信息安全防护的方法和策略。 近年来,伴随着互联网技术在全球迅猛发展,人们在提供了极大的方便,然而,信息化在给人们带来种种物质和文化享受的同时,我们也正受到日益严重的来自网络的安全威胁,诸如网络的数据窃贼、黑客的侵袭、病毒发布者...
介绍了北京城市轨道交通计算机联锁控制系统在系统结构方面的硬件改进,阐述了诸如扣车、紧急关闭和轨道区段故障时单独操纵道岔等特殊联锁功能和与ATP系统结合的安全编码逻辑功能的软件实现。 考虑到信号工程的技术趋势和经济上的合理性,北京城市轨道交通13号线信号计算机联锁控制系统,采用铁科院开发研制的TYJL2Ⅱ型系统。虽然此系统已在全路400余个站场投入使用,但在满足现有的各项技术条件要求,实现进路上的...
推进教育创新是我国教育改革进程中面临的一项重要而紧迫的任务。本文探讨了如何在计算机基础课程教学中实施创新教育,并重点对构建计算机基础课程创新教学模式的教学策略和教学步骤进行了分析和研究。 1引言 计算机基础课程的创新教学模式是以学生为中心以创新教育理念为理论基础,根据计算机基础课程的教学情况及学生的心理发展规律,综合运用现代教育教学手段、技术,优化计算机基础课程的教学,构建以培养学生自主精神、...
软件项目管理有利于将程序员的个人开发能力转化成企业的开发能力。而且,软件工程强调软件开发过程的工程性,把软件的设计、开发、测试、维护和管理工作当做一项系统工程来抓,表明软件不仅仅是编写代码的工作,而需要各个学科的综合应用,才能形成真正的产业化。 随着信息技术的飞速发展,软件产品的规模也越来越庞大。我们知道,软件开发是一个带有一定风险的工作,为了把风险降到最低,项目经理一定要进行严格的项目管理。软...
介绍了软件项目风险管理的重要性,探讨了软件项目风险管理的主要过程和步骤以及常用的工具和方法,详细分析了软件项目中常见的风险类型和风险成因,最后给出了经典的风险管理模型和常用的风险应对措施. 论文关键词:项目管理;风险分析;风险管理;风险应对;模型 0引言 随着信息技术的飞速发展,软件产品的规模也越来越大,各软件企业在开发活动中都为了使软件项目能够按照预定的成本、进度和质量顺利完成而进行有效的...
针对物流企业信息系统的建设现状,提出了物流网格的概念,并基于GlobusTookit的五层沙漏结构搭建六层物流网格体系结构,在此基础上,构建基于网格的物流公共信息平台,实现物流企业信息系统的集成整合与信息共享。 1引言 随着互联网时代的到来,企业的生产成为虚拟企业联盟之间的产品全生命周期的协作与信息资源的充分共享,这就要求跨越不同企业之间存在的空间差距,利用网络实现资源共享,开展异地协同的快速...
软件能力成熟度模型(C印abilityMatuirtyModel,CMM)4~为衡量一个软件企业的软件开发能力己经被大多数软件企业所接受。在论述CMM与CMMI的基础上,介绍了国防专用软件CMM的概念、框架以及CMM二级的目标和要求。及其在软件开发中的应用。 论文关键词:软件能力成熟度模型;软件项目管理 1软件项目管理概述 1.1软件项目管理的概念 从概念上讲,软件项目管理是为了使软件项目能够...
软件项目由于应用的领域不同,一般涉及众多的业务知识领域,项目成果也应以软件的逻辑产品来体现,其最终成果及实现过程的可见性、可度量性相对较弱。因此,软件项目管理比一般工程项目要复杂得多。基于软件项目管理的特点分析,并结合软件项目开发管理经验,讨论了软件项目组织架构、计划与过程控制等软件项目管理要素,提出了矩阵式项目管理模型,分析了该模型中业务知识与计算机技术共同作用所能达到的最佳效果,讨论了需求管理...
影响因子:1.180
影响因子:3.010
影响因子:0.000
影响因子:0.580
影响因子:2.812
影响因子:4.360
影响因子:5.142
影响因子:0.000