聊一聊鹰酱的软件工程化标准

上世纪七十年代末,随着软件需求和软件规模的急剧增长,当时的软件开发模式已不能满足实际需求,并且软件维护工作也变得越来越令人头疼,甚至有些软件到了无法维护的地步,也就是出现了“软件危机”。而要解决软件危机,仅靠技术的进步是无法实现的,需要有先进的管理方法,这也是软件工程学 形成的起因,是顺应软件行业发展的必然结果。随着软件工程学的大力发展,软件需求方、开发方和用户方等都深切感到了在软件工程领域内制定各种标准的迫切性,于是软件工程标准应运而生。

美国最先进的技术首先会应用到军事领域,软件工程标准也是一样,70年代前后美军就开始陆续制定军用软件工程标准。

DOD-STD-2167A《防御(武器)系统软件开发》(1988.2~1994.12)是美国国防部于80年代末期组织政府部门、学术界及应用领域中的人才共同研究制定的,是这一时期美国标准化工作的一项重要成果。美国防部规定,凡国防部关键任务计算机资源项目一律要遵守该标准,足见其位置之重要。这是一个基于瀑布模型与文档驱动的开发标准,目的是为了提高软件在需求、开发和维护阶段的质量,适应软件配置项CSCI的开发。

而随着该标准在美军软件开发中的应用和实践,由于瀑布模型是一个僵硬固化、不允许在过程中发生变化的模型,忽略了软件开发活动复杂现实,软件开发活动是一个高度动态、需要非常强的适应性、需要不断根据反馈进行调整的过程,由于软件开发一般而言都有一个比较长的周期,使用瀑布模型时,由于客户无法提前确切知道他们所想要的一切东西,需求变更的问题尤其无法避免。而且,客户只有在最终阶段,才能够看到和使用真实的项目成果,这时如果发现实际产物和自己所需差别很大,则可能带来巨大的损失。美国国防部发现遵循瀑布方法和2167A标准给他们在软件开发上带来了许多失败的项目。

MIL-STD-498《军用软件开发标准》(1994.12~1998.6)是美国国防部为了解决DOD-STD-2167A标准无法适应现代软件开发方法,如面向对象和快速原型开发技术等方面的缺陷,而制定的一个软件开发标准,具有增量式和进化式软件开发方法的特点,认识到软件开发是一个学习和实践的过程,并且开发人员要全程与用户紧密合作,同时强调信息的记录而降低对文档格式的要求,并且加强与系统工程的联系,DOD-STD-2167A认为软件是嵌入到硬件系统中,软件工程师不负责系统级工作,而MIL-STD-498强调将二者合二为一。

ISO12207(1995.8)是一个商业标准,描述了完整的软件全寿命周期中主要阶段的处理及其之间的接口和管理各阶段相互作用的关系,提供软件全过程管理的框架结构,是一个高层次的软件开发标准。MIL-STD-498在软件全寿命周期管理中没有定义软件获取、供应、操作、维护和培训等过程的处理,而ISO12207覆盖了软件全寿命周期的管理;并且在需求定义方面也更加通用;ISO12207描述的是软件全寿命周期的体系结构而不是具体如何实现和执行各种具体的寿命周期活动;在应用层面上,不是具体指导程序员如何开发软件,而是在更高层次对软件活动进行规范化,也更通用,可根据不同需求进行裁剪。

IEEE/EIAI12007《12207美国工业实现标准》(1998.8)是对ISO12207的标准化和规范化,促进在整个软件行业范围内采用ISO12207来开发商业和军用软件,更侧重于行业标准,与美国其他标准有更好的协调性,在质量管理和保证上与ISO9000一致。

综上所述,美军的软件工程化标准的演变过程可见,随着软件的复杂程度逐渐增加,人们对软件工程化的认识水平也不断提高,原有标准不能适应软件工程化的实际需求,则会带来标准的迭代和更新,而标准的迭代又进一步促进了软件的快速发展,软件工程化标准也从具体的开发指南演变成了行业的标准规范。

他山之石,可以攻玉!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gjb_software

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值