18.01.2014 Aufrufe

Metamodellbasierte und hierarchieorientierte ... - RosDok

Metamodellbasierte und hierarchieorientierte ... - RosDok

Metamodellbasierte und hierarchieorientierte ... - RosDok

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

2.2 Daten- <strong>und</strong> Metamodellierung 11<br />

Fehlern auftreten. Entweder enthält das Modell Fehler oder der Testfall. Diese Fehler kann der Entwickler<br />

mit Werkzeugen analysieren <strong>und</strong> daraufhin beseitigen.<br />

Bei den modellzentrierten bzw. -getriebene Softwareentwicklung ist der bisher übliche Ansatz Modelle<br />

in Code von objektorientierte Programmiersprachen zu transformieren, um daraus lauffähige Software<br />

weiterzuentwickeln. Es haben sich hier jedoch weitere Ansätze entwickelt, die visuellen Modelle angereichert<br />

mit textuellen Spezifikationen direkt ausführen sollen. Damit kann eine visuelle Programmierung, die eine<br />

bessere Dokumentation <strong>und</strong> Erfassbarkeit der Software für den Systementwickler verspricht, realisiert<br />

werden. Z.B. werden mit der UML-Action Language Alf [OMG10] oder SOIL [Büt11] die Modelle<br />

ausführbar.<br />

Bei der Softwareentwicklung ist bei großen Softwaresystemen darauf zu achten, dass eine verständliche<br />

Architektur entsteht. Hierfür haben sich Patterns stark verbreitet, welche bewährte Lösungen für konkrete<br />

Probleme unter Verwendung von Modellen bereitstellen. Design Pattens [GHJV02] sollen z.B. bewährte<br />

Lösungen für konkrete Probleme im objektorientierten Softwaredesign wiederverwendbar machen. Architekturmodelle<br />

<strong>und</strong> -patterns werden des Weiteren eine Abstraktionsebene höher zur Erstellung verständlicher<br />

<strong>und</strong> bewährter Softwarearchitekturen eingesetzt. Hier sind u.a. das Model-View-Controler Pattern [Ree79]<br />

bzw. das Seeheim-Modell [Tou07] zur Gestaltung von Softwaresystemen zu nennen.<br />

2.2 Daten- <strong>und</strong> Metamodellierung<br />

Datenmodellierung ist im Bereich der Datenbanken notwendig, um Datenbankentwürfe zu analysieren<br />

<strong>und</strong> zu diskutieren bevor sie implementiert werden. Die Analyse kann sich sowohl auf technische als<br />

auch fachliche Aspekte beziehen. Datenred<strong>und</strong>anzen sollen vermieden <strong>und</strong> adäquate Datenbezeichnungen<br />

gef<strong>und</strong>en werden. Hierfür werden typischerweise auch Fachexperten, die in der Regel keine IT-Experten<br />

sind, in den Datenentwurf mit einbezogen. Daher ist es wichtig, dass die Modellierungssprachen intuitiv <strong>und</strong><br />

leicht verständlich sind, damit Systementwickler <strong>und</strong> Fachexperten eine Gr<strong>und</strong>lage zur Diskussion haben.<br />

Hierfür wurde das Entity-Relationship-Modell [Che76] (ERM) entwickelt. Sind validierte Datenbankentwürfe<br />

erstellt, lassen sich daraufhin Transformationstechniken anwenden, um diese Modelle in Sprachen<br />

zu überführen, die Datenbank-Management-Systeme (DBMS) interpretieren. Analog zu ER-Modellen<br />

können auch UML-Klassendiagramme eingesetzt werden, um Daten <strong>und</strong> ihre Beziehungen visuell in einem<br />

Datenmodell zu beschreiben.<br />

Es gibt auch textuelle nicht grafische Beschreibungsarten von Daten. Vor allem hat sich hier XML durchgesetzt,<br />

wofür Dokument Type Definitions (DTDs) gültige XML-Datensätze textuell definiert können. XML<br />

selbst kann mit XML-Schemas (XSD) ebenfalls zur Beschreibung von gültigen XML-Datensätzen eingesetzt<br />

werden. Bei der sehr verbreiteten Technologie der Webservices wird die XML-basierte Datenbeschreibung<br />

WSDL genutzt, um die Schnittstelle des Webservice zu spezifizieren. Damit werden die Daten <strong>und</strong> deren Datentypen,<br />

die zum Aufruf des Webservice erwartet werden <strong>und</strong> die, die zurückgeliefert werden, beschrieben.<br />

Webservices werden von Service Orientierten Architekturen (SOA) <strong>und</strong> der Business Process Execution<br />

Language (BPEL) dazu genutzt, um die gegenseitige verteilte Kommunikation aufzubauen, die auf XML-<br />

Nachrichten besteht. Zusätzlich werden noch Informationen zur Kommunikation wie z.B. Netzadressen mit<br />

WSDL bereitgestellt. Eine weitere textuelle Beschreibung von Daten gibt es mit dem Data Dictionary in der<br />

Strukturierten Analyse (SA). Diese Datenbeschreibung wird bei der SA genutzt, um Daten über Gleichungen<br />

ähnlich zur grammatikalischen Beschreibung der Backus-Naur-Form zu spezifizieren [DeM79].<br />

In der Regel haben grafische Notationen bei der Modellierung gerade für ungeübte Nutzer Vorteile gegenüber<br />

rein textuelle Datenbeschreibungen. Hierfür ist die weite Verbreitung der ER-Diagramme oder UML-

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!