A Formal Approach for Developing Reliable Service-based Systems
Google Tech Talks
November, 29 2007
Service-based systems are increasingly being used for deploying large-scale applications in mission-critical environments. In such a system, applications are built by combining services, which are platform independent components running on different hosts of a wireless network. Prime concerns in such systems include, among others, adaptability to unforeseen situations (e.g., behaviors of services can be modified due to unforeseen events such as node failures or distributed denial of service attacks), situation-awareness (in order to detect changes in the environment and adapt accordingly) and security.
In this talk, we present a formal approach to developing adaptable, situation-aware, secure service-based distributed systems. To this end, we first present a process calculus-based programming model for such systems. The operational semantics of the model combines external behaviors with internal computation for accessing current situation and dynamically adapting and reacting to it. Continuation passing is used for handling asynchronous service invocations. In order to declaratively specify properties of such systems, we introduce an intuitionistic hybrid modal logic. The logic not only has modalities for expressing both temporal and spatial behavior but also constructs for describing communication and knowledge and atomic formulas for describing relations between variables. We show how intelligent agents can be automatically synthesized from declarative specifications in the logic and deployed wirelessly. In order to deploy the synthesized agents, we have developed, jointly with the Naval Research Laboratory, the Secure Infrastructure for Networked Systems (SINS), a middleware platform built on the top of JHU's Spread group communication toolkit. In the last part of the talk, we provide a demo of a mission-critical application for intelligent management of a power system developed using the approach mentioned above and deployed on the SINS platform.
Speaker: Dr. Supratik Mukhopadhyay
Dr. Supratik Mukhopadhyay is an Assistant Professor at the Utah State University where he heads the Distributed Software Laboratory. His research interests lie in the areas of distributed systems, software engineering, programming languages, and sensor networks.