1,994 research outputs found

    Detecting component changes at run time with behavior models

    Get PDF
    Modern software systems are composed of several services which may be developed and maintained by third parties and thus they can change independently and without notice during the system’s runtime execution. In such systems, changes may possibly be a threat to system functional correctness, and thus to its reliability. Hence, it is important to detect them as soon as they happen to enable proper reaction. Change detection can be done by monitoring system execution and comparing the observed execution traces against models of the services composing the application. Unfortunately, formal specifications for services are not usually provided and developers have to infer them. In this paper we propose a methodology which exactly addresses these issues by using software behavior models to monitor component execution and detect changes. In particular, we describe a technique to infer behavior model specifications with a dynamic black box approach, keep them up-to-date with run time observations and detect behavior changes. Finally, we present a case study to validate the effectiveness of the approach in component change detection for a component that implements a complex, real communication protocol.European Commission (Programme IDEAS-ERC, Project 227977-SMScom

    Holistic recommender systems for software engineering

    Get PDF
    The knowledge possessed by developers is often not sufficient to overcome a programming problem. Short of talking to teammates, when available, developers often gather additional knowledge from development artifacts (e.g., project documentation), as well as online resources. The web has become an essential component in the modern developer’s daily life, providing a plethora of information from sources like forums, tutorials, Q&A websites, API documentation, and even video tutorials. Recommender Systems for Software Engineering (RSSE) provide developers with assistance to navigate the information space, automatically suggest useful items, and reduce the time required to locate the needed information. Current RSSEs consider development artifacts as containers of homogeneous information in form of pure text. However, text is a means to represent heterogeneous information provided by, for example, natural language, source code, interchange formats (e.g., XML, JSON), and stack traces. Interpreting the information from a pure textual point of view misses the intrinsic heterogeneity of the artifacts, thus leading to a reductionist approach. We propose the concept of Holistic Recommender Systems for Software Engineering (H-RSSE), i.e., RSSEs that go beyond the textual interpretation of the information contained in development artifacts. Our thesis is that modeling and aggregating information in a holistic fashion enables novel and advanced analyses of development artifacts. To validate our thesis we developed a framework to extract, model and analyze information contained in development artifacts in a reusable meta- information model. We show how RSSEs benefit from a meta-information model, since it enables customized and novel analyses built on top of our framework. The information can be thus reinterpreted from an holistic point of view, preserving its multi-dimensionality, and opening the path towards the concept of holistic recommender systems for software engineering

    Interaction-aware development environments: recording, mining, and leveraging IDE interactions to analyze and support the development flow

    Get PDF
    Nowadays, software development is largely carried out using Integrated Development Environments, or IDEs. An IDE is a collection of tools and facilities to support the most diverse software engineering activities, such as writing code, debugging, and program understanding. The fact that they are integrated enables developers to find all the tools needed for the development in the same place. Each activity is composed of many basic events, such as clicking on a menu item in the IDE, opening a new user interface to browse the source code of a method, or adding a new statement in the body of a method. While working, developers generate thousands of these interactions, that we call fine-grained IDE interaction data. We believe this data is a valuable source of information that can be leveraged to enable better analyses and to offer novel support to developers. However, this data is largely neglected by modern IDEs. In this dissertation we propose the concept of "Interaction-Aware Development Environments": IDEs that collect, mine, and leverage the interactions of developers to support and simplify their workflow. We formulate our thesis as follows: Interaction-Aware Development Environments enable novel and in- depth analyses of the behavior of software developers and set the ground to provide developers with effective and actionable support for their activities inside the IDE. For example, by monitoring how developers navigate source code, the IDE could suggest the program entities that are potentially relevant for a particular task. Our research focuses on three main directions: 1. Modeling and Persisting Interaction Data. The first step to make IDEs aware of interaction data is to overcome its ephemeral nature. To do so we have to model this new source of data and to persist it, making it available for further use. 2. Interpreting Interaction Data. One of the biggest challenges of our research is making sense of the millions of interactions generated by developers. We propose several models to interpret this data, for example, by reconstructing high-level development activities from interaction histories or measure the navigation efficiency of developers. 3. Supporting Developers with Interaction Data. Novel IDEs can use the potential of interaction data to support software development. For example, they can identify the UI components that are potentially unnecessary for the future and suggest developers to close them, reducing the visual cluttering of the IDE

    Using Graph Transformation Systems to Specify and Verify Data Abstractions

    Get PDF
    This paper proposes an approach for the specification of the behavior of software components that implement data abstractions. By generalizing the approach of behavior models using graph transformation, we provide a concise specification for data abstractions that describes the relationship between the internal state, represented in a canonical form, and the observers of the component. Graph transformation also supports the generation of behavior models that are amenable to verification. To this end, we provide a translation approach into an LTL model on which we can express useful properties that can be model-checked with a SAT solver

    Du climat à l'homme : Dynamique holocène de l'environnement dans le jura et les alpes Actes du colloque GDR JURALP organisé à Aix-en-Provence les 15 et 16 novembre 2007

    No full text
    L'éditeur autorise la diffusion de ce numéro dans une archive ouverte.Ce volume constitue les actes de la table ronde qui s'est tenue les 15 et 16 novembre 2007 à la Maison Méditerranéenne des Sciences de l'Homme d'Aix-en-Provence, et qui a été organisée dans le cadre du GDR 2992 du CNRS, JurAlpes, sur le thème " Dynamique holocène de l'environnement dans le Jura et les Alpes : du climat à l'homme ". Les dix huit contributions rassemblées dans cet ouvrage couvrent un large éventail de champs disciplinaires et de méthodes d'étude. Après les deux premiers chapitres dédiés successivement aux reconstitutions des fluctuations des glaciers des Alpes occidentales depuis 5000 ans (P. Deline et M. Le Roy) et à l'usage des spéléothèmes en tant que proxy de la variabilité climatique annuelle (Y. Perrette), les cinq contributions suivantes s'appuient sur l'analyse de séquences sédimentaires lacustres (E. Chapron et al. ; M. Magny et al. ; L. Millet et al. ; F. Arnaud et al. ; A. Leroux et al.). Les lacs étudiés sont des lacs d'altitude (lac de Joux dans le Jura, lacs d'Anterne, de Bramant, de Blanc Huez et de Dessus-Verney dans les Alpes), ou des grands lacs de vallées (lacs du Bourget et de Constance, ou Bodensee). Suivent quatre chapitres qui s'intéressent aux vecteurs fluviatiles, de la vallée du Rhône (J.-P. Bravard et al. ; J.-F. Berger et al.), au bassin de la Durance (C. Miramont et al.) jusqu'au delta du Rhône (C. Vella et al.). Viennent ensuite trois contributions qui sont plus particulièrement centrées sur l'histoire du couvert végétal et de la pédogénèse dans les zones d'altitude des Alpes en s'appuyant sur des données anthracologiques (B. Talon), dendrochronologiques (J.-L. Edouard et A. Thomas) et pédo-sédimentaires (B. Moulin et P.-J. Rey). Enfin, les quatre dernières contributions portent sur l'histoire de l'anthropisation des Alpes (P.J. Rey et al. ; P. Bintz et al. ; A. Marguet et al. ; F. Mocci et al.) et du Jura (E. Gauthier et H. Richard)

    Inductor losses estimation in DC-DC converters by means of averaging technique

    Get PDF
    A suitable inductor modeling for power electronic DC-DC converters is presented in this paper. It is developed with the aim of improving inductor losses estimation achievable by averaged models, which inherently neglect inductor current ripple. In order to account for its contribution to the overall inductor losses, an appropriate parallel resistance is thus enclosed into the inductor model, whose value should be chosen in accordance with the DC-DC converter operating conditions. This allows the development of improved averaged models of DC-DC converters, especially in terms of power losses estimation. The effectiveness of the proposed modeling approach has been validated through a simulation study, which refers to the case of a boost DC-DC converter and is performed by means of a suitable circuit simulator designed for rapid modelling of switching power systems (SIMetrix/SIMPLIS)

    Les dynamiques de la végétation et des anthoposystèmes d'altitude cernées par l'anthracologie pastorale et minière à l'échelle d'un haut vallon alpestre (Freissinières, France)

    Get PDF
    International audienceThis review paper outlines the reconstruction of vegetation and altitude anthroposystem dynamics, at the scale of the Freissinières high valley, based on the anthracological analysis of mining and (agro-) pastoral carbonised deposits, dating from the Bronze Age to the Renaissance. Archaeological and chronological features of the various deposit contexts, sampling protocol and laboratory methods used, have been outlined. All the obtained data has been summarized in diagrams, and attempts have been made to model vegetation dynamics and areas of firewood supply for mining and pastoral activities. Thus, this study identifies the major subalpine floristic changes that have occurred since the Bronze Age, the development of wood pasture and the lowering of the upper limit of dense forest associated with heathlands and thicket expansion. In addition, this study characterises the evolution of supply practices of fuel wood and the management of uncultivated area – particularly during the Middle Ages – and grasps the leaf-fodder cycle, documented by charcoals at the turn of the Modern era.Cet article de synthèse propose une restitution des dynamiques de la végétation et des anthroposystèmes d'altitude, à l'échelle de la haute vallée de Freissinières (Hautes-Alpes), en s'appuyant sur l'analyse anthracologique de dépôts carbonisés miniers et (agro-) pastoraux datés de l'Âge du Bronze à la Renaissance. Les particularités archéologiques et chronologiques des différents contextes de dépôt et les méthodes d'échantillonnage et d'analyse en laboratoire sont explicitées. L'ensemble des données livrées est mis en perspective dans des diagrammes de synthèse et des tentatives de modélisation spatiale de la dynamique de la végétation et des aires d'approvisionnement en combustible pastoral et minier. De la sorte, l'étude cerne les grands changements floristiques subalpins opérés depuis l'Âge du Bronze, le développement des prés boisés et l'abaissement de la limite supérieure de la forêt dense associé à l'expansion des landes et des fourrés. En outre, elle caractérise l'évolution des pratiques d'approvisionnement et la gestion de l'inculte – en particulier durant le Moyen Âge – et saisit le cycle du fourrage de feuilles, attesté par les charbons de bois au tournant de l'ère moderne
    corecore