objectiF
objectiF Eclipse Edition
objectiF Visual Studio
.NET Edition
objectiF Enterprise
Edition
Die richtige objectiF-
Variante für Sie
Model-Driven
Development
RIA modellgetrieben entwickeln
NHibernate modell- getrieben entwickeln
Download
Tutorials
Filme
Datenblätter
objectiF im Detail
Web-Entwicklung
SOA-Entwicklung
Newsletter
Softwaretechnik
Dienstleistungen
Aus Kundenprojekten
Veröffentlichungen
Ansprechpartner
Preise
Kaufen
Diese Seite als PDF
microTOOL - Tools für Projektmanagement und Softwareentwicklung
microTOOL    
Download mit allen Features

 

Werfen Sie einen kurzen Blick auf...
Web-Anwendungen in Java - Teil 1
Web-Anwendungen in Java - Teil 1
Film ansehen   
Film downloaden   
 Web-Anwendungen in Java - Teil 2
Web-Anwendungen in Java - Teil 2
Film ansehen   
Film downloaden   
 

Der Bedarf an Software steigt weit schneller als die Effizienz, Qualität und Agilität der Entwicklung. In anderen Branchen ist man in ähnlicher Lage längst von der individuellen Fertigung auf automatisierte Fertigungstechniken umgestiegen.

Ein vielversprechender Weg auch für die Softwareentwicklung? Ja – immer dann, wenn Anwendungen entwickelt werden, die zwar unterschiedliche Funktionen erfüllen, aber Gemeinsamkeiten der fachlichen und technischen Architektur aufweisen, also eine Softwarefamilie bilden.

In diesen Fällen kann man die Entwicklung der Gemeinsamkeiten modellgetrieben auf der Basis der UML automatisieren. Genau das ist die Idee der Software Factories.

Charakteristisch für Software Factories, die auf modellgetriebener Entwicklung (Model-Driven Development, kurz MDD) basieren, ist die klare Trennung von Fachlichkeit und Technologie: Der Entwickler entwirft die fachliche Architektur einer Anwendung. Die technische Architektur und große Teile des Codes werden per Modelltransformationen automatisch erzeugt.

Ändern sich die fachlichen Anforderungen, muss der Entwickler wiederum nur die fachlichen Modelle anpassen. Per Modelltransformation werden in der Software Factory die zugehörigen technischen Modelle und der Code aktualisiert.

objectiF stellt als Software Factory Folgendes bereit:

  • die Modelltypen der fachlichen Architektur
  • die Modell- und Dateitypen der technischen Architektur
  • einen Workspace mit Projektstrukturen
  • fertige Modelltransformationen für die automatische Umsetzung der fachlichen in die technische Architektur einschließlich Codegenerierung
  • die Möglichkeit zur Entwicklung benutzereigener Modelltransformationen
  • Beispielsysteme und Tutorials als Einführungsunterstützung.

objectiF als Softwarefabrik für Web-Anwendungen in Java

objectiF unterstützt Sie durchgängig von der Anforderungsdefinition über den Softwareentwurf mit der UML bis hin zum Code. Aber objectiF ist weit mehr als ein klassisches UML-Tool. objectiF ermöglicht Ihnen, Ihre Softwareentwicklung im Sinne einer Software Factory zu standardisieren und weitgehend zu automatisieren. Die Automatisierung basiert auf den Konzepten der modellgetriebenen Entwicklung (Model-Driven Development, kurz MDD) und ist – Ihrem Bedarf entsprechend – anpassbar und erweiterbar.

Hier lernen Sie objectiF als Software Factory für Web-Anwendungen kennen.

Die objectiF Web Factory at work

Ausgangspunkt der Entwicklung von Web-Anwendungen mit objectiF ist das Requirements-Modell aus Anwendungsfalldiagrammen, strukturierten Texten oder Aktivitätsdiagrammen zur Beschreibung von Anwendungsfällen und fachlichen Klassen. Auf dieser Grundlage wird die fachliche Architektur vom Entwickler entworfen und diese dann maschinell in eine technische Architektur transformiert. Technologische Basis dafür bilden EJB 3.0 und JavaServer Faces.

Die fachliche Architektur gestalten

Zu den Leistungen der objectiF Web Factory gehört, dass sie eine Methode zur Beschreibung der fachlichen Architektur definiert. Die Methode gibt vor, welche Inhalte spezifiziert werden müssen, welche Beschreibungsmittel dazu am besten eingesetzt werden und welche Zusammenhänge zwischen den Architekturelementen bestehen. Der Methode folgend wird eine Web-Anwendung mit drei aufeinander abgestimmten Modelltypen vollständig spezifiziert – und zwar mit:

  • Präsentationsmodell: Es beschreibt den Page Flow der Web-Seiten der Anwendung. Als Beschreibungsmittel werden Zustandsdiagramme der UML benutzt: Ihre Zustände repräsentieren Web-Seiten, die Zustandsübergänge stellen die Seitenwechsel dar, die durch Anwenderereignisse ausgelöst werden. Bei einem Zustandsübergang können Aktionen ausgelöst werden, die Business-Operationen eines Business-Service entsprechen. Und damit sind wir schon beim zweiten Modelltyp:
  • Service-Modell: Die fachliche Funktionalität der Anwendung wird in Form von Service-Modellen spezifiziert. Service-Modelle werden als UML-Klassendiagramme dargestellt. Die objectiF Web Factory gibt dabei folgende Konventionen vor: Ein Service-Modell beschreibt Leistungen der Anwendung als Klassen vom Stereotyp «BusinessService». Die Methoden dieser Klassen erhalten den Stereotyp «BusinessOperation».
  • Entity-Modell: Es dient der Spezifikation der persistenten Geschäftsdaten, die von Business-Operationen benutzt werden. Darstellungsmittel sind wieder UML-Klassendiagramme mit Geschäftsklassen von Stereotyp «BusinessEntity».
