1 / 26

Neue Software - Kosten

Keynote for SCI/ISAS 99 on Automated Modification of Legacy Assets Chris Verhoef University of Amsterdam Deutsche Version von Monika Schneider, sd&m. Neue Software - Kosten. $81 Mrd pro Jahr für aufgegebene Projekte

Download Presentation

Neue Software - Kosten

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Keynote for SCI/ISAS 99 onAutomatedModification of Legacy AssetsChris VerhoefUniversity of AmsterdamDeutsche Version vonMonika Schneider, sd&m

  2. Neue Software - Kosten • $81 Mrd pro Jahr für aufgegebene Projekte • $59 Mrd pro Jahr wegen Kosten- oder Zeitüberschreitung oder Änderung des Umfanges Neue Software zu bauen ist schwer, also pflege die existierende! (Erblast)

  3. Existierende Software - Fakten • Volumen: 7 Mrd Function Points • 750 Mrd Zeilen COBOL Code • 900 Mrd Zeilen C Code 1 Function Point = 128 Zeilen C 107 Zeilen COBOL

  4. Existierende Software - Kosten • Y2K Problem kostet $1635 Mrd • Durschnittlich 5 Fehler pro Function Point • 35 Mrd Fehler zu beheben Das reicht! Werft den alten Kram weg und fangt neu an!

  5. Software Neuentwicklung • Volumen: 7 Mrd Function Points • Start der Entwicklung: 1277 • Anzahl Entwickler: 46 Mio Daumenregel: Function Points hoch 0.04 = Monate Function Points geteilt durch 150 = Personal

  6. Unsere Daten • 1. Januar 1999: weiche Euro-Einführung • 1. Januar 1999: 99 als Sonderfall • 20./21. August 1999: GPS Woche • 1. Januar 2000: 00 als Sonderfall • 29. Februar 2000: Papst Gregor XIII • 1. Januar 2001: harte Euro-Einführung • 2038: UNIX Datum • .....

  7. Ein Migrationsprojekt... Während die 46 Mio Entwickler seit 1277 wie verrückt arbeiten, ändert jemand die Anforderungen: • Papst Gregor XIII: 04.10.1582 = 15.10.1582 • 1700 ist kein Schaltjahr (sollte aber nach julianischem Kalender) • in 1712 gibt es den 30. Februar Anforderungen wachsen um 2% pro Monat während der Entwicklung.

  8. Lektionen • Alte Software wegzuwerfen und alles neu zu machen ist unrealistisch. • Wir sitzen auf der alten Software fest. • Programmierung führt zu Erblast. • Wir konstruieren heute die Erblast von morgen.

  9. Verteilung des Personals

  10. Sprachen / Plattformen • COBOL 30% • Assembler 10% 140-220 Mrd Zeilen • C/C++ 20% • 700 Sprachen 40% • 5-10% ist sprachlos: Sourcecode verloren

  11. Sprachen / Plattformen • 30% US Software hat gemischte Sprachen: COBOL/CICS/SQL/Assembler • 60% geschäftskritischer Software läuft auf Mainframes • 80% der Mainframe Applikationen benutzen COBOL

  12. Wichtige Botschaft • Wartung und Renovierung existierender Software wird immer wichtiger. • Automatische Unterstützung ist unumgänglich. • Der Wendepunkt ist erreicht: 4 von 7 Entwicklern erweitern und reparieren. • In 2020 wird nur 1/3 der Entwickler an neuen Projekten arbeiten.

  13. Was ist Software Renovation? Erblast: • Teures System, das Veränderungen aufgrund von Größe, Alter oder fortlaufender Anpassungen zunichte macht. • Erfordert wachsende Wartungskosten Software Renovation: • Schrittweises Verständnis und Verbesserung von Erblasten. • Benutzt reverse engineering, design recovery, system restructuring,...

  14. Eine typische Erblast

  15. 100% Fehlerinjektion(jede Reparatur erzeugt einen Fehler an anderer Stelle)

  16. Evolution in die falsche Richtung

  17. Hinzufügen widersprüchlicher Features erschwert den Gebrauch

  18. Erblasten auflösen durch Komponentenbildung

  19. Komponentenbildung ermöglicht Erweiterungen

  20. Restrukturierung ermöglicht Modernisierung

  21. Reverse Engineering ermöglicht Änderungen

  22. Entfernen widersprüchlicher Features ermöglicht Gebrauch

  23. User Interface Reengineering

  24. Typische Renovation Tasks • entferne Erblasten • ermögliche Weiterentwicklung • reduziere die Fehlerinjektionsrate • reduziere Wartungskosten • entferne widersprüchliche Features • Restrukturierung macht sich bezahlt • Reparaturdesign erzeugt Schwachpunkte

  25. Das Ziel

  26. Wartung und Renovation ist erforderlich wichtig schwierig Herausforderung für die Forschung Wartung und Renovation ist spannend: Patterns Frameworks Middleware Components Product-lines Software Renovation heißt, Technologie von morgen zu nutzen, um Software von gestern auf den Stand von heute zu bringen.

More Related