24.11.2013 Aufrufe

System-Modellierung statisches & dynamisches Modell

System-Modellierung statisches & dynamisches Modell

System-Modellierung statisches & dynamisches Modell

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.

<strong>System</strong> Model<br />

<strong>System</strong>-<strong><strong>Modell</strong>ierung</strong><br />

erarbeiten der:<br />

• der <strong>System</strong>-UseCases<br />

• des konzeptionellen<br />

Analysemodells<br />

• des Architekturmodells<br />

• des Designmodells<br />

Setzt auf dem<br />

BusinessModel auf<br />

Martin Jud NDS-I SWE II / WBK 312 1<br />

<strong>System</strong> Model<br />

<strong>statisches</strong> & <strong>dynamisches</strong> <strong>Modell</strong><br />

• Die Beziehungen zwischen<br />

Klassen (Assoziation,<br />

Aggregation und Vererbung)<br />

bilden das statische <strong>Modell</strong>.<br />

• Die zeitlichen Abläufe und die<br />

Interaktion der Nutzer mit dem<br />

<strong>System</strong> bzw. der Objekte unter<br />

sich (Use Cases, Objektszenarien,<br />

Ablaufszenarien)<br />

bilden das dynamische <strong>Modell</strong>.<br />

Martin Jud NDS-I SWE II / WBK 312 2


<strong>System</strong> UseCases<br />

UseCases (<strong>System</strong> Model)<br />

– <strong>System</strong>anwendungsfälle sind die Leistungen die ein<br />

IT-<strong>System</strong> AnwenderInnen und Drittsystemen bietet.<br />

Definition UseCase<br />

Ein Anwendungsfall beschreibt eine Menge von Abläufen<br />

(inkl. Varianten) die ein <strong>System</strong> ausführen kann und die<br />

einen erkennbaren Nutzen für den jeweiligen Akteur<br />

bringen.<br />

Martin Jud NDS-I SWE II / WBK 312 3<br />

UseCases (<strong>System</strong> Model)<br />

Beziehungen zwischen UseCases<br />

<br />

Teile die in mehreren UseCases vorkommen, können in einen<br />

eigenen UseCase ausgelagert und mit wieder<br />

eingebunden werden.<br />

<br />

erlaubt einen UseCase an einem festgelegten ExtensionPoint mit<br />

einem andern UseCase zu erweitern wenn eine bestimmte Bedingung<br />

erfüllt ist.<br />

Generalisierung / Spezialisierung<br />

Mittels Vererbung lässt sich das UseCase <strong>Modell</strong> hierarchisch<br />

strukturieren, dabei werden Abläufe und Akteur-Beziehungen vererbt.<br />

Tipp: Make only little use of relations between use cases.<br />

Martin Jud NDS-I SWE II / WBK 312 4<br />

Adapted from SWEED, Martin Kropp


UseCases (<strong>System</strong> Model)<br />

<br />

Course Registration<br />

Customer<br />

<br />

Browse Course<br />

Catalog<br />

<br />

Register for<br />

Course<br />

Request for<br />

Information<br />

<br />

Enter<br />

Personal Data<br />

<br />

Billing<br />

Send<br />

Comment<br />

Martin Jud NDS-I SWE II / WBK 312 5<br />

© 2001 by SWEED, Martin Kropp<br />

UseCases (<strong>System</strong> Model)<br />

Vererbung und <br />

Base Use Case<br />

Specialized<br />

Use Case<br />

Spezialisierung / Generalisierung<br />

Extending<br />

Use Case<br />

<br />

Base<br />

Use Case<br />

extensionPoint1<br />

extensionPoint2<br />

Extension<br />

Martin Jud NDS-I SWE II / WBK 312 6<br />

© 2001 by SWEED, Martin Kropp


UseCases (<strong>System</strong> Model)<br />

Oesterreich: Sekundäre Anwendungsfälle<br />

Das primäre Anwendungsfallmodell wird in Entwurfsphase und in<br />

Konstruktionsphase um sekundäre Anwendungsfälle ergänzt.<br />

– Durch Umstrukturierung und Herausfaktorisierung von<br />

Gemeinsamkeiten sowie durch Generalisierung entstehen neue<br />

(sekundäre, d.h. abgeleitete) Anwendungsfälle. Diese werden mit<br />

Include-, Extend- und Vererbungsbeziehungen in das vorhandene<br />

