evodion Information Technologies GmbH

evodion information technologies

Högerdamm 41

D-20097 Hamburg

 

Fon +49 40 27 14 340 0

Fax +49 40 27 14 340 99

info@evodion.de

Oracle Project Coaching

Unterstützung bei der Entwicklung der Anwendungsarchitektur Ausgeprägter Wissenstransfer an die Projektmitarbeiter Ausarbeitung einer Strategie zur Kapselung des DBMS

Beratungspaket
Umfang: 30 Tage

Überblick:
Das Oracle DBMS ist eine sehr leistungsfähige relationale Datenbank. Sie lässt sich in unterschiedlichstem Anwendungskontext (z.B. embedded SQL für verschiedene Programmiersprachen, PL/SQL) und auch in Verbindung mit JEE-konformen Applikationsservern (BEA Weblogic, IBM Websphere, Oracle Applicationserver, JBoss ) einsetzen. Die Entwickler haben dabei größtmögliche Freiheiten, um den gestellten Anforderungen der Anwendung gerecht zu werden.
In Zusammenhang mit Application Servern und JEE-Architekturen ist die Realisierung einer Persistenzschicht eine oft unterschätzte Aufgabe und birgt viele Risiken. So ist nicht nur die Persistenzschicht betroffen, sondern auch das Datenmodell will wohlüberlegt sein. Bei Fehlern in Design und Anwendung sind nicht selten unzureichende Performance, unvorhersagbare Ergebnissen unter hoher Last, schlechte Wartbarkeit des Programmcodes und stark überzogene Budgets die Folge. Diese Risiken können durch Coaching und Beratung bei der Projektinitialisierung stark reduziert werden. Dieses Beratungspaket beinhaltet eine auf diese Phase zugeschnittene Beratungsleistung, in der eine individuelle Unterstützung bei Planung der Architektur und Design des Datenmodells geboten wird.

Zielgruppe:
Das Angebot richtet sich an Mitarbeiter aus neu gestarteten Oracle Softwareprojekten. Der geplante Umfang bezieht sich auf mittelgroße Projekte (ca. 80-100 Relationen) mit mittlerer Komplexität. Bei anderen Projektgrößen kann das Leistungspaket individuell angepasst werden.

Voraussetzungen:
Im Projekt sollte das Fach- und IT-Konzept sowie ein grobes Daten- und/oder Klassenmodell bereits weitestgehend fertiggestellt sein. Weiterhin sind genaue Informationen über die zu erwartenden Datenmengen sowie möglichst repräsentative Testdaten hilfreich. Um einen möglichst intensiven Know-How-Transfer zu gewährleisten, sollte während der ganzen Beratungszeit mindestens ein Projektmitarbeiter zur Verfügung stehen, mit dem gemeinsam die Architektur entwickelt und das Datenmodell optimiert wird. Vor der Modellierung des Klassen- bzw. Datenbankmodells ist der Besuch einschlägiger Oracle-Schulungen zu empfehlen.

Ziele:
Im Rahmen der Beratungsleistung werden folgende Ziele angestrebt:
  • Entwicklung der Architektur der Anwendung, so dass mit der Implementierung der Anwendungsfälle begonnen werden kann.
  • Optimierung des Datenmodells mit dem Ziel, bestmögliche Performance zu erzielen.
  • Ausgeprägter Wissenstransfer an die beteiligten Projektmitarbeiter, damit die optimale Nutzung des Oracle DBMS erreicht werden kann.
  • Ausarbeitung einer Strategie zur Kapselung des Datenbanksystems, um evtl. später notwendig werdende weitere Optimierungen lesender und schreibender Zugriffe unabhängig von Anwendungsteilen weiter voranzutreiben zu können.

Durchführung:
Soweit es die Projektsituation erfordert, kann die Inanspruchnahme der Beratungsleistung zeitlich flexibel gestaltet werden. Folgende Schritte werden während der Beratung durchgeführt:

1. Anwendungskontext
Um eine fundierte Beratung durchführen zu können, müssen zunächst einige Informationen über die geplante Anwendung eingeholt werden. Dies betrifft zunächst die fachlichen Anforderungen und die geplante Hard- und Software (Entwicklungs- und Laufzeitumgebung, Applikationsserver, Fremdsysteme, Verteilung etc.).

2. Evaluierung des vorliegenden Datenbank- bzw. Klassenmodells
Hier liegt der hauptsächliche Fokus auf der Lokalisierung besonders kritischer Bereiche.

3. Festlegung der Anwendungsarchitektur
Hierbei geht es abhängig von einzusetzender Programmiersprache und weiterer Software um den Entwurf der Architektur der Anwendung und die Definition der Schnittstellen sowie die Festlegung ggf. erforderlicher Middleware zur Realisierung der Schnittstellen.

4. Optimierung des Datenmodells
Ausgehend von dem vorliegenden Datenmodell, werden Untersuchungen vorgenommen, welche Optimierungen ggf. erforderlich sind. In diesem Zusammenhang werden Joins und Indizes analysiert sowie die Einsatzmöglichkeit von stored procedures bewertet. Außerdem wird eine physikalische Organisation der Datenbank vorgeschlagen.

5. Objektorientiertes Mapping
Bei Einsatz objektorientierter Entwicklungsmethoden wird untersucht, ob ggf. der Einsatz eines Mapping-Tools (z.B. Oracle TopLink) zur Abbildung relationaler auf objektorientierte Strukturen sinnvoll ist, oder ob andere Technologien eingesetzt werden können.

6. Kapselung der Datenbankzugriffe
Um zukünftig gezielte Optimierungen durchführen zu können ohne in die Anwendung eingreifen zu müssen, ist es wichtig, die Query-Logik und die Steuerung der Unit of Work im Anwendungssystem zu kapseln. Wichtige Themen in diesem Zusammenhang sind Modelle zur Query-Programmierung und der Verwendung der Unit of Work für schreibende Zugriffe sowie ggf. der Einsatz von stored Procedures.

7. Weiteres Vorgehen
Durch die vorherigen Schritte wurde eine solide Basis für die Implementierung der Anwendungsfälle geschaffen. Um das Anwendungssystem für den Produktivbetrieb vorzubereiten sind im Allgemeinen noch weitere Optimierungsmaßnahmen erforderlich. Hierfür wird bei Bedarf weitere Beratung für das Performancetuning von der evodion angeboten.