Delphi
Der Kunde wollte mehrere Geräte simultan betreiben können. Dazu sollte eine Bibliothek für bestehende und künftige Softwarelösungen entwickelt werden, die in der Lage war, die bestehende und künftige Hardware anzusteuern.
Darüber hinaus sollte diese möglichst viele Arbeiten parallel (Multi-Threading) ausführen können und ohne technische Grenze bzgl. der Anzahl an gleichzeitig verwendbaren Geräten arbeiten. Die Herausforderung dieses Projekts lag im Besonderen darin, dass die Ansteuerung der Hardware sowohl im Hintergrund, unter Nutzung mehrerer Prozessor-Kerne, als auch simultan über mehrere Geräte verteilt erfolgen sollte. Zusätzlich sollte der parallele Betrieb mehrerer Apps, die diese Ansteuerung einsetzen, möglich sein, auch wenn hierfür dieselben Geräte verwendet werden. Die Erkennung, die Kommunikation und die Auswertung der Daten sowie die Rückgabe der Auswertungen erfolgten jeweils in eigenen Threads. Sie konnten somit auf eigenen Prozessorkernen laufen. Hierbei wurde für jedes an den PC angeschlossenes Gerät ein eigener Kommunikations- und ein eigener Auswertungs-Thread eingesetzt.
Zugleich haben wir die Prozesse so weit abstrahiert, dass die Steuerung derselben vollständig unabhängig von der verwendeten Hardware stattfinden kann. Zur Verarbeitung von Daten aus der Hardware verwendeten wir darüber hinaus einen drastisch effizienteren Algorithmus, als der Kunde diesen bisher vorgesehen hatte.