Reverse engineering of the UML class diagram from c++ code in presence of weakly typed containers

P. Tonella, A. Potrich
{"title":"Reverse engineering of the UML class diagram from c++ code in presence of weakly typed containers","authors":"P. Tonella, A. Potrich","doi":"10.1109/ICSM.2001.972750","DOIUrl":null,"url":null,"abstract":"UML diagrams, and in particular the most frequently used one, the class diagram, represent a valuable source of information even after the delivery of the system, when it enters the maintenance phase. Several tools provide a reverse engineering engine to recover it from the code. In this paper an algorithm is proposed for the improvement of the accuracy of the UML class diagram extracted from the code. Specifically, important information about inter-class relations may be missed in a reverse engineered class diagram, when weakly typed containers, i.e., containers collecting objects whose type is the top of the inheritance hierarchy, are employed. In fact, the class of the contained objects is not directly known, and therefore no relation with it is apparent from the container declaration. The proposed approach was applied to several software components developed at CERN. Experimental results highlight that a substantial improvement is achieved when the container type information is refined with the inferred data. The number of relations otherwise missed is relevant and the connectivity of the associated class diagrams is radically different when containers are considered.","PeriodicalId":160032,"journal":{"name":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","volume":"24 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2001-11-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"34","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings IEEE International Conference on Software Maintenance. ICSM 2001","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICSM.2001.972750","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 34

Abstract

UML diagrams, and in particular the most frequently used one, the class diagram, represent a valuable source of information even after the delivery of the system, when it enters the maintenance phase. Several tools provide a reverse engineering engine to recover it from the code. In this paper an algorithm is proposed for the improvement of the accuracy of the UML class diagram extracted from the code. Specifically, important information about inter-class relations may be missed in a reverse engineered class diagram, when weakly typed containers, i.e., containers collecting objects whose type is the top of the inheritance hierarchy, are employed. In fact, the class of the contained objects is not directly known, and therefore no relation with it is apparent from the container declaration. The proposed approach was applied to several software components developed at CERN. Experimental results highlight that a substantial improvement is achieved when the container type information is refined with the inferred data. The number of relations otherwise missed is relevant and the connectivity of the associated class diagrams is radically different when containers are considered.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
在存在弱类型容器的情况下,对c++代码中的UML类图进行逆向工程
UML图,特别是最常用的类图,代表了一个有价值的信息源,即使在系统交付之后,当它进入维护阶段。有几个工具提供了反向工程引擎来从代码中恢复它。本文提出了一种提高从代码中提取的UML类图准确性的算法。特别是,当使用弱类型容器(即收集类型为继承层次结构顶部的对象的容器)时,逆向工程类图中可能会遗漏有关类间关系的重要信息。实际上,所包含对象的类并不是直接已知的,因此从容器声明中无法看出与它的关系。所提出的方法应用于欧洲核子研究中心开发的几个软件组件。实验结果表明,当使用推断数据对容器类型信息进行细化时,取得了显著的改进。当考虑容器时,否则错过的关系的数量是相关的,并且相关类图的连通性是完全不同的。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Automating language conversion: a case study (an extended abstract) A metric framework for the assessment of object-oriented systems Dynamic and static views of software evolution Multi-view architecture trend analysis for medical imaging Bayesian analysis of software cost and quality models
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1