Projekte
Written by P. Most   

Projekt

Aufgaben

Technologien

wxWidgets (03.2008 - heute)

Entwicklung und Wartung einer plattformübergreifenden
Softwarebibliothek.

• Portierung auf Qt
• Entwicklung des typensicheren "Bind"
• Behebung von Fehlern.

• C++ (GCC)
• Qt, CppUnit
• Elipse (CDT), gVim, CTags
• Subversion, Trak
• BakeFile
• Linux

MCT-Tools (02.2007 - heute)

Entwicklung von Anwendungen und Benutzeroberflächen für eine
Mobilfunk-Protokolltesterfamilie.

• Analyse und Behebung von Fehlern.
• Design und Entwicklung von neuen Features mit TDD
• Refaktorierung mit Hilfe von neu erstellten Unittests
• Erweiterung der vorhandenen CORBA-Schnittstellen

• Java (1.5, 1.6), C++
• Swing, FEST
• JUnit4, JUnit4-Extensions, Log4j
• PowerMock, EasyMock, EasyMock-Extensions
• Socket, NIO
• JNA, JNI
• CORBA, IDL, Comfyj
• Eclipse, Vim, Ant, Launch4j
• Jython, Python
• Bugzilla, ClearQuest, ClearCase, Windows

FIA (05.2006 – 01.2007)

Weiterentwicklung der „Kernprozesse“ um eine Unterstützung für das
VDV-Protokoll.

• Entwickung von C++ Unittests zur Vorbereitung von Refactoring.
• Entwiclung eines Java Validierungsprogramms für das vom „VDV-
Koppler“ implementierten VDV-Protokoll.

• C, C++, Java, SQL
• J-Unit, HTTP-Unit, HTML-Unit, XML-Unit, Boost-Test, Log4j
• PostgreSQL, Apache Tomcat, Ant
• TCP/IP, Sockets, XML
• Eclipse, KDevelop, gVim
• GNU make, Boost-Jam, CVS, Cervisia
• ClearQuest, SSH
• Windows, Linux

Auslandsauskunft (12.2005 – 03.2006)

Entwicklung eines Such-Web-Services für die Auslandsauskunft der
Telekom.

• Analysieren und dokumentieren der UserGuides-Gemeinsamkeiten.
• Entwurf der Serviceschnittstelle mit Java und dem Axis-Framework
(Java2WSDL).
• Entwicklung eines Serviceprototypen mit dem Axis-Framework
(WSDL2Java).
• Entwicklung einer Test-GUI für den Serviceprototypen.

• Java, Swing, Log4j, TableLayout
• Apache Tomcat, Apache Axis, WSDL
• E115, SOAP, ASN.1
• Eclipse, Ant, SSH
• Sun Solaris

Mediation Device (11.2002 – 09.2005)

Entwicklung eines “Mediation Device” zum aufzeichnen und weiterleiten
von Internetsitzungen an einen Bedarfsträger (IP-Monitoring).

• Analyse und Design der Systemarchitektur.
• Analyse und Design der OO-Softwarearchitektur.
• Entwurf und Dokumentation der externen TLV- und XML-
Schnittstellen.
• Höchste Ausfallsicherheit und Verfügbarkeit durch Multithreading.
• Hochperformante Datenpufferung und Weiterleitung via TCP/IP.
• Analysieren und optimieren der Performance unter Zuhilfenahme
eines Profilers.
• Implementierung unterschiedlichster Netzwerkprotokolle zu den
Datenkollektoren (Probes).
• Entwicklung von Test-Probes zur Unterstützung von automatischen
Tests.
• Persistente Speicherung des Programmzustands.
• Analysieren der Logdateien mit kleinen Python-Scripten.

• C++, Python
• GUI, wxWidgets (wxWindows)
• STL, Boost, AidKit
• Design Patterns, Template-Klassen, TLV, XML
• TCP-IP, Sockets, Threads, Pipes
• TCP-Dump, Ethereal, SSH
• GCC, GDB, DDD, Insight, KDevelop
• CVS, Cervisia, Make, SCons, Doxygen

Remote Player (05.2002 – 10.2002)

Entwicklung eines Tools mit GUI, das eine Steuerung eines Java-Media-
Players aus anderen Anwendungen (MS-Word, Notepad usw.) heraus
erlaubt.

• Analyse und Design der OO-Softwarearchitektur.
• Design der dialogbasierten GUI.
• Abfangen der Player-spezifischen Tastendrücke.
• Steuern des Mediaplayers durch simulierte Tastendrücke.
• Umschalten der GUI-Sprache (Englisch und Arabisch) zur Startzeit.

• DLL-Erstellung
• GUI (MFC), AidKit, Globale Windows Hooks
• MS-Windows 2000
• MS-Visual C++ 6.0
• MS-SourceSafe

LIRC (10.2001 – 04.2002)

Extrahieren von gesprächsbegleitenden Informationen aus ASN.1- und
Textdateien. Weiterleiten der Daten an eine Datenbankschnittstelle.

