======Lastenheft und Pflichtenheft ====== Der Auftraggeber beschreibt im Lastenheft die Forderungen – //was// entwickelt werden soll. Das [[wpde>Pflichtenheft]] beschreibt, wie der Programmierer die Anforderungen des Auftraggebers lösen will -- //wie// und //womit//. In [[http://openbook.rheinwerk-verlag.de/it_handbuch/11_001.html#dodtp3db5d809-6a56-4229-a02f-1e3c3a627dda|Kap. 11.1.2. Planung und Analyse des IT-Handbuches]] werden Aufbau und Inhalt konkreter beschrieben. Es gibt verschiedene Möglichkeiten, ein Pflichtenheft zu gliedern. [[https://web.archive.org/web/20140303064144/http://www2.hs-augsburg.de:80/informatik/vorlesungen/se1t/script/definition/pfheft.html|Hier]] werden ein paar Möglichkeiten vorgestellt. Im nächsten Abschnitt wird die Variante von Helmut Balzert genauer betrachtet. ===== Gliederung des Pflichtenheftes (nach Helmut Balzert) ===== Hier am Beispiel von [[Vier Gewinnt]]: - Zielbestimmung - Musskriterien: für das System unabdingbare Leistungen, die in jedem Fall erfüllt werden müssen (s. Lastenheft, Auflistung) \\ //Es wird ein Vier-Gewinnt Spiel entwickelt, das den üblichen Spielregeln folgt. Der Einwurf der Spielsteine erfolgt mit der Maus oder über die Tastatur. Die Ausgabe erfolgt in einem Fenster oder in einer Textkonsole.// - Wunschkriterien: die Erfüllung dieser Kriterien wird angestrebt (die „Kür“) \\ //Eine grafische Animation beim Einwurf der Steine mit einem Sound, eine Highscoreliste und die Möglichkeit des Abspeicherns des aktuellen Spielstandes und des Ladens eines zuvor gespeicherten Spieles sind mögliche, jedoch nicht zwingende Erweiterungen des Spieles. Eine künstliche Intelligenz (KI) für einen Computerspieler ist ebenso denkbar aber nicht obligatorisch.// - Abgrenzungskriterien: diese Kriterien sollen bewusst nicht erreicht werden. - Systemeinsatz - Anwendungsbereiche: Wofür kann das System genutzt werden? - Zielgruppen: Wer setzt das System ein? - Betriebsbedingungen: z.B. physikalische Umgebung des Systems, tägliche Betriebszeit, ständige Beobachtung des Systems durch Bediener oder unbeaufsichtigter Betrieb - Systemübersicht: kurze Übersicht über das System - Systemfunktionen: detaillierte Beschreibung der einzelnen Systemfunktionen und wie diese umgesetzt werden. - Systemdaten: langfristig zu speichernde Daten aus Benutzersicht - Systemleistungen: Anforderungen bezüglich Zeit und Genauigkeit - Qualitätsanforderungen - Benutzungsoberfläche: grundlegende Anforderungen, Zugriffsrechte - Nichtfunktionale Anforderungen: einzuhaltende Gesetze und Normen, Sicherheitsanforderungen, Plattformabhängigkeiten, Lizenzfragen, zeitliche Vereinbarungen - Technische Systemumgebung: Software, Hardware, Orgware, Schnittstellen - Spezielle Anforderungen an die Entwicklungsumgebung - Gliederung in Teilprodukte - Ergänzungen - Glossar mit Fachausdrücken für Laien