Evolutionstheorie entwickelt Software

Prinzipien der Evolutionstheorie sind der Kern bei der Entwicklung von Software in einem aktuellen FWF-Projekt. Quelle: Roberto Erick Lopez-Herrejon

Software für ganze Produktlinien aufeinander abzustimmen geht auch automatisch und intelligent – und nicht wie bisher „manuell“ und unkoordiniert. Das zeigen Ergebnisse eines Projekts des Wissenschaftsfonds FWF, in dem Algorithmen zur Abstimmung entwickelt wurden, die auf Prinzipien der Evolution beruhen.

Beim Schweizer Taschenmesser geht es einfach – beim Smartphone ist es komplizierter: die Funktionalität der einzelnen Komponenten aufeinander abzustimmen. Jede Komponente – wie Kamera, Akku oder App – hat ihre eigene Software und deren Abstimmung aufeinander ist selbst heute noch eher dem Zufallsprinzip überlassen.

Ganz besonders eklatant wird dieses Problem bei Produktfamilien, bei denen die Software eines Produkts (wie zum Beispiel ein Smartphone) auch für viele andere Produkte (Tablet) verwendet wird. Diese Software in der Entwicklungsphase richtig abzustimmen hat sich Roberto Erick Lopez-Herrejon von der Johannes Kepler Universität Linz in einem Projekt des Lise Meitner-Programms des FWF zum Ziel gemacht – mit spannenden Ergebnissen, die nun in mehreren internationalen Publikationen veröffentlicht wurden.

SUCHEN & FINDEN

Zu den Hintergründen des Projekts meint Lopez-Herrejon: „Die Anpassung von Software aneinander ist hoch komplex. Die nahezu unendlich vielen Möglichkeiten wie diese interagieren sind unüberblickbar. Die Probleme, die auftauchen können sind also gar nicht alle vorhersehbar – und genau deswegen sucht man nach Lösungen diese zu vermeiden.

Dabei wird trotz des enormen Zeitdrucks bei der Entwicklung noch immer auf die Leistung individuellen Fachpersonals gesetzt, anstatt den Prozess zu automatisieren. Wir haben nun nach Wegen gesucht, diesen Optimierungsprozess durch Einsatz intelligenter Algorithmen zu automatisieren.“

Einer dieser Wege nennt sich „Search Based Software Engineering“ und basiert auf metaheuristischen Methoden, einem näherungsweisen Verfahren, das allgemeingültige Lösungen in unüberschaubaren Problemen schafft. Selbst wenn das Wissen über die Struktur der Software nur teilweise bekannt ist, können dennoch Lösungsszenarien berechnet werden, die zwar nicht unbedingt das absolute Optimum darstellen, in der Praxis die Breite aber ausreichend gut abdecken – und mit überschaubarer Rechnerleistung kalkuliert werden können.

NATÜRLICHE LÖSUNG

„Wir haben nun in unserem Projekt Algorithmen entwickelt, die sich an Prozessen der natürlichen Evolution orientieren“, erläutert Lopez-Herrejon den besonderen Ansatz des Projekts und fährt fort: „Darin werden Prinzipien der Vererbung und von Mutationen genauso abgebildet wie Selektion. So erhalten wir näherungsweise Lösungsansätze, die sich in der Realität bewähren.“

Ein spezielles Problem, dem sich das Team um Lopez-Herrejon widmete, war das Kontrollieren der Richtigkeit, Sicherheit und Zuverlässigkeit solcher Software. Dabei werden Softwareteile (auch Komponenten genannt), daraufhin kontrolliert, ob und wie sie mit anderen Komponenten integrierbar sind um eine falsche Verwendung zu vermeiden.

Dies ist eine zwingende Voraussetzung für die reibungslose Komponenteninteraktion innerhalb eines Softwareprodukts. Das Team konnte dabei einen allgemeinen Ansatz entwickeln, der diese Kontrolle (auch Consistency Checking genannt) für die gesamte Familie von Softwareprodukten (also allen Komponentenkombinationen auf einmal) erlaubt – und zwar bereits in einem sehr frühen Stadium der Entwicklung dieser Software. Zu einem Zeitpunkt also, zu dem etwaige Korrekturen noch ohne viel Aufwand möglich sind.

LINIENGETREU

Für Lopez-Herrejon war es ganz klar, den Fokus des Projekts auf ganze Familien von Softwareprodukten zu legen: „Eine Softwarefamilie, auch als Software Product Line bezeichnet, ist eine Art modulares System, wo ein Softwareprodukt auf kombinierbaren Komponenten aufbaut. Und da manche dieser Komponenten öfter in Softwareprodukten verwendet werden, sind diese bereits zuverlässiger und können mit weniger Testen in neuen Softwareprodukten wiederverwendet werden. Das verkürzt die Entwicklungszeit von neuen Produkten enorm und beschleunigt den Markteintritt.“

