Proceedings 10th International Workshop on Program Comprehension最新文献

筛选
英文 中文
The role of concepts in program comprehension 概念在程序理解中的作用
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021348
V. Rajlich, N. Wilde
{"title":"The role of concepts in program comprehension","authors":"V. Rajlich, N. Wilde","doi":"10.1109/WPC.2002.1021348","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021348","url":null,"abstract":"The paper presents an overview of the role of concepts in program comprehension. It discusses concept location, in which the implementation of a specific concept is located in the code. This process is very common and precedes a large proportion of code changes. The paper also discusses the process of learning about the domain from the code, which is a prerequisite of code reengineering. The paper notes the similarities and overlaps between program comprehension and human learning.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123560434","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}
引用次数: 281
Program comprehension experiences with GXL; comprehension for comprehension GXL的程序理解经验;为理解而理解
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021336
C. Knight, M. Munro
{"title":"Program comprehension experiences with GXL; comprehension for comprehension","authors":"C. Knight, M. Munro","doi":"10.1109/WPC.2002.1021336","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021336","url":null,"abstract":"Tools are vital to support the various activities that form the many tasks that are part of the program comprehension process. In order for these tools to be used and useful, it is necessary that they support the activities of the user. This support must complement the work methods and activities of the user and not hinder them. Whilst features of good tools have been identified, tool builders do not always adhere to them. It is important to consider whether needs have changed, and if those desirable properties need augmenting or revising. From experience of maintaining and enhancing an existing program comprehension tool for the purposes of participating in a re-engineering activity, many lessons on tool support have been learned. Various program comprehension strategies are introduced in this paper. The use of GXL (Graph eXchange Language) and involvement in the SORTIE project are presented with reference to the tool being adapted and used. Details of the changes made are given to illustrate the support desired. These all feed into the final section of the paper that discusses the sort of support that tools should provide, current tool deficiencies and some of the ways in which these could be addressed.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130579217","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}
引用次数: 9
An open visualization toolkit for reverse architecting 用于反向架构的开放可视化工具包
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021303
A. Telea, A. Maccari, C. Riva
{"title":"An open visualization toolkit for reverse architecting","authors":"A. Telea, A. Maccari, C. Riva","doi":"10.1109/WPC.2002.1021303","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021303","url":null,"abstract":"Maintenance and evolution of complex software systems (such as large telecom embedded devices) involve activities such as reverse engineering (RE) and software visualization. Although several RE tools exist, we found their architecture hard to adapt to the domain specific requirements posed by our current practice in Nokia. We present an open architecture which allows easy prototyping of RE data exploration and visualization scenarios for a large range of domain models. We pay special attention to the visual and interactive requirements of the reverse engineering process. The article describes the basic architecture of our toolkit, compares it to the existing RE environments and present several visualizations taken from real cases.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131678352","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 graph patterns to extract scenarios 使用图形模式提取场景
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021345
Jingwei Wu, A. Hassan, R. Holt
{"title":"Using graph patterns to extract scenarios","authors":"Jingwei Wu, A. Hassan, R. Holt","doi":"10.1109/WPC.2002.1021345","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021345","url":null,"abstract":"Scenario diagrams are useful for helping software developers to understand the interactions among the components of a software system. We present a semi-automatic approach to extracting scenarios from the implementation of a software system. In our approach, the source code of a software system is represented as a graph and scenarios are specified as graph patterns. A relational calculator, Grok, is extended to support graph pattern matching. Grok, as extended, is used in our analysis of the Nautilus open source file manager. Multiple scenarios are extracted and analyzed. These scenarios have helped us to analyze Nautilus's architecture.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117025549","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
Fused data-centric visualizations for software evolution environments 软件进化环境的融合数据中心可视化
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021340
J. Weber, H. Müller, Andrew Walenstein, N. Mansurov, Kenny Wong
{"title":"Fused data-centric visualizations for software evolution environments","authors":"J. Weber, H. Müller, Andrew Walenstein, N. Mansurov, Kenny Wong","doi":"10.1109/WPC.2002.1021340","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021340","url":null,"abstract":"During software evolution, several different facets of the system need to be related to one another at multiple levels of abstraction. Current software evolution tools have limited capabilities for effectively visualizing and evolving multiple system facets in an integrated manner. Many tools provide methods for tracking and relating different levels of abstraction within a single facet. However, it is less well understood how to represent and understand relationships between and among different abstraction hierarchies, i.e. for inter-hierarchy relations. Often, these are represented and explored independently, making them difficult to relate to one another. As a result, engineers are likely to have difficulty understanding how the various facets of a system relate and interact. We describe preliminary results of a collaborative research project between industry and academia to enhance the inter-hierarchy visualization capabilities of an existing software evolution environment called \"KLOCwork Suite\". Specifically, we describe our efforts to add a \"fused\" visualization based on story board diagrams. This visualization integrates - or \"fuses\" - facets of architecture, behavior and data. We describe how these diagrams bridge currently isolated visualizations of system information, and argue how they can help drive architecture excavation tasks.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127890655","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}
引用次数: 9
Theory-based analysis of cognitive support in software comprehension tools 软件理解工具认知支持的理论分析
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021322
Andrew Walenstein
{"title":"Theory-based analysis of cognitive support in software comprehension tools","authors":"Andrew Walenstein","doi":"10.1109/WPC.2002.1021322","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021322","url":null,"abstract":"Past research on software comprehension tools has produced a wealth of lessons in building good tools. However, our explanations of these tools tend to be weakly grounded in existing theories of cognition and human-computer interaction. As a result, the interesting rationales underlying their design are poorly articulated, leaving the lessons primarily implicit. This paper describes a way of using existing program comprehension theories to rationalize tool designs. To illustrate the technique, key design rationales underlying a prominent reverse engineering tool (the Reflexion Model Tool) are reconstructed. The reconstruction shows that theories of cognitive support can be applied to existing cognitive models of software developer behaviour. The method for constructing the rationales is described, and implications are drawn for codifying existing design knowledge, evaluating tools and improving design reasoning.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125093893","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}
引用次数: 33
Mining system-user interaction traces for use case models 为用例模型挖掘系统-用户交互跟踪
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021305
M. El-Ramly, Eleni Stroulia, P. Sorenson
{"title":"Mining system-user interaction traces for use case models","authors":"M. El-Ramly, Eleni Stroulia, P. Sorenson","doi":"10.1109/WPC.2002.1021305","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021305","url":null,"abstract":"While code understanding is the primary program comprehension activity, it is quite challenging to recognize the application requirements from code, since they have usually been occluded by a set of layers of later implementation decisions. An alternative source of evidence, especially valuable for understanding the purposes for which the application was built, can be the dynamic behavior of the system, and more specifically the system-user interaction. We have developed a method for modeling the application behavior from the user's perspective in the form of use case models, using recorded traces of system-user interaction. We use data mining and pattern matching methods to mine these traces for frequently occurring user tasks. When interesting patterns are discovered, they are augmented with semantic information and they are used to build use case models. We demonstrate a successful application of this method to recover use case models from interaction traces with legacy 3270 systems to serve user interface reengineering activities.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124567935","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}
引用次数: 35
Experience with FADE for the visualization and abstraction of software views 对软件视图的可视化和抽象有使用FADE的经验
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021304
A. Quigley
{"title":"Experience with FADE for the visualization and abstraction of software views","authors":"A. Quigley","doi":"10.1109/WPC.2002.1021304","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021304","url":null,"abstract":"This paper describes the FADE paradigm for visualization and a series of experiments for the fast layout, abstract representation, and measurement of software views. In program comprehension, graph models are typically used to represent relational information, where the visualization of such graphs is referred to as graph drawing. Here we present the results of an investigation into efficient techniques for drawing and abstractly representing large software views with thousands of nodes from four medium sized software systems. The paradigm presented in this paper marries a solution to problems of computation time, screen space, cognitive load, and rendering for large-scale drawings using a single graph model.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133786757","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}
引用次数: 8
Dependence-cache slicing: a program slicing method using lightweight dynamic information 依赖缓存切片:一种使用轻量级动态信息的程序切片方法
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021338
Tomonori Takada, Fumiaki Ohata, Katsuro Inoue
{"title":"Dependence-cache slicing: a program slicing method using lightweight dynamic information","authors":"Tomonori Takada, Fumiaki Ohata, Katsuro Inoue","doi":"10.1109/WPC.2002.1021338","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021338","url":null,"abstract":"When we try to debug or to comprehend a large program, it is important to separate suspicious program portions from the overall source program. Program slicing is a promising technique used to extract a program portion; however, such slicing sometimes raises difficulties. Static slicing sometimes produces a large portion of a source program, especially for programs with array and pointer variables, and dynamic slicing requires unacceptably large run-time overhead. In this paper, we propose a slicing method named \"dependence-cache slicing\", which uses both static and dynamic information. An algorithm has been implemented in our experimental slicing system, and execution data for several sample programs have been collected The results show that dependence-cache slicing reduces the slice size by 30-90% compared with the static slice size, with an increased and affordable run-time overhead, even for programs using array variables. In the future, dependence-cache slicing will become an important feature for effective debugging environments.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125864547","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
Architecture recovery of dynamically linked applications: a case study 动态链接应用程序的体系结构恢复:一个案例研究
Proceedings 10th International Workshop on Program Comprehension Pub Date : 2002-06-27 DOI: 10.1109/WPC.2002.1021339
Igor Ivkovic, Michael W. Godfrey
{"title":"Architecture recovery of dynamically linked applications: a case study","authors":"Igor Ivkovic, Michael W. Godfrey","doi":"10.1109/WPC.2002.1021339","DOIUrl":"https://doi.org/10.1109/WPC.2002.1021339","url":null,"abstract":"Most previously published case studies in architecture recovery have been performed on statically linked software systems. Due to the increase in use of middleware technologies, such as CORBA, and object-oriented programming concepts, such as polymorphism, there is an opportunity and a need to analyze architectures of these dynamically linked systems. This paper presents the results of software architecture extraction of the Nautilus file manager, which employs CORBA in its implementation. A combination of existing static analysis and use-case modeling architecture recovery techniques was used, with the expectation of complex but complete architecture extraction of a system such as Nautilus. We have found that this combined approach, named Dynamo-1, presented in this paper provided successful focused architecture recovery and guidance for future work in the complete architecture recovery of dynamically linked applications.","PeriodicalId":210649,"journal":{"name":"Proceedings 10th International Workshop on Program Comprehension","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2002-06-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121429177","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}
引用次数: 9
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学术官方微信