Softwaretechnik 2015/2016

Ähnliche Dokumente
Softwaretechnik. Zusammenfassung der Methodik der Vorlesung im Wintersemester 2010/2011

Objektorientierte Analyse (OOA) Inhaltsübersicht

Übung 1 Einführung, Wiederholung Methoden des Software Engineering WS 2012/13. Christian Kroiß

Unified Modeling Language (UML)

Übungen zu Softwaretechnik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Interaktionsdiagramme in UML

Jason T. Roff UML. IT Tutorial. Übersetzung aus dem Amerikanischen von Reinhard Engel

Objektorientierte Analyse am Beispiel Silent Kitchen Company

Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML)

Vorlesung Programmieren

Software Engineering in der Praxis

Analyse und Modellierung von Informationssystemen

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

Praxis der Softwareentwicklung WS 2016/17

Unified Modeling Language (UML )

Objektorientierte Analyse (OOA) OOA-Pattern

Sascha Schreier. Softwaretechnik: Übung

Objektorientierte Softwareentwicklung

Programmieren in Java

UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language

OOA-Dynamische Konzepte

Oracle JDeveloper 10 g

Orientierte Modellierung mit der Unified Modeling Language

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren

UML 2.0 Das umfassende Handbuch

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

OOA.3.1 Funktionsanalyse mit Anwendungsfalldiagrammen (Szenarienanalyse)

Übungsblatt 5 - Lösungshilfe

UML Crashkurs v0.1. UML für Fachinformatiker. von Hanjo Müller

Gliederung des Vortrages

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

Software Engineering in der Praxis

4. Übung zu Software Engineering

UML konzentriert. Eine kompakte Einführung in die Standard-Objektmodellierungssprache. Martin Fowler. ADDISON-WESLEY An imprint of Pearson Education

Informationssystemanalyse Use Cases 11 1

Softwaretechnik SS 2006

Kapitel 5: Das Design

Software Engineering Analyse und Analysemuster

UML. Weiteres Vorgehen im Projekt

Sequenz- und Kommunikationsdiagrammen. Systemmodellierung mit SysML von Michel Manthey

Software- und Systementwicklung

OOD. Objektorientiertes Design. Peter Coad und Edward Yourdon. Prentice Hall Verlag

Methodische objektorientierte Softwareentwicklung

Objektorientierter Softwareentwurf mit UML. Ricardo Hernández Garcia, Joachim Palmer 1. Ausgabe, Januar Grundlagen. Neubearbeitung 2010

Analyse und Entwurf objektorientierter Systeme

Objektorientierte Analyse

Christoph Kecher UML2. Das umfassende Handbuch. Galileo Press

Klausur zur Vorlesung Softwaretechnik

Praktikum Software Engineering

Architektur und Qualität. Tjard Köbberling

Klassendiagramm. (class diagram)

UML - Tutorial. Hubert Baumgartner.

Objektorientierte Analyse & Design

Teil II: OOP und JAVA (Vorlesung 9)

Javakurs für Anfänger

Von UML 1.x nach UML 2.0

Dr. Beatrice Amrhein. April 13

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

UML mit Enterprise Architect

Software-Engineering

Universität Karlsruhe (TH)

Inhalt. Einleitung Liebe Leserin, lieber Leser, Wer dieses Buch aus welchem Grund lesen sollte Ihre Meinung ist uns sehr wichtig.

Softwarearchitekturen I Softwareentwicklung mit Komponenten

Requirements Engineering Vortragender: David Kurmann 2. Teil April 2008 Autor: Antoine Hauck

Rhapsody in J Modellierung von Echtzeitsystemen

Analyse und Entwurf objektorientierter Systeme

Trotz Agilität nicht ins Abseits geraten Modellierung in einem agilen Umfeld. Susanne Mühlbauer, Philip Stolz, HOOD GmbH MID Insight 2012

Vgl. Oestereich Kap 2.1 Seiten

DGQ Regionalkreis Hamburg Anforderungsmanagement ins SW-Projekten. 08. Juni 2011

Modellierung von Web Anwendungen mit UML

