Informationssystemanalyse Use Cases 11 1



Ähnliche Dokumente
Use Cases. Use Cases

Objektorientierter Software-Entwurf Grundlagen 1 1. Analyse Design Implementierung. Frühe Phasen durch Informationssystemanalyse abgedeckt

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Vgl. Kapitel 5 aus Systematisches Requirements Engineering, Christoph Ebert

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Professionelle Seminare im Bereich MS-Office

SharePoint Demonstration

Vgl. Kapitel 4 aus Systematisches Requirements Engineering, Christoph Ebert

Softwaretechnik (Allgemeine Informatik) Überblick

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

Kapitel 2: Der Software-Entwicklungsprozess

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist

Auswahl alter Klausuraufgaben aus einer ähnlichen Vorlesung Maßgeblich für die Prüfung sind die Vorlesungsinhalte!

Use Cases. Die Sicht des Nutzers. Fortgeschrittenenpraktikum SS 2004

1 Mathematische Grundlagen

Softwaretechnik. Fomuso Ekellem WS 2011/12


Techniken der Projektentwicklungen

white sheep GmbH Unternehmensberatung Schnittstellen Framework

Bei der Focus Methode handelt es sich um eine Analyse-Methode die der Erkennung und Abstellung von Fehlerzuständen dient.

«Eine Person ist funktional gesund, wenn sie möglichst kompetent mit einem möglichst gesunden Körper an möglichst normalisierten Lebensbereichen

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail:

SEQUENZDIAGRAMM. Christoph Süsens

SDD System Design Document

StuPro-Seminar Dokumentation in der Software-Wartung. StuPro-Seminar Probleme und Schwierigkeiten in der Software-Wartung.

Java Enterprise Architekturen Willkommen in der Realität

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

DER SELBST-CHECK FÜR IHR PROJEKT

Wichtig ist die Originalsatzung. Nur was in der Originalsatzung steht, gilt. Denn nur die Originalsatzung wurde vom Gericht geprüft.

Studieren- Erklärungen und Tipps

THEMA: "SAS STORED PROCESSES - SCHNELL GEZAUBERT" HELENE SCHMITZ

Anti-Botnet-Beratungszentrum. Windows XP in fünf Schritten absichern

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Abschnitt 16: Objektorientiertes Design

GRS SIGNUM Product-Lifecycle-Management

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

Computeria Solothurn

Support-Tipp Mai Release Management in Altium Designer

Anforderungen an die HIS

Wir nehmen Aufgaben und Ideen wahr. Wir suchen Lösungen zu Ideen.

Nicht über uns ohne uns

Updatehinweise für die Version forma 5.5.5

Hochschule Darmstadt Fachbereich Informatik

Rillsoft Project - Installation der Software

Anleitung zur Bearbeitung von Prüferkommentaren in der Nachreichung

SWE12 Übungen Software-Engineering

Software Engineering. 3. Anforderungsanalyse. Franz-Josef Elmer, Universität Basel, WS 2006/07

Kurzeinführung Moodle

FORUM HANDREICHUNG (STAND: AUGUST 2013)

Klausur WS 2006/07 Programmiersprache Java Objektorientierte Programmierung II 15. März 2007

Datensicherung. Beschreibung der Datensicherung

Was meinen die Leute eigentlich mit: Grexit?

Gezielt über Folien hinweg springen

Objektorientierte Programmierung OOP

SJ OFFICE - Update 3.0

Was ist Sozial-Raum-Orientierung?

Lieber SPAMRobin -Kunde!

Version NotarNet Bürokommunikation. Bedienungsanleitung für den ZCS-Import-Assistenten für Outlook

Zeichen bei Zahlen entschlüsseln

40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.

EINE PLATTFORM

AZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"

Kurzanleitung ecari-mofa

Grundzüge der Programmierung. Konzepte der objektorientierten Programmierung (oop) OBJEKTE - KLASSEN

SWE5 Übungen zu Software-Engineering

Wie Sie mit Mastern arbeiten

Klausur Software Engineering für WI (EuI)

Leseauszug DGQ-Band 14-26

infach Geld FBV Ihr Weg zum finanzellen Erfolg Florian Mock

