MB: Modellierung Diagramübergreifend Standard?

moin,

zur Frage:

kann man in einem konreten Klassen Diagramm ein Package Diagramm verwenden, und Klassen ohne weiteres in ein Package Diagramm-Element, UML konventionsgemäß, hinein modellieren?

zum Problem:

in meiner modellierung gibt es...

  • sehr viele fast identische Klassen
  • die in jeweilge Gruppen sortiert (z.B. Foo\Bar\, Foo\Qaz\, Foo\Tok)
  • die aber sich so sehr unterscheiden, das man sie nicht als eine Klasse zusammenfassen kann

fast alle müssen eine assoziation zwischen zwei unterschiedlichen Klassen haben. Das ruft ein assoziations chaos hervor.

lgmb

  1. Hallo MB,

    ich kann Dir Deine konkrete Frage nicht beantworten, dazu weiß ich zu wenig über UML.

    Aber immer dann, wenn jemand schreibt: „ich habe ein Problem A und eine Lösung X dafür, und beim Umsetzen von X stoße ich auf Problem B, bitte hilf mir bei B" - dann ist meine reflexhafte Reaktion: Ist X die richtige Lösung für A?

    Kannst hier Vererbung helfen? D.h. die Assoziation liegt auf der Superklasse, und dein Klassenrudel[1] erbt davon? Dann musst du sie nur zur Superklasse hin modellieren.

    Rolf

    --
    sumpsi - posui - clusi

    1. um den missverständlichen Begriff Klassenschwarm zu vermeiden... ↩︎

    1. um den missverständlichen Begriff Klassenschwarm zu vermeiden..

      Das ist ein Fehler den viele machen die mit OOP beginnen: Sie ertränken sich in einer Klassenflut 😉

      1. moin,

        um den missverständlichen Begriff Klassenschwarm zu vermeiden..

        Das ist ein Fehler den viele machen die mit OOP beginnen: Sie ertränken sich in einer Klassenflut 😉

        wie gesagt, wenn man Softwarearchitekt ist nicht 😉. Nicht für ungut. Bis dann.

        lgmb

        1. moin,

          um den missverständlichen Begriff Klassenschwarm zu vermeiden..

          Das ist ein Fehler den viele machen die mit OOP beginnen: Sie ertränken sich in einer Klassenflut 😉

          wie gesagt, wenn man Softwarearchitekt ist nicht 😉. Nicht für ungut. Bis dann.

          Den Fehler hab ich übrigens auch gemacht. Und daraus gelernt natürlich. Wer aus seinen Fehlern lernen kann darf auch welche machen.

          Meine Philosophie: in Framework muss so beschaffen sein, daß zum Entwicklen einer darin laufenden Anwendung Grundkenntnisse in der jeweiligen Programmiersprache genügen!

          MFG

          1. moin,

            Meine Philosophie: in Framework muss so beschaffen sein, daß zum Entwicklen einer darin laufenden Anwendung Grundkenntnisse in der jeweiligen Programmiersprache genügen!

            Ich kenne einen Unternehmer bei dem ist das genau umgekehrt. Der hat den Code für seine Geschäftsidee anfangs selbst geschrieben als einen Einwegcode der jeden Praktikanten zur Verzweiflung bringt.

            Und genau hier sehen wir den Unterschied zwischen Theorie und Praxis!

            MFG

    2. moin,

      ich kann Dir Deine konkrete Frage nicht beantworten, dazu weiß ich zu wenig über UML.

      Schade. Danke für die Info. Wichtig!!!

      Kannst hier Vererbung helfen? D.h. die Assoziation liegt auf der Superklasse, und dein Klassenrudel[^1] erbt davon? Dann musst du sie nur zur Superklasse hin modellieren.

      Habs anders gedreht. UML ist echt ein super werkzeug!!! Wenn man so ein - wie du treffenderweise sagst - Klassenrudel hat, kann einem das CD schon echt eine sehr große Hilfe sein.

      lgmb

  2. moin,

    in meiner modellierung gibt es...

    • sehr viele fast identische Klassen
    • die in jeweilge Gruppen sortiert (z.B. Foo\Bar\, Foo\Qaz\, Foo\Tok)
    • die aber sich so sehr unterscheiden, das man sie nicht als eine Klasse zusammenfassen kann

    Das ist ja schon ein Widerspruch in sich: Fast idenisch aber sehr unterschiedlich.

    fast alle müssen eine assoziation zwischen zwei unterschiedlichen Klassen haben. Das ruft ein assoziations chaos hervor.

    Es gibt 2 Möglichkeiten Beziehungen zwischen Klassen herzustellen:

    1. Vererbung
    2. Delegation einzelner Methoden

    Wobei sich diese Beziehungen nicht gar nicht über die Klassen sondern über deren Instanzen abspielen.

    MFG

    PS: Zum Thema Viele Klassen

    --> Es ist ja gerade der Sinn von OOP (als eine praktische Wissenschaft!) sie nicht zum Selbstzweck zu betreiben!

    1. moin,

      moin,

      in meiner modellierung gibt es...

      • sehr viele fast identische Klassen
      • die in jeweilge Gruppen sortiert (z.B. Foo\Bar\, Foo\Qaz\, Foo\Tok)
      • die aber sich so sehr unterscheiden, das man sie nicht als eine Klasse zusammenfassen kann

      Das ist ja schon ein Widerspruch in sich: Fast idenisch aber sehr unterschiedlich.

      Ja artimmt, sorry. ich habs etwas umständlich formuliert. aber ich hoffe

      fast alle müssen eine assoziation zwischen zwei unterschiedlichen Klassen haben. Das ruft ein assoziations chaos hervor.

      Es gibt 2 Möglichkeiten Beziehungen zwischen Klassen herzustellen: […]

      Ich habs irgend wie Hinbekommen - "Königsberger Brückenproblem" Paradoxie 😀.

      Wobei sich diese Beziehungen nicht gar nicht über die Klassen sondern über deren Instanzen abspielen.

      verdammt!!! ich meinte natürlich Instanzen Sorry dafür 😕.

      lgmb

      1. Instanzen sind praktisch das was eine Klasse zum Leben erweckt. MFG

  3. kann man in einem konreten Klassen Diagramm ein Package Diagramm verwenden, und Klassen ohne weiteres in ein Package Diagramm-Element, UML konventionsgemäß, hinein modellieren?

    UML ist nur ein Werkzeug, es dient dazu Software-Systeme zu visualisieren und schafft so eine Art Kommunikationsmedium für System-Designer*innen. Wenn du glaubst, dass ein ein bestimmtes Diagramm zum Verstädnis des Systems beitragen könnte, dann zeichne das Diagramm. Wenn es eine UML-konforme Lösung gibt, gut; wenn nicht, dann erfinde deine eigene Notation und schreib eine Erklärung in die Legende. Außerhalb der Schule wird niemand den Rotstift nur wegen der Form ansetzen, solange die Intention klar erkennbar ist.

    In sehr seltenen Fällen gibt es bürokratische Prozesse, die markelloses UML erfordern, aber selbst dann wird intern sehr viel mit formlosen Diagrammen gearbeitet. Das ist so ein bißchen vergleichbar mit einem Staatsbesuch: wenn der Flieger landet gibt es zunächst eine gehörige Zeremonie mit albernen militärischen Ehren und allem Pipapo. Später in den Arbeitstreffen gehts dann zur Tagesordnung über und dann diskutieren normale Menschen. Das Protokoll will es halt so.

    1. Dieser Beitrag wurde gelöscht: Der Beitrag ist ein Duplikat eines anderen Beitrags.
    2. moin,

      kann man in einem konreten Klassen Diagramm ein Package Diagramm verwenden, und Klassen ohne weiteres in ein Package Diagramm-Element, UML konventionsgemäß, hinein modellieren?

      UML ist nur ein Werkzeug, […]

      ein "sehr mächtiges" Werkzeug - finde ich!

      es dient dazu Software-Systeme zu visualisieren und schafft so eine Art Kommunikationsmedium für System-Designer*innen.

      …und zum designen vor der eigentlichen Programmarbeit. Ich glaube kaum das die Windows 10-Programmierer einfach in die Tasten gehauen haben und schwupps wart W10 geboren. Das wäre was 😀.

      Wenn du glaubst, dass ein ein bestimmtes Diagramm zum Verstädnis des Systems beitragen könnte, dann zeichne das Diagramm.

      jupp

      Wenn es eine UML-konforme Lösung gibt, gut; wenn nicht, dann erfinde deine eigene Notation […]

      das würde mir echt alles über den Kopf wachsen 😕.

      […]: wenn der Flieger landet gibt es zunächst eine gehörige Zeremonie mit albernen militärischen Ehren und allem Pipapo. Später in den Arbeitstreffen gehts dann zur Tagesordnung über und dann diskutieren normale Menschen. Das Protokoll will es halt so.

      gute Analogie 😀.

      lgmb