1 / 24

UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/24

UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/24. Klassendiagramm Verwandte Begriffe: class, Typ, Objektfabrik Definition

Download Presentation

UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/24

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/24 Klassendiagramm Verwandte Begriffe: class, Typ, Objektfabrik Definition Eine Klasse ist die Definition der Attribute, Operationen und der Semantik für eine Menge von Objekten. Alle Objekte einer Klasse entsprechen dieser Definition. Notation Klassen werden durch Rechtecke dargestellt, die entweder nur den Namen der Klasse (fettgedruckt) oder zusätzlich Attribute und Operationen tragen. Diese Rubriken werden durch horizontale Linien getrennt. Formell sind Klassennamen Substantive im Singular und werden groß geschrieben, in Ausnahmefällen auch im Plural.

  2. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 2/24 Notationsbeispiele Klasse Klasse Klasse Attribut 1 Attribut 2 Operation 1 () Operation 2 () Klasse Klasse Attribut 1 Attribut 2 Option 1 () Option 2 () Klasse Attribut 1 Attribut 2 Operation 1 () Operation 2 ()

  3. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 3/24 Klassen In der obersten Rubrik (Klassenname) stehen oberhalb des Klassennamens in doppelt spitzen Klammern die Klassen-Stereotypen (z.B. Fachklasse) und unterhalb des Klassennamens in geschweiften Klammern die Eigenschaftswerte (z.B.:). Dem Klassennamen kann der Name eines Paketes vorangestellt werden. Wobei zwei Doppelpunkte Paketname und Klassenname trennen. <<Stereotype>> Paket::Klasse {Eigenschaftswert} attribut: Typ Initialwert {Zusicherung} operation (Parameter) {Zusicherung}

  4. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 4/24 Klassenname Kreis radius (radius>0) mittelpunkt: Point=(10,10) Zusicherung Attributname Initialwert anzeigen () entfernen () setPosition (pos:Point) setRadius (neuerRadius) Attribut-Typ Operationen

  5. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 5/24 Parametrisierbare Klassen Verwandte Begriffe: Schablone, Klassenvorlage, generische Klasse Definition Eine parametrisierte Klasse ist eine mit generischen formalen Parametern versehene Schablone, die mit der gewöhnlichen Klasse erzeugt werden können. Die generischen Parameter dienen als Stellvertreter für tatsächliche Parameter. Notation Grundlagen, wie die normale Klasse, enthalten aber in der rechten oberen Ecke im gestrichelten Rahmen ein Rechteck.

  6. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 6/24 i:Element Warteschlange Wartezimmer <<bind>>(Patient) anfügen() entnehmen() Stau <<bind>>(PKW) Alternativ Warteschlange <PKW>

  7. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 7/24 Abstrakte Klassen Verwandter Begriff: Virtuelle Klasse Definition Von einer abstrakten Klasse werden niemals Exemplare erzeugt; sie ist bewusst unvollständig und bildet somit die Basis für weitere Unterklassen, die dann ihrerseits Exemplare haben können. Abstrakte Klassen repräsentieren häufig einen Allgemeinbegriff, einen Oberbegriff für eine Menge konkreter Begriffe. Beispiel: <Fahrzeug> Fahrrad, PKW, LKW, Bahn usw. Notation Wie Klasse mit Eigenschaftswert abstrakt. Für handschriftliche Aufzeichnungen reicht die Bezeichnung {A} aus.

  8. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 8/24 Geometrische Figur Abstrakte Klasse Diskriminator Figurenform Dreieck Kreis Rechteck Person {1} Jurist. Person Natürl. Person

  9. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 9/24 Schnittstellenklasse Verwandte Begriffe: Interface class Definition Schnittstellenklassen sind abstrakte Klassen (genauer Typen), die ausschließlich abstrakte Operationen ausführen. Schnittstellenklassen können andere Klassen erweitern. Notation Wie gewöhnliche Klasse, aber mit dem Stereotyp <<interface>>. Sie besitzen keine Attribute, sondern nur Operationen.

  10. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 10/24 String <<interface>> sortierbar isEqual(Object):Boolean isGreater5(Object):Boolean isEqual(String):Boolean isGreater(String):Boolean length():integer Alternativ: „Lolli Schnittstelle“ Interface A <<use>> Anbieter Nutzer 1 <<use>> Interface B <<use>> Nutzer 2 <<interface>> Interface C <<use>> <<use>> Interface C

  11. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 11/24 Objekt Verwandte Begriffe: Exemplar, Instanz Definition Ein Objekt ist eine im laufenden System konkret vorhandene und agierende Einheit. Jedes Objekt ist ein Exemplar seiner Klasse. Ein Objekt enthält durch Attribute repräsentierte Informationen, deren Struktur in der Klasse definierte Nachrichten empfangen. Das durch Nachrichten definierte Verhalten gilt für alle Objekte gleichermaßen, ebenso die Struktur ihrer Attribute. Die Werte der Attribute sind jedoch für jedes Objekt individuell.

  12. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 12/24 Notation Objekte werden durch Rechtecke dargestellt, die entweder nur ihren Namen tragen oder zusätzlich den Namen ihrer Klasse oder auch die Werte bestimmter oder aller Attribute. Werden Attributwerte angegeben, wird das Rechteck horizontal aufgeteilt. Zur Unterscheidung von der Klassennotation wird der Objektname unterstrichen. Zusätzlich beginnt der Objektname mit einem Kleinbuchstaben.

  13. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 13/24 Notation Objekt object:Klasse objekt :Klasse /Rolle:Klasse attribut=wert Objekt Klasse objekt <<instance of>> Für eine Menge gleichartiger Objekte kann vereinfacht ein so genanntes Multiobjekt notiert werden. Multiobjekt Multiobjekt Multiobjekt * Multiobjekt * Beispiel Klassenname Exemplarname ein Kreis:Kreis radius = 25 mittelpunkt = (10,10) Attributwerte Attributnamen

  14. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 14/24 Attribut Verwandte Begriffe: attribute, Variable, Instanzvariable, Datenelement Definition Ein Attribut ist ein (Daten-) Element, das in jedem Objekt einer Klasse gleichermaßen enthalten ist und von jedem Objekt mit einem individuellen Wert repräsentiert wird. Im Gegensatz zu Objekten haben Attribute außerhalb des Objekts, von dem sie ein Teil sind, keine eigene Identität. Attribute sind vollständig unter der Kontrolle der Objekte, von denen sie ein Teil sind. Über Zusicherungen kann der Wertebereich eines Attributwertes eingeschränkt werden (gegebenheitsabhängig). Mit der Angabe von Eigenschaftswerten können besondere Eigenschaften beschrieben werden. (Bsp. Read only)

  15. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 15/24 Varianten Abgeleitete Attribute  werden innerhalb eines Objektes automatisch berechnet Klassenattribute  Programmiersprachenunabhängig, Attribute außerhalb eines Objektes, aber alle Objekte einer Klasse können darauf zugreifen Sichtbarkeit Public  für alle sichtbar und benutzbar Protected  Klasse selbst, Unterklassen und als „friend“ deklarierte Klassen haben Zugriff Privat  nur die Klasse selbst und die als „friend“ deklarierten Klassen haben Zugriff („friend“ ist ein C++ bekannter Mechanismus, mit dem eine Klasse ausgewählten anderen Klassen Zugriffsrechte gewähren kann.)

  16. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 16/24 Operationen Verwandte Begriffe: Methode, Service, Prozedur, Routine, Funktion, Botschaft, Nachricht (Message), Dienstleistung Definition Operationen sind Dienstleistungen, die von einem Objekt angefordert werden können. Sie werden beschrieben durch ihre Signatur (Operationsname, Parameter). Eine Methode implementiert eine Operation, die eine Sequenz von Anweisungen ist. Eine Nachricht überbringt einem Objekt die Information darüber, welche Aktivität von ihm erwartet wird und fordert es so zur Ausführung einer Operation auf. Eine Operation trägt innerhalb einer Klassendefinition eine eindeutige Signatur, die sich aus dem Namen eventuell vorhandener Parameter (Argumente) und/oder vorhandener Rückgabewerte (Funktionsergebnis) ergibt. Operationen können Zusicherungen und Eigenschaftswerte n haben.

  17. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 17/24 • Anforderung • Verwandte Begriffe: requirement, Forderung • Definition • Anforderungen sind Aussagen über zu erbringende Leistungen. Durch sie wird der Funktions- und Leistungsumfang eines Produktes beispielsweise der zu erstellenden Software beschrieben. • Anforderungen beschreiben nicht nur die Funktionalität eines Systems (Was soll erstellt werden?), sondern auch auf welche Art (mit welcher Qualität?) das Verhalten für den Nutzer bereitgestellt wird. • Anforderungen sollten für alle Projektbeteiligten • eindeutig • vollständig und widerspruchsfrei • umsetzbar und • testbar verständlich formuliert sein.

  18. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 18/24 Zusicherung (Einschränkung) Verwandte Begriffe: constraint, assertion, Einschränkung, Integritätsregel, Bedingung, Eigenschaftswert, Stereotyp, Invariante Definition Eine Zusicherung ist ein Ausdruck, der die möglichen Inhalte, Zustände oder die Semantik eines Modellelementes einschränkt und der stets erfüllt sein muss. Zusicherungen in boolscher Form werden „assertions“ genannt. Object Constraint Language ist eine einfache formale Sprache, mit der UML-Modellen weitere Semantik hinzugefügt werden kann, die mit den übrigen UML-Elementen nicht oder nur umständlich ausgedrückt werden kann.

  19. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 19/24 Eigenschaftswert Verwandte Begriffe: proberty string, tagged value, Merkmal, Charakteristikum, Zusicherung Definition Eigenschaftswerte sind benutzerdefinierte, sprach- und werkzeugspezifische Schlüsselwort-Wert-Paare, die die Semantik einzelner Modellelemente um spezielle charakteristische Eigenschaften erweitern.

  20. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 20/24 Subsystem, Paket, Komponente Verwandter Begriff: gegenseitig Definitionen Subsystem: Teil eines Gesamtsystems, das nach außen durch eine Schnittstelle definiert ist und das die Struktur und die Zusammenarbeit seiner Einzelteile versteckt. Pakete: sind Ansammlungen von Modellelementen beliebigen Typs, mit denen das Gesamtmodell in kleinere überschaubarere Einheiten gliedert. Ein Paket definiert deinen Namensraum, d.h. innerhalb eines Paketes müssen die Namen der enthaltenen Elemente eindeutig sein. Jedes Modellelement kann in anderen Paketen referenziert werden, gehört aber zu genau einem (Heimat-)Paket. Pakete können wiederum Pakete beinhalten. Das alleroberste Paket beinhaltet das gesamte System.

  21. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 21/24 Komponente: Ist eine ausführbare und zur prinzipiellen Austauschbarkeit vorgesehene Softwareeinheit mit definierten Schnittstellen und eigener Identität.

  22. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 22/24 Notation, Subsystem, Paket, Komponente Subsystem <<subsystem>> Subsystem Subsystem Paket Vertrag Sach- versicherung Lebens- versicherung

  23. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 23/24 Partner Vertrag Sach- versicherung Lebens- versicherung

  24. UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 24/24 Notation Komponente Komponente Schnittstelle 1 Schnittstelle 2 Komponente Laufzeitobjekt

More Related