14th IEEE International Conference on Program Comprehension (ICPC'06)最新文献

筛选
英文 中文
Profile-Based Approach to Support Comprehension of Software Behavior 支持理解软件行为的基于概要文件的方法
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.37
Johannes Koskinen, M. Kettunen, Tarja Systä
{"title":"Profile-Based Approach to Support Comprehension of Software Behavior","authors":"Johannes Koskinen, M. Kettunen, Tarja Systä","doi":"10.1109/ICPC.2006.37","DOIUrl":"https://doi.org/10.1109/ICPC.2006.37","url":null,"abstract":"When reusing an existing software component, the software developer needs to understand the functionality and possible extension points of the component, as well as constraints and rules to be taken into account when using it. In addition to structural rules, the software component may imply interaction rules that must be followed in application development. In this paper we discuss behavioral profiles, given in UML, used to capture and illustrate architecturally significant behavioral rules. The behavioral rules may capture interaction rules to be obeyed when reusing an existing software component. They can also be used to support runtime analysis of existing systems: with a proper tool support, the validity of extracted interaction models can be automatically checked against the behavioral rules given in the profiles. Moreover, the profiles can be used to prune the size of the interaction trace to include only the information relevant from the point of view of the behavioral rules. In this paper we discuss such tool support and demonstrate the usefulness of the approach by applying behavioral profiles to define and illustrate behavioral rules relevant for applications using the graphical editing framework (GEF). Moreover, we analyze a sample GEF application by validating its run-time behaviour with respect to the defined behavioral rules","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122796014","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}
引用次数: 17
Combining Probabilistic Ranking and Latent Semantic Indexing for Feature Identification 结合概率排序和潜在语义索引的特征识别
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.17
D. Poshyvanyk, Andrian Marcus, V. Rajlich, Yann-Gaël Guéhéneuc, G. Antoniol
{"title":"Combining Probabilistic Ranking and Latent Semantic Indexing for Feature Identification","authors":"D. Poshyvanyk, Andrian Marcus, V. Rajlich, Yann-Gaël Guéhéneuc, G. Antoniol","doi":"10.1109/ICPC.2006.17","DOIUrl":"https://doi.org/10.1109/ICPC.2006.17","url":null,"abstract":"The paper recasts the problem of feature location in source code as a decision-making problem in the presence of uncertainty. The main contribution consists in the combination of two existing techniques for feature location in source code. Both techniques provide a set of ranked facts from the software, as result to the feature identification problem. One of the techniques is based on a scenario based probabilistic ranking of events observed while executing a program under given scenarios. The other technique is defined as an information retrieval task, based on the latent semantic indexing of the source code. We show the viability and effectiveness of the combined technique with two case studies. A first case study is a replication of feature identification in Mozilla, which allows us to directly compare the results with previously published data. The other case study is a bug location problem in Mozilla. The results show that the combined technique improves feature identification significantly with respect to each technique used independently","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"91 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122523313","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}
引用次数: 137
A Synergistic Approach to Program Comprehension 程序理解的协同方法
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.7
B. L. Vinz, L. Etzkorn
{"title":"A Synergistic Approach to Program Comprehension","authors":"B. L. Vinz, L. Etzkorn","doi":"10.1109/ICPC.2006.7","DOIUrl":"https://doi.org/10.1109/ICPC.2006.7","url":null,"abstract":"Program comprehension involves the process of extracting properties from a program in order to achieve a better understanding of the software system. The most common approaches are code-based with focus primarily on the program code. More attention needs to be given to information encoded in comments and identifiers and the valuable clues they may provide. This paper describes a technique that combines a code-based program understanding approach with a comment understanding approach. The goal is to match the comments and identifiers to the code in order to obtain a comprehensive understanding of the software under analysis. The method has application to software development and maintenance. It can also be used as an instructional tool for software students","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116884598","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}
引用次数: 15
Digging the Development Dust for Refactorings 为重构挖掘开发的尘埃
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.18
C. Schofield, B. Tansey, Zhenchang Xing, Eleni Stroulia
{"title":"Digging the Development Dust for Refactorings","authors":"C. Schofield, B. Tansey, Zhenchang Xing, Eleni Stroulia","doi":"10.1109/ICPC.2006.18","DOIUrl":"https://doi.org/10.1109/ICPC.2006.18","url":null,"abstract":"Software repositories are rich sources of information about the software development process. Mining the information stored in them has been shown to provide interesting insights into the history of the software development and evolution. Several different types of information have been extracted and analyzed from different points of view. However, these types of information have not been sufficiently cross-examined to understand how they might complement each other. In this paper, we present a systematic analysis of four aspects of the software repository of an open source project - source-code metrics, identifiers, return-on-investment estimates, and design differencing - to collect evidence about refactorings that may have happened during the project development. In the context of this case study, we comparatively examine how informative each piece of information is towards understanding the refactoring history of the project and how costly it is to obtain","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"244 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126824652","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}
引用次数: 26
Using Abstraction-driven Slicing for Postmortem Analysis of Software 用抽象驱动切片进行软件事后分析
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.50
R. Jetley, Yi Zhang, S. Iyer
{"title":"Using Abstraction-driven Slicing for Postmortem Analysis of Software","authors":"R. Jetley, Yi Zhang, S. Iyer","doi":"10.1109/ICPC.2006.50","DOIUrl":"https://doi.org/10.1109/ICPC.2006.50","url":null,"abstract":"Post-mortem analysis - the process of tracing software failure to source code - is an important means for maintenance engineers and regulatory reviewers for establishing the cause of an error. Historically, static slicing techniques have been used for aiding post-mortem fault analysis. However, the slices obtained in this manner can often be too large and may not give a clear understanding of the code when dealing with complex reactive systems. We propose using model abstraction in conjunction with slicing to ameliorate the problem of understanding large slices. Combining slicing with abstraction provides the analyst with an integrated cognition model, leading to a better understanding of the code, and consequently more efficient error analysis. We formalize this concept through the notion of abstraction-driven slicing, and use it to develop CAdS, an automated tool to aid postmortem error detection in C programs using abstraction-driven static slicing. We list our experiences with CAdS and illustrate how it can be used to reduce effort involved in the postmortem analysis process","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127933552","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}
引用次数: 4
The Cognitive Assignment Eclipse Plug-in 认知分配Eclipse插件
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.46
B. Cleary, C. Exton
{"title":"The Cognitive Assignment Eclipse Plug-in","authors":"B. Cleary, C. Exton","doi":"10.1109/ICPC.2006.46","DOIUrl":"https://doi.org/10.1109/ICPC.2006.46","url":null,"abstract":"Concept assignment approaches assist software engineers to comprehend software by localising problem domain concepts to source code elements. This paper presents an implementation of a concept assignment approach we call cognitive assignment which combines cognitive mapping of expert software engineers and Bayesian classification to help engineers tasked with understanding unfamiliar systems to localise a concepts implementation in the systems source","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"283 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115337857","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}
引用次数: 11
Working Session: Program Comprehension and Migration Strategies for Web Service and Service-Oriented Architectures 工作会议:Web服务和面向服务的体系结构的程序理解和迁移策略
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.52
Dennis B. Smith, L. O'Brien, K. Kontogiannis
{"title":"Working Session: Program Comprehension and Migration Strategies for Web Service and Service-Oriented Architectures","authors":"Dennis B. Smith, L. O'Brien, K. Kontogiannis","doi":"10.1109/ICPC.2006.52","DOIUrl":"https://doi.org/10.1109/ICPC.2006.52","url":null,"abstract":"The migration to Web services has the potential of providing significant value to keeping legacy systems and components operational in a networked environment, a number of critical issues still need to be addressed. These issues can be classified in three categories; a) program comprehension and analysis issues; b) legacy system migration issues and; c) technology and standards issues. This paper discusses and debates approaches for addressing these issues. The paper's objective is twofold. First, is to explore the current state of the art in methods, tools and technologies that can assist in carrying out the required work and to identify a taxonomy of current approaches as well as, their strengths and weaknesses. The second objective is to identify open issues and research opportunities in the area of migrating legacy systems in Web enabled environments","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129443917","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}
引用次数: 0
How Developers Copy 开发者如何复制
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.25
Mihai Balint, Radu Marinescu, Tudor Gîrba
{"title":"How Developers Copy","authors":"Mihai Balint, Radu Marinescu, Tudor Gîrba","doi":"10.1109/ICPC.2006.25","DOIUrl":"https://doi.org/10.1109/ICPC.2006.25","url":null,"abstract":"Copy-paste programming is dangerous as it may lead to hidden dependencies between different parts of the system. Modifying clones is not always straight forward, because we might not know all the places that need modification. This is even more of a problem when several developers need to know about how to change the clones. In this paper, we correlate the code clones with the time of the modification and with the developer that performed the modification to detect patterns of how developers copy from one another. We develop visualization, named clone evolution view, to represent the evolution of the duplicated code. We show the relevance of our approach on several large case studies and we distill our experience in forms of interesting copy patterns","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125898608","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}
引用次数: 58
Summarizing the Content of Large Traces to Facilitate the Understanding of the Behaviour of a Software System 总结大轨迹的内容以促进对软件系统行为的理解
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.45
A. Hamou-Lhadj, T. Lethbridge
{"title":"Summarizing the Content of Large Traces to Facilitate the Understanding of the Behaviour of a Software System","authors":"A. Hamou-Lhadj, T. Lethbridge","doi":"10.1109/ICPC.2006.45","DOIUrl":"https://doi.org/10.1109/ICPC.2006.45","url":null,"abstract":"In this paper, we present a semi-automatic approach for summarizing the content of large execution traces. Similar to text summarization, where abstracts can be extracted from large documents, the aim of trace summarization is to take an execution trace as input and return a summary of its main content as output. The resulting summary can then be converted into a UML sequence diagram and used by software engineers to understand the main behavioural aspects of the system. Our approach to trace summarization is based on the removal of implementation details such as utilities from execution traces. To achieve our goal, we have developed a metric based on fan-in and fan-out to rank the system components according to whether they implement key system concepts or they are mere implementation details. We applied our approach to a trace generated from an object-oriented system called Weka that initially contains 97413 method calls. We succeeded to extract a summary from this trace that contains 453 calls. According to the developers of the Weka system, the resulting summary is an adequate high-level representation of the main interactions of the traced scenario","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128900035","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}
引用次数: 165
Programs are Knowledge Bases 程序是知识库
14th IEEE International Conference on Program Comprehension (ICPC'06) Pub Date : 2006-06-14 DOI: 10.1109/ICPC.2006.41
D. Ratiu, F. Deißenböck
{"title":"Programs are Knowledge Bases","authors":"D. Ratiu, F. Deißenböck","doi":"10.1109/ICPC.2006.41","DOIUrl":"https://doi.org/10.1109/ICPC.2006.41","url":null,"abstract":"Gaining an overview of the concepts represented in large programs is very demanding as multiple dimensions of knowledge appear at different abstraction levels throughout the source code. To reduce the overall comprehension effort it is therefore desirable to make the knowledge once gained explicit and shareable. We tackle this problem by establishing a mapping between source code and conceptualizations shared as ontologies. To achieve this we regard programs themselves as knowledge bases built on the programs' identifiers and their relations implied by the programming language. Making these mappings explicit allows sharing knowledge about the concepts represented in programs. We exemplify our approach on Java programming language and the WordNet ontology and we report on our experience with analyzing an open source system","PeriodicalId":377450,"journal":{"name":"14th IEEE International Conference on Program Comprehension (ICPC'06)","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125035268","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}
引用次数: 26
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学术文献互助群
群 号:604180095
Book学术官方微信