Obligatorische Literatur. Teil III der Vorlesung Objektorientierte Analyse (OOA) 30) Überblick über die OOA

Ähnliche Dokumente
Teil III der Vorlesung Objektorientierte Analyse (OOA) 30) Überblick über die OOA

Objektorientierte Analyse

Objektorientierte Analyse

Teil III der Vorlesung Objektorientierte Analyse (OOA) 30) Überblick über die OOA

Objektorientierte Analyse

Teil III der Vorlesung Objektorientierte Analyse (OOA) 30) Überblick über die OOA

OOA.3.1 Funktionsanalyse mit Anwendungsfalldiagrammen (Szenarienanalyse)

Objektorientierte Analyse. Verfeinerung mit Konnektoren (Kollaborationen, Teams, Rollenmodellen) Obligatorische Literatur

Klausur Software Engineering für WI (EuI)

Abschnitt 16: Objektorientiertes Design

Obligatorische Literatur. Überblick Teil III: Objektorientierte Analyse (OOA) 35.1 Anwendungsfalldiagramme

Requirements Engineering Übung 8 Systemmodellierung im RE

Requirements Engineering für IT Systeme

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick

Softwareentwicklungsprozess im Praktikum. 23. April 2015

Informationswirtschaft II Rational Unified Process (RUP)

Informationswirtschaft II

Praktikum Software Engineering: Verfahren und Werkzeuge

1 Mathematische Grundlagen

Grundlagen Software Engineering

Vgl. Kapitel 5 aus Systematisches Requirements Engineering, Christoph Ebert

Gezielt über Folien hinweg springen

Empirische Softwaretechnik Kosten und Nutzen von UML in der Wartung Dr. Victor Pankratius Andreas Höfer Wintersemester 2009/2010

4. AuD Tafelübung T-C3

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

Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung

Use Cases. Die Sicht des Nutzers. Fortgeschrittenenpraktikum SS 2004

Requirements Engineering WS 11/12

Produktvorstellung: CMS System / dynamische Webseiten. 1. Vorwort

SEQUENZDIAGRAMM. Christoph Süsens

RUP Analyse und Design: Überblick

Vorlesung "Software-Engineering"

Software Engineering Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Softwareentwicklung aus Sicht des Gehirns

Themen. Web Services und SOA. Stefan Szalowski Daten- und Online-Kommunikation Web Services

Business-Analyse Probleme lösen, Chancen nutzen

Professionelle Seminare im Bereich MS-Office

Use Cases. Use Cases

VHDL Einleitung. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2010

Software Engineering. 3. Analyse und Anforderungsmanagement

Unsere Kunden erzählen keine Geschichten. Ursula Meseberg microtool GmbH Berlin

Der Design-Workflow im Software-Entwicklungs-Prozess

Software Engineering

Vorlesung Embedded Software-Engineering im Bereich Automotive

Guido de Melo Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis

SEA. Modellgetriebene Softwareentwicklung in der BA

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Dokumentation, Analyse, Optimierung,

Persona-SVS e-sync GUI/Client Installation

Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer

Techniken der Projektentwicklungen

Einführung von Test-Prozessen laut TMMi. Egon Valentini 1. März 2010

Übungsblatt 5 - Lösungshilfe

Exkurs: Formatvorlage für Anforderungsanalyse-Dokument

Der Rational Unified Process

Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren

SO WERDEN LÖSUNGEN HÖCHSTEN ANSPRÜCHEN

Projektmanagement. Vorlesung von Thomas Patzelt 9. Vorlesung

Jürgen Schwab, debis Systemhaus

Comparison of Software Products using Software Engineering Metrics

Ressourceneinsatzplanung in der Fertigung

Statuten in leichter Sprache

Kapitelübersicht. Was ist So#waretechnik? Historische Entwicklung der So9waretechnik Prinzipien, Methoden, Werkzeuge. Was bedeutet Objektorien+erung?

Übungen zu Softwaretechnik

Gussnummern-Lesesystem

Browsereinstellungen für moneycheck24 in Explorer unter Windows

IT-Projekt-Management

Erfahrungen mit Hartz IV- Empfängern

Der Kopf ist rund, damit das Denken die Richtung

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

Daniel Warneke Ein Vortrag im Rahmen des Proseminars Software Pioneers

SEP 114. Design by Contract

Systemdenken und Gestaltungsmethodik System-Modellierung

