ESEC/FSE 2013最新文献

筛选
英文 中文
Feature model extraction from large collections of informal product descriptions 从大量非正式产品描述中提取特征模型
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2491455
J. Davril, Edouard Delfosse, N. Hariri, M. Acher, J. Cleland-Huang, P. Heymans
{"title":"Feature model extraction from large collections of informal product descriptions","authors":"J. Davril, Edouard Delfosse, N. Hariri, M. Acher, J. Cleland-Huang, P. Heymans","doi":"10.1145/2491411.2491455","DOIUrl":"https://doi.org/10.1145/2491411.2491455","url":null,"abstract":"Feature Models (FMs) are used extensively in software product line engineering to help generate and validate individual product configurations and to provide support for domain analysis. As FM construction can be tedious and time-consuming, researchers have previously developed techniques for extracting FMs from sets of formally specified individual configurations, or from software requirements specifications for families of existing products. However, such artifacts are often not available. In this paper we present a novel, automated approach for constructing FMs from publicly available product descriptions found in online product repositories and marketing websites such as SoftPedia and CNET. While each individual product description provides only a partial view of features in the domain, a large set of descriptions can provide fairly comprehensive coverage. Our approach utilizes hundreds of partial product descriptions to construct an FM and is described and evaluated against antivirus product descriptions mined from SoftPedia.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123166178","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}
引用次数: 150
Towards open architecture system 走向开放式体系结构
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2492407
Bahtijar Vogel
{"title":"Towards open architecture system","authors":"Bahtijar Vogel","doi":"10.1145/2491411.2492407","DOIUrl":"https://doi.org/10.1145/2491411.2492407","url":null,"abstract":"The use of diverse standards while developing web and mobile technologies brings new challenges when it comes to flexibility, interoperability, customizability and extensibility of the software systems. In addition, such systems in most of the cases are closed, thus make the development and customization process for system designers, developers and end-users a challenging effort. All these developments require further research attention. This work addresses these challenges from open system architecture perspective. The proposed approach is based on practical development efforts, and theoretical research including state of the art projects and definitions related to open architectures that we surveyed. The initial results indicate that a combination of service-oriented approaches with open source components and open standard data formats pave the way towards an open, extensible architecture. The core contribution of this research will be (a) an open architecture model and (b) the developed system itself based on the model, and (c) the benefits of applying open architecture approaches throughout the development processes.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125271952","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
Second-order constraints in dynamic invariant inference 动态不变推理中的二阶约束
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2491457
K. Li, Christoph Reichenbach, Y. Smaragdakis, M. Young
{"title":"Second-order constraints in dynamic invariant inference","authors":"K. Li, Christoph Reichenbach, Y. Smaragdakis, M. Young","doi":"10.1145/2491411.2491457","DOIUrl":"https://doi.org/10.1145/2491411.2491457","url":null,"abstract":"The current generation of dynamic invariant detectors often produce invariants that are inconsistent with program semantics or programmer knowledge. We improve the consistency of dynamically discovered invariants by taking into account higher-level constraints. These constraints encode knowledge about invariants, even when the invariants themselves are unknown. For instance, even though the invariants describing the behavior of two functions f1 and f2 may be unknown, we may know that any valid input for f1 is also valid for f2, i.e., the precondition of f1 implies that of f2. We explore techniques for expressing and employing such consistency constraints to improve the quality of produced invariants. We further introduce techniques for dynamically discovering potential second-order constraints that the programmer can subsequently approve or reject. \u0000 Our implementation builds on the Daikon tool, with a vocabulary of constraints that the programmer can use to enhance and constrain Daikon’s inference. We show that dynamic inference of second-order constraints together with minimal human effort can significantly influence the produced (first-order) invariants even in systems of substantial size, such as the Apache Commons Collections and the AspectJ compiler. We also find that 99% of the dynamically inferred second-order constraints we sampled are true.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114909914","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}
引用次数: 10
Jalangi: a selective record-replay and dynamic analysis framework for JavaScript Jalangi: JavaScript的选择性记录重放和动态分析框架
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2491447
Koushik Sen, Swaroop Kalasapur, T. Brutch, S. Gibbs
{"title":"Jalangi: a selective record-replay and dynamic analysis framework for JavaScript","authors":"Koushik Sen, Swaroop Kalasapur, T. Brutch, S. Gibbs","doi":"10.1145/2491411.2491447","DOIUrl":"https://doi.org/10.1145/2491411.2491447","url":null,"abstract":"JavaScript is widely used for writing client-side web applications and is getting increasingly popular for writing mobile applications. However, unlike C, C++, and Java, there are not that many tools available for analysis and testing of JavaScript applications. In this paper, we present a simple yet powerful framework, called Jalangi, for writing heavy-weight dynamic analyses. Our framework incorporates two key techniques: 1) selective record-replay, a technique which enables to record and to faithfully replay a user-selected part of the program, and 2) shadow values and shadow execution, which enables easy implementation of heavy-weight dynamic analyses. Our implementation makes no special assumption about JavaScript, which makes it applicable to real-world JavaScript programs running on multiple platforms. We have implemented concolic testing, an analysis to track origins of nulls and undefined, a simple form of taint analysis, an analysis to detect likely type inconsistencies, and an object allocation profiler in Jalangi. Our evaluation of Jalangi on the SunSpider benchmark suite and on five web applications shows that Jalangi has an average slowdown of 26X during recording and 30X slowdown during replay and analysis. The slowdowns are comparable with slowdowns reported for similar tools, such as PIN and Valgrind for x86 binaries. We believe that the techniques proposed in this paper are applicable to other dynamic languages.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122718111","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}
引用次数: 273
Distributed program tracing 分布式程序跟踪
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2491451
Diptikalyan Saha, P. Dhoolia, G. Paul
{"title":"Distributed program tracing","authors":"Diptikalyan Saha, P. Dhoolia, G. Paul","doi":"10.1145/2491411.2491451","DOIUrl":"https://doi.org/10.1145/2491411.2491451","url":null,"abstract":"Dynamic program analysis techniques depend on accurate program traces. Program instrumentation is commonly used to collect these traces, which causes overhead to the program execution. Various techniques have addressed this problem by minimizing the number of probes/witnesses used to collect traces. In this paper, we present a novel distributed trace collection framework wherein, a program is executed multiple times with the same input for different sets of witnesses. The partial traces such obtained are then merged to create the whole program trace. Such divide-and-conquer strategy enables parallel collection of partial traces, thereby reducing the total time of collection. The problem is particularly challenging as arbitrary distribution of witnesses cannot guarantee correct formation of traces. We provide and prove a necessary and sufficient condition for distributing the witnesses which ensures correct formation of trace. Moreover, we describe witness distribution strategies that are suitable for parallel collection. We use the framework to collect traces of field SAP-ABAP programs using breakpoints as witnesses as instrumentation cannot be performed due to practical constraints. To optimize such collection, we extend Ball-Larus' optimal edge-based profiling algorithm to an optimal node-based algorithm. We demonstrate the effectiveness of the framework for collecting traces of SAP-ABAP programs.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"69 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122932598","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
SocialCDE: a social awareness tool for global software teams SocialCDE:面向全球软件团队的社会意识工具
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2494592
Fabio Calefato, F. Lanubile
{"title":"SocialCDE: a social awareness tool for global software teams","authors":"Fabio Calefato, F. Lanubile","doi":"10.1145/2491411.2494592","DOIUrl":"https://doi.org/10.1145/2491411.2494592","url":null,"abstract":"We present SocialCDE, a tool that aims at augmenting Application Lifecycle Management (ALM) platforms with social awareness to facilitate the establishment of interpersonal connections and increase the likelihood of successful interactions by disclosing developers’ personal interests and contextual information.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122226513","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
An empirical analysis of the co-evolution of schema and code in database applications 数据库应用中模式与代码协同演化的实证分析
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2491431
Dong Qiu, Bixin Li, Z. Su
{"title":"An empirical analysis of the co-evolution of schema and code in database applications","authors":"Dong Qiu, Bixin Li, Z. Su","doi":"10.1145/2491411.2491431","DOIUrl":"https://doi.org/10.1145/2491411.2491431","url":null,"abstract":"Modern database applications are among the most widely used and complex software systems. They constantly evolve, responding to changes to data, database schemas, and code. It is challenging to manage these changes and ensure that everything co-evolves consistently. For example, when a database schema is modified, all the code that interacts with the database must be changed accordingly. Although database evolution and software evolution have been extensively studied in isolation, the co-evolution of schema and code has largely been unexplored. \u0000 This paper presents the first comprehensive empirical analysis of the co-evolution of database schemas and code in ten popular large open-source database applications, totaling over 160K revisions. Our major findings include: 1) Database schemas evolve frequently during the application lifecycle, exhibiting a variety of change types with similar distributions across the studied applications; 2) Overall, schema changes induce significant code-level modifications, while certain change types have more impact on code than others; and 3) Co-change analyses can be viable to automate or assist with database application evolution. We have also observed that: 1) 80% of the schema changes happened in 20-30% of the tables, while nearly 40% of the tables did not change; and 2) Referential integrity constraints and stored procedures are rarely used in our studied subjects. We believe that our study reveals new insights into how database applications evolve and useful guidelines for designing assistive tools to aid their evolution.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"15 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128597996","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}
引用次数: 87
Crossing the gap from imperative to functional programming through refactoring 通过重构跨越从命令式编程到函数式编程的鸿沟
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2491461
A. Gyori, Lyle Franklin, Danny Dig, J. Lahoda
{"title":"Crossing the gap from imperative to functional programming through refactoring","authors":"A. Gyori, Lyle Franklin, Danny Dig, J. Lahoda","doi":"10.1145/2491411.2491461","DOIUrl":"https://doi.org/10.1145/2491411.2491461","url":null,"abstract":"Java 8 introduces two functional features: lambda expressions and functional operations like map or filter that apply a lambda expression over the elements of a Collection. Refactoring existing code to use these new features enables explicit but unobtrusive parallelism and makes the code more succinct. However, refactoring is tedious: it requires changing many lines of code. It is also error-prone: the programmer must reason about the control-, data-flow, and side-effects. Fortunately, refactorings can be automated. We designed and implemented LambdaFicator, a tool which automates two refactorings. The first refactoring converts anonymous inner classes to lambda expressions. The second refactoring converts for loops that iterate over Collections to functional operations that use lambda expressions. Using 9 open-source projects, we have applied these two refactorings 1263 and 1709 times, respectively. The results show that LambdaFicator is useful: (i) it is widely applicable, (ii) it reduces the code bloat, (iii) it increases programmer productivity, and (iv) it is accurate.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"12 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123378285","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}
引用次数: 55
Z3-str: a z3-based string solver for web application analysis Z3-str:用于web应用程序分析的基于z3的字符串求解器
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2491456
Yunhui Zheng, X. Zhang, Vijay Ganesh
{"title":"Z3-str: a z3-based string solver for web application analysis","authors":"Yunhui Zheng, X. Zhang, Vijay Ganesh","doi":"10.1145/2491411.2491456","DOIUrl":"https://doi.org/10.1145/2491411.2491456","url":null,"abstract":"Analyzing web applications requires reasoning about strings and non-strings cohesively. Existing string solvers either ignore non-string program behavior or support limited set of string operations. In this paper, we develop a general purpose string solver, called Z3-str, as an extension of the Z3 SMT solver through its plug-in interface. Z3-str treats strings as a primitive type, thus avoiding the inherent limitations observed in many existing solvers that encode strings in terms of other primitives. The logic of the plug-in has three sorts, namely, bool, int and string. The string-sorted terms include string constants and variables of arbitrary length, with functions such as concatenation, sub-string, and replace. The int-sorted terms are standard, with the exception of the length function over string terms. The atomic formulas are equations over string terms, and (in)-equalities over integer terms. Not only does our solver have features that enable whole program symbolic, static and dynamic analysis, but also it performs better than other solvers in our experiments. The application of Z3-str in remote code execution detection shows that its support of a wide spectrum of string operations is key to reducing false positives.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"129 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121382427","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}
引用次数: 258
Using topic models to understand the evolution of a software ecosystem 使用主题模型来理解软件生态系统的演变
ESEC/FSE 2013 Pub Date : 2013-08-18 DOI: 10.1145/2491411.2492402
Nicolás López
{"title":"Using topic models to understand the evolution of a software ecosystem","authors":"Nicolás López","doi":"10.1145/2491411.2492402","DOIUrl":"https://doi.org/10.1145/2491411.2492402","url":null,"abstract":"The development of a software system is now ever more frequently a part of a larger development effort, including multiple software systems that co-exist in the same environment: a software ecosystem. Though most studies of the evolution of software have focused on a single software system, there is much that we can learn from the analysis of a set of interrelated systems. Topic modeling techniques show promise for mining the data stored in software repositories to understand the evolution of a system. In my research I seek to explore how topic modeling techniques can aid in understanding the evolution of a software ecosystem. The results of this research have the potential to improve how topic modeling techniques are used to predict, plan, and understand the evolution of software, and will inform the design of tools that support software engineering activities such as feature location, expertise identification, and bug detection.","PeriodicalId":254005,"journal":{"name":"ESEC/FSE 2013","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-08-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128104114","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
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学术官方微信