Back To Top

Dynamische GUIs mit .NET [Kiebach, Skulschus]

Dynamische .NET-GUIs für Prototypen aus SQL Server, XML und XML Schema

Inhalt

Comelio Dynamische .NET-GUIs InhaltEin 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.

ISBN 978-3-939701-07-1
€ 15,95
(1. Auflage)

Internet

comelio Software GUI

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.

comelio download

 

Cover

Dynamische .NET GUIs Cover

Dynamische .NET GUIs Back-Cover

Autoren

Comelio  Dynamische .NET-GUIs Autoren Marco Skulschus und Andreas KiebachDie 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.

Vorwort

Comelio Medien Dynamische .NET-GUIs VorwortDieses 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.

Comelio Medien Dynamische .NET-GUIs VorwortEinsatzgebiet für ein fertiges Programm sind vor allem Geschäftsanwendungen, 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.

Comelio Medien Dynamische .NET-GUIs VorwortAls 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.

Kapitel 1

Das erste Kapitel beschreibt die Aufgaben- und Problemstellung. Nicht für alle möglichen Anwendungen lassen sich mit den in diesem Buch beschriebenen Mitteln prototypische Oberflächen generieren. Da die für die GUI benötigten Informationen aus der Datenschicht abgeleitet werden sollen, ist es zwingend, dass es sich um eine Anwendung handelt, die entweder auf Basis eines XML Schemas (oder sonstiger XML-Datenbeschreibung) oder - sehr viel häufiger - auf einer relationalen Datenbank beruht. Das Kapitel stellt die verschiedenen Voraussetzungen und grundsätzlichen Möglichkeiten dar, wie der prinzipielle Weg aufgebaut ist, Formulare für eine solche Datenschicht zu generieren.

Kapitel 2

Das zweite Kapitel stellt unterschiedliche Prototypen vor, mit denen das Grundprinzip der Problemstellung besser erläutert werden kann. Als Basis dient hier eine XML Schema-Datei, die mit Hilfe von XSLT und C#.NET in HTMLFormulare übertragen wird. HTML zeichnet sich durch eine besonders kleine Anzahl an Formularelementen aus, die auch nur relativ wenige Einstellungsmöglichkeiten bieten. Hier können also grundsätzlich keine umfangreichen Benutzerschnittstellen erwartet werden, sodass schon die Kombination XML Schema/XSLT zu guten Ergebnissen führt.

Kapitel 3

Das dritte Kapitel versucht, mit den Erfahrungen des Prototypen, der HTML-Formulare erstellte, ein eigenes XML-Format zu entwickeln, das die notwendigen Strukturen und Eigenschaften von .NET-Formularen enthält. Dabei wird im Wesentlichen auch deutlich, wieviel umfangreicher Desktop- Oberflächen gegenüber Web-Oberflächen sind und welche Komplexität notwendig ist, um einen Großteil der Anforderungen an eine optisch ansprechende Maske zu erreichen.

Kapitel 4

Das vierte Kapitel diskutiert nun die Anforderungen, die an den Algorithmus gestellt werden, mit dem überhaupt die Oberfläche aus der Datenbank heraus erstellt werden soll. Hier wird die Modellierung der Datenschicht über XML Schema verlassen, um in die zwar etwas informationsärmere, aber realistischere Datenschicht auf Basis von Datenbanken einzutreten. Das Kapitel behandelt Überlegungen, wie Steuerelemente und das Layout bestimmt, wie Navigation zwischen Formularen eingerichtet und wie man überhaupt die einzelnen Datenelemente aufbereiten kann.

Kapitel 5

Das fünfte Kapitel führt eine Lösung für die Problemstellung vor und setzt die Anforderungen aus dem vorherigen Kapitel in eine .NET-Anwendung um. Sie zeigt die Entwicklung und Code-Ausschnitte der Anwendung GuiGenerator. Dabei geht es sowohl um das Thema der direkten Anzeige von Formularen als auch um die reine Generierung von Quelltext.

Kapitel 6

Das sechste Kapitel stellt ein Fazit dar, welches die entstandene Software noch einmal bewertet und weitere Herausforderungen zeigt, wenn man den prototypischen Charakter der generierten Software verlassen würde.Das siebte Kapitel zeigt schließlich einige Anwendungsbeispiele mit dem GuiGenerator. Das siebte Kapitel schließlich stellt eine Reihe von einfachen Praxis- und Fallbeispielen für den Einsatz der Kombination MS SQL Server 2005 und XML dar. Dazu zählen eine XML-basierte Import-/ Export- Schnittstelle und eine XML-(De-)Serialisierung für eine .NET-Anwendung.

 

