02 - OOAD mit der UML Flashcards
3 (Mögliche) Schritte zur Guten Software
1) Den Kunden befragen
2) OO-Prinzipien Anwenden
3) Wiederverwendbarkeit und Wartbarkeit im Auge behalten
Was ist bei Schritt 1: “Den Kunden Befragen” zu beachten?
1) Keine technischen Fragen stellen - das ist unserer Job
2) Sich Zeit lassen und möglich nichts überspringen
3) Sich auf die Kundenanforderungen Fokussieren und wie es aussehen sollte
Zweck: OOAD
1) Modelle dienen dazu den Kunden zufriedenzustellen: und zwar dass das Programm tut,was es soll. Desweiteren sollte das Programm mit vertretbarem Aufwand verändert werden. Zu guter letzt profitiert der Entwickler auch, wenn Teile des Programms für den nächsten Kunden wiederverwendet werden können.
Definition: UML
Ein grafisches Modell um den technischen Aufbau eines Systems besser zu verstehen und darüber diskutieren zu können. Die UML ist ein Modellierungsstandard in der Softwareindustrie um dies zu ermöglichen.
Vorteile der UML (5)
1) <b>Eindeutigkeit</b>: Wer zeichnet, muss sich festlegen und ist gezwungen, sich über die Alternativen Gedanken zu machen.
2) <b>Verständlichkeit</b>: Wie in allen Lebensbereichen erleichtern graphische Modelle das Verständnis komplexer Zusammenhänge.
3) <b>Ausdrucksstärke</b>: Die vielen verschiedenen UML-Diagramme betonen verschiedene Aspekte. Sie erlauben es, sich auf einen Teilaspekt zu konzentrieren, ergeben zusammen aber auch einen umfassenden Blick auf ein System.
4) <b>Standardisierung</b>: Weltweit anerkannt und verbreitet. Da fast jeder, der sich mit dem Thema objektorientierter Softwareentwicklung auskennt, auch die UML kennt, vereinfacht sie die Kommunikation in den Projekten.
5) <b>Plattformunabhängigkeit</b>: UMLs werden so gestaltet, das man sich beim Fertigen modell nicht auf eine Plattform festlegt. Dies macht das ganze Modell flexibler und verständlicher.
Kriterien für die Auswahl der UML Diagramme
1) Zweck
2) Zielgruppe
3) Im welchem Verhältnis stehen Kosten und Nutzen eines Modells?
Was bilden UML modelle ab?
Sie können sowohl ein Geschäftssystem als auch ein IT-System beschreiben. Vor Beginn der Modellierung steht immer die Frage: Was genau ist das zu modellierende System und welchen Zweck soll es erfüllen?
Definition: Screen-Prototypes
Eine weitere Methode von der Analyse und Design Phase eines Softwareprojekts. Sie konzentriert sich auf dass was der Endbenutzer sieht. So können sich die Endbenutzer leichter ein Bild vom zu entwickelndem System machen und klären somit weitere Mißverständisse bei der Anforderungsanalyse auf.
Schritte der Objektorientierten Analyse (6)
1) Anforderungen des Kunden verstanden haben
2) Mit dem Kunden sprechen
3) Mit anderen Beteiligten sprechen
4) Fragen stellen
5) Im Team diskutieren
6) Die Aufgabe aus unterschiedlichen Blickwinkeln betrachten
Definition: Use-Cases
Eine Semi-Strukturierte Methode: in der Form von Dokumenten, die einer gegebenen Struktur folgen, die beschreiben wie Akteure mit dem zu entwerfenden System in einem bestimmten Fall interagiert.
Was kennzeichnet ein Use-Case (4)
1) Bringt dem Anwender einen bestimmten Nutzen
2) Ein definiertes Anfang und Ende
3) Ein Akteur außerhalb des Systems initiiert es
4) Muss alle Pfade vom Ausgangspunkt bis zum Ziel enthalten.
Aufbau von Use-Case-Dokumenten (11)
1) Name und ID
2) Status
3) Version
4) Description
5) Actors
6) Basic Flow
7) Alternate Flows
8) Trigger
9) Preconditions
10) Postconditions
11) Related Use-Cases
Definition: Use-Case-Diagramme
Use-Case-Diagramme helfen bei der Analyse auf sehr hoher Ebene Features und Use-Cases für ein System zu identifizieren. Ein Use-Case-Diagramm beschriebt die Interaktion zwischen einem Akteur und einem System. Normalerweise werden sie vor den Use-Case-Dokumenten skizziert.
Eigenschaften eines Use-Case-Diagramms (3)
1) Sie abstrahieren von Details
2) Geben nur Auskunft über was das System tut, nicht wie
3) Keine Reihenfolger der Use-Cases wird definiert
Zweck von Use-Case-Diagrammen
Use-Case-Diagramme beschreiben die Kernfunktionalitäten eines Systems, indem ein großes Rechteck das System ist und Akteure außerhalb dieses Rechtecks mit Einzelteilen des Systems interagieren.
Elemente eines Use-Case-Diagramms (5)
1) Akteure
2) Use-Cases
3) System
4) Assoziation
5) Beziehungen zwischen Anwendungsfällen <> und <>
6) Generalisierung