VL2: Softwareprojekt - Anforderungsanalyse. Inhalt. 1. Struktur eines Softwareprojektes

GI-Technologien zur Umsetzung der EU-Wasserrahmenrichtlinie (WRRL): Wissensbasen. Teil 1: Einführung: Wissensbasis und Ontologie.

Vorlesung vom Einführung in die geschäftsprozessorientierte Unternehmensführung

Erfassung von Umgebungskontext und Kontextmanagement

Objektorientierte Analyse

Objektorientierte Analyse 37) Analysebeispiel EU-Rent

Usability Engineering als Innovationsmethodik

Vitaphone Software Entwicklung Vorgehensmodell 19. Oktober 2011 Berlin. Dr. Michael Hübschen

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

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

Wirtschaftsinformatik 2 Modellierung betrieblicher Informationssysteme - MobIS

Software Engineering. Dokumentation. Wintersemester 2005/06. Kapitel 21. Universität Zürich Institut für Informatik

Organisation des Qualitätsmanagements

Softwareentwicklungspraktikum Sommersemester Grobentwurf

Free your work. Free your work. Wir wollen Ihnen die Freiheit geben, sich auf Ihr Geschäft zu konzentrieren.

Projektmanagement. Vorlesung von Thomas Patzelt 5. Vorlesung

Arbeiten mit UMLed und Delphi

Software Engineering. Dokumentation! Kapitel 21

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

IT-Projekt-Management

Die MID ModellierungsMethodik M³ ein Baukasten für Produktlinien. Andreas Ditze, MDD & PL 2009, Leipzig,

Mean Time Between Failures (MTBF)

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

P23R4FLEX Das P23R-Prinzip in der Umweltdatenberichterstattung. Ulrike Schüler Forum Prozessketten, Mannheim, 16. Mai 2013

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

J.6 Programmierung eingebetteter Systeme

Transkript:

Teil III der Vorlesung Objektorientierte Analyse (OOA) 30) Überblick über die OOA Obligatorische Literatur Zuser, Kap. 7-9 Störrle, Kap. 5 Prof. Dr. rer. nat. habil. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden Version 10-0.5, 11.06.10 Manfred Broy und Andreas Rausch. Das neue V-Modell XT. Ein anpassbares Modell für Software und System Engineering. Informatik-Spektrum. Springer Berlin / Heidelberg. Volume 28, Number 3 / June, 2005, Pages 220-229 http://www.springerlink.com/content/l173638386334305/ Softwaretechnologie, Prof. Uwe Aßmann 1 Objektorientierte Analyse Prof. Uwe Aßmann, Softwaretechnologie 2 Die zentralen Frage der Softwaretechnologie Wie Wie kommen kommen wir wir vom vom Problem Problem des des Kunden Kunden zum zum Programm Programm (oder (oder Produkt)? Produkt)? 30) Überblick über die Objektorientierte Analyse Von der Beschreibung der Welt des Kunden (Domänenmodel, Weltmodel) Zum Programm Softwaretechnologie, Prof. Uwe Aßmann 3 Prof. Uwe Aßmann, Softwaretechnologie 4

Softwareentwicklung im V-Modell Objektorientierte Analyse und Analyse Grobentwurf Testfälle Testfälle Testfälle Abnahmetest Systemtest Integrationstest OOA OOD Die Arbeitsphase Analyse ermittelt, was der Benutzer vom System benötigt Schnittstellen (Funktionen, Daten, Klassen, Code) Begriffe der Anwendungsdomäne Oft nennt man sie Systemanalyse oder Anforderungsanalyse Die Arbeitsphase ermittelt, was der Entwickler zusätzlich zu den Ergebnissen der Analyse ins System aufnehmen muss, was aber der Benutzer nicht sehen muss. Implementierung Modultest OOP Boehm 1979 ( V-Modell ) Prof. Uwe Aßmann, Softwaretechnologie 5 Von der Analyse zum Vertrag mit dem Kunden Prof. Uwe Aßmann, Softwaretechnologie 6 Von den zum Analyse Anforderungs- Ermittlung Fachliche Modellierung Anforderungs- Spezifikation Architektur- Produktdefi nition ( und Domänen-Modell) Architektur- Spezifi kation (smodell) Klassen- Spezifi kationen (Implementierungsmodell) Textuelle Nutzermodell Anforderungsspezifikation Anwendungsfälle (use cases) Top-levelanalysis Architektur Kontextmodell model (context model, system interface) Fachliches Modell Architektur/ smodell Fein- Prof. Uwe Aßmann, Softwaretechnologie 7 Implementierungs modell Prof. Uwe Aßmann, Softwaretechnologie 8

