Viele Anwendungen werden als reine Schnittstellen zu Datenquellen geplant oder bestehen wenigstens zu einem Großteil aus Formularen, die ausschließlich für CRUD-Aktionen genutzt werden (Create, Read, Update, Delete). Für Prototypen oder Anwendungen mit geringen Anforderungen an die Benutzerschnittstelle kann man sich vorstellen, wie Formulare aufgrund von Metadaten der Datenschicht dynamisch erstellt werden, um genau diese CRUD-Aktionen zun unterstützen. Dieses Buch ist die Erweiterung einer Diplomarbeit, die bei der Comelio GmbH von Andreas Kiebach durchgeführt wurde, und diskutiert die Möglichkeiten, aus XML Schema und dem MS SQL Server sowie mit einer eigenen XML-Darstellung Oberflächen dynamisch zu erzeugen.
176 Seiten, € 15,95
ISBN: 978-3-939701-07-1
Ein großer Teil von Unternehmensanwendungen besteht aus Formularen, welche
eine Sicht auf die zu Grunde liegende Datenschicht darstellen. Dabei besteht
eine sehr große Abhängigkeit zwischen den Anforderungen an die Software
und der Datenhaltungskomponente, deren Strukturen (Feldnamen/-datentypen, Feldwiederholung,
Beziehungen zwischen Tabellen) sich in einzelnen Formularkomponenten und in
Beziehungen/Abhängigkeiten zwischen Formularen widerspiegeln.
Dieses Buch stellt die Ergebnisse eines Forschungsprojekts dar, welches auf
der einen Seite zum Ziel hatte, Anforderungen und Möglichkeiten für
dynamisch generierte Oberflächen auszuloten und für die Anforderungsphase
eine Software zu erstellen, die in der Lage ist, direkt aus der Datenschicht
.NET-Formulare zu erzeugen. Diese dienen dann im Kundengespräch der vereinfachten
Kommunikation über die Daten, welche in einer Unternehmensanwendung erfasst
und verarbeitet werden sollen.
Hier finden eine lauffähige Version des Comelio GUI-Generators von Andreas Kiebach und Marco Skulschus, der .NET-Quelltext aus XML Schema und dem MS SQL Server erzeugt sowie Oberflächen direkt anzeigen kann.
| Profil | Interview |
|---|---|
Die Autoren Andreas Kiebach und Marco Skulschus arbeiten im Bereich Softwareentwicklung und Weiterbildung bei der Comelio GmbH. Hauptsächlich beschäftigen sie sich mit der Planung und Entwicklung von datenbankgestützten Unternehmensanwendungen, darunter regelmäßig auch betriebliche Informationssysteme mit Berichts-/Analysesystemen. Andreas Kiebach (Jahrgang 1981) studierte Informatik an der Fachhochschule Gießen-Friedberg und führte seine Diplomarbeit bei der Comelio GmbH durch. Er arbeitete neben seinem Studium als Programmierer für Java und stieg 2005 auf .NET um. Auch schon unter Java führte er im Rahmen seines Studiums eine umfangreiche Untersuchung zu dynamischen Oberflächenentwicklung und –migration von Java AWT zu Swing durch. Heute entwickelt er bei der Comelio GmbH betriebswirtschaftliche Anwendungssoftware mit .NET, XML und dem MS SQL Server. Marco Skulschus (Jahrgang 1978) studierte Ökonomie in Wuppertal und Paris. Er ist nach der Beschäftigung mit PHP und Java im Jahre 2004 auf .NET umgestiegen und setzt nun C# und den MS SQL Server für Kundenprojekte ein. Nichtsdestoweniger ist er auch in anderen Themenbereichen aktiv, wobei insbesondere das Gebiet Datenbanken, Datenmodellierung und XML an erster Stelle steht. Seine Spezialthemen sind Ontologien auf Basis von XML-Standards wie XTM oder OWL. Bei der Comelio GmbH arbeitet er als Projektleiter für die Entwicklung von Berichts- und Expertensystemen auf Basis vom MS SQL Server und Oracle. |
|
Comelio Medien gehört zur Comelio GmbH, einem in D, A und CH arbeitenden IT-Haus. Er bietet den Mitarbeitern der Comelio GmbH die Gelegenheit, Themenbereiche aus ihren Aufträgen in den Bereichen Beratung, Entwicklung oder Schulung in Buchform aufzubereiten und ihr Wissen der deutschsprachigen Entwicklergemeinde zur Verfügung zu stellen. Dabei sollen auch Randthemen bearbeitet werden.
Das Dienstleistungsangebot des Mutterunternehmens umfasst die Bereiche Softwareentwicklung mit .NET, Java und PHP für die Datenbanksysteme von Microsoft, Oracle und MySQL. Weitere Geschäftsfelder sind Beratung und Schulung. Die Comelio GmbH ist Microsoft Certified Partner, Oracle Partner, Sun Advantage Partner und Mitglied der OMG.
![]() |
![]() |
Dieses Buch beschäftigt sich mit den Möglichkeiten, der automatisierten Erzeugung von Oberflächen für Desktop-Anwendungen. Die erzeugten Oberflächen sollen als Prototypen dienen und nur die zu diesem Zweck benötigte Funktionalität enthalten. Als Ausgangsbasis für die Generierung dienen eine XML-Datei oder eine relationale Datenbank, welche das Datenmodell der zu erstellenden Anwendung enthält. Beide enthalten die nötigen Definitionen für Elementbenennung, Datentypen, Hierarchien und Häufigkeiten. Diese Strukturinformation kann entweder nach einem XML Schema manuell geschrieben werden, oder sie wird aus vorhandenen Informationen aus dem Datenmodell durch einen Algorithmus auf Basis unterschiedlicher Annahmen über die notwendige Oberfläche automatisch erzeugt. Sofern die Oberfläche mit XML beschrieben wird, besteht die beiden Möglichkeiten, direkt XML Schema oder ein speziell für Oberflächen entwickeltes und ausgerichtetes XML-Format zu verwenden. Das mögliche XML Schema zur Definition eines XML-Formats von Oberflächen wird ebenfalls im Rahmen dieser Arbeit erarbeitet.
Als Einsatzgebiet für ein fertiges Programm sind vor allem Geschäftsanwendungen zu nennen, die in der Regel eine große Anzahl von Eingabeformularen enthalten. Diese Formulare haben oft einen standardisierten Aufbau, der sich in allen Formularen widerspiegelt, auch wenn sie der Eingabe unterschiedlicher Daten dienen. Die Gestaltung solcher Formulare erfordert einigen Aufwand, wobei der Aufbau immer mit dem Kunden, der diese später benutzen soll, abgesprochen werden muss. Auch kann der Aufbau sich im Laufe des Entwicklungsprozesses der Software verändern. Nicht selten werden die Felder der Formulare direkt aus einer Datenbank übernommen. Anwendungen, die im Wesentlichen eine grafische Benutzerschnittstelle zu einer Datenbank abbilden, sollen im Fokus der Untersuchung stehen. Da alle zur Verarbeitung nötigen Zusatzinformationen wie Datentypen und ihre Begrenzungen, Schlüsselinformationen oder Beziehungen zwischen Tabellen bereits in der Datenbank vorhanden sind, bietet sich dieser Fall besonders für die automatisierte Erzeugung einer GUI an. Die Verwendung eines solches Algorithmus, der in einem eigenen .NET-Programm umgesetzt werden soll, ist insbesondere in der Phase der Anforderungsanalyse zu Beginn des Projekts, bei der Erstellung eines Prototyps im Rahmen eines Rapid Prototypings zu sehen. Die Verwendung einer solchen Technik zur Laufzeit kann ein möglicher Zukunftsschritt sein, hat allerdings den Nachteil, bei einer klassischen Desktop-Anwendung im Gegensatz zu einer Web-Anwendung schlechtes Laufzeitverhalten aufzuweisen. Die entstandene Software soll bei Kundengesprächen in der ersten Phase eines Projekts zum Einsatz kommen, um Datenstrukturen und benötigte Datenfelder festzulegen und eine möglichst programmorientierte Visualisierung im Kundengespräch zu verwenden. Die Erfahrung zeigt, dass gerade bei mittelständischen Kunden, die keine voll ausgebauten Prozesse der IT-Beschaffung und Softwareplanung für den eigenen Bedarf besitzen, zwar Anforderungen, die die Oberfläche anbetreffen, sehr genau und auch frühzeitig bei der Planung bekannt geben, bei der Planung der Datenstrukturen aber zu wenig kritisch sind. Hier ist es nicht zweckdienlich, ER-Diagramme oder Datenbankmodelle in Form von Tabellen oder sonst wie aufbereiteten Tabellen-Feld-Listen zu verwenden und diese bestätigen zu lassen. Die Gefahr, dass zu schnell Bestätigungen erfolgen, ist sehr hoch. Im Regelfall kann das dazu führen, dass später bei der Erstellung der Oberfläche, die genau auf Basis der Datenstrukturen erfolgt, Formularfelder erwartet oder angemahnt werden, die überhaupt nicht auf Grundlage der Datenstruktur möglich wären. Dies hat dann wiederum Revisionen der Datenstruktur zur Folge. Als Lösung kann man Beispielformulare entwickeln und zeichnen, was allerdings langwierig ist und zwangsläufig dazu führt, dass diese Entwürfe nach Umsetzung keinen Wert mehr darstellen.
Als Lösung für dieses häufig anzutreffende Problem schlägt dieses Buch nun den Weg vor, sich doch wieder auf die Datenstrukturen und das Datenbankmodell zu konzentrieren. Dieses wird in Gesprächen und Planungen permanent weiter entwickelt und wird auch nicht nach der Planungsphase umgesetzt und schließlich verworfen. Der geplante GuiGenerator soll genau für diesen Einsatzbereich eine Lösung bieten: Man arbeitet konsequent am Datenmodell, das auch später noch Verwendung finden kann. Gleichzeitig hat man aber die Möglichkeit, aus der Datenschicht prototypische Formulare zu erzeugen, die im Rahmen von Kunden- und Beratungsgesprächen nutzbar sind und auf Änderungen der Datenstrukturen unmittelbar reagieren können. Durch die Verwendung von .NETOberflächenelementen hat man darüber hinaus sogar noch den Vorteil, dass der grafische Eindruck besser ist als bei MS Visio-Zeichnungen und der Zeitaufwand geringer als bei der Erstellung von tatsächlichen Formularen im Visual Studio.
|
|
1 Einleitung 2 Entwicklungsansätze 3 Entwurf eines XML-Formats 4 Aufbau von Oberflächen |
4.1.5 Abfrage der Datenbank-Metadaten 5 Realisierung 6 Fazit 7 Beispiele |
Unsere Empfehlung
|
Unsere Empfehlung
|
