Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Dynamisches Modell erstellen

Поиск

· Quelle: Szenarien, Anwendungsfälle

· Ergebnis: Sequenz- und Aktivitätsdiagramm

· Zweck:

o Operationen der Klassen identifizieren

o Fluss der Botschaften definieren

o Vollständigkeit und Korrektheit des Systems prüfen

o Grundlage für Systemtests schaffen

· Aus jedem Geschäftsprozess mehrere Sequenzdiagramme ermitteln

Objektlebenszyklus bestimmen

· Ergebnis: Zustandsdiagramm

· Besitzt ein Objekt einen nicht-trivialen Lebenszyklus?(1-2% aller Klassen, Steuerungsobjekte erhalten komplexe Zustandsdiagramme)

· Trivial heißt, wenn nur einer Zustand zwischen Init und Destruktion

Automat soll vollständig und minimal sein, alle Operationen in Zuständen definiert

Operationen festlegen

· Operationen aus Sequenzdiagrammen und Objektlebenszyklen übernehmen

· Operationen so hoch wie möglich in der Vererbungshierarchie eintragen

· Beschreibung erstellen

Analytische Schritte

· Besitzt die Operation geeigneten Namen?

· Angemessener Umfang

· Realisiert nur eine Funktion?

Modellierung im Großen:

· Zusammenfassung von ähnlichen Klassen zu einem Subsystem oder Paket.

· Innerhalb des Subsystems starke Kohäsion

· Zwischen Subsystemen schwache Kopplung

Starke Kohäsion:

· Nicht nur die Menge von Klassen, sondern die Subsysteme eine Betrachtung des Systems auf einer höheren Abstraktionsebene ermöglichen

· Aussagekräftiger Name

· Wohldefinierte Schnittstelle

Schwache Kopplung:

· Vererbungen nur vertikal, d.h. in demselben Subsystem

· Aggregat und Komponenten in einem Subsystem

· Die Schnittstelle zwischen Subsystemen soll möglichst wenig Assoziationen erhalten

Subsystem ca. 10-15 Klassen, eine A4 Seite.

Linguistische Analyse

Software soll im innen mit denselben Begriffen arbeiten, wie ihr Benutzer draußen.

· Es stehen ihm dieselben Funktionen zur Verfügung wie in der Realität

· Funktionen tun dasselbe in Programm wie in der Realität

· Funktionen finden sich im Programm da, wo sie in der Realität sich finden

· WYSIWG Textverarbeitung(Word)

· Grundidee der objektorientierten Programmierung

Vorgehensweise der OO-Analyse:

· Betrachte die Realität

· Modelliere den Ausschnitt, der unterstützt werden soll

· Erstellen ein Programm, Code

· Führe das Programm aus

=>Die Software arbeitet mit denselben Dingen wie ihr Benutzer draußen.

Kompetenzprobleme:

· Suche ein Softwareingenieur, der beides gelernt hat

· Frage die Domänenexperten

Abbots Methode (naive) meistens nicht anwendbar

Syntax basierte Ansätze können nur mit Eingabetexten umgehen, die bereits verbalisierte Entwürfe sind.

Syntax hat keine Bedeutung, Semantik und Thematik hat!

· Nomen, Verben, Nominalphrasen, Verbphrasen, Teilsätze und Sätze spielen Thematische Rollen, wenn sie einen Semantischen Beitrag leisten

· Pronomen, Artikel, Präpositionen, Adverbien werden weggelassen

Rollen

· Agens (AG) – der Handelnde – Klasse

· Patiens (PAT) – der Behandelte ­­– Klasse, Methodenparameter bei ACT

· Actus (ACT) – die Handlung von Agens – Methode beim AG

· Instrumentum (INSTR) – Hilfsmittel ­– Klasse, Methodenparameter bei ACT

· Status (STAT) – der Zustandsverben und Nominalisierungen – Beziehung zwischen Klassen

· Locus (LOC) – Ort, Positionsangaben – Klasse

· Omnium (OMN) – das Ganze – Klasse

· Pars(PARS) – ein Teil – Klasse

· Omnium + Pars – gemeinsames Auftreten – Komposition

· Donor (DON) – gibt – Klasse

· Recipiens (RECP) – empfängt – Klasse – 3stellige Assoziation, oder 3 Methoden

· Habitum (HAB) – etwas, was gegeben wird – Klasse

· Creator+(CREA+) – Erzeuger – Klasse

· Creator-(CREA-) – Zerstörer – Klasse

· Opus (OPUS) – das erzeugte zerstörte Werk – Klasse – Rückgabetyp

 

 

Entwurf / Design

· Ausgangspunkt: Anforderungen der Definitionsphase

· Aufgabe: Eine Softwarearchitektur entwickeln, die alle Anforderungen erfüllt

· Entwerfen wird auch Programmieren im Großen genannt

· Beantwortet die Frage „Wie strukturieren wir das?“

· Ausgabe – Softwarearchitektur

DEF Softwarearchitektur:

· Gliederung eines Softwaresystems in Komponenten(Module oder Klassen) und Subsysteme (Pakete, Bibliotheken). Dabei entsteht eine Bestandshierarchie

· Spezifikation der Komponenten und Subsysteme

· Benutzt Relation zwischen Komponenten und Subsystemen

· Optional: Feinentwurf(Angabe der Algorithmen, Datenstrukturen, Pseudocode)

· Optional: Zuweisung von SW-Komponenten zu HW-Einheiten



Поделиться:


Последнее изменение этой страницы: 2017-01-19; просмотров: 132; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.170.38 (0.005 с.)