首页> 外文会议>IEEE International Symposium on Software Reliability Engineering >Benefits and Challenges of Model-Based Software Engineering: Lessons Learned Based on Qualitative and Quantitative Findings
【24h】

Benefits and Challenges of Model-Based Software Engineering: Lessons Learned Based on Qualitative and Quantitative Findings

机译:基于模型的软件工程的好处和挑战:基于定性和定量发现的经验教训

获取原文
获取外文期刊封面目录资料

摘要

Even though Model-based Software Engineering (MBSwE) techniques and Autogenerated Code (AGC) have been increasingly used to produce complex software systems, there is only anecdotal knowledge about the state-of-the practice. Furthermore, there is a lack of empirical studies that explore the potential quality improvements due to the use of these techniques. This paper presents in-depth qualitative findings about development and Software Assurance (SWA) practices and detailed quantitative analysis of software bug reports of a NASA mission that used MBSwE and AGC. The mission's flight software is a combination of handwritten code and AGC developed by two different approaches: one based on state chart models (AGC-M) and another on specification dictionaries (AGC-D). The empirical analysis of fault proneness is based on 380 closed bug reports created by software developers. Our main findings include: (1) MBSwE and AGC provide some benefits, but also impose challenges. (2) SWA done only at a model level is not sufficient. AGC code should also be tested and the models and AGC should always be kept in-sync. AGC must not be changed manually. (3) Fixes made to address an individual bug report were spread both across multiple modules and across multiple files. On average, for each bug report 1.4 modules, that is, 3.4 files were fixed. (4) Most bug reports led to changes in more than one type of file. The majority of changes to auto-generated source code files were made in conjunction to changes in either file with state chart models or XML files derived from dictionaries. (5) For newly developed files, AGC-M and handwritten code were of similar quality, while AGC-D files were the least fault prone.
机译:尽管基于模型的软件工程(MBSWE)技术和自动化的代码(AGC)越来越多地用于生产复杂的软件系统,但只有关于惯例的轶事知识。此外,由于使用这些技术,缺乏探讨潜在的质量改进。本文介绍了有关开发和软件保障(SWA)实践的深入定性结果,以及对使用MBSWE和AGC的NASA使命的软件错误报告的详细定量分析。特派团的飞行软件是由两种不同方法开发的手写代码和AGC的组合:一个基于状态图模型(AGC-M)和另一种规范词典(AGC-D)。故障恒展的实证分析基于软件开发人员创建的380个封闭错误报告。我们的主要发现包括:(1)MBSWE和AGC提供了一些好处,但也征收挑战。 (2)仅在模型级别完成的SWA不足。 AGC代码也应进行测试,并且型号和AGC应始终保持同步。 AGC不能手动更改。 (3)在多个模块中和多个文件中遍布各个错误报告的修复。平均而言,对于每个错误报告1.4模块,即3.4文件已修复。 (4)大多数错误报告导致多种类型的文件中的更改。与自动生成的源代码文件的大部分更改都结合在一起,以包含源自词典的状态图模型或XML文件的文件。 (5)对于新开发的文件,AGC-M和手写代码具有相似的质量,而AGC-D文件容易发生最小。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号