• Erweiterung der GUI-Dialoge um neue Einstellungsmöglichkeiten.
• Parsen der Text- bzw. ASN.1-Dateien.
• Übergabe der Informationen an eine COM-Schnittstelle.
• Entwicklung von protokollspezifischen Dekodern.
• Fehlerbehebung beim alten ASN.1-Dekoders.
• Neuentwicklung eines ASN.1-Parsers.
• Beseitigen von Speicherlecks.

• GUI (MFC)
• ASN.1, COM
• Reguläre Ausdrücke (pcre-Library)
• Design Patterns
• MS-Windows 2000
• MS-Visual C++ 6.0
• PVCS
• BoundsChecker

VR-Networld (04.2001 – 05.2001)

Erstellung eines Gutachtens über die Qualität einer bestehenden
Homebanking-Software.

• Analyse der Quellcodequalität bezüglich Wartbar- und
Erweiterbarkeit.

• MS-Windows 2000
• MS-Visual C++ 6.0
• MS-SourceSafe 6.0

Clicktionary (04.2000 – 01.2001)

Weiterentwicklung und Anpassung der GUI an neue Anforderungen.

• Design und Entwicklung von wiederverwendbaren Basisklassen für
beide Applikationen.
• Entwicklung der GUI mit MFC.
• Abfragen und manipulieren der Proxyserver-Einstellungen.
• Coaching der Kollegen bei Fragen zum OO-Design bzw. zur OO-
Programmierung.
• Unterstützung der Kollegen beim Debuggen und Beheben von
Fehlern.

• GUI (MFC)
• MS-Windows 2000
• MS-Visual C++ 6.0
• BoundsChecker
• Perforce

RCC (02.1998 – 03.2000)

Überwachen von Telefonverbindungen und Aufzeichnen der Gespräche,
wenn einer der Teilnehmer auf Überwachung gesetzt ist (Voice
Monitoring).

• Analyse und Design der Systemarchitektur.
• Analyse und Design der OO-Softwarearchitektur.
• Entwurf und Dokumentation der externen TLV-Schnittstellen.
• Design der Multithreading-Architektur.
• Empfangen der EWSD-Ereignisse (verbunden, aufgelegt usw.) von
mehreren externen Protokolladaptern (PAD) über Named Pipes.
• Aufzeichnung des Gesprächs mit einem externen Voice-Rekorder.
• Einführung einer Versionsverwaltung (SCM).

• MFC, Named Pipes, Sockets, Threads
• Design Patterns, Template-Klassen
• BoundsChecker
• SourceSafe
• Innovator
• MS-Visual C++ 5.0, MFC
• MS-Windows 2000, NT4.0

Playout-Center (02.1996 – 04.1997)

Entwicklung eines Programms zur Ansteuerung eines Archivroboters
der Firma Grau in einem Pay-TV Playout-Center.

• Analyse und Design der OO-Softwarearchitektur.
• Abfrage der Datenbank auf den nächsten geplanten Film.
• Abfrage der Position des Films im Archivturm.
• Feststellen, welches Bandabspielgerät frei ist.
• Anweisen des Roboters, den Film aus dem Archivturm zu holen und
in das Abspielgerät einzusetzen.

• C++, Borland C++
• Sun-Solaris
• DBTools++
• Make, Telnet, RSH

Maskeneditor (01.1997 – 12.1997)

Weiterentwicklung eines grafischen Editors zur Erstellung grafischer
Masken für eine Versicherung.

• Umstrukturierung der Software zur besseren Fehlerbehebung.
• Implementierung der Druckerausgabe.

• MS-Visual C++ 5.0
• StarView Klassenbibliothek
• Source Safe
• Purify

BodyCare (09.1995 – 12.1996)

Entwicklung einer Demosoftware, die den Einsatz von
Mikroprozessorkarten zur Speicherung von Patientendaten vorführt.

• Analyse und Design der OO-Softwarearchitektur.
• Design und Entwicklung der GUI.
• Visualisieren und Editieren von Patientendaten.
• Auslesen und Beschreiben der Daten auf Mikroprozessorkarten mit
verschiedenen Kartenlesegeräten.
• Kommunikation mit der Karte bzw. dem Lesegerät im
Übertragungsprotokoll (T1).
• Simulieren von Kartenlesegeräten.
• Umschaltmöglichkeit der Sprache zur Laufzeit.

• Serielle Schnittstelle (RS323)
• MS-Visual C++ 1.52c
• MFC

Card-DLL (09.1996 – 10.1996)

Entwicklung einer Kartenterminal-DLL zur Kommunikation mit einem
multifunktionalen Kartenterminal.

• Kommunikation über die serielle Schnittstelle mit einem
angeschlossenen Kartenterminal.
• Bereitstellen einer Mikroprozessorkarten-API.

• MS-Windows 3.X
• MS-Visual C++ 1.52c, MFC
• Serielle Schnittstelle
• T1-Protokoll (DIN 7816-3, DIN 7816-4)

Lieferschein (04.1994 – 08.1996)

Entwicklung eines Lieferscheinprogramms zum Ausfüllen und
Bedrucken von Lieferscheinen.

• Erstellen einer Lieferschein-Eingabemaske.
• Bedrucken der Lieferscheine.

• MS-DOS 5.0
• Borland C++ 3.1
• TurboVision

Unika (05.1993 – 03.1994)

Entwicklung einer Embedded Firmware für den Handheld Computer
“UNIKA”.

