The Distributed Components Research Group

The Distributed Components Research Group investigates tools, techniques, and methodologies for the deployment of high-confidence distributed systems. A theme of our work is sensitivity to the trade-off between (i) the confidence in the correctness of a system and (ii) the effort required to achieve this confidence. Thus, the group focuses on both the theoretical underpinnings for sound specification and reasoning, as well as practical tools for application to real systems.

A list of group members (current and recent) is here.

Links to recent papers and talks are organized into 4 categories:

Formal Methods and Distributed Algorithms

  • "A Distributed Maximal Schedular for Strong Fairness"
    Lang and Sivilotti, DISC, Sept 2007.
    [ paper ] [ slides ]
  • "The Impact of Laziness on the Performance of Snapshot Algorithms"
    Liu and Sivilotti, PDCS, Nov 2005.
    [ paper ] [ slides ]
  • "Plausible Clocks with Bounded Inaccuracy"
    Moore and Sivilotti, DISC, Sept 2005.
    [ paper ] [ slides ]
  • "Dining Philosophers with Crash Locality 1"
    Pike and Sivilotti, ICDCS, March 2004.
    (Best Paper Award)
    [ paper ]
  • "Remote Belief: Preserving Volition for Loosely Coupled Processes"
    Aydin and Sivilotti, ICDCS, May 2003.
    [ paper ] [ slides ]
  • "Lazy Snapshots"
    Sridhar and Sivilotti, PDCS, Nov 2002.
    (Finalist for Best Paper Award)
    [ paper ] [ slides ]
  • "A Paradigm for Component-Based Software Development in a Distributed Environment"
    Mascarenhas and Sivilotti, PDPTA, June 2002.
    [ paper ]
  • "A New Distributed Resource-Allocation Algorithm with Optimal Failure Locality"
    Sivilotti, Pike, and Sridhar, PDCS, Nov 2000.
    [ paper ] [ slides ]
  • "A Class of Synchronization Systems that Permit the Use of Large Atomic Blocks",
    Sivilotti, CASCON, Dec 1998.
    (Best Paper Award)
    [ paper ] [ slides ]
  • "A Cottage Industry of Software Publishing: Implications for Theories of Composition"
    Chandy, Sivilotti, and Kiniry, FMPPTA, April 1998.
    [ paper ]
  • "Composing Processes Using Modified Rely-Guarantee Specifications"
    Manohar and Sivilotti, Caltech technical report CS-TR-96-22, June 1996.
    [ paper ]

Component-based Approaches to Testing in Distributed Systems

  • "Using Parse Tree Validation to Prevent SQL Injection Attacks"
    Buehrer, Weide, and Sivilotti, International Workshop on Software Engineering and Middleware at Joint FSE and ESEC, Sept 2005.
    [ paper ] [ slides ] [ software ]
  • "Increasing Client-Side Confidence in Remote Component Implementations"
    Jagannathan and Sivilotti, Joint FSE and ESEC, Sept 2001.
    [ paper ] [ slides ]
  • "Object Protocols for Distributed Systems "
    Krishnamurthy and Sivilotti, Joint Workshop on Formal Specification of Computer-Based Systems at ECBS, April 2001.
    [ paper ] [ slides ]
  • "The Specification and Testing of Quantified Progress Properties in Distributed Systems"
    Krishnamurthy and Sivilotti, ICSE, May 2001.
    [ paper ] [ slides ]
  • "A Tool for Testing Liveness in Distributed Object Systems"
    Giles and Sivilotti, TOOLS USA, July 2000.
    [ paper ]
  • "Specifying and Testing the Progress Properties of Distributed Components"
    Sivilotti, Workshop on Testing Distributed Components at ICSE, May 1999.
    [ paper ] [ slides ]

Component-based Approaches to Specification and Reasoning in Distributed Systems

  • "Container-Based Component Deployment: A Case Study"
    Sridhar, Hallstrom, and Sivilotti, SEKE, July 2006.
    [ paper ]
  • "Encapsulating Concurrency as an Approach to Unification"
    Kumar, Weide, Sivilotti, Sridhar, Hallstrom, and Pike, SAVCBS at FSE, Nov 2004.
    [ paper ] [ slides ]
  • "Designing the Control of a UAV Fleet with Model Checking"
    Bohn, Sivilotti, and Weide, Theory and Algorithms for Cooperative Systems, Fall 2004.
    [ paper ]
  • "A Container-Based Approach to Object-Oriented Product Lines"
    Hallstrom, Sridhar, Sivilotti, Arora, Leal, Journal of Object Technology, 3(4) April 2004.
    [ paper ]
  • "Using Model Checking to Find a Hidden Evader"
    Bohn, Sivilotti, and Weide, WASP, Oct 2003.
    [ paper ]
  • "The Specification of Distributed Objects: Liveness and Locality"
    Sivilotti and Giles, CASCON, Nov 1999.
    [ paper ] [ slides ]
  • "A World-Wide Distributed System Using Java and the Internet"
    Chandy, Rifkin, Sivilotti, et al, HPDC, Aug 1996.
    (Best Paper Award)
    [ paper ]
  • "Toward High-Confidence Distributed Systems with Java: Reliable Thread Libraries"
    Sivilotti and Chandy, ICSE, July 1996.
    [ paper ]
  • "A Verified Integration of Parallel Programming Paradigms in CC++"
    Sivilotti, IPPS, April 1994.
    [ paper ]
  • "A Method for the Specification, Composition, and Testing of Distributed Object Systems"
    Sivilotti, Ph.D. thesis, available as Caltech technical report CS-TR-97-31.
    [ paper ]

Education and Outreach