Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Software Engineering SS 2009

Ähnliche Präsentationen


Präsentation zum Thema: "Software Engineering SS 2009"—  Präsentation transkript:

1 Software Engineering SS 2009
Die Planungsphase Ziele Überblick Aktivitäten Lastenheft Normenrecherche Projektkalkulation Methoden zur Aufwandsschätzung Function Point-Methode Projektplanung Software Engineering SS 2009

2 Ziele der Planungsphase
Grobe Definition der Software inkl. Hauptanforderungen und -funktionen (Lastenheft) Normenrecherche (Checkliste: „Betroffene Normen“) Machbarkeit (Machbarkeitsstudie) Ressourcenmanagement (Ressourcenplan) Risikomanagement (Risikoplan) Kostenermittlung (Kostenplan, Geschäftsplan) Zeit- und Kapazitätsmanagement (Kapazitätsplan) Projektmanagement (Projektplan) Software Engineering SS 2009

3 Software Engineering SS 2009
Die Planungsphase Übersicht ExterneVorgaben / Gesetze Input Beteiligte (Rollen) Aktivität Vorgaben des Auftraggebers Auftraggeber Planung Projektleiter Output (Ergebnisse) Anwendungs- spezialist Lastenheft Gesetzgeber Glossar Projekt- kalkulation . . . Software Engineering SS 2009

4 Rollen und Verantwortlichkeiten
Auftraggeber: Vorgabe der Anforderungen Abnahme der erstellten Dokumente Entscheidung über Projekt / endgültige Auftragserteilung Projektleiter: Verantwortlich für Lastenheft Projektkalkulation Projektplanung Anwendungsspezialist Erstellung Lastenheft Erstellung Glossar Mitwirkung bei Projektkalkulation und -planung Software Engineering SS 2009

5 Software Engineering SS 2009
Produkt auswählen Auswahl aus verschiedenen Projektideen Klärung der prinzipiellen Aufgabenstellung Auswahl der grundlegenden Lösungsvarianten, z. B. Erweiterung bestehender Altsysteme Nutzung und Erweiterung von Standardsoftware Individualentwicklung Entwicklung eines Softwareproduktes Software Engineering SS 2009

6 Die Machbarkeitsprüfung
Prüfung der fachlichen Durchführbarkeit Softwaretechnische Realisierbarkeit Verfügbarkeit geeigneter Ressourcen (Hardware, Software) Prüfung alternativer Lösungsvorschläge Z. B. Kauf von Standardsoftware, externe Vergabe Prüfung der Ressourcen (Ressourcenmanagement) Verfügbarkeit der entsprechend qualifizierten Mitarbeiter Verfügbarkeit von Infrastruktur, Zeit, Geld, Zusatz-Hard-, Software Software Engineering SS 2009

7 Die Machbarkeitsprüfung
Prüfen der Risiken Aufwands- und Terminschätzung Wirtschaftlichkeitsbetrachtung Interne Projekte: z. B. Gegenüberstellung von Einsparungen und Projektkosten/laufenden Kosten Erstellung von Produkten: Gegenüberstellung von voraussichtlichen Einnahmen und Kosten Software Engineering SS 2009

8 Software Engineering SS 2009
Das Lastenheft Auch als Grobes Pflichtenheft bezeichnet Enthält eine Zusammenfassung aller fachlichen Basisanforderungen, die die zu entwickelnde Software aus Auftraggeber-Sicht erfüllen muss Adressaten: Auftraggeber (extern oder intern) Auftragnehmer: Projektleiter, Anwendungsspezialist Umfang: wenige Seiten (keine Details!) Dokumentform: z.B. formlose Sammlung von Produktanforderungen Software Engineering SS 2009

9 Gliederungsvorschlag für Lastenheft
Zielbestimmung: Bestimmung der Ziele, die mit dem Einsatz des Produktes erreicht werden sollen Produkteinsatz Anwendungsbereiche und Zielgruppen Produktfunktionen Hauptfunktionen aus Auftraggebersicht (grobe Beschreibung) Typische Arbeitsabläufe keine Details Hier können bereits Use Case Diagramme genutzt werden Software Engineering SS 2009

10 Gliederungsvorschlag für Lastenheft
Produktdaten Langfristig zu sichernde Hauptdaten, voraussichtlicher Umfang Produktleistungen Z. B. hinsichtlich Zeit und Genauigkeit Qualitätsanforderungen Erforderliche Qualitätsstufen für die wichtigsten Qualitätskriterien Akzeptanzkriterien für Qualitätsmerkmale Ergänzungen: zusätzliche Anforderungen, Einschränkungen, Rahmenbedingungen, mitgeltende Unterlagen, bestehende Produkte Software Engineering SS 2009

