摘要 介绍了软件开发项目管理所涉及的主要内容及管理过程,从管理的角度提出了软件项目管理过程中应注意的诸多方面及改进措施。
摘要:介绍了软件开发项目管理所涉及的主要内容及管理过程,从管理的角度提出了软件项目管理过程中应注意的诸多方面及改进措施。
关键词:软件项目管理;质量管理;风险管理
软件开发项目管理的目的是保证项目能够在管理者的控制之下,按照既定的成本、进度、质量对人员、产品、开发过程进行管理的活动,以便软件项目能够按时按期、保质保量完成并交付用户使用。
与之前相比,现代软件开发有其自身的特殊性。①当代软件开发主要是面向对象的技术,面向对象的系统是由高度聚合、分散耦合的分块组织在一起,这就使得现代软件能够以更小的步骤和单元进行开发。②现代软件系统的复杂性使开发过程难以控制和预见,如果没有好的管理方法,其最终交付的软件是难以保证质量的。所以,为了克服软件开发中遇到的诸多问题,就需要从管理的角度出发,采取切实可行的措施,综合的运用各种方法和工具,以保证软件开发的顺利完成。
1软件开发项目管理的内容
软件开发项目管理主要包括以下几方面内容:软件开发人员组织与管理、软件开发进度计划、软件质量控制、风险管理、团队管理等。开发人员的组织与管理主要关注于项目组人员的构成与优化;软件开发项目计划主要包含工作量、成本、开发时间的估计,并根据估计值制定和调整项目组的工作;软件质量控制是保证产品和服务能够充分满足消费者要求而进行的有计划、有目的、有组织的活动;开发过程风险管理需预测未来可能出现的各种危害到软件产品质量的潜在因素并采取预防措施。
1.1开发人员组织与管理
软件开发人员是现代软件开发项目中最重要的资料,开发人员组织是否得当,对开发人员的配置是否合理,这些都是直接决定一款软件是否成功的最重要因素。
软件开发工作开始时,根据项目的工作量、项目所需要的专业技能,参考项目中各个开发人员的实际专业技能、能力、经验,然后组织一个高效的开发小组,开发小组一般由产品经理、开发经理、开发团队、测试部门、文档部门组成。
1.2软件开发进度计划
软件开发项目流程主要包含:需求调研、概要设计、详细设计、编码、测试、交互,所以软件开发进度计划就是要对各个阶段做详细的计划说明,对软件开发工作进行先后排序,规定各个活动的起止时间,并分配资源。这是一项基础性的工作,是跟踪、监督、评审计划执行情况的依据。
1.3软件质量控制
参考ISO9126所提供的软件质量特性:功能性、可靠性、可用性、效率、可维护性、可移植性,有了这样一个可参考的质量特性后,就可以考察已开发的软件是否达到相关质量标准。软件质量控制的另外一项任务是找出消除不合格绩效的方法。
1.4风险管理
软件项目管理者应评估项目中的风险,制定相应的应对策略。主要包含以下几个方面的内容:制定风险计划,识别风险,制定应对策略,执行应对策略,总的目标是降低风险对软件项目的影响。
1.5团队管理
高效的开发团队是保证软件按期、保质保量完成的重要条件,团队组建完毕后,应根据工作的实际需要配备具体的工作人员,为每一位工作人员分配具体的任务。团队中的角色按阶段可分为项目经理、系统分析人员、软件设计人员、程序员、测试人员、实施人员、配置管理人员,每一个角色负责一项任务,角色之间相互依赖,在具体的工作中,可以让一个人担任多个角色,也可根据软件开发不同的阶段,随时调试人员的具体角色,灵活性和沟通的高效性提高了软件开发的速度。
2软件项目过程管理
软件项目过程管理主要包含7个阶段:可行性分析、需求调研、设计阶段、编码阶段、测试阶段、维护阶段。
2.1可行性分析
这一阶段的主要任务是确定是否能够开发和是否值得开发,主要考虑的方面有技术的可行性、经济可行性,如果满足以上2个方面,可进行下一步的工作。
2.2需求调研
需求调研是软件开发工作非常重要的一个环节,在这一阶段要全面、准确的了解客户的需求,与客户进行充分的沟通,尽量全面、完整的确定软件的设计方案,降低后期修改的内容,以便降低开发过程中的风险。
2.3设计阶段
到此阶段,任务已被详细的分解,总体的设计方案和技术所需框架已经确立,此时的只要任务就是对特定模块进行细化设计,当设计完成时,需要安排设计方案的评审工作,只有设计评审完全符合要求后,才可以进行下一步的工作。
2.4编码阶段
此时应根据编码小组组成人员的技术状况,具体到个人进行编码的工作,根据阶段性计划的安排工作,当一个阶段结束时,应组织人员对编码工作进行审核工作,只有编码确定无误,就可以进行下一阶段的任务。当编码出现错误时,需安排相应的工作人员进行重新编码,并要求按时按量的完成,以免影响下一阶段工作的进度。
2.5测试阶段
软件测试主要包含单元的测试、集成的测试、系统的测试、用户测试、功能的测试、性能的测试等多种测试,每一个测试都需安排具体的人员,测试工作进行之前,应编写具体的测试计划、测试标准,如果编码测试未通过、或者未达标,测试应及时的安排编码工作人员及时的进行改进工作,自后再进行回归测试,以保证软件系统的错误降到最低。
2.6维护阶段
软件系统通过测试后,就可以上线运行,此时转入维护阶段,维护阶段的主要工作就是纠正上线运行后的错误,或者无法满足实际需求的地方。因为实际的需求是不断发展的,比如软件功能的添加、修改或运行中出现的无措。由于现在的编码工作是面对对象的语言编写完成的,在后期维护阶段并不需要太多的工作人员,只需少部分工作人员就可维护软件的正常运行,所以软件维护的工作量已大大的减轻,但需要维护人员写好维护日志,其可以作为一个参考,以便在以后的软件编写工作中避免此类的错误,大大的提高软件的运行效率。
3结束语
现代计算机技术已经发展到非常高的水平,各行各业对软件性能的要求也越来越高,这也就对软件开发过程中的管理工作提出了更高的要求。尽管目前我国在软件项目管理领域取得了长足的进步,但我们无法回避的一个现实是我国目前的软件项目管理水平还有许多要改进之处,提高软件开发管理水平、规范软件开发管理工作、学习国外在软件开发工作中的先进经验是当前我们必须要做的工作。只有在管理方法上不断的改进和提高,我们才能改法出更高水平、更高可靠性的软件产品。
[参考文献]
[1]姜鸾.软件项目管理最新研究综述[J].项目管理技术,2011,9(10):35~38.
[2]池仁勇.项目管理(第二版)[M].北京:清华大学出版社,2009.
转载请注明来自:http://www.lunwenhr.com/hrlwfw/hrkjlw/9626.html
文章TAG标签:项目管理论文