HI,欢迎来到云研学术,期刊咨询:130-7314-7102  订阅咨询:130-7314-7102 
0
首页 精品范文 软件开发项目管理制度

软件开发项目管理制度

时间:2023-06-05 09:57:45

软件开发项目管理制度

第1篇

【关键词】软件项目;软件项目管理

近年来我国软件行业发展迅猛,但是项目管理在本行业的应用还很不成熟,一般的、常规的管理方式已很难适应,这是软件项目管理中面临的最大挑战。同时由于赣州市软件行业的竞争加剧、客户时效性的要求以及一些小公司作坊式的经营模式,使得软件项目管理往往被忽略或者不被重视。如何利用城市数字化软件项目提高管理效率、改善政府服务功能、维护公众利益成为摆在政府面前的一个重要课题。

1.软件项目管理的概念

从项目管理的概念出发,软件项目管理是根据管理科学理论,结合软件产品开发的实际,为了使软件项目能够按照预定的成本、进度、质量顺利完成 ,从而对成本、人员、 进度、 质量、风险和文档等进行分析、管理和控制的一系列活动 。软件项目管理的目标是高质量地按时在预算内完成全部项目范围。成功的软件项目管理能够产生优质的软件产品,因此优质的软件项目管理能够使得企业拥有满意的客户。软件项目管理的目标一般包括以下几项:如期完成项目;保证项目质量;用户需求得到确认和实现;妥善处理用户的需求变动;项目成本控制在计划之内;保持对项目进度的跟踪和控制;顺利实施系统配置管理;保证对第三方产品或服务的控制和协作。

2.项目管理的内容

项目管理的基本内容包括:第一,项目定义。确定项目的目标、范围和约束;第二,项目计划。项目的各种预先安排(进度、成本费用 、 劳动力、设备资源等);第三,项目执行。包括人员组织、资源识别、下达任务、执行任务;第四,项目控制。保证项目按计划执行;第五,项目评价。评价项目本身的以及评价项目组成员的价值。其中,项目计划、跟踪、控制是项目管理中不可分割的三个重要环节,要进行项 目跟踪,必须先了解控制;要建立控制,又必须先弄清受控对象、内容以及控制如何实现,这又与计划有关。计划一跟踪一控制在项目管理系统中是一个循环,是一个系统过程,是一个以信息为共同核心的相互依赖、相互制约的互动过程。

3.国内软件项目管理存在的普遍问题

3.1对项目管理的认识不足

一些项目经理认为按照项目管理来做项目计划,纯粹是浪费时间和精力,是走过场,计划赶不上变化,甚至项目完成后再对项目计划书进行完善。这就造成了计划与控制管理脱节,无法有效的对进度进行控制管理。甚至由于计划不足,在开发过程中发现某个任务无法按时完成,导致项目延期或质量下降。其实制定计划的过程就是一个对项目逐渐了解掌握的过程,通过认真的制定计划,项目管理人员可以理清哪些要素是明确的重要的,哪些是需要逐渐明确的次要的。通过项目计划的不断完善,以达到在进度、资源和范围之间寻求一种平衡。

3.2不合实际的期待

往往很多时候,客户对他要求的软件系统有很高的期待,但实际交付的时候很难达到他们的期望。其实这就暴露了软件公司在项目管理上的薄弱以及对客户沟通的不足。这就要求我们在项目展开之前就应该做好项目设计、规划、风险评估。甚至有时候,项目人员本身没有按照项目管理过程对其进行实际分析而凭想象构筑出很高的期待,结果导致项目进行中困难重重。

3.3应对风险的策略不成熟

项目人员没有充分分析项目开发过程中可能遇到的风险,对付风险的策略比较简单。对风险管理的重要性认识不足,不能提前预知规避风险,造成遇到风险时捉襟见肘甚至导致项目延期或失败。

4.项目管理在软件项目中的策略

4.1合理配置人力资源

众所周知,人是决定组织和项目成败的关键,也是影响软件开发质量的最关键的因素,因此软件项目管理应该以人为本,有效管理人力资源,合理配置人力资源。应该根据项目组成员的组成结构情况,合理搭配,充分发挥每位成员的技术专长,做到人尽其能;组织组建好项目团队,培养团结一致的团队精神,规范良好的职业道德;建立健全完备的奖惩制度,落实权利责任制度,做到权责明确,营造良好的团队协作环境。

4.2顺畅有效的沟通管理

软件项目管理是一项知识性极强的工作,对人的依赖性比其它行业更为突出,因此加强人员之间的有效沟通,实现顺畅有效的沟通管理是软件项目成功的另一个关键因素。这里的沟通包括两个方面,一个方面是软件项目组开发人员与用户的沟通,另一方面则是软件项目组内人员的沟通。前者是做好软件需求分析所必须的;而后者则有助于组内成员的彼此交流。总之,顺畅有效的信息沟通,可以取得彼此的理解,有利于项目按计划顺利开展。

4.3正确可靠的软件需求

软件需求是软件项目的根本所在,需求不明确,软件项目开发范围不确定,项目开发就会失去方向,最终导致项目的失败。一个可靠的需求,也是项目管理的关键因素之一。开发人员应该反复和用户进行沟通,最大限度地满足用户的目标,开发出用户最理想的产品。

4.4周密可行的项目计划

软件项目实施过程中,还必须有一个周密可行的项目计划。软件项目计划的目的是为完成软件工程和管理软件项目而制定的合理的计划,它包括以下步骤:估计软件产品规模及所需的资源,制定软件开发计划、软件测试计划和软件质量保证计划,评估软件风险和协商约定风险解决办法,而且要标志出几个阶段性的里程碑,这些都是极为关键的。因此,要想成功进行项目管理,就要对计划高度重视、周密制定、严格执行,只有严格执行计划才能使项目管理得以成功实施。

4.5严格的风险管理

软件项目的管理是存在风险的,我们应该提前重视风险,并有所防范,最大限度减少风险的发生,实行严格的风险管理是有效的手段,建立风险项目检查表是进行风险识别的有效方法。主要涉及到产品规模风险检查、过程风险检查、技术风险检查、开发环境风险检查等。

5.结语

进行软件项目管理有利于将开发员的个人开发能力转化成企业 的开发能力,企业的软件开发能力越高,表明企业的软件生产越趋 向于成熟,企业越能稳定发展。管理是影响软件研发项目全局的因素,而技术只影响局部。在关系到软件项目成功与否的众多因素中,软件度量、工作量估计、项目规划、进度控制、需求变化和风险管理等都是与项目管理直接相关的因素。项目管理是软件开发成败的关键。从系统工程的观点看,项目管理普遍涉及到多个目标的要求,一个优秀的项目管理人员,应该注重实践中的分析问题能力,结合理论知识,形成一套行之有效的管理方法,并通过实践来检验它的科学性。

【参考文献】

第2篇

论文关键词:项目管理 进度控制 费用控制 质量控制 软件开发

人类社会经历了三次经济革命从农业革命、工业革命到目前正在经历的信息革命。信息化正在日益改变人们的思维方式和生活习惯。在推动信息化过程中,计算机及其软件产品发挥着至关重要的作用。对于软件项目的管理成为项目管理领域一个令人兴奋的课题。本文将结合项目管理中的控制方法分析软件项目管理控制的相关问题.以期提高软件项目的开发效率。

1、关于软件项目管理

1.1项目与项目管理

项目是一个旨在完成一个或一些独特产品或服务的过程.它有着一系列被详细描述的属性。由于项目的独特性和一次性特征,引伸出它的其他特点.如目标的确定性.成果的不可挽回性组织的临时性和开发性等。基于项flI的这些特点.项目运作更加注重项目决策前的计划以及对实施过程的控制,以减少项目运作的风险。项目管理是2O世纪50年代后期发展起来的一种计划管理方法,它运用先进科学的管理方式.有效解决大型组织的效率低下和小型企业面临的风险增加问题以组织的机动灵活.面向客户和资源利用率高而被广泛应用。在工程设计.施工软件项目的开发、实麓中经常会遇到进度拖延.费用超支、质量不达要求等问题除去极少数是因为技术原因造成,绝大部分是源于僵化的管理和不当的管理方式。

1.2软件项目管理

各软件企业都在积极将软件项目管理引入开发活动中.对开发实行有效的管理。从概念上讲.软件项目管理是为了使软件项目能够按照预定的成本.进度、质量顺利完成.而对成本、人员、进度、质量、风险等进行分析和管理的活动。同时,随着软件开发规模及开发队伍的逐渐增大,软件开发不再是向过去那样一二个开发人员即可解决的事情。迫切需要一种开发规范来规范每个开发人员、测试人员与支持人员的工作每个项目组成员按约定的规则准时完成自己的工作。同时采用规范化管理.专业分工也可以降低对开发人员的要求,从而降低产品研发成本。

2、软件项目控制

2.1软件项目控制

软件项目跟踪和监控包括对照已文档化的估计、约定和计划评审和跟踪软件完成情况和结果。基于实际的完成情况和结果调整这些计划。软件项目的已文档化的计划(即软件开发计划,正如在软件项目计划关键过程区域中所描述的)用作跟踪软件活动传送状态和修订计划的基础管理者监控软件活动.主要通过在所选出的软件工作产品完成时和在所选择的里程碑处,将实际的软件规模工作量成本和时间表与计划相比较,来确定进展情况。当确定未实现软件项目计划时,采取纠正措施。这些措施可以包括修订软件开发计划以反映实际的完成情况和重新计划遗留的工作或者采取改进性能的措施。

2.2软件项目控制的内容

软件项目控制的目的是为软件项目的过程提供足够的能见度,从而可以在执行过程中发生对计划的严重偏离时能够采取适当的更正行为。软件项目控制包括:a。追踪软件项目的进展于表现从而与所作的估计、承诺和计划做出对比:b。追踪软件项目的风险;C。在发生对计划的严重偏离时采取适当的更正行为。

2.3软件项目控制步骤