Unsere Empfehlung

Comelio XML Standards und Technologien

  • Einführung in XML: Definition, Architektur, Einsatzbereiche
  • Modellierung mit der Document Type Definition (DTD) und XML Schema
  • Filtern und lokalisieren mit XPath
  • Abfragen und umwandeln mit XQuery
  • Abfragen, umwandeln, darstellen und verarbeiten mit XSLT
  • Druckformate darstellen mit XSL-FO
  • (Objekt)relationale Datenbanken und XML – MS SQL Server und Oracle
  • Architektur und Techniken von Webservices: Definition, Einsatz, SOAP und WSDL

ISBN: 978-3-939701-21-7
Preis: 39,95 €

XML ist seit Jahren als Technologie für Abbil­dung, Transport und Speicherung strukturier­ter Daten etabliert und in zahlreichen IT-Prozessen und Anwendungen ein wesent­licher Baustein. Dieses Buch erklärt die gängigen Standards und Technologien, die im XML-Bereich eingesetzt werden, liefert viele Syntax-Beispiele und Hinweise zum Einsatz. Sie lernen die Standards DTD und XML Schema zur Modellierung und Validierung von XML-Daten kennen. Mit Pfad­ausdrücken in XPath sehen Sie, wie Sie Kno­ten lokalisieren und XML-Strukturen filtern, während mit XQuery neue XML-Dokumente auf Basis von SQL-ähnlichen Abfragen erzeugt werden. Die Umwandlung von XML sehen Sie anhand von XSLT für HTML, XML und Text, anhand von XSL-FO für Druckfor­mate wie PDF. Service­orientierte Architekturen werden mit Web­services aufgebaut, die in diesem Buch mit einer allgemeinen Beschreibung und den wesentlichen Standards SOAP und WSDL eingeführt werden. Da XML auch als Speicher-/Transportformat dienen kann, zeigt das Thema XML und Datenbanken, wie XML aus relationalen Daten in MS SQL Server und Oracle abgerufen und umgewandelt wird.

 

Unsere Empfehlung

Comelio Oracle PL/SQL und XML

  • XML aus relationalen Daten erzeugen und Import-/Export-Schnittstellen planen
  • SQL/XML und PL/SQL für die Erzeugung  und Verarbeitung von XML verwenden
  • Einsatz von XML Schema zur Validierung und Erzeugung von XML
  • XML-Daten in XMLType-/Objekt-Spalten und in der XML DB speichern
  • Administrative Aspekte von XMLType und der XML DB
  • Datentyp XMLType und sein Einsatz
  • Webservices mit PL/SQL und Oracle

ISBN: 978-3-939701-10-1
Preis: 39,95 €

XML-Schnittstellen ersetzen allerorten Lösungen auf Basis einfacher Textdateien oder Protokolldaten. Unternehmen gehen dazu über, semistrukturierte Daten direkt in einer (objekt-)relationalen Datenbank zu speichern. Wenn Oracle im Einsatz ist, hat man eine vollwertige XML-Datenbank bereits zur Verfügung und kann aus einer Reihe von Werkzeugen für die Erzeugung, Speicherung, Abfrage und Integration von XML-Daten in seine Datenlandschaft die beste Kombination auswählen. Dieses Buch stellt die Techniken von Oracle dar, wie in der Standard-DB oder in der speziellen XML DB (XDB) XML-Daten verwendet werden können. Dabei erläutert es die verschiedenen traditionellen und Oracle-spezifischen Speicheransätze sowie die vollständige relationale Zerlegung oder native Speicherung und Verarbeitung im XML-Datentyp XMLType genauso wie die Verarbeitung mit Hilfe von PL/SQL, die Erzeugung über SQL/XML und den Einsatz von Webservices. Das Buch fokussiert insbesondere den Aspekt der Errichtung von XML-fähigen Schnittstellen zwischen kooperierenden Systemen. Versionen: 9i, 10g und 11g.

» Kontaktformular










comelio.com

mail address

mail address

  • Berlin | Comelio GmbH
    Fon: +49(0)30-8145622-00
    Fax: +49(0)30-8145622-10
  • München | Comelio GmbH
    Fon: +49(0)89-38156860-0
    Fax: +49(0)89-38156860-9
  • Hamburg | Comelio GmbH
    Fon: +49(0)40-20934996-0
    Fax: +49(0)40-20934996-9
  • Wien | Comelio GmbH
    Fon: +43-720-2097-97
    Fax: +43-720-2097-98