Article

Preliminary design of JML: A notation for detailed design

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... A more detailed insight in JML can be found in the article written by their designers [2]. ...
... Specification cases are independent from one another, and their sequence builds a method specification. It is not our goal in this part to repeat the JML documentation (the reader can find it in [2], part 9), we rather wish to focus on how we interpret the grammar to implement the proof obligation generator. ...
... The easiest specification cases to handle are heavyweight specification cases. For them indeed, the JML convention (see [2]) completely defines the behavior of the method. ...
... JML [73,74,72,19] is a specification language for a detailed design of Java modules. ...
Article
Dynamic service-oriented architectures (D-SOA) focus on loosely coupled client- server interactions where both of them can appear and disappear at runtime. Our goal is to design monitoring systems for these architectures. Since classical monitoring systems are statically injected into the monitored services, they cannot properly handle the runtime services’ lifecycle. Moreover, when a service is substituted by a new one, other services may still use the old reference. This reference is kept in memory as a stale reference which induces some forbidden behaviors. This thesis contributes to design a monitoring system with resilient dynamicity that monitors services usage and is able to deal with stale references usage. This goal is achieved in three steps. Firstly, by considering the dynamicity of SOA systems in an open environment, we design a corresponding dynamic monitoring approach. We identify two key properties of the loosely coupled monitoring system: dynamicity resilience, i.e., after the unregistration of a service, its interface monitor and its current state are kept alive in memory and transferred to a new loaded service; comprehensiveness, i.e., the implementations of the monitored interface can’t bypass the monitor observations. Secondly, to avoid stale references usage, we propose a client-side safe service usage (SSU) layer to automatically handle them. If a used service disappears, then the SSU layer can either transparently substitute it or throw an exception to the client. This SSU layer is based on a transactional approach which aims to preserve the coherence of active services. Thirdly, we propose to integrate both approaches into a new monitoring system (NewMS). The NewMS inherits the principles of both systems: dynamicity resilience, comprehensiveness and fault tolerant. It can dynamically monitor service usage and transparently handle stale references of dynamic SOA systems. All the three propositions are implemented on OSGi-based platform. We develop a simple application that simulates an Airline Reservation system, which is monitored by our monitoring systems. We also develop various automata to handle the dynamicity of the Airline Reservation system in the NewMS. Our results demonstrate that the time cost of our monitoring systems is close to one of classical monitoring systems.
... Our group, together with the Softwaretechnik group at TU Kaiserslautern, work on the development of Jive, the Java Interactive Verification Environment [24]. The tool enables users to interactively prove properties of Diet Java Card (DJC) programs annotated with Java Modeling Language (JML) specifications [17]. DJC is a subset of Java Card, providing all important object-oriented features like inheritance and dynamic binding of methods. ...
Article
Full-text available
This report describes a formal encoding of the most important JML specification constructs to first-order logic. While the translation gives a general way of handling these constructs, the report is based on the underlying programming logic and theorem prover of the Jive system.
ResearchGate has not been able to resolve any references for this publication.