GMU Software Engineering Seminar Series

 

***********************************************

Date: Mon, 11/09/2009

Time: 12 – 1pm

Location: 4201 Engineering

***********************************************

Title: Architectural Patterns for Decentralized Self-Adaptive Systems

Speaker: Danny Weyns

Abstract
Self-adaptability has been proposed as an effective approach to tackle the increasing complexity of constructing and managing contemporary software systems. Self-adaptability endows a system with the capability to adapt itself to changes in its environment and user requirements. Several researchers have argued that software architecture provides the right level of abstraction and generality to deal with the challenges of self-adaptability. One of the major challenges in self-adaptive systems is dealing with distribution and decentralization. Decentralized control is crucial for quality requirements such as openness and scalability. Over the past 8 years, we have been studying decentralized architectures for realizing self-adaptability based on multi-agent systems (MAS). A MAS architecture structures the software in a number of interacting autonomous entities (agents) that cooperatively realize the system goals. Agents flexibly adapt their behavior and interactions to dynamics in the system or its environment. In the course of designing and building various MAS applications, we derived several architectural patterns that provide generic solution schemes for recurring design problems. In this talk, I will zoom in on a number of these patterns and illustrate them with practical examples.

 

Bio
Danny Weyns is a post-doctoral researcher at the Katholieke Universiteit Leuven, Belgium. His main research interests are in software architecture, self-adaptive systems, multi-agent systems, and middleware for decentralized systems. Danny is currently visiting researcher at Valoria Lab of the Université de Bretagne-Sud, France where he works with Prof. Flavio Oquendo on formal modeling of dynamic software architectures of decentralized systems.

 

***********************************************

Title: Continuous Learning for Self-Adaptive Software Systems

Speaker: Jesper Andersson

Abstract

Recent computing trends, such as pervasiveness and mobility of systems, increase the software complexity to a point where the software itself must adapt at run-time. In order to meet functional and quality requirements in a setting of ever changing conditions and constraints, self-adaptation is one possible answer. Adaptive system design, development, and maintenance add additional challenges for software engineers. In addition to the complexity of static system engineering, systems must know when to adapt, where to adapt, and how to adapt. Acquiring knowledge to answer these questions is a challenging task and the problem becomes even more complex as the systems, and number of conditions and constraints grow. In this talk we present and exemplify work in progress on a dual learning process with architecture support that combines off-line and on-line mechanisms. Off-line, the system is simulated or subject for controlled executions. The collected information is used to derive configuration knowledge, i.e., configuration rules. We realize that off-line learning will never be 100% correct or complete in the general case. We address this issue by employing on-line learning strategies for gradually tuning/extending/replacing configuration knowledge.

 

Bio
Jesper Andersson is an assistant professor at Växjö University in Sweden. His main research interests are in software architectures, end-user programming and reuse for self adaptive systems development and self adaptation in distributed architectures.