由于软件开发是处在一个开放的动态系统中,开发环境的不断变化要求不断修改项目计划,以适应新的变化。此外项目经理及其组织在完成任务的过程中不可避免的要碰到这样或那样的问题.解决这些新的矛盾和问题均属项目控制的范畴项目的预算和进度计划只能为项目经理提供决策的依据.如果在项目实施过程中控制不住.很难在限定的时间和预算要求下实现项目管理工作的目标。因此软件项目控制的过程包括以下四个步骤:a、预测什么会发生——要做出开发计划并建立工作标准b、查明什么正在发生——用建立的工作标准检查当前的工作;c、正在(或已经)发生的实事同预测的结果进行比较——分析误差产生的原因:d及时采取补救措施.以满足项目目标,预算和进度的要求。

3、软件项目控制具体操作

3.1软件项目进度控制

为了确保软件开发中的各项工作能按照计划预定的日程顺利完成.对项目的进度要进行控制。进度控制的过程是.在项目实施过程中,不断地进行实际进度值与计划值的比较、发现偏差、检查分析其产生的原因,并采取相应的措施加以解决。

3.1.1进度控制流程

(1)进度控制的输入

进度计划。项目进度基准是项目测量和报告的基础和标准。

实施报告。实施报告提供了有关项目进度发展实情。报告未来可能发生的进度问题。

变更要求。项目变更要有严格的申请和审批手续。

进度管理的技术和工具。

(2)进度管理的技术和工具

进度控制变更系统。为有效实现进度管理与控制.进度控制系统应设立实现重新计划的全部功能。包括:文件设立.跟踪即实施报告.变更评估等。

实施情况测量。项目进度控制系统中的一个重要组成部分是决定对迟发生的进度偏差是否采取纠偏措施。而实施情况报告提供了决策的主要信息。如变更分析.趋势分析.已实现价值分析等。

纠偏计划。很少有项目能完全按计划进度进行为实现项目进度或总进度要求,在项目实施过程中.需要不断对原计划进行调整或增加新的工作内容。为此.需要不断对实施的项目进行活动时间预测。修改活动过程.替代进度方案分析。

项目管理软件。它的作用是跟踪项目按计划日期展开实际工作的情况.对照进度计划分析进度现状,找出进度的偏差.分析进度偏差对项目的影响.预测未来走势

(3)项目进度控制的输出

进度更新。包括对项目管理中任何进度信息的修改。进度调整是其中的一种.师队员进度计划中活动开始和结束时间的改变。纠偏行动。通过改变资源投入将实际进度拉回到计划的行动过程。

从中获得的教训。有关进度偏差产生的原因。纠偏方案的评估与选择以及其他方面的感受和教训都应纪录在案成为日后有用的历史资料。

3.1.2进度控制方法

一般项目进度控制采用因果分析.分析用四步完成:

(1)明确问题。实际完成情况与项目里程碑相对照.确定是否超期.超期的部分是在哪里。

(2)查找产生该问题的原因。位从系统角度充分认识各方原因.应组织具有代表性任务人员并采用头脑风暴法进行。项目主管要通过他领导的办公室或小组,以及在各职能部门的代理人共同分析问题产生原因。

(3)确定个原因对问题产生的影响程度。对影响程度的评估可以采用专家小组打分的方法,事先确定权数.而后打分得出分析结果。

(4)画出带箭头的鱼刺图。分析出原因后各部门各就其职针对问题提出解决方案.并实施。

3.1.3软件项目进度控制具体措施

在实施进度计划过程中,会有种种故障:客户的需求进行了补充或修改;工作量估算不准,造成进度不平衡或是有人不遵从开发规范.导致产品出现缺陷;或是技术环节出现故障,这些问题往往是在进度计划外出现的.一旦出现这些问题,项目进度不得不进行调整。开发过程中为了有效控制类似问题,可以采用以下辅助措施,控制进度按计划执行:

(1)政策性措施。对于不遵从开发规范,人员不按时履行职责的.给予经济或是职务上的处罚.这种措施应是建立在分配任务之前;

(2)人员安排。在各子项目接口处适当安排机动人员与机动时间。这一措施有赖于项目组织的机构设置能动性好。此处比较难解决的是人员业绩评估.奖励问题。

(3)技术措施,要想很好地执行进度计划,需要事先有统一的规范例如开发语言的统一,文档的归类。这样便于下一阶段人员理解上一阶段人员意图,交流更加容易。

(4)信息流措施。该措施要求建立一个信息流系统.准时汇报项目进度.便于主控人员调整进度,并且保证信息流通顺畅。避免开发期压到最后造成严重拖工。

(5)资金措施。财务部门可以定期检查各部门财务情况.控制资金流出时间.进而控制项目进度。这与后面要讲到的三者权衡有密切关系。

3.2软件项目费用控制

费用控制就是要保证各项工作要在他们各自的预算范围内进行。其基础是实现就对项目进行费用预算。整个项目费用应包括项目范围规划阶段。软件需求分析阶段.原型设计阶段开发阶段.测试阶段和项目投入使用后的使用阶段所消耗费用的总和。软件开发项目承担公司为了完成项目目标和获得更多的利润.在实施项目过程中就要控制成本.在控制过程中,首先要拟定一个标准.即计划值.然后进行实际至于计划值的比较,确定实际值与计划标准的偏差大小.以便在此基础上采取各种措施纠正偏差.常用的分析工具是偏差分析。

偏差是指实际成本对相应计划的偏离,成本偏差的数学公式为:

CV=BCWP-ACWP(负数CV表明出现超支;反之,则节资)(3—1)

其中:CV为成本偏差,BCWP为计划工作预算,ACWP为完成工作实际成本。

在进行成本偏离计划程度分析时,常用计划偏差率反应时给予计划的偏离程度。

CVP=CV/BCWP(3-2)

其中CVP为成本偏差率。

偏差值是控制分析中的一个关键参数,因而应向各级组织汇报。对于不同的项目或同一项目不同阶段或不同管理层次,对偏差的控制程度不一样,制定偏差允许值的方法也不同。由于随着时间的推移风险减少了,因而偏差允许也可降低。

3.3软件项目质量控制

对于软件产品的项目质量控制应是事前有预控,过程有监控的主动控制闭环系统。(1)事前预控:根据影响质量因素多等特点.软件项目质量必须事前预控,及根据软件的类型和特点,以及以往类似项目的常发病和预防措施,对软件项目质量提出事前预控措施,包括制定控制的计划和程序,这是项目质量控制的前提。(2)过程监控:根据易产生质量波动和易产生系统因素变异等特点,软件项目质量必须过程监控.即按照预控的计划和程序,对工序、分项、单元的全过程进行过程监控.包括监测、检查、控制和评定.这是项目质量控制的基础。

第3篇

论文关键词:软件工程,软件工程过程,软件项目管理

一 项目管理过程

一个软件项目的管理过程包括以下几个方面的内容:

1 启动一个软件项目

软件人员和用户是在系统工程阶段确定项目的目标和范围。目标标明了软件项目的目的但不涉及如何去达到这些目的。范围标明了软件要实现的基本功能,并尽量以定量的方式界定这些功能。

2 度量

进行度量工作,是为了帮助软件人员了解产品开发的技术过程和产品。度量的作用是为了有效地定量地进行管理。度量的目的是为了把握软件工程过程的实际情况和它所产生的产品质量。

3 估算

在软件项目管理过程中一个关键的活动是制定项目计划。在做计划时,必须就需要的人力、项目持续时间、成本作出估算。现在有许多用于软件开发的估算技术,基本的步骤是:事先建立软件的工作范围;以软件度量为基础作出估算;把项目分解成科单独进行估算的小块。管理人员可使用各种估算技术 。

4 风险分析

每当开始一个新的软件项目时,总是存在着某些不确定性。如是否能准确地理解用户的要求?项目的功能能否实现?是否存在目前还未发现的技术难题?等等。风险分析对于软件项目管理是决定性的。

5 进度安排

每一个软件项目都要求制定一个进度安排,但不是所有的进度都得一样安排。软件项目的进度安排与任何一个工程项目的进度安排没有实质上的不同。首先识别一组项目任务,再建立任务之间的相互关联,然后估算各个任务的工作量,分配人力和其他资源,制定进度时序。

6 追踪和控制

一旦建立了开发进度安排,就可以开始着手追踪和控制活动。由项目管理人员负责追踪在进度中标明的每一个任务。如果任务实际完成日期滞后于进度安排,则管理人员可以使用一种自动的项目进度安排工具来确定在项目中间里程碑上进度误期所造成的影响。

二 软件项目的组织与计划

1 软件项目管理的特点

软件产品与其他任何产业的产品不同,它是无形的,完全没有物理属性,但它确实是把思想、概念、算法、流程、组织、效率、优化等融合在一起了。因此对软件项目进行管理,涉及到系统工程学、统计学、心理学、社会学以及法律等方面的问题。需要用到多方面的综合知识,仅靠技术或科研项目的效率很难得到较好的解决。此外,管理技术的基础是实践,为取得管理技术的成果必须反复实践。很显然,管理能够带来效率,能够赢得时间。在技术迅速发展的今天,必须认真对待技术管理问题。总之,软件项目的组织涉及到软件项目研制中的计划制定、进度估计、资源使用、人员配备、组织机构和管理方法等软件管理的许多问题。

2 制定计划

软件开发项目的计划涉及到实施项目的各个环节,带有全局的性质。计划的合理性和准确性往往关系着项目的成败。计划应力求完备,要考虑到一些未知因素和不确定因素,考虑到可能的修改。计划应力求准确,尽可能提高所依据数据的可靠程度。

三 软件过程成熟度

多年来软件开发项目存在着不能如期完成,软件质量不能令客户满意或软件开发的开销超出预算等,这些都是软件开发机构遇到的难题。这一现象促使人们进一步考察软件过程,从而发现,关键问题在于软件过程的管理不尽人意。在无规则和混乱的管理条件下,先进的技术和工具并不能发挥应有的作用。改进软件过程的管理是解决上述难题的突破口。

对于不同的软件开发机构,在组织人员完成软件项目中所依据的管理策略有很大差别,因而软件项目所遵循的软件过程也有很大差别。在此,可用软件机构的成熟度加以区别。

成熟的软件机构具有的特点是:建立了机构级的软件开发和维护过程;软件过程必要时可做改进;软件产品的质量和客户对软件产品的满意程度是由负责质量保证的经理负责监控;项目进度和预算是根据以往项目取得的实践经验确定因而比较符合实际情况。

