Software Engineering Risikomanagement in der Softwareentwicklung
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Software Engineering Risikomanagement in der Softwareentwicklung Die Inhalte der Vorlesung wurden primär auf Basis der jeweils angegebenen Literatur erstellt. Darüber hinaus finden sich ausgewählte Beispiele zur Softwareentwicklung aus dem Bereich der Telekommunikation. 17.03.2011 Prof. Dr. Andreas Schmietendorf 1
Inhaltsübersicht § Grundanliegen des Risikomanagements § Beispiele möglicher Softwarerisiken § Prozess des Risikomanagement § Werkzeuge zum Risikomanagement 17.03.2011 Prof. Dr. Andreas Schmietendorf 2
Grundanliegen des Risikomanagements 17.03.2011 Prof. Dr. Andreas Schmietendorf 3
Risikomanagement „Das Grundanliegen des Risikomanagements besteht in der rechtzeitigen Bestimmung von Risikofaktoren bzw. der mit einem hohen Risiko behafteten Bereiche bei der Softwareentwicklung. Daraus leiten sich die entsprechenden Maßnahmen zur Absicherung, Ressourcenerweiterung oder der Änderung der Entwicklungsvariante ab.“ Quelle: Dumke, R.: Software Engineering (4. Auflage), S. 217, Vieweg Verlag, Wiesbaden, 2003 17.03.2011 Prof. Dr. Andreas Schmietendorf 4
Motivation Ungefähr 80 Prozent aller Überarbeitungskosten werden benötigt, um 20 Prozent der Fehler zu beseitigen. Ziel des Software- Managements muss es sein, diese 20%-Probleme zu identifizieren und zu beseitigen, solange ihre Überarbeitungskosten noch relativ gering sind. - Ziel des Risiko-Managements ist es, die Wechselbeziehungen zwischen Risiken und Erfolg zu formalisieren und in anwendbare Prinzipien und Praktiken umzusetzen. - Aufgabe des Risiko-Managements ist es, Risiken zu identifizieren, anzusprechen und zu beseitigen, bevor sie zu einer Gefahr für einen erfolgreichen SW-Einsatz werden oder die Hauptquelle für Überarbeitungen darstellen. Quelle: Balzert, H.: Lehrbuch der Softwaretechnik, S. 176, Spektrum Akademischer Verlag, Heidelberg Berlin, 1998 17.03.2011 Prof. Dr. Andreas Schmietendorf 5
Risikokategorien § Projektrisiken mit potentiellen Auswirkungen auf: - Projektzeitplan - Ressourcen (z.B. Verlust eines Mitarbeiters) § Produktrisiken mit Auswirkungen auf: - Qualität der entwickelten Software - Leistung der entwickelten Software (z.B. schlechte Performance) § Wirtschaftliche Risiken mit Auswirkungen auf: - Das eigene Unternehmen - Den Auftraggeber (z.B. fehlende Prozessunterstützung) Unter Verwendung von: Sommerville, I.: Software Engineering, S. 135, Pearson Studium – Addison-Wesley, München, 2007 17.03.2011 Prof. Dr. Andreas Schmietendorf 6
Beispiele möglicher Softwarerisiken 17.03.2011 Prof. Dr. Andreas Schmietendorf 7
Typische Softwarerisiken I Risikomerkmale bzw. Risikoelemente: § Fluktuation des Personals und personelle Defizite § Unrealistische Planung & begrenzte finanzielle Mittel § Entwicklung falscher Funktionalität und Eigenschaften § Entwicklung der falschen Benutzeroberfläche § Vergolden von Anforderungen Unter Verwendung von: Dumke, R.: Software Engineering (4. Auflage), S. 216, Vieweg Verlag, Wiesbaden, 2003 17.03.2011 Prof. Dr. Andreas Schmietendorf 8
Typische Softwarerisiken II Risikomerkmale bzw. Risikoelemente: § Ständiges Verändern der Anforderungen § Defizite extern gelieferter Komponenten § Umstellungen bei extern vorgesehenen Komponenten § Defizite in der Echtzeitleistung § Überschätzung der Möglichkeiten eines Entwicklungsparadigmas Unter Verwendung von: Dumke, R.: Software Engineering (4. Auflage), S. 216, Vieweg Verlag, Wiesbaden, 2003 17.03.2011 Prof. Dr. Andreas Schmietendorf 9
Übung 3-1 § Überlegen Sie sich geeignete Risikomanagement-Techniken zur Vermeidung der aufgezeigten Risikoelemente. § Die Verwendung von Festpreisverträgen wird gerne genutzt um das Projektrisiko vom Kunden zum Auftragnehmer zu verlagern. Wie kann der Einsatz derartiger Verträge die Wahrscheinlichkeit von Produktrisiken erhöhen? Unter Verwendung von: Sommerville, I.: Software Engineering, S. 144, Pearson Studium – Addison-Wesley, München, 2007 17.03.2011 Prof. Dr. Andreas Schmietendorf 10
Prozess des Risikomanagements 17.03.2011 Prof. Dr. Andreas Schmietendorf 11
Prozess des Risikomanagements Quelle: Balzert, H.: Lehrbuch der Softwaretechnik, S. 177, Spektrum Akademischer Verlag, Heidelberg Berlin, 1998 17.03.2011 Prof. Dr. Andreas Schmietendorf 12
Risikoidentifikation Unter Verwendung von Checklisten potentieller Risiken: § Technologische Risiken § Personenbezogene Risiken § Unternehmensbezogene Risiken § Risiken durch Werkzeuge § Anforderungsrisiken § Schätzrisiken § … à Ergebnis ist eine Liste der projekt-spezifischen Risikoelemente Unter Verwendung von: Sommerville, I.: Software Engineering, S. 138, Pearson Studium – Addison-Wesley, München, 2007 17.03.2011 Prof. Dr. Andreas Schmietendorf 13
Risikoanalyse § Für jedes Risikoelement werden die Schadenswahrscheinlichkeit und das Schadensausmaß geschätzt. - gering 75% § Der Risikofaktor berechnet sich dann aus dem Produkt der beiden Schätzungen. Unter Verwendung von: Balzert, H.: Lehrbuch der Softwaretechnik, S. 177, Spektrum Akademischer Verlag, Heidelberg Berlin, 1998 17.03.2011 Prof. Dr. Andreas Schmietendorf 14
Risiko-Prioritätenbildung § Die ermittelten Risikoelemente sind nach Prioritäten zu ordnen. § Eine Möglichkeit besteht in der Berechnung der Risikofaktoren. Oft konzentriert man sich auch auf die Eintrittswahrscheinlichkeit oder das Schadensausmaß. § Oft ist es aber auch sehr schwierig, Eintrittswahrscheinlichkeiten genau genug zu schätzen. Man benutzt dann einfachere Skalen (z.B. A, B, C). § Eine vollständige Risiko-Analyse würde Prototypen, Leistungs- messungen und Simulationen erfordern, die aber teuer und zeitaufwändig sind. Unter Verwendung von: Balzert, H.: Lehrbuch der Softwaretechnik, S. 181, Spektrum Akademischer Verlag, Heidelberg Berlin, 1998 17.03.2011 Prof. Dr. Andreas Schmietendorf 15
Risiko-Managementplanung § Berücksichtigung aller erkannten Hauptrisiken § Je Risikoelement ist ein Risikomanagement-Plan zu entwickeln § Strategien zum Umgang mit Risiken - Vermeidungsstrategie - RiskVermeidung - Minimierungsstrategie - RiskMinimierung - Notfallpläne – RiskNotfall § Beispiele: - RiskVermeidung Austausch fehlerhafter Service bzw. Produkte - RiskMinimierung Reduktion der Personalabhängigkeit - RiskNotfall Umgang mit „wegbrechenden“ Auftraggeber Unter Verwendung von: Sommerville, I.: Software Engineering, S. 140, Pearson Studium – Addison-Wesley, München, 2007 17.03.2011 Prof. Dr. Andreas Schmietendorf 16
Risiko-Überwindung Ausführung der festgelegten Aktivitäten wie z.B.: § Prototypen implementieren § Ausbildung der eingesetzten Mitarbeiter verbessern § Analysen der resultierenden Systemperformance § Qualitätssicherung eingekaufter Komponenten § Austausch fehlerhafter Werkzeuge § Punktueller Einsatz „eingekaufter“ Spezialisten § Umfang der Anforderungen reduzieren Unter Verwendung von: Balzert, H.: Lehrbuch der Softwaretechnik, S. 177, Spektrum Akademischer Verlag, Heidelberg Berlin, 1998 17.03.2011 Prof. Dr. Andreas Schmietendorf 17
Risikoüberwachung § Etablierung eines fortlaufenden Prozesses § Fortschritte bei der Risiko-Minimierung werden überwacht à Bei Abweichungen werden korrigierende Aktionen vorgenommen! § Bewährt ist die Verfolgung der Top ten-Risiken: - Risiken in eine Rangfolge bringen - Regelmäßige Überprüfungstermine für das höhere Management - Jede Sitzung beginnt mit Fortschrittsbericht: • Rangordnung jedes Risikoelements • Rang bei der letzten Sitzung • Wie oft stand das Risikoelement bereits auf Top ten-Liste • Entwicklung des Elements seit der letzten Sitzung § Konzentration der Sitzung auf Beseitigung der Risikoelemnte Unter Verwendung von: Balzert, H.: Lehrbuch der Softwaretechnik, S. 177, Spektrum Akademischer Verlag, Heidelberg Berlin, 1998 17.03.2011 Prof. Dr. Andreas Schmietendorf 18
Übung 3-2 § Welche Top ten-Risiken (vgl. Folien 8 und 9) einer SW-Entwicklung können Sie durch die Entwicklung eines Prototypen ausschließen? Begründen Sie Ihre Entscheidung! § Während der Entstehung eines Lehrbuches soll ein Student ein Fallbeispiel des Buches implementieren. Der Student erledigt diese Arbeit als Hausarbeit, also neben seiner Praxisphase. Zur Entwicklung der Software soll er eine neue Datenbank und eine neue Klassenbibliothek für die Oberfläche einsetzen. Das fertige Programm soll dem Buch auf einem Datenträger beigefügt werden. Führen Sie ein Risikomanagement anhand der vorgegebenen sechs Schritte durch. Quelle: Faustmann, G.: Vorlesung Software Engineering, FHW Berlin – Fachbereich II 17.03.2011 Prof. Dr. Andreas Schmietendorf 19
Werkzeuge zum Risikomanagements 17.03.2011 Prof. Dr. Andreas Schmietendorf 20
Excel-basierte Risikoerfassung Quelle: ACE-Werkzeug (Risk identification for Sales Opportunities and Projects), T-Systems 17.03.2011 Prof. Dr. Andreas Schmietendorf 21
Excel-basierte Risikodarstellung Detaillierung Quelle: ACE-Werkzeug (Risk identification for Sales Opportunities and Projects), T-Systems 17.03.2011 Prof. Dr. Andreas Schmietendorf 22
Übung 3-3 § Wählen Sie aus den Hauptprozessen des Risikomanagements nach PMBOK je einen Prozess aus und analysieren Sie diesen. § Ordnen Sie die jeweils ausgewählte Themenstellung in das Risiko- Management ein und erstellen Sie eine kurze Übersicht zu den wesentlichen Inhalten dieser Prozesse sowie zu den vorgeschlagenen Tools und Techniken. § Bewerten Sie die jeweils vorgeschlagenen Tools/Techniken, gehen Sie auf ggf. eigene Erfahrungen (Werkzeuge) aus den Praktika ein. 17.03.2011 Prof. Dr. Andreas Schmietendorf 23
Hinweis zum PMBOK 17.03.2011 Prof. Dr. Andreas Schmietendorf 24
Sie können auch lesen