TUTLOGO TUTLOGO
practise
Notifications
Teams
Publications
Partners
Downloads
Related activities
current projects
Darwin
Lively
Rye
Sulava
completed projects
AMOEBA
Archimedes
ART
ATOS
EEWES
Fred & JavaFrames
INARI
MBT-MOSE
MoDES
MoMupe
MuSA
Ohjelmaturva
SERIOUS
Sulake
TEMA
UML++
Wesahmi
contact
Feedback
site
Site map
Search
private
Login

Darwin: Deriving Software Architecture with Intelligent Techniques

Introduction | Team | Publications | Downloads |

Introduction

Automated support for software architecture design is required both in the case of conventional human-driven software development and in the case of software generation. In the former case, this kind of support assists a software architect in producing an initial approximation for satisfying given requirements, exploiting known good solutions to design problems. In the latter case, automated architectural design provides a way to satisfy given quality requirements in the generated software - a possibility beyond the capabilities of current approaches.

In this project our goal is to study to what extent it is possible to produce a reasonable architectural design proposal for a software system automatically based on its functional and quality requirements. The technique is based on using intelligent techniques like genetic algorithms and simulated annealing. We exploit architectural best practices, design patterns and architectural styles as the basic elements of software architecture, using heuristic searching methods to find an optimal combination of these elementary solutions for given requirements and given domain. The techniques are assumed to be used for assisting software architects in generating initial designs, for facilitating quality-dependent application generators, and for supporting dynamic re-architecting in service-oriented systems. In addition to the generation of software architecture statically, we plan to exploit automated architecture generation in the development of self-adaptive systems that have architectural reflection capability, being able to both query and modify their own architecture at runtime. Using the genetic architecture synthesis method developed in the project, systems can adjust to changing environments by modifying their architectures autonomously. This work will be based on the Javeleon platform, which provides dynamic class updating capability for Java.

The project is funded by the Academy of Finland for 2009-2011, and carried out as co-operation between TUT and UTA (University of Tampere). The project continues at least till 2014 based on personal funding from graduate schools.

updated 04.02.13 20:01:26 Copyright 2011 Practise Group - Department of Software Systems - Tampere University of Technology