19 research outputs found

    Transactions in Peer-to-Peer Systems

    Get PDF
    The thesis begins with discussion of usability of transactions in peer-to-peer environment, with the result that transactions are useful for some kinds of peer-to-peer applications, and specifies requirements on transaction coordination protocol that is suitable for peer-to-peer environment. After that, introductions to the JXTA peer-to-peer platform and to the BTP coordination protocol follow. The last part of the thesis is devoted to the BTP-JXTA framework, which I have developed. The framework extends the JXTA platform with a transaction service that uses the BTP as its coordination protocol. The description of the framework focuses on architecture and important implementation concepts and on the methodology of testing that was used

    Formal Verfication of Components in Java

    Get PDF
    Formal veri cation of a hierarchical component application involves (i) checking of behavior compliance among sub-components of each composite component, and (ii) checking of implementation of each primitive component against its behavior speci cation and other properties like absence of concurrency errors. In this thesis, we focus on veri cation of primitive components implemented in Java against the properties of obeying a behavior speci cation de ned in behavior protocols (frame protocol) and absence of concurrency errors. We use the Java PathFinder model checker as a core veri cation tool. We propose a set of techniques that address the key issues of formal veri cation of real-life components in Java via model checking: support for high-level property of obeying a behavior speci cation, environment modeling and construction, and state explosion. The techniques include (1) an extension to Java PathFinder that allows checking of Java code against a frame protocol, (2) automated generation of component environment from a model in the form of a behavior protocol, (3) efficient construction of the model of environment's behavior, and (4) addressing state explosion in discovery of concurrency errors via reduction of the level of parallelism in a component environment on the basis of static analysis of Java..
    corecore