Von den zum Problemraum (problem space Textuelle Nutzermodell Anforderungsspezifikation Anwendungsfälle (use cases) Top-levelanalysis Architektur Kontextmodell model (context model, system interface) Fachliches Modell Lösungsraum (Systemraum solution space) Architektur/ smodell Implementierungs modell Prof. Uwe Aßmann, Softwaretechnologie 9 Schematischer Ablauf der Analyse ( und fachliches Modell) Schematischer Ablauf der Analyse ( und fachliches Modell) Domänenmodel Vorbereitende Anforderungsanalyse (preparatory requirements analysis) Funktionale Anforderungsanalyse ( real requirements analysis) GUI Prototyp Grundlegende Architekturanalyse (basic architecture analysis) Vertrag Top-level-Architektur Kontext-Modell Prof. Uwe Aßmann, Softwaretechnologie 10 Voller Ablauf der Analyse (s. SWT-2) Stakeholder (Nutzergruppen) Vorbereitende Anforderungsanalyse Stakeholder (Nutzergruppen) Problem Vorbereitende Anforderungsanalyse Domain (Domain concepts) Domain (Domain concepts) Domain Model Domain Model Goal Anforderungsanalyse Anforderungsanalyse Function - Use case analysis GUI Function - Use case analysis Quality (Non-functional Reqs) GUI Funktionale GUI Prototyp Grundlegende Architekturanalyse Funktionale GUI Prototyp Grundlegende Architekturanalyse Top-level Architecture Top-level architecture Vertrag Prof. Uwe Aßmann, Softwaretechnologie 11 Top-level Architecture Acceptance Criteria Project Task Planning Acceptance Test Top-level architecture Vertrag Prof. Uwe Aßmann, Softwaretechnologie Acceptance Tests 12

Inhalte eines Vertrags mit einem Kunden Inhalte der Anforderungspezifikation (WAS?). Anforderungsspezifikation (das WAS) Nutzermodell (stakeholders) Funktionale In SWT 2: Problemmodell, Zielmodell, Nicht-funktionale. Fachliches Modell (der Teil vom WIE, den der Kunde wissen muss) Kontextmodell GUI-Prototyp Top-level-Architektur Akzeptanztestfälle:. Messbare Akzeptanzkriterien, die bei der Abnahme vom Kunden abgehakt werden können. Ohne bestandenen Akzeptanztest keine Bezahlung! Preisliche Regelung Achtung: In der Literatur wird der Begriff Analysemodell sowohl für die als auch nur für das fachliche Modell verwendet! Prof. Uwe Aßmann, Softwaretechnologie 13 Inhalte der Anforderungspezifikation Nutzermodell (stakeholder model): Liste oder UML-Klassendiagramm aller am System Interessierten In SWT-2 verfeinern wir das, in dem wir über die Ziele der stakeholder nachdenken Enthält die Benutzer des Systems (die Aktoren) (domain model): Termini, Struktur und Grundkonzepte des Aufgabengebiets Schaffung einheitlicher Terminologie für die Anforderungsspezifikation Aus der Sicht des Kunden Zusammenhang mit Anforderungsspezifikation sichern Implementierungsaspekte ausklammern: Annahme perfekter Technologie Problemmodell, Zielmodell (s. SWT-2) Prof. Uwe Aßmann, Softwaretechnologie 14 Inhalte des Fachlichen Modells (Fachkonzept) (Das WIE, das der Kunde wissen muss) Funktionale : Funktionale Essenz des Systems. Was muss das System können? Nicht das Wie, sondern nur das Was möglichst quantitativ (z.b. Tabellenform) eindeutig identifizierbar (Nummern) Notation: Anwendungsfalldiagramme (Nutzfalldiagramme), Funktionsbäume oder textuell. Manchmal auch mathematisch Nicht-funktionale : Qualitätsanforderungen (s. SWT-2) Resourcenausnutzung: Antwortzeit, Speicherbedarf, Last, Durchsatz Sicherheitskriterien HW/SW-Plattform Entwicklungs- und Produkt-Standards Kontextmodell: äussere Schnittstellen des Systems Ein- und Ausgabekanäle, Masken, Abfragen Daten, die ein und aus fliessen, im typisiert GUI Prototyp: Prototypische Masken, Formulare, Bildschirme, die den GUI ausmachen: Wie sieht das Programm aus? Top-level Architektur (Initiale Architektur, Facharchitektur): Bestimmt die Hauptkomponenten des Systems und ihre Interaktionen, ohne auf Details einzugehen Verfeinert das Kontextmodell um eine Stufe, d.h. die top-level Architektur Stellt das dar, was der Kunde von der Systemarchitektur wissen muss Prof. Uwe Aßmann, Softwaretechnologie 15 Prof. Uwe Aßmann, Softwaretechnologie 16

Objektorientierte Analyse (OOA) Von Analysemodellen zu BCE- smodellen (3-Schichtenarchitektur) Grundidee: Modellierung der fachlichen Aufgabe ( mit fachlichem Modell und Anforderungsspezifikation) durch kooperierende Objekte. Statisches Modell Dynamisches Modell Anforderungsspez. Klassen: Eigenschaften und Aufgaben von Objekten Beziehungen zwischen Klassen (bzw. Objekten) beschreibt (OOA Modell) Typische Anwendungsfälle () Zustände und Verhalten von Objekten System als "Gesellschaft" kooperierender Objekte Fachl.Modell Stakeholders Funktionale GUI-Prototyp Kontext- Diagramm Top-level Architektur Prof. Uwe Aßmann, Softwaretechnologie 17 Zum Praktikum mehr als 95% aller Themen im Praktikum sind BCE-Architekturen Oft mit Web-GUI Unterscheidung zwischen GUI, Anwendungslogik und Datenhaltung ist essentiell Man sollte verstehen, dass aus dem die Datenhaltung folgt die Typen der Daten folgen, die im Kontextmodell und in der Top-Level- Architektur fliessen der GUI-Prototyp stark bestimmt wird (Kommunikation mit dem Benutzer) Die Entwickler oft nur für B, C, oder E zuständig sind Prof. Uwe Aßmann, Softwaretechnologie 19 Stakeholders GUI-Prototyp GUI (boundary) GUI-Architektur - Text UI - Web GUI - Java GUI GUI-Schicht (Boundary, B) (z.b. use cases) Kontext- Diagramm Top-level Architektur Anwendungslogik (control) Architektur Prozesse, Workflows Anwendungslogik- Implementierung (Control, C) Datenhaltung (entity) OOA- Modell OOD- Modell Datenmodell (Entitites, Materialien) Datenmodell- Implementierung (Data base, D) OOP Prof. Uwe Aßmann, Softwaretechnologie 18 Überblick Teil III: Objektorientierte Analyse (OOA) 1. Überblick Objektorientierte Analyse 1. (schon gehabt:) Strukturelle Modellierung mit CRC-Karten 2. Strukturelle metamodellgetriebene Modellierung mit UML für das 1. Strukturelle metamodellgetriebene Modellierung 2. Modellierung von komplexen Objekten 1. Modellierung von Hierarchien 2. (Modellierung von komplexen Objekten und ihren Unterobjekten) 3. Modellierung von Komponenten (Groß-Objekte) 3. Strukturelle Modellierung für Kontextmodell und Top-Level-Architektur 3. Analyse von funktionalen 1. Funktionale Verfeinerung: Dynamische Modellierung und Szenarienanalyse mit Aktionsdiagrammen 2. Funktionale querschneidende Verfeinerung: Szenarienanalyse mit Anwendungsfällen, Kollaborationen und Interaktionsdiagrammen 3. (Funktionale querschneidende Verfeinerung für komplexe Objekte) 4. Beispiel Fallstudie EU-Rent Prof. Uwe Aßmann, Softwaretechnologie 20

Modeling the Real Solution The Basic Laws of Misunderstanding Prototype of a washing machine Find the right abstractions! Spoken is not heard Heard is not listened Listened is not understood Understood is not accepted Accepted is not done Prof. Uwe Aßmann, Softwaretechnologie 21 Prof. Uwe Aßmann, Softwaretechnologie 22 The End Einige Folien sind eine überarbeitete Version aus der Vorlesung Softwaretechnologie von Prof. H. Hussmann, 2002, used by permission. Prof. Uwe Aßmann, Softwaretechnologie 23