-
Considering dependencies between bug reports to improve bugs triage Automat. Softw. Eng. (IF 1.857) Pub Date : 2021-01-07 Rafi Almhana, Marouane Kessentini
Software development teams need to deal with several open reports of critical bugs to be addressed urgently and simultaneously. The management of these bugs is a complex problem due to the limited resources and the deadlines-pressure. Most of the existing studies treated bug reports in isolation when assigning them to developers. Thus, developers may spend considerable cognitive efforts moving between
-
Understanding machine learning software defect predictions Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-10-12 Geanderson Esteves, Eduardo Figueiredo, Adriano Veloso, Markos Viggiato, Nivio Ziviani
Software defects are well-known in software development and might cause several problems for users and developers aside. As a result, researches employed distinct techniques to mitigate the impacts of these defects in the source code. One of the most notable techniques focuses on defect prediction using machine learning methods, which could support developers in handling these defects before they are
-
Analyzing system software components using API model guided symbolic execution Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-09-19 Tuba Yavuz, Ken (Yihang) Bai
Analyzing real-world software is challenging due to complexity of the software frameworks or APIs they depend on. In this paper, we present a tool, PROMPT, that facilitates the analysis of software components using API model guided symbolic execution. PROMPT has a specification component, PROSE, that lets users define an API model, which consists of a set of data constraints and life-cycle rules that
-
Multi-objective code reviewer recommendations: balancing expertise, availability and collaborations Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-09-05 Soumaya Rebai, Abderrahmen Amich, Somayeh Molaei, Marouane Kessentini, Rick Kazman
Modern Code review is one of the most critical tasks in software maintenance and evolution. A rigorous code review leads to fewer bugs and reduced overall maintenance costs. Most existing studies focus on automatically identifying the most qualified reviewers, based on their expertise, to review pull-up requests. However, the management of code reviews is a complex problem in practice due to a project’s
-
A multi-dimensional study on the state of the practice of REST APIs usage in Android apps Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-08-17 Manel Abdellatif, Rafik Tighilt, Abdelkarim Belkhir, Naouel Moha, Yann-Gaël Guéhéneuc, Éric Beaudry
REST APIs are gaining a tremendous attraction in industry and a growing usage in mobile platforms. They are well suited for providing content to apps running on small devices, like smartphones and tablets. Several research works studied REST APIs development practices for mobile apps. However, little is known about how Android apps use/consume these APIs in practice. Consequently, we propose a multi-dimensional
-
Modeling user concerns in Sharing Economy: the case of food delivery apps Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-08-09 Grant Williams, Miroslav Tushev, Fahimeh Ebrahimi, Anas Mahmoud
Sharing Economy apps, such as Uber, Airbnb, and TaskRabbit, have generated a substantial consumer interest over the past decade. The unique form of peer-to-peer business exchange these apps have enabled has been linked to significant levels of economic growth, helping people in resource-constrained communities to build social capital and move up the economic ladder. However, due to the multidimensional
-
ConfigCrusher: towards white-box performance analysis for configurable systems Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-08-05 Miguel Velez, Pooyan Jamshidi, Florian Sattler, Norbert Siegmund, Sven Apel, Christian Kästner
Stakeholders of configurable systems are often interested in knowing how configuration options influence the performance of a system to facilitate, for example, the debugging and optimization processes of these systems. Several black-box approaches can be used to obtain this information, but they either sample a large number of configurations to make accurate predictions or miss important performance-influencing
-
Algorithm selection for software validation based on graph kernels Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-04-18 Cedric Richter; Eyke Hüllermeier; Marie-Christine Jakobs; Heike Wehrheim
Algorithm selection is the task of choosing an algorithm from a given set of candidate algorithms when faced with a particular problem instance. Algorithm selection via machine learning (ML) has recently been successfully applied for various problem classes, including computationally hard problems such as SAT. In this paper, we study algorithm selection for software validation, i.e., the task of choosing
-
Automated semantics-preserving parallel decomposition of finite component and connector architectures Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-04-16 Oliver Kautz; Bernhard Rumpe; Andreas Wortmann
For the systematic development of logical, message-driven architectures, automating parallel decomposition of software components is important to achieve efficient modular and parallel system development. During development, monolithic components that realize multiple independent concerns need to be decomposed to obtain a higher quality architecture of cohesively encapsulated, better comprehensive
-
Multi-criteria test cases selection for model transformations Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-04-12 Bader Alkhazi; Chaima Abid; Marouane Kessentini; Dorian Leroy; Manuel Wimmer
Model transformations play an important role in the evolution of systems in various fields such as healthcare, automotive and aerospace industry. Thus, it is important to check the correctness of model transformation programs. Several approaches have been proposed to generate test cases for model transformations based on different coverage criteria (e.g., statements, rules, metamodel elements, etc
-
R eco L ibry S uite : a set of intelligent tools for the development of recommender systems Automat. Softw. Eng. (IF 1.857) Pub Date : 2020-03-31 Jose Luis Jorro-Aragoneses; Belén Díaz-Agudo; Juan A. Recio-García; Guillermo Jimenez-Díaz
Recommendation systems are a key part of almost every modern consumer website. Recommender systems include techniques to filter, explore and rank a huge amount of information and items according to the user’s current interests, and the similarity among users and items. Designing and implementing a recommender system usually requires high programming and machine learning skills. To alleviate these processes
-
How effective are existing Java API specifications for finding bugs during runtime verification? Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-11-21 Owolabi Legunsen; Nader Al Awar; Xinyue Xu; Wajih Ul Hassan; Grigore Roşu; Darko Marinov
Runtime verification can be used to find bugs early, during software development, by monitoring test executions against formal specifications (specs). The quality of runtime verification depends on the quality of the specs. While previous research has produced many specs for the Java API, manually or through automatic mining, there has been no large-scale study of their bug-finding effectiveness. Our
-
Using multi-objective search and machine learning to infer rules constraining product configurations Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-08-31 Safdar Aqeel Safdar; Tao Yue; Shaukat Ali; Hong Lu
Modern systems are being developed by integrating multiple products within/across product lines that communicate with each other through information networks. Runtime behaviors of such systems are related to product configurations and information networks. Cost-effectively supporting Product Line Engineering (PLE) of such systems is challenging mainly because of lacking the support of automation of
-
Enhance code search via reformulating queries with evolving contexts Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-08-17 Qing Huang; Guoqing Wu
To improve code search, many query expansion (QE) approaches use APIs or crowd knowledge for expanding a query. However, these approaches may sometimes negatively impact the retrieval performance. This is because they can’t distinguish the relevant terms from the irrelevant ones among a large set of candidate expansion terms and expand a query with irrelevant terms. In this paper, we propose QREC,
-
Automatic B-model repair using model checking and machine learning Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-08-14 Cheng-Hao Cai; Jing Sun; Gillian Dobbie
The B-method, which provides automated verification for the design of software systems, still requires users to manually repair faulty models. This paper proposes B-repair, an approach that supports automated repair of faulty models written in the B formal specification language. After discovering a fault in a model using the B-method, B-repair is able to suggest possible repairs for the fault, estimate
-
Modeling hierarchical usage context for software exceptions based on interaction data Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-08-13 Hui Chen; Kostadin Damevski; David Shepherd; Nicholas A. Kraft
Traces of user interactions with a software system, captured in production, are commonly used as an input source for user experience testing. In this paper, we present an alternative use, introducing a novel approach of modeling user interaction traces enriched with another type of data gathered in production—software fault reports consisting of software exceptions and stack traces. The model described
-
Precise semantic history slicing through dynamic delta refinement Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-06-15 Yi Li; Chenguang Zhu; Milos Gligoric; Julia Rubin; Marsha Chechik
Semantic history slicing solves the problem of extracting changes related to a particular high-level functionality from software version histories. State-of-the-art techniques combine static program analysis and dynamic execution tracing to infer an over-approximated set of changes that can preserve the functional behaviors captured by a test suite. However, due to the conservative nature of such techniques
-
An NLP approach for cross-domain ambiguity detection in requirements engineering Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-06-12 Alessio Ferrari; Andrea Esuli
During requirements elicitation, different stakeholders with diverse backgrounds and skills need to effectively communicate to reach a shared understanding of the problem at hand. Linguistic ambiguity due to terminological discrepancies may occur between stakeholders that belong to different technical domains. If not properly addressed, ambiguity can create frustration and distrust during requirements
-
Heterogeneous defect prediction with two-stage ensemble learning Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-06-04 Zhiqiang Li; Xiao-Yuan Jing; Xiaoke Zhu; Hongyu Zhang; Baowen Xu; Shi Ying
Heterogeneous defect prediction (HDP) refers to predicting defect-prone software modules in one project (target) using heterogeneous data collected from other projects (source). Recently, several HDP methods have been proposed. However, these methods do not sufficiently incorporate the two characteristics of the defect data: (1) data could be linear inseparable, and (2) data could be highly imbalanced
-
Improving web service interfaces modularity using multi-objective optimization Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-05-15 Sabrine Boukharata; Ali Ouni; Marouane Kessentini; Salah Bouktif; Hanzhang Wang
Service interface is a critical component in a service-oriented architecture (SOA). As first-class design artifact, a service interface should be properly designed to provide best practice of third-party reuse. However, a very common bad service design practice in existing SOAs is to place semantically unrelated operations implementing several abstractions in a single interface. Poorly designed service
-
Region and effect inference for safe parallelism Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-05-11 Alexandros Tzannes; Stephen T. Heumann; Lamyaa Eloussi; Mohsen Vakilian; Vikram S. Adve; Michael Han
In this paper, we present the first full regions-and-effects inference algorithm for explicitly parallel fork-join programs. We infer annotations equivalent to those in Deterministic Parallel Java (DPJ) for type-safe C++ programs. We chose the DPJ annotations because they give the strongest safety guarantees of any existing concurrency-checking approach we know of, static or dynamic, and it is also
-
Requirements-driven evolution of sociotechnical systems via probabilistic reasoning and hill climbing Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-04-22 Davide Dell’Anna; Fabiano Dalpiaz; Mehdi Dastani
Sociotechnical systems (STSs) are defined by the interaction between technical systems, like software and machines, and social entities, like humans and organizations. The entities within an STS are autonomous, thus weakly controllable, and the environment where the STS operates is highly dynamic. As a result, the design artifacts that represent the requirements of an STS, such as requirements models
-
Automatic, highly accurate app permission recommendation Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-03-19 Zhongxin Liu; Xin Xia; David Lo; John Grundy
To ensure security and privacy, Android employs a permission mechanism which requires developers to explicitly declare the permissions needed by their applications (apps). Users must grant those permissions before they install apps or during runtime. This mechanism protects users’ private data, but also imposes additional requirements on developers. For permission declaration, developers need knowledge
-
Change impact analysis for maintenance and evolution of variable software systems Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-02-07 Florian Angerer; Andreas Grimmer; Herbert Prähofer; Paul Grünbacher
Understanding variability is essential to allow the configuration of software systems to diverse requirements. Variability-aware program analysis techniques have been proposed for analyzing the space of program variants. Such techniques are highly beneficial, e.g., to determine the potential impact of changes during maintenance. This article presents an interprocedural and configuration-aware change
-
Collaborative feature location in models through automatic query expansion Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-01-28 Francisca Pérez; Jaime Font; Lorena Arcega; Carlos Cetina
Collaboration with other people is a major theme in the information-seeking process. However, most existing works that address the location of features during the maintenance or evolution of software do not support collaboration, or they are focused on code as the main software artifact. Hence, collaborative feature location in models has not enjoyed much attention to date. In this work, we address
-
Cost-aware scheduling for ensuring software performance and reliability under heterogeneous workloads of hybrid cloud Automat. Softw. Eng. (IF 1.857) Pub Date : 2019-01-21 Chunlin Li; Jianhang Tang; Youlong Luo
Cloud computing is a rapidly growing paradigm in software engineering that offers different services. The hybrid cloud is the best choice for the enterprise to benefit by taking resources on lease from the public cloud only if private cloud resources are not sufficient. However, the key is how to provide better cloud services and improve software performance in the hybrid cloud for software engineers
-
Fragment-based spreadsheet debugging Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-12-22 Dietmar Jannach; Thomas Schmitz; Birgit Hofer; Konstantin Schekotihin; Patrick Koch; Franz Wotawa
Faults in spreadsheets can represent a major risk for businesses. To minimize such risks, various automated testing and debugging approaches for spreadsheets were proposed. In such approaches, often one main assumption is that the spreadsheet developer is able to indicate if the outcomes of certain calculations correspond to the intended values. This, however, might require that the user performs calculations
-
Inductive verification of data model invariants in web applications using first-order logic Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-12-12 Ivan Bocić; Tevfik Bultan; Nicolás Rosner
Modern software applications store their data in remote cloud servers. Users interact with these applications using web browsers or thin clients running on mobile devices. A key concern for these applications is the correctness of the actions that update the data store, which are triggered by user requests. Considering that modern applications store and manage data for millions (even billions) of users
-
Efficient elicitation of software configurations using crowd preferences and domain knowledge Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-12-11 Yasser Gonzalez-Fernandez; Saeideh Hamidi; Stephen Chen; Sotirios Liaskos
As software systems grow in size and complexity, the process of configuring them to meet individual needs becomes more and more challenging. Users, especially those that are new to a system, are faced with an ever increasing number of configuration possibilities, making the task of choosing the right one more and more daunting. However, users are rarely alone in using a software system. Crowds of other
-
Model-driven allocation engineering: specifying and solving constraints based on the example of automotive systems Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-11-26 Uwe Pohlmann; Marcus Hüwe
Automotive systems provide sophisticated functionality and are controlled by networked electronic control units (ECUs). Nowadays, software engineers use component-based development approaches to develop their software. Moreover, software components have to be allocated to ECUs to be executed. Engineers have to cope with topology-, software-, and timing dependencies and memory-, scheduling-, and routing
-
Exploring output-based coverage for testing PHP web applications Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-10-15 Hung Viet Nguyen; Hung Dang Phan; Christian Kästner; Tien N. Nguyen
In software testing, different testers focus on different aspects of the software such as functionality, performance, design, and other attributes. While many tools and coverage metrics exist to support testers at the code level, not much support is targeted for testers who want to inspect the output of a program such as a dynamic web application. To support this category of testers, we propose a family
-
Optimizing the deployment of tree-shaped functional graphs of real-time system on distributed architectures Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-07-13 Asma Mehiaoui; Ernest Wozniak; Jean-Philippe Babau; Sara Tucci-Piergiovanni; Chokri Mraidha
Recent development methodologies from the industry and the academia for complex real-time systems define a stage in which system functions are deployed onto an execution platform. The deployment consists of the placement of functions on a distributed network of nodes, the partitioning of functions in tasks and the scheduling of tasks and messages. In this paper, we present two approaches towards the
-
DCTracVis: a system retrieving and visualizing traceability links between source code and documentation Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-07-11 Xiaofan Chen; John Hosking; John Grundy; Robert Amor
It is well recognized that traceability links between software artifacts provide crucial support in comprehension, efficient development, and effective management of a software system. However, automated traceability systems to date have been faced with two major open research challenges: how to extract traceability links with both high precision and high recall, and how to efficiently visualize links
-
How verified (or tested) is my code? Falsification-driven verification and testing Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-07-11 Alex Groce; Iftekhar Ahmed; Carlos Jensen; Paul E. McKenney; Josie Holmes
Formal verification has advanced to the point that developers can verify the correctness of small, critical modules. Unfortunately, despite considerable efforts, determining if a “verification” verifies what the author intends is still difficult. Previous approaches are difficult to understand and often limited in applicability. Developers need verification coverage in terms of the software they are
-
Cleaning up copy–paste clones with interactive merging Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-07-09 Krishna Narasimhan; Christoph Reichenbach; Julia Lawall
Copy-paste-modify is a form of software reuse in which developers explicitly duplicate source code. This duplicated source code, amounting to a code clone, is adapted for a new purpose. Copy-paste-modify is popular among software developers, however, empirical evidence shows that it complicates software maintenance and increases the frequency of bugs. To allow developers to use copy-paste-modify without
-
Inferring visual contracts from Java programs Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-07-05 Abdullah Alshanqiti; Reiko Heckel; Timo Kehrer
Visual contracts model the operation of components or services by pre- and post-conditions formalised as graph transformation rules. They provide a precise intuitive notation to support testing, understanding and analysis of software. Their detailed specification of internal data states and transformations, referred to as deep behavioural modelling, is an error-prone activity. In this paper we propose
-
Developing and evolving a DSL-based approach for runtime monitoring of systems of systems Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-07-05 Rick Rabiser; Jürgen Thanhofer-Pilisch; Michael Vierhauser; Paul Grünbacher; Alexander Egyed
Complex software-intensive systems are often described as systems of systems (SoS) due to their heterogeneous architectural elements. As SoS behavior is often only understandable during operation, runtime monitoring is needed to detect deviations from requirements. Today, while diverse monitoring approaches exist, most do not provide what is needed to monitor SoS, e.g., support for dynamically defining
-
FastTagRec: fast tag recommendation for software information sites Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-07-02 Jin Liu; Pingyi Zhou; Zijiang Yang; Xiao Liu; John Grundy
Software information sites such as StackOverflow and Freeecode enable information sharing and communication for developers around the world. To facilitate correct classification and efficient search, developers need to provide tags for their postings. However, tagging is inherently an uncoordinated process that depends not only on developers’ understanding of their own postings but also on other factors
-
Static window transition graphs for Android Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-06-16 Shengqian Yang; Haowei Wu; Hailong Zhang; Yan Wang; Chandrasekar Swaminathan; Dacong Yan; Atanas Rountev
This work develops a static analysis to create a model of the behavior of an Android application’s GUI. We propose the window transition graph (WTG), a model representing the possible GUI window sequences and their associated events and callbacks. A key component and contribution of our work is the careful modeling of the stack of currently-active windows, the changes to this stack, and the effects
-
Synthesis of probabilistic models for quality-of-service software engineering Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-05-17 Simos Gerasimou; Radu Calinescu; Giordano Tamburrelli
An increasingly used method for the engineering of software systems with strict quality-of-service (QoS) requirements involves the synthesis and verification of probabilistic models for many alternative architectures and instantiations of system parameters. Using manual trial-and-error or simple heuristics for this task often produces suboptimal models, while the exhaustive synthesis of all possible
-
MOSAICO: offline synthesis of adaptation strategy repertoires with flexible trade-offs Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-05-07 Javier Cámara; Bradley Schmerl; Gabriel A. Moreno; David Garlan
Self-adaptation improves the resilience of software-intensive systems, enabling them to adapt their structure and behavior to run-time changes (e.g., in workload and resource availability). Many of these approaches reason about the best way of adapting by synthesizing adaptation plans online via planning or model checking tools. This method enables the exploration of a rich solution space, but optimal
-
Efficient QoS aware two-layer service allocation in hybrid mobile cloud Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-05-04 Chunlin Li; Jing Zhang; Yi Chen; Layuan Li
The paper proposes QoS based service allocation optimization in hybrid mobile cloud. The optimization formulation of the hybrid mobile cloud utility adopts a network utility maximization framework. The proposed hybrid cloud service allocation framework leads to a decomposition of the overall hybrid mobile cloud system problem into a separate problem for mobile user and one for the hybrid cloud provider
-
Black-box tree test case generation through diversity Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-03-17 Ali Shahbazi; Mahsa Panahandeh; James Miller
To identify defects and security risks in many real-world applications structured test cases, including test cases structured as trees are required. A simple approach is to generate random trees as test cases [random testing (RT)]; however, the RT approach is not very effective. In this work, we investigate and extend the black-box tree test case generation approaches. We introduce a novel model to
-
Rule-based specification mining leveraging learning to rank Automat. Softw. Eng. (IF 1.857) Pub Date : 2018-02-24 Zherui Cao; Yuan Tian; Tien-Duy B. Le; David Lo
Software systems are often released without formal specifications. To deal with the problem of lack of and outdated specifications, rule-based specification mining approaches have been proposed. These approaches analyze execution traces of a system to infer the rules that characterize the protocols, typically of a library, that its clients must obey. Rule-based specification mining approaches work
-
Tool support for assurance case development Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-12-15 Ewen Denney; Ganesh Pai
Argument-based assurance cases, often represented and organized using graphical argument structures, are increasingly being used in practice to provide assurance to stakeholders, e.g., regulatory authorities, that a system is acceptable for its intended use with respect to dependability and safety concerns. In general, comprehensive system-wide assurance arguments aggregate a substantial amount of
-
Automatic approval prediction for software enhancement requests Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-10-26 Zeeshan Ahmed Nizamani; Hui Liu; David Matthew Chen; Zhendong Niu
Software applications often receive a large number of enhancement requests that suggest developers to fulfill additional functions. Such requests are usually checked manually by the developers, which is time consuming and tedious. Consequently, an approach that can automatically predict whether a new enhancement report will be approved is beneficial for both the developers and enhancement suggesters
-
Locating bugs without looking back Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-10-10 Tezcan Dilshener; Michel Wermelinger; Yijun Yu
Bug localisation is a core program comprehension task in software maintenance: given the observation of a bug, e.g. via a bug report, where is it located in the source code? Information retrieval (IR) approaches see the bug report as the query, and the source code files as the documents to be retrieved, ranked by relevance. Such approaches have the advantage of not requiring expensive static or dynamic
-
Lifting inter-app data-flow analysis to large app sets Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-09-13 Florian Sattler; Alexander von Rhein; Thorsten Berger; Niklas Schalck Johansson; Mikael Mark Hardø; Sven Apel
Mobile apps process increasing amounts of private data, giving rise to privacy concerns. Such concerns do not arise only from single apps, which might—accidentally or intentionally—leak private information to untrusted parties, but also from multiple apps communicating with each other. Certain combinations of apps can create critical data flows not detectable by analyzing single apps individually.
-
Indicators for merge conflicts in the wild: survey and empirical study Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-09-09 Olaf Leßenich; Janet Siegmund; Sven Apel; Christian Kästner; Claus Hunsen
While the creation of new branches and forks is easy and fast with modern version-control systems, merging is often time-consuming. Especially when dealing with many branches or forks, a prediction of merge costs based on lightweight indicators would be desirable to help developers recognize problematic merging scenarios before potential conflicts become too severe in the evolution of a complex software
-
Faster discovery of faster system configurations with spectral learning Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-08-30 Vivek Nair; Tim Menzies; Norbert Siegmund; Sven Apel
Despite the huge spread and economical importance of configurable software systems, there is unsatisfactory support in utilizing the full potential of these systems with respect to finding performance-optimal configurations. Prior work on predicting the performance of software configurations suffered from either (a) requiring far too many sample configurations or (b) large variances in their predictions
-
Self-adaptive concurrent components Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-08-22 Erik Österlund; Welf Löwe
Selecting the optimum component implementation variant is sometimes difficult since it depends on the component’s usage context at runtime, e.g., on the concurrency level of the application using the component, call sequences to the component, actual parameters, the hardware available etc. A conservative selection of implementation variants leads to suboptimal performance, e.g., if a component is conservatively
-
Evaluation of a traceability approach for informal freehand sketches Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-08-16 Markus Kleffmann; Sebastian Röhl; Matthias Book; Volker Gruhn
Most engineers and designers prefer to use large drawing boards such as whiteboards or flip charts for the initial collaborative sketching of a system’s models. Large interactive displays have recently begun to replace these physical drawing boards, blurring the line between freehand sketching and toolkit-aided modeling. While digital boards offer more flexibility in drawing and navigating models,
-
Cost-sensitive transfer kernel canonical correlation analysis for heterogeneous defect prediction Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-08-16 Zhiqiang Li; Xiao-Yuan Jing; Fei Wu; Xiaoke Zhu; Baowen Xu; Shi Ying
Cross-project defect prediction (CPDP) refers to predicting defects in a target project using prediction models trained from historical data of other source projects. And CPDP in the scenario where source and target projects have different metric sets is called heterogeneous defect prediction (HDP). Recently, HDP has received much research interest. Existing HDP methods only consider the linear correlation
-
Experience report on applying software analytics in incident management of online service Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-07-01 Jian-Guang Lou; Qingwei Lin; Rui Ding; Qiang Fu; Dongmei Zhang; Tao Xie
As online services become more and more popular, incident management has become a critical task that aims to minimize the service downtime and to ensure high quality of the provided services. In practice, incident management is conducted through analyzing a huge amount of monitoring data collected at runtime of a service. Such data-driven incident management faces several significant challenges such
-
Seeking the user interface Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-04-07 Steven P. Reiss; Yun Miao; Qi Xin
User interface design and coding can be complex and messy. We describe a system that uses code search to simplify and automate the exploration of such code. We start with a simple sketch of the desired interface along with a set of keywords describing the application context. If necessary, we convert the sketch into a scalable vector graphics diagram. We then use existing code search engines to find
-
A survey on search-based model-driven engineering Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-04-01 Ilhem Boussaïd; Patrick Siarry; Mohamed Ahmed-Nacer
Model-driven engineering (MDE) and search-based software engineering (SBSE) are both relevant approaches to software engineering. MDE aims to raise the level of abstraction in order to cope with the complexity of software systems, while SBSE involves the application of metaheuristic search techniques to complex software engineering problems, reformulating engineering tasks as optimization problems
-
Automatic performance prediction of multithreaded programs: a simulation approach Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-03-28 Alexander Tarvo; Steven P. Reiss
The performance of multithreaded programs is often difficult to understand and predict. Multiple threads engage in synchronization operations and use hardware simultaneously. This results in a complex non-linear dependency between the configuration of a program and its performance. To better understand this dependency a performance prediction model is used. Such a model predicts the performance of
-
Incremental test data generation for database queries Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-02-16 María José Suárez-Cabal; Claudio de la Riva; Javier Tuya; Raquel Blanco
Testing database applications is a complex task since it involves designing test databases with meaningful test data in order to reveal faults and, at the same time, with a small size in order to carry out the testing process in an efficient way. This paper presents an automated approach to generating test data (test relational databases and test inputs for query parameters) for a set of SQL queries
-
Exact search-space size for the refactoring scheduling problem Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-02-10 Rodrigo Morales; Francisco Chicano; Foutse Khomh; Giuliano Antoniol
Ouni et al. “Maintainability defects detection and correction: a multi-objective approach” proposed a search-based approach for generating optimal refactoring sequences. They estimated the size of the search space for the refactoring scheduling problem using a formulation that is incorrect; the search space is estimated to be too much larger than it is. We provide in this paper the exact expression
-
An approach to translating OCL invariants into OWL 2 DL axioms for checking inconsistency Automat. Softw. Eng. (IF 1.857) Pub Date : 2017-02-07 Chunlei Fu; Dan Yang; Xiaohong Zhang; Haibo Hu
Checking the design specification for contradictions at the early phase of the software development process is crucial to ensure that the design is implementable. However, the high expressivity of OCL makes manual inconsistency checking a difficult task. In addition, the developers cannot detect these problems by OCL itself due to its lack of automated reasoning support. We investigate an approach
Contents have been reproduced by permission of the publishers.