Coordination and Component Composition

Admission requirements

Description

The advent of component based systems, service oriented architectures, and massive coarse-grain concurrency supported by multi-core platforms presents new challenges in software engineering. These trends bring forth issues involving formal models for compositional construction of software, as well as interaction protocols; connector or glue-code programming; loose inter-component coupling; dynamic reconfiguration; composition, and coordination of components by third parties. All of these issues must be satisfactorily addressed in the context of distributed concurrent systems. Traditional software construction techniques and their underlying formalisms fall short in meeting these challenges.

Course objectives

The objective of this course is to study the challenging software engineering issues involved in the design, development, and the analysis of component based software, service oriented architectures, and cloud computing. The students learn the shortcomings of the existing techniques for construction of complex concurrent systems by composing independent pieces of functionality, and study the current frontier research that attempts to address them.