11th Working Conference on Reverse Engineering最新文献

筛选
英文 中文
Aspect mining through the formal concept analysis of execution traces 方面挖掘通过形式化的概念分析执行轨迹
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.13
P. Tonella, M. Ceccato
{"title":"Aspect mining through the formal concept analysis of execution traces","authors":"P. Tonella, M. Ceccato","doi":"10.1109/WCRE.2004.13","DOIUrl":"https://doi.org/10.1109/WCRE.2004.13","url":null,"abstract":"The presence of crosscutting concerns, i.e., functionalities that are not assigned to a single modular unit in the implementation, is one of the major problems in software understanding and evolution. In fact, they are hard to locate (scattering) and may give rise to multiple ripple effects (tangling). Aspect oriented programming offers mechanisms to factor them out into a modular unit, called an aspect. Aspect identification in existing code is supported by means of dynamic code analysis. Execution traces are generated for the use cases that exercise the main functionalities of the given application. The relationship between execution traces and executed computational units (class methods) is subjected to concept analysis. In the resulting lattice, potential aspects are detected by determining the use-case specific concepts and examining their specific computational units. When these come from multiple modules (classes) which contribute to multiple use-cases, a candidate aspect is recognized.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115505558","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 218
Loop squashing transformations for amorphous slicing 非晶切片的循环压缩变换
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.26
Lin Hu, M. Harman, R. Hierons, D. Binkley
{"title":"Loop squashing transformations for amorphous slicing","authors":"Lin Hu, M. Harman, R. Hierons, D. Binkley","doi":"10.1109/WCRE.2004.26","DOIUrl":"https://doi.org/10.1109/WCRE.2004.26","url":null,"abstract":"Program slicing is a source code extraction technique that can be used to support reverse engineering by automatically extracting executable subprograms that preserve some aspect of the original program's semantics. Although minimal slices are not generally computable, safe approximate algorithms can be used to good effect. However, the precision of such slicing algorithms is a major factor in determining the value of slicing for reverse engineering. Amorphous slicing has been proposed as a way of reducing the size of a slice. Amorphous slices preserve the aspect of semantic interest, but not the syntax that denotes it, making them generally smaller than their syntactically restricted counterparts. Amorphous slicing is suitable for many reverse engineering applications, since reverse engineering typically abandons the existing syntax to facilitate structural improvements. Previous work on amorphous slicing has not attempted to exploit its potential to apply loop-squashing transformations. This paper presents an algorithm for amorphous slicing of loops, which identifies induction variables, transformation rule templates and iteration-determining compile-time expressions. The algorithm uses these to squash certain loops into conditional assignments. The paper also presents an inductive proof of the rule templates and illustrates the application of the algorithm with a detailed example of loop squashing.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117066273","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 16
Fingerprinting design patterns 指纹设计图案
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.21
Yann-Gaël Guéhéneuc, H. Sahraoui, Farouk Zaidi
{"title":"Fingerprinting design patterns","authors":"Yann-Gaël Guéhéneuc, H. Sahraoui, Farouk Zaidi","doi":"10.1109/WCRE.2004.21","DOIUrl":"https://doi.org/10.1109/WCRE.2004.21","url":null,"abstract":"Design patterns describe good solutions to common and recurring problems in program design. The solutions are design motifs which software engineers imitate and introduce in the architecture of their program. It is important to identify the design motifs used in a program architecture to understand solved design problems and to make informed changes to the program. The identification of micro-architectures similar to design motifs is difficult because of the large search space, i.e., the many possible combinations of classes. We propose an experimental study of classes playing roles in design motifs using metrics and a machine learning algorithm to fingerprint design motifs roles. Fingerprints are sets of metric values characterising classes playing a given role. We devise fingerprints experimentally using a repository of micro-architectures similar to design motifs. We show that fingerprints help in reducing the search space of micro-architectures similar to design motifs efficiently using the Composite design motif and the JHotDraw framework.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"116 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125549651","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 180
Model-driven business process recovery 模型驱动的业务流程恢复
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.30
Ying Zou, Terence C. Lau, K. Kontogiannis, Tack Tong, Ross McKegney
{"title":"Model-driven business process recovery","authors":"Ying Zou, Terence C. Lau, K. Kontogiannis, Tack Tong, Ross McKegney","doi":"10.1109/WCRE.2004.30","DOIUrl":"https://doi.org/10.1109/WCRE.2004.30","url":null,"abstract":"A business process attempts to encapsulate the delivery of a sequence of tasks, typically starting from accepting a service request and ending at certain points, such as the completion of the service. We propose a model-driven business process recovery framework that captures the essential functional features representing a business process. The framework utilizes static tracing techniques and a number of heuristics to map source code entities to high-level business process entities. A case study is preformed to recover IBM/spl reg/ WebSphere/spl reg/ Business Integration business processes from IBM WebSphere Commerce code. The experimental result demonstrates the effectiveness of the proposed framework.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129246497","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 74
Insights into system-wide code duplication 洞察系统范围内的代码复制
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.25
M. Rieger, Stéphane Ducasse, Michele Lanza
{"title":"Insights into system-wide code duplication","authors":"M. Rieger, Stéphane Ducasse, Michele Lanza","doi":"10.1109/WCRE.2004.25","DOIUrl":"https://doi.org/10.1109/WCRE.2004.25","url":null,"abstract":"Duplication of code is a common phenomenon in the development and maintenance of large software systems. The detection and removal of duplicated code has become a standard activity during the refactoring phases of a software life-cycle. However, code duplication identification tends to produce large amounts of data making the understanding of the duplication situation as a whole difficult. Reengineers can easily lose sight of the forest for the trees. There is a need to support a qualitative analysis of the duplicated code. We propose a number of visualizations of duplicated source elements that support reengineers in answering questions, e.g., which parts of the system are connected by copied code or which parts of the system are copied the most.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124798523","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 119
Virus analysis: techniques, tools, and research issues tutorial 病毒分析:技术、工具和研究问题教程
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.44
Arun Lakhotia, Prashant Pathak
{"title":"Virus analysis: techniques, tools, and research issues tutorial","authors":"Arun Lakhotia, Prashant Pathak","doi":"10.1109/WCRE.2004.44","DOIUrl":"https://doi.org/10.1109/WCRE.2004.44","url":null,"abstract":"The tutorial covers techniques, tools, and research issues in analyzing computer viruses. It provides participants the background needed to initiate research in reverse engineering computer viruses.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128357254","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
XIRC: a kernel for cross-artifact information engineering in software development environments XIRC:软件开发环境中用于跨工件信息工程的内核
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.45
Michael Eichberg, M. Mezini, K. Ostermann, Thorsten Schäfer
{"title":"XIRC: a kernel for cross-artifact information engineering in software development environments","authors":"Michael Eichberg, M. Mezini, K. Ostermann, Thorsten Schäfer","doi":"10.1109/WCRE.2004.45","DOIUrl":"https://doi.org/10.1109/WCRE.2004.45","url":null,"abstract":"We describe XIRC, a tool and architecture that enables to define queries over a uniform representation of all artifacts of a software project. These queries can be used for general cross-artifact information retrieval or for more special applications like checking implementation restrictions or conformance to style guides. XIRC is also a good basis to implement a broad range of tools for refactoring, generators, aspect-oriented programming and many other domains on top of it.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132586423","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 37
Exploring software evolution using spectrographs 利用摄谱仪探索软件进化
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.20
Jingwei Wu, R. Holt, A. Hassan
{"title":"Exploring software evolution using spectrographs","authors":"Jingwei Wu, R. Holt, A. Hassan","doi":"10.1109/WCRE.2004.20","DOIUrl":"https://doi.org/10.1109/WCRE.2004.20","url":null,"abstract":"Software systems become progressively more complex and difficult to maintain. To facilitate maintenance tasks, project managers and developers often turn to the evolution history of the system to recover various kinds of useful information, such as anomalous phenomena and lost design decisions. An informative visualization of the evolution history can help cope with this complexity by highlighting conspicuous evolution events using strong visual cues. We present a scalable visualization technique called evolution spectrographs (ESG). An evolution spectrograph portrays the evolution of a spectrum of components based on a particular property measurement. We describe several special-purpose spectrographs and discuss their use in understanding and supporting software evolution through the case studies of three large software systems (OpenSSH, KOffice and FreeBSD).","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"138 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127340408","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 77
A novel software visualisation model to support software comprehension 一种支持软件理解的新型软件可视化模型
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.7
M. J. Pacione, M. Roper, M. Wood
{"title":"A novel software visualisation model to support software comprehension","authors":"M. J. Pacione, M. Roper, M. Wood","doi":"10.1109/WCRE.2004.7","DOIUrl":"https://doi.org/10.1109/WCRE.2004.7","url":null,"abstract":"Current software visualisation tools do not address the full range of software comprehension requirements. This paper proposes a novel software visualisation model for supporting object-oriented software comprehension that is intended to address the shortcomings of existing tools. We discuss the previous work that prompted us to develop this model. An initial model is then presented, based on multiple levels of abstraction, multiple perspectives of the software system, and the integration of statically and dynamically extracted information. We review the evaluation tasks used in our previous work and those from the software visualisation and comprehension literature to produce a refined set of evaluation tasks. We then use these tasks to perform an initial assessment of the proposed model. The refined model is then defined more formally. Finally, a concrete example of the use of the model to generate abstraction hierarchies is discussed. We conclude that a visualisation model incorporating a hierarchy of interrelated abstraction levels, combined with structural and behavioural perspectives of the software, will provide effective support for software comprehension.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121141796","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 93
A static reference flow analysis to understand design pattern behavior 一个静态参考流分析来理解设计模式的行为
11th Working Conference on Reverse Engineering Pub Date : 2004-11-08 DOI: 10.1109/WCRE.2004.9
Chanjin Park, Yoohoon Kang, Chisu Wu, K. Yi
{"title":"A static reference flow analysis to understand design pattern behavior","authors":"Chanjin Park, Yoohoon Kang, Chisu Wu, K. Yi","doi":"10.1109/WCRE.2004.9","DOIUrl":"https://doi.org/10.1109/WCRE.2004.9","url":null,"abstract":"Design patterns are actively used by developers expecting that they provide the design with good quality such as flexibility and reusability. However, according to industrial reports on the use of design patterns, the expectation is not always realized . Especially, points out two causes of inappropriately applied patterns from a case study on a large commercial project: developers inexperienced in design patterns and no connection with project requirement. Wrong decisions on the use of design patterns make the program difficult to understand, and refactoring the program to improve the underlying structure, especially without documentation, can be very tricky. To eliminate wrongly applied patterns or document important decisions automatically, design pattern recovery is important for not only the development phase but also the maintenance phase. Many design pattern recovery approaches focus on structural characteristics and do not touch set-up behavior that configures links between participants and precedes pattern behavior. To detect design patterns implemented in program code more precisely and to show their behavior, we analyze program at expression level. Our approach is based on statically approximating run time behavior among pattern participants. For this, a static program analysis technique is used. Many static analysis techniques for object-oriented languages exist mainly for optimizing compiler in program analysis area.","PeriodicalId":443491,"journal":{"name":"11th Working Conference on Reverse Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2004-11-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129535828","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 12
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信