Integrating a system of disparate components to form a single application is still a daunting, high risk task, especially for components with heterogeneous communication expectati...
Michelle Hepner, Rose F. Gamble, Manasi Kelkar, Le...
The development of dependable software systems is a costly undertaking. Fault tolerance techniques as well as self-repair capabilities usually result in additional system complexi...
Architecture and design patterns, as demonstrated solutions to recurring problems, have proved practically important and useful in the process of software development. They have b...
We propose Considerate Reasoning, a novel specification and verification technique based on object invariants. This technique supports succinct specifications of implementations wh...
There is little or no guidance to systematically design a self-organising emergent solution that achieves the desired macroscopic behaviour. This paper describes decentralised coor...