Thomas Karl Osten Job Tour SPM Tasks

Home Page
Site Map


Berufsleben
Job Tour
GMD Tour


 <    > 

Inhalt
Überblick

Ausbildung
LEM
KIH
KHS
FCE

Weiterbildung
IAL

Stellen
ISMC
KHK
WinPeak
GMD
SPM
  Tasks
  Vortrag
Sysfo
BTZ
LISE
elogis
MANAZ

Arbeitsinhalte 01.04.00 - 05.08.00

  1. BEA Weblogic Application Server Schulung Teilnahme
  2. Softwareentwicklungs-Arbeitsplatz Einrichtung; Borland JBuilder an Informix SQL Datenbank
  3. Kundendatenbank GUIs
  4. Datenbank-Test-GUIs
  5. XML Datenbank Input Beispiel
  6. Softwareentwicklungs-Arbeitsplatz Einrichtung: VisualAge for Java mit Weblogic
  7. Logging Systeme Vergleich 1.: LogAdapter-Hierarchie (Testplattform)
  8. Logging Systeme Vergleich 2.: Featurebeschreibung (IBM log4j u.a.)
  9. Features integrierter Software-Entwicklungsumgebungen - Vortrag
  10. ULTF 1.: Syslog Klassen
  11. ULTF 2.: XMLFormatter
  12. ULTF 3.: Facade Test
  13. Zusammenfassung

Nebenprodukt: Aufnahme in die Liste der „Contributing Authors“ als Entdecker eines Fehlers in der * SUN-XML-Dokumentation.


Die Beschreibungen sind gegliedert nach:
Thema

  • Ziel
  • Beschreibung der Arbeit und Resultate
  • Plattform bzw. Werkzeuge
  • Umfang in kB (Code, ASCII-Texte)
  • Zeitaufwand
Verweise auf (Teile von) Ergebnisse(n) sollen einen Eindruck der Arbeitsinhalte ermöglichen.
Arbeitsproben ohne HTML-Format sind mit „(TXT)” gekennzeichnet.


 

1. BEA WeblogicApplication Server Schulung Teilnahme

  • Kursteilnahme, ganztags
  • Übungen in EJB, JMS, JNDI, JSP, JDBC, Servlets
  • BEA Weblogic Application Server 5.1, Java 2
  • -
  • Fünf Tage (plus weitere drei Tage eigene Übungen danach)
2. Softwareentwicklungs-Arbeitsplatz Einrichtung: JBuilder
  • Hard- und Software-Installation, Einarbeitung in die nötigen Arbeitswerkzeuge
  • Als Entwicklungsumgebung konnte nicht, wie zuerst installiert, JBuilder 3.0 verwendet werden, da er die benötigten DB-Anbindungsklassen nicht mehr verwendet. Der in dieser Hinsicht passende JBuilder 2.5 ließ mit JDK 1.1.8 keine Verwendung des Debuggers zu, war aber letztlich das Werkzeug der Wahl (siehe z.B. JBuilder und JDK1.1.8 Probleme (TXT)).
  • Borland JBuilder 2.5 und 3.0, JDK 1.1.8, Borland SQL Explorer
  • -
  • Zwei Tage (zusammengefasst)
3. Kundendatenbank GUIs
  • Debugging, Ausbau und Korrekturen nach Kundenwünschen ("Bugliste").
  • 80 % der Fehler und Wünsche der Liste sowie neu entdeckte bugs waren (zusammengefasst) innerhalb weniger Tage bearbeitet. Ca. eine Woche wurde insgesamt für weitere ca. 10% der Liste verwendet. Die übrigen 20 Tage wurden benötigt, um für eine zusammenhängende Gruppe von bugs, deren Ursache schließlich außerhalb der Applikation nachgeweisen werden konnte, Lösungen zu finden (siehe Datenbank-Test-GUIs). Auslieferung war Ende Mai, bis zu meiner Entlassung (Ende Juli) kamen vom Kunden keine neuen Fehlermeldungen.
  • Borland JBuilder 2,5 (mit JDK 1.1.8) an Informix SQL Server.
  • Zu/innerhalb ca. 500 kB existierendem GUI-Code vermutlich einige kB.
  • 30 Tage (wie vorausgesagt)
