Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

UML Seminar Programmiersprachen Florian Seeger. Inhalt UML - Florian Seeger2 Grundlagen Was ist UML? UML-Diagramme Beispiel 99 Bottles of Beer Einsatz.

Ähnliche Präsentationen


Präsentation zum Thema: "UML Seminar Programmiersprachen Florian Seeger. Inhalt UML - Florian Seeger2 Grundlagen Was ist UML? UML-Diagramme Beispiel 99 Bottles of Beer Einsatz."—  Präsentation transkript:

1 UML Seminar Programmiersprachen Florian Seeger

2 Inhalt UML - Florian Seeger2 Grundlagen Was ist UML? UML-Diagramme Beispiel 99 Bottles of Beer Einsatz und Nutzen Die Autoren Entstehungsgeschichte Kernthesen des Interviews

3 UML – Die Grundlagen UML - Florian Seeger3

4 Definition UML: Unified Modeling Language The UML is a graphical language used to vizualize, specify, reason about, document, and construct the artifacts of a software-intensive system. [1] Keine Programmiersprache Erlaubt eine höhere Abstraktionsebene als die der Programmiersprachen UML - Florian Seeger4

5 Die UML-Spezifikation Definition von modellierungsrelevanten Elementen und Beziehungen Klasse, Objekt, … Vererbung, Realisierung, Abhängigkeit, … Statischen und dynamischen Abläufen Sequenzen, Aktivitäten, … graphischen Notationen für diese Elemente UML - Florian Seeger5 KlasseObjektPaket AbhängigkeitRealisierung Aktivität Vererbung

6 UML-Diagramme Die spezifizierten Sprachelemente können in diversen Diagrammen genutzt werden UML kennt 14 Diagrammtypen: UML - Florian Seeger 6 Strukturdiagramme Verhaltensdiagramme Interaktionsdiagramme Quelle: [2]

7 UML – viele Einsatzgebiete, großer Umfang UML - Florian Seeger7 Quelle: [2]

8 Einsatz der UML Am Beispiel von 99 Bottles of Beer UML - Florian Seeger8

9 1. Schritt: Klärung der Anforderungen UML - Florian Seeger9

10 2. Schritt: Strukturierung UML - Florian Seeger10

11 3. Schritt: Programmablauf UML - Florian Seeger11

12 Modellierung mit UML – wozu? Visualisierung aller Elemente eines Software-Projekts über den gesamten Lebenszyklus Vom Use-Case vor Projektstart bis zu den Klassendiagrammen der Implementierung Strukturierte Software Einheitliches und universelles Kommunikationsmittel Kommunikation mittels Diagrammen einfacher Weniger aneinander vorbeireden UML - Florian Seeger12

13 Modellierung mit UML – wie? UML-Werkzeuge existieren wie Sand am Meer Erstellung von Diagrammen bis hin zur automatischen Code- Generierung Trend hin zur Integration in IDEs Beispiele: Visual Studio Eclipse Außer Konkurrenz: UML - Florian Seeger13 Quelle: [3]

14 Die Autoren und die Entstehung der UML UML - Florian Seeger14

15 Dr. Ivar Jacobson * in Ystad, Schweden 1962 M.Sc. in Elektrotechnik, 1985 promoviert Begann als Projektleiter bei Ericsson Entstehung des Use-Case Sequenz- und Kollaborationsdiagramme Mitbegründer der SDL (Specification and Description Language) Gründete mehrere Unternehmen U.a. Objectory AB, fusionierte 1995 mit Rational Software, später von IBM übernommen UML - Florian Seeger15 Quelle: [4]

16 Grady Booch * in Texas, USA B.Sc. in Informatik, M.Sc. in Elektrotechnik Chef-Wissenschaftler bei Rational Software seit Gründung 1981 Begründer der Begriffe Object-Oriented Design (OOD) und Collaborative Development Environments (CDE) Erfinder der Booch-Notation Mittlerweile Chef-Wissenschaftler in der Softwareentwicklung bei IBM Research UML - Florian Seeger16 Quelle: [5]

17 Dr. James Rumbaugh * in Bethlehem, Pennsylvania, USA B.Sc. in Physik, M.Sc. in Astronomie, promoviert in Informatik Arbeitete 25 Jahre bei General Electric Entwicklung der OMT (Object-modelling technique) Autor des Buchs Object-Oriented Modeling and Design (Prentice Hall) 1994 begann er bei Rational Software Im Ruhestand seit 2006 UML - Florian Seeger17 Quelle: [6]

18 Die drei Amigos der UML Alle drei gelten als Pioniere der Objektorientierung Gemeinsame Schlüsselstation: Rational Software Grady Booch, James Rumbaugh und Ivar Jacobson waren dort die Entwickler von UML Ziel war die Vereinheitlichung der existierenden Modellierungsmethoden Die erste Spezifikation der UML entstand im Januar 1997 UML - Florian Seeger18

19 UML – ein konstanter Entwicklungsprozess Eine verfeinerte Version (UML 1.1) ging im August 1997 an die OMG (Object Management Group) Gremium mit Mitgliedern aus einer Vielzahl an Unternehmen und Instituten Bekannteste Namen: Microsoft, IBM und Hewlett Packard November 1997: UML 1.1 wurde als Standard von der OMG akzeptiert Weiterentwicklung bis heute: Einige kleinere Revisionen Nächste größere Version mit UML 2.0 in 2005 Aktuell: UML 2.3 UML - Florian Seeger19

20 Das Interview UML - Florian Seeger20