Gleichzeitig muss aber gerade bei Software Product Lines die Abstimmung der Komponenten sehr sorgfältig geplant werden, denn oftmals wurden ja diese Bestandteile zunächst für eine andere Umgebung (wie Smartphones) entwickelt – und die „Zusammenarbeit“ mit anderen Softwarekomponenten in einer neuen Umgebung (wie Tablets) kann dann voller Überraschungen sein. Oder nicht, wenn die in diesem FWF-Projekt entwickelten Algorithmen zukünftig bei der Entwicklung zum Einsatz kommen.

Zur Person
Roberto Erick Lopez-Herrejon
( http://www.jku.at/isse/content/e104563/index_html?team_view=&t=2&emp=e104563/employee_groups_wiss104569/employees104577 ) forscht am Institut für Software Systems Engineering ( http://www.jku.at/isse/content/e139609 ) der Johannes Kepler Universität Linz. Seine Forschung befasst sich u.a. intensiv mit Software Product Lines, der modellbasierten Entwicklung von Software, Softwareaufbau und -architektur sowie dem Consistency Checking. Im Rahmen seiner Karriere erhielt er bisher ein Fulbright Stipendium, ein Fellowship der University of Oxford ( http://www.ox.ac.uk ), ein IEF Marie Curie Fellowship sowie Unterstützung aus dem Lise Meitner-Programm des Wissenschaftsfonds FWF.

Publikationen:
An assessment of search-based techniques for reverse engineering feature models. R. E. Lopez-Herrejon, L. Linsbauer, J. A. Galindo, J. A. Parejo, D. Benavides, S. Segura & A. Egyed. The Journal of Systems and Software 103 (2015): 353–369
http://www.sciencedirect.com/science/article/pii/S0164121214002349

Applying multiobjective evolutionary algorithms to dynamic software product lines for reconfiguring mobile applications. G. G. Pascual, R. E. Lopez-Herrejon, M. Pinto, L. Fuentes & A. Egyed. The Journal of Systems and Software 103 (2015): 392–411 http://www.sciencedirect.com/science/article/pii/S016412121400291X

A systematic mapping study of search-based software engineering for software product lines. R. E. Lopez-Herrejon, L. Linsbauer & A. Egyed. Information and Software Technology 61 (2015): 33–51
http://www.sciencedirect.com/science/article/pii/S0950584915000166

Wissenschaftlicher Kontakt:
Dr. Roberto Erick Lopez-Herrejon
Johannes Kepler Universität Linz
Institut für Software Systems Engineering Altenbergerstraße 69
4040 Linz
T +43 / 732 / 2468 – 4387
E roberto.lopez@jku.at
W http://www.jku.at

Der Wissenschaftsfonds FWF:
Marc Seumenicht
Haus der Forschung
Sensengasse 1
1090 Wien
T +43 / 1 / 505 67 40 – 8111
E marc.seumenicht@fwf.ac.at
W http://www.fwf.ac.at

Redaktion & Aussendung:
PR&D – Public Relations für Forschung & Bildung Mariannengasse 8
1090 Wien
T +43 / 1 / 505 70 44
E contact@prd.at
W http://www.prd.at

Media Contact

Marc Seumenicht PR&D - Public Relations für Forschung & Bildung

Alle Nachrichten aus der Kategorie: Informationstechnologie

Neuerungen und Entwicklungen auf den Gebieten der Informations- und Datenverarbeitung sowie der dafür benötigten Hardware finden Sie hier zusammengefasst.

Unter anderem erhalten Sie Informationen aus den Teilbereichen: IT-Dienstleistungen, IT-Architektur, IT-Management und Telekommunikation.

Zurück zur Startseite

Kommentare (0)

Schreiben Sie einen Kommentar

Neueste Beiträge

Ideen für die Zukunft

TU Berlin präsentiert sich vom 22. bis 26. April 2024 mit neun Projekten auf der Hannover Messe 2024. Die HANNOVER MESSE gilt als die Weltleitmesse der Industrie. Ihr diesjähriger Schwerpunkt…

Peptide auf interstellarem Eis

Dass einfache Peptide auf kosmischen Staubkörnern entstehen können, wurde vom Forschungsteam um Dr. Serge Krasnokutski vom Astrophysikalischen Labor des Max-Planck-Instituts für Astronomie an der Universität Jena bereits gezeigt. Bisher ging…

Wasserstoff-Produktion in der heimischen Garage

Forschungsteam der Frankfurt UAS entwickelt Prototyp für Privathaushalte: Förderzusage vom Land Hessen für 2. Projektphase. Wasserstoff als Energieträger der Zukunft ist nicht frei verfügbar, sondern muss aufwendig hergestellt werden. Das…

Partner & Förderer