Die fachliche Architektur einer Web-Anwendung in der objectiF Web Factory aus Presentation-, Service- und Entity-Layer

VergrößernDie fachliche Architektur einer Web-Anwendung in der objectiF Web Factory aus Presentation-, Service- und Entity-Layer

Fachliche in technische Modelle maschinell transformieren

Die objectiF Web Factory bietet Ihnen Transformationen an, die die fachlichen Modelle in technische Modelle umsetzen und dabei gleichzeitig große Teile des Quellcodes generieren. Die Transformation eines Modells wird einfach per Kontextmenüfunktion angestoßen.

Von den fachlichen zu den technischen Modellen einer Web-Anwendung - durch maschinelle Modelltransformationen

VergrößernVon den fachlichen zu den technischen Modellen einer Web-Anwendung - durch maschinelle Modelltransformationen

Für den automatisierten Weg vom fachlichen zum technischen Modell bringt die objectiF Web Factory drei Modelltransformationen mit: je eine zur maschinellen Umsetzung

  • des Präsentationsmodells in JavaServer Faces-Artefakte,
  • des fachlichen Entity-Modells in EJB 3.0 EntityBeans mit Annotations. Alle Beans markiert objectiF mit dem Stereotyp «EntityBean». Die in den Attributen des fachlichen Modells verwendeten technischen Typen werden durch Java-Standardtypen ersetzt. Alle Attribute werden mit dem Stereotyp «PersistentAttribute» markiert. In jede Bean generiert objectiF Zugriffsmethoden. Für die technische Abbildung der modellierten Beziehungen zwischen den Klassen des Entity-Modells erzeugt objectiF in den beteiligten Beans ein Beziehungsattribut. Für die Beziehungsattribute legt objectiF auch gleich passende Zugriffsmethoden an,
  • des fachlichen Service-Modells in EJB 3.0 SessionBeans. objectiF generiert ein passendes Remote-Interface zu jeder Bean und einen Service Locator. Aus jeder Business-Operation entsteht in der SessionBean eine Methode, die mit dem Stereotyp «BeanMethod» markiert wird. Alle fachlichen Typen werden durch technische Java-Typen ersetzt.
Die technische Architektur einer Web-Anwendung in der objectiF Web Factory - per Modelltransformation maschinell erzeugt

VergrößernDie technische Architektur einer Web-Anwendung in der objectiF Web Factory - per Modelltransformation maschinell erzeugt

Neben dem Layout der Java ServerPages lässt sich bei diesem Vorgehen im Wesentlichen nur eines nicht generieren: die Ausführungslogik der Bean-Methoden. In dem per Modelltransformation erzeugten Code muss ihre Implementierung manuell ergänzt werden. Dies geschieht per Round Trip Engineering mit Eclipse direkt aus der generierten UML-Darstellung der SessionBeans heraus.

Durch die Modelltransformationen entstehen Beziehungen zwischen fachlichen und technischen Elementen einer Anwendung. Sie werden von objectiF konsistent gepflegt und für eine bequeme Navigation zwischen den Modellen genutzt.

Iterativ transformieren

Die objectiF Web Factory unterstützt iterative Entwicklungsstrategien. Das heißt, es ist möglich, das fachliche Modell immer wieder zu ändern, zu erweitern und erneut zu transformieren, natürlich ohne dass die manuell implementierten Teile beeinträchtigt werden. Dabei bleiben die vielfältigen Beziehungen zwischen fachlichen und technischen Modellelementen persistent und navigierbar. Die Entwicklung wird damit dauerhaft nachvollziehbar gemacht. Alle Elemente der fachlichen und technischen Modelle und der Code können immer wieder zusammengeführt werden. Damit steht jederzeit ein vollständiges, konsistentes Gesamtmodell der service-orientierten Anwendung für die Weiterentwicklung zur Verfügung.

Flexibel und anpassbar

Die in der objectiF Web Factory enthaltenen Modelltransformationen können jederzeit modifiziert, erweitert und an andere Zieltechnologien angepasst werden. objectiF bietet Unterstützung bei der Entwicklung benutzereigener Modelltransformationen.

 

Telepräsentation - objectiF schnell kennenlernen

Fragen zu objectiF?
Datenschutzerklärung

 

Copyright © 2001 - 2010 microTOOL GmbH, Berlin. Alle Rechte vorbehalten. Letzte Änderung: 25. September 2007