mitglied der fachhochschule ostschweiz fho 1 © fhs st.gallen software engineering ood – object...
TRANSCRIPT
![Page 1: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/1.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 1www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
S
oft
war
e E
ng
inee
rin
g
OOD – Object Oriented Design II
Komponenten-Design
![Page 2: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/2.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 2www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Lernziele
Sie können ...– das Komponentendiagramm nach UML 2.0 lesen und erstellen.– die einen Komponentendesign aus den Analyseartefakten ableiten.
![Page 3: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/3.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 3www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Literatur
Applikationen objektorientiert konzipieren:– Kapitel 8.1
Lehrbuch der Objektmodellierung:– LE 16 + LE 17– LE 11 – LE 13
![Page 4: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/4.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 4www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Gesamtübersicht
Analyse (OOA)
Design (OOD)
DynamischesAnalysemodell
Anwendungsfall-modell
AnalyseprototypStatisches
Analysemodell
DesignprototypKomponenten-
design
Architektur-design
Datenbank-Design
Implementation lauffähigesSystem
![Page 5: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/5.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 5www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Entwurf (Design)
Modellierung des PSM (Platform Specific Model)
1:1-Abbild der zu implementierenden Realität
Modellierungswerkzeuge bieten Code-Generierung– MDD – Model Driven Development– Forward – Reverse – Roundtrip - Engineering
Basis:– statischen und dynamischen Analysemodelle– Architektur-Artefakte
![Page 6: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/6.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 6www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Input: Resultate aus Architektur
Äussere Architektur: Innere Architektur:
![Page 7: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/7.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 7www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Komponente
Eine Komponente ist ein Softwarebaustein– mit klar definierter Schnittstelle– festgelegtem Verhalten– Qualitäts-Anforderungen:
• Wiederverwendbar• Substituierbar• Wartbar (optimale Grösse!)
Es gibt verschiedene Komponentenmodelle:– JavaBeans, EJB (Enterprise Java Beans)– .NET-Assemblies– MS COM (Component Object Model)
UML-Notation:
![Page 8: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/8.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 8www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Komponentenfestlegung I
Berücksichtigen der Designprinzipien
Komponente immer innerhalb einer Architektursichtweise:• Schicht - Subsystem
Zu angrenzenden Systemen:• Fassaden-Komponente• Repräsentanten externer Systeme (Proxy-Komp.)• Zugriffs-Komponente
Spezialfunktionen:• Steuerung/Kontrolle• Security-Handling • Exception-Handling
![Page 9: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/9.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 9www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Komponentenfestlegung II
Fachkomponenten (nach MVC)– View
– Präsentationskomponenten– Control
– Prüfung-/Steuerungskomponenten– Model
– Sitzungsorientierte Komponenten– Nachrichtenorientierte Komponenten– Persistenz Komponenten –
Data-Access-Komponenten
![Page 10: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/10.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 10www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Modellierung mit Profiles
UML-Profile• Ergänzung des UML-Metamodelles• vordefinierte Stereotypen für J2EE, .NET etc.• Bsp.:
![Page 11: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/11.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 11www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
![Page 12: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/12.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 12www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Statische Konzepte
Klassendiagramm• detailliert ausarbeiten• Interface und Control-Klassen modellieren• Navigierbarkeit explizieren• Vererbungsstruktur überarbeiten:
– Mehrfachvererbungen über Interface-Klassen auflösen– möglichst flache Generalisierungshierarchie– Wurzelklassen sollen abstrakt sein– Gemeinsamkeiten so hoch wie möglich in der
Generalisierungshierarchie einordnen– Gemeinsame Attribute als Datentypen spezifizieren– Gemeinsame Operationen als Oberklassen realisieren
![Page 13: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/13.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 13www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Dynamische Konzepte
Für komplexe Operationen:• Aktivitätsdiagramme
Für komplexe Szenarien:• Sequenzdiagramme
Für komplexe Lifecycles von Objekten:• Zustands- bzw. Protokollautomaten
![Page 14: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/14.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 14www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Detailliertes Klassendiagrammfür die Komponente Reservationen
![Page 15: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/15.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 15www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Schnittstelle (Interface )
Interaktion über Interfaces
![Page 16: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/16.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 16www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Interne Details einer Komponente
Textuelle Darstellung
Visuelle Darstellung
![Page 17: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/17.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 17www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
17
![Page 18: Mitglied der Fachhochschule Ostschweiz FHO 1 © FHS St.Gallen Software Engineering OOD – Object Oriented Design II Komponenten-Design](https://reader035.vdocuments.pub/reader035/viewer/2022070310/55204d7249795902118c5de2/html5/thumbnails/18.jpg)
Mitglied der Fachhochschule Ostschweiz FHO 18www.fhsg.ch © FHS St.Gallen
So
ftw
are
En
gin
eeri
ng
Übungen
UML-Übungen• Übung 8
Fallstudie Nutz AG• Auftrag 8