Deutschland: bevorzugt Raum Frankfurt, Rhein-Main, Raum Köln
Bei dem Gesamtprojekt ging es um die Einführung neuer Software zum Thema Market Conformity Check / Independent Price Verification. Meine Aufgabe sollte ursprünglich in der Erstellung von FTP-Übertragungsprogrammen zwischen Bank und externem Rechenzentrum sowie der internen und externen Koordination dazu bestehen. Aufgrund des Ausfalls des ursprünglich vorgesehenen Softwarelieferanten und einer länger andauernden anschließenden Neuauswahl wurde diese Aufgabe jedoch bereits im Anfangsstadium abgebrochen und nicht wieder aufgenommen.
Stattdessen habe ich ein Programm zur Zusammenführung von zwei getrennten CSV-Dateien in eine gemeinsame
erstellt, bei der Datensätze an Hand einer ID zusammenzufassen waren. In diesem Zusammenhang habe ich dann auch verschiedene Module deutlich verallgemeinert und erweitert, die innerhalb der Bank bei praktisch allen Perl-Projekten eingesetzt werden sollen und in erster Linie den Rahmenablauf betreffen. Gegen Ende des Projektes habe ich dann noch ein als Prototyp vorhandenes Programm, das als Verbindung zwischen einem Clientprogramm und MQSeries-Anfragen diente und auf mehrere von einander abhängige Prozesse verteilt war, im Hinblick auf die Ausführungsgeschwindigkeit neu strukturiert und optimiert.
Im Rahmen eines bestehenden Mitarbeiterportals wurde für die Mitarbeiter die Möglichkeit geschaffen, ihre Dienstreiseanträge und -abrechnungen elektronisch zu erstellen. Zur Erleichterung und Übersichtlichkeit der Eingabe wurde dabei insbesondere darauf geachtet, dass einzelne Teile bei Vorliegen gewisser Bedingungen bereits erfolgter Angaben angezeigt oder ausgeblendet werden, und dass u.a. bei der Kostenerfassung beliebig viele Positionen hinzugefügt oder wieder entfernt werden können. Außerdem kann der Antragsteller einen Genehmigungsworkflow definieren, der dann automatisch durchlaufen wird, d.h. die jeweils nächsten Beteiligten werden per Mail benachrichtigt und können ihre Zustimmung/ Genehmigung über das Mitarbeiterportal erteilen. Hierbei wurden auch Vertretungsregelungen berücksichtigt. Hinzu kamen Schnittstellen zu und von der zugehörigen SAP-HR-Anwendung.
In einer Access-Anwendung werden zentral durch die dafür zuständige Organisationseinheit Doktorandendaten gehalten, um diese für Auswertungen und Berichte nutzen zu können. Damit diese Daten durch die für die jeweiligen Doktoranden zuständigen Organisationseinheiten regelmäßig aktualisiert und ergänzt werden können, wurde eine Anwendung zur Pflege dieser Doktorandendaten im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Dabei wurde insbesondere ein entsprechendes Zugriffskonzept berücksichtigt. Hinzu kamen Schnittstellen von und zu der Access-Anwendung.
In einer Access-Anwendung werden zentral durch die dafür zuständige Organisationseinheit Doktorandendaten gehalten, um diese für Auswertungen und Berichte nutzen zu können. Damit diese Daten durch die für die jeweiligen Doktoranden zuständigen Organisationseinheiten regelmäßig aktualisiert und ergänzt werden können, wurde eine Anwendung zur Pflege dieser Doktorandendaten im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Dabei wurde insbesondere ein entsprechendes Zugriffskonzept berücksichtigt. Hinzu kamen Schnittstellen von und zu der Access-Anwendung.
In einer Access-Anwendung werden zentral durch die dafür zuständige Organisationseinheit Doktorandendaten gehalten, um diese für Auswertungen und Berichte nutzen zu können. Damit diese Daten durch die für die jeweiligen Doktoranden zuständigen Organisationseinheiten regelmäßig aktualisiert und ergänzt werden können, wurde eine Anwendung zur Pflege dieser Doktorandendaten im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Dabei wurde insbesondere ein entsprechendes Zugriffskonzept berücksichtigt. Hinzu kamen Schnittstellen von und zu der Access-Anwendung.
Hauptaufgabe war die Wartung und Dokumentation von zwei täglich laufenden Anwendungen. Die eine liest im Wesentlichen eine XML-Datei in eine MySQL-Datenbank ein, modifiziert dort die Daten nach vorgegebenen Regeln, und exportiert sie anschließend wieder nach XML. Die andere führt auf der Grundlage von Daten aus zwei MySQL-Datenbanken eine Reihe von Berechnungen durch und speichert die Ergebnisse in einer weiteren MySQL-Datenbank.
Hinzu kamen die Entwicklung von mehreren kleineren Anwendungen:
Ursprüngliches Ziel war die Anpassung von vorhandenen Programmen zur Auftrags- und Bestandsverwaltung an eine neue XML-Schnittstelle. Dazu erfolgte zunächst ein grobes Redesign der Programme und ein Konzeptentwurf zur Berücksichtigung einer XML-Schnittstelle. Da die vorgesehene XML-Schnittstelle zum Zeitunkt des Projektes noch nicht hinreichend ausgereift war wurde die entsprechende Anpassung dann nicht mehr durchgeführt.
Intranetseiten zur Erfassung von Bewertungen für leistungsorientierte Vergütung, Intranetseiten für elektronische Korrekturmeldungen zur Arbeitszeiterfassung
Aufgaben:
Es wurden mehrere Erweiterungen und Anpassungen zu den früher von mir erstellten Programmen implementiert.
Insbesondere für die Erfassung der Bewertungen zur leistungsorientierten Vergütung:
Hinzu kamen jeweils kleinere Anpassungen. Im August erfolgte dann nach der internen Abnahme die Produktivsetzung der Erweiterungen zu den elektronischen Korrekturmeldungen.
Vorhandene Webanwendungen waren auf aktuellere Perl- und Oracleversionen und eine neue Plattform (Red Hat-Linux statt Solaris) zu portieren. In diesem Zusammenhang wurde insbesondere auch die verwendete Kodierung von ISO-8859-1 auf UTF-8 umgestellt.
Intranetseiten zur Erfassung von Bewertungen für leistungsorientierte Vergütung, Intranetseiten für elektronische Korrekturmeldungen zur Arbeitszeiterfassung
Aufgaben:
Es wurden mehrere Erweiterungen und Anpassungen zu den früher von mir erstellten Programmen implementiert.
Insbesondere für die Erfassung der Bewertungen zur leistungsorientierten Vergütung:
Hinzu kamen jeweils kleinere Anpassungen. Im August erfolgte dann nach der internen Abnahme die Produktivsetzung der Erweiterungen zu den elektronischen Korrekturmeldungen.
Für die mit dem CMS-System gepflegten Seiten eines Kunden wurden insbesondere Erweiterungen implementiert, die
aus vorhandenen Artikeln unter Berücksichtigung interner Tags dynamisch aktuelle Teaser für die Hauptseiten erstellen,
einen Veranstaltungskalender dynamisch pflegen, der je nach Unterseite die gewünschten Veranstaltungen berücksichtigt.
Zur Verwendung durch den Dienstleister selbst wurde außerdem ein Statistikprogramm erstellt, das eine Übersicht erstellt, welche Dateien, Vorlagen, etc. noch bzw. wie oft verwendet werden.
Zwischen der IT-Abteilung der Bank und diversen Fachabteilungen wurden Service Level Agreements geschlossen, die die von der IT zu erbringenden Leistungen beschreiben. Um die vereinbarte Leistungserbringung überprüfen zu können, wurden geeignete Messverfahren definiert, die in Perlprogrammen implementiert wurden. Dazu wurden insbesondere Logdateien oder Datenbanktabellen unterschiedlichster Art ausgewertet.
Es wurden Seiten zur Erfassung von Mitarbeiterbewertungen für eine leistungsorientierte Vergütung im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Die erfolgten Bewertungen wurden außerdem in eine editierbare PDF-Vorlage übernommen. Hinzu kamen Schnittstellen von und zu einer Access-Anwendung zum Einlesen von Mitarbeiterzuordnungen bzw. zur Übergabe der erfolgten Bewertungen.
Es wurden Seiten für elektronische Korrekturmeldungen zur Arbeitszeiterfassung bzw. Urlaubsanträge im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Hinzu kamen die zugehörigen Schnittstellen zum Import in das vorhandene SAP-System. Im November/Dezember wurde zusätzlich eine Suchmöglichkeit implementiert, außerdem erfolgten kleinere Änderungen und Anpassungen.
Es wurden Seiten für elektronische Korrekturmeldungen zur Arbeitszeiterfassung bzw. Urlaubsanträge im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Hinzu kamen die zugehörigen Schnittstellen zum Import in das vorhandene SAP-System. Im November/Dezember wurde zusätzlich eine Suchmöglichkeit implementiert, außerdem erfolgten kleinere Änderungen und Anpassungen.
Zeitraum: 1/2008 - 10/2009
(gleicher Auftraggeber wie im Zeitraum 11/2003 - Mitte 3/2007)
Projekt: Weiterentwicklung und Support eines Internetshops
(Projektgröße: anfangs 5, zuletzt 11 Personen)
Branche: Internet, Versandhandel
Programmiersprachen: Perl (objektorientiert, Module u.a. CGI, mod_perl, Template Toolkit, DBI), SQL, HTML
Datenbank: MySQL
Webserver: Apache
Plattform: Linux (SuSE, Red Hat)
Meine Aufgaben im Team bestanden weiterhin primär in der Entwicklung funktionaler
Erweiterungen des Shopsystems, Optimierungen des bestehenden Systems sowie laufender Supportarbeiten. Hinzu kamen die Einarbeitung und Anleitung neuer Mitarbeiter.
Im Laufe der Zeit sind insbesondere folgende Änderungen implementiert worden:
- Möglichkeit Artikel bei gemeinsamer Bestandspflege in mehreren Shops gleichzeitig
anzubieten,
- Implementation neuer Zahlungsarten,
- dynamischer Aufbau der Berechnung von Auswahllisten abh. von gewählten Parametern,
- Anpassungen um zentrale Elemente (Übersetzungen, Bilder) unabhängig von konkreten
Shops zu verarbeiten,
- flexiblere Handhabung von Fehlermeldungen,
- Optimierungen der Softwarebasis, um weitere Shops künftig schneller implementieren
zu können
Zeitraum: Mitte 3/2007 - 12/2007
Projekt: (Weiter-) Entwicklung und Anpassungen einer Schnittstellenumgebung
(Projektgröße: 5 Personen)
Branche: Versicherung
Programmiersprachen: Perl (objektorientiert, Module u.a. DBI), SQL
Datenbank: IBM DB2
Plattformen: Windows NT, HPUX
Aufgrund der Einführung einer wegen gesetzlichen Änderungen notwendig gewordenen
neuen Version eines zentralen Programmes waren auch die vorhandenen Schnittstellen-
programme anzupassen. Bei dieser Gelegenheit wurde der Aufbau dieser Programme
komplett redesignt, um künftig eine einfachere Wartung und Funktionalitätsergänzung zu
ermöglichen.
Zeitraum: Mitte 1/2007 - Mitte 2/2007
Projekt: Zusammenführung und Anonymisierung von Logdateien
(Projektgröße: 1 Person)
Branche: Internet, Transportunternehmen
Programmiersprachen: Perl (objektorientiert)
Plattform: Linux (Ubuntu)
Beim Internetauftritt und internen Verarbeitungen des Unternehmens entstanden teil-
weise auf mehreren Servern verteilt mehrere Logdateien. Ich schrieb ein Perlprogramm,
daß diese Logdateien von den einzelnen Servern zur Erleichterung von Auswertungen und
zur Reduzierung der vorzuhaltenden Datenmenge zu jeweils einer gemeinsamen Logdatei
zusammenfasst. Die gegebenen Daten werden dabei geparst und nach vorgegebenen Regeln
anonymisiert.
Zeitraum: 11/2003 - Mitte 1/2007,
Mitte 2/2007 - Mitte 3/2007
Projekt: Weiterentwicklung und Support eines Internetshops
(Projektgröße: 3 Personen)
Branche: Internet, Versandhandel
Programmiersprachen: Perl(objektorientiert, Module u.a. CGI, mod_perl, Template Toolkit, DBI), SQL, HTML
Datenbank: MySQL
Webserver: Apache
Plattform: Linux (SuSE, Debian)
Beim Auftraggeber handelte es sich um einen Versandhandel für Bekleidung. Bestellungen erfolgen nahezu ausschließlich über den Internetshop. Für den Betrieb des Internetshops wurden u.a. 4 Webserver und 1 Datenbankserver eingesetzt. Meine Aufgaben im Team bestanden primär in der Entwicklung funktionaler Erweiterungen des Shopsystems. Hinzu kamen Optimierungen des bestehenden Systems sowie laufende Supportarbeiten. Weitere Aufgaben des Teams waren Anpassungen des Frontends und Umsetzung verschiedener Marketingaktionen, z.B. Newslettererstellung, Startseitengestaltung oder Mailingaktionen.
Bei dem Shopsystem handelte es sich um eine komplette Eigenentwicklung, besonders
erwähnenswert ist die Berücksichtigung der Verfügbarkeit von Artikeln in Echtzeit,
d. h. Kunden können nur Artikel kaufen, die auch tatsächlich für ihn verfügbar sind.
Im Laufe der Zeit sind insbesondere folgende Änderungen implementiert worden:
- Einsetzbarkeit der Shopsoftware für mehrere Shops gleichzeitig,
- Unterstützung von zuletzt 7 Sprachen,
- verschiedene Währungen je nach Lieferland,
- Anpassung des Artikelimportes an ein neues Warenwirtschaftssystem,
- Ausweitung der durch Kunden hinterlegbaren Daten,
- übersichtliche Schnittstelle zum Anlegen diverser Benefits für Kunden (d. h.
Gutschriften, Rabatte, Gratisartikel bei Vorliegen unterschiedlichster Bedingungen,
teilweise abhängig von eingekauften Artikeln),
- Geschenkgutscheine,
- kurzfristig implementierte Möglichkeit Artikel bei gemeinsamer Bestandspflege in
zwei Shops gleichzeitig anzubieten.
Zeitraum: 5/2003
Projekt: Kursleitung eines Perl-Workshops
Branche: Softwareentwicklung
Programmiersprache: Perl
Datenbank: MySQL
Plattform: Linux
Der Workshop wurde an einem Wochenende veranstaltet. Teilnehmer waren Entwickler,
die eine Einführung in die Sprache Perl erhalten sollten mit besonderem Schwerpunkt
auf Datenbankanbindung und CGI-Programmierung. Der Kurs behandelte mehr oder weniger
den kompletten Sprachumfang der Programmiersprache Perl. Die komplette Konzeption
(Kursinhalte, Aufbau, Handout) und Vorbereitung erfolgte durch mich.
Zeitraum: 9/2002 - 11/2002
Projekt: Erstellung eines Portals zum bundesweiten Finden von Unternehmen
(Projektgröße: 3 Personen)
Branche: Internet
Programmiersprachen: Perl, SQL, HTML
Datenbank: MySQL
Webserver: Apache
Plattformen: Windows ME, Linux
Schwerpunkt meiner Tätigkeit im Team war die CGI-Programmierung. Kernstück des Portals
ist das bundesweite Finden von Unternehmen nach Ort und Branche bzw. Namen. Ein
weiterer Bestandteil des Portals ist ein 'Emailservice'. Hinzu kamen verschiedene
Administrationsskripte.
Zeitraum: 7/1999 - 12/2001
Projekt: Support und Weiterentwicklung vorhandener Software für die
Reformatierung von Inputdaten zur weiteren Verarbeitung
(Projektgröße: Core-Team 1-2 Personen,
Entwicklungsabteilung ca. 17 Personen)
Branche: Marktforschung, medizinische Statistik
Programmiersprachen: C++, Perl, BasicScript, SQL
Tools: MS Visual Studio, MS SourceSafe, TOAD, MFC, RogueWave
Datenbank: Oracle (Versionen 7.3 und 8.0.6 / 8.1.6)
Plattformen: Windows NT, Unix (IBM AIX)
Das Gesamtprogrammpaket setzt sich grob gesehen aus einem aus mehreren Hundert
C++-Dateien bestehendem Core-System und den das jeweilige Inputformat und spezielle
Verarbeitungsregeln definierenden variablen Anteil in Form von Templates und Batch-
actions (BasicScript) zusammen. Die tatsächliche Verarbeitung von Inputdaten erfolgt
durch einen 'Server' (ohne GUI, sowohl für Unix als auch Windows NT). Zur Definition
der Templates und Batchactions dient ein Template-Designer (mit GUI, nur Windows NT).
Ergänzt wird das Paket durch einen Job-Manager (mit GUI, nur Windows NT) für ver-
schiedene administrative Aufgaben, u.a. Definition von Jobs. Alle Teile arbeiten
in Verbindung mit einer Oracle-Datenbank. Meine primären Aufgaben waren die Identi-
fikation und Beseitigung von Bugs im Core-Programm (C++) und die Weiterentwicklung
aufgrund neuer Anforderungen an das Programm. Hinzu kam die eigene Erstellung von
Templates (BasicScript) sowie die Beratung anderer beteiligter Entwickler bei diesem
Themenkomplex.
Weitere Teilprojekte von jeweils mehreren Monaten im Rahmen dieses Gesamtprojektes:
Neustrukturierung der Verzeichnisstruktur der Core-Dateien:
Ziel war neben der Rechnerunabhängigkeit der Projektdateien auch eine größere
Transparenz in Bezug auf die Zugehörigkeit der Sourcedateien zu den einzelnen
Teilprogrammen. Weiterhin war die Abbildung der neuen Verzeichnisstruktur inner-
halb des benutzten Versionskontrollsystems (MS SourceSafe) unter Beibehaltung
der Historie erforderlich. Dies wurde mittels eines selbst entwickelten Perl-
Programms realisiert.
Entwicklung eines Wizards (als Ergänzung zum Template-Designer):
Der Wizard soll die Erstellung von Templates für neue Inputformate erheblich
erleichtern. Die Entwicklung erfolgte größtenteils extern. Meine Aufgabe war
die Unterstützung der Projektleitung bei der Qualitätssicherung, insbesondere
durch Vorschläge für ein funktionales Design des GUI und der Einbindung in das
bestehende Programmpaket.
Entwurf und Realisation eines Code-Generators als Ergänzung des Wizards:
Der erstellte Wizard hilft bei der Definition des Inputformats und der Auswahl von
zusätzlich benötigten Verarbeitungsregeln, konnte jedoch nach dem ursprünglichen
Konzept nur festen Code (BasicScript) generieren. Daher entwarf und entwickelte
ich einen allgemeineren Code-Generator, der auch Parameter und Abhängigkeiten der
Verarbeitungsregeln berücksichtigen kann. Um eine spätere Erweiterung mit neuen
Verarbeitungsregeln zu erleichtern, entwickelte ich die entworfene Sprache aus
einem früheren Projekt (10/1996 - 3/1998) weiter. Dies ermöglicht Vorlagen für
neue Verarbeitungsregeln hauptsächlich in BasicScript, ergänzt um einige wenige
Sprachelemente, zu entwickeln.
Vervollständigt wird der vollständig in Perl geschriebene Code-Generator durch ein
Compiler-Modul für diese neue Sprache sowie einem Datenbank-Modul zum Lesen von
Template-Informationen aus und Schreiben des erzeugten Codes in die vom Core-Paket
benutzte Oracle-Datenbank.
Zeitraum: 8/2000 - 9/2000
Projekt: Logistik in Online-Marktplätzen: Entwicklung eines Kalkulations-
und Auftragserteilungstools
(Projektgröße: ca. 5 Personen)
Branche: Online-Marktplätze
Standards: XML, EDIFACT
Hier beschränkte sich meine Beteiligung auf die begleitende Beratung zu Daten- und
Architekturmodell sowie den technischen Teil des abschließenden Präsentationsvortrages.
Zeitraum: 2/2000 - 4/2000
Projekt: Konvertierung von EDIFACT in diverse andere Formate
(Projektgröße: 2 Personen)
Programmiersprache: Perl
Standards: EDIFACT, XML
Wir haben einen funktionsfähigen Prototypen erstellt, mit dem wir (anhand eines
FINSTA-Datensatzes) demonstrieren konnten, wie mit relativ einfachen Mitteln ein
EDIFACT-Datensatz so aufbereitet werden kann, daß er in einer Vielzahl anderer
Formate zur Verfügung gestellt werden kann. Dazu habe ich einen Konverter (in Perl)
geschrieben, der zunächst ein XML-Zwischenformat erstellt. Ausgehend von diesem
XML-Format konnten dann weitere Formate recht problemlos mittels XSLT erstellt werden.
Zeitraum: 5/1998 - 4/1999
Projekt: Projektmanagement zur Einführung neuer Bankensoftware
(Jahr 2000, Euro)
(Projektgröße: ca. 120 Personen)
Branche: Banken
Programmiersprache: COBOL
Plattformen: Windows NT, Unix (Sun Solaris), OS390
Meine Aufgabe war primär die allgemeine Assistenz des Projektleiters, des weiteren
die Qualitätssicherung von Ergebnissen und die Entwicklung einer Schnittstelle für die
Übernahme von Altdaten von OS390 auf das neue System unter Sun Solaris.
Zeitraum: 5/1997 - 7/1997
Projekt: Entwurf und Realisation einer automatischen Weiterleitung von
  Email als FAX