四 小结

为使软件项目开发获得成功,必须对软件开发项目的工作范围、可能遇到的风险、需要的资源、要实现的任务、经历的过程、花费的成本以及进度安排等做到了如指掌,而软件项目管理可以提供这些信息。

参考文献:[1](英)Ian Sommerville.软件工程[M].北京:机械工业出版社,2011

[2]陈明.软件工程[M].北京:中国铁道出版社,2011

第4篇

[论文摘要]科学有效的软件项目管理有助于项目开发的成功.本文介绍了软件项目管理的内容并结合软件项目开发经验,探讨了影响软件项目管理的几个关键因素.

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.险管理是有效的手段.建立风险项目检查表是进行风险识别的有效地方法就是,主要涉及到产品规模风险检查、过程风险检查、技术风险检查、开发环境风险检查等.此外软件的风险评估也是必不可少的.主要涉及到发生的可能性,最好建立一个尺度表示风险可能性;发生的结果;确定风险评估的正确性;另外,要对每个风险的表现、范围、时间做出尽量准确的判断.同时,要依据以下三个要素对风险进行评价:风险描述、风险概率和风险影响.并从成本、进度及性能三方面对风险进行描述.

第5篇

关键词:软件开发;应用研究;项目管理

中图分类号:TP311.52

现今社会IT产业还有信息技术正高速发展,软件产品的规模逐渐庞大,软件开发逐渐向制度化与企业化迈进,项目管理应运而生。项目管理是软件开发利用中不可缺少的有效管理手段,如今已被大多数软件开发企业所重视。项目管理应用于软件开发主要是为了使软件项目能够按照预期的成本、进度及质量等顺利进行,项目管理与软件开发的有理解和,可以实现企业对人力、物力的高效利用,增大企业利润,使利润最大化。

1 关于项目管理

1.1 项目管理的定义。项目管理指的是在特定限制条件下,以项目为独立实体,实行项目经理个人负责制,为实现项目业主的目标,而进行经济核算,并按照项目的逻辑规律来进行有效地计划组织、协调控制的系统管理活动。项目管理的内在本质是项目和管理的结合,它将知识、工具、技术、技能应用于项目活动,以达到充分满足项目利益相关者需求或期望的目的。

1.2 项目管理的目标。对项目质量、费用与进度的协调控制是项目管理的核心问题,也就是说要在有限的时空与预算范围内将组织好大量人力物力,以求更好的实现项目目标。在项目实施过程中,每一个项目管理人员始终需要考虑的问题就是协调成本、质量以及进度三者之间的关系,尽最大努力实现在给定的限制资源条件下,尽可能做到质量最好、速度最快且成本最低。

1.3 项目管理的要素。项目管理的目标界定了其内容,那就是进度、成本、质量的控制,合同与信息的管理和组织协调,由此也可以知道项目管理的几个要素分别是成本、质量、时间。一个项目的整体过程是由确定目标开始,之后是界定项目范围,完成之后,就要开始实施具体的项目活动。在此期间,项目干系人集合统称组织,在整个项目实施过程中,组织围绕着时间、成本、质量这三个要素进行分配、权衡等工作。

1.4 项目管理的发展。上世纪60年代中期,就有人发现连续工作再停工检修的生产方式出现了问题。后来人们引入了工程的概念、技术、原理和方法到软件工程方法学中,在一定程度上使得软件开发生产过程中遇到的问题得以解决。软件开发现如今趋于多元化和复杂化,多版本同时开发、多地点同时开发、开发与维护工作并存等情况经常出现在大多数开发团队中,这使得软件的开发管理有了史无前例的困难。如果不能很好地管理,将严重影响软件产品开发的质量和进度。随着如今软件产业的形成,软件开发越来越深入,各种技术不断创新,软件过程管理的重要性逐渐被认识到,并开始渐渐重视应用开发的项目管理。

2 软件开发中的项目管理

2.1 软件开发应用中项目管理的现状。软件开发的利润、管理、制作等都可以通过项目管理进行有力监控,以此成功促进软件开发,很大程度上提升软件开发的价值,是企业进军市场的有力武器。但由于我国IT行业发展起步较晚,当下阶段还存在着诸多弊端。这主要体现在两个方面,一是应用具有盲目性,现今无论是软件企业是项目型还是产品型,大都没有找到适合自身特点的软件开发管理模式。如今IT产业发展飞快,但由于软件企业建设在我国起步较晚,许多相关技术型软件总是缺乏创新,如果不能很好的管理,企业往往会为追赶进度而过量生产,降低软件的应用价值,漏洞百出,影响运行等许多问题;二是操作无规范性,即对软件开发的相关规定在一些企业里并不完善,由此降低了项目的检查督导力度和管理人员及技术人员的利用力度等。我国大多数软件开发企业都是中小型企业,大都效仿国外的产品,缺乏创新,各方面相应能力欠缺,虽然部分企业意识到这些问题,建立了相应规范,但是过于硬是化,执行力不强,经常出现各种问题,影响企业的利益。

2.2 软件开发引用中项目管理的措施。项目管理在软件开发中的具体应用措施有如下几方面,首先是制度的完善,项目管理相关的人员需要按照企业任务需求来制定出对应的管理流程;第二,初步设计,即相关人员进行成本及风险等各项评估,制定相应耗资范围等;第三,根据所开发软件的类别进行硬件选型;第四,软件设计;第五,软件测试,包括功能性测试和应用性测试两方面;第六,文件归档,可归档的文件包括各种研发、分析报告,设计方案等相关文件。

2.3 软件开发引用中项目管理的定义原则。软件开发中的项目管理是项目管理庞大范畴中的一个分支,与其他项目管理之间相比具有较大的特殊性,不仅因为它进行的过程全为创新设计过程,更因为软件系统本身是一个知识型产品。软件开发具有以下几种原则:软件开发本身具有抽象性;软件开发需将系统模块化;模块间逻辑关系资源具有局部性;软件模块设计的信息具有隐藏性;软件开发概念表达具有确定性;软件各模块符号、定义以及相关术语具有统一性;软件系统本身具有完整性;软件系统开发的层次分解要具有可检验性。

2.4 软件开发应用中项目管理的过程和步骤。软件项目管理中最为重要的部分是软件开发过程,它的好坏决定了软件项目能否取得成功,能否有效利用可用资源、生产达到目标的软件产品、提高软件组织的生产能力等都受着软件项目管理的直接影响,要想成功的实现软件开发,必须使软件开发过程得到有效管理。软件开发中项目管理的过程主要有四个阶段,分别是项目的启动、规划、控制和验收四阶段。在项目启动阶段需要确定项目范围,相关方签订好相应的协议或是合同;项目规划阶段要做好项目的估算,包括风险评估,资金预算等,以及进度规划、项目组成员的配置与选择等;项目控制阶段主要是要做好对时间、质量和成本的控制;项目收尾阶段则是对已完成的项目进行评审、验收和交接等。软件开发还包括提出问题、可行性研究分析、需求分析、系统整体设计、详细设计、编码和单元测试、综合测试以及软件维护等步骤。

3 对于软件开发中应用项目管理的建议

第一,企业应当针对开发的不同软件项目的管理加强培训,要努力在实际工作中提高管理意识和素质、丰富管理经验;其次,要针对项目制定需求计划和项目计划,开发者要明白用户的需求,有明确的资源、成本及时间等规划安排,要有相关风险评估和协商约定;第三,要加强项目文档的管理,健全的文档管理制度会对后期开发工作起到模范和警示作用;第四,要做好软件开发中的测试工作,发现漏洞和不足,提高软件质量,尽可能减少和避免软件投入使用之后再出现问题;第五,也是笔者个人认为最重要的一点,就是要加强相关人员之间的沟通,不仅是开发人员与用户的沟通,更要有项目组内人员的沟通,使每个人都能明白用户需求和开发计划,更好的完成项目任务。

项目管理具有普遍性、目标性、独特性、集成性和创新性,在软件开发中可实现财力、物力人力的合理分配,对项目进行合理划分,实现合理分配、层次管理,高标准地组织企业软件的启动、研发,调动员工积极性,使企业利润最大化。在软件开发行业实行项目管理具有革命性意义,它对于解决软件开发的管理问题,实现企业内部管理意识、沟通意识、计划意识及风险操控的有效标志,若能在软件开发中合理应用,可给企业带来的利润相当可观。

参考文献:

[1]尹云霞,雷军红,王真真.项目管理在软件开发中的应用分析[J].新技术新工艺,2011(06):135-136

[2]高飞.轮软件开发中的项目管理[J].城市建设理论研究(电子版),2013(30):87-88

[3]周逸文.项目管理在软件开发中的应用研究[J].计算机光盘软件与应用,2013(23):177-178

第6篇

有时即使不开展项目管理工作,软件开发项目也能取得成功。但是如果乏项目管理,则难以将成本控制在一定范围内,容易导致软件企业面临着亏损的风险。在开展项目管理工作的过程中,需要借助技术、方法等,管理软件开发活动,如此既有助于实现软件开发目标,又能够控制软件开发的进度以及开发成本。当前,虽然有部分软件企业依据软件工程理论,制定了管理软件开发的制度,但是却没有严格控制软件开发的进度以及成本。这种做法不仅会延长软件开发的时间,还会增加软件公司的经营风险,最终损害到相关用户的利益。而在软件开发过程中,开展项目管理工作,就有助于保证软件开发工作的顺利完成,同时提高软件企业的经营管理效率。

2项目管理在软件开发中的应用现状

在二十世纪六十年代中期,人们发现了在开发软件过程中存在着很多问题,具体的问题表现在以下两个方面:一方面,不规范的生产过程;另一方面,不重视管理工作。为了能够有效解决软件开发过程中存在的问题,人们开始尝试利用过程管理方法。但是到了二十世纪八十年代,还是没有制定管理软件开发过程相关标准。近几年来,在信息技术快速发展的背景下,人们采取项目管理来控制软件开发的质量、软件开发的成本等,以此确保软件开发的质量和成本等因素,符合当时的既定标准。在软件开发过程中,每一个项目组的不同成员都应该承担不同的任务,并且企业管理者应该要求他们要在规定的时间内完成自身的任务,这种明确分工制度,有助于提高员工的工作效率。

