Interfaces for Component-Based Design

Stavros Tripakis1, Marc Geilen2, Ben Lickly, Maarten Wiggers3, Edward A. Lee and Thomas A. Henzinger

Center for Hybrid and Embedded Software Systems (CHESS), National Science Foundation 0720882 (CSR-EHS: PRET), National Science Foundation 1035672 (CPS: PTIDES), National Science Foundation 0931843 (ActionWebs), Multiscale Systems Center (MuSyC), Army Research Office 911NF-11-2-0038 (DDOSOS), Air Force Research Laboratory, Robert Bosch GmBH, National Instruments, Thales and Toyota

Component-based design has emerged as a significant challenge in building complex systems, such as embedded, cyber-physical systems, in an efficient and reliable manner. The size and complexity of such systems prohibits designing an entire system from scratch, or building it as a single unit. Instead, the system must be designed as a set of components, some built from scratch, some inherited by legacy. Interfaces play a key role in component-based design, as they provide the means to reason about components. An interface can be seen as an abstraction of a component: on one hand, such an abstraction captures information that is essential in order to use the component in a given context; on the other hand, the abstraction hides unnecessary information, making reasoning simpler and more efficient.

Significant progress has been made in the past several years toward the development of a comprehensive theory of interfaces for component-based design. In particular, such a theory has been developed in a series of papers by De Alfaro, Henzinger et al. Yet, despite the advances, this theory is far from being complete. This project seeks to further study interfaces with the aim of gaining a better understanding of some of the missing pieces of the puzzle.

As a first step, we have been working on extending the theory toward so-called synchronous relational interfaces that are aimed at capturing functional properties of synchronous systems [1][2]. We have also studied interface theories for other types of systems and properties, in particular, timing and performance properties such as throughput and latency [3][4].

[1]
Stavros Tripakis, Ben Lickly, Tom Henzinger, Edward A. Lee. "On Relational Interfaces." Embedded Software (EMSOFT'09), October, 2009.
[2]
Stavros Tripakis, Ben Lickly, Tom Henzinger, Edward A. Lee. A Theory of Synchronous Relational Interfaces, Technical report, UC Berkeley, UCB/EECS-2010-45, April, 2010.
[3]
Marc Geilen, Stavros Tripakis, Maarten Wiggers. The Earlier the Better: A Theory of Timed Actor Interfaces, Technical report, UC Berkeley, UCB/EECS-2010-130, October, 2010. 2011.
[4]
Marc Geilen, Stavros Tripakis, Maarten Wiggers. The Earlier the Better: A Theory of Timed Actor Interfaces, 14th International Conference on Hybrid Systems: Computation and Control (HSCC'11), April, 2011.

1UC Berkeley
2Eindhoven University of Technology.
3Fujitsu Labs of America