05.08.2013 Aufrufe

Einführung in Software Engineering

Einführung in Software Engineering

Einführung in Software Engineering

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

c) Projektpläne und Projektorganisation<br />

• Am Ende der Machbarkeitsstudie steht die Erstellung e<strong>in</strong>es Projektplans mit:<br />

(1) Identifizierung e<strong>in</strong>zelner Arbeitspakete<br />

(2) Term<strong>in</strong>planung<br />

(3) Ressourcenplanung<br />

• Machbarkeitsstudie ohne grobes <strong>Software</strong>design nicht möglich da:<br />

(1) Arbeitspakete ergeben sich aus <strong>Software</strong>struktur<br />

(2) Abhängigkeiten und Umfang der Pakete ebenso<br />

(3) Realisierungsart der Pakete bestimmt über Ressourcen<br />

• Konsequenz: Projektplanung und ‐organisation ist fortlaufender Prozess. Zu<br />

Projektbeg<strong>in</strong>n ist dies nur grober Plan.<br />

• Abschließende Checkliste<br />

(1) Machbarkeitsstudie soll nur wenige Tage dauern<br />

(2) ggf. Vorprojekt zur Risikoabschätzung<br />

(3) folgende Punkte s<strong>in</strong>d zu klären:<br />

(a) Angaben im Lastenheft mit Kunden abgestimmt?<br />

(b) mit geplanten Ressourcen technisch realisierbar?<br />

(c) vertrauenswürdige Kostenschätzung?<br />

(d) Produktentwicklung wirtschaftlich <strong>in</strong>teressant?<br />

(e) realistischer Zeitplan?<br />

(f) Phasenverantwortliche?<br />

(g) Risikoabschätzung durchgeführt?<br />

d) Hilfsmittel bei Anforderungsanalyse – Modelle/Diagramme<br />

• E<strong>in</strong>gesetzte klassische Modellierungssprachen<br />

(1) funktionale Aspekte – Verhalten<br />

(a) Datenflussdiagramme<br />

(b) Funktionsbäume<br />

(2) Datenstrukturen<br />

(a) Data Dictionary = Typdef<strong>in</strong>itionen<br />

(b) Entity‐Relationship‐Diagramme (Klassendiagramm ohne Operationen)<br />

(3) Kontrollstrukturen<br />

(a) Struktogramme (Nassi‐Shneiderman‐Diagramme)<br />

(b) Pseudocode<br />

(4) zustandsbehaftete nebenläufige Systeme<br />

(a) Zustandsübergangsdiagramme (endliche Automaten)<br />

(b) Petr<strong>in</strong>etze<br />

• Kritik an aufgezählten Modellen<br />

(1) starke Trennung zwischen Daten‐ und Verhaltensaspekten<br />

(a) folgend Konsistenshaltungsprobleme<br />

(2) verschiedene Konzepte und Sprachen <strong>in</strong> e<strong>in</strong>zelnen Entwicklungssprachen<br />

(a) Konsistenz?<br />

(b) gewünschte Trennung zwischen Analyse und Entwurf wird erzwungen<br />

• Voraussetzung für erfolgreiche <strong>Software</strong>modellierung<br />

(1) Sprachen mit wohldef<strong>in</strong>ierter Syntax und Semantik<br />

(2) präzise sprachübergreifende Konsistenz‐ und Abbildungsregeln<br />

e) Objektorientierte Modellierungssprachen<br />

• Vielzahl von OO‐Modellierungsdialekten wird durch Standard‐Sprache ersetzt um so<br />

(Idee von Booch)<br />

(1) Vorteile verschiedener Modellierungsansätze zu vere<strong>in</strong>en<br />

(2) potentiellen Anwendern die Qual der Wahl abzunehmen<br />

(3) Voraussetzungen für Datenaustausch zwischen OO‐Werkzeugen zu schaffen<br />

(4) enge Integration von OO‐Werkzeugen

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!