3项目管理在软件开发中的应用

每一个软件开发项目都要经过以下几个阶段:提出问题、研究可行性、分析需求、测试等。因此项目管理工作应该贯穿于软件开发的整个过程。

3.1可行性研究

无法开发哪一个项目,都需要进行可行性分析与研究。通过利用项目管理来研究软件开发项目可行性的目的在于:在最短的时间内确定软件开发项目是否具有开发的价值。其中可行性研究的内容包括:

1)、研究技术的可行性。其主要是指:要合理地分析开发项目的功能与性能,分析其中所隐藏的技术风险。

2)、研究经济的可行性。其主要是指:估计所开发的项目给企业带来的经济效益,然后依据所估算的经济效益,确定该项目是否具有投资的价值。

3)、研究社会的可行性。其主要是指:分析此项目的运行方式是否正确,分析当前的人员技术水平以及管理制度是否具有可行性。

3.2软件项目估算

在软件开发过程中,首先要规划软件开发项目,如此便于项目管理人员制定切合实际的估算方案。规划软件开发项目的内容主要包括:明确软件开发的目标、明确软件开发过程中需要用到的各种资源、明确软件开发的进度等。在软件开发过程中,估算起着非常重要的作用。通过估算可以保证软件项目在规定的时间内完成,也可以确保软件项目的成本未超出预算。在估算资源、成本以及进度的时候,要依据自身丰富的经验以及相关的数据。但是当前所使用的估算方法较为单一,此种估算方法容易增加估算风险。对此,研究人员应该努力研究出更多科学、有效的估算方法。

3.3软件项目开发人员的管理

在开展软件项目开发人员管理工作的时候,首先要合理安排人员。通常情况下,是由多个小组成员共同完成软件开发项目。在具体安排人员任务的时候,要依据每位人员的优势进行,并且要明确小组内每一位成员的工作任务以及工作目标。在软件开发过程中,要确定不同的责任人,比如:项目经理、开发经理,并且为每一个小组安排一名组长,如此有助于确保软件开发项目的顺利完成,同时保证所开发出来的软件属于高质量产品。

4结束语

第7篇

当今是科技信息发达的社会,软件开发的企业越来越多,在软件开发项目规模扩大的同时,做好进度管理至关重要。文章结合软件开发过程中的进度管理做了浅析,陈述了进度管理的概念和意义,并提出了影响进度管理的因素,另外也给出了如何做好进度管理的措施。

关键词:

软件开发;进度管理;影响因素;提高措施

现今,随着计算机信息技术的飞跃发展,软件项目开发研制过程中,对其做好进度管理越来越受到人们的重视。如果进度管理做得好,就会减少软件开发项目被延长工时、提高质量符合预算要求。反之就会延长工时,从而降低质量或超出预算。可以说进度管理是软件开发项目工程的一个核心重要组成部分,它贯穿着软件项目研发的整个过程中,该项目研发成功与否直接取决于进度管理的好坏。从目前软件开发的实际情况来看,有很多因素影响着软件开发的进度管理工作。再次,文章结合进度管理的概念以及软件研发过程中,进度管理发挥的重要意义进行了细致剖析,并从多角度分析了影响进度管理的因素,最后,提出了软件开发过程中,提高进度管理的措施。希望对各位同行有所帮助。

1进度管理的重要性

在软件研发过程中,做好进度管理不仅有利于减少研发工时,而且还能在规定的时间之内实现定制目标。在实际研发工程中,如果发现研发进度与原计划制定的这样才能保证软件研发工作正常有序的进行,反之,将导致整个工作出现一片混乱、陷入泥潭,不能确保该项开发工作正常进行,时间一长,后果不堪设想,必将会导致整项工作进入到不可控制的状态,严重时甚至会出现项目研发失败的局面。总之,在软件开发过程中,做好进度管理十分重要。

2软件开发过程中影响进度管理的因素分析

2.1项目计划不完善

进度管理是工程项目研发管理的主要核心组成部分,在软件研发实施过程中,进度管理贯穿着整个软件生命周期中,项目计划作为进度管理工作的一部分工作,该计划确定了项目制定的范围、验收以及一些进度工作等,而这些都是影响进度管理的因素。现实中,很多软件开发失败的原因就是因为对项目计划工作中涉及到的一些审核、费用、验收、进度等工作做得不够科学与完善,最终使得软件开发项目进度管理失去控制,从而影响进度管理工作的进一步开展。

2.2缺少、科学有效的进度管理

在该软件项目开发过程中,实施的某个实际工作阶段与原计划制定的工作目标相差甚远,却未能及时的做出正确调控措施,进而将低了进度管理发挥的作用。科学有效的进度管理不仅可以使整个团队沟通协调能力强,增加工作难度,更能确保该项目在研发过程中从新走入正轨。反之,就会延长研发工时,进度就会更加脱离原计划制定的目标,由于进度受到拖延,因此会越来越远,从而终追导致实际项目进度与源计划指定的进度相差甚远。

2.3项目成员责任心不强,沟通能力差

态度决定一切,细节决定成败。对于项目过程中的各项任务,经常出现由于项目成员责任心不强而敷衍了事,导致产出的工件质量较差,引起大量返工的情况。

3软件开放实施过程中,提高进度管理的措施

3.1计划阶段的管理

在软件项目启动阶段,需要根据项目的条款及总体工作的目标要求,制定整个项目的总体工作计划,即要对项目实施中的各项活动做出周密的安排。首先,对项目进度计划在项目的初期,项目负责人首先应该根据项目的合同要求,明确项目的工作范围。其次,对里程碑设置为了便于对进度计划的执行情况进行跟踪和控制,需要对项目进度计划中某些重要的时间点进行设置,即将这些时间点设置为里程碑。最后,对软件项目的变更控制管理工作必须从项目计划阶段开始,确定需求变更的工作流程。这有助于将需求变更带来的不利影响减到最小程度。

3.2需求阶段的进度管理需求分析

阶段的工作目标是要获取详细、准确的用户需求。分析工作要想按计划完成,需要项目双方共同努力才可以实现。大致上可以通过三方面来完成,即快速原型技术及需求复用技术、进行需求的管理以及与用户进行有效的沟通。

3.3实施阶段的进度管理

项目实施阶段包括设计、编码、测试几个软件开发工作阶段。开发工作在本阶段进入以开发方为主的项目实施阶段。要想做好实施阶段的进度管理必须组建结构合理的项目团队,提高团队战斗力。一方面要组建结构合理的项目团队,另一方面要职责明确、分工合理。与此同时,采用新技术、新方法提高开发工作的劳动效率。通过软件复用技术和CASE技术,进而提高软件项目开发的进度管理工作。

3.4收尾阶段的进度管理

收尾阶段是整个软件项目实施的最后阶段,本阶段进度管理的目标是做好项目验收的准备工作,使软件顺利通过用户验收并交付使用。通过两方面来完成该阶段的进度管理工作,一方面做好验收测试工作。另一方面,要做好验收文档资料的准备工作。

4结语

在各企业的软件开发实施过程中,做好进度管理显得至关重要。本文阐述了进度管理的重要性。另外,文章结合软件研发的实际情况,从多角度分析了影响软件开发进度管理的因素,最后给出了软件开发实施过程中从不同阶段提出了提高进度管理的措施。参

参考文献:

第8篇

关键词:风险管理;软件开发;中小企业

1 风险管理在软件开发中的引入

1.1项目风险管理

项目风险可能出自技术、政治、经济、资源等各个方面,对项目开发本身或是项目目标的实现产生重大影响,有些风险甚至可能是致命的,使项目严重滞后或直接废弃。项目风险管理是为了最好地达到项目的目标,识别、评估、应对项目生命周期内风险的科学与艺术。项目风险管理的目标是使项目本身潜在的机会或回报最大化,使潜在的风险最小化。

1.2风险管理活动

项目风险管理应贯彻在项目的整个生命周期内,是一个连续不断的过程。风险管理涉及的主要活动包括:风险识别,风险量化,风险应对计划制定和风险监控。

1.3软件项目的风险管理

软件项目由于其本身的创造性,注定了其风险的复杂性。一个完整的软件项目周期包含项目计划、需求分析、概要设计、详细设计、编码实现、软件测试、软件和维护等多个相互交织、互相影响的过程。这就注定软件项目管理是一项复杂的活动,涉及到计划、度量、组织、实现、时间、成本、进度、质量等方方面面的问题。这些问题相互纠缠、累积在一起,会产生各种不确定的因素,影响项目的进行。

软件项目中的风险表现在:需求风险、计划编制风险、设计实现风险、组织和管理风险、人员风险、客户风险、产品风险、过程风险。

这就需要我们在进行软件开发项目时更加注重风险管理,注重风险分析,做好风险管理计划,积极寻求风险应对方法,寻找切实可行的解决方案。

2 中小软件企业项目开发的特点和面临的风险

2.1中小软件企业的特点

目前,国内大多数中小软件企业虽然人力成本很低,但是在许多方面都处于劣势。如:软件企业普遍规模偏小,实力相对较弱;企业自身的技术实力低,技术单薄,积累少;项目缺乏统筹规划,生产方式是小作坊式,编程方式是个人英雄式;软件开发流程不规范,产品标准化程度差;项目管理知识和管理经验欠缺,缺乏严格的项目管理和质量保证体系;人员流动率高,缺少充足的人才储备。公司林立,项目竞争多,对很多软件企业来说,最重要的是维持生存,在合同的实施中,处于弱势地位。这些都是阻碍企业顺利完成软件项目的不利因素。

2.2 中小软件企业项目管理的不足

中小软件企业自身固有的不利因素,使得他们在项目管理中存在诸多不足:缺乏合理的进度安排、开发流程不完善、不重视测试、缺乏缺陷管理机制。

2.3中小软件企业软件项目面临的主要风险

客户需求不确定中小软件企业在项目中的弱势地位,造成客户可能随意变更需求,使开发无明确的方向。不完善的系统分析和设计又使得类似情况出现时,开发人员不知所终,造成混乱。

