UML (IT)

UML
Logo.
Editor Objektverwaltungsgruppe (OMG)
Nett Formale Spezifikation
Zustand Version 2.5.1
Erstveröffentlichung Dezember 1997
Letzter Beitrag Dezember 2017
Standard omg.org/spec/UML
Webseite uml.org

Die Unified Modeling Language , Englisch Unified Modeling Language ( UML ) a Sprache auf basierte grafische Modellierung Piktogramme als standardisiertes Verfahren zur Visualisierung entwickelt in den Bereichen Softwareentwicklung und objektorientiertes Design .

UML ist eine Synthese früherer Objektmodellierungssprachen: Booch , OMT , OOSE . UML basiert hauptsächlich auf den Arbeiten von Grady Booch , James Rumbaugh und Ivar Jacobson und ist heute ein Standard, der von der Object Management Group (OMG) übernommen wurde. UML 1.0 wurde in standardisiertJanuar 1997;; UML 2.0 wurde von der OMG in übernommenJuli 2005. Die neueste Version der von der OMG validierten Spezifikation ist UML 2.5.1 (2017).

benutzen

UML soll die Gestaltung von Dokumenten erleichtern, die für die Entwicklung objektorientierter Software als Standard für die Modellierung der Softwarearchitektur erforderlich sind. Die verschiedenen Elemente, die dargestellt werden können, sind:

Es ist auch möglich, den gesamten oder einen Teil des Codes, beispielsweise in Java- Sprache , automatisch aus den erstellten Dokumenten zu generieren .

Geschichte

Geschichte der UML von Anfang 1990 bis 2017
Datiert Beschreibung
In den frühen 1980er Jahren Objekte beginnen, Forschungslabors zu verlassen und ihre ersten Schritte in die reale Welt zu unternehmen. Unter anderem wird die stabilisierte Smalltalk- Programmiersprache zu einer nutzbaren Plattform und C ++ ist geboren.

Objektmethoden beginnen sich zu entwickeln, um strukturierte und funktionale Methoden zu ersetzen, die zu maschinenbezogen sind.

1989 bis 1994 Die Anzahl der objektorientierten Methoden reicht von zehn bis mehr als fünfzig; Alle diese Methoden haben viele Gemeinsamkeiten (Objekte, Methoden, Parameter usw.).

Diese Methoden orientieren sich an der Abstraktion von Materialkomponenten, basieren auf Begriffen von Klasse, Assoziation, Aufteilung in Subsysteme und auf der Untersuchung der Interaktion zwischen Benutzer und System. Die Hauptautoren dieser Methoden sind James Rumbaugh , Grady Booch und Ivar Jacobson . Unter diesen Methoden sind zwei hervorzuheben: die Booch-Methode und die OMT-Methode (Object Modeling Technique). Die zweiten Versionen der Methoden von Booch und OMT erscheinen: Booch'93 und OMT-2. Diese Methoden sind ziemlich ähnlich, aber Booch'93 legt mehr Wert auf Konstruktion, während OMT-2 mehr Wert auf Analyse und Abstraktion legt.

1989 und 1991 Veröffentlichung von zwei Büchern von Sally Shlaer  (in) und Steve Mellor über Analyse und Design, die zu einem Ansatz führen, den sie als rekursives Design bezeichnen .
1989 bis 1990 Entwicklung von verantwortungsorientiertem Design und CRC- Karten (Class-Responsibility-Collaboration ) in Portland durch die Smalltalk- Community .
1991 bis 1996 James Rumbaugh leitet ein Forschungsteam in den Forschungslabors von General Electric , das ein hoch angesehenes Buch über OMT veröffentlicht.
1991 Veröffentlichung von Büchern von Peter Coad und Ed. Yourdon , die „schlanke“ und „prototypisch orientierte“ Ansätze entwickeln.
1992 und 1995 Veröffentlichung von Ivar Jacobsons Büchern basierend auf seinen Erfahrungen mit Telefonschaltern bei Ericsson . Der erste führt in das Konzept der Anwendungsfälle (Anwendungsfall) ein.
1994 bis 1996 Grady Booch leistet wichtige Arbeit bei Rational Software bei der Entwicklung von Systemen in Ada .
1994 Die große Anzahl von Methoden und die Tatsache, dass die Unterschiede zwischen ihnen verringert werden, schieben die Objekttechnologie so weit zurück, dass Jim Rumbaugh und Grady Booch sich vereinen, um ihre Arbeit zu vereinheitlichen. Sie schlagen eine "einheitliche Methode" vor.
1994 Jim Odells Bücher , die mit James Martin geschrieben wurden , basieren auf seiner langjährigen Erfahrung in Informationssystemen und Software-Engineering und sind von all diesen Arbeiten die konzeptionellsten.
Oktober 1994 Beginn der Arbeit an der Unified Method ( UM ).

