首页 > 最新文献

13th International Workshop on Program Comprehension (IWPC'05)最新文献

英文 中文
Understanding concerns in software: insights gained from two case studies 理解软件中的关注点:从两个案例研究中获得的见解
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.43
Meghan Revelle, T. Broadbent, D. Coppit
Much of the complexity of software arises from the interactions between disparate concerns. Even in well-designed software, some concerns can not always be encapsulated in a module. Research on separation of concerns seeks to address this problem, but we lack an understanding of how programmers conceptualize the notion of a concern and then identify that concern in code. In this work, we have conducted two exploratory case studies to better understand these issues. The case studies involved programmers identifying concerns and associated code in existing, unfamiliar software: GNU's sort.c and the game Minesweeper. Based on our experiences with these two case studies, we have identified several types of concerns and have detailed a number of factors that impact programmer identification of concerns. Based on these insights, we have created two sets of guidelines: one to help programmers identify relevant concerns and another to help programmers identify code relating to concerns.
软件的许多复杂性来自于不同关注点之间的交互。即使在设计良好的软件中,一些关注点也不能总是封装在模块中。对关注点分离的研究试图解决这个问题,但是我们缺乏对程序员如何概念化关注点的概念,然后在代码中识别关注点的理解。在这项工作中,我们进行了两个探索性案例研究,以更好地理解这些问题。案例研究涉及到程序员在现有的不熟悉的软件中识别关注点和相关代码:GNU的sort.c和扫雷游戏。根据我们在这两个案例研究中的经验,我们已经确定了几种类型的关注点,并详细描述了影响程序员识别关注点的许多因素。基于这些见解,我们创建了两组指导方针:一组帮助程序员识别相关的关注点,另一组帮助程序员识别与关注点相关的代码。
{"title":"Understanding concerns in software: insights gained from two case studies","authors":"Meghan Revelle, T. Broadbent, D. Coppit","doi":"10.1109/WPC.2005.43","DOIUrl":"https://doi.org/10.1109/WPC.2005.43","url":null,"abstract":"Much of the complexity of software arises from the interactions between disparate concerns. Even in well-designed software, some concerns can not always be encapsulated in a module. Research on separation of concerns seeks to address this problem, but we lack an understanding of how programmers conceptualize the notion of a concern and then identify that concern in code. In this work, we have conducted two exploratory case studies to better understand these issues. The case studies involved programmers identifying concerns and associated code in existing, unfamiliar software: GNU's sort.c and the game Minesweeper. Based on our experiences with these two case studies, we have identified several types of concerns and have detailed a number of factors that impact programmer identification of concerns. Based on these insights, we have created two sets of guidelines: one to help programmers identify relevant concerns and another to help programmers identify code relating to concerns.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"7 3","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114113039","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}
引用次数: 38
An empirical study of the use of friends in C++ software 在c++软件中使用友元的实证研究
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.7
M. English, J. Buckley, Tony Cahill, Kristian Lynch
A commonly held belief is that the friend construct in C++ is a violation of encapsulation. However, little empirical analysis of its use has taken place to provide evidence to support this claim. This paper presents a study, which assesses the design implications of including friendship in a system. A number of hypotheses are investigated based on previous work in this area by Counsell and Newson (2000). Our initial findings suggest that classes declared as friends are coupling hotspots, that the more friends a class has the more protected and private members it will contain and that friendship is not used to access inherited protected members.
人们普遍认为c++中的友元构造违反了封装。然而,很少对其使用进行实证分析,以提供证据来支持这一说法。本文提出了一项研究,该研究评估了在系统中包含友谊的设计含义。根据Counsell和Newson(2000)在这一领域的先前工作,研究了许多假设。我们的初步发现表明,声明为友元的类是耦合热点,一个类拥有的友元越多,它将包含的受保护和私有成员就越多,而且友元不用于访问继承的受保护成员。
{"title":"An empirical study of the use of friends in C++ software","authors":"M. English, J. Buckley, Tony Cahill, Kristian Lynch","doi":"10.1109/WPC.2005.7","DOIUrl":"https://doi.org/10.1109/WPC.2005.7","url":null,"abstract":"A commonly held belief is that the friend construct in C++ is a violation of encapsulation. However, little empirical analysis of its use has taken place to provide evidence to support this claim. This paper presents a study, which assesses the design implications of including friendship in a system. A number of hypotheses are investigated based on previous work in this area by Counsell and Newson (2000). Our initial findings suggest that classes declared as friends are coupling hotspots, that the more friends a class has the more protected and private members it will contain and that friendship is not used to access inherited protected members.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127718537","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
JRipples: a tool for program comprehension during incremental change jripple:用于在增量更改期间理解程序的工具
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.22
J. Buckner, Joseph Buchta, M. Petrenko, V. Rajlich
Incremental software change adds new functionality to software. It is the foundation of software evolution, maintenance, iterative development, agile development, and other software processes. Highly interactive tool JRipples provides the programmer with the organizational support that makes the incremental change process easier and more systematic. JRipples supports impact analysis and change propagation, the two most difficult activities of the incremental change.
增量式软件变更为软件增加了新的功能。它是软件进化、维护、迭代开发、敏捷开发和其他软件过程的基础。高度交互的工具jripple为程序员提供了组织支持,使增量更改过程更容易和更系统化。jripple支持影响分析和变更传播,这是增量变更中最困难的两个活动。
{"title":"JRipples: a tool for program comprehension during incremental change","authors":"J. Buckner, Joseph Buchta, M. Petrenko, V. Rajlich","doi":"10.1109/WPC.2005.22","DOIUrl":"https://doi.org/10.1109/WPC.2005.22","url":null,"abstract":"Incremental software change adds new functionality to software. It is the foundation of software evolution, maintenance, iterative development, agile development, and other software processes. Highly interactive tool JRipples provides the programmer with the organizational support that makes the incremental change process easier and more systematic. JRipples supports impact analysis and change propagation, the two most difficult activities of the incremental change.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"63 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124975687","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}
引用次数: 101
Presenting micro-theories of program comprehension in pattern form 以模式的形式呈现程序理解的微观理论
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.28
Adam Murray, Timothy Lethbridge
We present the notion of cognitive patterns, and provide several examples. A cognitive pattern is the written record of a solution to a recurring cognitive problem typically employed by experienced practitioners. We focus on those relevant to program comprehension, which we have developed through studying the literature and conducting field studies. Collectively the set of patterns constitute a rich theory of program comprehension, which is why we call each one a micro-theory. We expand on one pattern, temporal details, which is also a 'pattern language since it breaks down into sub-patterns'. A key use of cognitive patterns is to suggest useful features for tool designers to implement.
我们提出了认知模式的概念,并提供了几个例子。认知模式是对反复出现的认知问题的解决方案的书面记录,通常由经验丰富的从业者使用。我们专注于那些与程序理解相关的内容,这些内容是我们通过研究文献和进行实地研究而发展起来的。总的来说,这组模式构成了丰富的程序理解理论,这就是为什么我们称每一个模式为微观理论。我们扩展一个模式,即时间细节,它也是一种“模式语言,因为它分解成子模式”。认知模式的一个关键用途是建议工具设计人员实现有用的特性。
{"title":"Presenting micro-theories of program comprehension in pattern form","authors":"Adam Murray, Timothy Lethbridge","doi":"10.1109/WPC.2005.28","DOIUrl":"https://doi.org/10.1109/WPC.2005.28","url":null,"abstract":"We present the notion of cognitive patterns, and provide several examples. A cognitive pattern is the written record of a solution to a recurring cognitive problem typically employed by experienced practitioners. We focus on those relevant to program comprehension, which we have developed through studying the literature and conducting field studies. Collectively the set of patterns constitute a rich theory of program comprehension, which is why we call each one a micro-theory. We expand on one pattern, temporal details, which is also a 'pattern language since it breaks down into sub-patterns'. A key use of cognitive patterns is to suggest useful features for tool designers to implement.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"238 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116587099","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
On the comprehension of security risk scenarios 关于安全风险场景的理解
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.27
I. Hogganvik, K. Stølen
Methods for security risk analysis are often based on structured brainstorming (e.g. what [F. Redmill et al., (1999)] calls HazOp). A structured brainstorming gathers a group of different system experts and the idea is that they will find more risks as a team than one-by-one. The CORAS modelling language [M. S. Lund et al., (2003)] has been designed to support the brainstorming process and to document security risk scenarios identified during these sessions. The language is graphical, based upon the Unified Modelling Language (UML) [R. E. Walpole et al., (1998)], and is recommended by OMG. This paper reports the results from two empirical experiments concerning the CORAS language. Our results show (1) many security risk analysis terms are used in the daily language and therefore well understood, but the more abstract or less frequently used terms can be a possible source for misunderstandings in a security analysis, and (2) the language's graphical icons make diagram "navigation" faster, but the diagrams are not necessarily understood more correctly than those without graphical icons.
安全风险分析的方法通常基于结构化的头脑风暴(例如[F]。Redmill等人(1999)]称之为HazOp。结构化的头脑风暴聚集了一组不同的系统专家,其想法是他们作为一个团队将比一个人发现更多的风险。CORAS建模语言[M]。S. Lund等人,(2003)]的设计是为了支持头脑风暴过程,并记录在这些会议中确定的安全风险场景。语言是图形化的,基于统一建模语言(UML) [R。E. Walpole et al., (1998)], OMG推荐使用。本文报道了关于CORAS语言的两个实证实验的结果。我们的结果表明:(1)许多安全风险分析术语在日常语言中使用,因此很容易理解,但更抽象或较少使用的术语可能是安全分析中误解的可能来源,(2)语言的图形图标使图表“导航”更快,但图表不一定比没有图形图标的图表更正确地理解。
{"title":"On the comprehension of security risk scenarios","authors":"I. Hogganvik, K. Stølen","doi":"10.1109/WPC.2005.27","DOIUrl":"https://doi.org/10.1109/WPC.2005.27","url":null,"abstract":"Methods for security risk analysis are often based on structured brainstorming (e.g. what [F. Redmill et al., (1999)] calls HazOp). A structured brainstorming gathers a group of different system experts and the idea is that they will find more risks as a team than one-by-one. The CORAS modelling language [M. S. Lund et al., (2003)] has been designed to support the brainstorming process and to document security risk scenarios identified during these sessions. The language is graphical, based upon the Unified Modelling Language (UML) [R. E. Walpole et al., (1998)], and is recommended by OMG. This paper reports the results from two empirical experiments concerning the CORAS language. Our results show (1) many security risk analysis terms are used in the daily language and therefore well understood, but the more abstract or less frequently used terms can be a possible source for misunderstandings in a security analysis, and (2) the language's graphical icons make diagram \"navigation\" faster, but the diagrams are not necessarily understood more correctly than those without graphical icons.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129363899","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}
引用次数: 25
Textual views of source code to support comprehension 源代码的文本视图以支持理解
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.49
Anthony Cox, M. Collard
Source code can be viewed in many ways, with each view facilitating access to different information contained within the code. We explore the role that marked-up textual views can provide in support of software comprehension and maintenance. Text has the advantages of being easily communicated, effectively manipulated with existing tools, and highly scalable. Furthermore, marked-up text models may improve comprehension by expressing information directly within the context of maintainers' focus - the source code they are manipulating. The session intends to explore the expressibility of marked-up text and its applicability in support of program comprehension tasks. Topics will include: the roles these models fulfill, their limitations, their combination, and the exploration of future research directions.
源代码可以通过多种方式查看,每种视图都有助于访问代码中包含的不同信息。我们探讨了标记文本视图在支持软件理解和维护方面的作用。文本具有易于交流、使用现有工具有效操作和高度可伸缩的优点。此外,标记文本模型可以通过直接在维护者关注的上下文(他们正在操作的源代码)中表达信息来提高理解能力。本课程旨在探讨标记文本的可表达性及其在支持程序理解任务中的适用性。主题将包括:这些模型的作用,它们的局限性,它们的组合,以及对未来研究方向的探索。
{"title":"Textual views of source code to support comprehension","authors":"Anthony Cox, M. Collard","doi":"10.1109/WPC.2005.49","DOIUrl":"https://doi.org/10.1109/WPC.2005.49","url":null,"abstract":"Source code can be viewed in many ways, with each view facilitating access to different information contained within the code. We explore the role that marked-up textual views can provide in support of software comprehension and maintenance. Text has the advantages of being easily communicated, effectively manipulated with existing tools, and highly scalable. Furthermore, marked-up text models may improve comprehension by expressing information directly within the context of maintainers' focus - the source code they are manipulating. The session intends to explore the expressibility of marked-up text and its applicability in support of program comprehension tasks. Topics will include: the roles these models fulfill, their limitations, their combination, and the exploration of future research directions.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131036324","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}
引用次数: 5
Understanding cloned patterns in Web applications 理解Web应用程序中的克隆模式
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.42
A. D. Lucia, R. Francese, G. Scanniello, G. Tortora
We propose a tool to identify and analyze cloned patterns in Web applications using clone analysis and clustering of static and dynamic Web pages. The tool first detects cloned pages, which are then grouped into clusters as well as the groups of links between clusters. In this way the navigational schema is simplified and the duplicated functionalities corresponding to cloned navigational patterns can be more easily analyzed. The tool also allows filtering out uninteresting parts of the restructured navigational schema, thus to further improve the understanding.
我们提出了一个工具,通过克隆分析和静态和动态Web页面的聚类来识别和分析Web应用程序中的克隆模式。该工具首先检测克隆页面,然后将其分组到集群以及集群之间的链接组中。这样可以简化导航模式,并且可以更容易地分析与克隆导航模式相对应的重复功能。该工具还允许过滤掉重组的导航模式中不感兴趣的部分,从而进一步提高理解。
{"title":"Understanding cloned patterns in Web applications","authors":"A. D. Lucia, R. Francese, G. Scanniello, G. Tortora","doi":"10.1109/WPC.2005.42","DOIUrl":"https://doi.org/10.1109/WPC.2005.42","url":null,"abstract":"We propose a tool to identify and analyze cloned patterns in Web applications using clone analysis and clustering of static and dynamic Web pages. The tool first detects cloned pages, which are then grouped into clusters as well as the groups of links between clusters. In this way the navigational schema is simplified and the duplicated functionalities corresponding to cloned navigational patterns can be more easily analyzed. The tool also allows filtering out uninteresting parts of the restructured navigational schema, thus to further improve the understanding.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"416 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115228551","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}
引用次数: 20
HyperSoft system: tool demonstration and use example HyperSoft系统:工具演示和使用示例
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.20
Jussi Koskinen
HyperSoft is an approach for satisfying the information needs of software maintainers. HyperSoft combines the notions of automated program analysis and hypertext techniques. HyperSoft system is the implementation of the approach. It is targeted at supporting the comprehension of large programs and has been developed in cooperation with software industry. HyperSoft produces automatically transient access structures, which deliver to the users the needed information. Access structures are presented to the users via various textual, hypertextual, structural and graphical views. This paper and tool demonstration describe the tool use and applied interaction techniques.
HyperSoft是一种满足软件维护人员信息需求的方法。HyperSoft结合了自动程序分析和超文本技术的概念。HyperSoft系统就是这种实现方法。它旨在支持对大型程序的理解,并与软件行业合作开发。HyperSoft自动生成瞬态访问结构,向用户提供所需的信息。访问结构通过各种文本、超文本、结构和图形视图呈现给用户。本文和工具演示描述了工具的使用和应用的交互技术。
{"title":"HyperSoft system: tool demonstration and use example","authors":"Jussi Koskinen","doi":"10.1109/WPC.2005.20","DOIUrl":"https://doi.org/10.1109/WPC.2005.20","url":null,"abstract":"HyperSoft is an approach for satisfying the information needs of software maintainers. HyperSoft combines the notions of automated program analysis and hypertext techniques. HyperSoft system is the implementation of the approach. It is targeted at supporting the comprehension of large programs and has been developed in cooperation with software industry. HyperSoft produces automatically transient access structures, which deliver to the users the needed information. Access structures are presented to the users via various textual, hypertextual, structural and graphical views. This paper and tool demonstration describe the tool use and applied interaction techniques.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"62 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124754640","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
Supporting the evolution of a software visualization tool through usability studies 通过可用性研究支持软件可视化工具的发展
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.34
Andrian Marcus, Denise Comorski, A. Sergeyev
The paper presents a usability study conducted with graduate and undergraduate computer science students, designed to evaluate the effectiveness of a software visualization tool named sv3D, and to provide necessary user data for the evolution of the system. Sv3D is a software visualization tool for comprehension of large software, capable of displaying source code and associated metrics in three dimensions. The participants in the study answered two types of questions: one set provided objective measurements to support the formulated hypotheses with respect to the accuracy and speed of the users answering questions using sv3D; the second set of questions provided subjective measurements that were used to support the evolution of sv3D. We formulated two null hypotheses with respect to accuracy and time respectively. The collected data supported one hypothesis and rejected the other.
本文介绍了一项由计算机科学研究生和本科生进行的可用性研究,旨在评估名为sv3D的软件可视化工具的有效性,并为系统的发展提供必要的用户数据。Sv3D是一种用于理解大型软件的软件可视化工具,能够在三维空间中显示源代码和相关指标。研究的参与者回答了两种类型的问题:一组提供了客观的测量来支持关于用户使用sv3D回答问题的准确性和速度的制定假设;第二组问题提供了用于支持sv3D发展的主观测量。我们分别对精度和时间提出了两个零假设。收集到的数据支持一个假设,否定另一个假设。
{"title":"Supporting the evolution of a software visualization tool through usability studies","authors":"Andrian Marcus, Denise Comorski, A. Sergeyev","doi":"10.1109/WPC.2005.34","DOIUrl":"https://doi.org/10.1109/WPC.2005.34","url":null,"abstract":"The paper presents a usability study conducted with graduate and undergraduate computer science students, designed to evaluate the effectiveness of a software visualization tool named sv3D, and to provide necessary user data for the evolution of the system. Sv3D is a software visualization tool for comprehension of large software, capable of displaying source code and associated metrics in three dimensions. The participants in the study answered two types of questions: one set provided objective measurements to support the formulated hypotheses with respect to the accuracy and speed of the users answering questions using sv3D; the second set of questions provided subjective measurements that were used to support the evolution of sv3D. We formulated two null hypotheses with respect to accuracy and time respectively. The collected data supported one hypothesis and rejected the other.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121212669","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}
引用次数: 50
NavTracks: supporting navigation in software NavTracks:支持软件导航
Pub Date : 2005-05-15 DOI: 10.1109/WPC.2005.25
J. Singer, R. Elves, M. Storey
Any modification to a software system involves investigating the source code with the goal of understanding it. In turn, this investigation usually requires significant navigation effort. However, relatively little research has been conducted on software developer navigation patterns and tool support for improving navigation. Our research addresses this issue. We present NavTracks, a tool that supports browsing through software. NavTracks keeps track of the navigation history of software developers, forming associations between related files. These associations are then used as the basis for recommending potentially related files as a developer browses the software system.
对软件系统的任何修改都涉及到以理解源代码为目标的调查。反过来,这种调查通常需要大量的导航工作。然而,关于软件开发人员导航模式和用于改进导航的工具支持的研究相对较少。我们的研究解决了这个问题。我们介绍NavTracks,一个支持通过软件浏览的工具。NavTracks跟踪软件开发人员的导航历史,形成相关文件之间的关联。然后,当开发人员浏览软件系统时,这些关联被用作推荐潜在相关文件的基础。
{"title":"NavTracks: supporting navigation in software","authors":"J. Singer, R. Elves, M. Storey","doi":"10.1109/WPC.2005.25","DOIUrl":"https://doi.org/10.1109/WPC.2005.25","url":null,"abstract":"Any modification to a software system involves investigating the source code with the goal of understanding it. In turn, this investigation usually requires significant navigation effort. However, relatively little research has been conducted on software developer navigation patterns and tool support for improving navigation. Our research addresses this issue. We present NavTracks, a tool that supports browsing through software. NavTracks keeps track of the navigation history of software developers, forming associations between related files. These associations are then used as the basis for recommending potentially related files as a developer browses the software system.","PeriodicalId":421860,"journal":{"name":"13th International Workshop on Program Comprehension (IWPC'05)","volume":"127 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121335776","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}
引用次数: 32
期刊
13th International Workshop on Program Comprehension (IWPC'05)
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1