Experiences from introducing UML-based development in a large safety-critical project

Experiences from introducing UML-based development in a large safety-critical project
复制标题

在大型安全关键项目中引入基于 UML 的开发的经验

DOI:
--
复制
发表时间:
2006
影响因子:
4.1
通讯作者:
Hanne Kristin Thorsen
Hanne Kristin Thorsen
中科院分区:
计算机科学2区
文献类型:
--
作者:
Bente Anda;K. Hansen;Ingolf Gullesen;Hanne Kristin Thorsen

文献摘要

被引文献

相似文献

统一建模语言(UML)以及基于UML的开发方法已经成为行业事实上的标准,并且有很多观点声称使用基于UML的方法对面向对象系统进行建模具有积极效果。然而,对于在大型工业项目中基于UML的开发,并没有相关的实证评估报告。本文报告了在一家拥有12万名员工的全球化公司——ABB所进行的一个案例研究,该研究旨在确定在大型项目中引入基于UML的开发时所带来的直接益处、遇到的困难以及其原因。ABB决定在公司的系统开发项目中使用基于UML的开发方法,作为努力使其能够根据IEC 61508安全标准进行认证的一部分。一种基于UML的开发方法首先在一个有230名系统开发人员、测试人员和管理人员参与的大型国际项目中得到应用。该项目的目标是构建一个新版本的安全关键型过程控制系统。大部分软件是嵌入式的。项目成员大多是UML的新手。对在瑞典和挪威工作地点的16名系统开发人员和项目经理进行了访谈,以确定引入基于UML的开发在多大程度上改进了他们的开发流程。受访者在从需求到代码的可追溯性、代码设计、测试用例的开发以及沟通和文档记录方面都体验到了改进。因此,这些结果支持了文献中关于通过使用UML可能获得改进的观点。然而,结果也表明,基于UML的开发的积极效果由于以下原因而降低:(1)将遗留代码逆向工程转换为UML是不可行的;(2)根据物理单元而非功能将需求分配给开发团队;(3)培训没有特别针对该项目进行调整,并且对于不直接参与基于UML开发的项目成员来说培训费用过高;(4)所选择的建模工具的功能不符合项目的需求。这项研究的结果应该有助于其他采用UML的人员有更现实的期望,并为做出项目管理决策提供更好的依据。
UML and UML-based development methods have become de facto standards in industry, and there are many claims for the positive effects of modelling object-oriented systems using methods based on UML. However, there is no reported empirical evaluation of UML-based development in large, industrial projects. This paper reports a case study in ABB, a global company with 120,000 employees, conducted to identify immediate benefits as well as difficulties and their causes when introducing UML-based development in large projects. ABB decided to use UML-based development in the company’s system development projects as part of an effort to enable certification according to the IEC 61508 safety standard. A UML-based development method was first applied in a large, international project with 230 system developers, testers and managers. The goal of the project was to build a new version of a safety-critical process control system. Most of the software was embedded. The project members were mostly newcomers to the use of UML. Interviews with 16 system developers and project managers at their sites in Sweden and Norway were conducted to identify the extent to which the introduction of UML-based development had improved their development process. The interviewees had experienced improvements with traceability from requirements to code, design of the code, and development of test cases as well as in communication and documentation. These results thus support claims in the literature regarding improvements that may be obtained through the use of UML. However, the results also show that the positive effects of UML-based development were reduced due to (1) legacy code that it was not feasible to reverse engineer into UML, (2) the distribution of requirements to development teams based on physical units and not on functionality, (3) training that was not particularly adapted to this project and considered too expensive to give to project members not directly involved in development with UML, and (4) a choice of modelling tools with functionality that was not in accordance with the needs of the project. The results from this study should be useful in enabling other UML adopters to have more realistic expectations and a better basis for making project management decisions.