7 research outputs found

    Optimizing Computation of Recovery Plans for BPEL Applications

    Full text link
    Web service applications are distributed processes that are composed of dynamically bounded services. In our previous work [15], we have described a framework for performing runtime monitoring of web service against behavioural correctness properties (described using property patterns and converted into finite state automata). These specify forbidden behavior (safety properties) and desired behavior (bounded liveness properties). Finite execution traces of web services described in BPEL are checked for conformance at runtime. When violations are discovered, our framework automatically proposes and ranks recovery plans which users can then select for execution. Such plans for safety violations essentially involve "going back" - compensating the executed actions until an alternative behaviour of the application is possible. For bounded liveness violations, recovery plans include both "going back" and "re-planning" - guiding the application towards a desired behaviour. Our experience, reported in [16], identified a drawback in this approach: we compute too many plans due to (a) overapproximating the number of program points where an alternative behaviour is possible and (b) generating recovery plans for bounded liveness properties which can potentially violate safety properties. In this paper, we describe improvements to our framework that remedy these problems and describe their effectiveness on a case study.Comment: In Proceedings TAV-WEB 2010, arXiv:1009.330

    Testing web applications through layout constraints : tools and applications

    Get PDF
    With businesses trying to minimize cost, web applications are becoming increasingly useful by providing cross-platform applications that can be easily ported to desktop and mobile. However, testing these applications is much more arduous than testing desktop applications due to the lack of tools. In this thesis, we aim to describe a web application testing tool called Cornipickle which uses an expressive layout specification. The specification language for Cornipickle makes statements on applications’ layouts but we show that it can also test behaviours. With it, we effectively achieve to detect the bugs found with our survey of 35 real-world web applications. We also show Cornipickle’s versatility by using it in multiple applications and tools, notably pairing it with a crawler. Puisque les entreprises tentent de minimiser leurs coûts, les applications web deviennent de plus en plus utiles en fournissant des applications multiplateformes qui peuvent être facilement portées aux appareils mobiles et environnements de bureau. Par contre, tester ces applications est beaucoup plus ardu que de tester des applications de bureau en raison du manque d’outils. Dans ce mémoire, nous décrivons un outil de test d’applications web, Cornipickle, qui utilise une spécification expressive sur la mise en page. Le langage de spécification de Cornipickle fait des affirmations sur la mise en page des applications mais nous montrons qu’il permet aussi de tester des comportements. Grâce à lui, nous réussissons à détecter efficacement les bogues identifiés dans une étude de 35 applications webs. Nous montrons aussi la polyvalence de Cornipickle en l’utilisant dans une multitude d’applications et outils, notamment en l’associant à un robot d’indexation

    System and Application Performance Analysis Patterns Using Software Tracing

    Get PDF
    Software systems have become increasingly complex, which makes it difficult to detect the root causes of performance degradation. Software tracing has been used extensively to analyze the system at run-time to detect performance issues and uncover the causes. There exist several studies that use tracing and other dynamic analysis techniques for performance analysis. These studies focus on specific system characteristics such as latency, performance bugs, etc. In this thesis, we review the literature to build a catalogue of performance analysis patterns that can be detected using trace data. The goal is to help developers debug run-time and performance issues more efficiently. The patterns are formalized and implemented so that they can be readily referred to by developers while analyzing large execution traces. The thesis focuses on the traces of system calls generated by the Linux kernel. This is because no application is an island and that we cannot ignore the complex interactions that an application has with the operating system kernel if we are to detect potential performance issues

    Étude de faisabilité du runtime monitoring dans les jeux vidéo

    Get PDF
    Dans le domaine des jeux vidéo, beaucoup de bogues se retrouvent sur le marché malgré les différentes phases de tests. Pour une industrie basée sur le divertissement, rencontrer des bogues qui empêchent le déroulement normal du jeu (dits « game breaking ») peut nuire à la vente du produit. Toutefois, la plupart des techniques d'assurance-qualité connues ne sont pas adaptées aux jeux vidéo. Il existe une technique de vérification, le runtime monitoring, qui observe l'exécution d'un système et pourrait améliorer la tâche d'élimination des bogues. Ce projet a pour objectif de prouver la faisabilité de l'utilisation d'une telle technique dans ce domaine. Ce travail vise à améliorer le processus de recherche et d'élimination des bogues retrouvés dans l'entreprise ainsi qu'à agrandir le champ d'action des méthodes formelles. Pour ce faire, ce mémoire propose une nouvelle méthode d'instrumentation prenant en compte des caractéristiques propres aux jeux vidéo. Ce mémoire ne représente qu'une première partie d'un projet plus grand visant non seulement à rendre possible l'utilisation du runtime monitoring mais aussi à améliorer le processus de détection des bogues en facilitant la tâche des testeurs et développeurs

    Application of a Blockchain Enabled Model in Disaster Aids Supply Network Resilience

    Get PDF
    The disaster area is a dynamic environment. The bottleneck in distributing the supplies may be from the damaged infrastructure or the unavailability of accurate information about the required amounts. The success of the disaster response network is based on collaboration, coordination, sovereignty, and equality in relief distribution. Therefore, a reliable dynamic communication system is required to facilitate the interactions, enhance the knowledge for the relief operation, prioritize, and coordinate the goods distribution. One of the promising innovative technologies is blockchain technology which enables transparent, secure, and real-time information exchange and automation through smart contracts. This study analyzes the application of blockchain technology on disaster management resilience. The influences of this most promising application on the disaster aid supply network resilience combined with the Internet of Things (IoT) and Dynamic Voltage Frequency Scaling (DVFS) algorithm are explored employing a network-based simulation. The theoretical analysis reveals an advancement in disaster-aids supply network strategies using smart contracts for collaborations. The simulation study indicates an enhance in resilience by improvement in collaboration and communication due to more time-efficient processing for disaster supply management. From the investigations, insights have been derived for researchers in the field and the managers interested in practical implementation

    Computer Aided Verification

    Get PDF
    This open access two-volume set LNCS 11561 and 11562 constitutes the refereed proceedings of the 31st International Conference on Computer Aided Verification, CAV 2019, held in New York City, USA, in July 2019. The 52 full papers presented together with 13 tool papers and 2 case studies, were carefully reviewed and selected from 258 submissions. The papers were organized in the following topical sections: Part I: automata and timed systems; security and hyperproperties; synthesis; model checking; cyber-physical systems and machine learning; probabilistic systems, runtime techniques; dynamical, hybrid, and reactive systems; Part II: logics, decision procedures; and solvers; numerical programs; verification; distributed systems and networks; verification and invariants; and concurrency

    Computer Aided Verification

    Get PDF
    This open access two-volume set LNCS 11561 and 11562 constitutes the refereed proceedings of the 31st International Conference on Computer Aided Verification, CAV 2019, held in New York City, USA, in July 2019. The 52 full papers presented together with 13 tool papers and 2 case studies, were carefully reviewed and selected from 258 submissions. The papers were organized in the following topical sections: Part I: automata and timed systems; security and hyperproperties; synthesis; model checking; cyber-physical systems and machine learning; probabilistic systems, runtime techniques; dynamical, hybrid, and reactive systems; Part II: logics, decision procedures; and solvers; numerical programs; verification; distributed systems and networks; verification and invariants; and concurrency
    corecore