Abschlussbericht - Abteilung Mykologie - Universität Bayreuth
Abschlussbericht - Abteilung Mykologie - Universität Bayreuth
Abschlussbericht - Abteilung Mykologie - Universität Bayreuth
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
GBIF-D<br />
IT-Fachgruppe <strong>Abschlussbericht</strong> Januar 2008<br />
Datenbanken<br />
Es wird davon ausgegangen werden, dass von den verschiedenen Datenprovidern<br />
auch künftig Datenbestände in unterschiedlichen Datenbanksystemen unter verschieden<br />
Betriebssystemen (und Formaten) bereitgestellt werden. Aus diesem Grunde<br />
erscheint es nicht sinnvoll, für die Datenhaltung ein breiteres Spektrum relationaler,<br />
für den Anwender transparenter (und auch als Stand-alone laufender)<br />
Datenbanksysteme, deren Strukturen den in der Diversity Workbench für die jeweiligen<br />
Komponenten publizierten Datenmodellen folgen, vorzusehen. Zunächst in besonderem<br />
Maße unterstützt werden sollen die Datenbanken PostgreSQL 8.0 (Open<br />
Source: Linux, Windows) sowie MS SQL-Server (Windows), mittelfristig ergänzt<br />
durch DB2 (Unix) und Oracle (Unix, Windows). Trigger bzw. Stored Procedures können<br />
je nach System als Java Stored Procedures (PostgreSQL, Oracle, DB2) oder in<br />
C# oder VB (SQL-Server, MS Access) programmiert sein. Aus Gründen der Sicherstellung<br />
von Betriebssystemunabhängigkeit und Datenbankunabhängigkeitsollte Hibernate<br />
als Persistenzmanager verwendet werden.<br />
Programmierung von Geschäftslogik-Layer und Client in Java<br />
Geschäftslogik-Layer: Gewisse Teile der Business-Logik sollen unabhängig von Datenbank<br />
und Client als Mittelschicht implementiert werden. Zur Vermeidung von Redundanzen<br />
bei den Entwicklungsaktivitäten bei gleichzeitiger Betriebssystemunabhängigkeit<br />
soll als Programmiersprache ausschließlich Java verwendet werden. Die<br />
direkte Interoperabilität zwischen den verteilten Datenbank-Komponenten soll über<br />
JDBC-Schnittstellen erreicht werden. Als Webserver wird Apache mit Tomcat und<br />
JSP favorisiert. (Vorhandene IIS-Anwendungen sollten portiert werden.)<br />
GUI: Ebenfalls aus Gründen der Sicherstellung von Betriebssystemunabhängigkeit<br />
sollen die Diversity Workbench-Komponenten-Clients (� „Diversity Navigator“) als<br />
Plug-ins in Java realisiert werden, wobei als Rich Client Platform (RCP) a) Eclipse<br />
mit SWT als GUI dienen könnte; alternativ b) Eclipse mit Swing als GUI oder c) Net-<br />
Beans mit Swing als GUI in Frage kommen könnten.<br />
Für die Authentifizierung ist LDAP als separater Service vorgesehen.<br />
Schnittstellen<br />
Schnittstellen zwischen den Modulen; Interfaces im Sinne von OOP. Würde man sich<br />
darauf einigen, alle zukünftigen Entwicklungen streng nach dem MVC (Model/View/Controller)<br />
Konzept zu entwickeln, bräuchten im Prinzip die M- und C-<br />
Komponenten nur einmal geschrieben werden, um dann für eine Standalone- oder<br />
Webanwendung lediglich die speziellen Views separat zu programmieren. Wäre es<br />
sinnvoll die Diversity Workbench-Komponenten als ThinClients aufzubauen? Zu bedenken<br />
ist hierbei, ob sich der Mehraufwand der durch eine MVC-Architektur entsteht<br />
44