进度安排过紧进度计划往往脱离实际,多数无法按时完成。

技术风险中小软件企业的技术积累和技术储备往往不足,这在软件产品的设计、实现、接口、检验和维护等方面都有体现。此外,技术陈旧、不确定、不成熟,以及采用非主流的第三方设备或组件,都会给产品开发带来重大影响。

人员风险中小软件企业人员流动性大,而最终产品对项目组中某一个或几个开发人员依赖大,这些关键人员的流动,会使开发工作受到影响,甚至陷于停顿。

项目组成员不固定,增加交流成本中小软件企业常忽略项目组成员的交流成本。如,在项目进行中,加入新的开发人员,需进行培训并逐渐与现有成员沟通,从而使现有成员的工作效率降低。此外,还有任务重新分配所造成的工作中断带来的负担。要知道,软件项目的人员数量和开发时间并不是可以互换的,向进度落后的项目中增加人手,只会使进度更加落后。

3 中小软件企业项目的风险管理如何进行

在中小软件企业软件项目的风险管理中,也要按照“识别”、“分析”、“计划”、“应对”的步骤,对潜在和发生的风险进行有效管理和控制。

3.1风险识别

在风险识别中,我们应重点注意以下风险:

需求风险主要指需求不确定的风险,如,具体功能不能详尽描述,在系统范围和性能方面也存在着很多不确定性因素;另外,用户不断进行的业务流程调整,也会给系统带来较大的需求不确定性风险,甚至陷入需求膨胀的状态,最终难以满足用户的需求。

管理风险软件项目管理本身就是一项具有风险性的工作,对项目的协调管理工作要求更高。管理风险主要表现在:工作缺乏计划性或是有计划而不能严格执行;管理工作的随意性、盲目性比较大;没有充分意识到风险管理的重要性,因而没有充分分析可能存在的风险和应该采取的风险应对策略;项目团队内部沟通不够,导致开发人员对系统设计的理解存在偏差等等。

技术风险软件技术飞速发展,新技术、新应用层出不穷。这就要求系统分析、设计人员要具有较好的技术能力,同时还要对用户的行业业务非常了解。因此,项目组个人以及团队的整体素质将会影响到项目实施的成败。

人员风险对中小软件企业来说,人员风险始终是一个非常值得关注的因素。

3.2风险分析

需求风险需求风险的形成,首先,是由于客户的介入与参与程度不深,考虑需求往往从部门或局部的视角出发;其次,分析人员忽视了对业务知识的深入了解,不能很好地理解甚至是误解客户的需求,使得需求调研的目标不明晰,分析不透彻;第三,缺乏与客户决策层进行深层次的交流,难以掌握客户企业的发展趋势,对需求的延伸性不明确;最后,缺乏有效的需求变化管理。

管理风险项目管理人员缺乏项目管理知识,工作目标不明确,对总体计划、阶段计划的作用认识不足,对项目的风险估计不足,从而造成计划与控制脱节,无法进行有效的项目管理;而且,由于管理人员的协调管理能力不足,执行力度不够,使得项目协调成本、时间成本大大增加,造成工作延误等。

技术风险技术风险可以直接导致项目失败。技术能力不足、涉足不熟悉的行业业务,使项目的预期目标超过了项目组的实现能力;此外,采用不熟悉或是欠成熟的开发工具、第三方产品等,都会使项目处于灾难性的风险之中。

人员风险产生人员风险的原因多种多样,要结合企业自身和具体员工的情况,综合加以分析。

3.3风险应对

风险规避的最好方法是把风险控制在项目启动阶段。可以采用以下措施来规避或减小风险。

建立畅通的对外沟通渠道,制订沟通策略需求

风险很大程度上是由沟通不畅引起的。在需求调研阶段,要多和客户应用部门沟通,了解他们真正的需求,最好能将系统的目标模型向应用部门演示,并得到反馈意见'、直到双方都达成共识;形成双方认可的验收方案和验收标准;做好需求变更控制和管理,尽量降低需求的不确定性风险。

配备高素质的项目管理人员要由具有丰富的项目管理经验,或是具有系统的项目管理知识的人来担任项目经理,制定有效的项目管理计划,并执行落实,提高项目的可控性。

建立协作高效的项目团队项目组中既要有技术部门的参与,更要有应用部门的参与,形成一个合作的项目团队,共同理解需求和业务发展。共同研讨项目进展中出现的问题,共同控制项目进度,共同为项目质量把关。

制定科学的风险管理计划风险管理必须被作为日常的正式活动列入项目工作计划,成为项目管理的一部分。从风险管理的角度对项目计划进行审核,建立风险清单,对每个可能存在的风险做出尽量准确的判断并对之进行监控,提前做好应对准备。如针对需求风险,要制定相应的需求变更控制;针对技术风险,要安排核心技术人员全程参与开发等等。

鼓励内部交流项目经理应积极与开发组成员进行交流,掌握他们的思想动态,及时解决出现苗头的问题;在开发团队创造信任、公开、积极交流的环境,有效地消除团队成员之间的隔阂和冲突,使项目开发保持一定的效率。人力资源部门也应该密切注视项目组成员的士气,通过积极沟通,或采用适当的激励机制,使项目能正常进行。

选择合适的开发技术最合适的才是最好的,虽然在系统设计时要考虑技术的先进性,但如果对所要采用的新技术不熟悉,在满足业务需求的前提下,应尽可能采用熟悉的技术,以避免因技术瓶颈导致的项目失败。

采用适合的开发模型为适应业务需求随时间发展而变化,要强调敏捷开发,缩短软件周期,尽快给用户一个快速原型,并对各个功能逐步完善,可以降低不确定因素带来的实现风险。

4 中小软件企业应建立风险管理机制

4.1 中小软件企业自身的应对风险的积极因素

“船小”规避快中小软件企业具有规模小、机制灵活的特点,便于决定取舍,有时有舍才有得。

用人制度没有条框的规定中小软件企业用人制度灵活,有利于管理者采用奖励、情感投资等有形和无形的激励手段。

企业结构有利于执行力的实现中小软件企业的企业结构相对简单,层次构成浅,内部沟通屏障少,有利于提高企业的执行能力。

4.2结合自身的因素进行软件过程的改进

量力而行作为项目实施的决策者,要知道有所为有所不为。不要好高骛远,目标定得太高,脱离自身实际,往往使企业陷于被动。

强化系统分析设计先谋而后动,系统分析和设计作为软件项目最重要的开始阶段,是不可缺少的。运用统一建模语言进行分析设计,或开发实现时采用相对成熟的设计模式,可以有效地提高项目组成员在分析和设计阶段的交流能力和工作效率。

发挥人的能动性,通过对员工的有效管理积极应对项目风险对中小软件企业来说,最宝贵的是员工。以人为本的社会文化,要求实现员工与企业的双赢,既可以满足员工建功立业的个人追求,又能实现企业的战略规划。要选择正确的人,为他们分配正确的工作;及时处理员工的负面情绪;建立有凝聚力的团队。确定人员流动的原因,重视后备人员的培养。

有效管理代码代码是软件的生命,要采用适当的管理方法(如统一编码规范)和工具(如版本控制工具)管理代码(包括文档),使软件开发作为一个过程处于管理之下,既可以规范开发行为,又可以为类似的行为提供依据和可借鉴的资料。

建立测试和缺陷管理机制这对于软件质量评估具有很高的价值。

掌握合适的开发方法如现代敏捷方法论既非常注重人的能力,强调调动每一位项目参与者适应变化,又基于非常严谨的过程。这对于中小软件企业具有重要的借鉴意义。

对项目进行总结,形成知识管理制度不断总结成功的经验和失败的教训,在工作中不断积累对抗风险的能力。

5 结语

第9篇

关键词:软件;项目管理;SW-CMM;模型;市场竞争力;企业

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)04-0113-03

在当前形势的影响下,一些中小软件企业在实际的发展过程中,由于对软件项目管理认识不足,导致在相关的产品质量管理方面出现了各种各样突出的问题。这些问题的存在,客观地说明了软件企业在发展过程中工作思路的不科学及对项目管理认识不清,阻碍了企业的正常发展。做好软件项目管理的基本工作,必须理解和掌握对中涉及的相关技术概念及基本原理,为后续工作的开展奠定良好地基础。SW-CMM软件项目管理模型,结合了项目管理的主要内容及软件的相关特点,有利于提升企业整体的项目管理水平,扩大自身的经营范围。SW-CMM体现了这个时代无数成功软件企业的研发能力和先进的管理理念,为相关中小企业的项目管理提供了一定的参考思路。

1软件项目管理的研究背景及意义

1.1软件项目管理的研究背景

软件项目管理主要针对的是软件行业。它是项目管理与软件行业结合的产物,对于软件行业工作效率的提高有着重要的影响。软件行业的生存和发展依赖于企业内部团体的研发能力,主要是通过相关技术人员彼此间工作的配合逐步实现的。软件项目管理为软件企业未来的生存和发展带来了巨大的推动力。SW-CMM又称软件能力成熟度模型。它最早诞生于20世纪80年代,是由美国的大学研究机构主持开发的。这种软件项目管理的理论体系庞大,内容比较丰富,涉及的范围也比较广泛。其本质上是一种先进的管理方法,主要应用与软件领域,体现的是管理方面的思想。通过对不同层次的内容指出了软件工作机制中控制活动所遵循的基本原则,为软件项目管理和项目施工提供了可靠的工作思路。这给软件企业处理实际问题带来了一些指导性建议,节约了研发人员的工作时间,加快了研发速度,为企业的整体发展带来了积极的推动作用。同时,作为一种参考标准,SW-CMM对于软件企业的预算管理有着一定地影响:对企业如何控制生产成本,实现利润最大化目标提出了具体的解决方法。相对国外比较成熟SW-CMM,我国在这方面的研究理论非常少,缺乏科学的参考标准,相应的软件组织更是很少,只有部分的中小组织。将复杂的SW-CMM理论体系变得简单化,是未来软件研究工作者需要完成的主要工作任务。

1.2软件项目管理的研究意义