Informationssystemanalyse Lebenszyklusmodelle 3 1. Lebenszyklusmodelle sollen hauptsächlich drei Aufgaben erfüllen:

Pflegende Angehörige Online Ihre Plattform im Internet

Requirements Engineering für IT Systeme

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Einführung und Motivation

Das Pflichtenheft. Dipl.- Ing. Dipl.-Informatiker Dieter Klapproth Ains A-Systemhaus GmbH Berlin

Die Post hat eine Umfrage gemacht

Zukunft der WfbM Positionspapier des Fachausschusses IV

teischl.com Software Design & Services e.u. office@teischl.com

Häufig wiederkehrende Fragen zur mündlichen Ergänzungsprüfung im Einzelnen:

Local Control Network Technische Dokumentation

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Internet Explorer Version 6

Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen. Wir bringen Qualität. Wir beraten Sie. Wir unterstützen Sie. Wir schaffen Lösungen

Softwaretechnologie Wintersemester 2009/2010 Dr. Günter Kniesel, Pascal Bihler

Die Gesellschaftsformen

Xesar. Die vielfältige Sicherheitslösung

Fragebogen zur Anforderungsanalyse

Wir machen neue Politik für Baden-Württemberg

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Some Software Engineering Principles

Objektorientierte Programmierung

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Transkript:

Informationssystemanalyse Use Cases 11 1 Use Cases Slide 1 Als ein populäres Mittel um Anforderungen zu erfassen und Systeme zu beschreiben, werden Use Cases benutzt. Sie bilden die Basis für eine umfassendere objektorientierte Entwurfsmethode (Object-Oriented Software Engineering, OOSE), welche von Ivar Jacobson mitentwickelt wurde. Hauptsächlich beschreiben Use Cases das Verhalten eines Systems in Form von Anwendungsfällen oder auch Transaktionen. Modelle Die Modelle, die im OOSE benutzt werden, decken alle Phasen des Entwicklungsprozesses ab: Slide 2 Anforderungsmodell: Beschreibung der funktionalen Anforderungen aus Benutzersicht Analysemodell: Logisches Modell des Systems, welches auf stabilen Anforderungen und einer idealen Umgebung aufbaut Designmodell: Umwandlung des Analysemodells in ein implementierbares Design Implementierungsmodell: Eigentlicher Programmcode Testmodell: Entwicklung von Prüfplänen und Durchführung der Tests

Informationssystemanalyse Use Cases 11 2 Architektur Unter Architektur im OOSE wird die Basis oder auch Bedeutung aller entwickelten Modelle verstanden. Sie ist das Resultat der Anwendung einer Methode auf ein System. Slide 3 Im OOSE wird hier eine Parallele zur objektorientierten Entwicklung gezogen: die Architektur stellt die beschreibende Klasse aller erzeugbaren Modelle oder Systeme (Instanzen) dar. Prozeß Im OOSE wird der Entwicklungsprozeß losgelöst vom Projekt eher produktbezogen betrachtet. Als Einzelprozesse werden dabei der Slide 4 Analyse- Konstruktions- Komponentenentwicklungs- und Testprozeß beschrieben. Diese Prozesse kommunizieren dabei während der Entwicklungsphase miteinander.

Informationssystemanalyse Use Cases 11 3 Prozesse und Modelle Der Entwicklungsprozeß wird im OOSE als Vorgehen verstanden, bei dem Modelle ineinander überführt werden. Grundsätzlich gibt es zwei Möglichkeiten: Slide 5 operational: ein Modell wird als Ganzes in ein anderes Modell überführt, welches dann auf Korrektheit geprüft wird transformational: einzelne Transformationen werden auf einer Ebene der Einzelbestandteile eines Modells durchgeführt, wobei die Transformationen jeweils geprüft werden Im OOSE wird hier vornehmlich operational gearbeitet. Dabei wird verstärkt auf Durchgängigkeit geachtet, so daß sich Objekte über mehrere Umwandlungen hinweg verfolgen lassen. Analyse Innerhalb des Analyseprozesses werden die Anforderungen zunächst in ein Anforderungsmodell und danach ein Analysemodell überführt. Die beiden Modelle haben dabei folgende Charakteristika: Slide 6 Beschreibung dessen, was das System tut (im Gegensatz zum Design, wo das wie im Vordergrund steht). Anwendungsorientierung, keine Berücksichtigung der späteren Implementierung Möglichkeit der Diskussion mit Endbenutzern durch die Anwendungsorientierung Unabhängigkeit bei Änderungen der Implementierungsumgebung

