Cloud applications rarely consists in single-server-single-component architecture; this means that when it comes to automatically deploy them on one (or even multiple Clouds) one has to consider the mutual dependencies that each component in each instance have with the other components not only inside the same instance but also across different instances.
We are developing an extensible software tool that can deploy complex applications/architectures on a target cloud, and we need your help in (mark one of the following ): implementing it, refactoring it, redesign it, but also extending it.
The current prototype of our tool is implemented mainly in Java, it exploits a power Dependency Injection framework (A.K.A. Tapestry-IoC), and can work with OpenStack and Amazon.
We seek for interested students to provide their contribution to this project (which will be made available soon as open source, probably on git-hub). Depending on your skills, attitude and preferences you can work on this project for your Praktikum, and let the work bloom into a very nice thesis.