The Rise and Rise of the Declarative Datacentre
The Rise and Rise of the Declarative Datacentre

A research meeting jointly organised by Microsoft Research and HP Labs, Monday-Tuesday, May 12-13, 2008, Roger Needham Building, Microsoft Research Cambridge.


  • Background
  • Research Questions
  • Organisers
  • Declarative Approaches
  • Position Papers
  • Schedule
  • Local Arrangements 


Various hardware and software technologies are transforming datacentre management into a programming problem. Network booting and virtualization allow dynamic allocation of hardware resources. Virtual machine mobility helps to optimize hardware utilization, to support maintenance, and to minimize power consumption. Virtual networking isolates mutually distrustful workloads, and allows test to proceed concurrently with production. These technologies reduce the need for human intervention - indeed, virtual machines can even be rented by the hour over the web, eliminating physical configuration altogether. These hardware and software trends support the abstraction that a datacentre (or even a collection of datacentres) is a single programmable computer, made up of many individual servers managed in software. Going by different names - compute fabric, grid, utility computing, autonomous computing, dynamic systems, cloud - this abstraction has arisen in different research communities, albeit with varying emphases.

Research Questions

This idea of the datacentre as the computer is becoming established, but much is unknown:

  • How do we manage the tension between the database of intended configuration data, and the messy reality of the actual state of the datacentre?
  • How can we automate resource allocation?
  • Virtual machines and networks are much cheaper and faster to provision than physical hardware, and so they multiply. How do we inventory and manage numerous virtualized resources?
  • If we run applications from multiple customers, how can we isolate them to maintain integrity and confidentiality? How can we detect and isolate compromised components? What guarantees of trustworthiness can we offer to applications?
  • There is a Babel of languages and application frameworks for programming the multiple tiers of servers - including web servers and databases - that make up datacentre applications and their clients - often web browsers. Datacentre management introduces yet more languages and frameworks. What are the techniques to optimize programs in this environment? What are the principles of multi-tier languages in which a single program runs on multiple tiers in the datacentre? What are the formal methods to verify properties of datacentre software?
  • How can we write scalable applications that tolerate failures of components at different levels of granularity (individual objects, processes, VMs, servers, whole racks, whole datacentres) and that survive network partitions?

Declarative Approaches

The focus of this workshop is on declarative approaches to the problem of managing and programming datacentres, both small and large. By declarative, we mean approaches that emphasise the "what" rather than the "how". That's a fuzzy definition, but here are some examples:

Position Papers

The proceedings, which appears as Microsoft Research Technical Report MSR-TR-2008-61, contains the following position papers.

  • Paul Anderson Programming the Datacentre, Challenges in System Configuration
  • Karthikeyan Bhargavan and Andrew D. Gordon Getting Operations Logic Right: Types, Service-Orientation, and Static Analysis
  • Mario Bravetti and Gianluigi Zavattaro Foundational Aspects of Contract Compliance and Choreography Conformance
  • Roberto Bruni, Alberto Lluch Lafuente, Ugo Montanari, Emilio Tuosto Architectural Design Rewriting as an Architecture Description Language
  • Serdar Cabuk, Chris I. Dalton, HariGovind Ramasamy, Matthias Schunter Declarative Security Specification of Virtual Networks
  • Thomas Delaet and Wouter Joosen High-level System Configuration
  • Philippa Gardner Local Hoare Reasoning about DOM
  • Patrick Goldsack, Paul Murray, Andrew Farrell, Peter Toft SmartFrog and Data Centre Automation
  • Kohei Honda and Nobuko Yoshida What to Declare, How to Declare
  • Shriram Krishnamurthi Declaring Victory in a Declarative Datacenter: Verification and Transferring Confidence
  • Venkatesh-Prasad Ranganath COP for Programming Datacenter Applications
  • Andrew Rice, Sherif Akoush, Andy Hopper Failure is an Option
  • Marek Sergot Formal-logical Models of Norms and Institutions
  • Peter Sewell and Paweł T. Wojciechowski Verifying Overlay Networks for Relocatable Computations (or: Nomadic Pict, relocated)
  • Eno Thereska Practical Structural and Performance Model Checking
  • John Wilkes Traveling to Rome: a Retrospective on the Journey

Schedule: Monday May 12

08:30 Registration and Coffee at the Roger Needham Building

09:00-11:00 Session 1 (Chair: Andy Gordon)


11:30-12:30 Session 2 (Chair: Andrew Birrell)


14:00-15:30 Session 3 (Chair: Karthik Bhargavan)

Group Photo and Tea

16:00-17:30 Session 4 (Chair: Peter Toft)

Dinner at New Hall

  • 19:00 Champagne reception in the Fellows' Garden
  • 19:30 Dinner in the Fellows' Dining Room

Schedule: Tuesday May 13

09:00-10:30 Session 5 (Chair: Paul Anderson)


11:00-12:30 Session 6 (Chair: Tim Harris)

Closing Lunch

Local Arrangements

  • For a Cambridge map, with meeting locations highlighted, see here.
  • The meeting venue is the Roger Needham Building.
  • The Castle Inn, Castle Street, is a good meeting point for those wanting a drink together on the Sunday evening. The organisers will be there at 9pm and the pub shuts at 11pm. As well as fine ales, the Castle Inn does good pub grub, but the kitchen closes at 9pm, so get there early if you want to have dinner.
  • For non-pub food, there is a row of restaurants leading from Castle hill down to the river along Castle, Magdalene, and Bridge Streets. We recommend Cafe Rouge (French), Margherita (Italian), Thanh Binh (Vietnamese), Cafe Naz (North Indian Curry), Raj Malabar (South Indian), and Teri-Aki (Sushi).
  • Registration opens at 8:30am Monday, May 12, and meeting opens at 9am; the formal progamme will end with lunch on Tuesday, leaving the afternoon free for discussions.
  • The workshop dinner on May 12 is in the Fellows' Dining Room at New Hall. New Hall is about a ten minute walk from the Roger Needham Building.
  • We have a block booking of rooms at the Hotel Felix (four stars). To make a reservation, phone Lisa Kerry on +44 1223 814349 or email Lisa.Kerry at Please mention MSRC to get the corporate rate of £121.00 B&B including Wi-Fi.
  • An alternative is the Arundel House Hotel (three stars), which offers rooms at £95.00 B&B. (The Arundel House Hotel is closer to central Cambridge than the Hotel Felix, but is further from the Roger Needham Building.)
  • For other hotels and guest houses in Cambridge see this list.
  • For Cambridge weather, see here (it's looking quite hopeful, by the way).



Contact Us