• Lesen und Schreiben von KVK-Karten.
• Editieren der KVK-Kartendaten.
• Gültigkeit der KVK-Daten prüfen.
• Simulieren nicht vorhandener Hardware in der PC-Umgebung.

• ANSI-C
• ASN.1

EC-Kartenverwaltung (08.1992 – 06.1996)

Kartenverwaltung
Entwicklung eines EC-Karten-Programms zum Verwalten des EC-
Kartenbestandes.

• Verwalten des EC-Kartenbestandes.
• Erstellen von Lagerbestandslisten.
• Bedrucken von Lieferscheinen.

• MS-DOS 5.0
• Clipper 5.0 (DBase-Kompiler)

Konvertierungen (08.1990 – 02.1996)

Entwicklung einer Vielzahl von kommandozeilenorientierten
Programmen, zum überprüfen und konvertieren von
kundenspezifischen Daten für die Kartenpersonalisierung.

• Analysieren der Kundendaten.
• Umwandeln der Daten in spezielle Maschinenformate.

• MS-DOS
• Turbo-C, Borland-C++

Profil
Name:
Peter Most
Beruf:
Senior Softwareentwickler
Jahrgang:
1966
Ausbildung:
- Mittlere Reife
- Abgeschlossene Bauzeichnerlehre
- Selbststudium zum Software-
entwickler ( Fachbuchliste)
Softwareentwickler seit: 1990
Erfahrung in:
-
-
-
-
-
-
-
Programmiersprachen:
Hervorragende Kenntnisse (21 Jahre) in:
- C++/C (Visual C++, GCC)
Systemdesign bzw. Architektur
Plattformübergreifende bzw. -unabhängige Implementierung.
Designpatterns (Anwendung / Neuentwicklung)
GUI-Frameworks (Windows / Linux)
UnitTests, Refactoring, automatisierte GUI-Tests
IPC (Sockets, Pipes)
Multi-Threading (Windows / Linux)
Sehr gute Kenntnisse (6 Jahre) in:
- Java
Weitere Kenntnisse in:
- C#, Mono, Python, Jython
Betriebssysteme:
- Windows (2000, XP)
- Linux (Kubuntu, SuSE)
Credo:
“Weisheit ist nicht das Ergebnis der Schulbildung, sondern des
lebenslangen Versuchs, sie zu erwerben."
-- Albert Einstein
- 1 / 23 -
Technologien:
IDEs:
- MS-Visual Studio, Eclipse (JDT, CDT), gVim, KDevelop
GUI-Frameworks:
- MFC, wxWidgets, Qt
- Swing, SWT
Class-Libraries:
- STL, Boost, Tools++, DBTools++, pcre u. a.
- NIO, BSD/Posix Sockets
- JUnit, JUnit Addons, HttpUnit, HtmlUnit, XmlUnit
- EasyMock, EasyMock Class Extension, PowerMock
- FEST (Fixtures for Easy Software Testing)
- Log4j, LogBack
u.a.
Debugging:
- MS-Visual Studio Debugger, GDB, DDD, Insight
- BoundsChecker, Purify
Versionsverwaltung:
- ClearCase, Subversion, SourceSafe, CVS, PVCS, Perforce
Bugtracker:
- Bugzilla, Trac, ClearQuest
Buildwerkzeuge:
- Make, SCons
- Ant, GAnt, Bjam, Jam
Datenbanken:
- PostgreSQL, DBase, Foxplus
Protokolle, IPC:
- COM, Comfyj
- TCP/IP, XML, ASN.1, TLV, HTML, HTTP, FTP
Sonstiges:
- JNI, JNA
- Launch4j
- Reguläre Ausdrücke
Anwendungen:
Büroprogramme:
- MS-Word, MS-Excel, OpenOffice-Writer, OpenOffic-Calc
E-Mailprogramme:
- Lotus Notes, MS-Outlook, MS-Outlook-Express, Kmail
- 2 / 23 -
Sprachkenntnisse:
Englisch sehr gut in Wort und Schrift
Bevorzugter Einsatzort:
Großraum München
Kontaktdaten:
Peter Most
PERA Software Solutions GmbH
Ulrich-Nanshaimer-Straße 29
85652 Landsham
Internet: WWW.PERA-Software.com
E-Mail: This e-mail address is being protected from spambots. You need JavaScript enabled to view it
Telefon: 089/909 692 48
Mobil: 0176/240 254 82
- 3 / 23 -
Projekte
Open Source Projekt:
wxWidgets
Laufzeit:
03. 2008 – heute
Beschreibung:
Entwicklung und Wartung einer plattformübergreifenden
Softwarebibliothek.
Aufgaben:
• Portierung auf Qt
• Entwicklung des typensicheren "Bind"
• Behebung von Fehlern.
Technologien:
• C++ (GCC)
• Qt, CppUnit
• Elipse (CDT), gVim, CTags
• Subversion, Trak
• BakeFile
• Linux
Homepage:
www.wxWidgets.org
- 4 / 23 -
Projekt:
MCT-Tools
Laufzeit:
02.2007 – heute
Beschreibung:
Entwicklung von Anwendungen und Benutzeroberflächen für eine
Mobilfunk-Protokolltesterfamilie.
Aufgaben:
• Analyse und Behebung von Fehlern.
• Design und Entwicklung von neuen Features mit TDD
• Refaktorierung mit Hilfe von neu erstellten Unittests
• Erweiterung der vorhandenen CORBA-Schnittstellen
Technologien:
• Java (1.5, 1.6), C++
• Swing, FEST
• JUnit4, JUnit4-Extensions, Log4j
• PowerMock, EasyMock, EasyMock-Extensions
• Socket, NIO
• JNA, JNI
• CORBA, IDL, Comfyj
• Eclipse, Vim, Ant, Launch4j
• Jython, Python
• Bugzilla, ClearQuest, ClearCase, Windows
Auftraggeber:
• Rohde & Schwarz
- 5 / 23 -
Projekt:
FIA
Beschreibung:
Weiterentwicklung der „Kernprozesse“ um eine Unterstützung für das
VDV-Protokoll.
Laufzeit:
05. 2006 – 01. 2007 Aufgaben:
• Entwickung von C++ Unittests zur Vorbereitung von Refactoring.
• Entwiclung eines Java Validierungsprogramms für das vom „VDV-
Koppler“ implementierten VDV-Protokoll.
Technologien:
• C, C++, Java, SQL
• J-Unit, HTTP-Unit, HTML-Unit, XML-Unit, Boost-Test, Log4j
• PostgreSQL, Apache Tomcat, Ant
• TCP/IP, Sockets, XML
• Eclipse, KDevelop, gVim
• GNU make, Boost-Jam, CVS, Cervisia
• ClearQuest, SSH
• Windows, Linux
Auftraggeber:
• Vossloh IT AG
- 6 / 23 -
Projekt:
Auslandsauskunft
Laufzeit:
12. 2005 – 03. 2006
Beschreibung:
Entwicklung eines Such-Web-Services für die Auslandsauskunft der
Telekom.
Aufgaben:
• Analysieren und dokumentieren der UserGuides-Gemeinsamkeiten.
• Entwurf der Serviceschnittstelle mit Java und dem Axis-Framework
(Java2WSDL).
• Entwicklung eines Serviceprototypen mit dem Axis-Framework
(WSDL2Java).
• Entwicklung einer Test-GUI für den Serviceprototypen.
Design:
• Semiautomatische Erstellung der GUI mit Hilfe von Reflection.
• Entwicklung einer generischen Delegate-Klasse zur Implementierung
von Listenern (ActionListener, ItemListener)
Technologien:
• Java, Swing, Log4j, TableLayout
• Apache Tomcat, Apache Axis, WSDL
• E115, SOAP, ASN.1
• Eclipse, Ant, SSH
• Sun Solaris
Auftraggeber:
• SoftMethod GmbH (Softwaredienstleister)
- 7 / 23 -
Projekt:
Mediation Device
Laufzeit:
11. 2002 – 09. 2005
Beschreibung:
Entwicklung eines “Mediation Device” zum aufzeichnen und weiterleiten
von Internetsitzungen an einen Bedarfsträger (IP-Monitoring).
Aufgaben:
• Analyse und Design der Systemarchitektur.
• Analyse und Design der OO-Softwarearchitektur.
• Entwurf und Dokumentation der externen TLV- und XML-
Schnittstellen.
• Höchste Ausfallsicherheit und Verfügbarkeit durch Multithreading.
• Hochperformante Datenpufferung und Weiterleitung via TCP/IP.
• Analysieren und optimieren der Performance unter Zuhilfenahme
eines Profilers.
• Implementierung unterschiedlichster Netzwerkprotokolle zu den
Datenkollektoren (Probes).
• Entwicklung von Test-Probes zur Unterstützung von automatischen
Tests.
• Persistente Speicherung des Programmzustands.
• Analysieren der Logdateien mit kleinen Python-Scripten.
Design:
• Implementierung der unterschiedlichen Datenkollektoren als Plugins
mit dem Strategy-Designpattern.
• Implementierung der Funktionalität innerhalb der Plugins mit dem
TemplateMethod-Designpattern.
• Instanzierung der Plugins mit der ProbeFactory-Template-Klasse, die
auf dem AbstractFactory-Designpattern basiert.
• Pufferung der Daten mit einem abgewandelten Flyweight-
Designpattern.
• Propagieren von Ereignissen zu Observern mit den Event- bzw.
Functor-Template-Klassen, die auf dem Observer-Designpattern
basieren.
• Asynchrone Verarbeitung der GUI-Messages von den Threads mit
einer Template-Klasse, die auf dem Command-Designpattern basiert.
• Speichern von zusätzlichen Daten in einer Triggerinstanz mit einer
Template-Klasse, die auf dem Property-Designpattern basiert.
• Persistente Speicherung mit dem ChainOfResponsibility- und
Serialize-Designpattern.
• Garantierte Threadsynchronisierung mit der ResourceGuard-
Template-Klasse, die auf dem Proxy-Designpattern basiert.
Technologien:
• C++, Python
• GUI, wxWidgets (wxWindows)
• STL, Boost, AidKit
• Design Patterns, Template-Klassen, TLV, XML
• TCP-IP, Sockets, Threads, Pipes
• TCP-Dump, Ethereal, SSH
• GCC, GDB, DDD, Insight, KDevelop
• CVS, Cervisia, Make, SCons, Doxygen
- 8 / 23 -
Projekt:
Remote Player
Laufzeit:
05. 2002 – 10. 2002
Beschreibung:
Entwicklung eines Tools mit GUI, das eine Steuerung eines Java-Media-
Players aus anderen Anwendungen (MS-Word, Notepad usw.) heraus
erlaubt.
Aufgaben:
• Analyse und Design der OO-Softwarearchitektur.
• Design der dialogbasierten GUI.
• Abfangen der Player-spezifischen Tastendrücke.
• Steuern des Mediaplayers durch simulierte Tastendrücke.
• Umschalten der GUI-Sprache (Englisch und Arabisch) zur Startzeit.
Design:
• Abfangen aller Tastendrücke mit einer global Windows Hooks DLL.
• Verschicken der abgefangenen Tastendrücke mit einer global
registrierten Windows Message.
Technologien:
• DLL-Erstellung
• GUI (MFC), AidKit, Globale Windows Hooks
• MS-Windows 2000
• MS-Visual C++ 6.0
• MS-SourceSafe
Auftraggeber:
Siemens AG (Telekommunikation)
- 9 / 23 -
Projekt:
LIRC
Laufzeit:
10. 2001 – 04. 2002
Beschreibung:
Extrahieren von gesprächsbegleitenden Informationen aus ASN.1- und
Textdateien. Weiterleiten der Daten an eine Datenbankschnittstelle.
Aufgaben:
• Erweiterung der GUI-Dialoge um neue Einstellungsmöglichkeiten.
• Parsen der Text- bzw. ASN.1-Dateien.
• Übergabe der Informationen an eine COM-Schnittstelle.
• Entwicklung von protokollspezifischen Dekodern.
• Fehlerbehebung beim alten ASN.1-Dekoders.
• Neuentwicklung eines ASN.1-Parsers.
• Beseitigen von Speicherlecks.
Design:
• Extrahieren der Informationen mit Regulären Ausdrücken.
• Zentralisieren der Dekoderinstanzierung mit dem AbstractFactory-
Designpattern.
• Vereinheitlichen der unterschiedlichen COM-Schnittstellen mit dem
Adapter-Designpattern.
Technologien:
• GUI (MFC)
• ASN.1, COM
• Reguläre Ausdrücke (pcre-Library)
• Design Patterns
• MS-Windows 2000
• MS-Visual C++ 6.0
• PVCS
• BoundsChecker
Auftraggeber:
• Siemens AG (Telekommunikation)
- 10 / 23 -
Projekt:
VR-Networld
Laufzeit:
04. 2001 – 05. 2001
Beschreibung:
Erstellung eines Gutachtens über die Qualität einer bestehenden
Homebanking-Software.
Aufgaben:
• Analyse der Quellcodequalität bezüglich Wartbar- und
Erweiterbarkeit.
Technologien:
• MS-Windows 2000
• MS-Visual C++ 6.0
• MS-SourceSafe 6.0
Auftraggeber:
• E & M Software Solutions (Bank)
Projekt:
Clicktionary,
Clevertrainer
Laufzeit:
04. 2000 – 01. 2001
Beschreibung:
Weiterentwicklung und Anpassung der GUI an neue Anforderungen.
Aufgaben:
• Design und Entwicklung von wiederverwendbaren Basisklassen für
beide Applikationen.
• Entwicklung der GUI mit MFC.
• Abfragen und manipulieren der Proxyserver-Einstellungen.
• Coaching der Kollegen bei Fragen zum OO-Design bzw. zur OO-
Programmierung.
• Unterstützung der Kollegen beim Debuggen und Beheben von
Fehlern.
Design:
• Bearbeiten der Proxyserverkonfiguration mit einer Browser-Klasse,
die auf dem Bridge-Designpattern basiert.
• Entwickeln eines Activator Event-Mechanismus.
Technologien:
• GUI (MFC)
• MS-Windows 2000
• MS-Visual C++ 6.0
• BoundsChecker
• Perforce
Auftraggeber:
• Cleverlearn GmbH (Internet Startup)
- 11 / 23 -
Projekt:
RCC
Laufzeit:
02. 1998 – 03. 2000
Beschreibung:
Überwachen von Telefonverbindungen und Aufzeichnen der Gespräche,
wenn einer der Teilnehmer auf Überwachung gesetzt ist (Voice
Monitoring).
Aufgaben:
• Analyse und Design der Systemarchitektur.
• Analyse und Design der OO-Softwarearchitektur.
• Entwurf und Dokumentation der externen TLV-Schnittstellen.
• Design der Multithreading-Architektur.
• Empfangen der EWSD-Ereignisse (verbunden, aufgelegt usw.) von
mehreren externen Protokolladaptern (PAD) über Named Pipes.
• Aufzeichnung des Gesprächs mit einem externen Voice-Rekorder.
• Einführung einer Versionsverwaltung (SCM).
Design:
• Instanzierung eines Threads pro externen Protokolladapter (PAD).
• Kommunikation mit den externen PADs mit asynchronen Named
Pipes und TLV-Protokoll.
• Abbildung der PAD-Konfiguration in einem Gerätebaum mit dem
Composite-Designpattern.
• Rekursive Bearbeitung des Gerätebaumes mit dem Visitor-
Designpattern.
• Benachrichtigung der internen Klienten mit dem Observer- bzw.
NullObject-Designpattern.
• Asynchrone Benachrichtigung der Threads mit dem Command-
Designpattern.
• Threadsichere Speicherverwaltung mit einer ReferenceCounter
basierten SmartPointer-Template-Klasse.
• Speichern von zusätzlichen Daten in einer Geräteinstanz mit dem
Property-Designpattern.
Technologien:
• MFC, Named Pipes, Sockets, Threads
• Design Patterns, Template-Klassen
• BoundsChecker
• SourceSafe
• Innovator
• MS-Visual C++ 5.0, MFC
• MS-Windows 2000, NT4.0
Auftraggeber:
• Siemens AG (Telekommunikation)
- 12 / 23 -
Projekt:
Playout-Center
Laufzeit:
02. 1996 – 04. 1997
Beschreibung:
Entwicklung eines Programms zur Ansteuerung eines Archivroboters
der Firma Grau in einem Pay-TV Playout-Center.
Aufgaben:
• Analyse und Design der OO-Softwarearchitektur.
• Abfrage der Datenbank auf den nächsten geplanten Film.
• Abfrage der Position des Films im Archivturm.
• Feststellen, welches Bandabspielgerät frei ist.
• Anweisen des Roboters, den Film aus dem Archivturm zu holen und
in das Abspielgerät einzusetzen.
Design:
• Wrappen der Roboter-API mit dem Facade-Designpattern um const-
Korrektheit zu erreichen.
• Entwicklung einer Konvertierungs-Template-Klasse, um zwischen
Strings und Enums typensicher umzuwandeln.
• Implementierung der Tape-Klasse als Flyweight-Designpattern.
Technologien:
• C++, Borland C++
• Sun-Solaris
• DBTools++
• Make, Telnet, RSH
Auftraggeber:
• BETA-Research (Pay-TV)
- 13 / 23 -
Projekt:
Maskeneditor
Laufzeit:
01. 1997 – 12. 1997
Beschreibung:
Weiterentwicklung eines grafischen Editors zur Erstellung grafischer
Masken für eine Versicherung.
Aufgaben:
• Umstrukturierung der Software zur besseren Fehlerbehebung.
• Implementierung der Druckerausgabe.
Design:
• Rekursive Bearbeitung der Maskenelemente mit dem Guide- und
Visitor-Designpattern.
Technologien:
• MS-Visual C++ 5.0
• StarView Klassenbibliothek
• Source Safe
• Purify
Auftraggeber:
• SoftLab (Softwaredienstleister)
- 14 / 23 -
Projekt:
BodyCare
Laufzeit:
09. 1995 – 12. 1996
Beschreibung:
Entwicklung einer Demosoftware, die den Einsatz von
Mikroprozessorkarten zur Speicherung von Patientendaten vorführt.
Aufgaben:
• Analyse und Design der OO-Softwarearchitektur.
• Design und Entwicklung der GUI.
• Visualisieren und Editieren von Patientendaten.
• Auslesen und Beschreiben der Daten auf Mikroprozessorkarten mit
verschiedenen Kartenlesegeräten.
• Kommunikation mit der Karte bzw. dem Lesegerät im
Übertragungsprotokoll (T1).
• Simulieren von Kartenlesegeräten.
• Umschaltmöglichkeit der Sprache zur Laufzeit.
Design:
• Simulieren unterschiedlicher Kartenlesegeräte mit dem Proxy-
Designpattern.
• Rekursives Übersetzen der GUI-Elemente mit dem Iterator-
Designpattern.
Technologien:
• Serielle Schnittstelle (RS323)
• MS-Visual C++ 1.52c
• MFC
Auftraggeber:
• Oldenbourg Datensysteme (EC-Kartenhersteller)
- 15 / 23 -
Projekt:
Card-DLL
Laufzeit:
09. 1996 – 10. 1996
Beschreibung:
Entwicklung einer Kartenterminal-DLL zur Kommunikation mit einem
multifunktionalen Kartenterminal.
Aufgaben:
• Kommunikation über die serielle Schnittstelle mit einem
angeschlossenen Kartenterminal.
• Bereitstellen einer Mikroprozessorkarten-API.
Design:
• Isolierung der Bibliothek-Interna durch Insulation-Design.
• Abbildung der C++ Klassenbibliothek auf eine C-Schnittstelle.
Technologien:
• MS-Windows 3.X
• MS-Visual C++ 1.52c, MFC
• Serielle Schnittstelle
• T1-Protokoll (DIN 7816-3, DIN 7816-4)
Auftraggeber:
• Oldenbourg Datensysteme (EC-Kartenhersteller)
Projekt:
Lieferschein
Laufzeit:
04. 1994 – 08. 1996
Beschreibung:
Entwicklung eines Lieferscheinprogramms zum Ausfüllen und
Bedrucken von Lieferscheinen.
Aufgaben:
• Erstellen einer Lieferschein-Eingabemaske.
• Bedrucken der Lieferscheine.
Technologien:
• MS-DOS 5.0
• Borland C++ 3.1
• TurboVision
Auftraggeber:
• Oldenbourg Datensysteme (EC-Kartenhersteller)
- 16 / 23 -
Projekt:
UNIKA
Laufzeit:
05. 1993 – 03. 1994
Beschreibung:
Entwicklung einer Embedded Firmware für den Handheld Computer
“UNIKA”.
Aufgaben:
• Lesen und Schreiben von KVK-Karten.
• Editieren der KVK-Kartendaten.
• Gültigkeit der KVK-Daten prüfen.
• Simulieren nicht vorhandener Hardware in der PC-Umgebung.
Design:
• Simulation der C++ Polymorphie.
• Modellierung durch abstrakte Datentypen (ADT).
Technologien:
• ANSI-C
• ASN.1
Auftraggeber:
• Oldenbourg Datensysteme (EC-Kartenhersteller)
Projekt:
EC-
Kartenverwaltung
Beschreibung:
Entwicklung eines EC-Karten-Programms zum Verwalten des EC-
Kartenbestandes.
Laufzeit:
Aufgaben:
03. 1996 – 06. 1996: • Verwalten des EC-Kartenbestandes.
08. 1992 – 10. 1993: • Erstellen von Lagerbestandslisten.
• Bedrucken von Lieferscheinen.
Technologien:
• MS-DOS 5.0
• Clipper 5.0 (DBase-Kompiler)
Auftraggeber:
• Oldenbourg Datensysteme (EC-Kartenhersteller)
- 17 / 23 -
Projekt:
Konvertierungen
Laufzeit:
08. 1990 – 02. 1996:
Beschreibung:
Entwicklung einer Vielzahl von kommandozeilenorientierten
Programmen, zum überprüfen und konvertieren von
kundenspezifischen Daten für die Kartenpersonalisierung.
Aufgaben:
• Analysieren der Kundendaten.
• Umwandeln der Daten in spezielle Maschinenformate.
Technologien:
• MS-DOS
• Turbo-C, Borland-C++
Auftraggeber:
• Oldenbourg Datensysteme (EC-Kartenhersteller)
- 18 / 23 -
Fachbuchliste:
(Auszugsweise)
C++:
C++ Programming Language, The
Bjarne Stroustrup
Large-Scale C++ Software Design (Create highly
maintainable, highly testable software architectures)
John Lakos
C++ Network Programming, Volume 1 (Mastering
Complexity with ACE and Patterns)
Douglas C. Schmidt,
Stephen D. Huston
C++ Network Programming, Volume 2 (Systematic
Reuse with ACE and Frameworks)
Douglas C. Schmidt,
Stephen D. Huston
Effective C++ (50 Specific Ways to Improve Your
Programs and Designs)
Scott Meyers
More Effective C++ (35 New Ways to Improve Your
Programs and Designs)
Scott Meyers
Exceptional C++ (47 Engineering Puzzles, Programming Herb Sutter
Problems, and Solutions)
More Exceptional C++ (40 New Engineering Puzzles,
Programming Problems, and Solutions)
Herb Sutter
Advanced C++ (Progamming Styles and Idioms)
James O. Coplien
C++ Template Metaprogramming (Concepts, Tools and
Techniques from Boost and Beyond)
David Abrahams,
Aleksey Gurtovoy
Efficient C++ (Performance Programming Techniques)
Dov Bulka, David Mayhew
Generic Programming and the STL (Using and
Extending the C++ Standard Template Library)
Matthew H. Austern
Standard C++ IOStreams and Locales (Advanced
Programmer's Guide and Reference)
Angelika Langer, Klaus Kraft
Modern C++ Design (Generic Programming and Design Andrei Alexandrescu
Patterns Appied)
No Bugs (Delivering Error-Free Code in C and C++)
David Thielen
Writing Solid Code (Microsoft's Techniques for
Developing Bug-Free C Programs)
Steve Maguire
Writing Secure Code (Practical strategies and techniques Michael Howard, David LeBlanc
for secure application coding in a networked world)
- 19 / 23 -
Java, Swing:
Java Programming Language, The
Ken Arnold, James Gosling,
David Holmes
JFC Swing Tutorial, The (A Guide to Constructing GUIs) Kathy Walrath, Mary Campione,
Alison Huml, Sharon Zakhour
Java Network Programming (Developing Networked
Applications)
Elliote Rusty Harrold
Java NIO (Regular Expressions and High-Performance
I/O)
Ron Hitchens
Java Threads (Understanding and Mastering
Concurrent Programming)
Scott Oaks, Henry Wong
Java Reflection in Action (How to design flexible
applications)
Ira R. Forman, Nate Forman
Java Performance Tuning (Efficient & Effective Tuning
Strategies)
Jack Shirazi
Hardcore Java (Secrets of the Java Masters)
Robert Simmons Jr.
Windows, MFC
Windows-Programmierung (Das Entwicklerhandbuch
zur Win32-API)
Charles Petzold
International Programming for Microsoft Windows
(Essential guidelines for globalizing and localizing your
software)
David A. Schmitt
Microsoft Windows Programmierung für Experten
(Profiwissen zur Programmierung von Anwendungen
für Windows 98 und Windows 2000)
Jeffrey Richter
Multithreading Applications in Win32 (The Complete
Guide to Threads)
Jim Beveridge, Robert Wiener
MFC Internals (Inside the Microsoft Foundation Class
Architecture)
George Shepherd, Scot Wingo
OOA, OOD, OOP:
Design Patterns (Elements of Reusable Object-Oriented
Software)
Erich Gama, Richard Helm,
Ralph Johnson, John Vlissides
Pattern Hatching (Design Patterns Applied)
John Vlissides
- 20 / 23 -
Pattern Languages of Program Design 1
Coplien, Schmidt
Pattern Languages of Program Design 2
Vlissides, Coplien, Kerth
Pattern Languages of Program Design 3
Robert Martin, Dirk Riehle,
Frank Buschmann
Pattern Languages of Program Design 4
Neil Harrison, Brian Foote,
Hans Rohnert
Pattern-orientierte Software-Architektur (Ein Pattern-
System)
Frank Buschmann,
Regine Meunier, Hans Rohnert,
Peter Sommerlad, Michael Stal
Linux, Unix:
KDE- und Qt-Programmierung (GUI-Entwicklung für
Linux)
Burkhard Lehner
GUI-Programmierung mit GTK+
Thorsten Fischer
Xlib Programming Manual (The Definitive Guides to the Adrian Nye
X Window System)
LINUX Network Administrator's Guide
Olaf Kirch, Terry Dawson
Softwareentwicklung:
Code Complete 2nd Edition (A practical handbook of
software construction)
Steve McConnell
Rapid Development (Taming Wild Software Schedules)
Steve McConnell
Pragmatic Programmer, The (from journeyman to
master)
Andrew Hunt, David Thomas
Debugging Applications (The Bugslayer’s guide to finding John Robbins
and fixing coding errors in Microsoft Windows-based
applications)
Extreme Programming Explained (Embrace Change)
Kent Beck
Working effectively with legacy code
Michael C. Feathers
Projektmanagement:
Software Requirements (Practical techniques for
gathering and managing requirements throughout the
product development cycle)
- 21 / 23 -
Karl E. Wiegers
Managing the Testing Process (Practical tools and
Rex Black
techniques for managing hardware and software testing)
Mythical Man-Month (Essays on Software Engineering), Frederick P. Brooks, Jr.
The
Peopleware „Wien wartet auf Dich!“ (Der Faktor Mensch Tom DeMarco, Timothy Lister
im DV-Management)
Secrets of Consulting (A Guide to Giving & Getting
Advice sucessfully), The
Gerald M. Weinberg
More Secrets of Consulting (The Consultant's Tool Kit)
Gerald M. Weinberg
Anti Patterns (Refactoring Software, Architectures, and
Projects in Crisis)
William H. Brown,
Raphael C. Malveau,
Hays W. „Skip“ McCormick III,
Thomas J. Mowbray
Debugging the Development Process (Practical
Strategies for Staying Focused, Hitting Ship Dates, and
Building Solid Teams)
Steve Maguire
C#, .NET, Mono
C# Programming Language, The
Anders Hejlsberg,
Scott Wiltamuth, Peter Golde
Programming C# (Building .NET Applications)
Jesse Liberty
Programming .NET Windows Applications (Rich Client
Applications with C# or VB.NET)
Jesse Liberty, Dan Hurwitz
Windows Programmierung mit C# (Windows-
Programmierung auf der .NET Plattform)
Charles Petzold
Mono (A Developer's Notebook)
Edd Dumbill, Niel M. Bornstein
Windows Programmierung mit C# (Windows-
Programmierung auf der .NET-Plattform)
Charles Petzold
Open Source .NET Development (Programming with
NAnt, NUnit, NDoc and more)
Brian Nantz
Mono (A Developer's Notebook)
Edd Dumbill, Niel M. Bornstein
Andere Programmiersprachen:
Learning Python
Mark Lutz, David Ascher
Programming Python (Solutions for Python
programmers)
Mark Lutz
Python in a Nutshell
Alex Martelli
- 22 / 23 -
Jython Essentials (Rapid Scripting in Java)
Samuele Pedroni, Noel Rappin
Programmieren mit Perl
Larry Wall, Tom Christiansen,
Jon Orwant
Perl Kochbuch (Beispiele und Lösungen für Perl-
Programmierer)
Tom Christiansen,
Nathan Torkington
Verschiedenes:
Reguläre Ausdrücke
Jeffrey E. F. Friedl
GUI Bloopers (Don'ts and Do's for Software Developers
and Web Designers
Jeff Johnson
Designing Interfaces (Patterns for Effective Interaction
Design)
Jenifer Tidwell
Bringing Design to Software
Terry Winograd
HTML (The Definitive Guide)
Chick Musciano, Bill Kennedy
Betriebssysteme (Entwurf und Realisierung)
Andrew S. Tanenbaum
How Debuggers Work (Algorithms, Data Structures, and Jonathan B. Rosenberg
Architecture)
- 23 / 23 -

Last Updated on Saturday, 06 November 2010 20:22
 
PERA Software Solutions GmbH, Powered by Joomla! and designed by SiteGround web hosting