(Projektgröße: 1 Person)
Branche: Medienberatung
Programmiersprache: Perl
Tool: sendmail
Plattform: Linux
Hier nutzte ich die Möglichkeit von sendmail ein Programm als Empfänger von Emails zu
definieren. Dieses Programm verwendete den Email-Empfänger um in einer speziell ent-
worfenen Datenbank nach zusätzlich notwendigen Angaben (tatsächlicher Empfängername,
Faxnummer, usw.) zu suchen und bereitete den Nachrichtentext für eine Versendung als
FAX auf. Zusätzlich schrieb ich ein Programm zur Verwaltung dieser Datenbank.
Zeitraum: 2/1997 - 4/1997
Projekt: Übernahme einer Printausgabe auf eine Web-Site
(Projektgröße: 1 Person)
Branche: Medienberatung
Programmiersprache: Perl
Tool: MS FrontPage
Plattform: Windows NT
Aufgabe war die Übernahme von Texten und Bildern der Printausgabe einer Kunden-
zeitschrift auf eine Web-Site. Um eine regelmäßige Übernahme weitgehend zu auto-
matisieren, entwarf ich ein allgemeines HTML-Template mit fest definierten Platz-
haltern (für z.B. Titel, Überschriften, Text, Links, usw.) und ein Perl-Programm,
das gegebene Texte dann entsprechend aufbereitete.
Zeitraum: 10/1996 - 3/1998
Projekte: 1) Entwurf und Realisation von Installationsroutinen
2) Anbindung von allegro-C - Datenbanken ans Internet
(Projektgröße: 2 Personen)
Branche: Bibliotheken
Programmiersprachen: Perl, HTML
Datenbank: allegro-C (an der TU Braunschweig entwickeltes Datenbanksystem
für Bibliotheken)
Plattformen: MS-DOS, Windows 95, Internet
Die Installationsroutinen dienen der Installation von Erweiterungen zu allegro-C -
Datenbanken und wurden als dialogbasiertes Perl-Programm unter MS-DOS realisiert. Die
Anbindung von allegro-C - Datenbanken ans Internet erfolgt mit verschiedenen Perl-
CGI-Skripten (entsprechend den unterschiedlichen Anforderungen wie z.B. Registersuche,
Volltextsuche, Indexanzeige oder Ergebnisanzeige). Die Skripte formulieren die CGI-
Anfrage in eine Anfrage an den Datenbank-Server um und bereiten das erhaltene Ergebnis
für die Anzeige in einem Web-Browser dynamisch auf. Um die Darstellung sowohl der
Job-Dateien für den Datenbank-Server als auch der HTML-Seiten für die Ergebnisanzeige
von der eigentlichen Programmlogik zu trennen, wurde eine eigene Sprache (populo)
entwickelt, die in die Job- und HTML-Templates eingebettet wird. Die korrekte Inter-
pretation der populo-Sprachbestandteile erfolgt jeweils durch die Perl-Skripte. (Dies
ist vom Konzept her mit JavaServer Pages vergleichbar.)
Zeitraum: innerhalb 5/1993 - 9/1996
Projekt: u. a. Entwurf und Realisation einer Datenbank für Preprints und
Sonderdrucke
(Projektgröße: 1 Person)
Institut: Max-Planck-Institut für Mathematik (Bibliothek), Bonn
Programmiersprachen: Perl, TEX, Unix-Shell
Plattform: Sun Solaris
Die eigentliche Aufgabe war die Klassifikation und Katalogisierung mathematischer
Fachliteratur. Da es aber für die Katalogisierung kein geeignetes Tool und auch keine
Vorgabe gab, war zusätzlich eine geeignete Datenbank zusammen mit einer Benutzer-
schnittstelle zu erstellen. Die 'Datenbank' wurde in Form einer zeilenorientierten
Textdatei realisiert. Der Kern der Benutzerschnittstelle ist ein Perl-Programm, er-
weitert durch einige Unix-Shell-Elemente. Das Programm ermöglicht eine Volltextsuche
innerhalb frei wählbarer Kategorien. Das Suchergebnis wird dynamisch als TEX-Dokument
aufbereitet und (nach der erforderlichen Konvertierung in das DVI-Format) angezeigt.
Deutschland: bevorzugt Raum Frankfurt, Rhein-Main, Raum Köln
Bei dem Gesamtprojekt ging es um die Einführung neuer Software zum Thema Market Conformity Check / Independent Price Verification. Meine Aufgabe sollte ursprünglich in der Erstellung von FTP-Übertragungsprogrammen zwischen Bank und externem Rechenzentrum sowie der internen und externen Koordination dazu bestehen. Aufgrund des Ausfalls des ursprünglich vorgesehenen Softwarelieferanten und einer länger andauernden anschließenden Neuauswahl wurde diese Aufgabe jedoch bereits im Anfangsstadium abgebrochen und nicht wieder aufgenommen.
Stattdessen habe ich ein Programm zur Zusammenführung von zwei getrennten CSV-Dateien in eine gemeinsame
erstellt, bei der Datensätze an Hand einer ID zusammenzufassen waren. In diesem Zusammenhang habe ich dann auch verschiedene Module deutlich verallgemeinert und erweitert, die innerhalb der Bank bei praktisch allen Perl-Projekten eingesetzt werden sollen und in erster Linie den Rahmenablauf betreffen. Gegen Ende des Projektes habe ich dann noch ein als Prototyp vorhandenes Programm, das als Verbindung zwischen einem Clientprogramm und MQSeries-Anfragen diente und auf mehrere von einander abhängige Prozesse verteilt war, im Hinblick auf die Ausführungsgeschwindigkeit neu strukturiert und optimiert.
Im Rahmen eines bestehenden Mitarbeiterportals wurde für die Mitarbeiter die Möglichkeit geschaffen, ihre Dienstreiseanträge und -abrechnungen elektronisch zu erstellen. Zur Erleichterung und Übersichtlichkeit der Eingabe wurde dabei insbesondere darauf geachtet, dass einzelne Teile bei Vorliegen gewisser Bedingungen bereits erfolgter Angaben angezeigt oder ausgeblendet werden, und dass u.a. bei der Kostenerfassung beliebig viele Positionen hinzugefügt oder wieder entfernt werden können. Außerdem kann der Antragsteller einen Genehmigungsworkflow definieren, der dann automatisch durchlaufen wird, d.h. die jeweils nächsten Beteiligten werden per Mail benachrichtigt und können ihre Zustimmung/ Genehmigung über das Mitarbeiterportal erteilen. Hierbei wurden auch Vertretungsregelungen berücksichtigt. Hinzu kamen Schnittstellen zu und von der zugehörigen SAP-HR-Anwendung.
In einer Access-Anwendung werden zentral durch die dafür zuständige Organisationseinheit Doktorandendaten gehalten, um diese für Auswertungen und Berichte nutzen zu können. Damit diese Daten durch die für die jeweiligen Doktoranden zuständigen Organisationseinheiten regelmäßig aktualisiert und ergänzt werden können, wurde eine Anwendung zur Pflege dieser Doktorandendaten im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Dabei wurde insbesondere ein entsprechendes Zugriffskonzept berücksichtigt. Hinzu kamen Schnittstellen von und zu der Access-Anwendung.
In einer Access-Anwendung werden zentral durch die dafür zuständige Organisationseinheit Doktorandendaten gehalten, um diese für Auswertungen und Berichte nutzen zu können. Damit diese Daten durch die für die jeweiligen Doktoranden zuständigen Organisationseinheiten regelmäßig aktualisiert und ergänzt werden können, wurde eine Anwendung zur Pflege dieser Doktorandendaten im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Dabei wurde insbesondere ein entsprechendes Zugriffskonzept berücksichtigt. Hinzu kamen Schnittstellen von und zu der Access-Anwendung.
In einer Access-Anwendung werden zentral durch die dafür zuständige Organisationseinheit Doktorandendaten gehalten, um diese für Auswertungen und Berichte nutzen zu können. Damit diese Daten durch die für die jeweiligen Doktoranden zuständigen Organisationseinheiten regelmäßig aktualisiert und ergänzt werden können, wurde eine Anwendung zur Pflege dieser Doktorandendaten im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Dabei wurde insbesondere ein entsprechendes Zugriffskonzept berücksichtigt. Hinzu kamen Schnittstellen von und zu der Access-Anwendung.
Hauptaufgabe war die Wartung und Dokumentation von zwei täglich laufenden Anwendungen. Die eine liest im Wesentlichen eine XML-Datei in eine MySQL-Datenbank ein, modifiziert dort die Daten nach vorgegebenen Regeln, und exportiert sie anschließend wieder nach XML. Die andere führt auf der Grundlage von Daten aus zwei MySQL-Datenbanken eine Reihe von Berechnungen durch und speichert die Ergebnisse in einer weiteren MySQL-Datenbank.
Hinzu kamen die Entwicklung von mehreren kleineren Anwendungen:
Ursprüngliches Ziel war die Anpassung von vorhandenen Programmen zur Auftrags- und Bestandsverwaltung an eine neue XML-Schnittstelle. Dazu erfolgte zunächst ein grobes Redesign der Programme und ein Konzeptentwurf zur Berücksichtigung einer XML-Schnittstelle. Da die vorgesehene XML-Schnittstelle zum Zeitunkt des Projektes noch nicht hinreichend ausgereift war wurde die entsprechende Anpassung dann nicht mehr durchgeführt.
Intranetseiten zur Erfassung von Bewertungen für leistungsorientierte Vergütung, Intranetseiten für elektronische Korrekturmeldungen zur Arbeitszeiterfassung
Aufgaben:
Es wurden mehrere Erweiterungen und Anpassungen zu den früher von mir erstellten Programmen implementiert.
Insbesondere für die Erfassung der Bewertungen zur leistungsorientierten Vergütung:
Hinzu kamen jeweils kleinere Anpassungen. Im August erfolgte dann nach der internen Abnahme die Produktivsetzung der Erweiterungen zu den elektronischen Korrekturmeldungen.
Vorhandene Webanwendungen waren auf aktuellere Perl- und Oracleversionen und eine neue Plattform (Red Hat-Linux statt Solaris) zu portieren. In diesem Zusammenhang wurde insbesondere auch die verwendete Kodierung von ISO-8859-1 auf UTF-8 umgestellt.
Intranetseiten zur Erfassung von Bewertungen für leistungsorientierte Vergütung, Intranetseiten für elektronische Korrekturmeldungen zur Arbeitszeiterfassung
Aufgaben:
Es wurden mehrere Erweiterungen und Anpassungen zu den früher von mir erstellten Programmen implementiert.
Insbesondere für die Erfassung der Bewertungen zur leistungsorientierten Vergütung:
Hinzu kamen jeweils kleinere Anpassungen. Im August erfolgte dann nach der internen Abnahme die Produktivsetzung der Erweiterungen zu den elektronischen Korrekturmeldungen.
Für die mit dem CMS-System gepflegten Seiten eines Kunden wurden insbesondere Erweiterungen implementiert, die
aus vorhandenen Artikeln unter Berücksichtigung interner Tags dynamisch aktuelle Teaser für die Hauptseiten erstellen,
einen Veranstaltungskalender dynamisch pflegen, der je nach Unterseite die gewünschten Veranstaltungen berücksichtigt.
Zur Verwendung durch den Dienstleister selbst wurde außerdem ein Statistikprogramm erstellt, das eine Übersicht erstellt, welche Dateien, Vorlagen, etc. noch bzw. wie oft verwendet werden.
Zwischen der IT-Abteilung der Bank und diversen Fachabteilungen wurden Service Level Agreements geschlossen, die die von der IT zu erbringenden Leistungen beschreiben. Um die vereinbarte Leistungserbringung überprüfen zu können, wurden geeignete Messverfahren definiert, die in Perlprogrammen implementiert wurden. Dazu wurden insbesondere Logdateien oder Datenbanktabellen unterschiedlichster Art ausgewertet.
Es wurden Seiten zur Erfassung von Mitarbeiterbewertungen für eine leistungsorientierte Vergütung im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Die erfolgten Bewertungen wurden außerdem in eine editierbare PDF-Vorlage übernommen. Hinzu kamen Schnittstellen von und zu einer Access-Anwendung zum Einlesen von Mitarbeiterzuordnungen bzw. zur Übergabe der erfolgten Bewertungen.
Es wurden Seiten für elektronische Korrekturmeldungen zur Arbeitszeiterfassung bzw. Urlaubsanträge im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Hinzu kamen die zugehörigen Schnittstellen zum Import in das vorhandene SAP-System. Im November/Dezember wurde zusätzlich eine Suchmöglichkeit implementiert, außerdem erfolgten kleinere Änderungen und Anpassungen.
Es wurden Seiten für elektronische Korrekturmeldungen zur Arbeitszeiterfassung bzw. Urlaubsanträge im Rahmen eines bestehenden Mitarbeiterportals entwickelt. Hinzu kamen die zugehörigen Schnittstellen zum Import in das vorhandene SAP-System. Im November/Dezember wurde zusätzlich eine Suchmöglichkeit implementiert, außerdem erfolgten kleinere Änderungen und Anpassungen.
Zeitraum: 1/2008 - 10/2009
(gleicher Auftraggeber wie im Zeitraum 11/2003 - Mitte 3/2007)
Projekt: Weiterentwicklung und Support eines Internetshops
(Projektgröße: anfangs 5, zuletzt 11 Personen)
Branche: Internet, Versandhandel
Programmiersprachen: Perl (objektorientiert, Module u.a. CGI, mod_perl, Template Toolkit, DBI), SQL, HTML
Datenbank: MySQL
Webserver: Apache
Plattform: Linux (SuSE, Red Hat)
Meine Aufgaben im Team bestanden weiterhin primär in der Entwicklung funktionaler
Erweiterungen des Shopsystems, Optimierungen des bestehenden Systems sowie laufender Supportarbeiten. Hinzu kamen die Einarbeitung und Anleitung neuer Mitarbeiter.
Im Laufe der Zeit sind insbesondere folgende Änderungen implementiert worden:
- Möglichkeit Artikel bei gemeinsamer Bestandspflege in mehreren Shops gleichzeitig
anzubieten,
- Implementation neuer Zahlungsarten,
- dynamischer Aufbau der Berechnung von Auswahllisten abh. von gewählten Parametern,
- Anpassungen um zentrale Elemente (Übersetzungen, Bilder) unabhängig von konkreten
Shops zu verarbeiten,
- flexiblere Handhabung von Fehlermeldungen,
- Optimierungen der Softwarebasis, um weitere Shops künftig schneller implementieren
zu können
Zeitraum: Mitte 3/2007 - 12/2007
Projekt: (Weiter-) Entwicklung und Anpassungen einer Schnittstellenumgebung
(Projektgröße: 5 Personen)
Branche: Versicherung
Programmiersprachen: Perl (objektorientiert, Module u.a. DBI), SQL
Datenbank: IBM DB2
Plattformen: Windows NT, HPUX
Aufgrund der Einführung einer wegen gesetzlichen Änderungen notwendig gewordenen
neuen Version eines zentralen Programmes waren auch die vorhandenen Schnittstellen-
programme anzupassen. Bei dieser Gelegenheit wurde der Aufbau dieser Programme
komplett redesignt, um künftig eine einfachere Wartung und Funktionalitätsergänzung zu
ermöglichen.
Zeitraum: Mitte 1/2007 - Mitte 2/2007
Projekt: Zusammenführung und Anonymisierung von Logdateien
(Projektgröße: 1 Person)
Branche: Internet, Transportunternehmen
Programmiersprachen: Perl (objektorientiert)
Plattform: Linux (Ubuntu)
Beim Internetauftritt und internen Verarbeitungen des Unternehmens entstanden teil-
weise auf mehreren Servern verteilt mehrere Logdateien. Ich schrieb ein Perlprogramm,
daß diese Logdateien von den einzelnen Servern zur Erleichterung von Auswertungen und
zur Reduzierung der vorzuhaltenden Datenmenge zu jeweils einer gemeinsamen Logdatei
zusammenfasst. Die gegebenen Daten werden dabei geparst und nach vorgegebenen Regeln
anonymisiert.
Zeitraum: 11/2003 - Mitte 1/2007,
Mitte 2/2007 - Mitte 3/2007
Projekt: Weiterentwicklung und Support eines Internetshops
(Projektgröße: 3 Personen)
Branche: Internet, Versandhandel
Programmiersprachen: Perl(objektorientiert, Module u.a. CGI, mod_perl, Template Toolkit, DBI), SQL, HTML
Datenbank: MySQL
Webserver: Apache
Plattform: Linux (SuSE, Debian)
Beim Auftraggeber handelte es sich um einen Versandhandel für Bekleidung. Bestellungen erfolgen nahezu ausschließlich über den Internetshop. Für den Betrieb des Internetshops wurden u.a. 4 Webserver und 1 Datenbankserver eingesetzt. Meine Aufgaben im Team bestanden primär in der Entwicklung funktionaler Erweiterungen des Shopsystems. Hinzu kamen Optimierungen des bestehenden Systems sowie laufende Supportarbeiten. Weitere Aufgaben des Teams waren Anpassungen des Frontends und Umsetzung verschiedener Marketingaktionen, z.B. Newslettererstellung, Startseitengestaltung oder Mailingaktionen.
Bei dem Shopsystem handelte es sich um eine komplette Eigenentwicklung, besonders
erwähnenswert ist die Berücksichtigung der Verfügbarkeit von Artikeln in Echtzeit,
d. h. Kunden können nur Artikel kaufen, die auch tatsächlich für ihn verfügbar sind.
Im Laufe der Zeit sind insbesondere folgende Änderungen implementiert worden:
- Einsetzbarkeit der Shopsoftware für mehrere Shops gleichzeitig,
- Unterstützung von zuletzt 7 Sprachen,
- verschiedene Währungen je nach Lieferland,
- Anpassung des Artikelimportes an ein neues Warenwirtschaftssystem,
- Ausweitung der durch Kunden hinterlegbaren Daten,
- übersichtliche Schnittstelle zum Anlegen diverser Benefits für Kunden (d. h.
Gutschriften, Rabatte, Gratisartikel bei Vorliegen unterschiedlichster Bedingungen,
teilweise abhängig von eingekauften Artikeln),
- Geschenkgutscheine,
- kurzfristig implementierte Möglichkeit Artikel bei gemeinsamer Bestandspflege in
zwei Shops gleichzeitig anzubieten.
Zeitraum: 5/2003
Projekt: Kursleitung eines Perl-Workshops
Branche: Softwareentwicklung
Programmiersprache: Perl
Datenbank: MySQL
Plattform: Linux
Der Workshop wurde an einem Wochenende veranstaltet. Teilnehmer waren Entwickler,
die eine Einführung in die Sprache Perl erhalten sollten mit besonderem Schwerpunkt
auf Datenbankanbindung und CGI-Programmierung. Der Kurs behandelte mehr oder weniger
den kompletten Sprachumfang der Programmiersprache Perl. Die komplette Konzeption
(Kursinhalte, Aufbau, Handout) und Vorbereitung erfolgte durch mich.
Zeitraum: 9/2002 - 11/2002
Projekt: Erstellung eines Portals zum bundesweiten Finden von Unternehmen
(Projektgröße: 3 Personen)
Branche: Internet
Programmiersprachen: Perl, SQL, HTML
Datenbank: MySQL
Webserver: Apache
Plattformen: Windows ME, Linux
Schwerpunkt meiner Tätigkeit im Team war die CGI-Programmierung. Kernstück des Portals
ist das bundesweite Finden von Unternehmen nach Ort und Branche bzw. Namen. Ein
weiterer Bestandteil des Portals ist ein 'Emailservice'. Hinzu kamen verschiedene
Administrationsskripte.
Zeitraum: 7/1999 - 12/2001
Projekt: Support und Weiterentwicklung vorhandener Software für die
Reformatierung von Inputdaten zur weiteren Verarbeitung
(Projektgröße: Core-Team 1-2 Personen,
Entwicklungsabteilung ca. 17 Personen)
Branche: Marktforschung, medizinische Statistik
Programmiersprachen: C++, Perl, BasicScript, SQL
Tools: MS Visual Studio, MS SourceSafe, TOAD, MFC, RogueWave
Datenbank: Oracle (Versionen 7.3 und 8.0.6 / 8.1.6)
Plattformen: Windows NT, Unix (IBM AIX)
Das Gesamtprogrammpaket setzt sich grob gesehen aus einem aus mehreren Hundert
C++-Dateien bestehendem Core-System und den das jeweilige Inputformat und spezielle
Verarbeitungsregeln definierenden variablen Anteil in Form von Templates und Batch-
actions (BasicScript) zusammen. Die tatsächliche Verarbeitung von Inputdaten erfolgt
durch einen 'Server' (ohne GUI, sowohl für Unix als auch Windows NT). Zur Definition
der Templates und Batchactions dient ein Template-Designer (mit GUI, nur Windows NT).
Ergänzt wird das Paket durch einen Job-Manager (mit GUI, nur Windows NT) für ver-
schiedene administrative Aufgaben, u.a. Definition von Jobs. Alle Teile arbeiten
in Verbindung mit einer Oracle-Datenbank. Meine primären Aufgaben waren die Identi-
fikation und Beseitigung von Bugs im Core-Programm (C++) und die Weiterentwicklung
aufgrund neuer Anforderungen an das Programm. Hinzu kam die eigene Erstellung von
Templates (BasicScript) sowie die Beratung anderer beteiligter Entwickler bei diesem
Themenkomplex.
Weitere Teilprojekte von jeweils mehreren Monaten im Rahmen dieses Gesamtprojektes:
Neustrukturierung der Verzeichnisstruktur der Core-Dateien:
Ziel war neben der Rechnerunabhängigkeit der Projektdateien auch eine größere
Transparenz in Bezug auf die Zugehörigkeit der Sourcedateien zu den einzelnen
Teilprogrammen. Weiterhin war die Abbildung der neuen Verzeichnisstruktur inner-
halb des benutzten Versionskontrollsystems (MS SourceSafe) unter Beibehaltung
der Historie erforderlich. Dies wurde mittels eines selbst entwickelten Perl-
Programms realisiert.
Entwicklung eines Wizards (als Ergänzung zum Template-Designer):
Der Wizard soll die Erstellung von Templates für neue Inputformate erheblich
erleichtern. Die Entwicklung erfolgte größtenteils extern. Meine Aufgabe war
die Unterstützung der Projektleitung bei der Qualitätssicherung, insbesondere
durch Vorschläge für ein funktionales Design des GUI und der Einbindung in das
bestehende Programmpaket.
Entwurf und Realisation eines Code-Generators als Ergänzung des Wizards:
Der erstellte Wizard hilft bei der Definition des Inputformats und der Auswahl von
zusätzlich benötigten Verarbeitungsregeln, konnte jedoch nach dem ursprünglichen
Konzept nur festen Code (BasicScript) generieren. Daher entwarf und entwickelte
ich einen allgemeineren Code-Generator, der auch Parameter und Abhängigkeiten der
Verarbeitungsregeln berücksichtigen kann. Um eine spätere Erweiterung mit neuen
Verarbeitungsregeln zu erleichtern, entwickelte ich die entworfene Sprache aus
einem früheren Projekt (10/1996 - 3/1998) weiter. Dies ermöglicht Vorlagen für
neue Verarbeitungsregeln hauptsächlich in BasicScript, ergänzt um einige wenige
Sprachelemente, zu entwickeln.
Vervollständigt wird der vollständig in Perl geschriebene Code-Generator durch ein
Compiler-Modul für diese neue Sprache sowie einem Datenbank-Modul zum Lesen von
Template-Informationen aus und Schreiben des erzeugten Codes in die vom Core-Paket
benutzte Oracle-Datenbank.
Zeitraum: 8/2000 - 9/2000
Projekt: Logistik in Online-Marktplätzen: Entwicklung eines Kalkulations-
und Auftragserteilungstools
(Projektgröße: ca. 5 Personen)
Branche: Online-Marktplätze
Standards: XML, EDIFACT
Hier beschränkte sich meine Beteiligung auf die begleitende Beratung zu Daten- und
Architekturmodell sowie den technischen Teil des abschließenden Präsentationsvortrages.
Zeitraum: 2/2000 - 4/2000
Projekt: Konvertierung von EDIFACT in diverse andere Formate
(Projektgröße: 2 Personen)
Programmiersprache: Perl
Standards: EDIFACT, XML
Wir haben einen funktionsfähigen Prototypen erstellt, mit dem wir (anhand eines
FINSTA-Datensatzes) demonstrieren konnten, wie mit relativ einfachen Mitteln ein
EDIFACT-Datensatz so aufbereitet werden kann, daß er in einer Vielzahl anderer
Formate zur Verfügung gestellt werden kann. Dazu habe ich einen Konverter (in Perl)
geschrieben, der zunächst ein XML-Zwischenformat erstellt. Ausgehend von diesem
XML-Format konnten dann weitere Formate recht problemlos mittels XSLT erstellt werden.
Zeitraum: 5/1998 - 4/1999
Projekt: Projektmanagement zur Einführung neuer Bankensoftware
(Jahr 2000, Euro)
(Projektgröße: ca. 120 Personen)
Branche: Banken
Programmiersprache: COBOL
Plattformen: Windows NT, Unix (Sun Solaris), OS390
Meine Aufgabe war primär die allgemeine Assistenz des Projektleiters, des weiteren
die Qualitätssicherung von Ergebnissen und die Entwicklung einer Schnittstelle für die
Übernahme von Altdaten von OS390 auf das neue System unter Sun Solaris.
Zeitraum: 5/1997 - 7/1997
Projekt: Entwurf und Realisation einer automatischen Weiterleitung von
  Email als FAX
