浅论软件开发项目管理

2017-08-02 21:30方军虎
决策与信息·下旬刊 2017年2期
关键词:项目开发

方军虎

[摘 要] 软件项目开发的过程中,软件项目管理的成功与否是决定一个项目是否能够顺利高效率完成的重要保证,但是我国大部分的软件企业在进行项目管理时都存在着各种问题,对于软件开发项目管理以及流程进行相关梳理。

[关键词] 软件项目管理;项目开发;项目计划

[中图分类号] TP311 [文献标识码] A [文章编号] 1002-8129(2017)02-0123-03

一、管理目标

1.确保参与项目设计的全部人员都能够非常全面和系统的就项目内容以及项目关系人的需求进行了解。项目关系人包括:所有参与项目的公司内部人员以及公司外部成员(客户、合作公司等)。

2.保证项目能够按时、保质完成,并且就项目的成本进行合理控制。即必须保证项目管理的时间、成本和质量这3个基本元素的平衡。

3.目标:确保项目的功能能够达到客户的要求,确保项目设计的系统性和完善性以满足客户需求的变化;确保项目的开发速度;确保项目不同开发流程的成功并即时交付。

二、常见问题

(一)开发时间的估算

在项目规划阶段,必须依据公司的实际情况如技术实力、资金以及团队等等,就整体项目完成所需要耗费的时间进行合理的评估,并且具体到每一个模块开发所需要的时间。

模块分配和开发时间估算的步骤:

1.要求项目负责人在软件各模块得到合理的划分之后,就不同模块所需要的使用的开发时间进行评估和明确。

2.项目负责人必须就不同模块开发的时间和项目参与人员进行沟通,并且合理的安排不同模块的参与设计人员,并且允许技术人员依据自身的情况自行选择相应的模块设计任务,以提升其工作积极性。

3.模块以及相应的设计人员区分清楚之后,设计人员必须就模块开发所需耗费的时间继续评估。同时为了保证时间评估的合理性和准确性,模块设计人员必须就其负责模块的具体开发细节进行讨论和研究。

4.项目负责人必须就各模块设计人员上报的开发时间进行最后的评估、审核;就开发时间和项目评估时间及逆行比较。那些差异较大的,与人员探讨其中的缘由。就需要耗费较长时间的模块以及其他相关任务进行合理的分解,使其成为不同的独立子任务,并且保证这些子任务可以在一个工作日到三个工作日的时间内完成,以保证整体项目的开发不会受到各种不确定性因素的影响。

(二)代码评审

为了有效的保证项目能够按时、保质的完成,则必须保证代码评审环节的有效执行,否则就有可能导致软件在开发完成之后出现很多bug,进而影响整个项目的交付时间。由此在整个项目开启之前,就必须确立一套完善的代码编写以及达标审核规范。具体的实现方式用两个文档就设计工作人员具体的代表编写进行规范,以约束代码设计人员的编写规范;其次负责代码审核的工作人员必须依据具体的规范就所有的编码进行审核,并且保证所有代码的规范性。

(三)需求变更管理

需求变更是软件项目设计过程中经常会出现的不确定性因素之一,由此保证所有需求变更项目内容的完成,对于整体项目的成功也起到了决定性的作用。

需求变更管理的目标:

1.项目负责人以及相关人员必须及时的了解项目的需求并更内容。

2.变更处于有效的管理中。

3.尽量降低变更带来的风险。

(四)风险管理

风险是软件项目在设计的过程中不可避免的不确定性因素之一,具有绝对的客观性。由此,不同风险的发生都会给软件开发项目带来一定的影响,并且影响软件项目的交付时间、开发成本以及开发质量等等。通常情况下软件开发过程中可能遇到的风险以及具体的应对方式如下所述:

1.目标以及需求不明确

为了保证项目开发的效率,项目开发组必须在项目正式开始设计之前,采用合理、有效的手段和方法与相关项目的业务组成员以及负责人就项目的需求进行全面的树立和确立,并且依据项目开发组的实际情况,就所有的项目需求进行优先级排列,并取得业务部门的书面确认。不仅如此还必须在项目开发的过程中及时的和客户进行沟通,以保证客户的潜在需求能够得到充分挖掘,以保证软件开发完成之后能够使客户满意。