4. Datenbank-Test-GUIs
  • Test-GUIs zur Lokalisation von Datenbank-Anbindungs-Fehlern.
  • Um zu prüfen, ob die Ursache einer Bug-Gruppe ("error code 5123") im Java Code der Applikation lag, oder - wie vermutet - in der Interaktion zwischen Borland Datenbank-Anbindungsklassen (z.B.borland.jbcl.util.Variant), DB-Treiber und der DB, implementierte ich diverse Test-GUIs. Die Annahme erwies sich als richtig. Mit Hilfe der Test-GUIs wurden Lösungen (workarounds) erprobt, um diese bugs zu umgehen (z.B. die Vermeidung, Leerstrings an DB zu schicken, die dort aber als NULL eingetragen wurden) bzw. ihr Auftreten zu verhindern (z.B. die generelle Ersetzung des Datentyps DOUBLE durch BIGDECIMAL). Leider gab es für die Borland-Datenbank-Klassen (die in JBuilder 3.0 keine Verwendung mehr finden) keine updates und nur drei Treiber waren zur Auswahl vorhanden, die aber alle diese bugs mehr oder weniger zeigten.
  • Borland JBuilder 2.5 (mit JDK 1.1.8) an Informix SQL Server.
  • Einige kB.
  • innerhalb der o.g. 30 Tage
5. XML Datenbank Input Beispiel
  • Implementierung einer Lösungsidee als Muster für ein SPM-internes tool.
  • Sehr große Datendateien im XML-Format (> 10 MB) konnten von Oracle OracleXMLSave nicht im Ganzen verarbeitet werden. Die (Not-) Lösung bestand darin, aus der XML-Datei jeweils nur einzelne Records (anhand der tags) zu lesen und an die ORACLE Routine weiterzugeben. Mein Einfall (exemplarisch implementiert zusammen mit dem Datenbank-Spezialisten, bei dessen Arbeit das Problem aufgetaucht war) wurde von der Arbeitsgruppe übernommen und - neu und gründlich von einem anderen Java-Programmierer implementiert - im Betrieb benutzt.
  • Borland JBuilder 2.5 (mit JDK 1.1.8) an Oracle Klasse OracleXMLSave.java
  • 3,4 kB
  • 2 Stunden
6. Softwareentwicklungs-Arbeitsplatz Einrichtung: VisualAge
  • Installation der / Einarbeitung in die nötigen Arbeitswerkzeuge, Tools, Systeme, Basis-Packages
  • Funktionsfähige, die Basis-Sources benutzende Entwicklungs-Plattformen in VisualAge und auf Promptebene.
    1. Identifikation der Basis-Sources (welche und wo liegen sie) (siehe z.B. Konfigurationsliste (TXT)).
    2. Downloads benötigter Packages (JAXP, WLS-Integration Kit).
    3. Mitarbeit an der Klärung der offenen Frage des Konfigurations-Managements (wo und wie in SourceSafe Arbeitsergebnisse künftig liegen sollen),
    4. Tests zur VisualAge-SourceSafe-Anbindung.
    5. Tests zur VisualAge-Weblogic-Integration (TXT).
  • IBM VisualAge for Java 3.0, BEA Weblogic 5.1 Integration Kit, Sun Java XML package, NMake, MS VisualSourceSafe, Rational Rose
  • -
  • Drei Tage
7. Logging Systeme Vergleich 1.: Testplattform
  • Implementierung einer kleinen Testplattform.
  • Beliebige Loggingsysteme können per subclassing der Klasse LogAdapter entsprechend dem LogAdapterInterface angebunden und ausgelöst durch Client-Calls von einer stateless EJB benutzt / getestet werden (siehe LogAdapter-Klassenhierarchie (TXT)).
  • IBM VisualAge for Java 3.0 mit BEA Weblogic 5.1 Integration Kit
  • Sieben Klassen, ein Interface, 44 kB [plus generierte Interfaces]
  • Acht Tage
8. Logging Systeme Vergleich 2.: Featurebeschreibung
  • Materialsammlung für eine Evaluation mehrerer Loggingsysteme
  • Ergebnisse:
    1. Erfassung vorhandener und geplanter Features von drei Loggingsystemen anhand der Dokumentationen (soweit vorhanden) oder durch Code-Analyse (z.B.Log4J usage by EJB (TXT)).
    2. Test der Grundfunktionen (Logging in Console, File, Syslog) mithilfe der o.g. Testplattform. (z.B. Weblogic_Logging_Cookbook (TXT)).
    3. Beschreibung der Funktionen Logging-Systeme-Vergleich (TXT).
    4. WORD-Doc-Beitrag: drei Kapitel und eine Tabelle; als ASCII draft siehe Logging-Systeme-Evaluation (TXT).
    5. Erstellung einer Javadoc des SPM Loggingsystems nach (provisorischer) Anpassung in der Entwicklung befindlicher Packages.
  • IBM VisualAge for Java 3.0 mit BEA WebLogic 5.1 Integration Kit
  • ASCII ca. 18 kB, integriert in das WORD Dokument eines Kollegen.
  • Sieben Tage