(Projektgröße: 1 Person)
Branche: Medienberatung
Programmiersprache: Perl
Tool: sendmail
Plattform: Linux
Hier nutzte ich die Möglichkeit von sendmail ein Programm als Empfänger von Emails zu
definieren. Dieses Programm verwendete den Email-Empfänger um in einer speziell ent-
worfenen Datenbank nach zusätzlich notwendigen Angaben (tatsächlicher Empfängername,
Faxnummer, usw.) zu suchen und bereitete den Nachrichtentext für eine Versendung als
FAX auf. Zusätzlich schrieb ich ein Programm zur Verwaltung dieser Datenbank.
Zeitraum: 2/1997 - 4/1997
Projekt: Übernahme einer Printausgabe auf eine Web-Site
(Projektgröße: 1 Person)
Branche: Medienberatung
Programmiersprache: Perl
Tool: MS FrontPage
Plattform: Windows NT
Aufgabe war die Übernahme von Texten und Bildern der Printausgabe einer Kunden-
zeitschrift auf eine Web-Site. Um eine regelmäßige Übernahme weitgehend zu auto-
matisieren, entwarf ich ein allgemeines HTML-Template mit fest definierten Platz-
haltern (für z.B. Titel, Überschriften, Text, Links, usw.) und ein Perl-Programm,
das gegebene Texte dann entsprechend aufbereitete.
Zeitraum: 10/1996 - 3/1998
Projekte: 1) Entwurf und Realisation von Installationsroutinen
2) Anbindung von allegro-C - Datenbanken ans Internet
(Projektgröße: 2 Personen)
Branche: Bibliotheken
Programmiersprachen: Perl, HTML
Datenbank: allegro-C (an der TU Braunschweig entwickeltes Datenbanksystem
für Bibliotheken)
Plattformen: MS-DOS, Windows 95, Internet
Die Installationsroutinen dienen der Installation von Erweiterungen zu allegro-C -
Datenbanken und wurden als dialogbasiertes Perl-Programm unter MS-DOS realisiert. Die
Anbindung von allegro-C - Datenbanken ans Internet erfolgt mit verschiedenen Perl-
CGI-Skripten (entsprechend den unterschiedlichen Anforderungen wie z.B. Registersuche,
Volltextsuche, Indexanzeige oder Ergebnisanzeige). Die Skripte formulieren die CGI-
Anfrage in eine Anfrage an den Datenbank-Server um und bereiten das erhaltene Ergebnis
für die Anzeige in einem Web-Browser dynamisch auf. Um die Darstellung sowohl der
Job-Dateien für den Datenbank-Server als auch der HTML-Seiten für die Ergebnisanzeige
von der eigentlichen Programmlogik zu trennen, wurde eine eigene Sprache (populo)
entwickelt, die in die Job- und HTML-Templates eingebettet wird. Die korrekte Inter-
pretation der populo-Sprachbestandteile erfolgt jeweils durch die Perl-Skripte. (Dies
ist vom Konzept her mit JavaServer Pages vergleichbar.)
Zeitraum: innerhalb 5/1993 - 9/1996
Projekt: u. a. Entwurf und Realisation einer Datenbank für Preprints und
Sonderdrucke
(Projektgröße: 1 Person)
Institut: Max-Planck-Institut für Mathematik (Bibliothek), Bonn
Programmiersprachen: Perl, TEX, Unix-Shell
Plattform: Sun Solaris
Die eigentliche Aufgabe war die Klassifikation und Katalogisierung mathematischer
Fachliteratur. Da es aber für die Katalogisierung kein geeignetes Tool und auch keine
Vorgabe gab, war zusätzlich eine geeignete Datenbank zusammen mit einer Benutzer-
schnittstelle zu erstellen. Die 'Datenbank' wurde in Form einer zeilenorientierten
Textdatei realisiert. Der Kern der Benutzerschnittstelle ist ein Perl-Programm, er-
weitert durch einige Unix-Shell-Elemente. Das Programm ermöglicht eine Volltextsuche
innerhalb frei wählbarer Kategorien. Das Suchergebnis wird dynamisch als TEX-Dokument
aufbereitet und (nach der erforderlichen Konvertierung in das DVI-Format) angezeigt.
Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.