Friedrich-Alexander-Universität Erlangen-Nürnberg

Größe: px
Ab Seite anzeigen:

Download "Friedrich-Alexander-Universität Erlangen-Nürnberg"

Transkript

1 Algorithmik 1 M. Philippsen, H. Stoyan, Friedrich-Alexander-Universität Erlangen-Nürnberg Informatik 2/8/9

2 Kapitel 2 - Objektorientierter Entwurf 2.1 Ziele und Historie 2.2 Analyse 2.3 Klassendiagramm 2.4 Objektdiagramm 2.5 Interaktionsdiagramm 2.6 Zustandsdiagramm 2.7 Entwurfsregeln Algorithmik 1, WS 2005/06, Folie 1-2

3 1.3 Konstruktion von Informatiksystemen Komponentensicht Problem Wie kommt man vom zu lösenden Problem zu einer automatischen Problemlösung auf einem Computer? Computer, Von-Neumann-Rechner Ausführung Lösung Algorithmik 1, WS 2005/06, Folie 1-3

4 1.3 Konstruktion von Informatiksystemen Komponentensicht Validierung Problem Problemanalyse Spezifikation Was meint die umgangssprachliche Problembeschreibung wirklich? Mehrdeutigkeit? Missverständnis? Welche Bedingungen erfüllen die Eingabedaten? Was muss für die Resultate exakt gelten? Möglichst exakte, eindeutige, unmissverständliche, umfassende Beschreibung des zu lösenden Problems. WAS ist zu lösen? Computer, Von-Neumann-Rechner Ausführung Lösung Algorithmik 1, WS 2005/06, Folie 1-4

5 2.1 Ziele und Historie Beim Entwurf und der Planung eines Softwaresystems steht der Systemanalytiker an der Schnittstelle zwischen Auftraggeber und Entwickler: Systemanalytiker muss vor allem den Auftraggeber verstehen (und weniger umgekehrt). Beschreibung der Auftraggeberwünsche sollte unabhängig von technischen Möglichkeiten sein (perfekter Rechner). Auftraggeber sollte seinen Auftrag in der vom Systemanalytiker erarbeiteten Modellierung/Beschreibung erkennen. Gesucht wird folglich eine Repräsentation, mittels derer sich beide verständigen können. Sollte unabhängig von der zu verwendenden Programmiersprache und Entwicklungsumgebung sein. Also: Darstellung als Grafik. Algorithmik 1, WS 2005/06, Folie 1-5

6 2.1 Ziele und Historie Duale Sichtweise auf die Elemente eines Systems: Objekt als Gegenstand der Anschauung Objekt als Dienstgeber und Dienstnehmer Statisches Modell Dynamisches Modell Zeit Grob: Statisches Modell ~ Gegenstand der Anschauung Dynamisches Modell ~ Dienstgeber / Dienstnehmer Algorithmik 1, WS 2005/06, Folie 1-6

7 2.1 Ziele und Historie Standards der objektorientierten Analyse (OOA) und des objektorientierten Entwurfs (OOD): Urahnen: ER-Analyse (1975), semantische Netze (KL-ONE, 1975) Ende 80er, Anfang 90er: erste Bücher über OO-Analyse mehrere verschiedene grafische Notationen zunächst nur wenige Anwender Von Booch (1991, 1994), Rumbaugh (1991) und anderen Bestrebungen, Standards einzuführen; Werkzeuge zur Unterstützung der Analyse werden entwickelt. 1994: Booch und Rumbaugh einigen sich auf Unified Method. 1996: Booch, Rumbaugh, Jacobson veröffentlichen die Unified Modeling Language (UML). Algorithmik 1, WS 2005/06, Folie 1-7

