Remoteeinsatz bevorzugt.
Weiterentwicklung eines komplexen, komponentenbasierten Reisebuchungssystems (GDS) in einem internationalen Umfeld.
Tätigkeitsschwerpunkte
Projektsprache: Englisch
04/2014 ? 12/2016
Pflege und Modernisierung einer umfangreichen Windows Drucksoftware für Reisebüros und Reiseveranstalter
Umfangreiches Refactoring zentraler Bestandteile der Anwendung (Umstellung von C auf C++, Verbesserung der Codequalität)
Konsolidierung der Quellcodeverwaltung durch Übernahme von Teilprojekten in Git
Neuentwicklung von Funktionalität zum skriptgesteuerten Export/Import von Konfigurationseinstellungen im XML Format
Entwicklung eines Frameworks zur automatisierten Testausführung
Erstellung von umfangreichem Tooling für Build und Releasing (überwiegend in Python 3.5)
Analyse und Beseitung von Kundenproblemen
C++11 Entwicklung mit Visual Studio 2013 / 2015
04/2013 - 12/2016
Weiterentwicklung einer C/C++ Server Software zur Übermittlung unterschiedlicher Anwendungsdaten
Test und Verbesserung der Stabilität bestehender/neuer Komponenten (Test mit bis zu 50.000 aktiven Clientverbindungen pro Serverprozess)
Asynchrone Netzwerkkommunikation über TCP Sockets und Named Pipes
Extensiver Einsatz von Multithreading und IO Queuing
C++11, Visual Studio 2013 / 2015
06/2011 - 02/2013
UHF RFID Lesesystem (Industrie, Embedded Systems)
Inbetriebnahme der Hardware (vom Kunden entwickelt, Atmel AVR32 Board)
Entwicklung von Basissoftware, Web UI, Schnittstellen (FTP, GPRS, Web API)
Programmierung in C für ein Atmel AVR32 Board
09/2011 - 09/2012
System zur Bilderfassung über drahtlos angebundene Low-Power Hardware (Industrie, Embedded System Entwicklung)
Inbetriebnahme der Hardware (vom Kunden entwickelt, basierend auf Atmel AVR)
Entwicklung von Basissoftware, Bootloader, Bildübertragung
Programmierung in C mit AVR Studio
06/2012 - 07/2012
GSM Wählgerät (Embedded Systems)
Entwicklung einer Wählgerätefirmware mit Web UI
Programmierung in C
05/2012
Messedemo für ein RFID Schlauchkupplungssystem:
Erstellung einer Messedemo-Software zur graph. Visualisierung des Verbindungszustands angeschlossenen Schlauchkupplungen
UI: QGraphicsView mit Animation
Hintergrundthread zur Gerätekommunikation
Programmierung in C++ unter Einsatz von Qt 4.8
QtCreator 2.5 IDE
04/2012
Bilddokumentationskomponente für das Logistiksystem ILTIS (Logisoft-S):
Erstellung einer Windows Dienstanwendung zur Bilddokumentation mittels mehrerer IDS uEye IP-Kameras und Anbindung an eine C-S Logistiksoftware
Programmierung in C++ mit Visual Studio
Umfeld: Win32, Windows Photoviewer
Visual Studio 2010 RTM Release, Silverlight/WPF, WCF RIA Services,
WCF Data Services, ASP.NET MVC 2)
Verschiedene Erweiterungen des Systems zur Palettenvermessung um
einen flexibleren Einsatz zu ermöglichen (FIFO-Puffer für Barcode-
Messergebnisse, manuelle Bearbeitung der erfassten Barcodes, etc.).
Installation und Test beim Kunden
Umfeld : C, C#, WinForms 2.0, .NET Framework 3.5gesammelten Produktionsdaten ein nachträglich nicht mehr änderbares
Dokument erstellt und dem Kunden zur Verfügung gestellt werden.
- Abrufen von Produktionsdaten über FTP
- Erstellung einer digital signierten PDF Datei mit Produktionsdaten / Zeitstempel
- Erzeugung und Installation eines (self-signed) Zertifikats
Umfeld : C, C#, WinForms 2.0, iTextPDF, OpenSSLMeine Aufgabe bestand darin, die Mess-/Steuersoftware für eine Anlage zur Palettenvermessung zu entwickeln. Die Teilaufgaben im Detail:
- Ansteuerung der über TCP angeschlossenen Geräte: SICK Lasermesssysteme
(LMS400) und Barcode-Scanner, Beckhoff Buskoppler
- Auswertung der Messdaten des Lasermesssystems zur Bestimmung der Abmessungen der Palette; Speichern der Messergebnisse in Datei
- Darstellung der Messergebnisse im Windows Client
Umfeld : C#, WinForms 2.0, .NET Sockets, MODBUS/TCP, Multithreading, SharpDevelopUmstellung einer auf MFC basierenden Software von VS 2003 auf VS 2008,
Doxygen-Konfiguration zur Projektdokumentation,
Konzeption und Erstellung eines Prototypen, welcher die Funktionalität
der MFC Anwendung über eine COM Schnittstelle und einen WCF Web Service
bereitstellt
Umfeld : Microsoft Visual Studio 2008, WCF (.NET 3.5), COM InteropHardwarenahe Softwareentwicklung zur Inbetriebnahme eines Rechners für
Automatisierungsaufgaben (UART, SPI, Softing CAN-AC2-PCI Karte).
- Softing CAN Layer 2 API
- NI VISA / NI DAQ APIs
Umfeld : C/C++, MinGW, Eclipse CDTEntwicklung von Komponenten zur Aufzeichnung/Bereitstellung/Darstellung
von Messwerten.
- Recorder Komponente zur Aufzeichnung von Messwerten
- Service Komponente für den Zugriff auf gespeicherte Aufzeichnungen von Messwerten
- Aufbereitung von Messwerten und Darstellung in tabellarischer sowie graphischer Form mittels WinForms Komponenten
Umfeld : C#, Visual Studio 2005, .NET 2.0, WinForms, Infragistics WinGrid/WinChart,Multithreading, .NET Remoting, XML
Entwurf und Erstellung einer .NET basierten Anwendung zur Erfassung/
Verwaltung von Besprechungen und zugeh. Bewirtungsanforderungen in
Client/Server Architektur.
Umfeld : C#, Visual Studio 2008, Microsoft SQL Server 2005, VSTO, WCF-Webservice,Office Automatisierung, Microsoft Report Viewer Client Komponente
unter Berücksichtigung der aus dem Prototypen (s.u.) gewonnenen Erkenntnisse
- Anbindung an bestehende MFC Anwendung über .NET C++/CLI
- UI Prototyp der Berichteselektion, Bearbeitung von Parametern und Vorschau
- Integration von zwei unterschiedlichen Berichts-Engines: eine auf der C++/MFC
basierende Komponente sowie DevExpress XtraReports
Umfeld : C++, C++/CLI, C#, .NET, WinForms, DevExpress, Visual Studio.NET 2005Erstellung einer COM-Komponente zur Steuerung der Ausführung zentraler Aufgaben
beim Programmstart, sowie graph. Präsentation der Einzelschritte. Einbindung
dieser Komponente in die verschiedenen Standardprodukte des Herstellers.
Umfeld : C++, ATL, MFC, Microsoft Team Foundation SystemBerichten
- prototypische Implementierung der grundlegenden Programmabläufe
- Modellierung und Auswertung der Steuerdaten mittels XML Konfigurationsdateien
- Zusammenarbeit mit dem Design Team
Umfeld : C++, C#, .NET, Windows Forms, Visual Studio.NET 2005Die Aufgabenstellung bestand in der Erstellung von (Unit-)Tests unter Verwendung
des Tools NUnit, sowie der Erstellung begleitender Test-Dokumentation.
Ziel: Überprüfung der implementierten Schnittstellen auf Konformität zur
ASAM MCD 3 Spezifikation V2.00.02.
Umfeld : C#, .NET 2.0, NUnit, Microsoft Visual Studio.NET 2003Erstellung eines ActiveX Controls, welches den Adobe SVG Viewer 3.0.2 einbettet.
Technische Details:
Ziel war es die Beschränkungen bei der Verwendung des Adobe SVG Controls
zu umgehen um ein direktes Hosting in einer Windows Forms Komponente zu
ermöglichen.
Umfeld : C++, ATL, ActiveXSoftware
Erweiterungen wurden hauptsächlich in folgenden Teilbereichen vorgenommen
- Anbindung der ASAM Laufzeitumgebung DTS über die Schnittstelle ASAM
MCD-3D 2.00.02
- Flashen von ASAM Steuergeräten
- Auslesen und Auswertung von ECU Fehlerspeicher
- Wandlung von Parameter- und Ergebniswerten
- Anzeige von über das ASAM Subsystem ermittelten Messwerten im Software-
Oszilloskop
- Analyse und Beseitigung bekannter Softwarefehler
Umfeld : C, C++, XMLvon Testprogrammen zur Fahrzeugdiagnose
Kernaufgabe war ein Refactoring der bestehenden Anwendung um die
Anbindung von Fahrzeugdiagnosesystemen verschiedener Hersteller
nach dem ASAM MCD-3 Standard zu ermöglichen.
Technische Details:
Schaffung von C++ Schnittstellen, über welche ASAM Laufzeitsysteme
unterschiedlicher Hersteller eingebunden werden können. Gemeinsame
Schnittstelle zu Ausgabe von Fehlermeldungen und Funktionen zum
Logging. Schreiben von Trace-Dateien zur Performance Auswertung.
Anbindung eines in der Sprache C# entwickelten ASAM Laufzeitsystems
mittels .NET Interop (Managed C++). Überarbeitung der Anbindung
einer über COM angebundenen ASAM Runtime.
Erweiterung des vorhandenen Setup-Programms um die Installation
eines ASAM Laufzeitsystems.
Erstellung von Unit-Tests zu den vorgenommenen Erweiterungen.
Umfeld : C, C++, C#, .NET, Microsoft Visual Studio.NET 2003Weiterentwicklung des unten genannten Projekts "Arbeits- und Projektzeit-
erfassung" zu einer mandantenfähigen gehosteten Version mit Web-Oberfläche.
Die hier aufgeführten technischen Details, Komponenten und relevanten Technologien
beziehen sich ausschließlich auf die Erweiterungen.
Technische Details:
Backend für Hosting-Lösung (ASP) mit Unterstützung für Dienst-
Discovery/Load Balancing. Skalierbare Architektur für Unterstützung einer
großen Zahl von Mandanten. NTLM-unabhängige Authentifikation und
Lizenzverwaltung. Unterstützung von verschiedenen
Authentifikationsmethoden/-providern. Mit ASP.NET 2.0 realisierte WebUI
zur Verwaltung und Benutzung (Reportgenerierung etc.) des Systems.
Siehe auch bei unten genanntem Projekt "Arbeits- und Projektzeiterfassung".
Komponenten:
- .NET C# Remoting Komponente für zentrale Authentifikations- und
Lizenzverwaltungsdienste
- .NET C# Webservice zur Server- und Mandantenadministration, inkl.
automatischer Anlage von Datenbanken nach Skript-Templates
- .NET C# Webservice zur Generierung von personalisierten MSI-Packages
zur Softwareinstallation
- ASP.NET 2.0 WebForms Anwendung zur Administration des Servers/der
Mandanten
- Anpassung bestehender WebServices (.NET, C#) an neues Datenbankschema
(insbes. dynamisch erweiterbare Stammdatentabellen) und neue Gesamt-
architektur (Skalierbarkeit, Authentifikation), sowie Erweiterungen zur
Erfassung, Bearbeitung.
- Anpassung bestehender Client-Komponenten (.NET, C#) an neue
Gesamtarchitektur: Erfassung, Bearbeitung.
Relevante Technologien:
Durchgängige Verwendung von .NET/C#. Verteilte Anwendung, mehrschichtiges Modell.
Technische Schwerpunkte: .NET/C# unter Win32, ASP.NET Webservices, ASP.NET 2.0
WebForms, T-SQL (DDL; DML mit Queries, Stored Procedures, Trigger).
Umfeld : .NET, ASP.NET, C#, T-SQL, Win3202/2005 - 06/2005
Branche : SoftwareherstellerMitarbeiter "real-time" sowie durch Nachbearbeitung.
Auswertung der erfassten Zeiten über Excel etc. möglich.
Technische Details:
Win32-Client sowie WinCE-Client für Online- und Offline-Betrieb. Anbindung
an Intranet-System (ASP.NET DotNetNuke-basiert) mit eigenen Modulen zur
grafischen Darstellung von Projektübersichten, Urlaubsplaner, etc.
Datenhaltung unter MS SQL 2000. Backend durch mehrere Webservices
realisiert. Auswertung/Bearbeitung am Client über eigene Tools oder über
COM-Bibliothek (mit Automation-Support), die als .NET/C# Anwendung mit
COM-Wrapper erstellt wurde und auf entspr. Webservices zugreift. Das
gesamte System verfügt über NTLM-basierte Benutzerauthentifizierung und
Rechteverwaltung.
Komponenten:
- Webservice (.NET, C#) zur Echtzeit-Erfassung von Projektzeiten, Batch-
Verarbeitung von Offline erfassten Projektzeiten, Bereitstellung von
Mitarbeiter- und Projektstammdaten, Bestimmung von geleisteten
Arbeitsstunden/Monat. Datenbankanbindung. Unit Tests.
- Webservice (.NET, C#) zur Bearbeitung von erfassten Arbeits-, Projekt-
und Abwesenheitszeiten. Archivierung der urspr. Daten.
Datenbankanbindung. Unit Tests.
- Webservice (.NET, C#) zur Unterstützung der Auswertung der erfassten
Daten (Arbeitszeitdaten, Projektzeitdaten, sowie für Reports notwendige
Stammdaten). Anbindung an Datenbank.
- Client (.NET, C#, WinForms) zur Online-Erfassung von Projektzeiten und
Abwesenheitszeiten. - Client für Windows CE (.NET CF, C#, WinForms).
Übermittlung von offline erfassten Projektzeiten. Test.
- Client (.NET, C#, WinForms) zur Bearbeitung von Arbeitszeiten (Administration)
- Client (.NET, C#, WinForms) zur gaphischen Bearbeitung von Projektzeiten
- Client (.NET, C#, WinForms) zur Anzeige des Anmeldestatus der Mitarbeiter
- Modul für das Intranetsystem DotNetNuke zur Ausgabe einer
Abwesenheitsübersicht
Relevante Technologien:
Durchgängige Verwendung von .NET/C#. Verteilte Anwendung, mehrschichtiges
Modell.
Technische Schwerpunkte: .NET/C# unter Win32 und WinCE (.NET Compact Framework),
ASP.NET Webservices, WinForms, T-SQL (Query, Stored Procedures, Trigger), COM.
Umfeld : .NET, ASP.NET, C#, Intranet, T-SQL, Windows CE06/2002 - 01/2003
Branche : Softwareherstellerzugehöriger Administrationssoftware
Technische Details
Webshop unter IIS, wobei das Frontend in ASP/VBScript entwickelt ist.
Das Processing-Backend ist eine in .NET/C# entwickelte Anwendung, die
in das Frontend über einen COM-Wrapper eingebunden ist.
Administrationssoftware (Druck von Bestellungen, Auslieferung von
Aktivierungscodes per E-Mail, etc.) als .NET/C# WinForms-Anwendung,
Backend hierfür sowie für auch in der ASP-Anwendung genutzte Funktionen
zur Gutscheingenerierung etc. sind .NET/C# Webservices. Datenbank ist MS
SQL 2000. Eine Besonderheit stellt das Lizenzierungssystem dar, wobei
über eine IIS-Erweiterung jeder Download eine individuell generierte Lizenz
erhält. Dies geschieht "on-the-fly", also ohne das Generieren von entspr.
individualisierten Files im Dateisystem.
Komponenten:
- .NET C# Webservice zur Lizenzgenerierung (Aktivierungscodes,
Shopgutscheine, etc.). Anbindung an MS SQL 2000 als Datenbank.
Anbindung an Legacy COM-Objekte des Lizenzierungssystem (s. weiter
unten)
- .NET C# Clientsoftware (WinForms) zur Shop-Administration
(Sortimentspflege, Verwalten/Ausliefern von Bestellungen /
Aktivierungscodes, erneute Generierung von Lizenzen, Erstellung von
Shopgutscheinen, etc.), die im Wesentlichen ein (grafisches) Frontend für in
Webservices implementierte Funktionalität darstellt
Relevante Technologien:
Verteilte Anwendung unter Einsatz von .NET/C#, ASP.NET Webservices,
WinForms, SQL
Umfeld : .NET, ASP, ASP.NET, C#, SQL01/2001 - 04/2001
Branche : SoftwareherstellerWin32 PIM-Software zur Synchronisation von entspr. Daten eines non-WinCE
PDAs mit dem PC. Die PC-Applikation dient als Gegenstück zur PDASoftware,
ermöglicht also insbesondere auch das Anzeigen und Bearbeiten
von Termineinträgen etc.
Technische Details:
Die Software enthält einen "Portalbereich", der über den gehosteten
Internet Explorer (d.h. das entspr. ActiveX) in HTML und JScript
implementiert wurde. Der Portalbereich wird aus einem signierten ZIP in
einem darin umgesetzten eigenen Dateisystem dem IE-ActiveX zugeführt.
Die Software stellt eine umfangreiche API über COM Automation zur
Verfügung, um "Community"-AddOns zu ermöglichen. Über den
Portalbereich werden ebenfalls periodisch Prüfungen auf vorliegende
Softwareaktualisierungen vorgeschlagen, die nach Einwilligung des
Benutzers automatisch herunter geladen und installiert werden können.
Weiterhin verfügt die Softwardie Software über ein Lizenzierungssystem, das den
Online-Vertrieb und die Freischaltung von Features über entspr.
Aktivierungscodes erlaubt (System setzt "strong cryptography" ein).
Relevante Technologien:
Anwendung ist stark modularisiert und wurde durchgängig mit C++
entwickelt. Je nach Modul kamen MFC und ATL/WTL zum Einsatz.
Technische Schwerpunkte: COM, Automation, XML, Hosting des IE-ActiveX,
WinInet, USB-Kommunikation über proprietären Treiber, serielle
Kommunikation, div. proprietäre Datensynchronisationsprotokolle.
Umfeld: C++, ActiveX, HTML, MFC, MS Internet Explorer, PC, Windows CE, XML04/2002 - 06/2002
Branche : SoftwareherstellerZwei eigenständige Applikationen zur Synchronisation von Outlook und
Excel-Dateien mit einem non-WinCE PDA.
Technische Details:
Outlook-Plugin zur Einbindung in Outlook UI und Zugriff auf Outlook-Daten.
Excel-Plugin zur Einbindung in Excel UI. Windows Explorer Namespace
Extension zur Einbindung der synchronisierten Excel-Dokumente als Ordner
im Explorer-Dateisystem.
Relevante Technologien:
C++ mit MFC, COM, Automation, STL. USB-Kommunikation über poprietären
Treiber, serielle Kommunikation, div. Datensynchronisationsprotok.
Umfeld : C++, MFC, Windows, Windows CESoftware zur Übertragung von Internet-Inhalten vom PC auf non-WinCE
PDA zur Offline-Verwendung. Definition der Inhalte als sog. Channels, die
abonniert werden können.
Technische Details:
Zugriff auf öffentliche Websites und Extraktion der Text-Nutzdaten für
Verwendung auf dem PDA. Automatische Datenübertragung inkl. Verwaltung der
bereits auf den PDA übertragenen Daten (d.h. autom. Löschung alter
Einträge etc.). Parsing von Websites erfolgt mittels eigener PERL-Skripte,
die über gehosteten PERL-Interpreter ausgeführt werden. Channel-
Definitionen werden vom Client automatisch vom Server bezogen.
Definitionen sind signiert und werden auf dem Client in COM Structured
Storage verschlüsselt gehalten. Integration in Produkt-Website mit ASP.
Administrations-Frontend in ASP.
Relevante Technologien:
C++ mit MFC, COM, WinInet, STL, C, PERL. ASP, VBScript. USB-Kommunikation
über proprietären Treiber, serielle Kommunikation, div. Datensynchronisations-
protokolle.
Umfeld: ASP, C, C++, Internet, MFC, PC, Perl, Windows CEEntwurf und Umsetzung von Algorithmen zur Synchronisation von non-
WinCE PDAs mir mehreren PC-Anwendungen und/oder PCs.
Technische Details:
Das System erlaubt die Synchronisation von PDAs, die pro Datensatz nur
über eine ID und ein bei Zugriff zurückgesetztes MODIFY-Flag verfügen, mit
mehreren PC-Anwendungen und/oder PCs. Vollständige Recover-Fähigkeit
bei Verbindungsabbruch, Batterieausfall, etc. musste gewährleistet werden.
Relevante Technologien:
Durchgängig in C++ implementiert. Bibliotheken zur Integration in andere
Produkte (LIBs) mit versionierten APIs. Schichtmodell zur Unterstützung
verschiedener Module auf Transportschicht. Verwendung der STL.
Umfeld : C++, STL, PC, Windows CESystem zur individuellen Lizenzierung von Software (ohne Hardware-Dongle).
Automatisierte Erstellung von individualisierten Internet-Downloads (und
damit personalisierte Lizenzen) sowie einfachste Anwendbarkeit (z.B. Drag-
and-Drop der E-Mail aus z.B. Outlook mit Aktivierungscodes auf Lizenz-Manager).
Management-Frontend für CDROM Distribution als ASP-Anwendung; Datenhaltung
unter MS SQL 2000.
Technische Details:
Sicherung der Lizenzdateien (bzw. -abschnitte in EXE-Dateien) mit "strong
cryptography" (Signierung, Verschlüsselung). DLLs zur Einbindung in
Applikationen und Setup-Skripte, COM-Module (ActiveX) zur Einbindung in
z.B. ASP-Webapplikationen. Setup-/Lizenzdatei-Packager mit Auto-Extract
für Distribution.
Relevante Technologien:
System in C++ implementiert; MFC, ATL, COM, XML, Crypto++-Bibliothek.
Management-Frontend in ASP, VBScript, SQL.
Umfeld : ActiveX, ASP, C++, MFC, SQL, XML
IT / Softwarehersteller
Automatisierungstechnik
Industrie (allgemein)
Remoteeinsatz bevorzugt.
Weiterentwicklung eines komplexen, komponentenbasierten Reisebuchungssystems (GDS) in einem internationalen Umfeld.
Tätigkeitsschwerpunkte
Projektsprache: Englisch
04/2014 ? 12/2016
Pflege und Modernisierung einer umfangreichen Windows Drucksoftware für Reisebüros und Reiseveranstalter
Umfangreiches Refactoring zentraler Bestandteile der Anwendung (Umstellung von C auf C++, Verbesserung der Codequalität)
Konsolidierung der Quellcodeverwaltung durch Übernahme von Teilprojekten in Git
Neuentwicklung von Funktionalität zum skriptgesteuerten Export/Import von Konfigurationseinstellungen im XML Format
Entwicklung eines Frameworks zur automatisierten Testausführung
Erstellung von umfangreichem Tooling für Build und Releasing (überwiegend in Python 3.5)
Analyse und Beseitung von Kundenproblemen
C++11 Entwicklung mit Visual Studio 2013 / 2015
04/2013 - 12/2016
Weiterentwicklung einer C/C++ Server Software zur Übermittlung unterschiedlicher Anwendungsdaten
Test und Verbesserung der Stabilität bestehender/neuer Komponenten (Test mit bis zu 50.000 aktiven Clientverbindungen pro Serverprozess)
Asynchrone Netzwerkkommunikation über TCP Sockets und Named Pipes
Extensiver Einsatz von Multithreading und IO Queuing
C++11, Visual Studio 2013 / 2015
06/2011 - 02/2013
UHF RFID Lesesystem (Industrie, Embedded Systems)
Inbetriebnahme der Hardware (vom Kunden entwickelt, Atmel AVR32 Board)
Entwicklung von Basissoftware, Web UI, Schnittstellen (FTP, GPRS, Web API)
Programmierung in C für ein Atmel AVR32 Board
09/2011 - 09/2012
System zur Bilderfassung über drahtlos angebundene Low-Power Hardware (Industrie, Embedded System Entwicklung)
Inbetriebnahme der Hardware (vom Kunden entwickelt, basierend auf Atmel AVR)
Entwicklung von Basissoftware, Bootloader, Bildübertragung
Programmierung in C mit AVR Studio
06/2012 - 07/2012
GSM Wählgerät (Embedded Systems)
Entwicklung einer Wählgerätefirmware mit Web UI
Programmierung in C
05/2012
Messedemo für ein RFID Schlauchkupplungssystem:
Erstellung einer Messedemo-Software zur graph. Visualisierung des Verbindungszustands angeschlossenen Schlauchkupplungen
UI: QGraphicsView mit Animation
Hintergrundthread zur Gerätekommunikation
Programmierung in C++ unter Einsatz von Qt 4.8
QtCreator 2.5 IDE
04/2012
Bilddokumentationskomponente für das Logistiksystem ILTIS (Logisoft-S):
Erstellung einer Windows Dienstanwendung zur Bilddokumentation mittels mehrerer IDS uEye IP-Kameras und Anbindung an eine C-S Logistiksoftware
Programmierung in C++ mit Visual Studio
Umfeld: Win32, Windows Photoviewer
Visual Studio 2010 RTM Release, Silverlight/WPF, WCF RIA Services,
WCF Data Services, ASP.NET MVC 2)
Verschiedene Erweiterungen des Systems zur Palettenvermessung um
einen flexibleren Einsatz zu ermöglichen (FIFO-Puffer für Barcode-
Messergebnisse, manuelle Bearbeitung der erfassten Barcodes, etc.).
Installation und Test beim Kunden
Umfeld : C, C#, WinForms 2.0, .NET Framework 3.5gesammelten Produktionsdaten ein nachträglich nicht mehr änderbares
Dokument erstellt und dem Kunden zur Verfügung gestellt werden.
- Abrufen von Produktionsdaten über FTP
- Erstellung einer digital signierten PDF Datei mit Produktionsdaten / Zeitstempel
- Erzeugung und Installation eines (self-signed) Zertifikats
Umfeld : C, C#, WinForms 2.0, iTextPDF, OpenSSLMeine Aufgabe bestand darin, die Mess-/Steuersoftware für eine Anlage zur Palettenvermessung zu entwickeln. Die Teilaufgaben im Detail:
- Ansteuerung der über TCP angeschlossenen Geräte: SICK Lasermesssysteme
(LMS400) und Barcode-Scanner, Beckhoff Buskoppler
- Auswertung der Messdaten des Lasermesssystems zur Bestimmung der Abmessungen der Palette; Speichern der Messergebnisse in Datei
- Darstellung der Messergebnisse im Windows Client
Umfeld : C#, WinForms 2.0, .NET Sockets, MODBUS/TCP, Multithreading, SharpDevelopUmstellung einer auf MFC basierenden Software von VS 2003 auf VS 2008,
Doxygen-Konfiguration zur Projektdokumentation,
Konzeption und Erstellung eines Prototypen, welcher die Funktionalität
der MFC Anwendung über eine COM Schnittstelle und einen WCF Web Service
bereitstellt
Umfeld : Microsoft Visual Studio 2008, WCF (.NET 3.5), COM InteropHardwarenahe Softwareentwicklung zur Inbetriebnahme eines Rechners für
Automatisierungsaufgaben (UART, SPI, Softing CAN-AC2-PCI Karte).
- Softing CAN Layer 2 API
- NI VISA / NI DAQ APIs
Umfeld : C/C++, MinGW, Eclipse CDTEntwicklung von Komponenten zur Aufzeichnung/Bereitstellung/Darstellung
von Messwerten.
- Recorder Komponente zur Aufzeichnung von Messwerten
- Service Komponente für den Zugriff auf gespeicherte Aufzeichnungen von Messwerten
- Aufbereitung von Messwerten und Darstellung in tabellarischer sowie graphischer Form mittels WinForms Komponenten
Umfeld : C#, Visual Studio 2005, .NET 2.0, WinForms, Infragistics WinGrid/WinChart,Multithreading, .NET Remoting, XML
Entwurf und Erstellung einer .NET basierten Anwendung zur Erfassung/
Verwaltung von Besprechungen und zugeh. Bewirtungsanforderungen in
Client/Server Architektur.
Umfeld : C#, Visual Studio 2008, Microsoft SQL Server 2005, VSTO, WCF-Webservice,Office Automatisierung, Microsoft Report Viewer Client Komponente
unter Berücksichtigung der aus dem Prototypen (s.u.) gewonnenen Erkenntnisse
- Anbindung an bestehende MFC Anwendung über .NET C++/CLI
- UI Prototyp der Berichteselektion, Bearbeitung von Parametern und Vorschau
- Integration von zwei unterschiedlichen Berichts-Engines: eine auf der C++/MFC
basierende Komponente sowie DevExpress XtraReports
Umfeld : C++, C++/CLI, C#, .NET, WinForms, DevExpress, Visual Studio.NET 2005Erstellung einer COM-Komponente zur Steuerung der Ausführung zentraler Aufgaben
beim Programmstart, sowie graph. Präsentation der Einzelschritte. Einbindung
dieser Komponente in die verschiedenen Standardprodukte des Herstellers.
Umfeld : C++, ATL, MFC, Microsoft Team Foundation SystemBerichten
- prototypische Implementierung der grundlegenden Programmabläufe
- Modellierung und Auswertung der Steuerdaten mittels XML Konfigurationsdateien
- Zusammenarbeit mit dem Design Team
Umfeld : C++, C#, .NET, Windows Forms, Visual Studio.NET 2005Die Aufgabenstellung bestand in der Erstellung von (Unit-)Tests unter Verwendung
des Tools NUnit, sowie der Erstellung begleitender Test-Dokumentation.
Ziel: Überprüfung der implementierten Schnittstellen auf Konformität zur
ASAM MCD 3 Spezifikation V2.00.02.
Umfeld : C#, .NET 2.0, NUnit, Microsoft Visual Studio.NET 2003Erstellung eines ActiveX Controls, welches den Adobe SVG Viewer 3.0.2 einbettet.
Technische Details:
Ziel war es die Beschränkungen bei der Verwendung des Adobe SVG Controls
zu umgehen um ein direktes Hosting in einer Windows Forms Komponente zu
ermöglichen.
Umfeld : C++, ATL, ActiveXSoftware
Erweiterungen wurden hauptsächlich in folgenden Teilbereichen vorgenommen
- Anbindung der ASAM Laufzeitumgebung DTS über die Schnittstelle ASAM
MCD-3D 2.00.02
- Flashen von ASAM Steuergeräten
- Auslesen und Auswertung von ECU Fehlerspeicher
- Wandlung von Parameter- und Ergebniswerten
- Anzeige von über das ASAM Subsystem ermittelten Messwerten im Software-
Oszilloskop
- Analyse und Beseitigung bekannter Softwarefehler
Umfeld : C, C++, XMLvon Testprogrammen zur Fahrzeugdiagnose
Kernaufgabe war ein Refactoring der bestehenden Anwendung um die
Anbindung von Fahrzeugdiagnosesystemen verschiedener Hersteller
nach dem ASAM MCD-3 Standard zu ermöglichen.
Technische Details:
Schaffung von C++ Schnittstellen, über welche ASAM Laufzeitsysteme
unterschiedlicher Hersteller eingebunden werden können. Gemeinsame
Schnittstelle zu Ausgabe von Fehlermeldungen und Funktionen zum
Logging. Schreiben von Trace-Dateien zur Performance Auswertung.
Anbindung eines in der Sprache C# entwickelten ASAM Laufzeitsystems
mittels .NET Interop (Managed C++). Überarbeitung der Anbindung
einer über COM angebundenen ASAM Runtime.
Erweiterung des vorhandenen Setup-Programms um die Installation
eines ASAM Laufzeitsystems.
Erstellung von Unit-Tests zu den vorgenommenen Erweiterungen.
Umfeld : C, C++, C#, .NET, Microsoft Visual Studio.NET 2003Weiterentwicklung des unten genannten Projekts "Arbeits- und Projektzeit-
erfassung" zu einer mandantenfähigen gehosteten Version mit Web-Oberfläche.
Die hier aufgeführten technischen Details, Komponenten und relevanten Technologien
beziehen sich ausschließlich auf die Erweiterungen.
Technische Details:
Backend für Hosting-Lösung (ASP) mit Unterstützung für Dienst-
Discovery/Load Balancing. Skalierbare Architektur für Unterstützung einer
großen Zahl von Mandanten. NTLM-unabhängige Authentifikation und
Lizenzverwaltung. Unterstützung von verschiedenen
Authentifikationsmethoden/-providern. Mit ASP.NET 2.0 realisierte WebUI
zur Verwaltung und Benutzung (Reportgenerierung etc.) des Systems.
Siehe auch bei unten genanntem Projekt "Arbeits- und Projektzeiterfassung".
Komponenten:
- .NET C# Remoting Komponente für zentrale Authentifikations- und
Lizenzverwaltungsdienste
- .NET C# Webservice zur Server- und Mandantenadministration, inkl.
automatischer Anlage von Datenbanken nach Skript-Templates
- .NET C# Webservice zur Generierung von personalisierten MSI-Packages
zur Softwareinstallation
- ASP.NET 2.0 WebForms Anwendung zur Administration des Servers/der
Mandanten
- Anpassung bestehender WebServices (.NET, C#) an neues Datenbankschema
(insbes. dynamisch erweiterbare Stammdatentabellen) und neue Gesamt-
architektur (Skalierbarkeit, Authentifikation), sowie Erweiterungen zur
Erfassung, Bearbeitung.
- Anpassung bestehender Client-Komponenten (.NET, C#) an neue
Gesamtarchitektur: Erfassung, Bearbeitung.
Relevante Technologien:
Durchgängige Verwendung von .NET/C#. Verteilte Anwendung, mehrschichtiges Modell.
Technische Schwerpunkte: .NET/C# unter Win32, ASP.NET Webservices, ASP.NET 2.0
WebForms, T-SQL (DDL; DML mit Queries, Stored Procedures, Trigger).
Umfeld : .NET, ASP.NET, C#, T-SQL, Win3202/2005 - 06/2005
Branche : SoftwareherstellerMitarbeiter "real-time" sowie durch Nachbearbeitung.
Auswertung der erfassten Zeiten über Excel etc. möglich.
Technische Details:
Win32-Client sowie WinCE-Client für Online- und Offline-Betrieb. Anbindung
an Intranet-System (ASP.NET DotNetNuke-basiert) mit eigenen Modulen zur
grafischen Darstellung von Projektübersichten, Urlaubsplaner, etc.
Datenhaltung unter MS SQL 2000. Backend durch mehrere Webservices
realisiert. Auswertung/Bearbeitung am Client über eigene Tools oder über
COM-Bibliothek (mit Automation-Support), die als .NET/C# Anwendung mit
COM-Wrapper erstellt wurde und auf entspr. Webservices zugreift. Das
gesamte System verfügt über NTLM-basierte Benutzerauthentifizierung und
Rechteverwaltung.
Komponenten:
- Webservice (.NET, C#) zur Echtzeit-Erfassung von Projektzeiten, Batch-
Verarbeitung von Offline erfassten Projektzeiten, Bereitstellung von
Mitarbeiter- und Projektstammdaten, Bestimmung von geleisteten
Arbeitsstunden/Monat. Datenbankanbindung. Unit Tests.
- Webservice (.NET, C#) zur Bearbeitung von erfassten Arbeits-, Projekt-
und Abwesenheitszeiten. Archivierung der urspr. Daten.
Datenbankanbindung. Unit Tests.
- Webservice (.NET, C#) zur Unterstützung der Auswertung der erfassten
Daten (Arbeitszeitdaten, Projektzeitdaten, sowie für Reports notwendige
Stammdaten). Anbindung an Datenbank.
- Client (.NET, C#, WinForms) zur Online-Erfassung von Projektzeiten und
Abwesenheitszeiten. - Client für Windows CE (.NET CF, C#, WinForms).
Übermittlung von offline erfassten Projektzeiten. Test.
- Client (.NET, C#, WinForms) zur Bearbeitung von Arbeitszeiten (Administration)
- Client (.NET, C#, WinForms) zur gaphischen Bearbeitung von Projektzeiten
- Client (.NET, C#, WinForms) zur Anzeige des Anmeldestatus der Mitarbeiter
- Modul für das Intranetsystem DotNetNuke zur Ausgabe einer
Abwesenheitsübersicht
Relevante Technologien:
Durchgängige Verwendung von .NET/C#. Verteilte Anwendung, mehrschichtiges
Modell.
Technische Schwerpunkte: .NET/C# unter Win32 und WinCE (.NET Compact Framework),
ASP.NET Webservices, WinForms, T-SQL (Query, Stored Procedures, Trigger), COM.
Umfeld : .NET, ASP.NET, C#, Intranet, T-SQL, Windows CE06/2002 - 01/2003
Branche : Softwareherstellerzugehöriger Administrationssoftware
Technische Details
Webshop unter IIS, wobei das Frontend in ASP/VBScript entwickelt ist.
Das Processing-Backend ist eine in .NET/C# entwickelte Anwendung, die
in das Frontend über einen COM-Wrapper eingebunden ist.
Administrationssoftware (Druck von Bestellungen, Auslieferung von
Aktivierungscodes per E-Mail, etc.) als .NET/C# WinForms-Anwendung,
Backend hierfür sowie für auch in der ASP-Anwendung genutzte Funktionen
zur Gutscheingenerierung etc. sind .NET/C# Webservices. Datenbank ist MS
SQL 2000. Eine Besonderheit stellt das Lizenzierungssystem dar, wobei
über eine IIS-Erweiterung jeder Download eine individuell generierte Lizenz
erhält. Dies geschieht "on-the-fly", also ohne das Generieren von entspr.
individualisierten Files im Dateisystem.
Komponenten:
- .NET C# Webservice zur Lizenzgenerierung (Aktivierungscodes,
Shopgutscheine, etc.). Anbindung an MS SQL 2000 als Datenbank.
Anbindung an Legacy COM-Objekte des Lizenzierungssystem (s. weiter
unten)
- .NET C# Clientsoftware (WinForms) zur Shop-Administration
(Sortimentspflege, Verwalten/Ausliefern von Bestellungen /
Aktivierungscodes, erneute Generierung von Lizenzen, Erstellung von
Shopgutscheinen, etc.), die im Wesentlichen ein (grafisches) Frontend für in
Webservices implementierte Funktionalität darstellt
Relevante Technologien:
Verteilte Anwendung unter Einsatz von .NET/C#, ASP.NET Webservices,
WinForms, SQL
Umfeld : .NET, ASP, ASP.NET, C#, SQL01/2001 - 04/2001
Branche : SoftwareherstellerWin32 PIM-Software zur Synchronisation von entspr. Daten eines non-WinCE
PDAs mit dem PC. Die PC-Applikation dient als Gegenstück zur PDASoftware,
ermöglicht also insbesondere auch das Anzeigen und Bearbeiten
von Termineinträgen etc.
Technische Details:
Die Software enthält einen "Portalbereich", der über den gehosteten
Internet Explorer (d.h. das entspr. ActiveX) in HTML und JScript
implementiert wurde. Der Portalbereich wird aus einem signierten ZIP in
einem darin umgesetzten eigenen Dateisystem dem IE-ActiveX zugeführt.
Die Software stellt eine umfangreiche API über COM Automation zur
Verfügung, um "Community"-AddOns zu ermöglichen. Über den
Portalbereich werden ebenfalls periodisch Prüfungen auf vorliegende
Softwareaktualisierungen vorgeschlagen, die nach Einwilligung des
Benutzers automatisch herunter geladen und installiert werden können.
Weiterhin verfügt die Softwardie Software über ein Lizenzierungssystem, das den
Online-Vertrieb und die Freischaltung von Features über entspr.
Aktivierungscodes erlaubt (System setzt "strong cryptography" ein).
Relevante Technologien:
Anwendung ist stark modularisiert und wurde durchgängig mit C++
entwickelt. Je nach Modul kamen MFC und ATL/WTL zum Einsatz.
Technische Schwerpunkte: COM, Automation, XML, Hosting des IE-ActiveX,
WinInet, USB-Kommunikation über proprietären Treiber, serielle
Kommunikation, div. proprietäre Datensynchronisationsprotokolle.
Umfeld: C++, ActiveX, HTML, MFC, MS Internet Explorer, PC, Windows CE, XML04/2002 - 06/2002
Branche : SoftwareherstellerZwei eigenständige Applikationen zur Synchronisation von Outlook und
Excel-Dateien mit einem non-WinCE PDA.
Technische Details:
Outlook-Plugin zur Einbindung in Outlook UI und Zugriff auf Outlook-Daten.
Excel-Plugin zur Einbindung in Excel UI. Windows Explorer Namespace
Extension zur Einbindung der synchronisierten Excel-Dokumente als Ordner
im Explorer-Dateisystem.
Relevante Technologien:
C++ mit MFC, COM, Automation, STL. USB-Kommunikation über poprietären
Treiber, serielle Kommunikation, div. Datensynchronisationsprotok.
Umfeld : C++, MFC, Windows, Windows CESoftware zur Übertragung von Internet-Inhalten vom PC auf non-WinCE
PDA zur Offline-Verwendung. Definition der Inhalte als sog. Channels, die
abonniert werden können.
Technische Details:
Zugriff auf öffentliche Websites und Extraktion der Text-Nutzdaten für
Verwendung auf dem PDA. Automatische Datenübertragung inkl. Verwaltung der
bereits auf den PDA übertragenen Daten (d.h. autom. Löschung alter
Einträge etc.). Parsing von Websites erfolgt mittels eigener PERL-Skripte,
die über gehosteten PERL-Interpreter ausgeführt werden. Channel-
Definitionen werden vom Client automatisch vom Server bezogen.
Definitionen sind signiert und werden auf dem Client in COM Structured
Storage verschlüsselt gehalten. Integration in Produkt-Website mit ASP.
Administrations-Frontend in ASP.
Relevante Technologien:
C++ mit MFC, COM, WinInet, STL, C, PERL. ASP, VBScript. USB-Kommunikation
über proprietären Treiber, serielle Kommunikation, div. Datensynchronisations-
protokolle.
Umfeld: ASP, C, C++, Internet, MFC, PC, Perl, Windows CEEntwurf und Umsetzung von Algorithmen zur Synchronisation von non-
WinCE PDAs mir mehreren PC-Anwendungen und/oder PCs.
Technische Details:
Das System erlaubt die Synchronisation von PDAs, die pro Datensatz nur
über eine ID und ein bei Zugriff zurückgesetztes MODIFY-Flag verfügen, mit
mehreren PC-Anwendungen und/oder PCs. Vollständige Recover-Fähigkeit
bei Verbindungsabbruch, Batterieausfall, etc. musste gewährleistet werden.
Relevante Technologien:
Durchgängig in C++ implementiert. Bibliotheken zur Integration in andere
Produkte (LIBs) mit versionierten APIs. Schichtmodell zur Unterstützung
verschiedener Module auf Transportschicht. Verwendung der STL.
Umfeld : C++, STL, PC, Windows CESystem zur individuellen Lizenzierung von Software (ohne Hardware-Dongle).
Automatisierte Erstellung von individualisierten Internet-Downloads (und
damit personalisierte Lizenzen) sowie einfachste Anwendbarkeit (z.B. Drag-
and-Drop der E-Mail aus z.B. Outlook mit Aktivierungscodes auf Lizenz-Manager).
Management-Frontend für CDROM Distribution als ASP-Anwendung; Datenhaltung
unter MS SQL 2000.
Technische Details:
Sicherung der Lizenzdateien (bzw. -abschnitte in EXE-Dateien) mit "strong
cryptography" (Signierung, Verschlüsselung). DLLs zur Einbindung in
Applikationen und Setup-Skripte, COM-Module (ActiveX) zur Einbindung in
z.B. ASP-Webapplikationen. Setup-/Lizenzdatei-Packager mit Auto-Extract
für Distribution.
Relevante Technologien:
System in C++ implementiert; MFC, ATL, COM, XML, Crypto++-Bibliothek.
Management-Frontend in ASP, VBScript, SQL.
Umfeld : ActiveX, ASP, C++, MFC, SQL, XML
IT / Softwarehersteller
Automatisierungstechnik
Industrie (allgemein)