die zur Zeit der ersten Ausgabe liefen laufen heute immer noch §Code veraltet schon direkt nach dem Schreiben §Systeme stehen nicht still, sondern müssen erweitert werden §Greenfield Development ist Wunsch – Brownfield ist Realität! §Uptime matters! – kein Probieren im Livesystem §Wir lesen eigentlich immer den Code von jemand anderes
von antiker Software §Wenige Jahre reichen schon aus um ein Programm antik zu machen Wann Architekturarchäologie? §Weiterentwicklung Altsystem §Ablösung Altsystem §Anbindung an Neusysteme Bild: Gary Stewart/Wikipedia
im Versions-Kontrollsystem §Menschen §Altentwickler §Anwender §Altanwender: Die mitentwickelt haben und wissen, weshalb das System so ist, wie es ist. Und es vielleicht mitgeformt haben §Neuanwender: Die es später so vorgesetzt bekommen haben, wie es ist Foto: Wladyslaw Sojka/Wikipedia
Proprietäre Systeme, „Ursuppe“ der Technik 1970-1985 15 Erste Standards, Hochsprachen (C, Cobol…) 1985-1995 10 PCs, Prä-Internet-Phase, erste Standardsoftware, proprietäre Ansätze bei Individualsystemen („Es muss laufen“) 1995-2003 8 Internet in der Masse, Standards für Geschäftsprozesse, aber „Ursuppe“ für Internetfähigkeit (z.B. Applikationsserver, Techniken) 2003-2010 7 Verwendung „schwergewichtiger“ Standards (z.B. EJB) 2010-2014 4 „Entschlackung“ der Standards -> Leichtgewichtige Architekturen 2014- ? Neue Herausforderung „Internet-of-Things“ -> erneute „Ursuppe“
wir später“ §Falsche oder irreführende Namen und Kommentare §Ungenutztem Code Helfen kann: §Statische Analyse §Unit Tests §Glossar §àUbiquitous Language Foto: Kpisimon/Wikipedia
Hardware §Andere Systeme §Analyse von Quell- und Binärcode §Manuell/maschinell §Dynamische Analyse: §Verhalten zur Laufzeit §Manuell/maschinell §Vorsichtiges Einfügen von Sonden §um das System herum §in den Quellcode §Aspekte (AspectJ) können ein Mittel sein
und warum die damaligen Entwickler gebaut haben §Schwächen/Stärken herausfinden §Den Schatz finden: vergrabenes und verlorengegangenes Wissen aus der Domäne §Aus welcher „Programmierschule“? §à Domain Driven Design §Was war die „Art des Hauses“? Grafik: Nissim Farin/Youtube
morgen §Wie können wir sie so hinterlassen, dass die Archäologen von morgen sie leicht ausgraben können? Wappen: Rolando Yñigo-GenioWikipedia Winter is coming
besteht aus mehreren Komponenten, ggf. verschiedene Sprachen §Einzige Gemeinsamkeit: Informix SE Datenbank §ER-Diagramm = nicht vorhanden §Kein Netzwerkzugriff
und Aktionen aus DB-Sicht §Vorteile: §Zentraler Ort §Unabhängig von Programmiersprache §Kein händisches Eingreifen §Auch in Produktivumgebungen einsetzbar
§Null Doku §Null Unit-Tests (oder überhaupt automische Tests) §Ursprüngliche Entwickler vorhanden §Aber: Keine Zeit §Kaum Erinnerung §Großes Team von Newbies §Lessons Learned: §Einführung ins System von Altentwicklern §System selbst erforschen §Kurze Meetings mit Altentwicklern §Gut vorbereiten §Richtige Fragen stellen
+ Reise nach Jerusalem §6 Stühle vorne „im Goldfischglas“ §Wer etwas sagen möchte setzt sich auf einen der Stühle §Es muss immer ein Stuhl frei sein -> wenn ein neuer Teilnehmer kommt, dann geht einer der alten zurück ins Publikum
§Wir alle wollen wissen, was andere machen §Share your problem §Wir alle wollen wissen, was nicht funktioniert §Vielleicht hat jemand anderes eine Idee Share your Story Share your Problem