Innovationen in Legacy-Systemen

In einer recht aktuellen Episode des Software-Engineering-Radios wird Dave Thomas (nein, nicht der Dave Thomas, der Pragmatic Programmer* geschrieben hat) zum Thema Innovationen in Legacy-Systemen interviewt: Dave Thomas on Innovating Legacy Systems.

Da ich in meiner täglichen Arbeit – wie viele andere Softwareentwickler sicherlich auch – mit Legacy-Software zu tun habe (siehe auch Wie man jeden Code in jedem System testbar macht), fand ich die Podcast-Episode sehr spannend. Dave vertritt auch ein paar kontroverse Ansichten. So ist er z.B. der Meinung, dass Unit-Tests Zeitverschwendung sind oder dass er lieber in einer Legacy-Anwendung in COBOL arbeiten würde als in einer in Java. Gerade letztere Aussage finde ich natürlich spannend, da wir unsere zentrale Anwendung mit Natural entwickeln, das COBOL sehr ähnlich ist.

In diesem Artikel kann man ein wenig Natural-Code sehen: Avoid Redundancy! – Lessons Learned from SOA-fying a Monolith. Unsere „Innovation“ im Natural-Umfeld ist die Entwicklung einer domänenspezifischen Sprache, mit der wir Natural-Code generieren können. Dadurch können wir abstraktere Konzepte einsetzen, müssen weniger Code schreiben und sind auch noch deutlich produktiver, weil viel Fleißarbeit wegfällt. Außerdem haben wir ein eigenes Unit-Test-Framework für Natural entwickelt.

Man kann also durchaus auch in „alten“ Systemen und Programmiersprachen moderne Konzepte umsetzen. Es ist alles nur eine Frage der Einstellung der Entwickler!


Welche Innovationen kennst du aus dem Umfeld von Legacy-Anwendungen? Hast du vielleicht selbst schon innovative Konzepte oder Ideen in eine Altanwendung eingebracht?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax