关于伟创 伟创新闻 伟创案例 网站套餐 联系方式
只做吸引客户的精品站!

软件工程的基本原理

软件开发 / 2012/10/10 8:49:45
[核心提示] 自从1968年正式提出并使用“软件工程”这个术语以来,研究软件工程的专家学者陆续提出了 100多条关于软件工程的准则。Boehm综合这些学者们的意见并总结了公司多年开发软件的经验,于1983年在一篇论文中提出了软件工程的七条基本原理。
软件工程的基本原理
  自从1968年正式提出并使用“软件工程”这个术语以来,研究软件工程的专家学者陆续提出了 100多条关于软件工程的准则。Boehm综合这些学者们的意见并总结了公司多年开发软件的经验,于1983年在一篇论文中提出了软件工程的七条基本原理。他认为这七条原理是确保软件产品质量和开发效率的原理的最小集合。这七条原理是互相独立的,其中任意六条原理的组合都不能代替另一条原理,因此,它们是缺一不可的最小集合。这七条原理又是相当完备的,人们虽然不能用数学方法严格证明它们是一个完备的集合。但是,可以证明在此之前已经提出的100多条软件工程原理都可以由这七条原理的任意组合蕴含或派生。
  1.用分阶段的生存周期计划严格管理有人经统计发现,在不成功的软件项目中有一半左右是由于计划不周造成的,可见把建立完善的计划作为第一条基本原理是吸取了前人的教训而提出的。
  在软件开发与维护的漫长生存周期中,需要完成许多性质各异的工作。这条基本原理意味着,应该把软件生存周期划分成若干阶段,并相应地制定出切实可行的计划,然后严格按照计划对软件的开发与维护工作进行管理。Boehm认为,在软件的整个生存周期中应该制定并严格执行六类计划:项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划、运行维护计划。
  不同层次的管理人员都必须严格按照计划各尽其职地管理软件开发与维护工作,绝不能受客户或上级人员的影响而擅自背离预定计划。
  坚持进行阶段评审当时己经认识到,软件的质量保证工作不能等到编码阶段结束之后再进行。至少有两个理由:第一,大部分错误是在编码之前造成的,根据Boehm等人的统计,设计错误占软件错误的63%,编码错误仅占37%;第二,错误发现与改正得越晚,所需付出的代价也越高.
  因此,在每个阶段都进行严格的评审,以便尽早发现在软件开发过程中所犯的错误,是一条必须遵循的重要原则。
  2.实现严格的产品控制在软件开发过程中不应随意改变需求,因为改变一项需求往往需要付出较高的代价。但是,在软件开发过程中改变需求又是难免的。由于外部环境的变化,相应地改变用户需求是一种客观需要,显然不能硬性禁止客户提出改变需求的要求,而只能依靠科学的产品控制技术来顺应这种要求。当改变需求时,为了保证软件各个配置成分的一致性,必须实现严格的产品控制,其中主要是实行基准配置管理。所谓基准配置又称基线配置,它们是经过阶段评审后的软件配置成分<各个阶段产生的文档或程序代码〉。基准配置管理也称为变动控制:一切有关修改软件的建议,特别是涉及对基准配置的修改建议,都必须按照严格的规程进行评审,获得批准以后才能实3.采用现代程序设计技术从提出软件工程的概念开始,人们一直把主要精力用于研究各种新的程序设计技术。20世纪60年代末提出结构程序设计技术,已经成为当时绝大多数人公认的先进的程序设计技术。以后又进一步发展出各种结构分析与结构设计技术。20世纪90年代中期,面向对象技术已成为事实上的新开发标准。实践表明,采用先进的技术既可提高软件开发的效率,又可提高软件维护的效率。
  4.结果应能清楚地审查软件产品不同于一般的物理产品,它是看不见摸不着的逻辑产品。软件开发人员的工作进展情况可见性差,难以准确度量,从而使得软件产品的开发过程比一般产品的开发过程更难以评价和管理。为了提高软件开发过程的可见性,更好地进行管理,应该根据软件开发项目的总目标及完成期限,规定开发组织的责任和产品标准,从而使得所得到的结果能够清楚地审查。
  承认不断改进软件工程实践的必要性遵循上述4条基本原理,就能够按照当代软件工程基本原理实行软件的工程化生产。但是,仅有上述六条原理并不能保证软件开发与维护的过程能赶上时代前进的步伐,能跟上技术的不断进步。因此,Boehm提出把承认不断改进软件工程实践的必要性作为软件工程的第7条基本原理。按照这条原理,不仅要积极主动地采纳新的软件技术,而且要注意不断总结经验。例如,收集进度和资源耗费数据,收集出错类型和问题报告数据等。这些数据不仅可以用来评价新的软件技术的效果,而且可以用来指明必须着重开发的软件工具和应该优先研究的技术。
尊重作者原创 除非特别声明,伟创科技所有均为伟创原创报道,转载请注明原文链接。
原文地址:http://www.lywhy.com/SoftWare/View.asp?id=62  所属类别:软件开发
相关内容
洛阳软件开发需要多少钱? 2019/12/6
10种不同类型的软件开发 2019/11/5
如何更好的完成软件开发的项目 2018/9/18
伟创技术-婷婷:身为.NET程序员的断想 2017/2/18
【洛阳网络公司技术分享】身为.NET程序员的断想 2016/1/28
猜你喜欢
小公司更需要有保障的网络公司 2014/5/22
互联网并不是包治百病的灵丹妙药 2017/8/15
广告创意设计类型之平面广告 2012/9/27
ASP.Net 连接SAP通用类(来自智遥工作流软件) 2013/3/9
贺伟创科技签约河南想象力信息科技网站建设项目 2014/3/22
7步提清设计需求,明明白白我的心 2017/4/30
网络营销特点 2012/9/24
C++中的内存对齐 2013/3/2
伟创科技今天介绍一下是当年破解 Wii 的那个家伙“Johnny” 2014/2/22
白名单是互联网安全技术的翅膀 2017/2/23
伟创热点
关于我们
公司简介
我们的优势
企业文化
公司愿景
加入伟创
伟创官方博客
金牌项目
网站建设
网站优化
软件开发
整合设计
网站运营
网站套餐
基础型网站
展示型网站
商务型网站
购物、商店型网站
FLASH动画型网站
行业、门户型网站
帮助中心
客户中心
公司SEO培训
seo顾问服务
支付方式
联系我们
我们的位置
关注我们
新浪微博
腾讯微博
人人小站
QQ空间推荐
花瓣网
建站百科全书
Copyright 2007-2012 LYWHY.Inc Sitemap 豫ICP备12012069号-1
Links
洛阳百科
建站百科