|
摘要:随着软件工程技术的飞速发展,对于软件工程控制越来越受到人们的重视,本文通过对软件工程过程中所出现的问题进行分析,再根据笔者从事软件工程控制的实践经验,提出在对软件工程进行控制时需要遵循的原理,相信本文对软件工程控制的研究有着一定的指导作用。
关键词:软件工程;控制;体会
中图分类号:TP393 文献标识码:A 文章编号:1001-9599 (2011) 23-0000-01
Experience of the Software Engineering Control
Yan Feng
(China Aerospace Science&Industry Corp.,Guiyang 550005,China)
Abstract:With the rapid development of software engineering,software engineering for the control of more and more people's attention,this paper,the software engineering process to analyze the problems,according to the author in the control of software engineering experience,proposed control of software engineering principles to be followed,I believe this controlled study of software engineering has a guiding role.
Keywords:Software engineering;Control;Experience
一、前言
虽然近些年软件开发工具得到很大的发展而完善,可是在软件开发过程中还是显现出很多的问题,在这种背景下,软件开发者越来越重视软件开发,综合起来看,软件开发过程中主要有以下问题:
一是软件开发者对软件开发的成本和进度的估计不足。在实际的软件产品研发过程中,实际中所花费的成本在计划的基础上很可能高出一大截,而且在研发过程中由于某种突发情况,使得实际软件开发进度比预期中要往后拖延几个月甚至几年。这种现象产生后,对该软件开发团队的信誉是个极大的打击。当团队做出要敢抢进度和节约成本时,则必须要采取一些非常手段则会损害软件产品的质量和使用效果,这又使得用户不满。
二是用户对已经交付的软件系统由于为达到预期要求而不满意。由于软件开发人员在软件开发前,在与用户的交流沟通中并不能做到完全把握,只是对客户要求能做到模糊了解,在不能确切认识用户需要解决问题的情况下,就仓促上马忙于编写程序。这未建立在充分的信息交流和沟通基础上则会造成两者信息交流不流畅,使得软件开发人员闭门造车,而这生产出来的产品必然导致于用户的实际需要不符情况的发生。
三是软件产品因为多方面原因并不能够完全靠得住。在软件开发过程中,由于对软件可靠性和软件质量保证进行定量很难做到确切,并未全过程的使用审查、复审和测试软件来进行软件质量保证,这些问题都可以导致产品出现质量问题。
四是有些软件不能够进行维护。在软件开发过程中,很多开发出来的程序显示出来的错误并不能够进行改正或者改正的难度特别大,在实际应用上如果碰到新的硬件环境则这些程序不可能适用,只能根据用户新的需要另外再增加一些相对应的新功能。对于可重复使用这个软件目标是我们软件开发者积极寻求的目标,但在实际过程中依然再进行着重复开发类似或者是基本类似的软件。
五是软件成本逐年增加导致在计算机体系总成本中的比例越来越高。虽然这些年由于微电子技术的发展和软件生产自动化程度的提高,在计算机系统中硬件开发的成本逐渐呈现下降趋势,可是在软件开发过程中,依然需要花费大量的人力、物力和财力,并且这些年通货膨胀压力增大和软件开发规模扩充使得软件成本显现连年上升的趋势。
二、软件工程控制的基本原理分析
一是使用分阶段的生命周期理论严格管理。在对不成功的软件项目进行统计发现,其中有一半都是由于计划的不周详而造成的,因此以后在进行软件项目开发时,首先就应当建立起完善的计划,这一条正是在总结前人的经验教训中的出来的。在软件开发和维护的生命周期中,需要软件开发者完成各项性质各异的工作。所以为保证生命周期里软件能得到最大限度的利用,则必须把软件的生命周期分为若干个阶段,对这些分好的阶段再相应的切实可行计划来完成,在工作中必须严格按照计划对软件开发和维护的工作进行管理。一半来说,根据经验软件开发的生命周期例细分为项目概要计划,里程碑计划,项目控制计划,产品控制计划,验证计划,运行维护计划着六大阶段。所有的软件开发人员各司其职,严格按照计划进行管理软件开发和维护工作,决不能因为上级或者用户的影响而去改变预定的计划。
二是坚定的使用阶段评审对软件进行评价。先软件开发过程中,对软件的质量保证不能等到编码阶段结束后再进行,因为绝大多数的错误都是在编码之前就造成的,并且当错误发现得越晚,所需要付出的代价也就越大。所有要做到在每个阶段都进行严格的评审,使得我们可以尽早的发现软件开发过程中所犯的错误。
三是实行严格的产品控制。由于外部环境的变化,要求软件开发人员相应的改变用户需求,这只能够依靠科学的产品控制来顺应改变需求。当用户改变需求情况发生时,为了保持软件所属的各个配置成分一致性,则必须对产品实行严格的产品控制,而这其中最主要就是实行基准配置管理。经过阶段评审后的各个阶段产生的文档或程序代码。
四是采用现代程序设计技术。在软件工程概念提出之后,软件开发人员的精力就致力于研究各种新的程序设计技术。而结构程序设计技术的提出后,陆续被绝大多数人所接受,也进一步发展出各种结构分析(SA)与结构设计(SD)技术。采用先进的技术既可提高软件开发的效率,又可提高软件维护的效率。
五是结果应当能够进行清楚的审查。由于对于软件开发的工作进展可见性差,不能够准确的进行度量,这就使得软件产品的开发过程比一般产品的开发过程更难于评价和管理,为此,为了加强对软件开发的管理,则由必要根据软件开发项目的总目标及完成期限要求,科学性的规定开发组织内成员的各项责任和所生产出来的产品标准,从而使得所得到的结果能够清楚地接受审查。
六是软件开发小组人员保持精干。由于软件开发小组成员的素质水平直接影响着软件产品质量和软件产品的开发效率,为此在对软件开发小组人员的挑选上,一定要把那些素质好的选进来,当然也并不是人员越多越好,因为随着开发小组人员数目的增加,因为交流情况讨论问题而造成的通信开销也急剧增加。所以要进行总体控制。
参考文献:
[1]李友仁.软件工程与软件质量分析[M].电子工业出版社,1981
[2]张长森,王辉,雒芬.软件工程课程教学体系研究[J].理工高教研究,2005,1
[作者简介]严枫(1985.10-),助理工程师,研究方向:软件质量保证。单位:航天科工集团0 1基地302研究所。
转载注明来源:http://www.ybaotk.com |
上一篇:浅谈服务器端软件安全管理下一篇:软件测试的策略与测试方法应用探析
|