9. Features integrierter Software-Entwicklungsumgebungen
  • Vortrag innerhalb der SPM internen Vortragsreihe zur Mitarbeiter-Fortbildung
  • Schilderung der Eigenschaften und Plädoyer für repositorybasierte/r Entwicklungssysteme wie VisualWorks for Smalltalk unter OTI-ENVY und VisualAge for Java.
  • IBM VisualAge for Java 3.0, Microsoft Office 97
  • 10 Folien, (siehe z.B. Vortrag Folien im HTML Format).
  • Zwei Tage
10. ULTF 1.: Syslog Klassen
  • Implementierung der Syslog Funktion
  • Erweiterung des SPM ULTF um die Möglichkeit, UNIX und NT Syslog als Ziel zu benutzen. Wurde während des o.g. Vortrags als Beispiel aus VisualAge heraus demonstriert.
  • IBM VisualAge for Java 3.0
  • Zwei Klassen: SyslogWriter.java 6,4 kB, SyslogLogger.java 4,9 kB
  • Sechs Tage
11. ULTF 2.: XMLFormatter
  • XMLFormatter Methoden zur Freitextaufbereitung als CDATA
  • Erweiterung der Klasse XMLFormatter um Methoden, die Logging-Texte (z.B. Exceptionmessages) so aufarbeiten, daß sie innerhalb der XML-Output-Datei entweder als CDATA oder als bereinigtes Element-Attribut erscheinen können (ohne daß evtl. kritische Zeichen als XML tags erkannt / geparst werden).
  • Ergebnisse:
    1. Diverse Methoden in XMLFormatter.java
    2. Korrektur/Anpassung der zur XML-Output Datei gehörigen DTD Datei.
    3. Test und Dokumentation der (in der XML-Spec mißverständlich dargestellten) Anwendung des CDATA flags (siehe Lösungsvorschlag (TXT)).
  • IBM VisualAge for Java 3.0, XMLSpy
  • Code: ca 1 bis 2 kB
  • Fünf Tage
12. ULTF 3.: Facade Test
  • Test der neuen Logging Facade- und XML-Config-Klassen
  • Ergebnisse:
    1. Test und Dokumentation der unterschiedlichen Ergebnisse bei der Verwendung von Methoden wie Class.getResourceAsStream(filename) aus der Promptebene (Java) oder aus VisualAge heraus, die sowohl das Lesen von XML-Konfigurationsdateien als auch das Schreiben von XML-Logdateien betreffen (siehe Suchpfade in VisualAge und auf der DOS-Prompt-Ebene (TXT)),
    2. Innerhalb des xml packages fand ich bugs bzw. noch nicht bereinigte Folgen der vom Architekten vorgenommenen package-Umstellungen, konnte sie aber vor meiner Entlassung nicht mehr beseitigen.
  • IBM VisualAge for Java 3.0
  • Ca. 1 kB Testklassen
  • Vier Tage

Zusammenfassung

Innerhalb von 75 Arbeitstagen
- nahm ich 5 Tage an einem BEA Weblogic Kurs teil,
- besuchte drei SPM-interne Vorträge (CORBA, Introscope, KonfigurationsManagement),
- hielt einen Vortrag über Entwicklungsumgebungen,
- arbeitete mich in die Grundlagen von NMake, XML/DTD und dreier Loggingsysteme (IBM Log4J, SPM ULTF u.a.) ein und
- setzte dieses Wissen erfolgreich um,
- verfasste hausinterne ASCII Texte (Testresultate zu spezifischen Problemen),
- arbeitete mit an WORD Dokumenten und
- schrieb über 70 kB Code mit IBM VisualAge for Java und Borland JBuilder.
Dabei debuggte ich ein in unbrauchbarem Zustand befindliches Kundenverwaltungssystem erfolgreich bis zur Auslieferung,
erweiterte das SPM ULTF um zwei Syslog-Klassen
und ergänzte die ULTF XMLFormatter Klasse um CDATA bezogene Methoden (wozu auch die Anpassung der DTD Datei für XML-Logdateien gehörte).