11 Glossar (Begriffslexikon)
Definiert alle wichtigen Fachbegriffe, die zur Beschreibung des Produktes benötigt werden Dient der Nutzung einer einheitlichen Terminologie und der Schaffung eines einheitlichen Verständnisses im gesamten Projektteam Wird während des Projektes laufend erweitert Beispiele: Definition der Akteure Fachbegriffe der Branche und des Anwendungsbereichs Bezeichnung für Module und Teilsysteme ... Wird später auch für die Dokumentation und Online-Hilfe benutzt und weiter gepflegt Software Engineering SS 2009

12 Normen und Normenrecherche
Alle Normen mit „EN“ im Namen sind sog. harmonisierte Normen (gelten EU-weit). Diese Normen sind verpflichtend! Für die Einhaltung ist der Hersteller verantwortlich Beispiel: DIN EN : „Allgemeine Festlegung für die Sicherheit medizinisch elektrischer Geräte DIN EN : Anforderungen an med. Systeme (Kombination von Geräten) DIN EN : Anforderungen für „PEMS“ (programmierbare, elektrische, medizinische Systeme) Recherche bei (Monopol) zutreffende Normen recherchieren (Updates!) Norminhalte prüfen  Checkliste „Betroffene Normen“ Software Engineering SS 2009

13 Software Engineering SS 2009
Projekt kalkulieren Abschätzung des erforderlichen Aufwandes Dauer Mitarbeiter externer Zukauf an Dienstleistungen Hilfsmittel (Computer, gekaufte Software, sonst. Hardware) Ressourcen Kosten Prinzipiell ist für die Aufwandschätzung sehr viel Erfahrung notwendig Wichtig: Genug Aufwand für Nebentätigkeiten einrechnen, wie Projektmanagement, Versionsverwaltung, Qualitätssicherung Software Engineering SS 2009

14 Software Engineering SS 2009
Entwicklungskosten Wichtigste Kostenarten: Personalkosten (bei Weitem der größte Posten) Lizenzkosten für zugekaufte Softwarekomponenten Anteilige Kosten für Entwicklungsumgebung (Hardware, Softwaretools) Auslagerung / Zukauf von Entwicklungsleistungen externe Prüfungen Recherchekosten (Normenrecherche, Urheberrechte, Patente...) Sonstiges (Büromaterial, Reisekosten, etc.) Software Engineering SS 2009

15 Verfahren zur Aufwandsschätzung
Analogiemethode Vergleich mit anderen Projekten Multiplikatormethode Zerlegen des Projekts in Einzel-Bausteine, Abschätzung des Aufwandes für Einzelbausteine Gewichtungsmethode Identifizieren von Aufwandstreibern (Funktionsmerkmale) Berechnung des Aufwandes mittels Formel (z. B. Function Point) Prozentsatzmethode Detaillierte Schätzung einer (Teil-)Phase (bzw. Daten einer bereits abgelaufenen Phase) Hochrechnen auf Gesamtaufwand Software Engineering SS 2009

16 Einflussfaktoren für Aufwandsschätzung
Das magische Quadrat Qualität Quantität Konstante Fläche des Vierecks: Produktivität des Teams + + Das magische Quadrat Beispiel: Reduzierung der Entwicklungszeit und Erhöhung der Qualität ist möglich, Wenn die Quantität reduziert und die Kosten erhöht werden. - - Entwicklungsdauer Kosten Software Engineering SS 2009

17 Bestimmung der Einflussfaktoren
Quantität Anzahl Programmzeilen (Lines of Code, LOC) Problematisch, da nur Implementierung berücksichtigt, Definition einer Zeile schwierig, Abhängig von Programmiersprache Funktions- und Datenumfang Wird schon frühzeitig festgelegt Unabhängig von einer Programmiersprache Zusätzlich Berücksichtigung von Komplexitätsmaßen Qualität Höhere Qualitätsanforderungen erhöhen den Aufwand Bewertung von Qualitätsmerkmalen mit Kennzahlen Software Engineering SS 2009

18 Bestimmung der Einflussfaktoren
Entwicklungsdauer Bei kürzerer Entwicklungsdauer steigt die Zahl der benötigten Mitarbeiter. Durch erhöhten Kommunikationsaufwand sinkt deren Produktivität. Damit steigt der Aufwand. Kosten Ändern sich die anderen Faktoren beim magischen Quadrat, hat dies unmittelbar Auswirkungen auf die Kosten Umgekehrt kann durch den Einsatz finanzieller Mittel die Situation der anderen Merkmale verbessert / verschlechtert werden. Software Engineering SS 2009

19 Optimale Entwicklungsdauer
Faustregel: s Optimale Entwicklungsdauer = 2,5 * (Aufwand in MM) [Monate] mit: s = 0,38 für Stapel-Systeme s = 0,35 für Dialog-Systeme s = 0,32 für Echtzeit-Systeme (MM: Mitarbeitermonate) Beispiel: Dialogsystem, Aufwand geschätzt 9 Monate Dauer = 2,5 * 9 0,35 = 5,3 Monate Größe des Entwicklungsteams: 9 MM / 5,3 Monate = 1,7 Mitarbeiter (also ca. 2) Software Engineering SS 2009

