Migration von JDO zu JPA - Planung, Entwicklung, Durchführung

Expose

Die Firma tolina GmbH verwendet momentan JDO(Java Data Objects) als Spezifikation und KODO als Implementation der Spezifikation zur persistenten Speicherung von Daten. Einerseits ist das Erwerben neuer Entwicklerlizenzen nicht mehr möglich und andererseits ist diese Spezifikation veraltet und wurde mittlerweile durch einen neuen Standard ersetzt. Dieser ist JPA(Java Persistence API). Der Inhalt dieser Arbeit ist es eine Migrationsstrategie zu entwickeln.

In dem Rahmen werden die beiden Spezifikationen erläutert und es wird beschrieben worin sie sich grundlegend unterscheiden. Dadurch wird ermittelt welche Funktionalitäten von JDO nach JPA migriert werden müssen. Zusätzlich erfolgt eine Evaluierung der verschiedenen Provider von JPA anhand vorher bestimmter Kriterien ( z.B Aktivität), damit der Passende gewählt werden kann. Weiterhin werden einige Migrationsstrategien vorgestellt und ihre Vor- und Nachteile niedergeschrieben. Durch Wichtungen der Vor- und Nachteile wird sich letztendlich für eine Migrationsstrategie entschieden werden.

Die gewählte Migrationsstrategie (höchstwahrscheinlich eine Hybride Variante, da dies von der Firma präferiert wird) wird anschließend mit Hilfe eines vorher gewählten Prototypen durchgeführt. Bei der Migration dieses Prototypen werden die Zeiten für die einzelnen zu wiederholenden Migrationsschritte notiert, sodass am Ende eine Risikoabschätzung entwickelt werden kann. Diese sagt anhand vorher abgesprochener Kriterien aus, welche Teile überhaupt migriert werden müssen und wie viel Arbeitsaufwand die Migration umfasst. Dabei auftretende Probleme, welche für die Migration gelöst werden müssen, werden sofort gelöst. Weitere Probleme, welche aber nicht die Migration behindern, werden in einem späteren Kapitel behandelt und eventuell Lösungsansätze vorgestellt.

Während der Migration werden ständig JUnit Tests ausgeführt, dadurch kann im Nachhinein eine Bewertung stattfinden, wie hilfreich eine gute Testabdeckung für eine Migration sein kann.

Mit Hilfe der gesammelten Informationen und Erkenntnissen sollte es für jeden möglich sein eine Migration von JDO nach JPA durchführen zu können. Unabhängig vom JDO- und JPA-Provider.

interessante Forschungsaspekte

Arbeitsschritte

Milestone no. Milestone Goals target Past CW accomplished wrench
1 Umsetzung des Prototypen Prototypen finden
Migrationsstrategie wählen und technisch umsetzen
JDOQL zu JPQL
Metadaten zu Annotations
Mapping zu Annotations
Done CW18 done in CW 21
2 Risikoabschätzung Risikoabschätzung schreiben Done CW19 done in CW24
3 Qualitätssicherung Ergebnisse aus Umsetzung des Prototypen niederschreiben Done CW22 done
4 Probleme Probleme, welche auftreten könnten beschreiben Done CW24 done
5 Fazit und Ausblick Fazit schreiben
Ausblick schreiben
Done CW25 done
6 Konvertieren Das Googledocs Projekt nach Latex konvertieren Done CW27 done
7 Abgabe Korrekturlesen
Korrektur lesen lassen
Präsentation anfangen
Done CW31 done
8 Puffer   NEW CW35  

Weekly Status

Week 1 KW 4

Activities

Week 2 KW 5

Activities

Week 3 KW 6

Activities

Week 4 KW 7

Activities

Week 5 KW 8

Activities

Week 6 KW 9

Activities

Week 7 KW 10

Activities

Week 8 KW 11

Activities

Week 9 KW 12

Activities

Week 10 KW 13

Activities

Week 11 KW 14

Activities

Week 12 KW 15

Activities

Week 13 KW 16

Activities

Week 14 KW 17

Activities

Week 15 KW 18

Activities

Week 16 KW 19

Activities

Week 17 KW 20

Activities

Week 18 KW 21

Activities

Week 19 KW 22

Activities

Week 20 KW 23

Activities

Week 21 KW 24

Activities

Week 22 KW 25

Activities

Week 23 KW 26

Activities

Comments