Szumo: A Compositional Contract Model for Safe Multi-threaded Applications

Speaker:	Prof. Laura K. DILLON
		Department of Computer Science and Engineering
		Michigan State University

Title:		"Szumo: A Compositional Contract Model for
		 Safe Multi-threaded Applications"

Date:		Wednesday, 27 May 2009

Time:		11:00am - 12 noon

Venue:		Lecture Theater F
		(Leung Yat Sing Lecture Theater, near lifts 25/26)
		HKUST

Abstract:

It is well known that the expressive power afforded by the use of
concurrency comes at the expense of increased complexity. Without proper
synchronization, concurrent access to shared objects can lead to race
conditions, and incorrect synchronization logic can lead to starvation or
deadlock. Moreover, concurrency confounds the development of reusable
software modules because synchronization policies and decisions are
difficult to localize into a single software module. Szumo
(Synchronization Units Model) extends an object-oriented language with a
notion of synchronization contracts to address these concerns. In lieu of
writing low-level code to acquire and release shared objects, programmers
declare synchronization contracts in a module's interface. A distributed
run-time scheduler negotiates the contracts on behalf of processes,
ensuring that the contracts of all modules are met while simultaneously
guarding against data races and avoidable deadlocks. This talk provides an
introduction to Szumo and describes a case study to validate the efficacy
of Szumo on a realistic design problem: the component-based design of a
multi-threaded web server.

*Szumo is called the Universe Model in early publications. A
Szumo-extended Eiffel compiler is available at the project website,
http://www.cse.msu.edu/sens/szumo


**********************
Biography:

Laura K. Dillon is a professor in Computer Science and Engineering at the
Michigan State University. She has been a faculty member at MSU since
1997. Before that, Laura was a professor at the University of California
in Santa Barbara.

Her research interests include: formal methods in specification, design,
and validation of concurrent systems, software engineering, and
programming languages. She has served on the editorial boards of ACM
Transactions on Software Engineering and Methodology, IEEE Transactions on
Software Engineering and Communications of the ACM, and on many
professional conference committees. She is currently on the ACM SIGSOFT
Executive Committee and is Program Chair of the 2009 International
Symposium on Software Testing and Analysis (ISSTA'09). She was the
previous department chair of Computer Science and Engineering at the
Michigan State University.