20 Beispiel: Function Point-Methode
Einflussfaktoren (z. B. Komplexität, GUI-Anforderungen, Erfahrung) nach einem Schema mit Punkten bewerten (z. B. 0-5) Summe der bewerteten Einflussfaktoren bilden Bewertungsfaktor berechnen (obige Summe / ,7) Kategorisierung jeder Anforderung, z. B. Eingabedaten, Ausgabe- daten, Abfragen Klassifizierung jeder Anforderung: einfach, mittel, komplex Gewichtungsfaktor für jede Anforderung (aus Tabelle) Gewichtete Summe bilden Multiplizieren (ergibt bewertete Function Points) Zur Punktzahl gehörender Aufwand aus Tabelle ablesen Software Engineering SS 2009

21 Beispiel: Function Point-Methode
Wird in verschiedenen Projektphasen wiederholt Anforderungen und Einflussfaktoren besser bekannt Abschätzung wird genauer Tatsächlich gemessene Aufwände dienen dazu, die verwendeten Tabellen zu verbessern Software Engineering SS 2009

22 Software Engineering SS 2009
Projekt planen Zeitplan Bestimmung und Terminierung der Einzelaktivitäten incl. Ergebnissen, Verantwortlichkeiten, Ressourcen Festlegung von Meilensteinen Qualitätsplan Qualitätsmaßnahmen und –standards im Projekt Validierungsplan Methoden, Ressourcen und Zeitplan zur Systemvalidierung Konfigurationsmanagementplan Konfigurationsmanagementprozeduren und -strukturen Wartungsplan Wartungsanforderungen und Aktivitäten Software Engineering SS 2009

23 Software Engineering SS 2009
Projekt planen Personalentwicklungsplan Weiterbildung der Projektmitarbeiter Kostenplan Ermittlung aller anfallender Kosten Eingabe: Daten aus anderen Plänen Marktgegebenheiten betriebswirtschaftliche Größen, z. B. kalkulatorische Zinsen, Mittel für die Geldbeschaffung, ... Software Engineering SS 2009

24 Bemerkungen zur Planungsphase
Es gibt keine einheitliche Vorgehensweise und Terminologie für die Planungsphase Konkrete Durchführung der Planung hängt sehr stark von firmenindividuellen Rahmenbedingungen ab Konkrete Durchführung der Planung hängt vom konkreten Projekt ab Die Vorgehensweise bei der Planungsdurchführung sollte nach im Vorfeld festgelegten Verfahren ablaufen und dokumentiert werden (Verfahrensanweisung). Bei firmeninternen Projekten ist das Ergebnis der Planungsphase i. d. R. ein interner Projektantrag, über den dann entschieden wird. Auch bei firmeninternen Projekten kann auf die Planungsphase inklusiver der zugehörigen Dokumentation nicht verzichtet werden. Software Engineering SS 2009

25 Bemerkungen zur Planungsphase
Dokumentation der Ergebnisse der Planungsphase ist unverzichtbar Abstimmung der Dokumente mit den beteiligten Akteuren ist Voraussetzung für eine Reibungsfreie Durchführung Definierte Marken für „Reviews“ in der Planungsdurchführung erleichtern die Dokumentationsdisziplin Häufig stellen die Ergebnisse der Planungsphase die Grundlagen für ein Angebot einer Softwarefirma dar. In diesem Fall wird der Auftrag erst im Anschluss an die Planungsphase erteilt. Software Engineering SS 2009

26 Software Engineering SS 2009
Zusammenfassung Ziele der Planungsphase sind die grobe Definition der Software, die Ermittlung von Dauern und Aufwänden, die Klärung der Machbarkeit und die Entscheidung über das weitere Vorgehen Sie umfasst die Produktauswahl, das Erstellen des Lastenhefts, die Prüfung der Machbarkeit, die Kalkulation und die Planung des Projektes Das Lastenheft fasst die fachlichen Anforderungen aus Auftraggebersicht grob zusammen Die erforderlichen Aufwände können z. B. mit Hilfe der Analogiemethode, der Multiplikatormethode, der Gewichtungsmethode oder der Prozentsatzmethode ermittelt werden Software Engineering SS 2009

27 Software Engineering SS 2009
Zusammenfassung Bei der Function Point Methode werden die einzelnen Anforderungen sowie zusätzliche Einflussfaktoren bewertet und auf Grundlage empirischer Daten in Aufwände umgerechnet Planungsergebnisse müssen dokumentiert werden Die Vorgehensweise der Planungsphase sollte im Unternehmen dokumentiert sein Die Vorgehensweise sollte „Review“ enthalten Software Engineering SS 2009


Herunterladen ppt "Software Engineering SS 2009"

Ähnliche Präsentationen


Google-Anzeigen