Automatic detection of design problems in object-oriented reengineering

Oliver Ciupke
{"title":"Automatic detection of design problems in object-oriented reengineering","authors":"Oliver Ciupke","doi":"10.1109/TOOLS.1999.787532","DOIUrl":null,"url":null,"abstract":"The evolution of software systems over many years often leads to unnecessarily complex and inflexible designs which in turn lead to a huge amount of effort for enhancements and maintenance. Thus, the reengineering of object oriented software becomes more and more important as the number, age and size of such legacy systems grow. A key issue during reengineering is the identification and location of design problems which prevent the efficient further development of a system. Up to now this problem area has not been sufficiently supported, either by methods, or by tools. We present a technique for analyzing legacy code, specifying frequent design problems as queries and locating the occurrences of these problems in a model derived from source code. We present our experiences with a tool set which we implemented to support this task by automatically analyzing a given system and detecting the specified problems. We applied our tools to check violations of a number of well known design rules in existing source code taken from several case studies, both from industrial and academic fields. These experiments showed that the task of problem detection in reengineering can be automated to a large degree, and that the technique presented can be efficiently applied to real world code.","PeriodicalId":147966,"journal":{"name":"Proceedings of Technology of Object-Oriented Languages and Systems - TOOLS 30 (Cat. No.PR00278)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1999-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"126","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of Technology of Object-Oriented Languages and Systems - TOOLS 30 (Cat. No.PR00278)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/TOOLS.1999.787532","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 126

Abstract

The evolution of software systems over many years often leads to unnecessarily complex and inflexible designs which in turn lead to a huge amount of effort for enhancements and maintenance. Thus, the reengineering of object oriented software becomes more and more important as the number, age and size of such legacy systems grow. A key issue during reengineering is the identification and location of design problems which prevent the efficient further development of a system. Up to now this problem area has not been sufficiently supported, either by methods, or by tools. We present a technique for analyzing legacy code, specifying frequent design problems as queries and locating the occurrences of these problems in a model derived from source code. We present our experiences with a tool set which we implemented to support this task by automatically analyzing a given system and detecting the specified problems. We applied our tools to check violations of a number of well known design rules in existing source code taken from several case studies, both from industrial and academic fields. These experiments showed that the task of problem detection in reengineering can be automated to a large degree, and that the technique presented can be efficiently applied to real world code.
面向对象再工程中设计问题的自动检测
多年来软件系统的发展经常导致不必要的复杂和不灵活的设计,这反过来又导致了大量的增强和维护工作。因此,随着这些遗留系统的数量、年龄和规模的增长,面向对象软件的再工程变得越来越重要。再造过程中的一个关键问题是识别和定位阻碍系统进一步有效开发的设计问题。到目前为止,这个问题领域还没有得到足够的支持,无论是通过方法还是通过工具。我们提出了一种技术,用于分析遗留代码,将常见的设计问题指定为查询,并在源自源代码的模型中定位这些问题的出现情况。我们将介绍我们使用工具集的经验,通过自动分析给定的系统并检测指定的问题,我们实现了该工具集来支持此任务。我们应用我们的工具来检查从工业和学术领域的几个案例研究中获得的现有源代码中违反许多众所周知的设计规则的情况。这些实验表明,重构中的问题检测任务可以在很大程度上实现自动化,并且所提出的技术可以有效地应用于现实世界的代码。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信