软件项目管理直接关系着软件企业的生存和发展,是保证企业竞争力的重要措施。做好软件项目管理的研究工作,有利于提高软件产品的质量,扩大企业的生产经营范围。同时,这种管理理念和管理方法的实施,从根本上降低了企业的生产成本,为企业整体经济利益的增加带来了积极的影响。中小企业在软件项目的管理过程中一直存在着很多的问题,管理方法的不合理,管理机制的不完善,都阻碍着企业正常的发展。因此,做好软件项目管理的研究工作,对于软件企业整体的发展具有现实的参考意义。软件项目管理是决定软件企业战略部署的关键措施,这也客观地决定了开展软件项目管理研究工作的必要性。

2软件项目管理及SW-CMM的相关内容

2.1软件项目管理概念及特殊性的表现形式

软件项目管理主要是指企业通过对项目成本、施工进度、质量管理、人员配置方面的控制而开展的相关活动。软件项目管理对于企业技术人员的研发能力影响很想很大,也直接体现着企业整体的研发水平。软件生产技术相对较高的企业,其项目管理水平较高,综合的研发能力比较突出。软件项目管理的特殊性主要是指这种管理与其他项目管理的区别。主要表现在;1)思维上的独特性。软件项目是通过技术人员的思维能力逐步开展实施的,具有抽象性的逻辑实体。在具体的研发过程中相对比较自由,需要经过一定的研发时间才能获得最终的产品;2)组成结构的复杂性。这主要是指软件本身具有一定的复杂性。其复杂性包括:代码组成的复杂性和解决实际问题的复杂性。当软件在应用过程中遇到特殊的问题时,必须从程序的设计、实际的需求、研发角度等方面展开必要地研究,而这样的处理过程增加了整个工作机制的复杂性,使得整体结构的复杂性逐渐地体现出来;3)层次感鲜明。软件中某些符号存在着优先级,使得系统在处理实际的问题时,必须充分考虑优先级的高低,间接地使软件项目管理在某些应用方面的层次感非常鲜明,为相关工作的开展带来了极大的方便。通过这些不同的表现形式,可以清楚地看到软件项目管理的特殊性。

2.2SW-CMM的基本结构

当前形势下,国际上较为流行的SW-CMM主要分为软件能力成熟度模型和软件能力成熟度的具体实践。这两种技术报告有着不同的侧重点:前者是强调软件实施中的相关原则,主要是为了使软件能够朝着更高层次的方向发展,最后保持一定的成熟度。这种成熟度侧重于具体的过程。而后者主要强调的是不同级别实践过程中的成熟度,侧重于成熟度实现的途径研究。通过对成熟度内涵的分析,可以为软件实施做出一定的综合评估,以达到软件改进的最终目的。SW-CMM结构的基本原理主要是指:在具体的过程中通过各项实践活动的有效开展,可以实现关键过程的相关目标。这些目标象征着不同的成熟度级别。这也客观地体现出了SW-CMM结构中成熟度级别的高低是与一定过程内实现目标相关的。这为软件项目管理带来了重要的参考思路,也为软件实施过程中评估报告的评价指标指明了方向,给相关模型的构件带来了一定的参考依据。

2.3SW-CMM等级的研究

SW-CMM的等级主要包括五个方面:优先级、管理机、定义级、重复级和初始级。这些不同的级别反应了SW-CMM的基本结构特点,在实际的应用中有着特定的含义。五个级别的相关含义主要有:1)初始级。这主要是指软件的生产组织的起始阶段,基本没有形成真正的软件研发环境。无论是管理上还是具体的实践应用方面,都无法达到相关的设计要求;2)重复级。这一级别中的内容较丰富。主要是指它涉及的对象较多,包括人、物、组织及相关的信息传递。这种过程中信息之间的交流需要结合实际的情况随时地调整。应用、测量、研究、规范化、标准化等组成了一个严密的体系,对于软件项目管理起着科学的引导作用。所谓的重复是指在软件项目管理中可以对制度、合同、预定方案等方面重复执行。不同的项目允许在一定的控制范围内出现一些偏差。这主要是从局部的细节方面研究的。而从整体上观察,可以看出这些重复的行为基本的原理都是一样的。无论是参考标准还是项目控制管理,其中的某些过程中是可以重复的;3)定义级。这是软件研发的关键阶段。软件项目管理模型的形成涉及了软件工程和项目管理。在定义级阶段,需要制定相关的参考标准。这些标准的形成,为未来软件的使用进行了必要地规范,为软件的顺利实施指明了方向。这个级别所涉及的软件过程的特点主要是:规范化和互不排斥性。突出了软件工程和项目管理过程的相关特点。当软件进入生产阶段,需要对软件的整体框架、生产数量、生产质量等方面进行综合地管理;4)管理级。这一级别主要是为了做好软件产品的质量指标的制定工作。通过设置一定的质量指标,可以使软件生产组织的活动更加规范,为软件项目的质量控制提供了可靠地保障。当软件处于该级别时,软件实施及相关的评估报告有了一定的参考依据。通过控制软件的过程,对于可能出现的偏差进行随时地调整;5)优化级。该级别主要的工作内容是为了使软件的性能更加可靠,实际的应用范围更大,从而对软件进行持续地改进。通过相关的试验查找软件中的漏洞,并对实验数据进行全面的分析。最终的目的是为了使该软件在技术上和方法上有所突破。通过对SW-CMM不同级别的分析研究,可以清楚地看到软件的设计、制定及实施的过程是可以不断地改进的,这也是对应软件项目管理存在的意义。

3SW-CMM的软件项目管理模型分析与研究

3.1项目启动

项目启动是整个SW-CMM模型内的初始阶段,需要从项目的可行性、项目方案的制定与实施、资源配置管理等方面展开深入地分析。其中,项目的可行性分析主要包括三方面的内容:1)技术角度的可行性。主要是指技术的选择能否对市场风险起到一定的预防作用;2)经济角度的可行性。主要是指项目的成本预算是否合理;3)社会推广的可行性。主要是指项目在推广过程中是否合法,相关的操作方式是否合理。同时,项木启动也对具体的工作目标、整个项目的估算及项目立案的管理等方面做出了一定的说明。

3.2项目的整体计划

在整个模型中这部分的内容相对比较丰富,其中主要涉及了成本控制、风险规避、项目方案指导、工作步骤的有效分解及职责的明确等方面的内容。其中的工作步骤的有效分解可以起到对整个软件综合评估的作用。项目的成本控制可以通过多种方式达到预期的目的。主要有:相似项目的比较;专家团队的评估;算法模型的模拟及特殊的估计法等。对于一些规模较小的项目可以采用一些SW-CMM模型的建立进行相关地估算。

3.3项目的风险评估

无论是在项目的启动阶段还是后续的项目实施阶段,都必须对整个项目的工作机制进行的综合的风险评估。风险评估的过程有着相对完整的体系。主要包括:风险的识别、风险的分析等。利用风险评估体系对SW-CMM项目管理进行整体的评估,主要是从项目实施中三方面的内容展开的。由于软件工程项目在具体的推广过程中可能出现各种类型的风险,需要对项目的风险评估机制进行随时地修改。

3.4项目的实施与控制

这一阶段是项目取得成功的关键所在。由于项目在实际的实施过程中可能会遇到各种各样的突发状况,仅仅利用项目的风险评估机制很难对项目计划做到准确地预估,必然会导致一些偏差的存在。因此,利用项目的实施与控制的作用可以及时地修正这些偏差,保证整个项目能够顺利地实施下去。项目的实施与控制主要包括:需求管理、项目的全程监督及项目的有效控制。通过这些方面工作的开展,可以提高项目实施整体的工作效率。

3.5项目的维护与软件质量管理

当所有的项目结束后,需要开展相关的资料整理及项目验收的工作。项目的验收一般是通过用户的体验完成的。由于最终的软件主要是为用户服务的,用户的客观评价是对整个软件安全性能的最好体现。除此之外,也需要对项目中一些重要的资料进行及时的归档整理。并对相关的工作做出一定地总结。SW-CMM软件的质量管理包含着许多重要的内容。由于软件最终的应用与推广主要是针对用户与社会的,必须对软件的质量进行一定的管理,防止意外事件的发生。软件的质量管理主要包括:软件的综合评审、软件的性能测试、软件的漏洞、解决软件存在问题的方法。通过对这些方面的有效控制,可以保证软件的质量可靠性。

3.6软件的配置管理

作为SW-CMM的软件项目管理模型的重要支撑平台,软件的配置管理对于整个软件的生命周期起着至关重要的作用。软件配置管理主要是对软件生命周期内产品的变更及相关的演化过程进行一定地管理。它主要解决的问题是软件变更过程中的标识、变更过程的控制及最终的等方面的问题。最终的目的是为了使最终的产品在有效性、需求性及可控性等方面达到用户的实际的要求。

4结束语

SW-CMM软件项目管理模型在实际的应用中起着至关重要的作用,主要是因为它深入地分析了软件企业在项目管理工作方面存在的问题,并找到了科学的解决措施。这为软件企业未来的发展带来了积极地影响,使得企业在实际的项目开发中拥有了更多的选择。文中通过对SW-CMM项目管理模型实际应用的研究,为中小软件企业的发展提供了有效的策略。

参考文献:

[1]魏国兴.基于CMM的软件过程管理系统的设计与实现[D].北京:北京邮电大学,2010.

[2]张策.CMM/CMMI模型在成品油协同监管服务平台项目中的应用研究[D].长春:吉林大学,2011.

[3]周津衍.基于CMM的A软件项目开发过程改进研究[D].上海:东华大学,2015.

第10篇

本文首先介绍了软件项目管理的概念,并从软件项目管理中的配置管理功能,介绍了配置管理以及概念和配置管理任务CMMI(Capability Maturity Model Integration)与配置管理之间的关系,最后给出了配置管理在软件项目中的应用实例。 

软件项目管理 配置管理 计算机 

随着计算机应用的不断发展,对软件项目的要求也越来越复杂,变化也越来越频繁。从整个企业的发展战略出发,在技术变化和人员流动频繁的情况下,如何建立企业的项目库和管理库,将个人知识和经验转化为企业知识和经验,对于提高工作效率、缩短产品周期、增强企业竞争力至关重要。采用科学的配置管理思想,辅以先进的配置管理工具,是管理软件产品不可或缺的方法。目前,我国软件企业的开发和管理相对落后,引入软件配置管理的思想和技术是迫切而重要的。 

