Learn More
Many modern applications are built by combining independently developed packages and services that are distributed over many machines with complex inter-dependencies. The assembly, installation, and management of such applications is hard, and usually performed either manually or by writing customized scripts. We present Engage, a system for configuring,(More)
Many formalisms use interleaving to model concurrency. To describe some system behaviours appropriately, we need to limit interleaving. For example, in component-based systems, we wish to limit interleaving to force the inputs to a method to arrive together in order. We introduce interface automata with complex actions (IACA), which add complex actions to(More)
The material, including all portions thereof, is protected by copyright; all rights are held exclusively by Springer Science + Business Media. The material is for personal use only; commercial use is not permitted. Unauthorized reproduction, transfer and/or use may be a violation of criminal as well as civil law. Abstract With the popularity of model-driven(More)
With the popularity of model-driven methodologies, and the abundance of modelling languages, a major question for a requirements engineer is: which language is suitable for modelling a system under study? We address this question from a semantic point-of-view for big-step modelling languages (BSMLs). BSMLs are a class of popular be-havioural modelling(More)
Web services are software artifacts that can be accessed over the Internet. They can be seen as pay-per-view func-tionalities that are exposed by some service providers. If there are multiple providers for a Web service, then both the quality and price of the service become key factors when determining which provider to choose. We consider the problem of(More)
Programmers using software components have to follow protocols that specify when it is legal to call particular methods with particular arguments. For example, one cannot use an iterator over a set once the set has been changed directly or through another iterator. We formalize the notion of dynamic package interfaces (DPI), which generalize state-machine(More)
Many formalisms use interleaving to model concurrency. To describe some system behaviours appropriately, we need to limit interleaving. For example, in a component-based system, we might wish to limit interleaving to force the inputs to a method to arrive together in order. In Web services, the arrival of XML messages consisting of multiple simple parts(More)
Many formalisms use interleaving to model concurrency. To describe some system behaviours appropriately, we need to limit interleaving. For example, in component-based systems, we wish to limit interleaving to force the inputs to a method to arrive together in order. In Web services, the arrival of XML messages consisting of multiple simple parts should not(More)