8 2.1 Ziele und Historie UML 2.0 März `03 Die OMG erkennt die UML als den offiziellen Industriestandard für SW- Modellierungsnotationen an, 17. Nov. 97 UML 1.5 UML 1.1 Industrialisierung Standardisierung Öffentliches Feedback Eingereicht bei OMG, Sept 97 Eingereicht bei OMG, Jan 97 Beta Version OOPSLA 96 UML 1.0 UML 0.9 Vereinheitlichung WWW-Juni 96 Unified Method 0.8 OOPSLA 95 Methodenkriege Booch 93 OMT-2 Fragmentierung Diverse Methoden Booch 91 OMT-1 OOSE Algorithmik 1, WS 2005/06, Folie 1-8

9 2.1 Ziele und Historie Die Unified Modeling Language (UML) ist eine grafische Sprache zur Visualisierung, Spezifikation, Konstruktion und Dokumentation der Bestandteile von Softwaresystemen. Dieser Standard bietet ein breites Spektrum von Modellierungsmöglichkeiten, die von der konzeptionellen Ebene der Geschäftsprozesse bis zur konkreten Umsetzung einzelner Softwarekomponenten reichen. Folgen der grafischen Sprache: Die Modellierung erfolgt in Form von Diagrammen. Obwohl dies prinzipiell möglich ist, wurde UML nicht rigoros formal definiert. Die Beschreibung erfolgt verbal und durch Beispiele. Es gibt Mehrdeutigkeiten, Ungenauigkeiten, Unklarheiten, Algorithmik 1, WS 2005/06, Folie 1-9 Vergleiche: natürlichsprachliche Problembeschreibung versus exakte programmiersprachliche Formulierung.

10 2.1 Ziele und Historie Diagramme von UML (1.x) Strukturdiagramm WAS? Verhaltensdiagramme ( behavior diagrams ) WIE? Implementierungsdiagramme ( implementation diagrams ) Geschäftsvorfälle (1) Anwendungsfalldiagramm ( use case diagram ) (2) Klassendiagramm ( class diagram ) (3) Sequenzdiagramm ( sequence diagram ) (4) Kollaborationsdiagramm ( collaboration diagram ) (5) Zustandsdiagramm ( statechart diagram ) (6) Aktivitätsdiagramm ( activity diagram ) (7) Komponentendiagramm ( component diagram ) (8) Verteilungsdiagramm ( deployment diagram ) Gegenstand, statisch Dienste, dynamisch Interaktionsdiagramme ( interaction diagrams ) Dienste, statisch Gegenstand, dynamisch Algorithmik 1, WS 2005/06, Folie 1-10

11 2.1 Ziele und Historie Der Makroprozess bei OOA(nalyse) und OOD(esign) Geschäftsprozesse erstellen statisches Modell erstellen dynamisches Modell erstellen Algorithmik 1, WS 2005/06, Folie 1-11

12 2.2 Analyse 1. Schritt: Beschreibung der Nutzer und ihrer Anforderungen Analyse mit einem anwenderorientierten Standpunkt: Akteur ( actor ): Anwender (Mensch, Maschine, Programm) des zu entwerfenden Systems in einer bestimmten Rolle. Tritt mit dem zu entwerfenden System in Interaktion. Hat Anforderungen an dieses System. Anwendungsfall ( use case ): Aufgabe, die ein Akteur mit Hilfe des zu entwerfenden Systems lösen will oder muss. Anwendungsfalldiagramm ( use case diagram ) Modellierungselemente eines Anwendungsfalldiagramms: Akteure als Strichfiguren Anwendungsfälle als Ovale Beteiligung eines Akteurs an einem Anwendungsfall als Linie Algorithmik 1, WS 2005/06, Folie 1-12

13 2.2 Analyse Anwendungsfalldiagramm am Beispiel einer Bibliothek Reserviere Buch Entleihe Buch Suchen BuchEntleiher Rückgabe Buchexemplar Sucher Verlängerung Buchexemplar Zeitschriften Entleiher Entleihe Zeitschrift Rückgabe Zeitschrift Aktualisierung Katalog Bibliotheksmitarbeiter Algorithmik 1, WS 2005/06, Folie 1-13

14 2.2 Analyse 2. Schritt: Beschreibung der Systemteile Heuristik für Systemteile: Objekte der Lebenswelt sind zu verwalten: mit Eigenschaften oder Teilen zu beschreiben auf die Objekte sind Aktionen anzuwenden Objektorientierung: die Objekte sind für die auf sie anwendbaren Aktionen verantwortlich. Klassenbildung: für viele Objekte wird es gleiche Aktionen geben Objektklassen Algorithmik 1, WS 2005/06, Folie 1-14

15 2.2 Analyse Substantiv-Analyse kann helfen, um aus den in Umgangssprache beschriebenen Anwendungsfällen die beteiligten Objektklassen (Mengen gleichartiger Objekte) zu bestimmen. Aufgaben einer Bibliothek: In der Bibliothek gibt es Bücher und Zeitschriften. Von Büchern kann es mehrere Exemplare geben. Einige Bücher sind nur für Kurzzeitentleihe gedacht. Alle anderen Bücher können von jedem Bibliotheksmitglied für drei Wochen entliehen werden. Mitglieder der Bibliothek können normalerweise bis zu 6 Einheiten entleihen, während Mitarbeiter der Bibliothek bis zu 12 Einheiten zur gleichen Zeit entleihen können. Nur Mitarbeiter der Bibliothek dürfen Zeitschriften entleihen." Algorithmik 1, WS 2005/06, Folie 1-15

16 2.2 Analyse Substantiv-Analyse kann helfen, um aus den in Umgangssprache beschriebenen Anwendungsfällen die beteiligten Objektklassen (Mengen gleichartiger Objekte) zu bestimmen. außerhalb des Systems Aufgaben einer Bibliothek: In der Bibliothek gibt es Bücher und Zeitschriften. Von Büchern kann es mehrere Exemplare geben. Einige Bücher sind nur für Kurzzeitentleihe gedacht. Alle anderen Bücher können von jedem Bibliotheksmitglied für drei Wochen entliehen werden. Mitglieder der Bibliothek können normalerweise bis zu 6 Einheiten entleihen, während Mitarbeiter der Bibliothek bis zu 12 Einheiten zur gleichen Zeit entleihen können. Nur Mitarbeiter der Bibliothek dürfen Zeitschriften entleihen." Zeiteinheit zu vage zugleich auch Bibliotheksmitglied Ereignis Algorithmik 1, WS 2005/06, Folie 1-16

17 2.2 Analyse Substantiv-Analyse kann helfen, um aus den in Umgangssprache beschriebenen Anwendungsfällen die beteiligten Objektklassen (Mengen gleichartiger Objekte) zu bestimmen. Aufgaben einer Bibliothek: In der Bibliothek gibt es Bücher und Zeitschriften. Von Büchern kann es mehrere Exemplare geben. Einige Bücher sind nur für Kurzzeitentleihe gedacht. Alle anderen Bücher können von jedem Bibliotheksmitglied für drei Wochen entliehen werden. Mitglieder der Bibliothek können normalerweise bis zu 6 Einheiten entleihen, während Mitarbeiter der Bibliothek bis zu 12 Einheiten zur gleichen Zeit entleihen können. Nur Mitarbeiter der Bibliothek dürfen Zeitschriften entleihen." Algorithmik 1, WS 2005/06, Folie 1-17

18 2.2 Analyse Ausgehend von den Anwendungsfällen erfolgt die Zuordnung der Funktionalitäten zu den ermittelten Objektklassen. Entwurf nach Zuständigkeit: Untersuchung der Kooperationsaufgaben: Jedes Objekt einer Objektklasse ist für bestimmte Aufgaben zuständig und besitzt entweder alle Fähigkeiten, um diese Aufgaben selbst zu lösen, oder es kooperiert dazu mit anderen Objekten ggf. anderer Objektklassen. Dokumentation der Ergebnisse dieses Entwurfsschritts mittels CRC-Karten (Class Responsibility Collaborator): Klassenname Klasse ist ab sofort Kurzschreibweise für Objektklasse zuständig für Zusammenarbeit mit Algorithmik 1, WS 2005/06, Folie 1-18

19 2.2 Analyse Zuständigkeiten und Kooperationen der Bibliotheksklassen Mitglied zuständig für: Daten des Mitglieds ausgeliehene Exemplare Zusammenarbeit mit (Buch) Exemplar behandelt : Anfrage, Benachrichtigung, Übergabe löst aus: Mitteilung an Leser, Versendung des phys. Exemplars Algorithmik 1, WS 2005/06, Folie 1-19

20 2.2 Analyse Buch zuständig für: Daten des Buchs verfügbare Exemplare Vormerkung Mitglied behandelt: Ausleihe, Vormerkung löst aus: Anfrage M B, Ausgabe E M, Benachrichtigung M B Zusammenarbeit mit Exemplar Mitglied Exemplar zuständig für Daten des Exemplars Ausleiher behandelt: Ausgabe, Verlängerung, Rückgabe löst aus: Exemplar-frei B, Übergabe M E Zusammenarbeit mit Buch Mitglied Zeitschrift vervollständigen Algorithmik 1, WS 2005/06, Folie 1-20

21 2.3 Klassendiagramm Diagramme von UML (1.x) Strukturdiagramm WAS? Verhaltensdiagramme ( behavior diagrams ) WIE? Implementierungsdiagramme ( implementation diagrams ) Geschäftsvorfälle (1) Anwendungsfalldiagramm ( use case diagram ) (2) Klassendiagramm ( class diagram ) (3) Sequenzdiagramm ( sequence diagram ) (4) Kollaborationsdiagramm ( collaboration diagram ) (5) Zustandsdiagramm ( statechart diagram ) (6) Aktivitätsdiagramm ( activity diagram ) (7) Komponentendiagramm ( component diagram ) (8) Verteilungsdiagramm ( deployment diagram ) Gegenstand, statisch Dienste, dynamisch Interaktionsdiagramme ( interaction diagrams ) Dienste, statisch Gegenstand, dynamisch Algorithmik 1, WS 2005/06, Folie 1-21

22 2.3 Klassendiagramm Klassendiagramm ( class diagram ) Ein Klassendiagramm beschreibt die vorkommenden Objektklassen und ihre Beziehungen untereinander. Die strukturellen Eigenschaften bzw. innere Struktur einer Klasse werden durch Attribute ( attribute, instance-scope attribute ) angegeben. Das Verhalten einer Klasse wird durch Operationen beschrieben. Beziehungen können auftreten als Assoziationen Aggregationen/Kompositionen Spezialisierungen/Generalisierungen können genauer modelliert werden durch Multiplizitäten Rollennamen und Navigationspfeile Algorithmik 1, WS 2005/06, Folie 1-22

23 2.3 Klassendiagramm Modellierungselemente für Klassendiagramme Klasse mit Struktur und Verhalten: Rechteck mit drei Abschnitten für Name, Attribute und Operationen Klasse Buch innere Struktur, Attribute Verhalten, Operationen titel: String Buch exemplareauflager():integer entleihe(exemplar) Syntax der Operationen wird später erklärt Attributnamen mit Angabe ihres Typs, d.h. des zulässigen Wertebereichs und der erlaubten Operationen. String=Zeichenfolge integer=ganzzahl Mehr dazu in der nächsten Vorlesung. Algorithmik 1, WS 2005/06, Folie 1-23

24 2.3 Klassendiagramm Klasse Buch Zur besseren Übersichtlichkeit können Teile in der Darstellung ausgeblendet werden. Vollständige Darstellung titel: String Buch Operationen ausgeblendet exemplareauflager(): integer entleihe(exemplar) Attribute ausgeblendet Buch Buch titel: String exemplareauflager(): integer entleihe(exemplar) Darstellung in Minimalform Buch Algorithmik 1, WS 2005/06, Folie 1-24

25 2.3 Klassendiagramm Klasse = Bauplan für Objekte einer Art Gemeinsamer Zustandsraum, gleiche Bestandteile (Objekt-Attribute) Gemeinsames Verhalten (Operationen) Zu einer Klasse gibt es i.a. mehrere Objekte, sogenannte Instanzen, Ausprägungen oder Exemplare Idealisierte Vorstellung: Klasse = Stempel, mit Platz für alle Attribute Objekt = Stempelabdruck, in Platzhalter sind konkrete Werte eingefüllt Klasse: Objekte: : als Objektkennzeichen :Buch Buch titel = Einführung Algorithmik titel: String :Buch titel = Analysis I Algorithmik 1, WS 2005/06, Folie 1-25

26 2.3 Klassendiagramm Klassenattribute ( class-scope attribute ) und Klassenoperationen ( classscope operation ) sind nicht an ein einzelnes Objekt, sondern an die Klasse als Ganzes gebunden. Sie werden unterstrichen dargestellt. Buch titel: String anzahl: Integer exemplareauflager(): Integer Entleihe(Exemplar) ermittleanzahl(): Integer Objektattribut Klassenattribut Objektoperation Klassenoperation, arbeitet auf Klassenattributen Im Beispiel: es gibt einen (globalen) Zähler, der angibt, wie viele Bücher insgesamt vorhanden sind. Das ist ein Attribut der Klasse Buch als Ganzes und hat mit dem einzelnen Buch-Objekt nichts zu tun. Algorithmik 1, WS 2005/06, Folie 1-26

27 2.3 Klassendiagramm Modellierungselemente für Klassendiagramme Klasse mit Struktur und Verhalten: Rechteck mit drei Abschnitten für Name, Attribute und Operationen Beziehungen können auftreten als Assoziationen Aggregationen/Kompositionen Spezialisierungen/Generalisierungen können genauer modelliert werden durch Multiplizitäten Rollennamen und Navigationspfeile Algorithmik 1, WS 2005/06, Folie 1-27

28 2.3 Klassendiagramm Zweistellige Assoziationen ( binary association ) beschreiben, wie Objekte von genau zwei Klassen untereinander in Beziehung stehen. Eigenschaften von Assoziationen: Multiplizität: Name: Rolle: Richtung: Wie viele Objekte der Quell-/Zielklasse stehen mindestens/höchstens miteinander in Beziehung Welche Bedeutung hat die Assoziation Welche Bedeutung hat die Klasse hinsichtlich der Assoziation bidirektional: In beide Richtungen navigierbar unidirektional: Nur in eine Richtung navigierbar Restriktionen: Einzuhaltende Bedingungen Notation für zweistellige Beziehungen: Linie zwischen den betreffenden Klassen Optional aber empfehlenswert: Assoziation gemäß Leserichtung benennen und mit Pfeil neben Namen anzeigen Algorithmik 1, WS 2005/06, Folie 1-28

29 2.3 Klassendiagramm Assoziationen zwischen Klassen der Bibliothek Assoziationsname Leserichtung Exemplar ist Exemplar von ist vorhanden als Buch Assoziationsname in umgekehrter Leserichtung hat entliehen hat beschädigt Bibliotheksmitglied Algorithmik 1, WS 2005/06, Folie 1-29

30 2.3 Klassendiagramm Darstellung weiterer Eigenschaften von Assoziationen Notation: Pfeil an entsprechendem Linienende gibt Navigationsrichtung an Anschreiben der Rolle als Sichtweise eines Objektes durch das gegenüberliegende Objekt. Natürliche Formulierung in Leserichtung. Benötigt vor allem bei reflexiver Assoziation. Restriktionen werden in {...} angegeben. berichtet an Untergebener Mitarbeiter Vorgesetzter {Vorgesetzter.Gehalt > Untergebener.Gehalt} Navigationsrichtung Rolle Restriktion Algorithmik 1, WS 2005/06, Folie 1-30

31 2.3 Klassendiagramm Multiplizitäten ( multiplicity ) geben an, wie viele Objekte der an der Assoziation beteiligen Klassen jeweils miteinander in Beziehung stehen können. Bei zweistelligen Beziehungen: O 1 c 1 c 2 O 2 Betrachte Assoziation zwischen Objektklassen O 1 und O 2, wobei jedes Ende der Assoziation eine Multiplizität hat. Multiplizität c 2 drückt für jeden Zeitpunkt t die Anzahl jener O 2 -Objekte aus, die mit genau einem O 1 - Objekt in Beziehung stehen müssen/dürfen. Entsprechendes gilt analog für Multiplizität c 1. Anschaulich: Man lese die Multiplizitäten in Leserichtung. Exemplar ist Exemplar von 1 Buch Algorithmik 1, WS 2005/06, Folie 1-31

32 2.3 Klassendiagramm Es gibt keine Standardmultiplizität, d.h. wenn keine angegeben ist, ist sie undefiniert. Notation im Klassendiagramm: beliebige Anzahl wird gekennzeichnet durch * ein Bereich wird spezifiziert durch.. fixe Anzahl (z.b. 1): 1 fixe Anzahl (z.b. 3): 3 Bereich (z.b. 0 oder mehr): * (oder 0..*) Bereich (z.b. 3 oder mehr): 3..* Bereich (z.b. 3-6): 3..6 Algorithmik 1, WS 2005/06, Folie 1-32

33 2.3 Klassendiagramm Klassendiagramm um Multiplizitäten ergänzt 1 Exemplar ist Exemplar von 1 Buch 0..* Exemplar 0..* 1 1..* ist Exemplar von ist vorhanden als 1 1 Buch hat entliehen hat beschädigt 1 Buch ist vorhanden als 1 oder mehr Exemplare Bibliotheksmitglied 1 Mitarbeiter entleiht 0..* Exemplare 1 Exemplar ist von keinem oder einem Mitarbeiter entliehen Algorithmik 1, WS 2005/06, Folie 1-33

34 2.3 Klassendiagramm Es ist auch möglich, Assoziationen durch Restriktionen miteinander in Beziehung zu setzen: Exemplar ist entweder Buch oder Zeitschrift Exemplar 1..* 1..* ist Exemplar von 1 {xor} ist Exemplar von Buch 1 Zeitschrift Entliehenes Exemplar ist immer auch bearbeitet Bibliotheksmitarbeiter 0..1 bearbeitet * {Untermenge} entleiht Exemplar Algorithmik 1, WS 2005/06, Folie 1-34

35 2.3 Klassendiagramm Mehrstellige Assoziationen ( n-ary association ) setzen Objekte von mehr als zwei Klassen zueinander in Beziehung. Sie werden stets als Assoziationsklasse dargestellt. Multiplizität ist jetzt die Anzahl von Objekten einer Klasse, mit denen eine fixe Kombination von Objekten der übrigen Klassen eine Beziehung eingehen kann. Beziehung zwischen Buch Exemplar und Buch 1 hier nicht dargestellt Exemplar Bibliotheksmitarbeiter Ein Exemplar eines Buchs darf von höchstens einem Mitglied entliehen werden. Algorithmik 1, WS 2005/06, Folie 1-35 entleiht Dauer: Zeit Ein Mitarbeiter darf von einem Buch nur höchstens ein Exemplar ausleihen.

36 2.3 Klassendiagramm Eine Aggregation ( aggregation ) ist eine spezielle Form einer Assoziation, die eine ist-teil-von-beziehung zwischen einem Ganzen und dessen Bestandteilen ausgedrückt. Sie wird durch eine leere Raute beim Ganzen am Ende der Assoziation dargestellt. Eine Komposition ( composition, composite aggregation ) ist eine Aggregation, bei der ein Bestandteil genau zu einem Ganzen gehört und nicht ohne das Ganze existieren kann. Dargestellt wird die Komposition durch eine gefüllte Raute. Abbildung Zeichnung * * Kapitel * 1 Autor Anzahl Seiten Buch Titel Verlag Aggregation Komposition Algorithmik 1, WS 2005/06, Folie 1-36

37 2.3 Klassendiagramm Generalisierung ( generalization ) ist eine taxonomische Beziehung zwischen einer spezialisierten Klasse (Unterklasse) und einer allgemeineren Klasse (Oberklasse), die Gemeinsamkeiten von Klassen in einer gemeinsamen Oberklasse zusammenfasst. Generalisierung führt zu einer Vererbungsbeziehung ( inheritance ): Die Unterklasse hat alle Eigenschaften der Oberklasse und kann zusätzlich eigene haben. Man notiert nur die zusätzlichen. Ein Objekt der Unterklasse kann an jeder Stelle verwendet werden, an der ein Objekt der Oberklasse verwendet werden darf. Mehrfachvererbung (mehrere Oberklassen) ist in UML erlaubt. Kann es von der Oberklasse selbst keine Objekte geben, spricht man von einer abstrakten Klasse. Algorithmik 1, WS 2005/06, Folie 1-37

38 2.3 Klassendiagramm Generalisierung und Spezialisierung: Bib-Mitglied Adresse Literaturwerk Titel Autor Verlag Namen abstrakter Klassen werden kursiv dargestellt. Spezialisierung Generalisierung Spezialisierung Generalisierung Bib-Mitarbeiter Adresse Büro, Telefon, , Gehaltskonto Buch Titel Autor Verlag Auflage Zeitschrift Titel Autor Verlag Jahrgang Algorithmik 1, WS 2005/06, Folie 1-38

39 2.3 Klassendiagramm Notation im Klassendiagramm: Gemeinsam vorhandene Attribute werden in der Oberklasse notiert. Literaturwerk Titel Autor Verlag Literaturwerk Titel Autor Verlag Buch Zeitschrift Buch Zeitschrift Auflage Jahrgang Auflage Jahrgang Darstellungsmöglichkeit 1 Darstellungsmöglichkeit 2 Unterklassen erben die Attribute der Oberklasse. Algorithmik 1, WS 2005/06, Folie 1-39

40 2.4 Objektdiagramm Bis jetzt Klassendiagramm jetzt Objektdiagramm Ein Objektdiagramm stellt eine Menge von Objekten, deren Struktur und deren Beziehungen untereinander zu einem bestimmten Zeitpunkt dar. Objektverbindungen ( link ) repräsentieren die Ausprägungen von Assoziationen. Darstellungselement im Objektdiagramm: Objekte sind Rechtecke mit Namensfeld und Attributfeld Das Namensfeld enthält den optionalen Namen des dargestellten Objekts und hiervon durch ":" getrennt dessen Objektklasse. Beides wird unterstrichen. Die Darstellung der Attribute kann ausgeblendet werden. Objektverbindungen sind Linien zwischen den Objekten Algorithmik 1, WS 2005/06, Folie 1-40

41 2.4 Objektdiagramm Exemplar 1..* ist Exemplar von 1 Buch Klassendiagramm Objektdiagramm e1:exemplar InvNr = 10 e2:exemplar InvNr = 32 :Buch e3:exemplar InvNr = 78 Algorithmik 1, WS 2005/06, Folie 1-41

42 2.5 Interaktionsdiagramm Diagramme von UML (1.x) Strukturdiagramm WAS? Verhaltensdiagramme ( behavior diagrams ) WIE? Implementierungsdiagramme ( implementation diagrams ) Geschäftsvorfälle (1) Anwendungsfalldiagramm ( use case diagram ) (2) Klassendiagramm ( class diagram ) (3) Sequenzdiagramm ( sequence diagram ) (4) Kollaborationsdiagramm ( collaboration diagram ) (5) Zustandsdiagramm ( statechart diagram ) (6) Aktivitätsdiagramm ( activity diagram ) (7) Komponentendiagramm ( component diagram ) (8) Verteilungsdiagramm ( deployment diagram ) Gegenstand, statisch Dienste, dynamisch Interaktionsdiagramme ( interaction diagrams ) Dienste, statisch Gegenstand, dynamisch Algorithmik 1, WS 2005/06, Folie 1-42

43 2.5 Interaktionsdiagramm Problem Validierung Verifikation Problemanalyse Spezifikation Algorithmenentwurf Algorithmus WIE transformiert man die Eingabe in die Ausgabe? Vorgehen/Verfahren steht im Mittelpunkt. Dies ist ein Schwerpunkt der Vorlesung Algorithmik 1 Hier Außensicht: Zusammenspiel der Objekt, nicht internes Funktionieren der Objekte Computer, Von-Neumann-Rechner Ausführung Lösung Algorithmik 1, WS 2005/06, Folie 1-43

44 2.5 Interaktionsdiagramm Schaubild von Objekten und Klassen ist nur eine statische Beschreibung statisches Modell Geschäftsprozesse und Abläufe können so nicht dargestellt werden. Zur vollständigen Systembeschreibung gehören noch Szenarien ( dynamisches Modell) Kollaborationsdiagramm Schwerpunkt auf dem Zusammenwirken von Objekten (Berücksichtigung zeitlicher Abhängigkeiten zweitrangig) Sequenzdiagramm Zum Hervorheben des dynamischen Verhaltens und der zeitlichen Abläufe des Zusammenwirkens Szenarien beziehen sich stets auf Objekte Algorithmik 1, WS 2005/06, Folie 1-44

45 2.5 Interaktionsdiagramm Kollaborationsdiagramm ( collaboration diagram ) Eine Kollaboration beschreibt die Gesamtheit der Objekte, die bei der Ausführung einer bestimmten Aufgabe (eines konkreten Anwendungsfalles) interagieren, einschließlich der Verbindungen zwischen ihnen. Eine Folge von Nachrichten zwischen verbundenen Objekten beschreibt eine Interaktion ( interaction ). Nachricht: Aktivierung/Kommando an Objekt Notation: Objekte werden wie im Objektdiagramm dargestellt Ggf. Akteur als Auslöser des Anwendungsfalls ins Diagramm aufnehmen Linien zwischen Objekten zeigen den Austausch von Nachrichten an, wobei ein Name die Nachricht und eventuelle Parameter beschreibt und ein Pfeil die Richtung der Sendung angibt. Eine Nummerierung der Nachrichten zeigt deren Abfolge an. Algorithmik 1, WS 2005/06, Folie 1-45

46 2.5 Interaktionsdiagramm Kollaborationsdiagramm zum Entleihen eines Exemplars 2: ausgeben Exemplar Buch 2.1: übergeben 1: anfragen entleihen Mitglied BuchEntleiher Algorithmik 1, WS 2005/06, Folie 1-46

47 2.5 Interaktionsdiagramm Sequenzdiagramm ( sequence diagram ) Instanzen Nachrichtenaustausch (Rückmeldung kann weggelassen werden) o:c action(parameter) Lebenslinie des Objekts Aktivitätsphase Zeit Zerstörung des Objekts Algorithmik 1, WS 2005/06, Folie 1-47

48 2.5 Interaktionsdiagramm Exemplar eines Buchs entleihen Buch Exemplar Mitglied Schnittstelle entleihe Anfrage Ausgabe Übergabe Algorithmik 1, WS 2005/06, Folie 1-48

49 2.6 Zustandsdiagramm Zustandsdiagramm ( statechart diagram ) Zustandsdiagramme (genauer: Zustandsübergangsdiagramme) legen das Verhalten eines Objekts über die Zeit fest. Sie zeigen die mögliche Lebensgeschichte von Objekten einer gegebenen Klasse auf: Zustände, in denen sich die Instanzen einer Klasse befinden können. Mögliche Zustandsübergänge von einem Zustand zum anderen. Ereignisse, die Zustandsübergänge verursachen. Operationen, die in Zuständen bzw. im Zuge von Übergängen ausgeführt werden. Sie beschreiben somit das ganze oder auch nur Teile des möglichen von außen beobachtbaren Verhaltens von Objekten einer Klasse. Man spricht von Intra-Objekt-Verhalten Algorithmik 1, WS 2005/06, Folie 1-49

50 2.6 Zustandsdiagramm Zustandsdiagramm für ein Exemplar Startzustand erfassen() [Exemplar defekt] / entfernen() präsent Endzustand entleihe() zurückgeben() / nächsten Interessenten benachrichtigen [Exemplar verloren] / entfernen() ausgeliehen entry / entliehen Algorithmik 1, WS 2005/06, Folie 1-50

51 2.6 Zustandsdiagramm Elemente eines Zustandsdiagramms (1) Der Zustand ( state ) eines Objektes wird beschrieben durch: Aktuelle Belegung seiner Attribute und Beziehungen. Einem Zustand wird eine Zeitdauer unterstellt. Im Diagramm: Zustand als Abstraktion zulässiger Attributwerte und Beziehungen eines Objekts. Im Beispiel präsent, ausgeliehen Notation für Zustände: Zustand Finalzustand Pseudozustände: Z Initialzustand, Gabelung, Vereinigung Algorithmik 1, WS 2005/06, Folie 1-51

52 2.6 Zustandsdiagramm Elemente eines Zustandsdiagramms (2) Ein Ereignis ( event ) ist ein Stimulus, der von einem Objekt auf ein anderes einwirkt. (Nachrichtensendung) Ereignisse sind zeitlich punktuell, haben also keine messbare Dauer. Im Beipiel: erfassen(), zurückgeben() Ein Zustandsübergang ( transition ) ist ein durch ein Ereignis ausgelöster Zustandswechsel. Optional kann eine Überwachungsbedingung angegeben werden: Der Zustandsübergang kommt nur zustande, falls die Bedingung erfüllt ist. Notation für Zustandsübergänge: Pfeile mit Namen des auslösenden Ereignistyps. Eventuelle Aktionen folgen nach einem Schrägstrich. Bedingte Übergänge: Bedingung in eckigen Klammern. Algorithmik 1, WS 2005/06, Folie 1-52

53 2.6 Zustandsdiagramm Eine Aktivität ist die Ausführung eines Operators. Der Aktivität wird eine zeitliche Ausdehnung unterstellt. Eine Aktivität ist stets mit einem Zustand verbunden. Sie beginnt bei Eintritt in den Zustand und terminiert entweder von selbst oder durch Verlassen des Zustandes. Eine Aktion ( action ) ist eine atomare, nicht unterbrechbare Operatorausführung. Sie gilt als zeitlich punktuelle Ermittlung eines Funktionsergebnisses. Sie kann mit einem Zustand oder mit einem Ereignis verbunden sein. Notation für Aktivitäten/Aktionen innerhalb eines Zustandes: entry / aktion Aktion bei Eintritt in den Zustand. exit / aktion Aktion bei Verlassen des Zustands. do / aktivität Aktivität (Parameter sind erlaubt) Algorithmik 1, WS 2005/06, Folie 1-53

54 2.7 Entwurfsregeln Sechs Schritte zum statischen Modell 1. Klassen identifizieren Klassendiagramme, Kurzbeschreibungen 2. Assoziationen identifizieren Klassendiagramme vervollständigen 3. Attribute identifizieren Klassendiagramme vervollständigen 4. Unter/Ober-Klassenbeziehungen identifizieren Klassendiagramme vervollständigen (unnötige Beschreibungen streichen) 5. Assoziationen vervollständigen Klassendiagramme, Objektdiagramme 6. Attribute spezifizieren Attributspezifikationen und Beschreibungen Algorithmik 1, WS 2005/06, Folie 1-54

55 2.7 Entwurfsregeln Drei Schritte zum dynamischen Modell 1. Szenarien erstellen Sequenzdiagramme, Kollaborationsdiagramme 2. Zustandsautomat erstellen Zustandsdiagramm 3. Operationen beschreiben Klassendiagramme vervollständigen, fachliche Beschreibung der Operationen, Aktivitätsdiagramme Algorithmik 1, WS 2005/06, Folie 1-55

Unified Modeling Language (UML)

Unified Modeling Language (UML) Kirsten Berkenkötter Was ist ein Modell? Warum Modellieren? Warum UML? Viele, viele Diagramme UML am Beispiel Was ist ein Modell? Ein Modell: ist eine abstrakte Repräsentation eines Systems, bzw. ist eine

Mehr

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel. EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick mtr@is.informatik.uni-kiel.de www.is.informatik.uni-kiel.de/~mtr FRAGEN / ANMERKUNGEN Vorlesung Neue Übungsaufgaben MODELLIERUNG

Mehr

Gliederung des Vortrages

Gliederung des Vortrages Gliederung des Vortrages Unified Modeling Language Rational Rose Sergej Schwenk Oktober 1999 0. Einführung 1. Historie 2. Der Entwicklungsprozeß 3. UML 3.1 Anwendungsfalldiagramme 3.2 Klassendiagramme

Mehr

J.2 Objektorientiertes Modellieren mit UML

J.2 Objektorientiertes Modellieren mit UML Modellieren mit UML Objektorientiertes Modellieren mit UML 2002 Prof. Dr. Rainer Manthey Informatik II 1 UML: Übersicht in den 1980er Jahren: Entstehen einer Vielzahl objektorientierter Entwurfsmethoden

Mehr

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

Modellieren mit der Unified Modeling Language: Klassen- und Objektdiagramme. 11. November 2014 Modellieren mit der Unified Modeling Language: Klassen- und Objektdiagramme 11. November 2014 Überblick Was ist die Unified Modeling Language (UML)? die Standardmodellierungssprache für Softwaresysteme

Mehr

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

09.01.14. Vorlesung Programmieren. Unified Modeling Language (UML) Unified Modeling Language (UML) Unified Modeling Language (UML) Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Unified Modeling Language (UML) Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Unified Modeling Language (UML)

Mehr

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

Einführung in UML. Überblick. 1. Was ist UML??? 2. Diagrammtypen. 3. UML Software. Was ist ein Modell??? UML Geschichte,... Vorlesung GIS Einführung in UML Stephan Mäs 28. Mai 2009 Überblick 1. Was ist UML??? Was ist ein Modell??? UML Geschichte,... 2. Diagrammtypen Schwerpunkt: Klassendiagramme 3. UML Software Arbeitsgemeinschaft

Mehr

Klassendiagramm. (class diagram)

Klassendiagramm. (class diagram) : Klassendiagramm http:///topic95.html Klassendiagramm (class diagram) Klassendiagramm Objektdiagramm Komponentendiagramm Kompositionsstrukturdiagramm Verteilungsdiagramm Einstieg Paketdiagramm Aufbau

Mehr

Inhalte der Veranstaltung

Inhalte der Veranstaltung Inhalte der Veranstaltung 5. Anwendungssysteme 5-4 6. Entwurf von Anwendungssystemen 6.1 Datenmodellierung 6-1 6.2 Geschäftsprozessmodellierung 6-32 6.3 Entwurf von Datenbanken 6-79 6.4 Nutzung von Datenbanken

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Software Engineering in der Praxis Praktische Übungen Meitner, Spisländer FAU Erlangen-Nürnberg Objektorientiertes Design 1 / 16 Objektorientiertes Design Matthias Meitner Marc Spisländer Lehrstuhl für

Mehr

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

Einführung in die Informationsverarbeitung Teil Thaller. Stunde VII: Planen und Realisieren Einführung in die Informationsverarbeitung Teil Thaller Stunde VII: Planen und Realisieren Manfred Thaller, Universität zu Köln Köln 18. Dezember 2014 Rekapitulation Der Gang der Argumentation 1. Der Rohstoff:

Mehr

Orientierte Modellierung mit der Unified Modeling Language

Orientierte Modellierung mit der Unified Modeling Language UML-Basics: Einführung in Objekt- Orientierte Modellierung mit der Unified Modeling Language Michael Hahsler Ziel dieses Seminars Verständnis von Objekt-Orientierung Was sind Klassen? Was ist Vererbung?

Mehr

Software-Engineering

Software-Engineering FH Wedel Prof. Dr. Sebastian Iwanowski SWE43 Folie 1 Software-Engineering Sebastian Iwanowski FH Wedel Kapitel 4: Systemanalyse Teil 3: Der Systemanalysestandard UML FH Wedel Prof. Dr. Sebastian Iwanowski

Mehr

Einführung in die Unified Modeling Language (UML)

Einführung in die Unified Modeling Language (UML) Einführung in die Unified Modeling Language (UML) Hausarbeit zum Proseminar Datenbanken Wintersemester 2002/03 Seminarleitung: Dr. Christoph Draxler Verfasserin: Michaela Geierhos Centrum für Informations-

Mehr

Übersicht der UML Diagramme

Übersicht der UML Diagramme Dieser Fachbeitrag ist ein Service der InfraSoft Profis für Ihre professionelle Softwareentwicklung. Übersicht der UML Diagramme Die Unified Modeling Language (UML) ist eine Sprache zur Beschreibung von

Mehr

Modellierung von Web Anwendungen mit UML

Modellierung von Web Anwendungen mit UML Web Engineering-Seminar Modellierung von Web Anwendungen mit UML Yu Gan Yihui He 1 Gliederung 1. UML Grundlagen 1.1 Einführung 1.2 UML-Bausteine 1.3 Darstellung in Diagrammen 2. Modellierung von Web Anwendung

Mehr

RUP Analyse und Design: Überblick

RUP Analyse und Design: Überblick Inhaltsverzeichnis Übersicht [, 2, 8] 3. Vorgehensweise............................... 5 2 Planungsmethoden 37 2. Definitionsphase.............................. 6 3 Rational Unified Process [5, 6] und

Mehr

UML - Tutorial. Hubert Baumgartner. www.inso.tuwien.ac.at

UML - Tutorial. Hubert Baumgartner. www.inso.tuwien.ac.at UML Tutorial UML - Tutorial SS 06 Hubert Baumgartner www.inso.tuwien.ac.at INSO - Industrial Software Institut für Rechnergestützte Automation Fakultät für Informatik Technische Universität Wien Inhalt

Mehr

Softwaretechnik SS 2006

Softwaretechnik SS 2006 Softwaretechnik SS 2006 7. Vorlesungseinheit Prof. Dr. Urs Andelfinger Darmstadt, 22. Mai 2006 Softwaretechnik (SWT) Vorlesung und Praktikum SS 2006 Inhaltsübersicht SW-Management SW-Entwicklung SW-Qualitätsmgmt.

Mehr

Klassendiagramm. Kurzer Überblick über UML - Stand 2006. BlaBla

Klassendiagramm. Kurzer Überblick über UML - Stand 2006. BlaBla BlaBla Diese Kennzeichnungen sind nur Erläuterungen und nicht Bestandteil des Diagramms Quelle: P.Grässle, H.Baumann, P.Baumann, UML projektorientiert, Galileo Verlag, 2003 21 Primäre Begriffe Kapselung

Mehr

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

Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0. Für den Einsatz in der Praxis Guido de Melo 5.2.2007 Fachvortrag, Uni Ulm UML 2.0 Für den Einsatz in der Praxis Seite 2 Überblick 1. Ziele 2. Warum das alles? 3. Was ist UML 4. Diagrammarten 5. Umfeld Seite 3 1. Ziele 1. Ziele dieses

Mehr

Softwaretechnik Unified Modeling Language (UML)

Softwaretechnik Unified Modeling Language (UML) Softwaretechnik Unified Modeling Language () Karsten Weicker, Nicole Weicker HTWK Leipzig, FHTW Berlin David Shayne: She s so charismatic, and she s brilliant and beautiful. I mean, a real artist, and,

Mehr

Grundbegriffe der Objektorientierung

Grundbegriffe der Objektorientierung Grundbegriffe der Objektorientierung Objekt Merkmale Zustand Verhalten Lebenszyklus Beziehungen zwischen Objekten Kategorisierung von Objekten Grundbegriffe der Objektorientierung Objekt Merkmale Zustand

Mehr

Analyse und Entwurf objektorientierter Systeme

Analyse und Entwurf objektorientierter Systeme Analyse und Entwurf objektorientierter Systeme Teil 3 Modellbildung in der Analysephase 3.1 Statische und dynamische Notationselemente Modul WI111: Objektorientierte Programmierung Fachrichtung Wirtschaftsinformatik

Mehr

Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny

Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny Programmiersprache 2 (C++) Prof. Dr. Stefan Enderle NTA Isny 3. UML Klassendiagramm Nachtrag 3.1 Einführung UML UML ist eine standardisierte Sprache zur Modellierung von Systemen. In UML werden graphische

Mehr

Programmieren in Java

Programmieren in Java FG TECHNISCHE INFORMATIK V JV A00 00 TH 0 Programmieren in Java Anhang A A. Modellierung von OOP-Programmen A.. Klassenkategorien A.2. Klassembeziehungen A.3. Klassendiagramm und Sequenzdiagramm der UML

Mehr

Software Engineering in der Praxis

Software Engineering in der Praxis Inhalt Nachlese Aufgaben Literatur Software Engineering in der Praxis Praktische Übungen Inhalt Nachlese Aufgaben Literatur Marc Spisländer Dirk Wischermann Lehrstuhl für Software Engineering Friedrich-Alexander-Universität

Mehr

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

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

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

UML Notation für objektorientierte Systeme

UML Notation für objektorientierte Systeme UML Notation für objektorientierte Systeme Die Unified Modeling Language (UML) ist eine graphische Notation, eine visuelle Modellierungssprache [UML Referenz], die es erlaubt die Artefakte eines Softwaresystems

Mehr

Software Engineering Klassendiagramme Einführung

Software Engineering Klassendiagramme Einführung Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt

Mehr

Objektorientierte Software-Entwicklung

Objektorientierte Software-Entwicklung Objektorientierte Software-Entwicklung Priv.- Doz Dr. Rolf Hennicker 04.10.2002 Kapitel 2 Objektorientierte Modellierungstechniken Kapitel 2 Objektorientierte Modellierungstechniken 2 Ziele Klassendiagramme

Mehr

3. Tutorium zu Softwaretechnik I

3. Tutorium zu Softwaretechnik I 3. Tutorium zu Softwaretechnik I Aktivitäts-, Sequenz- & Zustandsdiagramme Michael Hoff 20.05.2014 INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION KIT Universität des Landes Baden-Württemberg und

Mehr

24 Transformation der Anforderungsspezifikation

24 Transformation der Anforderungsspezifikation 271 24 Transformation der Anforderungsspezifikation 24.1 Einleitung Bei der Softwarespezifizierung wird die Anforderungsspezifikation überarbeitet, weiter strukturiert und präzisiert, um eine Basis für

Mehr

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1

Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Objektorientierter Software-Entwurf Die Unified Modeling Language 4 1 Die Unified Modeling Language Die UML (hier in der Version 0.9) ist ein Satz von Notationen zur Beschreibung objektorientierter Softwaresysteme.

Mehr

Analyse und Modellierung von Informationssystemen

Analyse und Modellierung von Informationssystemen Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2014/2015 1 / 29 UML Einführung Klassendiagramme in der UML Relationen zwischen Klassen Einführung:

Mehr

Softwareentwicklung mit UML

Softwareentwicklung mit UML Softwareentwicklung mit UML Die Unified Modeling Language im Projekteinsatz 2.12.2003, Seite 1 Übersicht 1 Einleitung 2 Die Unified Modeling Language (UML) 3 Vorgehensmodelle und UML 4 Ausblick 4.1 UML

Mehr

UML mit Enterprise Architect

UML mit Enterprise Architect Matthias Fritz UML mit Enterprise Architect Trainingsunterlage - 6. überarbeitete Auflage XEN Information Systems GmbH, Wien Der Autor Dipl.-Ing. (FH) Matthias FRITZ hat ein Studium der Informationstechnik

Mehr

Modellierungstechniken im Softwaredesign. Praxisprojekt [ai] Control WS 2011/2012 Lara Baschour und Anne Heiting

Modellierungstechniken im Softwaredesign. Praxisprojekt [ai] Control WS 2011/2012 Lara Baschour und Anne Heiting Modellierungstechniken im Softwaredesign Praxisprojekt [ai] Control WS 2011/2012 Lara Baschour und Anne Heiting Was ist Modellierung? Modell = Ein Modell ist eine Repräsentation eines Systems von Objekten,

Mehr

Methodische objektorientierte Softwareentwicklung

Methodische objektorientierte Softwareentwicklung Methodische objektorientierte Softwareentwicklung Eine Integration klassischer und moderner Entwicklungskonzepte von Mario Winter 1. Auflage Methodische objektorientierte Softwareentwicklung Winter schnell

Mehr

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Aufgabe 3. Assoziation zwischen

Mehr

Requirements Engineering I

Requirements Engineering I Norbert Seyff Requirements Engineering I UML Unified Modeling Language! 2006-2012 Martin Glinz und Norbert Seyff. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen

Mehr

Objektorientierte Analyse (OOA) Logischer Aufbau (statische Sicht)

Objektorientierte Analyse (OOA) Logischer Aufbau (statische Sicht) Inhalte Klassen(-Diagramm) Objekte Assoziation Multiplizität Aggregation Vererbung Logischer Aufbau (statische Sicht) OOA-Muster Model-View-Controller Konzept (MVC) - noch in Arbeit Seite 1 Klassen Eine

Mehr

Modellierung von Verhalten OOPM, Ralf Lämmel

Modellierung von Verhalten OOPM, Ralf Lämmel Wer ist das dann wieder? Modellierung von Verhalten OOPM, Ralf Lämmel 878 Strukturelle Modellierung vs. Verhaltensmodellierung Klassendiagramm für die Modellierung einer Universität Aktivitätsdiagramm

Mehr

Folien zum Textbuch. Kapitel 2: Planung, Entwicklung und Betrieb von IS. Teil 4: Modellierung von betrieblichen Informationssystemen

Folien zum Textbuch. Kapitel 2: Planung, Entwicklung und Betrieb von IS. Teil 4: Modellierung von betrieblichen Informationssystemen Folien zum Textbuch Kapitel 2: Planung, Entwicklung und Betrieb von IS Teil 4: Modellierung von betrieblichen Informationssystemen Textbuch-Seiten 209-245 WI Planung, Entwicklung und Betrieb von IS IS-Modellierung

Mehr

Systemanalyse. - Folien zur Vorlesung für AI3 im Sommersemester 2010 - -Teil 4 -

Systemanalyse. - Folien zur Vorlesung für AI3 im Sommersemester 2010 - -Teil 4 - Systemanalyse - Folien zur Vorlesung für AI3 im Sommersemester 2010 - -Teil 4 - Hans-Jürgen Steffens (by courtesy of Prof. Dr. Thomas Allweyer) Fachbereich Informatik und Mikrosystemtechnik Fachhochschule

Mehr

1 Überblick 1. 4 Literatur 21

1 Überblick 1. 4 Literatur 21 Dieses Dokument befasst sich mit ausgewählten Diagrammen der UML. Inhaltsverzeichnis 1 Überblick 1 2 Strukturdiagramme 2 2.1 Klassendiagramm....................................... 2 2.2 Objektdiagramm........................................

Mehr

Darstellung von Assoziationen

Darstellung von Assoziationen Darstellung von Assoziationen Wie bereit aus Kapitel 1 bekannt, beschreiben Assoziationen Beziehungen zwischen Objekten, die zwischen Klassen modelliert werden. Zunächst soll die Modellierung binärer Assoziationen

Mehr

Klausurvorbereitung Software Engineering I @ TFH Berlin

Klausurvorbereitung Software Engineering I @ TFH Berlin Teil 1 Einführung in Software Engineering Definition: Was ist Software Engineering? Unter Software Engineering (SE) versteht man den systematischen, disziplinierten und in seiner Größe abschätzbaren Ansatz,

Mehr

SEQUENZDIAGRAMM. Christoph Süsens

SEQUENZDIAGRAMM. Christoph Süsens SEQUENZDIAGRAMM Christoph Süsens DEFINITION Das Sequenzdiagramm gibt Auskunft darüber: Welche Methoden für die Kommunikation zwischen ausgewählten Objekten zuständig sind. Wie der zeitliche Ablauf von

Mehr

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2 EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0 EDV Kurs 13/2 Inhaltsverzeichnis 1 Objekte... 1 2 Klassen... 3 2.1 Beziehungen zwischen Klassen... 4 2.1.1 Vererbung... 4 2.1.2

Mehr

Softwaretechnik. Fomuso Ekellem WS 2011/12

Softwaretechnik. Fomuso Ekellem WS 2011/12 WS 2011/12 Weiteren Verlauf der Vorlesung 31.10.2011(2 Std) OO Vorgehensmodelle, UML, Teamarbeit, Gruppenbildung,. 07.11.2011(2,5Std) Projektvorstellung, Planungsphase 14.11.2011(2 Std) Angebotspräsentation,

Mehr

Software-Architektur-Modellierung mit UML

Software-Architektur-Modellierung mit UML Software-Architektur-Modellierung mit UML Prof. Mario Jeckle Fachhochschule Furtwangen mario@ http://www. GI Arbeitskreis Software-Architekturen, Oldenburg, 2004-02-11 Vert.- Diagramm Komm.- Diagramm Modellierung

Mehr

Unified Modeling Language. Lerneinheit 2. UML - Diagramme. Prof. Dr. D. Frosch-Wilke Prof. Dr. U. Samberg. überarbeitet UML 2.0

Unified Modeling Language. Lerneinheit 2. UML - Diagramme. Prof. Dr. D. Frosch-Wilke Prof. Dr. U. Samberg. überarbeitet UML 2.0 Lerneinheit 2 UML - Diagramme Diagramme in der UML Wesentlicher Bestandteil der Modellbildung Graphen, wobei fundamentale Modellelemente (z.b. Klassen, Objekte, Zustände) die Knoten und Beziehungen zwischen

Mehr

6. Modellierung von Informationssystemen. 6.1 Einleitung 6.2 Konzeptuelles Modell 6.3 OASIS Spezifikation 6.4 Execution Model 6.

6. Modellierung von Informationssystemen. 6.1 Einleitung 6.2 Konzeptuelles Modell 6.3 OASIS Spezifikation 6.4 Execution Model 6. 6. Modellierung von Informationssystemen Spezialseminar Matr. FS 2000 1/10 Volker Dobrowolny FIN- ITI Quellen: Oscar Pastor, Jaime Gomez, Emilio Insfran, Vicente Pelechano The OO-Method approach for information

Mehr

Techniken der Projektentwicklung

Techniken der Projektentwicklung diagramme Termin 6 Denken in Schnittstellen Was nun? Einführung Bisher kennengelernt: Modellierung auf Konzeptlevel Usecase-Diagramme Domänenmodelle Jetzt: Übergang zu Spezifikation und Implementierung!

Mehr

Motivation. Motivation

Motivation. Motivation Vorlesung Modellierung nebenläufiger Systeme Sommersemester 2012 Universität Duisburg-Essen Was sind nebenläufige Systeme? Ganz allgemein: Systeme, bei denen mehrere Komponenten/Prozesse nebenläufig arbeiten

Mehr

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

Systemanalyse. - Seminar für AI/DM 3 im Wintersemester 2004/05 - Systemanalyse - Seminar für AI/DM 3 im Wintersemester 2004/05 - Prof. Dr. Hans-Jürgen Steffens (by courtesy of Prof. Dr. Thomas Allweyer) Fachbereich Informatik und Mikrosystemtechnik Fachhochschule Kaiserslautern,

Mehr

Software-Design. Definition Der Prozess Prinzipien Strategien und Methoden Notationen. Aufgabe. HS Mannheim

Software-Design. Definition Der Prozess Prinzipien Strategien und Methoden Notationen. Aufgabe. HS Mannheim Software- Der Strategien und ist der zum Definieren der Architektur, der Komponenten, der Schnittstellen und anderer Charakteristika (Datenstrukturen, Algorithmen etc.) eines Systems oder einer Komponente

Mehr

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Smalltalk CLOS Ada 9 C++ Objektorientierte Softwareentwicklung Object Pascal Java Oberon-2 Frage: Die Bibliothek der Fachhochschule

Mehr

Softwaretechnik. Fomuso Ekellem WS 2011/12

Softwaretechnik. Fomuso Ekellem WS 2011/12 WS 2011/12 Inhalt Wiederholung Weitere Begriffe Programmierung im Großem (Programmierung von Software als Ganzes) Prozess-Modelle 2 Wiederholung: Prozesse Prozesse sind hierarchische Gruppierungen von

Mehr

Unternehmensmodellierung

Unternehmensmodellierung Josef L. Staud Unternehmensmodellierung Objektorientierte Theorie und Praxis mit UML 2.0 4ü Springer Inhaltsverzeichnis EINLEITUNG 1 1.1 Unternehmensmodellierung 1 1.2 Objektorientierung als solche 6 1.3

Mehr

Objektorientierte Analyse

Objektorientierte Analyse Objektorientierte Analyse 1) Systemanalyse Einführung Prof. Dr. rer. nat. habil. Uwe Aßmann Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie Fakultät für Informatik TU Dresden

Mehr

Objektorientierte Software-Entwicklung

Objektorientierte Software-Entwicklung Objektorientierte Software-Entwicklung Priv.- Doz Dr. Rolf Hennicker 04.10.2002 Kapitel 3 Objektorientierte Analyse Kapitel 3 Objektorientierte Analyse 2 Ziele Eine Anwendungsfall-Analyse für ein zu entwickelndes

Mehr

a) In der Aufgabenstellung war ein möglichst einfaches Klassendiagramm gefordert. Abb. 1 zeigt eine mögliche Lösung. * * * Aufbau 1..

a) In der Aufgabenstellung war ein möglichst einfaches Klassendiagramm gefordert. Abb. 1 zeigt eine mögliche Lösung. * * * Aufbau 1.. Software Engineering I Musterlösungen zur Klausur vom 3.7.2004 Aufgabe a) In der Aufgabenstellung war ein möglichst einfaches Klassendiagramm gefordert. Abb. zeigt eine mögliche Lösung. Turnier sportart

Mehr

Auktion name adresse pseudonym emailadresse /bewertungszahl. Gebot. höhe zeitpunkt bieter. initiiert

Auktion name adresse pseudonym emailadresse /bewertungszahl. Gebot. höhe zeitpunkt bieter. initiiert Software Engineering I Musterlösungen zur Klausur vom 2.8.2003 Aufgabe a) In der Aufgabenstellung war ein möglichst einfaches Klassendiagramm gefordert. Daher verzichten wir auf Klassen wie Sofortkauf,

Mehr

Algorithmen und Datenstrukturen 07

Algorithmen und Datenstrukturen 07 5. Dezember 2011 1 Besprechung Blatt 6 Fragen 2 Vererbung Allgemein abstract Interfaces 3 Unified Modeling Language (UML) Ablaufdiagramme Klassendiagramme Anwendungsfalldiagramme 4 Vorbereitung Blatt 7

Mehr

Einführung in die Programmierung mit Java. Hörsaalübung

Einführung in die Programmierung mit Java. Hörsaalübung Einführung in die Programmierung mit Java Hörsaalübung Folie 1 Grundlagen der Objektorientierung Seit Anfang der Neunzigerjahre Standardmethode der Softwareentwicklung. Die OOP Objektorientierte Programmierung

Mehr

Software Engineering. 7. Sequenz- und Zustandsdiagramme. Franz-Josef Elmer, Universität Basel, HS 2012

Software Engineering. 7. Sequenz- und Zustandsdiagramme. Franz-Josef Elmer, Universität Basel, HS 2012 Software Engineering 7. Sequenz- und Zustandsdiagramme Franz-Josef Elmer, Universität Basel, HS 2012 Software Engineering: 7. Sequenz- und Zustandsdiagramme 2 Sequenzdiagramme Häufigstes Verhaltensdiagramm

Mehr

3. Konzepte der objektorientierten Programmierung

3. Konzepte der objektorientierten Programmierung 3. Konzepte der objektorientierten Programmierung 3.1 Basiskonzepte 3.2 Generalisierung / Spezialisierung 3.3 Aggregation 3.4 Assoziation 3.5 Nachrichten 3.6 Polymorphismus 3. Konzepte der Objektorientierung

Mehr

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Aufgabe 3. Assoziation

Mehr

BEDEUTUNG VON AUSGANGSZUSTÄNDEN BEIM TESTEN VON OBJEKTORIENTIERTER SOFTWARE IMPORTANCE OF INITIAL STATES BY TESTING OF OBJECT-ORIENTED SOFTWARE

BEDEUTUNG VON AUSGANGSZUSTÄNDEN BEIM TESTEN VON OBJEKTORIENTIERTER SOFTWARE IMPORTANCE OF INITIAL STATES BY TESTING OF OBJECT-ORIENTED SOFTWARE CO-MAT-TECH 2004 14-15 October 2004 BEDEUTUNG VON AUSGANGSZUSTÄNDEN BEIM TESTEN VON OBJEKTORIENTIERTER SOFTWARE IMPORTANCE OF INITIAL STATES BY TESTING OF OBJECT-ORIENTED SOFTWARE Roman NAGY External doctorand

Mehr

4. AuD Tafelübung T-C3

4. AuD Tafelübung T-C3 4. AuD Tafelübung T-C3 Simon Ruderich 17. November 2010 Arrays Unregelmäßige Arrays i n t [ ] [ ] x = new i n t [ 3 ] [ 4 ] ; x [ 2 ] = new i n t [ 2 ] ; for ( i n t i = 0; i < x. l e n g t h ; i ++) {

Mehr

Bei Sitzungen im Team oder mit dem Kunden erleichtert eine grafische Darstellung des Software-Systems die Kommunikation.

Bei Sitzungen im Team oder mit dem Kunden erleichtert eine grafische Darstellung des Software-Systems die Kommunikation. UML Was ist UML UML (=Unified Modeling Language) ist eine weit verbreitete, standardisierte Notationsschrift, die das grafische Darstellen von Software-Systemen ermöglicht und dadurch eine grosse Unterstützung

Mehr

Kapitel 3. Objektorientierte Analyse

Kapitel 3. Objektorientierte Analyse Seite 1 Kapitel 3 Objektorientierte Analyse Prof. Dr. Rolf Hennicker 23.11.2010 Ziele Seite 2 Eine Anwendungsfall-Analyse für ein zu entwickelndes System durchführen können. Schrittweise ein statisches

Mehr

Objektorientierte Spezifikation mit UML

Objektorientierte Spezifikation mit UML Objektorientierte Spezifikation mit UML Was ist objektorientierte Spezifikation? Modellierung der funktionalen Anforderungen Klassenmodell Szenarien/Anwendungsfallmodell Glossar Keine speziellen Verfahren/Darstellungsmittel

Mehr

Von der UML nach C++

Von der UML nach C++ 22 Von der UML nach C++ Dieses Kapitel behandelt die folgenden Themen: Vererbung Interfaces Assoziationen Multiplizität Aggregation Komposition Die Unified Modeling Language (UML) ist eine weit verbreitete

Mehr

Software Engineering 5. UML. Franz-Josef Elmer, Universität Basel, HS 2012

Software Engineering 5. UML. Franz-Josef Elmer, Universität Basel, HS 2012 Software Engineering 5. UML Franz-Josef Elmer, Universität Basel, HS 2012 Software Engineering: 5. UML 2 Unified Modeling Language (UML) Standardisierte grafische Notationen um Strukturen und Abläufe eines

Mehr

Use Cases. Use Cases

Use Cases. Use Cases Use Cases Eigenschaften: Ein Use Case beschreibt einen Teil des Verhaltens eines Systems aus externer Sicht (Formuliert in der der Fachsprache der Anwendung) Dies geschieht, indem ein Systemdialog beschrieben

Mehr

Daten- und Informationsmodellierung

Daten- und Informationsmodellierung Institute for Web Science & Technologies WeST Grundlagen der Datenbanken Daten- und Informationsmodellierung Dr. Thomas Gottron Wintersemester 2012/13 Lernziele Kenntnis der Vorgehensweise beim DB-Entwurf

Mehr

Rhapsody in J Modellierung von Echtzeitsystemen

Rhapsody in J Modellierung von Echtzeitsystemen Rhapsody in J Modellierung von Echtzeitsystemen Tobias Schumacher tobe@uni-paderborn.de Rhapsody in J - Modellierung von Echtzeitsystemen p.1/17 Anspruch des Tools Einsatzbereiche/Features Modellierung

Mehr

Vgl. Oestereich Kap 2.7 Seiten 134-147

Vgl. Oestereich Kap 2.7 Seiten 134-147 Vgl. Oestereich Kap 2.7 Seiten 134-147 1 Sequenzdiagramme beschreiben die Kommunikation/Interaktion zwischen den Objekten (bzw. verschiedenen Rollen) eines Szenarios. Es wird beschrieben, welche Objekte

Mehr

Softwaretechnik. Fomuso Ekellem

Softwaretechnik. Fomuso Ekellem WS 2011/12 Inhalt Entwurfsphase Systementwurf Software Architektur Entwurf Software Komponenten Entwurf Struktur Verhalten OO Entwurf (OOD) 2 Entwurfsphase 3 Entwurfsphase Lernziele Aufgaben der Entwurfsphase

Mehr

Workflows: Anforderungserhebung und analyse

Workflows: Anforderungserhebung und analyse Workflows: Anforderungserhebung und analyse Tutorium 4 9. März 2009 Svetlana Matiouk, Uni Bonn Ferientutorien zur Vorlesung Softwaretechnologie WS 2008 4. Treffen, Aktivitäten bei der Softwareentwicklung

Mehr

Software Engineering in der Praxis Praktische Übungen

Software Engineering in der Praxis Praktische Übungen Software Engineering in der Praxis Praktische Übungen Pinte, Spisländer FAU Erlangen-Nürnberg Objektorientierte Analyse 1 / 14 1 Inhalt 2 Überblick 3 Werkzeuge 4 Aufgaben Pinte, Spisländer FAU Erlangen-Nürnberg

Mehr

Vorlesung "Software-Engineering"

Vorlesung Software-Engineering Vorlesung "Software-Engineering" Rainer Marrone, TUHH, Arbeitsbereich STS Vorige Vorlesung Pflichtenheft (requirements specification document) Charakterisierung von Software-Qualität Detaillierte Anforderungsanalyse

Mehr

Inhalt: Version 1.7.5

Inhalt: Version 1.7.5 Inhalt: Objekte ohne Methoden Objekte mit einfachen Methoden Objekte und Methoden mit Parametern Objekte und Methoden mit Rückgabewert Objekte mit einem Array als Attribut Beziehungen zwischen Objekten

Mehr

Software Engineering und Projektmanagement

Software Engineering und Projektmanagement Software Engineering und Projektmanagement Motivation! Fachliche Sicht trifft auf technische Realisierung Entwurf 2009W - 5. November 2009 Andreas Mauczka Email: andreas.mauczka@inso.tuwien.ac.at Web:

Mehr

Objektorientierte Geschäftsprozessmodellierung mit der UML

Objektorientierte Geschäftsprozessmodellierung mit der UML Bernd bestereich Christian Weiss Claudia Schröder Tim Weilkiens Alexander Lenhard 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com

Mehr

2 Konzepte und Notation der objektorientierten Analyse (Statische Konzepte)

2 Konzepte und Notation der objektorientierten Analyse (Statische Konzepte) Objektmodellierung 2 Konzepte und Notation der objektorientierten Analyse (Statische Konzepte) Prof. Dr. Heide Balzert Fachbereich Informatik Fachhochschule Dortmund Heide Balzert 2000 2 Lernziele Erklären

Mehr

Software Engineering Analyse und Analysemuster

Software Engineering Analyse und Analysemuster Software Engineering Analyse und Analysemuster Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassendiagramme in der Analyse Im Rahmen der Anforderungsanalyse

Mehr

Vgl. Oestereich Kap 2.6 Seiten 127-133

Vgl. Oestereich Kap 2.6 Seiten 127-133 Vgl. Oestereich Kap 2.6 Seiten 127-133 4. Zustände 1 Aktivitäts- und Zustands-Diagramm werden oft verwechselt. Es ist darum wichtig zu unterscheiden, dass im Aktivitätsdiagramm die Aktionen im Zentrum

Mehr

Informationsmanagement in Organisationen Überblick

Informationsmanagement in Organisationen Überblick Informationsmanagement in Organisationen Überblick Wolfgang H. Janko Andreas Geyer-Schulz Stefan Koch Edward Bernroider Abteilung für Informationswirtschaft Institut für Informationsverarbeitung und Informationswirtschaft

Mehr

Labor Modellgestütztes Software Engineering. Versuch 1

Labor Modellgestütztes Software Engineering. Versuch 1 Labor Modellgestütztes Software Engineering Versuch 1 Wintersemester 2015 Dipl.-Ing. (FH) Joachim Hampel Version 7_01, 11.10.2012 Inhaltsverzeichnis Inhalt 1 EINFÜHRUNG... 3 1.1 RHAPSODY MODELER... 4 1.2

Mehr

Kapitel KLASSENDIAGRAMME

Kapitel KLASSENDIAGRAMME Kapitel KLASSENDIAGRAMME 5.1 Klassendiagramm Objekt Darstellung im Objektdiagramm Objektidentität Kapselung und Geheimnisprinzip 5.2 Klasse Abstrakte Klasse, Klassenname Wurzelklasse 5.3 Assoziation Abgeleitete

Mehr

Softwaretechnik für den Entwurf

Softwaretechnik für den Entwurf Projektseminar RIKA Wintersemester 1999/2000 18.11.1999 Holm Wegner, Florian Matthes Entwurfsphase: Einordnung Planungsphase Lastenheft Definitionsphase Pflichtenheft Entwurfsphase Produktentwurf Implementierungsphase

Mehr

Software-Engineering Objektorientierte Konzepte des Software-Engineering 5.2 UML Unified Modeling Language

Software-Engineering Objektorientierte Konzepte des Software-Engineering 5.2 UML Unified Modeling Language Software-Engineering Objektorientierte Konzepte des Software-Engineering 5.2 UML Unified Modeling Language Prof. Dr. Rolf Dornberger Software-Engineering: 5 Definitionsphase Objektorientierte Konzepte

Mehr

SWE5 Slide 1. Software-Engineering. Vorlesung 5 vom 15.11.2004 Sebastian Iwanowski FH Wedel

SWE5 Slide 1. Software-Engineering. Vorlesung 5 vom 15.11.2004 Sebastian Iwanowski FH Wedel SWE5 Slide 1 Software-Engineering Vorlesung 5 vom 15.11.2004 Sebastian Iwanowski FH Wedel SWE5 Slide 2 Software-Engineering Vorlesungsthemen: 1. Überblick über das Thema und die Vorlesung 2. Grundlegende

Mehr

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht

Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur. UML-Klassendiagramme als Werkzeug im Unterricht Dr. Hanno Schauer Mons-Tabor-Gymnasium Montabaur UML-Klassendiagramme als Werkzeug im Unterricht Blitzlicht? In welcher Programmiersprache(n) unterrichten Sie?? In welchem Umfang unterrichten Sie Objektorientierung??

Mehr