<strong>Modell</strong> eingefügt.<br />

– Dabei vorrangig keine neuen Anforderungen aufgenommen,<br />

sondern die vorhandene Problem- und Anforderungsbeschreibung<br />

umstrukturiert.<br />

– Ziel ist es, die Problemdarstellung überschaubarer und<br />

redundanzfrei zu machen.<br />

Martin Jud NDS-I SWE II / WBK 312 7<br />

© 1999 by oose.de GmbH, Hamburg<br />

Analysemodell<br />

RUP Stereotypen für Analyse-<strong>Modell</strong>e<br />

Boundary-Klassen: Klassen für die Präsentation und<br />

Manipulation. Jeder Akteur eines UseCases benötigt ein<br />

eigenes Boundary-Objekt.<br />

z.B.: Window, Dialog-Box, Komm.-kanal<br />

Control-Klassen: Verbinden Boundary-Klassen mit Entity-<br />

Klassen. Behandeln das Verarbeiten der Entity Klassen. In<br />

einem ersten Schritt kann gesagt werden: Für jeden Use-Case<br />

eine Control-Klasse.<br />

Entity-Klassen: <strong>Modell</strong>ieren Information, die meist auch<br />

gespeichert werden muss. Business-Objekte.<br />

Martin Jud NDS-I SWE II / WBK 312 8<br />

Aus der Vorlesung SW-Architektur von Jörg Hofstetter HTA Luzern


Analysemodell<br />

Geldautomat: UseCaseDiagramm<br />

abheben<br />

Kunde<br />

einzahlen<br />

Kontentransfer<br />

Martin Jud NDS-I SWE II / WBK 312 9<br />

Analysemodell<br />

Entwurf der Analyse-Klassen – 1 Control<br />

Bargeld abheben<br />

Abhebung<br />

Bargeld einzahlen<br />

Einzahlung<br />

Kontentransfer<br />

Transfer<br />

Martin Jud NDS-I SWE II / WBK 312 10


Analysemodell<br />

Entwurf der Analyse-Klassen – 2 Entity<br />

Bargeld abheben<br />

Abhebung<br />

Bargeld einzahlen<br />

Einzahlung<br />

Konto<br />

Kontentransfer<br />

Transfer<br />

Martin Jud NDS-I SWE II / WBK 312 11<br />

Analysemodell<br />

Entwurf der Analyse-Klassen – 3 Boundary<br />

Bargeld abheben<br />

Geldausgabe<br />

Abhebung<br />

User<br />

Interface<br />

Bargeld einzahlen<br />

Geldannahme<br />

Einzahlung<br />

Konto<br />

Kontentransfer<br />

Transfer<br />

Martin Jud NDS-I SWE II / WBK 312 12


Analysemodell<br />

Geldautomat: Analysemodell<br />

Geldausgabe<br />

Abhebung<br />

1<br />

2<br />

Bank<br />

Kunde<br />

User Interface<br />

Transfer<br />

1<br />

Konto<br />

Geldannahme<br />

Einzahlung<br />

Konzeptionelles <strong>Modell</strong>.<br />

Domain-Begriffe und deren Beziehungen.<br />

Martin Jud NDS-I SWE II / WBK 312 13<br />

Übung<br />

UseCases (<strong>System</strong> Model)<br />

1. erarbeiten Sie die <strong>System</strong>-UseCases<br />

für die Bibliotheksverwaltung<br />

und verfeinern Sie diese mit den - /<br />

- und Vererbungs-Beziehungen<br />

– <strong>System</strong> UseCases<br />

siehe Folien 3 . . 7 und Buch Kap. 2.1.9, S. 35<br />

Beziehungen: Buch Kap. 2.1.4, S. 23<br />

2. erarbeiten Sie das konzeptionelle Analysemodell<br />

für die Bibliotheksverwaltung<br />

– siehe Folien 8 . . 13<br />

Martin Jud NDS-I SWE II / WBK 312 14


Staying Agile<br />

Focus on keeping it<br />

as simple as possible.<br />

– Create diagrams<br />

on a whiteboard<br />

– Content is more<br />

important than<br />

representation<br />

– It’s also perfectly<br />

okay that the<br />

diagram isn’t<br />

complete – we can<br />

always modify<br />

as we need to.<br />

Martin Jud NDS-I SWE II / WBK 312 15<br />

© 2004 by Scott W. Ambler UML 2 Use Case Diagram Overview

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!