Informationssystemanalyse Use Cases 11 4 Das Anforderungsmodell Das Anforderungsmodell soll die Funktionalität des Systems definieren. Dabei wird vom Standpunkt des Benutzers ausgegangen. Das Modell besteht aus dem Use-Case-Modell (Beschreibung der Funktionalität), Slide 7 Interface-Beschreibungen (Beschreibung der Interaktion mit dem System) und einem Modell des Problembereichs (Basis für alle Beteiligten) Aktoren Um die Anwendungsfälle zu beschreiben, müssen zuerst die Benutzer des Systems identifiziert werden. Dies geschieht mit Hilfe von Aktoren, welche bestimmte Rollen bei der Benutzung des Systems definieren. Aktoren können Slide 8 Endbenutzer oder andere Systembestandteile (Hard-/Software) sein. Ein Aktor beschreibt aber nicht einen bestimmten Benutzer, sondern dient als Klassendefinition für Rollen.

Informationssystemanalyse Use Cases 11 5 Aktoren Aktoren werden in zwei Gruppen unterteilt: primäre Aktoren: bestimmen die Funktionalität des Systems und benutzen es als Hauptzielgruppe Slide 9 sekundäre Aktoren: hängen von primären Aktoren ab, unterstützen diese in der Systembenutzung Aktoren befinden sich immer außerhalb der Grenzen des zu erstellenden Systems Use Cases Slide 10 Ein Use Case beschreibt eine Interaktion eines Aktors mit dem System in natürlicher Sprache. Er beinhaltet alle Einzelereignisse, die bei der Interaktion durchgeführt werden. Diese Einzelaktivitäten lösen jeweils einen Zustandswechsel des Gesamtsystems aus. Die Summe aller Use Cases beschreibt die Gesamtfunktionalität des Systems.

Informationssystemanalyse Use Cases 11 6 Notation Neben der natürlichsprachlichen Beschreibung existiert eine einfache graphische Notation, welche einen Überblick über das Gesamtsystem liefern soll: Aktor System Slide 11 Use Case Identifikation von Use Cases Use Cases werden immer ausgehend von Aktoren identifiziert: für jeden Aktor wird festgelegt, welche Ereignisse er erzeugen kann Slide 12 die Ereignisse, die diesen initalen Ereignissen folgen, werden zu einem Use Case zusammengefaßt und beschrieben Folgende Fragen sind dabei interessant: Welches sind die Hauptaufgaben eines Aktors? Muß der Aktor auf Systeminformation zugreifen? Informiert der Aktor das System über die externe Änderungen? Wird der Aktor über unvorgesehene Ereignisse informiert?

Informationssystemanalyse Use Cases 11 7 Instanziierung von Use Cases Ähnlich wie Aktoren werden auch Use Cases als Klassen aufgefaßt: Beim Auslösen eines externen Ereignisses durch einen Aktor wird ein Use Case instanziiert Slide 13 Bei Use Cases, die eine gleiche initiale Sequenz von Ereignissen haben, kann erst später identifiziert werden, welcher Use Case begonnen wurde Abweichungen innerhalb von Use Cases Nachdem die Use Cases über mehrere Analysedurchläufe hinweg stabil beschrieben sind, werden die unterschiedlichen Ausprägungen definiert: Slide 14 Hauptablauf: Beschreibung des normalen oder am häufigsten vorkommenden Ablaufs alternative Abläufe: Beschreibung der Ereignisse im Fehlerfall

