Frage

Welche Werkzeuge stehen für die Metamodellierung zur Verfügung?

Speziell für die Entwicklung von Diagrammeditoren, gerade in der Erprobung Eclipse GMF

Sie fragen sich, welche anderen Optionen es gibt?Gibt es einen Vergleich?

War es hilfreich?

Lösung

Ihre Frage ist aufgrund vieler Aspekte einfach zu weit gefasst für eine einzelne Antwort.

Erstens ist Metamodellierung kein festgelegter Begriff, sondern eine sehr unscharfe Sache, einschließlich der Modellierung von Modellen von Modellen und der Verwendung von Begriffen wie MDA.

Zweitens gibt es zahlreiche Optionen für die Entwicklung von Diagrammeditoren – der Eclipse-Weg ist sicherlich eine gute Option.

Um Ihnen zumindest den Einstieg in die Eclipse-Abteilung zu erleichtern:

  • Schauen Sie sich MOF an, das ist Architektur für „Meta-Modellierung“ von OMG (den Jungs, die UML pflegen).
  • Von dort aus nähern wir uns EMOF, einer Teilmenge, die vom Eclipse Modeling Framework in der Inkarnation von Ecore unterstützt wird.
  • Es könnte in der Tat eine gute Idee sein, etwas auf GMF aufzubauen, da dies die Art und Weise ist, wie bestehende Diagrammeditoren für die Eclipse-Plattform vorgehen (z. B.Omondos EclipseUML)
  • Es gibt viele Tools in der Eclipse-Umgebung, die Ecore nutzen können – ich hoffe einfach, dass GMF auf Ecore selbst aufbaut.

Andere Tipps

Durchm hat dafür eine API – ich konnte ihren UML-Editor ziemlich einfach in ein einfaches ER-Modellierungstool umwandeln, indem ich die Pfeilstile änderte.Mit einem DB-Reverseengineering-Tool, das ich in SourceForge gefunden habe (habe das Schema genommen und Dia-Dateien ausgespuckt), könnte man damit Datenbanken dokumentieren.Obwohl das, was ich getan habe, ziemlich trivial war, war die API recht einfach und ich brauchte nicht lange, um herauszufinden, wie ich die Änderung vornehmen konnte.

Wenn Sie Smalltalk ausprobieren möchten: Früher gab es ein Smalltalk-Meta-Case-Framework namens KUPPEL was so etwas bewirkt.Wenn Sie herunterladen VisualWorks, DOME ist eines der bereitgestellten Pakete.

GMF ist ein schönes Beispiel.Im Kern liegt dies EMF/Ecore, wie Computerkram sagt.Ecore wird auch für die Basis von Eclipse verwendet UML2 .Der prestigeträchtige Anwendungsfall und Proof of Concept für GMF ist sicherlich UML2-Tools.

Obwohl es sich im Allgemeinen um ein UML-Tool handelt, würde ich es mir ansehen StarUML.Es unterstützt zusätzliche Module über das bereits eingebaute hinaus.Wenn das, was Sie benötigen, nicht eingebaut oder als Modul vorhanden ist, können Sie es vermutlich selbst erstellen, aber ich weiß nicht, wie schwierig das ist.

Die Metamodellierung erfolgt größtenteils in Smalltalk.

Vielleicht möchten Sie einen Blick auf MOOSE werfen (http://moose.unibe.ch).Es werden viele Tools zum Programmverständnis entwickelt.Die meisten basieren auf Smalltalk.Es gibt auch einige Java- und C++-Arbeiten.

Zwei der beeindruckendsten Tools sind CodeCity und Mondrian.CodeCity kann die Codeentwicklung im Laufe der Zeit visualisieren, Mondrian bietet skriptfähige Visualisierungstechnologie.

Und natürlich gibt es den Klassiker HotDraw, der auch in Java verfügbar ist.

Für die Webentwicklung gibt es auch Magritte, das Meta-Beschreibungen für Seaside bereitstellt.

Ich würde Ihnen dringend empfehlen, sich mit DSM (Domain Specific Modeling) als allgemeinem Thema zu befassen, da Meta-Modellierung direkt damit zusammenhängt.Es gibt Eclipse-basierte Tools wie GMF, die derzeit Java-Codierung erfordern, sich aber gut in andere Eclipse-Tools und UML integrieren lassen.Es gibt jedoch noch zwei weitere Klassen.

  1. MetaCase, das ich als reines DSM-Tool bezeichne, da es darauf abzielt, einem Entwickler/Modellierer die Erstellung eines brauchbaren grafischen Modells mit nahezu ebenso viel Programmieraufwand zu ermöglichen.Darüber hinaus kann es problemlos für die Nutzung durch andere bereitgestellt werden.GMF und Microsofts Beta-Softwarefabrik/DSM-Tool fallen in diese Kategorie.

  2. Reine Metamodellierungstools, die nicht für DSM-Tools, Codegenerierung und dergleichen gedacht sind.Ich verfolge diese Tools nicht so genau, da ich mich für Anwendungen interessiere, die Tools für KMU, Fachexperten und andere generieren, um sie zu nutzen und einen Mehrwert für ein aktives Projekt beizutragen, nicht für die Modellierung um der Modelle willen, oder nur für Dokumentation und Theorie.

Wenn Sie mehr über Nummer 1, die Tooling-Anwendungen für DSMs/Meta-Modellierung, erfahren möchten, dann schauen Sie sich meinen Beitrag an „DSMForum.org großartige Ressourcen, einen Blick wert.“ oder navigieren Sie einfach direkt zum DSMForum.org

Wenn Sie an etwas interessiert sind, das mit Modellierung und nicht mit der Generierung von Code zu tun hat, schauen Sie sich Folgendes an adoxx.org.Als Metamodellierungsplattform bietet sie Funktionen und Mechanismen für die schnelle Entwicklung Ihres eigenen DSL und ermöglicht es Ihnen, sich auf die Anforderungen des Modells zu konzentrieren (Geschäftsanforderungen, Design/Spezifikation auf konzeptioneller Ebene).Es gibt eine aktive Community aus Wissenschaft und Praxis, die sowohl prototypische als auch kommerzielle Anwendungen auf Basis der Plattform entwickelt.Könnte interessant sein...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top