James Rumbaugh kommt zu Grady Booch bei Rational Software .

1995 Ivar Jacobson , Schöpfer der Anwendungsfälle , schließt sich Jim Rumbaugh und Grady Booch an .
1995 Die Autoren der Unified Method ( UM ) veröffentlichen das Dokument mit dem Titel Unified Method V0.8 .
Oktober 1995 Ivar Jacobson kommt zu Rational Software .
Oktober 1995 UML 0.8 enthält OOD / Booch '93 von Grady Booch und OMT von Jim Rumbaugh .
1996 Veröffentlichung einer neuen Dokumentrevision, Unified Method V0.9 , basierend auf Benutzerfeedback.

Revision 0.9.1 ist die erfolgreichste Version der einheitlichen Methode (Neuausrichtung des Umfangs der Vereinigungsbemühungen). Die Methode ändert ihren Namen und wird zu UML (Unified Modeling Language for Object-Oriented Development). Es wird ein Konsortium großer Unternehmen ( Microsoft , IBM , Oracle usw.) erstellt, mit dem die Methode auf Version 1.0 aktualisiert werden kann.

Juni 1996 UML 0.9 enthält Ivar Jacobsons OOSE .
Oktober 1996 UML 0.91
Januar 1997 Standardisierung von UML 1.0 durch die Object Management Group (OMG).
August 1997 Vorschlag von UML 1.1-Spezifikationen an OMG durch eine Arbeitsgruppe von Analysten und Designern unter der Leitung von Cris Kobryn, die von Ed Eykholt verwaltet wird .
14. November 1997 Übernahme der UML 1.1-Spezifikationen durch OMG .

Am UML-Standard werden weiterhin verschiedene Verbesserungen vorgenommen, die zu vier Überarbeitungen führen: UML 1.2, 1.3, 1.4, 1.5. UML 1.5 ist die letzte Version vor dem Upgrade auf UML 2.0.

UML 1.x-Standards, die immer noch stark von der OMT-Notation beeinflusst werden, werden als nicht semantisch integriert kritisiert.

Juni 1998 Übernahme von UML 1.2 durch die OMG.
Oktober 1998 Annahme von UML 1.3 durch die OMG.
März 2000 Vollständige UML 1.3-Spezifikation veröffentlicht.
September 2001 UML 1.4.
6. März 2003 UML 1.5 (Empfehlungen)
August 2003 UML 2.0-Aufbauspezifikation (Empfehlung)
1 st September 2003 UML 2.0-Diagrammaustauschspezifikation (Empfehlung)
14. Oktober 2003 UML 2.0 OCL-Spezifikation
Dezember 2003 UML 2.0 (Empfehlung)
Juli 2005 Übernahme von UML 2.0 durch die OMG.
4. April 2006 UML 2.0-Diagrammaustauschspezifikation
1 st Juni 2006 Bereitstellungsansicht )
6. Oktober 2006 UML 2.1.1 - XMI-Datei
6. Februar 2007 UML 2.1.1 Infrastrukturspezifikation
3. Februar 2007 UML 2.1.1 Aufbauspezifikation
2007 UML 1.4.2 wird zur ISO-Spezifikation (ISO / IEC 19501).
November 2007 Veröffentlichung von UML 2.1.2 durch die OMG.
Januar 2009 Verteilung von UML 2.2 durch die OMG.
Mai 2010 Verteilung von UML 2.3 durch die OMG.
Juli 2011 Verteilung von UML 2.4.1 durch die OMG. Infrastruktur und Aufbau werden in überarbeitetAugust 2011.
Dezember 2017 Verteilung von UML 2.5.1 durch die OMG. Das Metamodell selbst ist bis auf einige Ausnahmen gegenüber dem UML 2.4.1-Überbau unverändert.

Formalismus

