Sunday 15 June 2014

Arbeit

Ich widme diesen Eintrag allen, die für ihr Geld arbeiten müssen.

Dieser Gruppe gehöre ich nicht an, weil ich arbeite zwar, kriege aber von meinem Arbeitgeber keinen Cent. Ich rege mich nicht auf, ich stelle nur fest.

Die letzten Tage, das Wochenende eingeschlossen, waren recht arbeitsintensiv. Mein Professor Hoa Dam hat bei einer Software-Konferenz eine Auszeichnung für eine seiner wissenschaftliche Arbeiten erhalten. Als Resultat darf er nun in einem Journal einen Artikel im Juli veröffentlichen der auf die vorherige Arbeit aufbaut und sie erweitert.

Um was geht es eigentlich?

Meine Disziplin, Software Engineering, schaut im Vergleich zu der rasanten Entwicklung, die Computerhardware in den letzten siebzig Jahren vollzogen hat, recht arm aus der Wäsche.
Das hat nichts mit Software Engineering an sich zu tun. Es gab in seiner kurzen Geschichte doch respektable und auch messbare Fortschritte, was man nicht von jeder "Wissenschaft" behaupten kann (ja, ich schaue dich scharf an, Wirtschaftswissenschaften).
Aber verglichen mit Durchbrüchen wie der Erfindung des Transistors kannst du einfach nicht mithalten, das ist eine Liga zu hoch, dafür braucht man sich auch nicht zu schämen.

Es gibt also einiges zu tun in meinem recht jungen Feld um zu den Hardwarebauern, den Strebern, aufzuschließen.

Aber wie?

Die größte Herausforderung ist es, die Komplexität von Software in den Griff zu bekommen. Ein Computerprogramm ist wie die eigene Frau: Man glaubt ihre Eigenheiten und Raffinessen zu kennen und ist fasziniert von ihnen. Aber wehe man versucht etwas an ihr zu ändern: Mit den Konsequenzen hast du nicht gerechnet.
Wir verlassen diese Metapher aber gleich wieder, weil ich für Beziehungstipps erstens nicht zuständig bin, und zweitens meine FSK12-Einstufung sonst tschari geht.

Es ist nämlich notwendig, ein komplexeres Softwaresystem in seine Einzelteile zu zerlegen um es zu verstehen:
Man kann zum Beispiel Softwaresysteme, wie das allseits beliebte Electronic Banking (Elba) von Raiffeisen*, auf hohem Abstraktionsniveau, also ohne Details, modellieren.
Solche Modelle bestehen prinzipiell aus Quadraten die mit Linien verbunden sind und geben eine Übersicht darüber, wie ausfallsicher, wie hardwareintensiv und wie teuer Softwaresysteme sind bzw sein werden.
Die Quadrate stehen dabei für die einzelnen Teilsysteme und die Linien bedeuten, dass diese Teilsysteme untereinander Nachrichten austauschen.







"Ja genau", wird sich der eine oder andere Leser jetzt denken, "und für sowas kriegen die ein Geld?! Die paar Kasteln kann ich auch."

Darauf würde ich antworten: Nein, ich arbeite umsonst.

Wenn man so ein Modell erstmal hat, kann man das als Grundriss, als Architektur verwenden. Wie im Hoch- und Tiefbau nimmt man sich den Plan zur Hand und stellt dann ein Konstrukt auf. Anders als auf der Baustelle sollte der feine Herr Softwarearchitekt aber eigenhändig mithelfen, seinen Plan in lauffähige Programme umzusetzen. Das verringert die Kluft zwischen Theorie und Praxis und soll den Dampfplauderern den Garaus machen.

Auf solche Modelle lassen sich auch automatisch Regeln anwenden: Man legt fest, dass alle Teilsysteme unterschiedlich heißen, dass sie mit maximal drei anderen Teilsystemen kommunizieren dürfen, oder dass wenn zwei miteinander reden wollen, die Nachricht beim anderen überhaupt ankommen kann.

Was der Hoa zusammen mit Kollegen von der JKU erreicht hat, ist nichts weniger als Modelle die diese Regeln verletzen, automatisch zu reparieren.
Er hat diese Fähigkeit in ein Programm eingebaut, mit der man Softwarearchitekturen erstellen kann und hat dafür auch die Auszeichnung für die beste wissenschaftliche Arbeit gewonnen.

Diesen Erfolg werden wir jetzt wiederholen indem ich dasselbe in ein anderes Programm integriere. Also ich erfinde jetzt nicht das Rad neu; die Schwierigkeiten die sich mir stellen sind eher technischer Natur: Der Code ist zirka zehn Jahre alt (was 100 in Menschenjahren ist) und nicht so geschrieben, dass man seine eigenen Erweiterungen leicht anbringen kann.

Aber ich mache gute Fortschritte und bin optimistisch, dass sich das bis Anfang Juli ausgeht, denn dann will Hoa nämlich die Arbeit für das Journal einreichen. Aber der Zeitdruck ist stark.

Deswegen gibts jetzt noch ein paar Fotos von den letzten Tagen, dann Zähneputzen und ab ins Bett.



Kurz nach dem Aufstehen heute morgen.


Auf dem Weg zum Labor...

... lebt eine Kängurufamilie aus Metall

Ingenieure tragen manchmal dick auf. Hier arbeite ich

Unser Labor. "Decision Systems" bezieht sich auf Künstliche Intelligenz. Dazu ein anderes Mal mehr








Ein Kollege von Hoa. Dr Wang ist Professor für Angewandte Lässigkeit

* Fußnote: Auch wenn ich mich bemühe, in jedem meiner Einträge einen Raiffeisenbezug herzustellen, gelingt mir das nicht immer. Dafür entschuldige ich mich bei meinem Publikum. Andererseits kann man auch irgendwann genug kriegen vom allmächtigen Giebelkreuz und zu etwas Sinnvollerem wechseln. Zum Beispiel zu Ottakringer.

1 comment:

  1. Wenn das Facebook wäre, würdest für den Eintrag von mir ein Like bekommen. Hut ab!

    ReplyDelete