Ziele und Tätigkeiten von Architekten

Klausur "OOAD" im SS Name, Vorname: Matrikel-Nr:

Systemanalyse. - Seminar für AI/DM 3 im Wintersemester 2004/05 -

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

Übungen zu Softwaretechnik

Visual Studio 2010 Neues für Architekten

Objektorientierte Programmierung Einführung

PRÜFUNG. Grundlagen der Softwaretechnik

Lösung zur Zusatzaufgabe Bankensoftware

Block R (Rahmen): SE Aktivitäten Vorlesung Methoden des Software Engineering. Block R Rahmen Aktivitäten der Software-Entwicklung

Objektorientierte Software-Entwicklung

Softwaretechnik. Fomuso Ekellem

PSE: Analysesoftware für Logistiknetzwerke

Methodenbasiert in der Durchführung V-Modell XT-konform im Ergebnis

Muster in der Software Technik. Grundlegende Konzepte der Software Entwicklung und Objekt Orientierung

Inhaltsverzeichnis. Teil I Einführung 13. Teil II Struktur 41. Vorwort 11

Software Engineering in der Praxis Praktische Übungen

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System

Fachlicher Prototyp. Fachlicher Prototyp Implementierung der Architektur Das Framework-Konzept Konstruktor-Verkettung

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

Einführung in UML. Überblick. 1. Was ist UML??? 2. Diagrammtypen. 3. UML Software. Was ist ein Modell??? UML Geschichte,...

Objektorientierte Analyse

Modellieren mit der Unified Modeling Language: Klassen- und Objektdiagramme. 11. November 2014

YAKINDU Requirements. Requirements Engineering, Management and Traceability with Eclipse. Lars Martin, itemis AG. itemis AG

Erfahrungsbericht: Einsatz objektorientierter Methoden in Flugkörper-Software

Kapitel 3. Objektorientierte Analyse

Softwaretechnik Unified Modeling Language (UML)

Java Einführung Objektorientierte Grundkonzepte

Transkript:

Softwaretechnik 2015/2016 PST Lehrstuhl Prof. Dr. Matthias Hölzl HAUPT-/ BACHELOR- SEMINAR ADAPTIVE SYSTEME PST Joschka PROF. DR. Rinke WIRSING 14. JUNI 2009 VORNAME NAME

AGENDA Übung 11: 14.01.2016 Schon zur Klausur angemeldet? Fragen Reflection in LISP Besprechung Blatt10

OOA und OOD sind mögliche Bestandteile des SW-Entwicklungsprozesses Objektorientierte Analyse (Anforderungen erfassen und beschreiben): Anforderungsfall-Analyse (Use Case-Analyse) und Entwicklung eines 1) statischen Teilmodells 2) dynamischen Teilmodells iterativer Prozess Objektorientiertes Design (Systementwurf erstellen): Modell der konkreten Systemimplementierung (Systementwurf)

Objektorientierte Analyse (Vorgehensweise): Use Cases statisches Modell dynamisches Modell Diagramme erstellen

Was für ein Diagrammtyp liegt hier vor? Sequenzdiagramm Klassendiagramm Kommunikationsdiagramm Aktivitätsdiagramm Zustandsdiagramm

Statisches Teilmodell: Beziehungen zwischen Klassen Klassendiagramme Dynamisches Teilmodell: Operationen und Kommunikation zwischen Klassen Interaktionsdiagramme (Sequenz-/ Kommunikationsdiagramme) daraus werden dann Aktivitäts- und Zustandsdiagramme erstellt

OOA: Entwickler analysieren die Problemstellung; Ziel ist es Anforderungen zu erfassen und Systemeigenschaften zu modellieren, dazu: Anwendungsfälle dokumentieren statisches Teilmodell entwerfen dynamisches Teilmodell entwerfen Zustands-/ Aktivitätsdiagramme herleiten (wenn notwendig) evtl. Pflichtenheft erstellen Ergebnis der OOA sollte vollständige Beschreibung d. Systemverhaltens sein Agile SW: Beteiligte Rollen erarbeiten gemeinsam User Stories Tasks extrahieren Product Backlog erstellen User Stories können immer wieder hinzugefügt werden

