34,509 research outputs found

    Exploring Maintainability Assurance Research for Service- and Microservice-Based Systems: Directions and Differences

    Get PDF
    To ensure sustainable software maintenance and evolution, a diverse set of activities and concepts like metrics, change impact analysis, or antipattern detection can be used. Special maintainability assurance techniques have been proposed for service- and microservice-based systems, but it is difficult to get a comprehensive overview of this publication landscape. We therefore conducted a systematic literature review (SLR) to collect and categorize maintainability assurance approaches for service-oriented architecture (SOA) and microservices. Our search strategy led to the selection of 223 primary studies from 2007 to 2018 which we categorized with a threefold taxonomy: a) architectural (SOA, microservices, both), b) methodical (method or contribution of the study), and c) thematic (maintainability assurance subfield). We discuss the distribution among these categories and present different research directions as well as exemplary studies per thematic category. The primary finding of our SLR is that, while very few approaches have been suggested for microservices so far (24 of 223, ?11%), we identified several thematic categories where existing SOA techniques could be adapted for the maintainability assurance of microservices

    Requirements Engineering for Pervasive Services

    Get PDF
    Developing pervasive mobile services for a mass market of end customers entails large up-front investments and therefore a good understanding of customer requirements is of paramount importance. This paper presents an approach for developing requirements engineering method that takes distinguishing features of pervasive services into account and that is based on fundamental insights in design methodology

    TAXONOMY DEVELOPMENT IN INFORMATION SYSTEMS: DEVELOPING A TAXONOMY OF MOBILE APPLICATIONS

    Get PDF
    The complexity of the information systems field often lends itself to classification schemes, or taxonomies, which provide ways to understand the similarities and differences among objects under study. Developing a taxonomy, however, is a complex process that is often done in an ad hoc way. This research-in-progress paper uses the design science paradigm to develop a systematic method for taxonomy development in information systems. The method we propose uses an indicator or operational level model that combines both empirical to deductive and deductive to empirical approaches. We evaluate this method by using it to develop a taxonomy of mobile applications, which we have chosen because of their ever-increasing number and variety. The resulting taxonomy contains seven dimensions with fifteen characteristics. We demonstrate the usefulness of this taxonomy by analyzing a range of current and proposed mobile applications. From the results of this analysis we identify combinations of characteristics where applications are missing and thus are candidates for new and potentially useful applications.taxonomy, design science, mobile application

    Extracting Build Changes with BUILDDIFF

    Full text link
    Build systems are an essential part of modern software engineering projects. As software projects change continuously, it is crucial to understand how the build system changes because neglecting its maintenance can lead to expensive build breakage. Recent studies have investigated the (co-)evolution of build configurations and reasons for build breakage, but they did this only on a coarse grained level. In this paper, we present BUILDDIFF, an approach to extract detailed build changes from MAVEN build files and classify them into 95 change types. In a manual evaluation of 400 build changing commits, we show that BUILDDIFF can extract and classify build changes with an average precision and recall of 0.96 and 0.98, respectively. We then present two studies using the build changes extracted from 30 open source Java projects to study the frequency and time of build changes. The results show that the top 10 most frequent change types account for 73% of the build changes. Among them, changes to version numbers and changes to dependencies of the projects occur most frequently. Furthermore, our results show that build changes occur frequently around releases. With these results, we provide the basis for further research, such as for analyzing the (co-)evolution of build files with other artifacts or improving effort estimation approaches. Furthermore, our detailed change information enables improvements of refactoring approaches for build configurations and improvements of models to identify error-prone build files.Comment: Accepted at the International Conference of Mining Software Repositories (MSR), 201
    • …
    corecore