首页 > 最新文献

2011 18th Working Conference on Reverse Engineering最新文献

英文 中文
Reverse Engineering of Mobile Application Lifecycles 移动应用程序生命周期逆向工程
Pub Date : 2011-10-17 DOI: 10.1109/WCRE.2011.42
Dominik Franke, Corinna Elsemann, S. Kowalewski, Carsten Weise
In mobile applications, the application lifecycle consists of the process-related states (e.g. suspended, ready, running) and the transitions between them. A faulty or insufficient implementation of the mobile application lifecycle can be the source of many problematic faults, e.g. loss of data. Thus for a software developer, understanding and mastering the mobile application lifecycle is essential for high quality software. In our work with various mobile platforms, we found that the given lifecycle models and corresponding documentation are often inconsistent, incomplete and incorrect. In this paper we present a way to reverse-engineer application lifecycles of mobile platforms by testing. Within a case study we apply the presented concept to three mobile platforms: Android, iOS and Java ME. We further show how developers of mobile applications can use our results to get correct lifecycle models for these platforms.
在移动应用程序中,应用程序的生命周期由进程相关的状态(例如挂起、就绪、运行)和它们之间的转换组成。移动应用程序生命周期的错误或不充分实现可能是许多问题错误的根源,例如数据丢失。因此,对于软件开发人员来说,理解和掌握移动应用程序的生命周期对于高质量的软件至关重要。在我们与各种移动平台的合作中,我们发现给定的生命周期模型和相应的文档经常不一致、不完整和不正确。在本文中,我们提出了一种通过测试来逆向工程移动平台应用程序生命周期的方法。在一个案例研究中,我们将所呈现的概念应用于三个移动平台:Android、iOS和Java ME。我们进一步展示了移动应用开发者如何使用我们的结果为这些平台获得正确的生命周期模型。
{"title":"Reverse Engineering of Mobile Application Lifecycles","authors":"Dominik Franke, Corinna Elsemann, S. Kowalewski, Carsten Weise","doi":"10.1109/WCRE.2011.42","DOIUrl":"https://doi.org/10.1109/WCRE.2011.42","url":null,"abstract":"In mobile applications, the application lifecycle consists of the process-related states (e.g. suspended, ready, running) and the transitions between them. A faulty or insufficient implementation of the mobile application lifecycle can be the source of many problematic faults, e.g. loss of data. Thus for a software developer, understanding and mastering the mobile application lifecycle is essential for high quality software. In our work with various mobile platforms, we found that the given lifecycle models and corresponding documentation are often inconsistent, incomplete and incorrect. In this paper we present a way to reverse-engineer application lifecycles of mobile platforms by testing. Within a case study we apply the presented concept to three mobile platforms: Android, iOS and Java ME. We further show how developers of mobile applications can use our results to get correct lifecycle models for these platforms.","PeriodicalId":350863,"journal":{"name":"2011 18th Working Conference on Reverse Engineering","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130096031","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
Using Dynamic Analysis and Clustering for Implementing Services by Reusing Legacy Code 使用动态分析和集群通过重用遗留代码实现服务
Pub Date : 2011-10-17 DOI: 10.1109/WCRE.2011.41
Andreas Fuhr, Tassilo Horn, Volker Riediger
Migrating legacy systems towards Service-Oriented Architectures requires the identification of legacy code that is able to implement the new services. This paper proposes an approach combining dynamic analysis and data mining techniques to map legacy code to business processes and to identify code for service implementations based on this mapping. Validating the clustering solution in a first case study resulted in values of 70,6% in precision and 83,5% in recall.
将遗留系统迁移到面向服务的体系结构需要识别能够实现新服务的遗留代码。本文提出了一种结合动态分析和数据挖掘技术的方法,将遗留代码映射到业务流程,并根据这种映射识别服务实现的代码。在第一个案例研究中验证聚类解决方案的结果是精度为73.6%,召回率为83.5%。
{"title":"Using Dynamic Analysis and Clustering for Implementing Services by Reusing Legacy Code","authors":"Andreas Fuhr, Tassilo Horn, Volker Riediger","doi":"10.1109/WCRE.2011.41","DOIUrl":"https://doi.org/10.1109/WCRE.2011.41","url":null,"abstract":"Migrating legacy systems towards Service-Oriented Architectures requires the identification of legacy code that is able to implement the new services. This paper proposes an approach combining dynamic analysis and data mining techniques to map legacy code to business processes and to identify code for service implementations based on this mapping. Validating the clustering solution in a first case study resulted in values of 70,6% in precision and 83,5% in recall.","PeriodicalId":350863,"journal":{"name":"2011 18th Working Conference on Reverse Engineering","volume":"66 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131900342","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
An Android Security Case Study with Bauhaus 包豪斯的Android安全案例研究
Pub Date : 2011-10-17 DOI: 10.1109/WCRE.2011.29
Bernhard J. Berger, Michaela Bunke, K. Sohr
Software security has made great progress, code analysis tools are widely-used in industry for detecting common implementation-level security bugs. However, given the fact that we must deal with legacy code we plead to employ the techniques long been developed in the research area of program comprehension for software security. In cooperation with a security expert, we carried out a case study with the mobile phone platform Android, and employed the reverse engineering tool-suite Bauhaus for this security assessment. During the investigation we found some inconsistencies in the implementation of the Android security concepts. Based on the lessons learned from the case study, we propose several research topics in the area of reverse engineering that would support a security analyst during security assessments.
软件安全已经取得了很大的进步,代码分析工具被广泛应用于工业中,用于检测常见的实现级安全漏洞。然而,考虑到我们必须处理遗留代码这一事实,我们请求采用长期以来在软件安全的程序理解研究领域中开发的技术。我们与安全专家合作,对手机平台Android进行了案例研究,并使用逆向工程工具套件Bauhaus进行安全评估。在调查过程中,我们发现Android安全概念的实现存在一些不一致之处。基于从案例研究中获得的经验教训,我们在逆向工程领域提出了几个研究主题,这些主题将在安全评估期间支持安全分析人员。
{"title":"An Android Security Case Study with Bauhaus","authors":"Bernhard J. Berger, Michaela Bunke, K. Sohr","doi":"10.1109/WCRE.2011.29","DOIUrl":"https://doi.org/10.1109/WCRE.2011.29","url":null,"abstract":"Software security has made great progress, code analysis tools are widely-used in industry for detecting common implementation-level security bugs. However, given the fact that we must deal with legacy code we plead to employ the techniques long been developed in the research area of program comprehension for software security. In cooperation with a security expert, we carried out a case study with the mobile phone platform Android, and employed the reverse engineering tool-suite Bauhaus for this security assessment. During the investigation we found some inconsistencies in the implementation of the Android security concepts. Based on the lessons learned from the case study, we propose several research topics in the area of reverse engineering that would support a security analyst during security assessments.","PeriodicalId":350863,"journal":{"name":"2011 18th Working Conference on Reverse Engineering","volume":"191 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131794748","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
Does the Documentation of Design Pattern Instances Impact on Source Code Comprehension? Results from Two Controlled Experiments 设计模式实例的文档对源代码理解有影响吗?两个对照实验的结果
Pub Date : 2011-10-17 DOI: 10.1109/WCRE.2011.18
C. Gravino, M. Risi, G. Scanniello, G. Tortora
We present the results of a controlled experiment and a differentiated replication that have been carried out to assess the effect of the documentation of design patterns on the comprehension of source code. The two experiments involved Master Students in Computer Science at the University of Basilicas a and at University of Salerno, respectively. The participants to the original experiment performed a comprehension task with and without graphically-documented design patterns. Textually documented design patterns were provided or not to the participants to perform a comprehension task within the replication. The data analysis revealed that participants employing graphically documented design patterns achieved significantly better performances than the participants provided with source code alone. Conversely, the effect of textually documented design patterns was not statistically significant. A further analysis revealed that the documentation type (textual and graphical) does not significantly affect the performance, when participants correctly recognize design pattern instances.
我们展示了一项受控实验和一项差异化复制的结果,这些实验是为了评估设计模式文档对理解源代码的影响而进行的。这两项实验分别涉及巴西利卡斯大学和萨莱诺大学计算机科学专业的硕士生。原始实验的参与者在有或没有图形化记录的设计模式的情况下执行理解任务。是否向参与者提供了文本文档化的设计模式,以便在复制中执行理解任务。数据分析显示,使用图形化文档化设计模式的参与者比只提供源代码的参与者取得了明显更好的性能。相反,文本记录的设计模式的效果在统计上并不显著。进一步的分析表明,当参与者正确识别设计模式实例时,文档类型(文本和图形)不会显著影响性能。
{"title":"Does the Documentation of Design Pattern Instances Impact on Source Code Comprehension? Results from Two Controlled Experiments","authors":"C. Gravino, M. Risi, G. Scanniello, G. Tortora","doi":"10.1109/WCRE.2011.18","DOIUrl":"https://doi.org/10.1109/WCRE.2011.18","url":null,"abstract":"We present the results of a controlled experiment and a differentiated replication that have been carried out to assess the effect of the documentation of design patterns on the comprehension of source code. The two experiments involved Master Students in Computer Science at the University of Basilicas a and at University of Salerno, respectively. The participants to the original experiment performed a comprehension task with and without graphically-documented design patterns. Textually documented design patterns were provided or not to the participants to perform a comprehension task within the replication. The data analysis revealed that participants employing graphically documented design patterns achieved significantly better performances than the participants provided with source code alone. Conversely, the effect of textually documented design patterns was not statistically significant. A further analysis revealed that the documentation type (textual and graphical) does not significantly affect the performance, when participants correctly recognize design pattern instances.","PeriodicalId":350863,"journal":{"name":"2011 18th Working Conference on Reverse Engineering","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126306613","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
Extending Bug Localization Using Information Retrieval and Code Clone Location Techniques 利用信息检索和代码克隆定位技术扩展Bug定位
Pub Date : 2011-10-17 DOI: 10.1109/WCRE.2011.61
Matthew D. Beard
Bug localization involves the use of information about a bug to assist in locating sections of code that must be modified to fix the bug. Such a task can involve a considerable amount of time and effort on the part of software developers and/or maintainers. Recently, several automated bug localization techniques based on information retrieval (IR) models have been developed to speed the process of bug localization. Another code analysis technique involves locating duplicated sections of code in software projects, called code clones. We examine the application of code clone location techniques in the context of bug localization. We attempt to determine the advantages of extending existing code clone location techniques through the inclusion of IR models in the analysis process. We also examine a technique for extending the use of bug logging repositories and version control systems by analyzing the two using IR techniques.
缺陷定位包括使用有关缺陷的信息来帮助定位必须修改以修复缺陷的代码部分。这样的任务可能涉及软件开发人员和/或维护人员的大量时间和精力。近年来,一些基于信息检索(IR)模型的自动化缺陷定位技术得到了发展,以加快缺陷定位的进程。另一种代码分析技术涉及在软件项目中定位重复的代码部分,称为代码克隆。我们研究了代码克隆定位技术在bug定位中的应用。我们试图通过在分析过程中包含IR模型来确定扩展现有代码克隆定位技术的优势。我们还研究了一种扩展bug日志存储库和版本控制系统使用的技术,方法是使用IR技术对两者进行分析。
{"title":"Extending Bug Localization Using Information Retrieval and Code Clone Location Techniques","authors":"Matthew D. Beard","doi":"10.1109/WCRE.2011.61","DOIUrl":"https://doi.org/10.1109/WCRE.2011.61","url":null,"abstract":"Bug localization involves the use of information about a bug to assist in locating sections of code that must be modified to fix the bug. Such a task can involve a considerable amount of time and effort on the part of software developers and/or maintainers. Recently, several automated bug localization techniques based on information retrieval (IR) models have been developed to speed the process of bug localization. Another code analysis technique involves locating duplicated sections of code in software projects, called code clones. We examine the application of code clone location techniques in the context of bug localization. We attempt to determine the advantages of extending existing code clone location techniques through the inclusion of IR models in the analysis process. We also examine a technique for extending the use of bug logging repositories and version control systems by analyzing the two using IR techniques.","PeriodicalId":350863,"journal":{"name":"2011 18th Working Conference on Reverse Engineering","volume":"80 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128840038","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}
引用次数: 2
In-Memory Database Support for Source Code Search and Analytics 内存数据库支持源代码搜索和分析
Pub Date : 2011-10-17 DOI: 10.1109/WCRE.2011.60
O. Panchenko
Software engineers are coerced to deal with a large amount of information about source code. Appropriate tools could assist to handle it, but existing tools are not capable of processing and presenting such a large amount of information sufficiently. With the advent of in-memory column-oriented databases the performance of some data-intensive applications could be significantly improved. This has resulted in a completely new user experience of those applications and enabled new use-cases. This PhD thesis investigates the applicability of in-memory column-oriented databases for supporting daily software engineering activities. The major research question addressed in this thesis is as follows: does in-memory column-oriented database technology provide the necessary performance advantages for working interactively with large amounts of fine-grained structural information about source code? To investigate this research question two scenarios have been selected that particularly suffer from low performance. The first selected scenario is source code search. Existing source code repositories contain a large amount of structural data. Interface definitions, abstract syntax trees, and call graphs are examples of such structural data. Existing tools have solved the performance problems either by reducing the amount of data because of using a coarse-grained representation, or by preparing answers to developers' questions in advance, or by reducing the scope of search. All currently existing alternatives result in the loss of developers' productivity. The second scenario is source code analytics. To complete reverse engineering tasks software engineers often are required to analyze a number of atomic facts that have been extracted from source code. Examples of such atomic facts are occurrences of certain syntactic patterns in code, software product metrics or violations of development guidelines. Each fact typically has several characteristics, such as the type of the fact, the location in code where found, and some attributes. Particularly, analysis of large software systems requires the ability to process a large amount of such facts efficiently. During industrial experiments conducted for this thesis it was evidenced that in-memory technology provides performance gains that improve developers' productivity and enable scenarios previously not possible. This thesis overlaps both software engineering and database technology. From the viewpoint of software engineering, it seeks to find a way to support developers in dealing with a large amount of structural data. From the viewpoint of database technology, source code search and analytics are domains for studying fundamental issues of storing and querying structural data.
软件工程师被迫处理大量关于源代码的信息。适当的工具可以帮助处理它,但现有的工具无法充分处理和呈现如此大量的信息。随着内存中面向列的数据库的出现,一些数据密集型应用程序的性能可以得到显著提高。这导致了这些应用程序的全新用户体验,并启用了新的用例。这篇博士论文研究了内存中面向列的数据库在支持日常软件工程活动中的适用性。本文主要研究的问题如下:内存中面向列的数据库技术是否为与大量细粒度的源代码结构信息交互提供了必要的性能优势?为了调查这个研究问题,选择了两个特别遭受低绩效的场景。第一个选择的场景是源代码搜索。现有的源代码存储库包含大量的结构数据。接口定义、抽象语法树和调用图都是这种结构数据的例子。现有的工具通过减少数据量(因为使用粗粒度表示)、提前准备对开发人员的问题的答案、或者减少搜索范围来解决性能问题。所有当前存在的替代方案都会导致开发人员生产力的损失。第二个场景是源代码分析。为了完成逆向工程任务,软件工程师通常需要分析从源代码中提取的大量原子事实。这种原子事实的例子是代码中某些语法模式的出现、软件产品度量或对开发指南的违反。每个事实通常有几个特征,比如事实的类型、在代码中找到的位置和一些属性。特别是,大型软件系统的分析需要能够有效地处理大量这样的事实。在为本论文进行的工业实验中,证明内存技术提供了性能提升,提高了开发人员的生产力,并实现了以前不可能实现的场景。本文涉及软件工程和数据库技术。从软件工程的角度来看,它试图找到一种方法来支持开发人员处理大量的结构数据。从数据库技术的角度来看,源代码搜索和分析是研究结构化数据存储和查询基本问题的领域。
{"title":"In-Memory Database Support for Source Code Search and Analytics","authors":"O. Panchenko","doi":"10.1109/WCRE.2011.60","DOIUrl":"https://doi.org/10.1109/WCRE.2011.60","url":null,"abstract":"Software engineers are coerced to deal with a large amount of information about source code. Appropriate tools could assist to handle it, but existing tools are not capable of processing and presenting such a large amount of information sufficiently. With the advent of in-memory column-oriented databases the performance of some data-intensive applications could be significantly improved. This has resulted in a completely new user experience of those applications and enabled new use-cases. This PhD thesis investigates the applicability of in-memory column-oriented databases for supporting daily software engineering activities. The major research question addressed in this thesis is as follows: does in-memory column-oriented database technology provide the necessary performance advantages for working interactively with large amounts of fine-grained structural information about source code? To investigate this research question two scenarios have been selected that particularly suffer from low performance. The first selected scenario is source code search. Existing source code repositories contain a large amount of structural data. Interface definitions, abstract syntax trees, and call graphs are examples of such structural data. Existing tools have solved the performance problems either by reducing the amount of data because of using a coarse-grained representation, or by preparing answers to developers' questions in advance, or by reducing the scope of search. All currently existing alternatives result in the loss of developers' productivity. The second scenario is source code analytics. To complete reverse engineering tasks software engineers often are required to analyze a number of atomic facts that have been extracted from source code. Examples of such atomic facts are occurrences of certain syntactic patterns in code, software product metrics or violations of development guidelines. Each fact typically has several characteristics, such as the type of the fact, the location in code where found, and some attributes. Particularly, analysis of large software systems requires the ability to process a large amount of such facts efficiently. During industrial experiments conducted for this thesis it was evidenced that in-memory technology provides performance gains that improve developers' productivity and enable scenarios previously not possible. This thesis overlaps both software engineering and database technology. From the viewpoint of software engineering, it seeks to find a way to support developers in dealing with a large amount of structural data. From the viewpoint of database technology, source code search and analytics are domains for studying fundamental issues of storing and querying structural data.","PeriodicalId":350863,"journal":{"name":"2011 18th Working Conference on Reverse Engineering","volume":"73 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-10-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126931412","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
Code Search via Topic-Enriched Dependence Graph Matching 基于主题依赖性图匹配的代码搜索
Pub Date : 2011-10-01 DOI: 10.1109/WCRE.2011.69
Shaowei Wang, D. Lo, Lingxiao Jiang
Source code contains textual, structural, and semantic information, which can all be leveraged for effective search. Some studies have proposed semantic code search where users can specify query topics in a natural language. Other studies can search through system dependence graphs. In this paper, we propose a semantic dependence search engine that integrates both kinds of techniques and can retrieve code snippets based on expressive user queries describing both topics and dependencies. Users can specify their search targets in a free form format describing desired topics (i.e., high-level semantic or functionality of the target code); a specialized graph query language allows users to describe low-level data and control dependencies in code and thus helps to refine the queries described in the free format. Our empirical evaluation on a number of software maintenance tasks shows that our search engine can efficiently locate desired code fragments accurately.
源代码包含文本、结构和语义信息,这些信息都可以用于有效的搜索。一些研究提出了语义代码搜索,用户可以用自然语言指定查询主题。其他研究可以通过系统依赖图进行搜索。在本文中,我们提出了一个语义依赖搜索引擎,它集成了这两种技术,并可以基于描述主题和依赖关系的表达性用户查询检索代码片段。用户可以以自由格式指定他们的搜索目标,描述所需的主题(即目标代码的高级语义或功能);专门的图形查询语言允许用户在代码中描述低级数据和控制依赖关系,从而帮助改进以自由格式描述的查询。我们对一些软件维护任务的经验评估表明,我们的搜索引擎可以有效地准确定位所需的代码片段。
{"title":"Code Search via Topic-Enriched Dependence Graph Matching","authors":"Shaowei Wang, D. Lo, Lingxiao Jiang","doi":"10.1109/WCRE.2011.69","DOIUrl":"https://doi.org/10.1109/WCRE.2011.69","url":null,"abstract":"Source code contains textual, structural, and semantic information, which can all be leveraged for effective search. Some studies have proposed semantic code search where users can specify query topics in a natural language. Other studies can search through system dependence graphs. In this paper, we propose a semantic dependence search engine that integrates both kinds of techniques and can retrieve code snippets based on expressive user queries describing both topics and dependencies. Users can specify their search targets in a free form format describing desired topics (i.e., high-level semantic or functionality of the target code); a specialized graph query language allows users to describe low-level data and control dependencies in code and thus helps to refine the queries described in the free format. Our empirical evaluation on a number of software maintenance tasks shows that our search engine can efficiently locate desired code fragments accurately.","PeriodicalId":350863,"journal":{"name":"2011 18th Working Conference on Reverse Engineering","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121383450","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
Impact of Installation Counts on Perceived Quality: A Case Study on Debian 安装计数对感知质量的影响:Debian的一个案例研究
Pub Date : 2011-10-01 DOI: 10.1109/WCRE.2011.34
I. Herraiz, Emad Shihab, Thanh H. D. Nguyen, A. Hassan
Software defects are generally used to indicate software quality. However, due to the nature of software, we are often only able to know about the defects found and reported, either following the testing process or after being deployed. In software research studies, it is assumed that a higher amount of defect reports represents a higher amount of defects in the software system. In this paper, we argue that widely deployed programs have more reported defects, regardless of their actual number of defects. To address this question, we perform a case study on the Debian GNU/Linux distribution, a well-known free / open source software collection. We compare the defects reported for all the software packages in Debian with their popularity. We find that the number of reported defects for a Debian package is limited by its popularity. This finding has implications on defect prediction studies, showing that they need to consider the impact of popularity on perceived quality, otherwise they might be risking bias.
软件缺陷通常用来表示软件质量。然而,由于软件的性质,我们通常只能知道发现和报告的缺陷,要么是在测试过程之后,要么是在部署之后。在软件研究中,通常认为较高数量的缺陷报告表示软件系统中较高数量的缺陷。在本文中,我们认为广泛部署的程序有更多报告的缺陷,而不管它们的实际缺陷数量。为了解决这个问题,我们对Debian GNU/Linux发行版(一个著名的自由/开源软件集合)进行了一个案例研究。我们比较了Debian中所有软件包报告的缺陷和它们的流行程度。我们发现Debian软件包报告的缺陷数量受到其受欢迎程度的限制。这一发现暗示了缺陷预测研究,表明他们需要考虑受欢迎程度对感知质量的影响,否则他们可能会冒着偏见的风险。
{"title":"Impact of Installation Counts on Perceived Quality: A Case Study on Debian","authors":"I. Herraiz, Emad Shihab, Thanh H. D. Nguyen, A. Hassan","doi":"10.1109/WCRE.2011.34","DOIUrl":"https://doi.org/10.1109/WCRE.2011.34","url":null,"abstract":"Software defects are generally used to indicate software quality. However, due to the nature of software, we are often only able to know about the defects found and reported, either following the testing process or after being deployed. In software research studies, it is assumed that a higher amount of defect reports represents a higher amount of defects in the software system. In this paper, we argue that widely deployed programs have more reported defects, regardless of their actual number of defects. To address this question, we perform a case study on the Debian GNU/Linux distribution, a well-known free / open source software collection. We compare the defects reported for all the software packages in Debian with their popularity. We find that the number of reported defects for a Debian package is limited by its popularity. This finding has implications on defect prediction studies, showing that they need to consider the impact of popularity on perceived quality, otherwise they might be risking bias.","PeriodicalId":350863,"journal":{"name":"2011 18th Working Conference on Reverse Engineering","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132805998","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}
引用次数: 18
期刊
2011 18th Working Conference on Reverse Engineering
全部 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