UML ist eine Modellierungssprache. Die aktuelle Version, UML 2.5, bietet 14 Diagrammtypen, darunter sieben strukturelle und sieben verhaltensbezogene. Zum Vergleich hatte UML 1.3 25 Diagrammtypen.

UML ist keine Methode, die Verwendung von Diagrammen liegt im Ermessen jedes Einzelnen. Das Klassendiagramm wird allgemein als zentrales Element von UML angesehen. Methoden wie der von den ursprünglichen Erstellern von UML vorgeschlagene einheitliche Prozess verwenden systematischer alle Diagramme und konzentrieren die Analyse auf den Anwendungsfall ("Anwendungsfall"), um ein Modell durch aufeinanderfolgende Iterationen der Analyse, ein Entwurfsmodell und zu entwickeln andere Modelle. Andere Ansätze geben sich damit zufrieden, ein System nur teilweise zu modellieren, beispielsweise bestimmte kritische Teile, die sich nur schwer aus dem Code ableiten lassen.

Ansichten

Eine Möglichkeit, UML zu implementieren, besteht darin, verschiedene Ansichten zu berücksichtigen , die sich überschneiden können, um bei der Definition des Systems zusammenzuarbeiten:

Das Warum ist in UML nicht definiert.

In UML 2.5 werden Diagramme in zwei Arten von Ansichten dargestellt: aus statischer oder struktureller Sicht der Domäne mit Strukturdiagrammen.

Aus dynamischer Sicht mit Verhaltens- und Interaktionsdiagrammen.

Diagramme

Die Diagramme sind hierarchisch abhängig und ergänzen sich, um die Modellierung eines Projekts während seines gesamten Lebenszyklus zu ermöglichen. Seit UML 2.3 sind es vierzehn.

Strukturdiagramme oder statische Diagramme

Die Strukturdiagramme ( Diagrammstruktur ) oder statischen Diagramme ( statische Diagramme ) bestehen aus:

Verhaltensdiagramme

Die Verhaltensmuster ( Verhaltensdiagramme ) zusammen:

Interaktionsdiagramme oder dynamische Diagramme

Die Interaktionsdiagramme ( Diagramme Interaktion ) oder dynamische Diagramme ( dynamische Diagramme ) zusammen:

  • Sequenzdiagramm ( Sequenzdiagramm ) Sequentielle Darstellung des Behandlungsverlaufs und der Wechselwirkungen zwischen den Systemkomponenten und / oder ihren Akteuren.
  • Kommunikationsdiagramm ( Diagrammkommunikation ): Vereinfachte Darstellung eines Blockdiagramms, das sich auf den Austausch von Nachrichten zwischen Objekten konzentriert (seit UML 2.x).
  • Gesamtinteraktionsdiagramm ( Interaktionsübersichtsdiagramm ) Darstellung möglicher Verknüpfungen zwischen Szenarien, die zuvor als Sequenzdiagramme identifiziert wurden (Variante des Aktivitätsdiagramms ) (seit UML 2.x).
  • Zeitdiagramm ( Zeitdiagramm ) Darstellung von Variationen einer bestimmten Zeit (seit UML 2.3).

Elementmodelle

  • Ein Stereotyp ist ein Zeichen der Verallgemeinerung , das durch Anführungszeichen gekennzeichnet ist und zeigt, dass das Objekt eine Vielzahl von Mustern ist.
  • Eine Arbeitsmappe ist eine Anmerkung, mit der Sie Einheiten mit demselben Verhalten oder derselben Struktur gruppieren können. Eine Arbeitsmappe wird durch ein Rechteck in durchgezogenen Linien dargestellt.
  • Ein Paket gruppiert Diagramme oder Einheiten.
  • Jede Klasse oder jedes Objekt wird genau mit dem Zeichen "::" definiert. Daher wird die Identifizierung einer Klasse X außerhalb ihres Pakets oder ihres Klassifikators durch "Paket A :: Classeur B :: Klasse X" definiert.
Allgemeine Typelementmodelle

Symbolisch für Elementmodelle:

  • Gabel ( Gabel ).
  • Ausgangszustand ( Ausgangszustand ).
  • Zustand endgültig ( Endzustand ).
  • Schnittstelle ( Schnittstelle ).
    • O ← --- Flussrichtung der Schnittstelle.
    • O) ----- ist eine Abkürzung für die Überlagerung von --- → O und O ← ---.
