Ich habe gelesen, Fakten und Irrtümer der Softwareentwicklung, die einen Abschnitt der Wartung hat. Da ich seit Jahren ein Wartungsentwickler bin, wurden mir sehr interessante Fakten präsentiert. Hier sind drei.
- Fakt 41: Die Wartung verbraucht normalerweise 40 bis 80 Prozent (durchschnittlich 60 Prozent) der Softwarekosten. Daher ist es wahrscheinlich die wichtigste Lebenszyklusphase von Software.
- Fakt 42: Die Verbesserung ist für rund 60 Prozent der Softwarewartungskosten verantwortlich. Die Fehlerkorrektur beträgt ungefähr 17 Prozent. Bei der Softwarewartung geht es daher hauptsächlich darum, alte Software um neue Funktionen zu erweitern und nicht zu reparieren.
- Fakt 45: Eine bessere Softwareentwicklung führt zu mehr Wartung, nicht weniger.
Dieser war nicht intuitiv, es stellt sich heraus, dass gute Software mehr Wartung hat, weil sie leicht zu ändern ist. Daher bleibt es länger in Gebrauch, was ja zu mehr Änderungen führt.
Welches Paradigma (wie funktional, objektorientiert, prozedural) weist die beste Wartbarkeit auf, und gibt es Forschungsergebnisse, die dies belegen?
maintenance
maintainability
KaizenSoze
quelle
quelle
Antworten:
Ich denke, Sie werden feststellen, dass Paradigmen wie funktional, OO und prozedural wahrscheinlich nicht auf sinnvolle Weise mit der Wartbarkeit von Software übereinstimmen.
Was Sie möglicherweise finden, korreliert viel deutlicher mit der Wartbarkeit der Software:
Grad der Anforderungserfassung und Anforderungsentwicklung
Gute Entwicklungspraktiken: (lose Kopplung, hohe Kohäsion, Unit-Tests, YAGNI ...)
Erfahrene und qualifizierte Software-Ingenieure (Sie sind zehnmal so viel wert wie ein Idiot)
Qualifiziertes und organisiertes technisches QS-Team
Gutes Projektmanagement unter Leitung kompetenter Projektmanager (IMHO noch schwerer zu finden als qualifizierte Softwareentwickler)
Gute Produktbesitzer oder Anwendungsmanager, starke Führung, gute langfristige Ausrichtung, gutes Feedback an die Projektteams, Gesamtvision.
quelle
Sie scheinen dies anhand des Wartungsaufwands und nicht anhand des Prozentsatzes der Kosten zu sehen. Gute Software mit mehr Funktionen ist nur eine größere Menge an Software. Wenn der Wartungsprozentsatz festgelegt ist (da es sich um eine gute Software handelt und wir davon ausgehen, dass die zusätzlichen Funktionen als gute Software hinzugefügt wurden), erhöht sich der Betrag. Es ist nur ein größeres Stück Kuchen mit der gleichen Anzahl von Scheiben.
Basierend auf Ihren Fragen ist es wichtig, ob die "gute" Software geschrieben wurde: Funktions-, OOP- oder Verfahrenscode. Wird jemand, der eine lasergeführte Motorsäge hat, Holz sparen, wenn er nicht weiß, wie er messen soll?
quelle