Anwendungsfälle (Use Cases) dokumentieren, indem ein Use Case-Modell entworfen wird, dazu: Aktoren bestimmen Anwendungsfälle bestimmen Anwendungsfall-Diagramme erstellen Anwendungsfälle beschreiben

Rollen: Content Manager, User Use Case-Diagramm (Aktoren & Use Cases):

Rollen: Content Manager, User Use Case-Diagramm (Aktoren & Use Cases):

Anwendungsfall beschreibt: Anforderungen an System Interaktion zwischen Aktoren und System Anwendungsfall-Beschreibung enthält: 1) Name 2) Kurzbeschreibung 3) Vorbedingung 4) Nachbedingung 5) Primärszenario 6) Mögliche Sekundärszenarien 7) Optional: Aktivitätsdiagramm

Name: Content entfernen Kurzbeschreibung: Ein Content Manager (CM) entfernt Content aus der Mediathek, so dass alle externen Nutzer keinen Zugriff mehr auf den Content haben. Vorbedingung: Die Mediathek enthält Content der entfernt werden kann. Nachbedingung: Der entfernte Content ist für externe Nutzer nicht mehr in der Mediathek sichtbar/ abrufbar. Primärszenario: 1. CM gibt ContentID in Content Management System (CMS) ein 2. Content ist vorhanden und kann markiert werden 3. CM entfernt Content, so dass er in der Mediathek nicht mehr abrufbar ist Sekundärszenario: 3a CM soll weiteren Content entfernen 3a1 weiter mit Schritt 1

Erstellung eines statischen Teilmodells: 1) Klassen identifizieren 2) Assoziationen bestimmen 3) Attribute identifizieren 4) Vererbung einführen 5) Modell überarbeiten iterativer Prozess Klassendiagramme

Entwurf von Interaktionsdiagrammen: Identifiziere Nachrichten, die verschickt werden und Objekte, die Nachrichten verschicken Konstruiere Diagramme für jeden Anwendungsfälle Objekt: WebServer, CMS, DBServer Nachrichten z.b.: requestpage(), renderpage(), removeselecteditem(),

Aktivitätsdiagramm: Erstellen aus SDs Aufgabe 1 Objektorientierte Analyse

Am Ende der OOA steht ein lauffähiger Prototyp. ein Systemmodell, das durch Diagramme beschrieben wird. ein dynamisches Teilmodell, das Klassendiagramme enthält. ein dynamisches und ein statisches Teilmodell, auf deren Basis ein Systementwurf erstellt wird.

Aufgabe 2 Objektorientiertes Design Ausgangspunkt: Ergebnisse der OOA (statisches/ dynamisches Teilmodell) Ziel: Modell der Systemimplementierung durch Verfeinerung des Analysemodells Einbindung in die Systemumgebung durch Entwurf von Schnittstellen Konstruktion der Systemarchitektur

Aufgabe 2 Objektorientiertes Design Den Klassen werden die im Sequenzdiagramm verwendeten Methoden hinzugefügt, d.h. dass sie direkt in den Code eingefügt werden und den Klassen im Klassendiagramm hinzugefügt werden:

Aufgabe 2 Objektorientiertes Design Möglichst geringe Kopplung durch: Facade Design Pattern (Fassaden Pattern) Zusammenfassen verschiedener Dienste in einer Fassadenklasse Vorteil: lose Kopplung, geringere Komplexität nach außen Nachteil: zusätzliche Indirektionsstufe

Aufgabe 2 Objektorientiertes Design

Aufgabe 2 Objektorientiertes Design Aus der Vorlesung mit Fassadenklasse im gleichen Package:

Aufgabe 2 Objektorientiertes Design

Aufgabe 2 Objektorientierte Analyse Am Ende des OOD steht ein lauffähiger Prototyp. die SW-Architektur als Vorlage für die Implementierung. das fertige Produkt. ein dynamisches Teilmodell, das Sequenzdiagramme enthält.