40 research outputs found

    The evolution of the laws of software evolution. A discussion based on a systematic literature review

    Get PDF
    After more than 40 years of life, software evolution should be considered as a mature field. However, despite such a long history, many research questions still remain open, and controversial studies about the validity of the laws of software evolution are common. During the first part of these 40 years the laws themselves evolved to adapt to changes in both the research and the software industry environments. This process of adaption to new paradigms, standards, and practices stopped about 15 years ago, when the laws were revised for the last time. However, most controversial studies have been raised during this latter period. Based on a systematic and comprehensive literature review, in this paper we describe how and when the laws, and the software evolution field, evolved. We also address the current state of affairs about the validity of the laws, how they are perceived by the research community, and the developments and challenges that are likely to occur in the coming years

    Context-Adaptive Coordination of Pervasive Services by Interpreting Models during Runtime

    Full text link
    [EN] One of the most important goals of pervasive systems is to help users in their daily life by automating their behaviour patterns. To achieve this, pervasive services must be dynamically coordinated, executed and adapted to context according to user behaviour patterns. In this work, we propose a model-driven solution to meet this challenge. We propose a task model and a context ontology to design context-adaptive coordination of services at a high level of abstraction. This design facilitates the coordination analysis at design time and is also reused at runtime. We propose a software architecture that interprets the models at runtime in order to coordinate the service execution that is required to support user behaviour patterns. This coordination is done in a context-adaptive way and decoupled from service implementation. This approach makes the models the only representation of service coordination, which facilitates the maintenance and evolution of the executed service coordination after deployment.This work has been developed with the support of (a) MICINN under the project EVERYWARE TIN2010-18011 and (b) MITYC under the project LIFEWEAR TSI-020400-2010-100 co-funded with ERDF.Serral Asensio, E.; Valderas Aranda, PJ.; Pelechano Ferragud, V. (2013). Context-Adaptive Coordination of Pervasive Services by Interpreting Models during Runtime. Computer Journal. 56(1):87-114. https://doi.org/10.1093/comjnl/bxs019S8711456

    On porting software visualization tools to the web

    Get PDF
    Software systems are hard to understand due to the complexity and the sheer size of the data to be analyzed. Software visualization tools are a great help as they can sum up large quantities of data in dense, meaningful pictures. Traditionally, such tools come in the form of desktop applications. Modern web frameworks are about to change this status quo, as building software visualization tools as web applications can help in making them available to a larger audience in a collaborative setting. Such a migration comes with a number of promises, perils, and technical implications that must be considered before starting any migration process. In this paper, we share our experiences in porting two such tools to the web and provide guidelines about the porting. In particular, we discuss promises and perils that go hand in hand with such an endeavor and present a number of technological alternatives that are available to implement web-based visualization

    Efficient and Effective Event Pattern Management

    Get PDF
    The goal of this thesis is to reduce the barriers stopping more enterprises from accessing CEP technology by providing additional support in managing relevant business situations. Therefore we outline the role of event pattern management and present a methodology, methods and tools aiming at an efficient and effective event pattern management. We provide a meta model for event patterns, an event pattern life cycle methodology, methods for guidance, refinement and evolution

    Open Source Software Evolution and Its Dynamics

    Get PDF
    This thesis undertakes an empirical study of software evolution by analyzing open source software (OSS) systems. The main purpose is to aid in understanding OSS evolution. The work centers on collecting large quantities of structural data cost-effectively and analyzing such data to understand software evolution dynamics (the mechanisms and causes of change or growth). We propose a multipurpose systematic approach to extracting program facts (e. g. , function calls). This approach is supported by a suite of C and C++ program extractors, which cover different steps in the program build process and handle both source and binary code. We present several heuristics to link facts extracted from individual files into a combined system model of reasonable accuracy. We extract historical sequences of system models to aid software evolution analysis. We propose that software evolution can be viewed as Punctuated Equilibrium (i. e. , long periods of small changes interrupted occasionally by large avalanche changes). We develop two approaches to study such dynamical behavior. One approach uses the evolution spectrograph to visualize file level changes to the implemented system structure. The other approach relies on automated software clustering techniques to recover system design changes. We discuss lessons learned from using these approaches. We present a new perspective on software evolution dynamics. From this perspective, an evolving software system responds to external events (e. g. , new functional requirements) according to Self-Organized Criticality (SOC). The SOC dynamics is characterized by the following: (1) the probability distribution of change sizes is a power law; and (2) the time series of change exhibits long range correlations with power law behavior. We present empirical evidence that SOC occurs in open source software systems

    Governance and organizational sponsorship as success factors in free/libre and open source software development: An empirical investigation using structural equation modeling

    Get PDF
    Recent advances in information technologies and subsequent explosive growth of computer software use in practically all aspects of everyday life provide tremendous opportunities and benefits for improving people\u27s lives. However, significant proportion of software projects represents cancelled, abandoned or otherwise failed projects. This situation exists not only in commercial software products or government information systems, but also in an increasingly popular and important domain of free/libre and open source software (FLOSS). The problem of failures in software development projects requires identification and understanding of the factors of success and their interrelationships. Practice and previous research suggest that governance of software development projects plays crucial role in their success. Increasing adoption and sponsorship of FLOSS by commercial firms and government organizations present additional challenges; such sponsorship may also interact with governance in FLOSS projects and play a role in determining their success. This dissertation focused on analyzing the role and significance of governance and organizational sponsorship in the success of FLOSS development. This study used both conceptual analysis and empirical methods. The conceptual analysis phase, a preliminary study based on the review of existing literature, produced a partial model of success in FLOSS development. This model was verified in an empirical phase, which statistically analyzed data from multiple FLOSS repositories and other public sources. The statistical analysis was based on structural equation modeling (SEM) approach. Results of this study did not confirm hypothesized effects of the main two factors (governance and organizational sponsorship) on FLOSS success, but confirmed a positive effect of project maturity on the success. The likely reason of the lack of support for the main factors is unavailability of sufficient and correct data for proper operationalization. This and other uncovered issues are planned to be addressed in the future research on the topic, for which this dissertation formed a solid conceptual and data analysis framework

    Semantic discovery and reuse of business process patterns

    Get PDF
    Patterns currently play an important role in modern information systems (IS) development and their use has mainly been restricted to the design and implementation phases of the development lifecycle. Given the increasing significance of business modelling in IS development, patterns have the potential of providing a viable solution for promoting reusability of recurrent generalized models in the very early stages of development. As a statement of research-in-progress this paper focuses on business process patterns and proposes an initial methodological framework for the discovery and reuse of business process patterns within the IS development lifecycle. The framework borrows ideas from the domain engineering literature and proposes the use of semantics to drive both the discovery of patterns as well as their reuse
    corecore