软件项目管理 

(1)软件项目管理概念 

软件项目管理是对人员、产品、过程和项目进行分析和管理的活动,使软件项目能够按预定的成本、进度和质量顺利地完成,分析和管理人员、产品、过程和项目的活动。与其他项目管理相比,软件项目管理是非常特殊的。首先,软件是一种纯知识产品,其开发进度和质量难以估算和计量,生产效率难以预测和保证。其次,软件系统的复杂性导致了开发过程中各种风险的不可预知性和控制性。软件项目管理的主要内容包括以下几个方面:人员的组织和管理、软件项目计划、风险管理、软件质量保证、软件过程估计、软件配置管理等。所有这些方面都贯穿在整个软件开发过程。其中,软件配置管理提出了开发过程中人员和工具的配置和使用的管理策略。 

(2)软件项目管理的原则 

在软件项目管理的过程中,包含以下几大原则:即平衡原则、高效原则、分解原则、实时控制原则、分类管理原则、简单有效原则、组织的知识积累原则。 

(3)配置管理在软件项目管理中的作用 

随着软件系统的频繁和用户需求的日益复杂,软件更新、配置管理逐渐成为软件生命周期中的一个重要过程,在软件开发过程中发挥着越来越重要的作用。一个好的配置管理过程可以涵盖软件开发和维护的各个方面,在软件开发过程的宏观管理中,即项目管理中,起着重要的辅助作用。良好的配置管理使软件开发过程能够更好地预测,使软件系统具有可重复性,并使用户和管理部门对软件质量和开发团队有更大的信心。 

配置管理 

(1)配置管理的概念 

就目前来说,配置管理没有一个统一的定义,但是通常都认为配置管理是一种规范软件开发过程的管理工作。软件配置管理简称SCM(Software Configuration Management),是在团队开发中识别、控制和管理软件变更的管理。 

(2)配置管理的任务 

1.定义配置项 

软件配置项目(SCI),即软件配置管理的对象。软件开发过程中产生的所有信息构成软件配置,它们是:代码(源代码、目标代码)以及数据结构(内部数据、外部数据)、文档(技术文档、管理文档、需方文档)、报告,其中每一項称为配置项,软件配置项是配置管理的基本单位。同时,在开发过程中使用的环境,如操作系统、各种支持软件、配置管理工具,也可以纳入软件配置管理的范围。 

2.标识配置项 

识别软件配置项对整个管理活动非常重要,它给软件开发过程中的所有软件项目提供了唯一的标识符,使其易于控制和管理。配置标识符包括文档标识、代码标识和运行文件标识。 

3.定义基线 

基线标志着软件开发过程的一个阶段的结束,当一个个软件配置项形成文档并通过评审,便成为基线。基本功能是对各个阶段的工作进行更清晰的划分,使连续工作在这些点上断开,从而对试验结果进行测试和确认。 

4.定义软件配置库 

软件配置库的内容涵盖了整个开发过程。基线技术将存储库分为3类:即开发库、受控库和产品库。 

(1)开发库:存储开发过程中使用的各种技术文档、源代码、可执行代码和数据,为开发人员的活动提供支持。 

(2)受控库:存储被评审和批准的基准产品,以及批准的软件工作产品和软件产品。 

(3)产品库:项目正式交付的最终产品和最终操作环境。 

5.控制配置 

配置控制的定义是指定配置管理在实现过程中实现的配置规则,包括出入库控制和变更控制。 

6.配置审核 

它包含物理和功能审核。包括以下活动:验证每个软件配置项的正确性、一致性、完整性、有效性和可追溯性;在软件生命周期中,应定期安排审核工作;定期的软件备份应该确保备份介质的安全性和可用性。 

7.配置状态报告 

提供软件开发过程的发展状态记录,包括配置管理的现状以及原因(存储、更改)。配置管理人员应定期或在需要时提交配置状态报告。配置状态报告包含对整个软件生命周期中基线的所有更改的可跟踪性。 

(3)实施配置管理的优点 

1.节约费用:缩短开发周期,降低工程造价。 

2.利于知识库的建立:项目库、管理库 

3.规范管理:量化工作量考核、标准化测试、加强协调与沟通 

配置管理实施的流程 

(1)规划和调整网络开发环境,规划良好的开发环境,是实施配置管理系统的前提。本阶段的配置管理系统规划,主要考虑以下问题:网络带宽、拓扑构造、服务器选择、命名约定、存储位置、开发人员和组的命名规定等。 

(2)设计配置管理库 

根据项目需求,设计开发资源存储模型,有利于减少管理负担,提高配置管理数据库的访问性能,便于访问控制,保护软件资产。 

(3)制定配置管理流程

       配置管理实施的一个重要阶段,主要目的是根据项目开发的需要制定合适的配置管理流程,以更好地支持开发,主要包括以下活动: 

1.定制并行开发策略 

合理的并行发展战略应具备以下特点:协调项目的复杂性和需求,为集成开发过程中的变更创建有效的规范,并反映开发过程中方法和需求的变化。 

2.发布版本管理 

软件开发过程中的关键活动之一是提取软件的相关版本,以形成软件系统的阶段版本或发布版本。一个基线代表一个新开发活动的开始,一系列精心定制的活动生成一个新的基线。此功能有效地用于管理和跟踪项目开发过程中版本之间的关联。 

(4)相关人员的培训 

要想让配置管理系统顺利实现,相关人员需要接受系统的培训: 

1.管理员培训:对于配置管理员,主要学习配置管理工具管理相关内容; 

2.开发人员培训:对于开发人员来说,主要学习配置管理工具与开发常用的操作; 

3.管理流程培训:对于所有人员来说,其目的是了解配置管理策略和过程,以及如何将开发管理和项目管理结合起来。 

CMMI与配置管理 

CMMI(能力成熟度集成模型)是由美国卡耐基·梅隆大学的软件工程研究所(SEI)组织开发,并于2002年发布的一种规范、实用的途径,来管理软件过程的模型,经过指导软件开发人员的活动来改进软件过程,以达到软件过程的可重用性、量化管理和有效控制的目的。软件配置管理是CMMI可重复级别的一个关键过程域,其目的是在项目的软件生命周期中维护软件产品的完整性和可追溯性,其中包括对变更的控制和对可能影响变更的所有软件因素的管理。配置管理作为过程实施和过程优化的一部分,是软件过程的基本保证,也是基于可复用软件开发的管理方法,因此,它成为软件过程管理的核心。CMMI模型清楚地描述了供应链管理,并解释了供应链管理的目的和实现的目标,具体描述了软件过程中一定程度的成熟度应该达到的一组目标和实现这些目标的一组关键实践(Key Practice)。这些关键做法分为5类,即所需的承诺、执行能力、执行的活动、度量分析和验证,以实现该组的目标。从而使企业在实施软件配置管理时,能够准确地知道该做什么,如何评估团队的配置管理状态,以及在哪些方面也可以改进等,对于这类问题可以具体回答。 

配置管理在软件项目管理中的应用 

案例:配置管理在某软件项目开发中的应用,该软件开发以及管理的环境如表1所示。 

开发人员,测试人员,和项目实施者需要在项目间进行有效的沟通,构建统一的项目资源管理平台,满足项目团队的角色,是项目资源需求的关键。该平台的建立为避免项目管理混乱、文档和测试程序的源程序版本之间的文件标准化和统一化,变革的有效控制,提高项目团队的工作效率,并可以保存项目各阶段工作成果。通过SVN的配置管理工具的使用在公司实施配置管理,该平台使得软件项目开发任务,进度,改变可以控制并保存在项目结果的所有阶段,包括各种软件项目的源程序文件的历史版本,形成项目的开发库及受控库,形成了无形而强大的以知识为核心的能力。通过配置管理的实施,减少项目人员之间的摩擦,团队之间的合作更加有效;通过配置管理的实施,增加了用户对软件产品的信心,并给予了良好的评价,使公司领导对项目团队有了更多的信心。 

结语 

配置管理系统直接解决了开发团队的一些难以处理的问题,缩短了开发周期,并通过资源重用建立了知识库,规范了软件开发过程,使软件产品更加可靠。在软件项目管理过程中,配置管理和合理使用极大地提高了项目团队的工作效率,减少了工作失误,降低了项目风险,使整个软件项目管理水平得到了提高。 

[1] 王珍英.配置管理在軟件项目管理中的应用[J].计算机系统应用,2008(10):101-104. 

第11篇

微创公司的成本构成主要是:工资及福利的支出、调研及维修费、业务费和市场营销所需的各项业务的费用支出、房屋及软件设备折旧、管理费用、财务费用、研究开发费用。而其中也导致了微创公司的成本方面如下几个特点:固定成本比重过大、区域成本差异化、技术变革带来的成本管理困难。微创公司为了解决其自身的成本特点问题以及为了适应由于公司业务的增长而导致的一系列问题,决定对公司的软件开发项目进行成本管理,而主要的管理由以下几个方面构成:实现软件开发项目的条件、确定成本估算对象、设置管理的组织机构、软件开发实施阶段成本跟踪和控制。(1)项目资源的安排:通过使用公司内部的公用软件,可以在不增加成本的情况下实现项目人员的交流和任务的分配,更好的对人力资源进行合理的分配,将目标合理的细分化,实现了成本的降低,生产率的上升,资源的再利用。(2)影响项目成本的进度管理:基于以往的项目进度管理的进度估算法和类推估算法的一系列缺点,微创企业充分利用FP技术的软件规模的度量技术来进行数据的生成,使用定额估算法和PERT计算方法对项目的历时进行估算,达到了项目进度管理的目的,使管理工作合理分配资源,发挥资源的最佳作用,提升了工作的效率,使项目能够按时完成。(3)项目成本的估算研究:作为项目成本管理的核心内容,微创公司对此做了细致的划分,软件成本估算主要包含以下几个方面:建立目标、计划所需的数据与资源、准确说明软件需求、详细准确的估算、估算方法的选择、比较与更新、实际的应用。(4)软件项目成本控制:对项目进行监视和操纵以使项目能够按照预期进行,使项目经理能够更好的对项目的实施过程进行了解。这一阶段,项目的制定需要严肃并合理。即使计划有特殊情况也应及时反映给有关部门,并且项目要从实际出发。而且项目在实施上还需灵活,来保证项目经理发挥其主观能动性。在经过了一系列的优化之后,微创公司形成了完整的软件开发的成本管理系统,能够系统的分析软件开发的成本问题,降低了软件开发的成本,并大幅提高了生产效率。

