präsentation einer codegenerator softwarelösung objectif
TRANSCRIPT
![Page 1: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/1.jpg)
Präsentation einer Codegenerator Softwarelösung
objectiF
![Page 2: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/2.jpg)
MDSD - Präsentation des objectiF Tools 2
Inhaltsverzeichnis
AllgemeinesBeispielFazit
![Page 3: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/3.jpg)
MDSD - Präsentation des objectiF Tools 3
Allgemeines
• objectiF wird von der Firma microTOOL seit 1992 vertrieben(aktuelle Version 7.1)
• microTOOL wurde 1984 in Berlin gegründet• microTOOL bietet drei Softwarelösungen an
objectiF, näheres folgt spätercase/4/0, MDSD-Toolin-Step, Kollaborationstool
![Page 4: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/4.jpg)
MDSD - Präsentation des objectiF Tools 4
Grundprinzip des MDD
![Page 5: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/5.jpg)
MDSD - Präsentation des objectiF Tools 5
Ablauf der Modelltransformation
![Page 6: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/6.jpg)
MDSD - Präsentation des objectiF Tools 6
objectiFEinsatzbereiche
objectiF verwenden als … Zentrales, transaktionssicheres, mehrbenutzerfähiges Repository Erweiterte Modellierungsfunktionen für die professionelle Entwicklung Breite Sprachunterstützung und Generierung von C#, C++, Java, VB .NET,
BPEL, XSD und WSDL Reverse und Round Trip Engineering Generierung von Dokumentation Modellgetriebene Entwicklung
(MDD – Model-Driven Development) Hohe Entwicklungsgeschwindigkeit durch Transformation fachlicher in
technische Modelle mit Code-Generierung Sicheres, iteratives Transformieren
![Page 7: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/7.jpg)
MDSD - Präsentation des objectiF Tools 7
objectiFim Bereich MDD
Wichtige Eigenschaften von objectiF Iteratives Transformieren Fachliche Modelle kann man jederzeit ändern, erweitern und immer
wieder transformieren. Alle manuellen Ergänzungen, im generierten Code, bleiben bei erneuter Transformation erhalten.
Integrierte Technik zur Entwicklung eigener Modelltransformationen objectiF verfügt über eine homogene Umgebung sowohl für die
modellgetriebene Anwendungsentwicklung als auch für die Entwicklung eigener Modelltransformationen, mit denen man die Anwendungsentwicklung automatisieren kann.
Verkettung und Wiederverwendung von Modelltransformationen Damit kann man die Entwicklung ganzer Anwendungsfamilien durchgängig
automatisieren. Dies bedeutet, hohe Qualität und Produktivität.
![Page 8: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/8.jpg)
MDSD - Präsentation des objectiF Tools 8
BeispielErzeugung einer Persistenzschicht in C#
1. Auswählen des gewünschten Typs
![Page 9: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/9.jpg)
MDSD - Präsentation des objectiF Tools 9
BeispielErzeugung einer Persistenzschicht in C#
2. Systemname auswählen und Speicherort festlegen
![Page 10: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/10.jpg)
MDSD - Präsentation des objectiF Tools 10
BeispielErzeugung einer Persistenzschicht in C#
3. Automatisch angelegte Struktur
![Page 11: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/11.jpg)
MDSD - Präsentation des objectiF Tools 11
BeispielErzeugung einer Persistenzschicht in C#
4. Angelegte Struktur in VS
Automatisch erzeugte Datei DatabaseInitializer.cs
![Page 12: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/12.jpg)
MDSD - Präsentation des objectiF Tools 12
BeispielErzeugung einer Persistenzschicht in C#
5. Fachliches Modell anlegen
Entitätsklasse Company anlegen
Entitätsklasse Person anlegen
Aggregationsbeziehung Company hat Person
![Page 13: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/13.jpg)
13
BeispielErzeugung einer Persistenzschicht in C#
6. Fachliche Klassen in NHibernateklassen transformieren
MDSD - Präsentation des objectiF Tools
Company.cs
Company.hbm.xml
![Page 14: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/14.jpg)
MDSD - Präsentation des objectiF Tools 14
Was erzeugt objectiF aus dem fachlichen ModellKlasse mit dem Stereotyp «BusinessEntity»:• Klasse mit dem Stereotyp «NHibernateClass»• ID-Felder (Attribut und Property)• GetHashCode-Methode• Vergleichsoperationen• Properties, die den Status des Entities anzeigen (EntityIsDeleted, EntityIsTransient,EntityIsPersistent)• Versionsattribut mit Stereotyp «NHibernateAttribute»• Attribut semanticVersion, mit dem ein Versionssprung erzwungen werden kann• Methode Touch, die den Zähler von semanticVersion hochsetzt• Funktionen für die Implementierung des IValidatable Interface• Methoden für die Implementierung des ILifeCycle Interface• Attribut für die NHibernate Session• Zu jeder Methode, die die beiden Interfaces IValidatable und ILifecycle implementiert, wird eine gleichnamige, virtuelle Methode
erzeugt, in der Code ergänzt werden kann. Die Methoden können in abgeleiteten Klassen überschrieben werden. • XML-Elemente in den KonfigurationsdateienAttribut:• Attribut mit dem Stereotyp «NHibernateAttribute»• Property mit dem Stereotyp «NHibernateClassProperty»• XML-Elemente in den KonfigurationsdateienAssoziation und Aggregation:• Beziehungsattribute mit dem Stereotyp «OwnerAttribute» und «InverseAttribute»• Beziehungs-Properties mit dem Stereotyp «NHibernateClassProperty»• XML-Elemente in den KonfigurationsdateienGeneralisierung (in den abgeleiteten Klassen):• Methoden in den abgeleiteten Klassen, die die Methoden der Basisklasse überschreiben könne• XML-Elemente in den Konfigurationsdateien
![Page 15: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/15.jpg)
MDSD - Präsentation des objectiF Tools 15
BeispielErzeugung einer Persistenzschicht in C#
7. Generierte Klasse SessionManager.cs
SessionManager.cs
![Page 16: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/16.jpg)
MDSD - Präsentation des objectiF Tools 16
BeispielErzeugung einer Persistenzschicht in C#
8. Anlegen der Testklasse SampleMain.cs
SampleMain.cs
![Page 17: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/17.jpg)
MDSD - Präsentation des objectiF Tools 17
BeispielErzeugung einer Persistenzschicht in C#
9. Architekturmuster bauen
![Page 18: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/18.jpg)
MDSD - Präsentation des objectiF Tools 18
BeispielErzeugung einer Persistenzschicht in C#
Erweitern des fachlichen Modells
![Page 19: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/19.jpg)
MDSD - Präsentation des objectiF Tools 19
BeispielErzeugung einer Persistenzschicht in C#
![Page 20: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/20.jpg)
MDSD - Präsentation des objectiF Tools 20
BeispielErzeugung einer Persistenzschicht in C#
Technische Klassen
![Page 21: Präsentation einer Codegenerator Softwarelösung objectiF](https://reader035.vdocuments.mx/reader035/viewer/2022070310/55204d7049795902118c1bac/html5/thumbnails/21.jpg)
MDSD - Präsentation des objectiF Tools 21
Fazit
positiv• guten Support• gute Dokumentation
negativ• hohe Kosten• Einarbeitungsaufwand• nicht ganz einfache
Bedienung