Beziehungselementmodelle
  • Leistung .
  • Verwenden Sie .
Andere Elementmodelle
  • Die Stereotypen können von der verwendeten Sprache abhängen.
  • Die Archetypen .
  • Die Profile .

Standardisierung und Zertifizierung

UML ist kein gesetzlicher Standard, sondern ein einfacher "industrieller" Standard (oder De-facto-Standard), da er von der OMG gefördert wird (November 1997) auf der gleichen Basis wie CORBA und wegen seines Erfolgs. Schon seitJuli 2005wird die erste Version 2.x von UML von der OMG validiert.

Darüber hinaus hat die OMG seit 2003 ein Zertifizierungsprogramm für die Praxis und das Wissen von UML OCUP eingerichtet, das drei Ebenen der Beherrschung abdeckt.

Beispiel für die Reihenfolge der Diagrammerstellung

Diagramm Stufe V-Zyklus
1. Anwendungsfalldiagramm Spezifikation, Spezifikationen
2. Sequenzdiagramm
3. Aktivitätsdiagramm (Geschäftsprozess)
4. Aktivitätsdiagramm (Kinematik und / oder Anwendungsprozesse)
5. Klassendiagramm Architekturdesign
6. Objektdiagramm
7. Kommunikationsdiagramm
8. Bereitstellungsdiagramm
9. Komponentendiagramm

UML-Modellierungssoftware

Obwohl es viele UML-Modellierungssoftware gibt, respektiert keine jede Version von UML, insbesondere UML 2, vollständig und viele führen nicht konforme Notationen ein. Andererseits enthalten viele Software Module zum Generieren von Code, insbesondere aus dem Klassendiagramm , das sich am besten für eine solche Automatisierung eignet.

Anmerkungen und Referenzen

  1. Siehe Abschnitt Verlauf
  2. UML auf der OMG-Website
  3. Verlauf - Formale Versionen auf der OMG-Website
  4. "  UML-Spezifikation Version 1.1 (OMG-Dokumentanzeige / 97-08-11)  " , Omg.org (abgerufen am 22. September 2011 )
  5. UML-Spezifikation 2.4.1
  6. (in) OMG "  OMG Unified Modeling LanguageTM (OMG UML), Infrastruktur  " , OMG,August 2011(Zugriff auf den 20. Mai 2019 ) .
  7. (in) OMG "  OMG Unified Modeling LanguageTM (OMG UML), Überbau  " , OMG,August 2011(Zugriff auf den 20. Mai 2019 ) .
  8. UML-Spezifikation 2.5.1 (2017) (Zugriff am 20. Mai 2019)
  9. Siehe Kapitel "6.1 Vereinfachung der Spezifikation" von UML 2.5.1. (Zugriff am 20. Mai 2019)
  10. Warum UML? (Zugriff am 20. Mai 2019)
  11. OCUP 2 ™ - UML 2.5-Zertifizierung von OMG

Siehe auch

Literaturverzeichnis

  • Grady Booch, James Rumbaugh, Ivar Jacobson, UML-Benutzerhandbuch , 2000 ( ISBN  2-212-09103-6 )
  • Laurent Audibert, UML 2, Vom Lernen zum Üben (Unterricht und Übungen) , Ellipses, 2009 ( ISBN  978-2729852696 )
  • Franck Barbier, UML 2 und MDE , Modellbau mit Fallstudien , 2009 ( ISBN  978-2-10-049526-9 )
  • Craig Larman, UML 2 und die Design Patterns, objektorientierte Analyse und Design und iterative Entwicklung ( 3 th  Ausgabe), Pearson Education, 2005 ( ISBN  2-7440-7090-4 )
  • Martin Fowler et al. , UML 2.0, Einführung in wesentliche Aspekte der Notation , 2004 ( ISBN  2-7440-1713-2 )
  • Pascal Roques, UML 2, Modellierung einer Webanwendung , Eyrolles, 2007 ( ISBN  2-212-12136-9 )
  • Pascal Roques, UML 2 aus der Praxis, Fallstudien und korrigierte Übungen , Eyrolles, 2006 ( ISBN  2-212-12014-1 )
  • Jim Conallen , Entwerfen von Webanwendungen mit UML , Eyrolles ,2000288  p. ( ISBN  978-2-212-09172-4 )

Zum Thema passende Artikel

Externe Links