2微创公司软件开发项目成本管理的应用

2.1项目简介

某企业为解决管理效率地下、数据易丢失、企业难以有效对人员进行掌握和控制的问题并实现企业网的安全可靠、项目组级间的协同设计,实现知识管理和积累等一系列成果委托微创公司进行开发项目。

2.2微创公司项目软件开发成本管理系统应用

项目成本计划:将所设计项目分为5个模块分别为设计数据管理、功能接口、数据版本管理、安全管理、数据库再将每个模块按各部门管辖进行划分,再由公司财务部把总成本分配到各个模块项目经理处,最终形成完整的成本控制体系,保证了日常成本管理费用、专项成本管理费用、开发单位管理费用。项目时间估算:包括项目活动安排、绘制项目进度网络以及进行历时估算应用。将项目的开发制定一个切合实际的并可行的计划。使项目的进行更具计划性项目成本的估算:在这一阶段,对企业所需的项目进行估算可以更好的适应公司的业务需求。所以,在这一阶段中,对公司有精确的估算所取得的效果就越明显,也能带来巨大的优势。最终使企业借助此项目提高资源利用率,大幅降低成本,最大限度获取利润,能够使企业提高竞争力。项目成本控制:根据企业项目所提的安全性进行需求分析报告的生成、反馈意见的生成,并将项目的完成分为几个阶段:需求分析阶段、软件开发阶段、软件测试阶段、软件实施阶段,对其进行监控,来使每个阶段达到最大限度的利用。项目进度计划制定与控制:为了节约项目时间将项目进行分解,并根据所需的资源对其进行合理的分配计划。在实际情况中进行检查、监督以实现目标并保证项目按照原计划进行。项目收工:将项目进行测试和运行。并做好对文件资料的验收的准备,最终交付客户使用。

3总结

微创企业软件项目的开发成本管理系统从最初的具有一系列问题到经过一系列的优化之后形成的具有模范作用的成本管理系统是经过了许多相关人员及技术人员的分析与经验,微创公司的软件开发项目成本管理系统对于中小企业的成本管理具有导向作用,在当今这个软件开发如此迅猛的时代,一个软件公司的发展是与其成本管理系统分不开的。

作者:胡正元 单位:南京维数软件技术有限公司

参考文献:

[1]龚银锋.软件项目成本估算研究[J].软件导刊,2014(1):20~22.

第12篇

关键词:软件项目 关键管控点 需求管理 质量管理 进度管理

中图分类号:F253.3 文献标识码: A

Abstract: The special characteristics of the implementation of the software engineering project in the enterprise informationization management determines the uniqueness and complexity of the software project management, software engineering project management effectively has become an important guarantee for information management in enterprise interior more effective software project. Analysis of the paper, key control points of internal software project management, only to provide personal opinions and views in order to improve the implementation of software project management efficiency.

Keywords: software project management critical control point requirements of quality management schedule management

一、前言

随着大中型企业的快速成长,对计算机软件的需求也愈来愈多,愈来愈复杂。企业信息化管理公司作为主要从事信息化的单位,承接企业内部愈来愈多的信息化软件工程项目,将项目管理理论应用到软件工程项目切实提高管理质量与效率越发必要,这样才能在企业内部提高开展软件工程项目的竞争力。同时随着软件工程项目管理理论的发展和成熟,项目管理的实践方法和技术己受到广泛重视,在很多行业都有了大量的实践应用。本文从开展企业内部软件项目实施方的项目管理工作的角度探讨如何尽快实现公司软件工程项目规范化管理,提高软件工程项目管理效率问题进行阐述。

二、项目管理内容与特点

软件工程项目管理是根据管理科学理论,结合软件产品开发的实际,为了使软件工程项目能够按照预定的需求、进度、质量顺利完成,从而对需求、成本、人员、进度、质量、风险、文档等进行分析、管理和控制的一系列活动。软件在项目实施全过程中,需要与客户、合作伙伴进行充分沟通与交流,其中任何一个环节出现问题,都会影响到整个项目的进程。另外,在软件项目管理中,常常会面应用技术、业务需求等方面的变化,这也增加了项目管理的难度。

目前公司软件开业务正在起步发展阶段,相对于外部专业公司开发力量及实力相对落后,在这种多项目并发、技术含量高、变化速度快、资源有限的环境下,必须通过科学的管理不断提升企业竞争力。对企业、项目、资源实施科学的管理,加强团队能力,实现软件工程的生产规模化、规范化,是公司提升软件项目能力面临的最大挑战。

三、软件工程项目的需求管理

需求管理是软件开发生命周期的初始阶段,它对最终提交的软件产品的质量起着至关重要的作用。在企业内部开展软件工程项目建立软件需求管理尤为重要,主要体现在用户需求的文档化确认和对用户需求的控制中,并保证项目的计划、系统产品都与需求一致。

由于企业内部公司时常对需求具有模糊性、不确定性与主观性的特点,只是有个“大概”的想法,需要我方根据甲方的需求进行细致详尽的描述,并与甲方进行有效的沟通双方一致确认,同时还会存在需求变化、业务变化的问题等等一系列问题,只有通过需求管理使需求在受控的状态下发生变化,而不是随意变化,需求管理就是要按照标准的流程来控制需求的变化。

所以,一定要做好需求文档的版本管理记录用户需求、系统需求、软件分配需求的文档都要作为基线确定下来,做好相关文档的管理工作。需求分析人员在充分与客户用户进行沟通的基础上形成第一个版本的需求文档,这个需求文档在通过需求评审后即可以建立第一个需求基线。此后每次需求变更并经过需求评审后,都要重新确定新的需求基线,以免将来用户需求发生变更时,原来的需求无法查找。为有效进行需求变更控制,必然要做的工作就是保存好各个版本的需求基线,维护需求基线文档,以备不时之需。

四、软件工程项目质量关键管控点

软件工程项目质量管控目标主要是在充分沟通需求基础上,确保项目交付的产品能够达到需求部门接受的质量水平。软件工程项目质量管控关键点主要包括:形成有效的沟通机制、加强软件项目质量检查、督促强化软件项目文档管理。

1、形成有效的沟通机制

软件项目成功质量标准的制定与需求方的认可密切相关,首先项目管理要协调需求部门定时进行软件开发工作的沟通,对已完成部分进行确认,出现问题及时修改,最终按照需求部门需求完成工作。

2、加强软件项目质量检查

软件项目质量检查是软件项目质量管控的重要内容,可以采取定期或不定期的软件项目质量检查。定期是指在预定的检查周期内执行的检查工作。不定期的检查可以在关键任务或里程碑任务的计划完成时间进行。软件项目质量检查首先需要收集项目的质量信息,主要包括总体质量情况以及各子模块的质量信息。在此基础上,将项目质量信息与项目目标进行比较。如果没有偏差,检查到此结束;如果存在进度偏差,则需要针对这些偏差进行分析和研究,发现其中的问题,针对问题寻找解决方案。

3、督促强化软件项目文档管理

系统的开发应以文档的描述为依据,而系统的运行与维护更需要文档来支持。软件项目质量管控需要督促软件支撑方强化软件项目文档管理。必须对文档进行规范管理,包括各开发、运行阶段要提供的文档,制定各种文档的编写规范。避免当项目质量出现问题时,没有有效的文档可查,致使软件项目延期或失败。

四、软件工程项目进度关键管控点

软件工程项目进度管控目标是使软件项目在预定的时间内,达到预期的项目目标。软件工程项目进度主要因素包括:项目组的沟通和协调工作不力、不能充分发挥项目组成员的作用、忽视项目外部组织的影响、项目组织工作能力不强、工作方法不佳等,针对以上关键因素,实行有效的软件项目进度管控需要把握如下关键点:制定合理进度计划、提高进度执行准确率。

1、制定合理进度计划

软件项目进度计划是软件项目进度管控的基础,直接影响到软件项目能否顺利进行,资源能否被合理使用,直接关系到项目的成败。合理的软件项目进度计划应在项目总体计划基础上细化为阶段计划和个人计划。对于不成熟的项目和管理水平不高、资源能力不强的项目,力度不能太大,否则难以实现项目的控制;对于成熟的项目和管理水平高、资源能力强的项目,任务的力度就可以适当大一些。每项任务需要有明确的责任人、明确的工期。

2、提高进度执行准确率

软件项目进度执行准确率差是软件项目管控过程中面临的最大挑战,要提高软件项目进度执行准确率,需要重点管控如下关键点:

1) 避免凭经验拍脑袋式的粗放式评定,切实提高项目进度准确率。

2) 实现项目里程碑与项目进度合理匹配,避免过于依赖里程碑,反而使项目进度执行出现偏差。要在关注里程牌的情况下,实现对项目过程的监控,从而保障项目里程碑能够按时完成。加强对项目里程碑变更的管控,避免出现里程碑大多按期完成而项目却不能按进度完成的现象。

五、结语

软件工程项目管理正在发展阶段,具有普遍科学规律的理论模式,将这一理论恰如其分地运用到实际活动中,制定适合软件开发项目的管理规范、过程、流程、模板,并借助于适当的管理工具进行管理,对软件工程项目的成功非常有效。本文通过分析通讯公司实施软件工程项目管理的现状,结合当前海油内部软件系统发展要求,在三个方面讨论了公司软件工程项目管理的关键管控点,为公司更好的开拓软件工程市场,提高公司整体开发能力,提出了几点意见,希望公司在软件工程项目开发有更进一步的发展。

参考文献:

[1] 刘积仁,康晓东,饶友玲.软件开发项目管理[M].北京:人民邮电出版,2002.

[2] 窦燕.影响软件项目管理关键因素的探讨[J].燕山大学学报,2004(4).