Latest in

total 3670took 0.10s
Usability of Virtual Reality Application Through the Lens of the User Community: A Case StudyFeb 20 2019The increasing availability and diversity of virtual reality (VR) applications highlighted the importance of their usability. Function-oriented VR applications posed new challenges that are not well studied in the literature. Moreover, user feedback becomes ... More
How Do the Open Source Communities Address Usability and UX Issues? An Exploratory StudyFeb 20 2019Usability and user experience (UX) issues are often not well emphasized and addressed in open source software (OSS) development. There is an imperative need for supporting OSS communities to collaboratively identify, understand, and fix UX design issues ... More
A systematic mapping study of developer social network researchFeb 20 2019Developer social networks (DSNs) are a tool for the analysis of community structures and collaborations between developers in software projects and software ecosystems. Within this paper, we present the results of a systematic mapping study on the use ... More
UPCASE - A Method for Self-Assessing the Capability of the Usability Process in Small OrganizationsFeb 19 2019Designing usable products is important to provide a competitive edge through user satisfaction. A first step to establish or improve a usability process is to perform a process assessment. As this may be costly, an alternative for organizations seeking ... More
Analysis and Detection of Information Types of Open Source Software Issue DiscussionsFeb 19 2019Most modern Issue Tracking Systems (ITSs) for open source software (OSS) projects allow users to add comments to issues. Over time, these comments accumulate into discussion threads embedded with rich information about the software project, which can ... More
Users Issues in using the Internet of Things SystemsFeb 18 2019Internet of Things (IoT) systems are bundles of networked sensors and actuators that are deployed in an environment and act upon the sensory data that they receive. These systems, especially consumer electronics, have two main cooperating components: ... More
Towards Improved Testing For Deep LearningFeb 17 2019The growing use of deep neural networks in safety-critical applications makes it necessary to carry out adequate testing to detect and correct any incorrect behavior for corner case inputs before they can be actually used. Deep neural networks lack an ... More
Does Migrate a Monolithic System to Microservices Decreases the Technical Debt?Feb 17 2019Background. The migration from monolithic systems to microservices involves deep refactoring of the systems. Therefore, the migration usually has a big economic impact and companies tend to postpone several activities during this process, mainly to speed-up ... More
Robustness and Games Against Nature in Molecular ProgrammingFeb 16 2019Matter, especially DNA, is now programmed to carry out useful processes at the nanoscale. As these programs and processes become more complex and their envisioned safety-critical applications approach deployment, it is essential to develop methods for ... More
Compiled Obfuscation for Data Structures in Encrypted ComputingFeb 16 2019Encrypted computing is an emerging technology based on a processor that `works encrypted', taking encrypted inputs to encrypted outputs while data remains in encrypted form throughout. It aims to secure user data against possible insider attacks by the ... More
The First 50 Years of Software Reliability Engineering: A History of SRE with First Person AccountsFeb 16 2019Software Reliability has just passed the 50-year milestone as a technical discipline along with Software Engineering. This paper traces the roots of Software Reliability Engineering (SRE) from its pre-software history to the beginnings of the field with ... More
Getafix: Learning to fix bugs automaticallyFeb 16 2019Feb 19 2019Static analyzers, including linters, can warn developers about programming errors, bugs, style errors, and generally suspicious code. Sometimes analyzer rules have obvious fixes but other times choosing an appropriate fix is more nuanced and can take ... More
Getafix: Learning to fix bugs automaticallyFeb 16 2019Static analyzers, including linters, can warn developers about programming errors, bugs, style errors, and generally suspicious code. Sometimes analyzer rules have obvious fixes but other times choosing an appropriate fix is more nuanced and can take ... More
Robustness of Neural Networks: A Probabilistic and Practical ApproachFeb 15 2019Neural networks are becoming increasingly prevalent in software, and it is therefore important to be able to verify their behavior. Because verifying the correctness of neural networks is extremely challenging, it is common to focus on the verification ... More
DeepFault: Fault Localization for Deep Neural NetworksFeb 15 2019Deep Neural Networks (DNNs) are increasingly deployed in safety-critical applications including autonomous vehicles and medical diagnostics. To reduce the residual risk for unexpected DNN behaviour and provide evidence for their trustworthy operation, ... More
Uncertainty Management in Software Projects: A Case Study in a Public CompanyFeb 15 2019Software development meets the various challenges of rapidly growing markets. To address such challenges projects to design and adopt specific development approaches. However, various project management approaches do not consider the uncertainties that ... More
Shepherding Hordes of Markov ChainsFeb 15 2019This paper considers large families of Markov chains (MCs) that are defined over a set of parameters with finite discrete domains. Such families occur in software product lines, planning under partial observability, and sketching of probabilistic programs. ... More
Variability Abstraction and Refinement for Game-based Lifted Model Checking of full CTL (Extended Version)Feb 14 2019Variability models allow effective building of many custom model variants for various configurations. Lifted model checking for a variability model is capable of verifying all its variants simultaneously in a single run by exploiting the similarities ... More
Assurance of System Safety: A Survey of Design and Argument PatternsFeb 14 2019The specification, design, and assurance of safety encompasses various concepts and best practices, subject of reuse in form of patterns. This work summarizes applied research on such concepts and practices with a focus on the last two decades and on ... More
Redundant Loads: A Software Inefficiency IndicatorFeb 14 2019Modern software packages have become increasingly complex with millions of lines of code and references to many external libraries. Redundant operations are a common performance limiter in these code bases. Missed compiler optimization opportunities, ... More
Checking Observational Purity of ProceduresFeb 14 2019Verifying whether a procedure is observationally pure is useful in many software engineering scenarios. An observationally pure procedure always returns the same value for the same argument, and thus mimics a mathematical function. The problem is challenging ... More
Sip4J: Statically inferring permission-based specifications for sequential Java programsFeb 14 2019In mainstream programming languages such as Java, a common way to enable concurrency is to manually introduce explicit concurrency constructs such as multi-threading. Given the intricacies in creating these constructs, it is very likely for a programmer ... More
Vulnerability Prediction Based on Weighted Software Network for Secure Software BuildingFeb 13 2019To build a secure communications software, Vulnerability Prediction Models (VPMs) are used to predict vulnerable software modules in the software system before software security testing. At present many software security metrics have been proposed to ... More
Adapting Quality Assurance to Adaptive Systems: The Scenario Coevolution ParadigmFeb 13 2019From formal and practical analysis, we identify new challenges that self-adaptive systems pose to the process of quality assurance. When tackling these, the effort spent on various tasks in the process of software engineering is naturally re-distributed. ... More
Time-aware Test Case Execution Scheduling for Cyber-Physical SystemsFeb 12 2019Testing cyber-physical systems involves the execution of test cases on target-machines equipped with the latest release of a software control system. When testing industrial robots, it is common that the target machines need to share some common resources, ... More
Security-Aware Synthesis Using Delayed-Action GamesFeb 12 2019Stochastic multiplayer games (SMGs) have gained attention in the field of strategy synthesis for multi-agent reactive systems. However, standard SMGs are limited to modeling systems where all agents have full knowledge of the state of the game. In this ... More
COST Action IC 1402 ArVI: Runtime Verification Beyond Monitoring -- Activity Report of Working Group 1Feb 11 2019This report presents the activities of the first working group of the COST Action ArVI, Runtime Verification beyond Monitoring. The report aims to provide an overview of some of the major core aspects involved in Runtime Verification. Runtime Verification ... More
Software Development Effort Estimation Using Regression Fuzzy ModelsFeb 10 2019Software effort estimation plays a critical role in project management. Erroneous results may lead to overestimating or underestimating effort, which can have catastrophic consequences on project resources. Machine-learning techniques are increasingly ... More
UML Model for Compressed Message ExchangeFeb 10 2019Web services is a collection of technologies that client-server model use also to exchange information. The Web services uses XML as the message wrapper to exchange information but the XML is always verbose and hence incurs latency in the communication. ... More
Swarm Debugging: the Collective Intelligence on Interactive DebuggingFeb 10 2019One of the most important tasks in software maintenance is debugging. To start an interactive debugging session, developers usually set breakpoints in an integrated development environment and navigate through different paths in their debuggers. We started ... More
Performance Modeling of Microservice Platforms Considering the Dynamics of the underlying Cloud InfrastructureFeb 09 2019Microservice architecture has transformed the way developers are building and deploying applications in nowadays cloud computing centers. This new approach provides increased scalability, flexibility, manageability and performance while reduces the complexity ... More
Replication Can Improve Prior Results: A GitHub Study of Pull Request AcceptanceFeb 09 2019Crowdsourcing and data mining can be used to effectively reduce the effort associated with the partial replication and enhancement of qualitative studies. For example, in a primary study, other researchers explored factors influencing the fate of GitHub ... More
Systematization of Vulnerability Discovery Knowledge: Review ProtocolFeb 08 2019In this report, we describe the review protocol that will guide the systematic review of the literature in metrics-based discovery of vulnerabilities. The protocol have been developed in adherence with the guidelines for performing Systematic Literature ... More
Code Smell Detection using Multilabel Classification ApproachFeb 08 2019Code smells are characteristics of the software that indicates a code or design problem which can make software hard to understand, evolve, and maintain. The code smell detection tools proposed in the literature produce different results, as smells are ... More
The List is the Process: Reliable Pre-Integration Tracking of Commits on Mailing ListsFeb 08 2019A considerable corpus of research on software evolution focuses on mining changes in software repositories, but omits their pre-integration history. We present a novel method for tracking this otherwise invisible evolution of software changes on mailing ... More
Quality quantification in Systems Engineering from the Qualimetry EyeFeb 08 2019Nowadays, quality definition, assessment, control and prediction cannot easily be missed in systems engineering. One common factor among these activities is quality quantification. Therefore, throughout this paper, the authors focus on the problems relating ... More
D&C: A Divide-and-Conquer Approach to IR-based Bug LocalizationFeb 07 2019Many automated tasks in software maintenance rely on information retrieval techniques to identify specific information within unstructured data. Bug localization is such a typical task, where text in a bug report is analyzed to identify file locations ... More
To the Attention of Mobile Software Developers: Guess What, Test your App!Feb 07 2019Software testing is an important phase in the software development life-cycle because it helps in identifying bugs in a software system before it is shipped into the hand of its end users. There are numerous studies on how developers test general-purpose ... More
To the Attention of Mobile Software Developers: Guess What, Test your App!Feb 07 2019Feb 14 2019Software testing is an important phase in the software development life-cycle because it helps in identifying bugs in a software system before it is shipped into the hand of its end users. There are numerous studies on how developers test general-purpose ... More
EMaaS: Energy Measurements as a Service for Mobile ApplicationsFeb 07 2019Measuring energy consumption is a challenging task faced by developers when building mobile apps. This paper presents EMaaS: a system that provides reliable energy measurements for mobile applications, without requiring a complex setup. It combines estimations ... More
A Manually-Curated Dataset of Fixes to Vulnerabilities of Open-Source SoftwareFeb 07 2019Advancing our understanding of software vulnerabilities, automating their identification, the analysis of their impact, and ultimately their mitigation is necessary to enable the development of software that is more secure. While operating a vulnerability ... More
A Manually-Curated Dataset of Fixes to Vulnerabilities of Open-Source SoftwareFeb 07 2019Feb 08 2019Advancing our understanding of software vulnerabilities, automating their identification, the analysis of their impact, and ultimately their mitigation is necessary to enable the development of software that is more secure. While operating a vulnerability ... More
PAI Data, Summary of the Project PAI Data ProtocolFeb 07 2019The Project PAI Data Protocol ("PAI Data") is a specification that extends the Project PAI Blockchain Protocol to include a method of securing and provisioning access to arbitrary data. In the context of PAI Coin Development Proposal (PDP) 2, this paper ... More
How Different Are Different diff Algorithms in Git? Use --histogram for Code ChangesFeb 07 2019Automatic identification of the differences between two versions of a file is a common and basic task in several applications of mining code repositories. Git, a version control system, has a diff utility and users can select algorithms of diff from the ... More
A Neural Model for Generating Natural Language Summaries of Program SubroutinesFeb 05 2019Source code summarization -- creating natural language descriptions of source code behavior -- is a rapidly-growing research topic with applications to automatic documentation generation, program comprehension, and software maintenance. Traditional techniques ... More
How to "DODGE" Complex Software Analytics?Feb 05 2019AI software is still software. Software engineers need better tools to make better use of AI software. For example, for software defect prediction and software text mining, the default tunings for software analytics tools can be improved with "hyperparameter ... More
PUTWorkbench: Analysing Privacy in AI-intensive SystemsFeb 05 2019AI intensive systems that operate upon user data face the challenge of balancing data utility with privacy concerns. We propose the idea and present the prototype of an open-source tool called Privacy Utility Trade-off (PUT) Workbench which seeks to aid ... More
Paracosm: A Language and Tool for Testing Autonomous Driving SystemsFeb 04 2019Systematic testing of autonomous vehicles operating in complex real-world scenarios is a difficult and expensive problem. We present Paracosm, a reactive language for writing test scenarios for autonomous driving systems. Paracosm allows users to programmatically ... More
A Study of an Agile Methodology with Scrum Approach to the Filipino Company-Sponsored I.T. Capstone ProgramFeb 04 2019Purpose - The research aims to show the relevance of company client sponsored student projects in the University of Asia and the Pacific Information Technology (UA&P IT) Capstone Program through the use ofan Agile Methodology with Scrum Approach. Method ... More
Smart Web Services (SmartWS) -- The Future of Services on the WebFeb 03 2019The past few years have been marked by an increased use of sensor technologies, abundant availability of mobile devices, and growing popularity of wearables, which enable the direct integration of their data as part of rich client applications. Despite ... More
Do We Preach What We Practice? Investigating the Practical Relevance of Requirements Engineering Syllabi - The IREB CaseFeb 01 2019Feb 06 2019Nowadays, there exist a plethora of different educational syllabi for Requirements Engineering (RE), all aiming at incorporating practically relevant educational units (EUs). Many of these syllabi are based, in one way or the other, on the syllabi provided ... More
Babylonian-style Programming: Design and Implementation of an Integration of Live Examples into General-purpose Source CodeFeb 01 2019When working on a program, developers traditionally have to simulate the behavior of the abstract code in their heads until they can execute the application. Live programming aims to support the development and comprehension of programs by providing more ... More
Practical Model-driven Data Generation for System TestingFeb 01 2019Feb 05 2019The ability to generate test data is often a necessary prerequisite for automated software testing. For the generated data to be fit for its intended purpose, the data usually has to satisfy various logical constraints. When testing is performed at a ... More
AMOGA: A Static-Dynamic Model Generation Strategy for Mobile Apps TestingFeb 01 2019In the past few years, mobile devices have been increasingly replacing traditional computers as their capabilities such as CPU computation, memory, RAM size, and many more, are being enhanced almost to the level of conventional computers. These capabilities ... More
Relating Voluntary Turnover with Job Characteristics, Satisfaction and Work Exhaustion - An Initial Study with Brazilian DevelopersJan 31 2019High rates of turnover among software developers remain, involving additional costs of hiring and training. Voluntary turnover may be due to workplace issues or personal career decisions, but it might as well relate to Job Characteristics, or even Job ... More
LEOPARD: Identifying Vulnerable Code for Vulnerability Assessment through Program MetricsJan 31 2019Identifying potentially vulnerable locations in a code base is critical as a pre-step for effective vulnerability assessment; i.e., it can greatly help security experts put their time and effort to where it is needed most. Metric-based and pattern-based ... More
Formal methods and software engineering for DL. Security, safety and productivity for DL systems developmentJan 31 2019Deep Learning (DL) techniques are now widespread and being integrated into many important systems. Their classification and recognition abilities ensure their relevance for multiple application domains. As machine-learning that relies on training instead ... More
Design and Evaluation of Smart-Contract-based System Operations for Permissioned Blockchain-based SystemsJan 31 2019Recently, enterprises have paid attention to permissioned blockchain (BC), where business transactions among inter-authorized organizations (forming a consortium) can automatically be executed on the basis of a distributed consensus protocol, and applications ... More
A Platform Architecture for Multi-Tenant Blockchain-Based SystemsJan 31 2019Blockchain has attracted a broad range of interests from start-ups, enterprises and governments to build next generation applications in a decentralized manner. Similar to cloud platforms, a single blockchain-based system may need to serve multiple tenants ... More
Towards a Characterization of Explainable SystemsJan 31 2019Building software-driven systems that are easily understood becomes a challenge, with their ever-increasing complexity and autonomy. Accordingly, recent research efforts strive to aid in designing explainable systems. Nevertheless, a common notion of ... More
ExceLint: Automatically Finding Spreadsheet Formula ErrorsJan 30 2019Spreadsheets are one of the most widely used programming environments, and are widely deployed in domains like finance where errors can have catastrophic consequences. We present a static analysis specifically designed to find spreadsheet formula errors. ... More
Automated Analysis, Reporting, and Archiving for Robotic Nondestructive Assay of Holdup DepositsJan 29 2019To decommission deactivated gaseous diffusion enrichment facilities, miles of contaminated pipe must be measured. The current method requires thousands of manual measurements, repeated manual data transcription, and months of manual analysis. The Pipe ... More
On the Impact of Programming Languages on Code QualityJan 29 2019This paper is a reproduction of work by Ray et al. which claimed to have uncovered a statistically significant association between eleven programming languages and software defects in projects hosted on GitHub. First we conduct an experimental repetition, ... More
Beware of the App! On the Vulnerability Surface of Smart Devices through their Companion AppsJan 29 2019Internet of Things (IoT) devices are becoming increasingly important. These devices are often resource-limited, hindering rigorous enforcement of security policies. Assessing the vulnerability of IoT devices is an important problem, but analyzing their ... More
A Critical Examination of Languages for Specifying Interaction Protocols for Decentralized Social MachinesJan 24 2019Important Web applications are social machines in that they they involve interoperation among autonomous parties through the Web. We particularly focus on decentralized social machines that reflect the autonomy of their participants in infrastructure ... More
Transfer-Learning Oriented Class Imbalance Learning for Cross-Project Defect PredictionJan 24 2019Cross-project defect prediction (CPDP) aims to predict defects of projects lacking training data by using prediction models trained on historical defect data from other projects. However, since the distribution differences between datasets from different ... More
NLSC: Unrestricted Natural Language-based Service Composition through Sentence EmbeddingsJan 23 2019Current approaches for service composition (assemblies of atomic services) require developers to use: (a) domain-specific semantics to formalize services that restrict the vocabulary for their descriptions, and (b) translation mechanisms for service retrieval ... More
The Value of Software Architecture Recovery for MaintenanceJan 23 2019In order to maintain a system, it is beneficial to know its software architecture. In the common case that this architecture is unavailable, architecture recovery provides a way to recover an architectural view of the system. Many different methods and ... More
Szenario-Optimierung für die Absicherung von automatisierten und autonomen FahrsystemenJan 17 2019The verification and validation of automated and autonomous driving systems impose a major challenge, especially the identification of suitable test scenarios. This work presents a methodology that adopts metaheuristic search to optimize scenarios. For ... More
NeuNetS: An Automated Synthesis Engine for Neural Network DesignJan 17 2019Application of neural networks to a vast variety of practical applications is transforming the way AI is applied in practice. Pre-trained neural network models available through APIs or capability to custom train pre-built neural network architectures ... More
The Maven Dependency Graph: a Temporal Graph-based Representation of Maven CentralJan 16 2019The Maven Central Repository provides an extraordinary source of data to understand complex architecture and evolution phenomena among Java applications. As of September 6, 2018, this repository includes 2.8M artifacts (compiled piece of code implemented ... More
Kubernetes as an Availability Manager for Microservice ApplicationsJan 15 2019The move towards the microservice based architecture is well underway. In this architectural style, small and loosely coupled modules are developed, deployed, and scaled independently to compose cloud-native applications. However, for carrier-grade service ... More
BlackWatch: Increasing Attack Awareness Within Web ApplicationsJan 14 2019Web applications are relied upon by many for the services they provide. It is essential that applications implement appropriate security measures to prevent security incidents. Currently, web applications focus resources towards the preventative side ... More
On the Diversity of Software Package Popularity Metrics: An Empirical Study of npmJan 14 2019Software systems often leverage on open source software libraries to reuse functionalities. Such libraries are readily available through software package managers like npm for JavaScript. Due to the huge amount of packages available in such package distributions, ... More
Serverless architecture efficiency: an exploratory studyJan 13 2019Cloud service provider propose services to insensitive customers to use their platform. Different services can achieve the same result at different cost. In this paper, we study the efficiency of a serverless architecture for running highly parallelizable ... More
Input Prioritization for Testing Neural NetworksJan 11 2019Deep neural networks (DNNs) are increasingly being adopted for sensing and control functions in a variety of safety and mission-critical systems such as self-driving cars, autonomous air vehicles, medical diagnostics, and industrial robotics. Failures ... More
Model Checking Clinical Decision Support Systems Using SMTJan 11 2019Individual clinical Knowledge Artifacts (KA) are designed to be used in Clinical Decision Support (CDS) systems at the point of care for delivery of safe, evidence-based care in modern healthcare systems. For formal authoring of a KA, syntax verification ... More
Catalog of Energy Patterns for Mobile ApplicationsJan 10 2019Software engineers make use of design patterns for reasons that range from performance to code comprehensibility. Several design patterns capturing the body of knowledge of best practices have been proposed in the past, namely creational, structural and ... More
A Deep Learning based Approach to Automated Android App TestingJan 09 2019Automated input generators are widely used for large-scale dynamic analysis and testing of mobile apps. Such input generators must constantly choose which UI element to interact with and how to interact with it, in order to achieve high coverage with ... More
A Journey Among Java Neutral Program VariantsJan 08 2019Neutral program variants are functionally similar to an original program, yet implement slightly different behaviors. Techniques such as approximate computing or genetic improvement share the intuition that potential for enhancements lies in these acceptable ... More
Designing Data Protection for GDPR Compliance into IoT Healthcare SystemsJan 08 2019In this paper, we investigate the implications of the General Data Privacy Regulation (GDPR) on the design of an IoT healthcare system. On 25th May 2018, the GDPR has become mandatory within the European Union and hence also for all suppliers of IT products. ... More
Specification Patterns for Robotic MissionsJan 07 2019Mobile and general-purpose robots increasingly support our everyday life, requiring dependable robotics control software. Creating such software mainly amounts to implementing their complex behaviors known as missions. Recognizing the need, a large number ... More
Keeping CALM: When Distributed Consistency is EasyJan 07 2019Jan 26 2019A key concern in modern distributed systems is to avoid the cost of coordination while maintaining consistent semantics. Until recently, there was no answer to the question of when coordination is actually required. In this paper we present an informal ... More
Different Maps for Different Uses. A Program Transformation for Intermediate Verification LanguagesJan 07 2019In theorem prover or SMT solver based verification, the program to be verified is often given in an intermediate verification language such as Boogie, Why, or CHC. This setting raises new challenges. We investigate a preprocessing step which takes the ... More
Evaluating software defect prediction performance: an updated benchmarking studyJan 07 2019Accurately predicting faulty software units helps practitioners target faulty units and prioritize their efforts to maintain software quality. Prior studies use machine-learning models to detect faulty software code. We revisit past studies and point ... More
Many Independent Objective (MIO) Algorithm for Test Suite GenerationJan 06 2019Automatically generating test suites is intrinsically a multi-objective problem, as any of the testing targets (e.g, statements to execute or mutants to kill) is an objective on its own. Test suite generation has peculiarities that are quite different ... More
Software Testing Process Models Benefits & Drawbacks: a Systematic Literature ReviewJan 05 2019Context: Software testing plays an essential role in product quality improvement. For this reason, several software testing models have been developed to support organizations. However, adoption of testing process models inside organizations is still ... More
Detecting and Diagnosing Energy Issues for Mobile ApplicationsJan 04 2019Energy efficiency is an important criterion to judge the quality of mobile apps, but one third of our randomly sampled apps are suffering from energy issues that can quickly drain battery. To understand these issues, we conducted an empirical study on ... More
Catalog of Optimization Strategies and Realizations for Composed Integration PatternsJan 04 2019The discipline of Enterprise Application Integration (EAI) is the centrepiece of current on-premise, cloud and device integration scenarios. However, the building blocks of integration scenarios, i.e., essentially a composition of Enterprise Integration ... More
Guigle: A GUI Search Engine for Android AppsJan 03 2019The process of developing a mobile application typically starts with the ideation and conceptualization of its user interface. This concept is then translated into a set of mock-ups to help determine how well the user interface embodies the intended features ... More
Full-speed Fuzzing: Reducing Fuzzing Overhead through Coverage-guided TracingDec 31 2018Jan 28 2019Of coverage-guided fuzzing's three main components: (1) testcase generation, (2) code coverage tracing, and (3) crash triage, code coverage tracing is a dominant source of overhead. Coverage-guided fuzzers trace every testcase's code coverage through ... More
A Systematic Literature Review of Automated Techniques for Functional GUI Testing of Mobile ApplicationsDec 30 2018Context. Multiple automated techniques have been proposed and developed for mobile application GUI testing aiming to improve effectiveness, efficiency, and practicality. The effectiveness, efficiency, and practicality are 3 fundamental characteristics ... More
The Diagrammatic AI Language (DIAL): Version 0.1Dec 28 2018Currently, there is no consistent model for visually or formally representing the architecture of AI systems. This lack of representation brings interpretability, correctness and completeness challenges in the description of existing models and systems. ... More
A Variability-Aware Design Approach to the Data Analysis Modeling ProcessDec 25 2018The massive amount of current data has led to many different forms of data analysis processes that aim to explore this data to uncover valuable insights. Methodologies to guide the development of big data science projects, including CRISP-DM and SEMMA, ... More
A Mapping Study on Software Process Self-Assessment MethodsDec 21 2018Assessing processes is one of the best ways for an organization to start a software process improvement program. An alternative for organizations seeking for lighter assessments methods is to perform self-assessments, which can be carried out by an organization ... More
Do we agree on user interface aesthetics of Android apps?Dec 21 2018Context: Visual aesthetics is increasingly seen as an essential factor in perceived usability, interaction, and overall appraisal of user interfaces especially with respect to mobile applications. Yet, a question that remains is how to assess and to which ... More
Formal Methods: Oversold? Underused? A SurveyDec 20 2018Context: Formal methods (FM) have been around for a while, still being unclear how to leverage their benefits, overcome their challenges, and set new directions for their improvement towards more successful transfer into practice. Objective: We study ... More
Leadership Gap in Agile Teams: How Teams and Scrum Masters MatureDec 19 2018Motivation: How immature teams can become agile is a question that puzzles practitioners and researchers alike. Scrum is one method that supports agile working. Empirical research on the Scrum Master role remains scarce and reveals contradicting results. ... More
Impact of Tool Support in Patch ConstructionDec 18 2018In this work, we investigate the practice of patch construction in the Linux kernel development, focusing on the differences between three patching processes: (1) patches crafted entirely manually to fix bugs, (2) those that are derived from warnings ... More
You Cannot Fix What You Cannot Find! An Investigation of Fault Localization Bias in Benchmarking Automated Program Repair SystemsDec 18 2018Properly benchmarking Automated Program Repair (APR) systems should contribute to the development and adoption of the research outputs by practitioners. To that end, the research community must ensure that it reaches significant milestones by reliably ... More