2.项目目标扩大以及需求变更

在多数情况下,项目需求变更可能都是由于客户自身的想法改变或者提出更多需求的情况下发生的。显然,对于项目组而言并不可能完全满足客户于任何时候提出的要求,否则必然会增加项目的开发成本。由此,项目负责人以及相关业务负责人,则必须明确的向客户表明我方的态度。当然,在具体提出拒绝之前,项目开发组也必须就为什么拒绝提出合理的解释,如果是可以在不增加成本和影响项目开发时间的情况下,可以尽可能的满足客户提出的新需求,否则,则必须及时向客户表明我们的态度,坚决拒绝。

3.代码质量风险

质量风险就是项目在开发过程中有可能出现的代码错误所带来的风险。由此在项目规划的过程中,就必须充分考虑到这一风险的存在,并且保留一定的时间就这一部分风险进行规避。尤其是对于时间要求相对紧张的项目而言,可能存在的代码风险可能会非常大。由此,为了规避这一风险,就必然需要让所有的设计人员都能够熟练的掌握项目的开发框架,并且能够依据系统设计文档进行设计。

4.人员技能和资源的不足

项目开发人员能力欠缺导致出现的项目质量问题也是经常遇到的风险之一。比如一个技能较熟练的代码开发人员完成一个具体模块的开发可能仅仅需要3个工作日,但一个新手可能就需要7-10天。因此,为了规避这一类风险,项目开发负责人在项目正式开始之前,就必须正对项目组所有工作人员的技能进行分析,并且就所有的项目模块的难以程度进行分析,并以此为依据合理的进行开发人员的工作安排。同时,针对攻克难度加大的模块,还必须设立具体的解决方案,保证在规定的时间内就这些难题进行解决。同时需要特别强调的是,该类风险必须在项目设计正式开始之前就进行分析、识别并且做出具体的应对方案,如此才能够保证后期开发工作的顺利。

5.缺乏良好的团队协作

软件项目的開发必须也团队开发成员的精诚合作为前提,否则就很难保证项目各个模块的有效集成,最后给整个项目的开发完成带来极大的压力。由此,在项目进行的过程中,就必须保证项目组成员之间建立起良好的沟通和协作意识,建立起团队利益高于个人利益的意识,如此才能够让整个团队具有绝对的向心力以及协作精神,并最终保证项目的保质和按时交付。

6.项目会议

项目会议是保证软件开发工作能够有效进行的前提性因素,保证项目会议的成功即为项目能够获成功的保障,否则就可能给项目的开发带来各种风险。

由此,为了规避此类风险,在会议进行的过程中,就必须保证会议氛围以及会议的效率。由此,对于项目负责人而言,就必须很好的控制整个会议的进程,并且注重引导以帮助所有的参会人员都能够明白整个项目目标以及各自的工作责任等等。比如多提一些开放式的问题。

会议记录很重要,把一些结论和有价值的内容记录下来,这些是本次会议的重要成果之一。会议记录可以完整的就整个会议的内容进行记录,并且能够让项目负责人以及项目组所有的开发人员在会议结束后查阅,以进一步保证会议内容的传到和理解。

会议要有结论。我们常在会议上听到有人说:“大家讨论了这么半天,结论呢?”没有结论的会议是没有意义的。

会议后的执行情况的反馈很重要。及时有效的反馈一方面可以帮助项目负责人就整个会议的效果进行评估;另一方面可以提升项目开发人员的参与积极性,以进一步保证会议的作用和效率。

[参考文献]

[1]软件工程监理的实施策略.信息技术与信息化,2004,(5).

[2]全文期刊论文.统一软件过程与地理信息系统的应用开发.遥感技术与应用,2003,18(6)

[责任编辑:曾 菡]

猜你喜欢
项目开发
生态型农业发展现状及发展对策研究
房地产开发企业项目经济管理的实践探讨
房地产开发企业项目经济管理的实践探讨
计算机S2SH框架的教学改革与实践
基于量本利分析法的房地产开发项目经济评价
房地产企业开发中法律风险的有效防范策略分析
关于低风速风电项目开发风险与对策的探讨
物业管理早期介入在房地产项目开发中的地位和作用分析
浅谈生产建设项目水土保持方案编制存在的问题及建议
房地产项目开发及经营管理探讨