Model-Driven & Service-Oriented Architectures (MDA + SOA)
Posts 11-15 of 15
- Back
- Next
-
Peter Friese Premium MemberThe company name is only visible to registered members.Re^8: "Sanfte" Einführung von MDSD
Matthias Bohlen schrieb:
Peter Friese schrieb:
Im AndroMDA-Universum meinen wir (ich bin AndroMDA Committer) mit "Generator" die Engine eines UML Tools.
Hm, nicht ganz - nicht im UML Tool steckt der Generator, sondern in AndroMDA. Ups - war wohl schon spät :-) Ich meinte nicht UML-Tool, sondern MDA-Tool.
Viele Grüße,
Peter
- 05 Apr 2006, 10:46 am
-
Sven Efftinge Premium MemberThe company name is only visible to registered members.Re: "Sanfte" Einführung von MDSD
Hi Boris,
ich versuch mal die Diskussion neu zu entfachen ;-)
>Gib ein klares Programmiermodell vor !
>Sollte diese nicht vorhanden sein, reicht die Definition eines solchen als erste Innovation (wie oben: MDSD >mit menschlichem Generator).
Das sollte in jedem Fall vorhanden sein (ob mit oder ohne MDSD). Das gute an MDSD ist, das es nicht nur klar, sondern auch formal ist. Und das Team die gewählten Abstraktionen verwenden *muss* (oder eben explizit ändert)
>Verwende eine einfache Design-Sprache
>- Der Standardentwickler sollte das formale Modell lesen und verstehen können.
>- Alle modellierten Artefakte sollen visualisierbar sein (und zwar nicht erst im dritten Untermenü, sondern im Diagramm)
Warum Diagramm? Ist eine graphische Syntax wirklich für alle Probleme die beste Darstellung?
Und es geht ja nicht nur um die Präsentation, sondern auch um das ändern / editieren. Bei graphischen Sprachen hab ich da irgendwie immer die maus in der hand :-(
Das die DSL einfach sein soll, ist klar. Das erreicht man natürlich nicht indem man seine mühsam extrahierten Abstraktionen in UML zwängt...
>Vermeide die Einarbeitung in den Generator !
Es ist schon wichtig, dass es ein paar Leute gibt, die wissen worum es geht.
Die MDSD Konzepte zu erlernen ist das Hauptproblem. Das Framework (zumindest oAW4) selbst ist dann relativ leicht zu verstehen.
>Da gibt's 3 Möglichkeiten:
>- Nutz den Mensch als Generator - das geht aber nur temporär, denn das ist ineffizient und langweilig (s.o)
Ich glaub in Indien kann man solche Generatoren mieten ;-)
Die sind aber manchmal ungenau, wie ich gehört habe...
>- Bau einen Internen auf
>- Frage einen Externen mit Ahnung
Ja, aber von Ihm lernen. Nicht das alles zusammenbricht, wenn er geht...
>Mach Dich nicht toolabhängig !
Warum nicht?
Passiert es so oft, dass man das tool wechseln will?
Das ist übrigens auch eine der "MDA-Fehlideen", dass man unbedingt von der Technologie abstrahieren muss. Ich will abstrahieren, aber nicht weil ich eventuell von Java auf C# gehen will...
>- Der generierte Code muss klar und verständlich sein. Man sollte den Generator jederzeit abschalten können.
Ja der Code muss gut aussehen. Den Generator rausschmeissen und von Hand weiterprogrammieren, ist aber ein echtes Don't, oder? Du wolltest damit wahrscheinlich nur sagen, dass ein Weg zurück jederzeit möglich ist...
>- Man sollte die generierten Artefakte jederzeit auf Korrektheit prüfen können.
Das muss unbedingt passieren, und zwar automatisch.
Nicht nur durch den Compiler, sondern auch durch Unittests.
Aber nicht in jedem Projekt neu, sondern in einem extra GeneratorReferenz Projekt. Das Testmodell muss (möglichst) alle Kombination und Konzepte einmal enthalten, der daraus generierte Code wird dann auf Herz und Nieren getestet.
Viele Grüsse aus Flensburg,
Sven
- 06 Apr 2006, 6:34 pm
-
André JacobiThe company name is only visible to registered members.Re: "Sanfte" Einführung von MDSD
Hallo zusammen,
als Newbie in dieser Thematik hätte ich ein paar Fragen zur "Sanften" Einführung von MDSD im Bereich "Struts, Spring, Hibernate".
Welche Komponenten in diesen Frameworks bieten die besten Ansätze um schnell ins MDSD Einblick zu bekommen und generierten Code zu erzeugen (StrutsActions, StrutsForms, SpringBeans, Hibernate Pojos)?
Spontan hätte ich mich auf die Pojos gestürzt, aber hat diesbezüglich einer Erfahrung von euch? Wie geht man am besten vor?
Als Modellierungstool hätte ich nur MyEclipse 4.1.1 mit integrierten UML Editor zur Verfügung. Ist dies ausreichend?
Danke und schönes Wochenende
André
- 07 Apr 2006, 08:52 am
-
Frank Egger Premium MemberThe company name is only visible to registered members.Re^2: "Sanfte" Einführung von MDSD
hallo herr henke!
ich persönlich würde ihnen empfehlen mit service- (spring) und persistenz-ebene (hibernate) zu beginnen, da die metamodelle in beiden bereichen sehr überschaubar sein können und man für vergleichsweise wenig modellierungsaufwand bereits viel generierte, lauffähige infrastruktur geschenkt bekommt.
zustandsautomaten (z.b. struts) sind in der modellierung komplexer, da man i.d.R. verknüpfungen zwischen dynamischen und statischen modellen hat.
als modellierungstool würde ich ihnen magicdraw empfehlen. das ist in der community edition kostenlos und man kann die oben genannten statischen modelle für persistenz- und service-schicht uneingeschränkt modellieren. auch ist die zusammenarbeit mit den bekanntesten java-generatoren andromda und oaw gegeben, so dass die tool-chain keine probleme bereiten sollte.
viele grüße,
frank egger
André Henke schrieb:
Hallo zusammen,
als Newbie in dieser Thematik hätte ich ein paar Fragen zur "Sanften" Einführung von MDSD im Bereich "Struts, Spring, Hibernate".
Welche Komponenten in diesen Frameworks bieten die besten Ansätze um schnell ins MDSD Einblick zu bekommen und generierten Code zu erzeugen (StrutsActions, StrutsForms, SpringBeans, Hibernate Pojos)?
Spontan hätte ich mich auf die Pojos gestürzt, aber hat diesbezüglich einer Erfahrung von euch? Wie geht man am besten vor?
Als Modellierungstool hätte ich nur MyEclipse 4.1.1 mit integrierten UML Editor zur Verfügung. Ist dies ausreichend?
Danke und schönes Wochenende
André
- 07 Apr 2006, 7:58 pm
-
Karsten ThomsThe company name is only visible to registered members.Re^3: "Sanfte" Einführung von MDSD
Ich kann mich Frank's Tipp nur anschließen. POJOs sind immer eine gute Wahl für den Anfang. Für diese kommt man mit einem Basismetamodell (UML, Ecore) schon aus. Danach kann man sich einer Technologie widmen, die mit einer einfachen DSL auskommt ("Service", "Entity", "Key", ...) und dafür Code erzeugen usw.
Gruß,
~Karsten Thoms
- 07 Apr 2006, 9:30 pm
- Back
- Next
