Eine Analyse über Anpassungsfähigkeiten von Programmiersprachen Java und Erlang
Weitere Titel
An Analysis of the Adaption Capabilities of Program Languages Java and Erlang
VerfasserLeonhartsberger, Josef
Betreuer / BetreuerinGöschka, Karl Michael
Datum der AbgabeJuli 2015
Schlagwörter (EN)Self-adaptive software / Dynamic Software Updating / Run-time Phenomena / Context
Zusammenfassung (Deutsch)


Zusammenfassung (Englisch)

Today's software systems increasingly depend on adaptation capabilities. As a consequence the system has to adapt to the environment and constantly change. A key

challenge is therefore, if and how program languages can support those requirements.

For this purpose two languages are taken under consideration. First a main stream

language called Java. And second a language called Erlang, which has been designed to

support distributed, fault-tolerant applications. In this thesis, the following two questions are investigated and how sucient each one of the language is. First a system

should always be available and therefore it should evolve during runtime. This means

that it is essential that the system has the ability to allow updates during runtime.

And second, the application must have capabilities to adapt itself. Human intervention

is too slow for adaption and therefore the system has to be designed to support those


For Java tools are presented to give it the ability to adapt during runtime. However the

examined tools cannot successfully overcome this restriction. Erlang has been designed

to provide this ability and therefore has the advantage. The second goal to adapt, is for

both languages a challenge. Therefore frameworks/extension like context oriented programming (COP) and aspect oriented programming (AOP) are investigated. However

both of them cannot be easily implemented without changing the design of a system.

In conclusion a language should already provide those requirements and do not rely on

workarounds or tools because they bring their own challenge.