fmk2016 - thomas hirt- uml für filemaker entwickler
TRANSCRIPT
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
www.filemaker-konferenz.com
Konzepte für Software-Systeme entwickeln und dokumentieren
UML für FileMaker-Entwickler
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Über den Sprecher• Studium der Biochemie und des Software Engineering
• betreut seit über 20 Jahren Kleinunternehmen und Privatkunden in Informatikbelangen, zuerst als Nebenjob, seit bald 15 Jahren in Vollzeit
• Geschäftsführer und Teilhaber der HRC Informatik GmbH
• Einsatz von FileMaker als Entwicklungsplattform seit 2009
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Inhaltsübersicht• Was ist UML?
• Wozu kann ich UML benützen?
• Welche Diagrammarten gibt es in UML?
• einige Diagrammarten ein wenig näher vorgestellt
• "Use Case" Diagramm
• Klassendiagramm
• Sequenzdiagramm
• Zustandsmaschinen-Diagramm
• Literaturhinweise
• UML Tool-Tipps
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Was ist UML?• UML = Unified Modeling Language
• graphische Entwurfs- und Designnotation
• Metamodell ( eine Methode, um Modelle zu erstellen )
• entstand während des Hypes um OOP (objekt-orientierte Programmierung) Ende der 1980er, Anfang der 1990er Jahre
• vereinheitlichte verschiedene, ältere graphische Notationen unter einem Dach
• enthält 14 offizielle Diagrammarten
• Versionshistorie
• UML 1.x: 1990er Jahre
• UML 2.0: 2000
• UML 2.5: 06.2015
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Wozu kann ich UML benützen?• konzeptionelle Entwicklung von Softwaresystemen
• Dokumentation von Softwaresystemen
• graphisch-konzeptionelle Unterstützung von Fachgesprächen über Softwaresysteme
• mit anderen Entwicklern
• mit Kunden oder Stakeholdern
• Konzeption und Generierung von Software Scaffolds
• benötigt Tool-Unterstützung
• funktioniert nicht für alle Programmiersprachen/-umgebungen
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Wozu kann ich UML benützen?
• UML als Werkzeugkasten verwenden
• sich bei den Werkzeugen bedienen
• die Werkzeuge an eigene Situation angepasst verwenden
• sich an wesentliche Ideen von UML halten, frei interpretieren
• buchstabengetreue Umsetzung nur bei automatischer Code-Generierung
Meine persönlichen Tipps für die Anwendung:
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Welche Diagrammarten gibt es in UML?Diagrammart Art ZweckClass Struktur Klassen und ihre BeziehungenComposite Structure Struktur innere Struktur und interne Interaktionen von KlassenComponent Struktur Anwendungsbestandteile und deren Beziehungen
Deployment Struktur Bestandteile eines installierten Softwaresystems und deren Abhängigkeiten voneinander
Object Struktur beispielhafte Instanzierung von KlassenPackage Struktur Zusammenfassung von Komponenten zu PaketenProfile Struktur Definition von eigenen Erweiterungen zur UMLActivity Verhalten prozedurales und paralleles Verhalten von SoftwareUse Case Verhalten Benutzerinteraktion mit einem SoftwaresystemInteraction Overview Verhalten dynamische Aspekte des modellierten SystemsCommunication Verhalten Austausch von Nachrichten zwischen ObjektenSequence Verhalten Austausch von Nachrichten zwischen Objekten im zeitlichen VerlaufTiming Verhalten zeitliche Abhängigkeit von Zustandsänderungen von ObjektenState Machine Verhalten Veränderungen von Objekten in Abhängigkeit von äusseren Einflüssen
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Welche Diagrammarten gibt es in UML?Diagrammart Art ZweckClass Struktur Klassen und ihre BeziehungenComposite Structure Struktur innere Struktur und interne Interaktionen von KlassenComponent Struktur Anwendungsbestandteile und deren Beziehungen
Deployment Struktur Bestandteile eines installierten Softwaresystems und deren Abhängigkeiten voneinander
Object Struktur beispielhafte Instanzierung von KlassenPackage Struktur Zusammenfassung von Komponenten zu PaketenProfile Struktur Definition von eigenen Erweiterungen zur UMLActivity Verhalten prozedurales und paralleles Verhalten von SoftwareUse Case Verhalten Benutzerinteraktion mit einem SoftwaresystemInteraction Overview Verhalten dynamische Aspekte des modellierten SystemsCommunication Verhalten Austausch von Nachrichten zwischen ObjektenSequence Verhalten Austausch von Nachrichten zwischen Objekten im zeitlichen VerlaufTiming Verhalten zeitliche Abhängigkeit von Zustandsänderungen von ObjektenState Machine Verhalten Veränderungen von Objekten in Abhängigkeit von äusseren Einflüssen
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Welche Diagrammarten gibt es in UML?Diagrammart Art ZweckClass Struktur Klassen und ihre BeziehungenComposite Structure Struktur innere Struktur und interne Interaktionen von KlassenComponent Struktur Anwendungsbestandteile und deren Beziehungen
Deployment Struktur Bestandteile eines installierten Softwaresystems und deren Abhängigkeiten voneinander
Object Struktur beispielhafte Instanzierung von KlassenPackage Struktur Zusammenfassung von Komponenten zu PaketenProfile Struktur Definition von eigenen Erweiterungen zur UMLActivity Verhalten prozedurales und paralleles Verhalten von SoftwareUse Case Verhalten Benutzerinteraktion mit einem SoftwaresystemInteraction Overview Verhalten dynamische Aspekte des modellierten SystemsCommunication Verhalten Austausch von Nachrichten zwischen ObjektenSequence Verhalten Austausch von Nachrichten zwischen Objekten im zeitlichen VerlaufTiming Verhalten zeitliche Abhängigkeit von Zustandsänderungen von ObjektenState Machine Verhalten Veränderungen von Objekten in Abhängigkeit von äusseren Einflüssen
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Welche Diagrammarten gibt es in UML?Diagrammart Art ZweckClass Struktur Klassen und ihre BeziehungenComposite Structure Struktur innere Struktur und interne Interaktionen von KlassenComponent Struktur Anwendungsbestandteile und deren Beziehungen
Deployment Struktur Bestandteile eines installierten Softwaresystems und deren Abhängigkeiten voneinander
Object Struktur beispielhafte Instanzierung von KlassenPackage Struktur Zusammenfassung von Komponenten zu PaketenProfile Struktur Definition von eigenen Erweiterungen zur UMLActivity Verhalten prozedurales und paralleles Verhalten von SoftwareUse Case Verhalten Benutzerinteraktion mit einem SoftwaresystemInteraction Overview Verhalten dynamische Aspekte des modellierten SystemsCommunication Verhalten Austausch von Nachrichten zwischen ObjektenSequence Verhalten Austausch von Nachrichten zwischen Objekten im zeitlichen VerlaufTiming Verhalten zeitliche Abhängigkeit von Zustandsänderungen von ObjektenState Machine Verhalten Veränderungen von Objekten in Abhängigkeit von äusseren Einflüssen
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
• Kunde öffnet WebDirect Seite
• Kunde sucht Artikel und fügt Sie zu Bestellung hinzu
• Kunde geht zum Checkout
• Kunde füllt Lieferadresse ein
• Kunde wählt Bezahlmethode
• Kunde platziert Bestellung
• System überprüft Bestellung
• System bestätigt Bestellungseingang
• System informiert Sales Mitarbeiter
• Sales Mitarbeiter überprüft Bestellung
• Sales Mitarbeiter gibt Bestellung frei
• System informiert Versandabteilung
• Versandabteilung arbeitet Stückliste ab
• Versandabteilung versendet Bestellung
• Versandabteilung setzt Bestellungsstatus auf "versendet"
Das Use Case Diagramm
Einen Artikel bestellen
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Use Case Diagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Klassendiagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das KlassendiagrammKlasse
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das KlassendiagrammAttribute
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das KlassendiagrammMethoden
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Klassendiagramm
Komposition
Assoziation
Vererbung
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Klassendiagramm
Kardinalität
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Klassendiagramm (für FileMaker)
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Sequenzdiagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Sequenzdiagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das SequenzdiagrammTeilnehmer
Lebenslinie
Nachricht
Rückgabe
Aktivierung
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Sequenzdiagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das Sequenzdiagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das State Machine Diagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das State Machine Diagramm
Zustand
Übergang
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das State Machine Diagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Das State Machine Diagramm
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Literaturhinweise• Um UML gab es etwa 1995-2005 einen Hype, danach klang der Hype ab und
UML wurde einfach zu "einem Werkzeug". Entsprechend sind viele gute UML-Bücher älteren Datums.
• mein persönlicher Favorit
• kurz und knapp, genau richtig im Umfang als effizientes Nachschlagewerk
• UML Distilled, Third Edition, "A Brief Guide To The Standard ObjectModeling Language", Martin Fowler, Addison-Wesley, 2003.
• aktuellere Bücher in deutscher Sprache
• UML 2.5: Das umfassende Handbuch, Christoph Kecher, Alexander Salvanos, Rheinwerk Computing, 2015.
• UML 2 glasklar: Praxiswissen für die UML-Modellierung, Chris Rupp, Stefan Queins, die SOPHISTen, Carl Hanser Verlag, 2012.
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
UML Tool-Tipps
Name Hersteller kostenpflichtig Plattformen Bemerkungen
Visual Paradigm Modeler Visual Paradigm Win, macOS, Linux für professionelle Entwickler
UModel 2016 Altova Windows für professionelle Entwickler
Enterprise Architect SparxSystems Windows* für professionelle Entwickler
Edraw Max EdrawSoft Windows rein graphisches Tool
Visio Microsoft Windows rein graphisches Tool
yEd yWorks Win, macOS, Linux aktiv entwickelte Freeware, Closed Source
Dia GNOME Project Win, macOS, Linux Open Source, GPL, letzte Version von 2011
UML Designer Obeo Win, macOS, Linux Open Source, EPL, aktives Projekt
DieseListeisteineunvollständigeAuswahlbasierendaufpersönlicherErfahrung&Präferenz.Esgibtdiverse,weiterekostenpflichtigeundkostenfreieProdukte.
*macOS &LinuxmittelsLaufzeitumgebungCodeWeavers CrossOver ebenfallsunterstützt
!!
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
UML Tool-Tipps
Post-Konferenz Update
Der Hersteller "Visual Paradigm" hat sein vorübergehend nicht mehr erhältliches Tool "Visual Paradigm Modeler", welches für FileMaker-Entwickler bezüglich Preis und abgedeckten Plattformen besonders interessant ist, wieder in seinen Webshop gestellt.
7. FileMaker Konferenz | Salzburg | 13.-15. Oktober 2016
"UML für FileMaker-Entwickler", Thomas Hirt
Vielen Dank unseren Sponsoren
Danke für das Bewerten dieses Vortrages