Introduction to the special issue on reverse engineering (WCRE 2008)
Pourquoi ce travail est dans la base
Une base qui oublie comment elle a trouvé un travail ne peut pas être vérifiée. Voici les voies qui ont admis celui-ci.
Notice bibliographique
Résumé
Welcome to the special issue of the 15th Working Conference on Reverse Engineering (WCRE 2008), held in Antwerp, Belgium from 15–18 October, 2008! Reverse engineering aims at obtaining high-level representations of software systems from existing low-level representations, such as binaries, source code, execution traces or historical development activities. Reverse engineering methods and technologies play an important role in many software engineering tasks. Quite often reverse engineering is the only way to get an understanding of large and complex software systems when commencing important activities, such as bug fixing, software adaptation or maintenance, and system re-engineering or migration. Each year, researchers gather at WCRE to present the latest advances in reverse engineering, with contributions in the areas of binary reverse engineering, static analysis, dynamic analysis, software repository mining, data reverse engineering, visualizations, program comprehension, code clone detection and software evolution. WCRE provides a platform for not only presenting, but also actively discussing both the issues and the opportunities that our community faces. As our community extends over the boundaries of the academic world, many of the issues come from software engineering professionals. This results in high-quality practical research with strong industrial case studies. While still a relatively young field, the reverse engineering community is thriving and as a result there is now a substantial body of work that has been conducted in the area with important results. The invited papers for this special issue are revised and expanded versions of the 20 full papers accepted and presented at WCRE 2008. Based on WCRE review reports, presentations and discussions during the conference, we selected five papers as candidates for this special issue. These papers were subsequently extended with new material by the authors and subjected to two additional rounds of reviewing, resulting in four papers that are presented in this special issue. We hope that readers will gain useful insights into the domain of reverse engineering through the papers in this issue. We would like to extend our gratitude to all the authors who submitted papers to WCRE, to the members of the program committee and their additional reviewers for providing valuable feedback on the papers on time. Also, many thanks to the reviewers who reviewed the papers for this special issue. Their constructive feedback helped shape the papers in this issue. Our thanks also go to Aniello Cimitile, editor of the Journal of Software Maintenance and Evolution, for hosting this special issue. We briefly introduce the papers in this issue. The papers cover several interesting areas within Reverse Engineering. Historical code changes contain valuable information that help developers when performing new changes. In the paper ‘Recommending Change Clusters to Support Software Investigation: An Empirical Study’, Robillard and Dagenais empirically study the benefits of historical changes using data from seven open source projects spanning 17 years of development. They find that only 13% of these change sets provide useful information for developers. A careful analysis shows that the complex and not well-structured nature of change tasks limits the usefulness of historical change sets. Often developers reuse code fragments by copying and pasting them with slight modifications. The detection and tracking of these code clones ensure the successful evolution of long-lived large projects. In the paper ‘Near-miss function clones in open source software: an empirical study’, Roy and Cordy propose a new hybrid clone detection technique. The technique combines the strength and overcomes the limitations of text-based and AST-based clone detection techniques, while relying on the application of code transformations to better detect clones. Roy and Cordy demonstrate their technique through a large empirical study involving over 20 open-source systems. The authors manually validate their clones, in turn creating a large benchmark for the evaluation of clone detection tools. Software visualizations help improve our understanding of complex software systems. However, there is no ‘natural’ mapping of software to a two-dimensional space as software has no shape–leading to layouts in which position and distance have no meaning. In the paper ‘Software Cartography: Thematic Software Visualization with Consistent Layout’ Kuhn and colleagues propose an approach for consistent layout in which the position of a software artifact reflects its vocabulary, and distance corresponds to similarity of vocabulary. The authors illustrate the benefits of using their approach to study the evolution of four large and long-lived open-source projects. The data model plays a central role in legacy information systems. The translation of this data model is one of the most critical decisions when migrating legacy information systems to new platforms or languages (e.g., Java). In the paper ‘Migrating legacy data structures based on variable overlay to Java’ Ceccato and colleagues document their experience migrating a large banking system with around ten million lines of code. The authors discuss the challenges associated with translating the data model and present several approaches to deal with these challenges.
Récupéré en direct depuis OpenAlex et désinversé. Les résumés ne sont pas conservés dans cette base de données : les index inversés représentent 8,6 Go des 9,3 Go de texte de la base, et le serveur dispose de 13 Go libres.
Prédiction distillée sur la base complète
Imitation des enseignantsNi prévalence calibrée, ni vérité terrain. Validation humaine à venir. Apprise à partir de 10 348 étiquettes directes de Codex et de 10 348 étiquettes directes de Gemma. Le mode candidate est l'union des têtes enseignantes seuillées; le consensus est leur intersection. Ces sorties portent le statut machine_predicted_unvalidated et ne sont ni des étiquettes humaines ni des étiquettes directes de modèles de pointe.
Scores Codex et Gemma par catégorie
| Catégorie | Codex | Gemma |
|---|---|---|
| Métarecherche | 0,001 | 0,003 |
| Méta-épidémiologie (sens strict) | 0,000 | 0,000 |
| Méta-épidémiologie (sens large) | 0,000 | 0,000 |
| Bibliométrie | 0,000 | 0,000 |
| Études des sciences et des technologies | 0,000 | 0,000 |
| Communication savante | 0,000 | 0,001 |
| Science ouverte | 0,000 | 0,000 |
| Intégrité de la recherche | 0,000 | 0,001 |
| Charge utile insuffisante (le modèle a refusé de juger) | 0,000 | 0,000 |
Scores machine (provisoires)
Les deux têtes enseignantes du modèle étudiant, lues sur ce travail. Un score ordonne la base pour la relecture; il n'affirme jamais une catégorie, et le statut de validation accompagne chaque rangée tel quel.
Scores de référence d'un modèle non mature (critères de maturité non atteints, 7 itérations). Un score ordonne; il n'affirme jamais une catégorie.
score_only:v0-immature-baseline · tel quel depuis la passe de notation : score_only signifie que le nombre peut ordonner les travaux, et qu'aucune étiquette de catégorie n'en découle