21 Übersicht Gründe für die Entstehung der UML Wie nützlich ist UML wirklich? Kritik an der UML Wie kann man UML vereinfachen? UML und die Bildung UML - Florian Seeger21

22 Gründe für die Entstehung der UML Komplexität von Softwaresystemen sehr hoch Entscheidend für den Erfolg: Eine gute Architektur Zusammenarbeit im Team Früher entscheidend, heute weniger relevant: Wahl der Programmiersprache Probleme beim Programmieren selbst UML - Florian Seeger22

23 Gründe für die Entstehung der UML Grady Booch: […] the right representation can collapse complexity, making it possible to meaningfully reason about complex information in an abstract way. [1] We were at the right time addressing a point of pain in the marketplace. [1] UML - Florian Seeger23

24 Wie nützlich ist UML wirklich? Kernaussage: UML erleichtert die Softwareentwicklung Ohne Modellierung Verbringt man viel Zeit damit, zu beschreiben, was man macht Hat man nicht den notwendigen Überblick Entwickler können mit UML besser kommunizieren UML - Florian Seeger24

25 Wie nützlich ist UML wirklich? Rumbaugh betrachtet UML kritischer: Sehr hilfreich für das Design von Datenstrukturen Mehr oder weniger nützlich zur Dekomposition eines Systems in mehrere Schichten Kaum nützlich für dynamische Dinge The whole computing field has a tendency to hype any new development tool beyond reason. There is also a tendency to look for a single solution for all problems. [8] UML - Florian Seeger25

26 Kritik an der UML UML (2.0) ist zu komplex Jacobson: Traditional UML is designed for methodologists or tool vendors. [7] 20% von UML werden i. d. R. genutzt, die restlichen 80% decken Sonderfälle ab, z. B. die Code-Generierung Booch: […] there are some uses of the UML […] that drive a lot of the complexity in 2.0 and that does complicate it for some other things. [1] Die Semantik ist schlecht definiert Zu viele verschiedene Konstrukte Mittlerweile ist die Semantik unmöglich klar zu definieren UML - Florian Seeger26

27 Kritik an der UML Hauptgrund: der Standardisierungsprozess durch die OMG Rumbaugh: The OMG is a case study on how political meddling can damage any good idea. [8] Zu viele konkurrierende Interessen wirken aufeinander ein Too many people want to stuff things in that you cant keep it simple. [8] Why do you need a standardized model language?[…] You dont need standards to do modeling. [8] UML - Florian Seeger27

28 Kritik an der UML Vergleich mit Linux Linux Foundation (Konsortium zur Standardisierung von Linux): Linus Torvalds ist immer noch Koordinator der Kernelentwicklung UML Keiner der Gründer ist noch aktiv beteiligt Es gibt keine führende Hand mehr UML - Florian Seeger28

29 Wie kann man UML vereinfachen? Nicht mehr durch einen Standardisierungsprozess entwickeln Stattdessen Entwicklung abgespeckter Versionen durch unabhängige Entwickler Nutzer entscheiden dann, welche Version geeignet ist und welche nicht Zu echten Projekten gehen, die mit UML arbeiten Häufige Anwendungsfälle herausarbeiten Booch: I would go from real use as opposed to expected use. [1] UML - Florian Seeger29

30 UML und die Bildung UML ist ein Werkzeug für Softwareentwickler Aber: Lernen (Informatik-) Studenten an einer Universität die Prinzipien der Softwareentwicklung? Die Autoren sind sich einig: Nein! Der Fokus werde viel zu sehr auf einzelne Programmiersprachen gelegt, als auf grundlegende Prinzipien Wenig Wissen über Softwareentwicklung sei mit einer bestimmten Programmiersprache verbunden UML - Florian Seeger30

31 UML und die Bildung Jacobson: The real problem is understanding software in general. [7] It would be excellent if our technical institutes or universities would educate students in the basics of software engineering, followed up by training the student in a set of good practices using that base. [7] UML - Florian Seeger31

32 Vielen Dank für Ihre Aufmerksamkeit! Fragen? UML - Florian Seeger32

33 Quellen [1]Grady Booch; Masterminds of Programming, Federico Biancuzzi & Shane Warden, OReilly 2009 [2]Unified Modeling Language, Wikipedia, [3]http://www2.cs.uni-paderborn.de/cs/ag- schaefer/PG/FUJABA/images/Logo.gifhttp://www2.cs.uni-paderborn.de/cs/ag- schaefer/PG/FUJABA/images/Logo.gif [4]http://www.itmag.org.tw/UD/ jpghttp://www.itmag.org.tw/UD/ jpg [5]http://www.reengineer.org/stevens/images/grady_booch.jpghttp://www.reengineer.org/stevens/images/grady_booch.jpg [6]http://www2.fh-rosenheim.de/gki/gallery/images/img_rumbaugh.jpghttp://www2.fh-rosenheim.de/gki/gallery/images/img_rumbaugh.jpg [7]Ivar Jacobson; Masterminds of Programming, Federico Biancuzzi & Shane Warden, OReilly 2009 [8]James Rumbaugh; Masterminds of Programming, Federico Biancuzzi & Shane Warden, OReilly 2009 UML - Florian Seeger33

34 Quellen Sonstige genutzte Quellen: UML - Florian Seeger34


Herunterladen ppt "UML Seminar Programmiersprachen Florian Seeger. Inhalt UML - Florian Seeger2 Grundlagen Was ist UML? UML-Diagramme Beispiel 99 Bottles of Beer Einsatz."

Ähnliche Präsentationen


Google-Anzeigen