Donnerstag, April 05, 2007

Neue Aufgaben im Projekt

Für die Analyse und Integration einer Schedulerfunktionalität in das Testcenter Online waren 15 Manntage angesetzt. Da ich alleine an dem Projekt arbeitete, hatte ich dafür 3 Wochen Zeit. Mit dieser brach die im Plan letzte für den Scheduler vorgesehene Woche an. Da nur noch oberflächliche Arbeiten zu erledigen waren, dachte ich, sollte es kein Problem sein, das Thema in der vorgegebenen Zeit abzuschliessen. Was mir auch gelang, allerdings musste ich feststellen, dass es oft die kleinen Dinge sind, denen man am Anfang nicht so viel Beachtung schenkt und die man für selbstverständlich erachtet, für die ein nicht unwesentlicher Anteil des Gesamtaufwandes verbraucht wird. Nicht umsonst gibt es das Sprichwort : Der Teufel steckt im Detail.

Nach der allwöchentlichen Besprechung und der darauffolgenden Aufgabenverteilung machte ich mich weiter an die Analyse des Problems mit dem Aufruf der Lasttreiber aus dem JobScheduler heraus, über den ich bereits letzte Woche berichtete. Die Ursache für den Fehler war nach kurzer Zeit gefunden, allerdings ließ sich auf den ersten Blick eine Lösung nicht ohne erheblichen Aufwand umsetzen. Mein Kollege und ich beschlossen, nochmals über das Problem nachzudenken und das es später in der Woche anzugehen. Ich setzte nun noch einige Änderungen am Layout der Benutzeroberfläche um und dann war auch schon der erste Tag der vierten Woche vorbei.

Die nächsten beiden Tage arbeitete ich an einer vereinfachten Benutzerführung bei der Anlage von Einträgen im Kalender. Der Nutzer sollte so wenig wie möglich eintippen müssen und die meisten Sachen auswählen dürfen. Weiterhin wurde die Möglichkeit geschaffen, das Aussehen des Kalenders zu konfigurieren und diese Einstellungen je User in der Datenbank zu hinterlegen.

Am Mittwochabend war es dann Zeit für ein bisschen Sport. Das Projektmanagement erachtet die sportliche Betätigung als Ausgleich zur Sitztätigkeit im beruflichen Alltag für sehr wichtig und ermöglicht es deshalb dienstags Fußball zu spielen und sich am Mittwoch beim Badminton zu verausgaben. Es werden jeweils nach Interesse und Nachfrage eine Sporthalle für Fußball und Spielfelder für Badminton angemietet, so dass man nur noch hingehen muss.

Ich hatte mich für Badminton entschieden. Da ich das allerdings noch nie professionell betrieben habe und auch schon einige Zeit sportlich nicht aktiv war, sollte ich am nächsten Tag mit einem ordentlichen Muskelkater belohnt werden.

Den Donnerstag und den Freitag nutzte ich dazu, eine Dokumentation über meine bisher geleistete Arbeit zu erstellen und noch hier und da ein paar kleinere Anpassungen vorzunehmen. Am Ende der Woche hatte ich meine Arbeit am Scheduler in der vorgegebenen Zeit zum Abschluss gebracht, denn für die nächste Woche warteten schon neue Aufgaben für mich.

Nach einem ruhigen und entspannendem Wochenende, welches ich in meiner Heimat verbrachte, fing die Woche wieder mit einem frühen Aufstehen und der Reise nach Hamburg an. In der Teambesprechung diskutierten wir den Ist – Zustand des Testcenters und auch darüber, was wir in Zukunft erreichen wollen. Ein wichtiger Punkt dabei war, dass wir viel schneller auf die Anforderungen, das Testen von neuen Schnittstellen betreffend, reagieren müssen. Deshalb kam das Thema dynamischer Aufruf von Webservices zur Sprache. Meine Aufgabe für die Woche war es also, zu analysieren, inwieweit es schon Produkte auf dem Markt gibt, die das können und diese gegebenenfalls in einem Prototypen zu testen. Ziel dabei ist, eine WSDL ( Beschreibung eines Webservices ) von einer beliebigen Quelle hochzuladen und daraus für jede Operation des Services dynamisch Templates für die Requests zu generieren. In einem späteren Schritt werden diese dann mit Hilfe von Datenprovidern nur noch mit Daten befüllt und per http an den entsprechenden Server geschickt. Mit dieser Methode sollen Raten von mehreren tausend Requests pro Sekunde möglich sein. Was zu beweisen wäre.

Bis dahin hatte ich allerdings noch einige Arbeit vor mir. Zuallererst musste ich in Erfahrung bringen, welche Produkte diese Anforderungen so oder in ähnlicher Form schon umsetzen. SoapUI ist da nur ein Beispiel, welches man nennen könnte. Allerdings stellte sich schon nach kurzer Zeit heraus, dass es noch kein Tool gibt, welches die von uns gestellten Anforderungen vollständig erfüllt.

Der nächste Part bestand darin, einen Prototypen auf die Beine zu stellen, der die Templates für Webserviceaufrufe generiert. Diese Funktionalität gehörte zwar zum Leistungsumfang von SoapUI, allerdings bestanden dabei zu viele Anhängigkeiten zu anderen Javabibliotheken, die für unser Vorhaben keine Rolle spielten. Wir haben uns deshalb entschieden, die Templategenerierung selber zu implementieren und dabei so wenige Abhängigkeiten wie möglich zu anderen Bibliotheken zu schaffen.

Wie die Entwicklung des Prototypen vorangeht und auf welche Probleme ich dabei gestossen bin, das berichte ich euch nächste Woche.

Ich wünsche euch ein schönes Wochenende und frohe Osterfeiertage.

Thomas

Keine Kommentare: