Software Reuse
StartSeite | Neues | TestSeite | ForumSeite | Teilnehmer | Kategorien | Index | Hilfe | Einstellungen | Ändern
Es liegt auf der Hand, dass die Wiederverwendung eines Produkts günstiger ist wird als das Wegwerfen und die Neuproduktion. Das muss doch auch in der SoftwareEntwicklung gelten und zur Senkung der Produktionskosten nutzbar sein.
Was ist SoftwareReuse? Ist vermutlich eine schlechte Frage. Besser:
Welche Formen von SoftwareReuse gibt es?
- Selbstverständliche Formen
- "Reuse" der Betriebssystem-Funktionalität
- "Reuse" der Standard-Bibliothek der Programiersprache
- Zugekaufte Libraries, Tools, Komponenten, ...
- ...
- Keine "Wiederverwendung" im eigentlichen Sinn
- CutPasteAndRapeReuse?
- ...
- InternalReuse? (innerhalb eines Projektes)
- Funktionen statt redundantem Code
- Objekte, Module, Komponenten, ...
- ...
- ExternalReuse? (Projektgrenzen überschreitend)
- ...
Potentielle Vorteile bei der Wiederverwendung von Software:
- Geringere Entwicklungskosten
- Geringere Entwicklungszeit
- Benutzung von Komponenten, die ihre Zuverlässigkeit bereits bewiesen haben
- Großer Erfahrungspool, auf den im Problemfall zurückgegriffen werden kann
- ...
Potentielle Nachteile bei der Wiederverwendung von Software:
- Externe Komponenten erhöhen den Lernaufwand
- Inkonsistenzen zwischen externen Komponenten sind die Regel
- Probleme bei der Fehlersuche und Fehlerbehebung
- Es ist unwahrscheinlich, dass eine externe Komponente genau meine Anforderungen erfüllt, daher
- Um Schwächen der Komponente muss 'herumprogrammiert' werden
- Überflüssige Funktionalität/Flexibilität der externen Komponente erhöhen den Lern- und Wartungsaufwand
- Die entstehende Programme sind normalerweise langsamer.
- Die entstehende Programme sind normalerweise größer.
Potentielle Vorteile bei der Produktion wiederverwendbarer Software:
- Bessere "Qualität"
- abstraktere APIs, besser geplant
- mehr User/Anwendungen bedeuten mehr Chancen zur Fehlerbeseitigung
- ...
Potentielle Nachteile bei der Produktion wiederverwendbarer Software:
- Höhere Produktionskosten (bessere Planung erforderlich, Dokumentation, ...)
- u.U. wird in Funktionalität investiert, die niemand benötigt
- ...
Wie kann man SoftwareReuse messen?
In welchem Verhältnis stehen SoftwareReuse und ExtremeProgramming?
- XP verlangt die Maximierung von InternalReuse?
- XP kennt kein ExternalReuse? (InterProjectReuse?)
- ...
Beobachtungen:
- Anfangs wurde ObjektOrientierteProgrammierung als Technologie zur Steigerung der Wiederverwendbarkeit propagiert. Jetzt liest man dazu eher kritische Meinungen mit dem diffusen Tenor "OO und Reuse sind möglicherweise orthogonal".
Materialien:
StartSeite | Neues | TestSeite | ForumSeite | Teilnehmer | Kategorien | Index | Hilfe | Einstellungen | Ändern
Text dieser Seite ändern (zuletzt geändert: 17. April 2001 9:00 (diff))