Aufrufe
vor 3 Jahren

02 | 2011 NEWS

  • Text
  • Daten
  • Experten
  • Innovationen
  • Analyse
  • Security
  • Management
  • Erfolgreich
  • Internet
  • Banking
  • Technologie
  • Msggillardon
  • Anforderungen
  • Steuerung
  • Banken
  • Kreissparkasse
  • Sculptor
  • Stresstests
  • Basel
  • Marzipan
  • Risiken
Druck von allen Seiten

u Business u

u Business u Informationstechnologie Wie man an dem Beispiel sieht, ist das Modell mit Vorkenntnissen in Domain Driven Design bereits gut verständlich und kann trotz der Nähe zum Code auch mit dem Fachbereich des Kunden sehr gut diskutiert werden. Der Austausch mit dem Kunden wird durch die Möglichkeit des HTML-Exports und die Visualisierung über Graphviz weiter gefördert. Abbildung 2 zeigt das von Graphviz mittels Sculptor generierte Bild des Modells. baufi objekt 0..n baufifacade Sculptor bietet folgende Artefakte zur Generierung an: > Server / Business Layer: wahlweise Spring oder EJB, Service- Interfaces, > CRUD Client: JSF Web Client, Richclient mit SWT und Smartclient mit GWT > Java-Code: die Package-Struktur ist gut durchdacht und nach Maven-Standards organisiert (vgl. Abb. 3). Für das Beispiel wurde die Einstellung vorgenommen, dass sogenannte Gap-Klassen generiert werden. Im Generated-Ordner finden sich daher die Basisklassen und im Main-Ordner die Subklassen, in denen die generierten Methoden erweitert oder überschrieben werden können. Außerdem werden rudimentäre Unittest-Klassen erzeugt. > SQL-Scripts zur Anlage der Datenbanktabellen sowie passende DBUnit Test XML Files. > I18n Resource-Dateien für die Domänen-Objekte inklusive der Enumerationen. > Konfigurationsdateien für das Web, Spring, Hibernate etc. > Dokumentation inklusive mittels Graphviz erzeugter Bilder des Domänenmodells. einkommenNichtSelb 0..n verbindlichkeiten 0..n vermoegenswerte Abbildung 2: Graphviz-generierte grafische Darstellung des Modells Zur Laufzeit werden nur wenige Sculptor-Framework-Klassen benötigt. In der Dokumentation wird auch eine kurze Anleitung gegeben, wie Sculptor aus einem bestehenden Projekt entfernt werden kann. So bleiben am Ende die Standardtechnologien und generierte Javaklassen, die leicht lesbar sind und notfalls auch manuell gepflegt werden können. Sculptor bietet mehrere Möglichkeiten, Einfluss auf den Generator zu nehmen, ohne zu tief in die darunterliegende Technologie Eclip- Abbildung 3: src / generated / java Ordner 46 I NEWS 02/2011

