Software-Systeme müssen oft unter knappen Budgets und engen Zeitvorgaben am Leben erhalten, gewartet oder weiterentwickelt werden. In diesem Workshop lernen Sie, wie Sie unter solch harten Randbedingungen betriebs- und konkurrenzfähig bleiben können und Ihre Investitionen schützen. Sie lernen, Ihre Systeme zu analysieren, Probleme und Risiken zu identifizieren, deren „Schwere“ betriebswirtschaftlich einzuschätzen, Ideen für Abhilfe, Verbesserung und evolutionären Ausbau zu entwickeln, zu planen und zielgerichtet schrittweise umzusetzen.
IMPROVE hilft Ihnen, kurzfristige Budgetvorgaben und langfristige Architektur- und Produktqualität in Einklang zu bringen. Sie vermeiden Verletzungen der konzeptionellen Integrität und kurzfristige Behelfslösungen. Wir zeigen systematische Auswege aus inkonsistenter Implementierung und riskanter Technologie-Diversifizierung.
Zielgruppe
Der Workshop richtet sich an Softwarearchitekt:innen und Softwareentwickler:innen, sowie an Produkt- oder Systemverantwortliche, die ein bestehendes System kurz-, mittel- oder langfristig betreuen, weiterentwickeln, warten und pflegen müssen. Die Flugebenen passen wir nach Ihren Bedürfnissen an: Lieber Bits und Bytes oder lieber ganzheitlich methodisch? Wir holen Sie dort ab, wo Sie sich gerade befinden.
Einblicke
In diesem Abschnitt geben wir Ihnen einen Einblick in den Aufbau und Ablauf unserer Schulung. Dazu beschreiben wir kurz die einzelnen Abschnitte und zeigen Ihnen hierfür beispielhaft Folien und weitere Inhalte.
Herausforderung „Legacy System“
Der Umgang mit Bestandssystemen gestaltet sich seit jeher schwierig. Aber was sind die Gründe dafür? Wir blicken auf ein paar Eigenschaften und die Entstehung der sog. „Legacy Systeme“. Wir suchen aber auch nach ersten Anhaltspunkten, wie wir hier für eine Modernisierung ansetzen können.

Einführung in aim42
Mit aim42, der „Architecture Improvement Method“, bauen wir die Abwehrhaltung gegenüber Bestandssystemen und Wissensdefizite gezielt ab. aim42 bietet uns in der Schulung eine gute Grundlage für ein strukturiertes Verbessern. Die Ideen und Phasen von aim42 gehen wir Schritt für Schritt mit Ihnen durch.

Analyze
In der Phase „analysieren“ zeigen wir zuerst, wie Sie eine Modernisierung NICHT starten sollen. Wir geben Ihnen anschließend eine Sammlung an Praktiken für die ersten Schritte mit. Wir führen Sie auch durch verschiedene Analysetechniken etwa zu Stakeholdern, Qualitätsanforderungen, Laufzeitverhalten, Entwicklungsprozessen und Vielem mehr. Viele Inhalte präsentieren wir auch in einem interaktiven Format, wo in Kleingruppen gemeinsam an einer Lösung gearbeitet wird.

Evaluate
Nach der Analysephase stehen wir mit einem Sack voller möglicher Probleme da. In der „bewerten“-Phase finden wir nun heraus, wo wir sinnvollerweise anpacken. Was bedeutet „sinnvoll“? Nun ja: Es kommt drauf an! Und auf was? Das zeigen wir Ihnen in dieser Phase. Soviel verraten wir: Es ist ein mehrdimensionales Problem. Und es hat u. a. etwas mit dem sog. „Geschäftswert“ zu tun!

Improve
In der Phase „verbessern“ geben wir Ihnen ebenfalls eine Reihe von bewährten Praktiken an die Hand, um die Modernisierung Ihres Softwaresystems sicher durchzuführen. Im Fokus stehen vor allem inkrementelle Migrationsverfahren. Aber auch konkrete Verbesserungstechniken kommen nicht zu kurz. Wie zuvor bieten wir Ihnen einen Überblick über mehrere Stellschrauben, die Sie zur einer effektiven Verbesserung Ihres Softwaresystems nutzen können. Bei Bedarf tauchen wir auch gerne in die Details ein.

Cross-Cutting
Schließlich beenden wir mit den „unterstützenden Themen“ die Schulung mit diversen Tipps ab, damit Sie bei Ihren Modernisierungsvorhaben einen klaren Kopf behalten. Auch wie sie kniffligere Aufgaben lösen oder langfristige Umbauarbeiten durchziehen wird hier Thema sein. Es wird auch um lange Holzstäbchen und Popcorn gehen. Lassen Sie sich überraschen!

Interaktion
Während der Schulung gibt es immer wieder die Gelegenheit für tiefergehende Diskussionen. Wir stehen gerne für Ihre Fragen mit Rat bereit. Zudem verbinden wir die Schulungsinhalte mit unseren Erfahrungen aus der Praxis. Abgerundet wird die Schulung mit vielen interaktiven Übungen und einem durchgängigen Fallbeispiel, wo die gezeigten Techniken direkt angewandt werden. Das funktioniert auch online!
Themenüberblick
Grundlagen
- Typische Probleme mit Sofware
- Vorgehensweisen bei Modernisierungen
Softwaresysteme analysieren
- Qualitative und quantitative Methoden
- Stakeholder & Systemkontext
- Code-, Struktur- & Laufzeitanalysen
- Produkt- und Prozessanalyse
Schwachstellen und Verbesserungen bewerten
- Probleme und Lösungsansätze
- Betriebswirtschaftliche Größen
- Rewrite vs. kontinuierlicher Verbesserung
Systeme und Prozesse verbessern
- Entwicklungsprozesse
- Refactoring-Techniken
- Änderungsrisiken & Kopplungsreduktion
- Laufzeitverhalten & betriebliche Prozesse
- Arbeiten durch verbesserte Dokumentation
Unterstützende Themen
- Probleme und Risiken methodisch erfassen
- Bewertete Probleme und Lösungsansätze explizit darstellen
- Risiken, Schwachstellen, Kosten, Maßnahmen & Aufwände strukturiert festhalten
- Tools und Techniken zum Problemabbau und der Kommunikation kennenlernen
Empfehlungen und Ausblick
- Die wichtigsten Empfehlungen im Überblick
- Ihre weiteren Schritte in der evolutionären Architekturverbesserung
Weitere Details zu den Inhalten gibt es im offiziellen IMPROVE-Lehrplan des iSAQBs.
Bei Fragen zur Schulung senden Sie bitte eine E-Mail an training@innoq.com.