Informationssystemanalyse Use Cases 11 8 Erweiterung von Use Cases Analog zur Vererbung von Klasseneigenschaften können Use Cases auch erweitert werden. Ausgehend von einem kompletten Ablauf werden hierfür Erweiterungen spezifiziert, die folgenden Zwecken dienen können: Slide 15 Beschreibung von optionalen Abläufen Beschreibung komplexer, seltener Abläufe Beschreibung eines allgemeinen Ablaufs, auf dem mehrere spezialisierte Abläufe aufbauen Der zu erweiternde Ablauf muß dabei unabhängig von den Erweiterungen beschrieben sein. Interface-Beschreibungen Neben der Beschreibung der Funktionalität wird die Interaktion mit dem System in Interface-Beschreibungen konkretisiert: Beschreibung der Benutzerschnittstelle (graphisch, Kommandozeile usw.) Slide 16 Beschreibung von Protokollen Erstellung von Prototypen

Informationssystemanalyse Use Cases 11 9 Objekte des Problembereichs Als drittes Modell wird in der Anforderungsanalyse insbesondere bei ungenauen Anforderungsbeschreibungen zusätzlich versucht, ein logisches Modell des Problembereichs zu erstellen. Es hat folgende Aufgaben: Slide 17 Schaffung eines gemeinsamen Vokabulars Hilfestellung beim Verstehen des Problembereichs Hilfe bei der Identifikation von Use Cases durch Beschreibung der Dinge, die im System bearbeitet werden Dieses Vorgehen entspricht teilweise den klassischen objektorientierten Analysemethoden Verfeinerung des Anforderungsmodells Zur Unterstützung von Wiederverwendung und zur Vorbereitung der Umwandlung in das Analysemodell wird das Anforderungsmodell weiter verfeinert: Slide 18 gemeinsame Teile von Use Cases werden als eigenständige, abstrakte Use Cases definiert konkrete Use Cases benutzen diese abstrakten Use Cases (vgl. dazu die Erweiterung von Use Cases) gemeinsame Teile von Aktoren werden ebenso als abstrake Aktoren beschrieben

Informationssystemanalyse Use Cases 11 10 Das Analysemodell Das Anforderungsmodell wird im zweiten Schritt der Analysephase in ein Analysemodell überführt. Es besteht aus Interface-Objekten, Entity-Objekten und Kontroll-Objekten. Bei der Transformation wird das in den Use Cases beschriebene Systemverhalten auf die Objekte dieser drei Typen aufgeteilt. Slide 19 Inferface-Objekte Funktionalität, welche an den Systemgrenzen erbracht wird, wird in Interface-Objekten behandelt. Um diese zu identifizieren, gibt es drei Möglichkeiten: Slide 20 direkte Übernahme der Objekte aus der Interface-Beschreibung Betrachtung der Interaktion der Aktoren mit dem System Betrachtung der interface-spezifischen Teile der Use Cases

Informationssystemanalyse Use Cases 11 11 Entity-Objekte Information, die im System über längere Zeit hinweg gehalten wird, wird in Entity-Objekten abgelegt. Sie existieren über mehrere Abläufe von Use Cases hinweg und entsprechen weitgehend den Objekten, die im Modell des Problembereichs identifiziert werden konnten. Slide 21 Kontroll-Objekte Kontroll-Objekte verbinden Interface- und Entity-Objekte und können direkt aus den Use Cases abgeleitet werden. Ein Kontroll-Objekt sollte an möglichst wenigen Use Cases beteiligt sein. Kontroll-Objekte sollen die Modifikation von Systemverhalten erleichtern. Slide 22

Informationssystemanalyse Use Cases 11 12 Probleme bei der Verwendung Bei der Benutzung von Use Cases in Verbindung mit objektorientierten Techniken (eine verbreitete Kombination) sind jedoch folgende Punkte zu beachten: Use Cases stellen nur eine informelle Systembeschreibung dar Slide 23 sie stellen die Reihenfolge von Operationen in den Vordergrund, beim objektorientierten Entwurf ist die Reihenfolge jedoch nachrangig sie zerlegen ein System nach funktionalen Gesichtspunkten, dies widerspricht objektorientieren Vorgehensweisen Es ist deshalb empfehlenswert, Use Cases nur als Mittel zum Erfassen und Prüfen von Anforderungen zu benutzen, nicht aber als Analyse- und Designmethode