Business t Informationstechnologie t se XText und XPand/XTend einsteigen zu müssen. So können eigene Typdefinitionen für die Abbildung in der Datenbank, Package-Namen, Datenbanknamen, Validation-, Cache- und JPA Provider, toString Style oder Einstellungen der generierten Diagramme (Farben, Größen) vorgenommen werden. Über Hints im Modell können eigene Erweiterungen über Xpand in die generierten Artefakte eingefügt werden. Fazit Das freie Produktivitätstool Sculptor ist ein praxiserprobtes Werkzeug, das im BayernLB-Projekt einigen Komfort bietet. Besonders vorteilhaft: Sculptor erfordert keine lange Einarbeitungszeit. Bereits nach zwei bis drei Wochen lässt sich eine deutliche Produktivitätssteigerung bei der Entwicklung erkennen. Dabei erleichtern die ausführliche Dokumentation des Frameworks sowie die verschiedenen Maven-Archetypen den Einstieg. Da der Nutzen von Sculptor umso höher ist, je mehr die Anwendung in Richtung CRUD geht, profitieren reine Oberflächen zur Pflege von Daten am meisten von den von Sculptor generierten Sources. Beschränkungen gibt es insbesondere bei der Generierung der Benutzeroberflächen. Individuelle Anpassungswünsche am Design benötigen nach wie vor manuellen Aufwand. Dennoch ist es sehr nützlich für Entwickler, wenn die generierten Artefakte bereits als Basis nutzbar sind und beispielsweise Datenfelder nur noch anders angeordnet werden müssen, die Workflowkonfiguration mit Spring Webflow vorliegt oder Dateien für die Mehrsprachigkeit bereits erzeugt sind. Eine weitere Beschränkung stellt der fest definierte Technologiestack von Sculptor dar. Wenn dieser nicht in den freigegebenen Technologieplan passt, können zumindest Teile des erzeugten Codes nicht benutzt werden. gerade in der Anfangs- und Stabilisierungsphase von Projekten als sehr nützlich herausstellt. Dieses Verhalten wiederum ermutigt zum Refactoring, was sich positiv auf die Qualität der entstehenden Software auswirkt. Auch für Rapid Prototyping können mit Sculptor in wenigen Tagen vorzeigbare Ergebnisse generiert werden. Gerade in Verbindung mit dem Richclient-Ansatz (auch wenn dieser später nicht zum Einsatz kommen sollte) lässt sich sehr schnell eine auf das jeweilige Problem maßgeschneiderte Software erstellen. Bestimmte architektonische Vorgaben werden von Sculptor bereits beim Generieren geprüft, so sind z. B. keine zyklischen Abhängigkeiten zwischen Modulen möglich. Alles in allem ist Sculptor also ein guter Schritt in Richtung Standardisierung und kann gerade für kleine und mittlere Projekte im Datenerfassungs- und Datenverwaltungsbereich eine enorme Produktivitätssteigerung bringen. Beim Projekt mit der BayernLB bedeutet dies konkret, dass das iterativ agile Vorgehen im Projekt optimal durch Sculptor unterstützt wird, da Änderungen im Modell sehr schnell von der Datenbank bis an die JSF-Oberfläche umgesetzt werden können. Die Dokumentation bleibt dabei automatisch synchron zur Codebasis und wird für die Abstimmung mit dem Fachbereich eingesetzt, da das domänenspezifische Modell die Fachkonzeption abbildet. Dies führt letztendlich zu einer höheren Qualität der erstellten Software und damit zu einer höheren Kundenzufriedenheit. Autor Die Implementierung der Businesslogik wird dem Entwickler natürlich nicht abgenommen, Standardfunktionalitäten (CRUD) werden mit den von Sculptor generierten Codebestandteilen jedoch sehr stabil abgedeckt. Sculptor verhält sich auch gegenüber Änderungen des Modells sehr zuverlässig. Ein Checksummenalgorithmus verhindert hohen Refactoringaufwand, was sich Hans-Peter Keilhofer Lead IT Consultant IT-Architecture, msgGillardon AG > +49 (0) 851 / 56069 - 4164 > hans-peter.keilhofer@msg-gillardon.de NEWS 02/2011 I 47

msg

01 | 2018 public
02 | 2017 public
01 | 2017 public
02 | 2016 public
01 | 2016 public
02 | 2015 public
01 | 2015 public
01 | 2014 public
01 | 2014 msg systems study
01 | 2015 msg systems Studienband
Future Utility 2030
Lünendonk® Trendstudie
Digitale Transformation | DE
Digital Transformation | EN
DE | inscom 2014 Report
EN | inscom 2014 Report

msgGillardon

02 | 2018 NEWS
03 | 2016 NEWS
02 | 2016 NEWS
01 | 2016 NEWS
03 | 2015 NEWS
02 | 2015 NEWS
01 | 2015 NEWS
02 | 2014 NEWS
01 | 2014 NEWS
02 | 2013 NEWS
01 | 2012 NEWS
02 | 2011 NEWS
01 | 2010 NEWS
MaRisk
01 | 2017 banking insight
01 | 2015 banking insight
01 | 2014 banking insight
01 | 2013 banking insight
01 | 2012 banking insight
02 | 2011 banking insight
01 | 2011 banking insight
01 | 2010 banking insight
2018 | Seminarkatalog | Finanzen

Über msg



msg ist eine unabhängige, international agierende Unternehmensgruppe mit weltweit mehr als 6.000 Mitarbeitern. Sie bietet ein ganzheitliches Leistungsspektrum aus einfallsreicher strategischer Beratung und intelligenten, nachhaltig wertschöpfenden IT-Lösungen für die Branchen Automotive, Banking, Food, Insurance, Life Science & Healthcare, Public Sector, Telecommunications, Travel & Logistics sowie Utilities und hat in über 35 Jahren einen ausgezeichneten Ruf als Branchenspezialist erworben.

Die Bandbreite unterschiedlicher Branchen- und Themenschwerpunkte decken im Unternehmensverbund eigenständige Gesellschaften ab: Dabei bildet die msg systems ag den zentralen Kern der Unternehmensgruppe und arbeitet mit den Gesellschaften fachlich und organisatorisch eng zusammen. So werden die Kompetenzen, Erfahrungen und das Know-how aller Mitglieder zu einem ganzheitlichen Lösungsportfolio mit messbarem Mehrwert für die Kunden gebündelt. msg nimmt im Ranking der IT-Beratungs- und Systemintegrationsunternehmen in Deutschland Platz 7 ein.


© 2018 by msg systems ag - powered by yumpu Datenschutz | Impressum