Das ist unsere Projektseite. Hier wird alles stehen, was das Projekt ansich
betrifft. Also Teilnehmer, Termine, Links, aber auch Links zu aktuellen
Diagrammen und ähnliches.
Anmerkungen, Wünsche, Kritik?
Mailt mich an
31.10.03 |
|
07.11.03 |
- Vortrag:
Vergleich unterschiedlicher DWH-Werkzeuge (Yann-Rudolf Michel)
- Diskussion: GUI-Design
- Festlegung der GUI Gruppe (verschoben)
- Vortrag: Einführung in
Eclipse (Jasmin Opitz) Shortcut
|
14.11.03 |
|
21.11.03 |
|
28.11.03 |
|
05.12.03 |
- Auswahl des Namens für das Tool. ETLaien
- Einteilung der Gruppen
- Anforderungsspezifikation für den Prototypen
|
12.12.03 |
- Aufgaben zu dieser Woche:
- GUI:
- Entwurf
- Ablaufdiagramm
- Worker:
- Spezifikation der Aufgaben
- Syntaxbaum SQL
- Core und Import/Export:
- Spezifikation der Aufgaben
- DB Dictionary Zugriffe anschauen (MySQL, Oracle, File)
- Projektleitung:
- Prototypenspezifikation
- ALLE:
- Schnittstellen
|
19.12.03 |
- Besprechung der Schnittstellen
|
09.01.04 |
- TODO:
- Implementierung und Testen des Prototyps
- Schnittstellen (für den Prototyp) sollten bereits abgestimmt sein
- mdl. Bericht über aktuellen Stand vorbereiten
- es sollten schon einige Sachen des Prototyps funktionieren
- feststellen des aktuellen Standes der Prototypen
- Vorstellung Lastenheft
- Offene Punkte:
- Core wird zum Testen gebraucht -- Hardcodiertes InstanceObject bis Montag!
- Projektseite in offiziellen Bereich verschieben
- CVS Eclipse Versionen
- Sachen sollen bis Donnerstag früh fertig sein!
- Testen für alle Gruppen am Donnerstag möglich
|
14.01.04 |
- Außerplanmäßiges Treffen der Gruppen um
18 Uhr im Rechnerraum
- bitte pro Gruppe ein Vertreter
|
15.01.04 |
- Sachen bis Do früh fertig sein - Testen für alle Gruppen!
|
16.01.04 |
- Prototyp soll fertig implementiert sein!
- Status:
- I/E:funktioniert soweit alles, Constraints fehlen noch
- Core:Parametergeschichten fehlern noch; Abstraktion zur
nächsten DB/FlatFile
- Worker:Joins, Update-Insert Strategien fehlen, Constraints fehlen;
ansonsten funktioniert alles
- GUI:TODO - siehe 23.01.04
- Einschätzung der bisherigen Implementation:
- I/E:
- interne Darstellung nur auf Oracle ausgelegt - ändern!
- auf anderen DBTypen sollte es sonst keine Probleme geben
- Core: Designprobleme ?
- Parameter an falscher Entität
- MySQL - anders als Oracle
- effizienter
- Repository Klasse etwas groß - umstrukturieren?
- Worker:
- Funktionalität erweitern - Performance
- Strings (SQL) optimieren
- Oracle/MySQL
- Joins, Update-Insert Strategien
- Fehlerhandling
- GUI:
- soweit so gut - leicht erweiterbar
- Programmstart - Start auch ohne GUI erlauben - Stichwort: crontab
- Brainstorming
- DB-Typen: Oracle, MySQL, Flat Files, (PostgreSQL)
- Funktionen: Projektion, Aggregation, Join, user defined Functions
(nur numerisch)
- Tool Tipps
- Ansicht der SQL Anweisungen
- Insert, Update, Upsert, usw. - wie wird mit Rollback verfahren?
- Fehlerbahandlungsstrategie
|
23.01.04 |
- TODO GUI:
- Verbindungslabel statt komplett anzeigen
- JDBC-Treiber nicht explizit angeben
- @ bei Hostname nicht angeben müssen
- CREATE TABLE - nichtbenutzte Felder ausblenden (je nach Datentyp)
- Tabelle als Tabellen-Icon (nicht als Ordner)
- Spaltenauswahl (nach LF50)
- DB-Übertragung von GUI aus (LF60)
- garfisch andeuten, wie der Rest funktioniert (Aggregation, Joins, ...)
- GUI-Verstärkung: Holger
- TODO Holger: vorläfiges Lastenheft
- TODO alle: Nacharbeit (wenn nötig), Analyse
- Vorführung ETLaien (Holger)
- Besprechung Lastenheft
- Besprechung Sequenzdiagramme
- offener Punkt: Plugin CVS
- Folgende Dinge wurden festgelegt:
- SQL-Funktionalitäten:
- Projektion
- Aggregation (wie im Lastenheft beschrieben: sum, max, min, avg,
count)
- Join
- Constraints (where) Es soll eine Auswahlm?glichkeit zwischen
Konjunktion
oder Disjunktion angeboten werden ... kein Mix
der beiden in where (Operatoren: <, >, =, like)
Where sollte also folgenderma?en aussehen: column op lit.
Die Form column op1 lit1 op2 lit2 ist optional, kann also
implementiert werden, wenn noch Zeit ist!
- Funktionen (user-defined-functions) sollten nur implementiert
werden, wenn
noch Zeit am Ende ist, da das parsen mit sehr viel
Aufwand verbunden ist, der Lerneffekt dabei jedoch sehr gering
ist!
- Generell soll es möglich sein, mehrere Operationen in
einem Durchgang ausführen
zu können. Dies ist im
Modellentwurf bereits berücksichtig worden
- Strategie: Wir haben uns
darauf geeinigt, dass der Nutzer
sämtliche Entscheidungen trifft um Konflikte in der
Datenbank zu beseitigen (Rollback oder force). Es soll also
auch eine Option "force" geben, die jedoch per
default deaktiviert ist.
- Anforderung an die GUI: auftretende Fehler sollen
möglichst genau von dem Modul
in dem der Fehler auftritt
an die GUI gemeldet werden. Die GUI soll dann eine
möglichst gute Beschreibung des Fehlers an den Nutzer
ausgeben (evtl. mit Lösungsvorschlägen), um diesem
eine schnelle Fehlerbehebung zu ermöglichen.
- Testszenario: Die Worker-Gruppe hat die Aufgabe ein
Testscenario bis zum
nächsten Treffen zu entwerfen. Das
soll so etwas sein wie: Man hat Kunden- und Einkaufs-Daten
es soll möglich sein zu ermitteln, welche Einkäufe
von Kunden unter 30 Jahre bzw. über 30 Jahre
getätigt werden oder auch genau die von 30jährigen
- Lastenheft: Nachdem das Testszenario dann klar ist, kann
Holger das Lastenheft
anpassen und fertig machen und dann mit
dem Pflichtenheft beginnen.
|
30.01.04 |
- Ablauf:
- Jasmin präsentiert das Testszenario und ihre Arbeit am
Projekt
- GUI - vorstellen der GUI / Diskussion
- Jürgen erläutert das Worker-Modell
- Es muss festgelegt werden, wer die Testdaten für den
Abschlusstest "organisiert"
- Festlegeung auf folgende JDBC-Datentypen:
- varchar
- integer
- character
- boolean
- date
- double
- float
- time
- longvarchar
Die unteren 5 Datentypen werden vom Import/Export bzgl. der
Spezifikation angesehen und diese berichten dann nächste
Woche, wie sinnvoll es ist, diese zu unterstützen (Oracle,
MySQL, Files)
|
06.02.04 |
- TODOs:
- Worker: Spezifikation
- GUI: bei Aggregation und where-clause nur die Tabellen
anzeigen, die auch am Join
beteiligt sind
- GUI: Den riesigen Knopf wegmachen - einen kleineren und
bessere Darstellung
- GUI: bei group by eine Reihenfolge festlegen, in der man
gruppieren will
- GUI: bei Mapping Priorität auswählen (stand noch
zur Diskussion wie)
- I/E: Die unteren 5 Datentypen werden vom Import/Export bzgl. der
Spezifikation
angesehen und diese berichten,
wie sinnvoll es ist, diese zu unterstützen (Oracle,
MySQL, Files)
|
13.02.04 |
|
20.02.04 |
|
23.02.04 - 27.02.04 |
- Blockveranstaltung: Projektabschluss
- täglich von 9 (c.t.) - 17 Uhr
- 9.15 - ca 9.45: Plenum
- 12.30 - 13.00: Mittag
- Freitag: 13-14 Uhr: Abschlusspräsentation
|