9 research outputs found

    Model Checking Probabilistic Real-Time Properties for Service-Oriented Systems with Service Level Agreements

    Full text link
    The assurance of quality of service properties is an important aspect of service-oriented software engineering. Notations for so-called service level agreements (SLAs), such as the Web Service Level Agreement (WSLA) language, provide a formal syntax to specify such assurances in terms of (legally binding) contracts between a service provider and a customer. On the other hand, formal methods for verification of probabilistic real-time behavior have reached a level of expressiveness and efficiency which allows to apply them in real-world scenarios. In this paper, we suggest to employ the recently introduced model of Interval Probabilistic Timed Automata (IPTA) for formal verification of QoS properties of service-oriented systems. Specifically, we show that IPTA in contrast to Probabilistic Timed Automata (PTA) are able to capture the guarantees specified in SLAs directly. A particular challenge in the analysis of IPTA is the fact that their naive semantics usually yields an infinite set of states and infinitely-branching transitions. However, using symbolic representations, IPTA can be analyzed rather efficiently. We have developed the first implementation of an IPTA model checker by extending the PRISM tool and show that model checking IPTA is only slightly more expensive than model checking comparable PTA.Comment: In Proceedings INFINITY 2011, arXiv:1111.267

    Dealing with non-functional requirements in model-driven development

    Get PDF
    The impact of non-functional requirements (NFRs) over software systems has been widely documented. Consequently, cost-effective software production method shall provide means to integrate this type of requirements into the development process. In this vision paper we analyze this assumption over a particular type of software production paradigm: model-driven development (MDD). We report first the current state of MDD approaches with respect to NFRs and remark that, in general, NFRs are not addressed in MDD methods and processes, and we discuss the effects of this situation. Next, we outline a general framework that integrates NFRs into the core of the MDD process and provide a detailed comparison among all the MDD approaches considered. Last, we identify some research issues related to this framework.Preprin

    Formal Verification with Confidence Intervals to Establish Quality of Service Properties of Software Systems

    Get PDF
    Formal verification is used to establish the compliance of software and hardware systems with important classes of requirements. System compliance with functional requirements is frequently analyzed using techniques such as model checking, and theorem proving. In addition, a technique called quantitative verification supports the analysis of the reliability, performance, and other quality-of-service (QoS) properties of systems that exhibit stochastic behavior. In this paper, we extend the applicability of quantitative verification to the common scenario when the probabilities of transition between some or all states of the Markov models analyzed by the technique are unknown, but observations of these transitions are available. To this end, we introduce a theoretical framework, and a tool chain that establish confidence intervals for the QoS properties of a software system modelled as a Markov chain with uncertain transition probabilities. We use two case studies from different application domains to assess the effectiveness of the new quantitative verification technique. Our experiments show that disregarding the above source of uncertainty may significantly affect the accuracy of the verification results, leading to wrong decisions, and low-quality software systems

    Lenguaje espec铆fico de dominio para la definici贸n de la plataforma en el desarrollo de software dirigido por modelos

    Get PDF
    Los enfoques tradicionales de Desarrollo de Software Dirigido por Modelos (MDSD) basados en la vista funcional han arrojado resultados positivos en los 煤ltimos a帽os, no obstante, han presentado dificultades en aspectos como: el soporte multi-plataforma, la expresividad de los modelos y la intervenci贸n de las transformaciones. Este trabajo presenta una propuesta de modelado de la plataforma (vistas l贸gica y f铆sica de una aplicaci贸n), dentro de un enfoque multi-vistas para MDSD, de tal forma que se puedan expresar y reutilizar arquitecturas de software mediante el uso de modelos. Lo anterior se logra a trav茅s de la elaboraci贸n de un Lenguaje Espec铆fico de Dominio (DSL) que hace parte del desarrollo de una herramienta de modelado MDSD ejemplificada a trav茅s de la aplicaci贸n de un estudio de caso del proceso gesti贸n de incidentes de la Biblioteca de Infraestructura de Tecnolog铆as de Informaci贸n (ITIL). Esta propuesta inicia con la identificaci贸n de los elementos propios de la vista l贸gica y f铆sica, incluyendo una clasificaci贸n detallada de los tipos de artefactos de c贸digo. De aqu铆 se elicitan los requisitos con los que se construye el meta-modelo del DSL de plataforma y se procede a desarrollar los mecanismos para su instanciaci贸n. Las vistas l贸gica y f铆sica se instancian a trav茅s de un modelador gr谩fico de Lenguaje de Modelado Unificado (UML), y luego se enlazan a trav茅s de manifestaciones que se definen en un editor de combinaci贸n de modelos (weaving, en ingl茅s). Con los dos modelos UML m谩s el modelo de weaving se definen varias reglas de Transformaci贸n de Modelo a Modelo (M2M), incluyendo operaciones de comparaci贸n, validaci贸n y combinaci贸n, que los traducen en una instancia del meta-modelo de plataforma. Por 煤ltimo, se definen las reglas de Transformaci贸n de Modelo a Texto (M2T) que producen el c贸digo fuente

    A framework for robust control of uncertainty in self-adaptive software connectors

    Get PDF
    Context and motivations. The desired behavior of a system in ubiquitous environments considers not only its correct functionality, but also the satisfaction of its non-functional properties, i.e., its quality of service. Given the heterogeneity and dynamism characterizing the ubiquitous environments and the need for continuous satisfaction of non-functional properties, self-adaptive solutions appear to be an appropriate approach to achieve interoperability. In this work, self-adaptation is adopted to enable software connectors to adapt the interaction protocols run by the connected components to let them communicate in a timely manner and with the required level of quality. However, this self-adaptation should be dependable, reliable and resilient to be adopted in dynamic, unpredictable environments with different sources of uncertainty. The majority of current approaches for the construction of self-adaptive software ignore the uncertainty underlying non-functional requirement verification and adaptation reasoning. Consequently, these approaches jeopardize system reliability and hinder the adoption of self-adaptive software in areas where dependability is of utmost importance. Objective. The main objective of this research is to properly handle the uncertainties in the non-functional requirement verification and the adaptation reasoning part of the self-adaptive feedback control loop of software connectors. This will enable a robust and runtime efficient adaptation in software connectors and make them reliable for usage in uncertain environments. Method. In the context of this thesis, a framework has been developed with the following functionalities: 1) Robust control of uncertainty in runtime requirement verification. The main activity in runtime verification is fine-tuning of the models that are adopted for runtime reasoning. The proposed stochastic approach is able to update the unknown parameters of the models at runtime even in the presence of incomplete and noisy observations. 2) Robust control of uncertainty in adaptation reasoning. A general methodology based on type-2 fuzzy logic has been introduced for the control of adaptation decision-making that adjusts the configuration of component connectors to the appropriate mode. The methodology enables a systematic development of fuzzy logic controllers that can derive the right mode for connectors even in the presence of measurement inaccuracy and adaptation policy conflicts. Results. The proposed model evolution mechanism is empirically evaluated, showing a significant precision of parameter estimation with an acceptable overhead at runtime. In addition, the fuzzy based controller, generated by the methodology, has been shown to be robust against uncertainties in the input data, efficient in terms of runtime overhead even in large-scale knowledge bases and stable in terms of control theory properties. We also demonstrate the applicability of the developed framework in a real-world domain. Thesis statement. We enable reliable and dependable self-adaptations of component connectors in unreliable environments with imperfect monitoring facilities and conflicting user opinions about adaptation policies by developing a framework which comprises: (a) mechanisms for robust model evolution, (b) a method for adaptation reasoning, and (c) tool support that allows an end-to-end application of the developed techniques in real-world domains
    corecore