打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
浅谈软件工程、软件工程化、软件过程改进、软件研制体系、GJB5000的关系

每个实施和推广GJB5000的人,几乎总是和软件工程、软件工程化、软件过程改进、软件研制体系、GJB5000这些概念打交道,或者是写一篇学术论文,或者是某型号项目的研制大纲或总结报告,或者是年度过程改进计划或报告。如果对这些概念没有一个清楚的认识,也许你就不能在正确的场合使用它。

这里浅谈下它们之间的关系。

  • 软件工程

这些概念当中,软件工程无疑是出现最早的词汇。由于“软件危机”的产生,迫使人们不得不从建筑工程等领域借鉴经验,加强软件开发过程、方法、技术的研究和管理,软件工程由此诞生。

软件工程三要素是方法、工具和过程。

  • 软件工程化

软件工程化即将工程化应用于软件过程,也就是解决软件工程落地的问题。在型号产品研制要求中,经常会有“软件工程化”的要求,就是希望型号软件产品的开发能够按照软件工程的要求,使用先进的方法、工具和高效的过程进行开发,以确保软件具有较高的质量水平。软件工程化有过程标准化、实现自动化的要求(参见《什么才是“软件工程化”?》)。

  • GJB5000

GJB5000表面上是一个评价组织军用软件研制能力成熟度的标准,实际上它也为了解决军用软件开发存在的交付滞后、质量不高的问题而产生的。2003年发布实施的GJB5000照搬了SW-CMM,就是希望GJB5000能像CMM那样解决军用软件交付的问题。这和软件工程解决软件危机可谓是异曲同工。早期的GJB5000或者CMM被认为是偏“过程”管理的,但其一直在具体实践中强调了工具的使用,现在更是融合了敏捷方法等多种先进的方法(GJB5000B的实施指南中专门有敏捷开发、重用开发、模型驱动开发等方法基于GJB5000B的应用),所以,推进GJB5000工作,实际上就是在提高组织的软件工程能力。

  • 软件研制体系

各个组织的软件研制体系实际上就是GJB5000标准落地的产物,它结合组织的实际情况,将适合自己的方法、工具和过程具化下来,形成具体的要求和流程,规范组织的软件开发过程,提高软件产品开发的效率和质量。组织的软件开发如果能够按照符合GJB5000标准的软件研制体系进行,也就是实现了软件工程化。

  • 软件过程改进

组织的软件过程改进,实际上就是对软件研制体系的改进。组织通过内部评估、外部评价,遇到问题的原因分析,收集到过程改进建议以及吸收先进的经验,引进先进的技术和工具,不断改进软件研制体系,不断提高开发效率和质量。

所以,在写学术论文的时候,频繁使用的是“软件工程”;在写研制大纲或总结时,频繁使用的是“软件工程化”;在写过程改进计划和报告时,频繁使用的是“GJB5000”、“软件研制体系”、“软件过程改进”。

这正是:

几个术语易混淆,辨明清楚方是好

这里浅谈为引玉,期待高手来指导

作者简介:王小双,长期从事GJB5000推广、实施、评价、改进的工作,创建《软件工程之思》微信公众号,一直在《软件工程之思》分享GJB5000、CMMI、软件工程的知识和感悟。现致力于GJB5000咨询以及软件过程改进、软件工程能力提升的研究工作。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
XX有限公司董事会权责清单、授权清单及经理层权责清单(参考)
这100个顶级思维,让你快速和同龄人拉开差距
这6种人,人品贵重,请深交一辈子!
人与人之间最长久的关系(此文无价)
为人处事的关门过节(4)
最高明的处世态度:遇人藏住事,遇事藏住气,遇乱藏住身
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服