Prof. Carlo Ghezzi
Politecnico di Milano
Italy
carlo.ghezzi@polimi.it
http://www.elet.polimi.it/upload/ghezzi/
 

Principles and challenges of software architecture evolution
Software has been evolving from pre-defined, monolithic architectures to increasingly decentralized, distributed, dynamically composed federations of components. Binding mechanisms have been evolving from static to highly dynamic schemes based on discovery, negotiation, and optimization. We will survey the evolution of software composition mechanisms, from in-the-small embedded environments to in-the-large environments, like web services.
Dynamic software architectures provide flexibility, but also raise a number of challenges.In particular, verification becomes very hard, and may extend to run-time. We will exemplify the verification problem by examining two case studies. In the first case, we discuss verification via model checking of dynamic architectures adopting a publish/subscribe paradigm. In the second case we will show how verification must be based on continuous run-time monitoring.