65 research outputs found

    The Design of GCCL: a Generalized Common Contract Language

    Get PDF
    Following its inception in Eiffel by Meyer and its diffusion to other environments (e.g., the standardisation of OCL as part of UML), Design by Contract now faces a major challenge in component-based software engineerin- g (CBSE). Compositional reasoning about system properties from component ones has been recently asserted by the SEI as the "key technical challenge" of CBSE, and contracts as a "key technical concept to support this vision". To live up to these expectations, DbC must tackle extra-functional properties of components and support Klein's "architectural-based attribute reasoning." Besides adopting the necessary new concepts, a good contract language must provide for abstraction, application, composition and scoping mechanisms in such a way to be used from modeling in UML to programming in standard languages (as seamless extensions to Java, C#, C++, Eiffel, and so on) through execution on traditional operating systems with minimal middleware additions. This paper examines conceptual foundations and design decisions to propose GCCL, a novel open generalized common contract language. GCCL is meant to be compatible with existing DbC (sub)languages, and especially OCL

    Non-functional Data Collection for Adaptive Business Processes and Decision Making

    Get PDF
    International audienceMonitoring application services becomes more and more a transverse key activity in SOA. Beyond traditional human system administration and load control, new activities such as autonomic management as well as SLA enforcement raise the stakes over monitoring requirements. In this paper, we address a new monitoring-based activity which is selecting among competitive service offers based on their currently measured QoS. Starting from this use case, the late binding of service calls in SOA given the current QoS of a set of candidate services, we first elicit the requirements and then describe M4ABP (Monitoring for Adaptive Business Process), a middleware component for monitoring services and delivering monitoring data to business processes wishing to call them. M4ABP provides solutions for general requirements: flexibility as well as performance in data access for clients, coherency of data sets and network usage optimization. Lessons learned from this first use case can be applied to similar monitoring scenario, as well as to the larger field of context-aware computing

    Requirements of the SALTY project

    Get PDF
    This document is the first external deliverable of the SALTY project (Self-Adaptive very Large disTributed sYstems), funded by the ANR under contract ANR-09-SEGI-012. It is the result of task 1.1 of the Work Package (WP) 1 : Requirements and Architecture. Its objective is to identify and collect requirements from use cases that are going to be developed in WP 4 (Use cases and Validation). Based on the study and classification of the use cases, requirements against the envisaged framework are then determined and organized in features. These features will aim at guide and control the advances in all work packages of the project. As a start, features are classified, briefly described and related scenarios in the defined use cases are pinpointed. In the following tasks and deliverables, these features will facilitate design by assigning priorities to them and defining success criteria at a finer grain as the project progresses. This report, as the first external document, has no dependency to any other external documents and serves as a reference to future external documents. As it has been built from the use cases studies that have been synthesized in two internal documents of the project, extracts from the two documents are made available as appendices (cf. appen- dices B and C)

    Stochastic hybrid systems meet software components for well-founded cyber-physical systems software architectures

    No full text
    International audienceCyber-physical control systems (CPCS) are notoriously difficult to specify, implement, test, validate and verify. In this paper, we propose to integrate hybrid systems, and their declensions as hybrid automata and DEVS simulation models, within a full-fledged and well-founded software component model tailored for CPCS. The key concept is to attach to components modular, composable and reusable behavioural and simulation models. The goal is to seamlessly support the software development process, from model-in-the-loop initial validation, until deployment time actual system verification. The resulting comprehensive modeling and software implementation tool aims at fully supporting the different phases of the software life cycle to provide more reliable, robust, reusable and adaptable CPCS using less resources

    Du modèle au programme : aspects conceptuels et applications

    No full text
    National audienceLa proximité entre modèle et représentation des programmes par syntaxe abstraite est largement reconnue, en particulier dans le contexte de l'ingénierie des modèles où les transformations de modèles prennent une importance prépondérante.De nombreuses leçons peuvent être tirées de cette analogie de manière à éclairer les défis de cette approche. Dans cet article, nous explorons quelques-unes de ces leçons fondées sur l'expérience acquise dans des domaines variés, allant de la compilation à la transformation des documents XML, en passant par les transformations de programmes, l'interprétation abstraite et la sémantique des langages de programmation.Cette exploration est réalisée avec un parti pris de pragmatisme et dans l'optique d'en tirer des indications utiles pour les praticiens de l'ingénierie des modèles

    Modélisation de la sémantique formelle des langages de programmation en UML et OCL

    Get PDF
    Nous proposons une méthode systématique et pragmatique de modélisation de la sémantique des langages de programmation fondée sur la description en UML et OCL de sémantiques dénotationnelles. Cette approche se fonde sur la précision mathématique de la sémantique dénotationnelle de même que sur l'accessibilité et le rôle prépondérant des définitions en UML/OCL pour répondre à deux grandes questions : (1) Comment communiquer aux programmeurs une définition précise d'un langage de programmation tout en restant accessibl- e ? et (2) Comment intégrer à la MDA des modèles de la sémantique des langages de programmation de manière cohérente et uniforme avec une démarche UML ? Dans le contexte de la MDA, de tels modèles permettront d'appuyer le développement logiciel par une génération automatique de code vers de multiples langages cibles (éventuellement spécifiques à des domaines, ou DSL) tenant compte explicitement de leurs différences sémantiques. Nous illustrons notre approche par une sémantique du langage de spécification de la qualité de service QML

    Une étude sémantique du langage QML

    Get PDF
    Le langage QML (Quality of service Modeling Language) a été proposé par Frølund et Koistinen pour traiter de manière systématique et déclarative de la qualité de service des composants logiciels. Dans ce rapport, nous présentons le résultat d'une analyse sémantique formelle du langage QML selon l'approche dénotationnelle. De cette sémantique, nous tirons des enseignements dans deux directions : la modélisati- on par objets des contrats dans le but d'une intégration fluide à UML et une implantation en Java pour une utilisation concrète dans ce langage. Si QML propose des concepts intéressants pour la définition d'ontologies et de types de données pour traiter des types de contrats, des contrats et des niveaux ou valeurs de qualité de service, le sous-langage de contraintes sur les dimensions et la liaison avec les interfaces restent peu approfondis et inaboutis

    Towards a well-founded software component model for cyber-physical control systems

    No full text
    International audienceCyber-physical control systems (CPCS), and their instantiation as autonomous robotic control architectures, are notoriously difficult to specify, implement, test, validate and verify. In this paper, we propose to integrate hybrid systems and their declension as hybrid automata and DEVS simulation models within a full-fledged and well-founded software component model tailored for CPCS. We present how the resulting comprehensive modeling tool can support the different phases of the software development to provide more reliable, more robust and more adaptable CPCS. The key concept is to provide components with a modeling and simulation capability that seamlessly support the software development process, from model-in-the-loop initial validations, until deployment time actual system verification

    Coordination dans la décision pour les architectures autonomiques à grande échelle

    No full text
    Though autonomic computing has received a lot of attention since itsinception in the early 2000, to date the research has mainlyconsidered relatively small-scale systems. But Kephart recentlyreminded that the main challenges in this area revolve around facingthe inherent decentralisation when going large-scale, which greatlycomplicates often interdependent adaptation decisions. Especially asautonomic computing imposes inevitable time constraints as it de factoimplies a reactive control for adapting. In this paper, we propose adecentralised approach for coordinating the decision-making thatuncouples the exchange and gathering of coordination information onone hand from the coordinated local decision-making on the other hand.This uncoupling allows for these local decisions to be made withoutdelays as they are based upon information gathered previously. Thisapproach is illustrated by a geotracking application for large fleetsof trucks from the SALTY ANR project, and validated through a seriesof simulations demonstrating the adequacy and the good performances ofits various algorithms.Bien que l'informatique autonomique ait fait l'objet d'une attentionconsidérable depuis ses origines au début des années 2000, lesrecherches se sont principalement concentrées jusqu'ici sur dessystèmes à relativement petite échelle. Mais Kephart rappelaitrécemment que les principaux défis dans le domaine sont liés à ladécentralisation inhérente au passage à l'échelle, qui compliquefortement la prise de décisions d'adaptation souvent interdépendantes.D'autant que l'informatique autonomique impose d'inévitablescontraintes temporelles car elle implique de fait un contrôle réactifpour ces adaptations. Nous proposons une nouvelle approchedécentralisée pour la coordination des décisions qui découple cettedernière en deux processus concurrents : l'échange et l'accumulationd'informations de coordination d'une part, et la prise de décisionslocales coordonnées d'autre part. Ce découplage permet de prendresans délai des décisions locales coordonnées en utilisant lesinformations de coordination préalablement accumulées. Cette approcheest illustrée par une application en géolocalisation de grandesflottes de camions du projet ANR SALTY et validée par une série desimulations montrant l'adéquation et les bonnes performances desdifférents algorithmes utilisés.PARIS-BIUSJ-Mathématiques rech (751052111) / SudocSudocFranceF
    corecore