We developed a mission-critical core software service for Afcon's wide-scale control-room SCADA systems, implementing a robust and optimized variation of the classic Publisher/Subscriber pattern for live system data items.
The development involved building an asynchronous polling and change-detection engine. This engine actively tracks, diffs, and evaluates variations in passive data endpoints, ensuring data is broadcast to subscribers strictly upon verified state changes. This approach effectively brought the benefits of the Pub/Sub paradigm to legacy and passive external data stores.
To handle diverse real-world environments, the component was engineered to ingest, parse, and unify data fields from multiple fragmented formats - including INI files, TXT files, XML structures, and relational databases via ODBC and OLEDB interfaces.
The service ensures bi-directional data flow, initial state synchronization upon new client subscriptions, and secure write-back operations to remote repositories for authorized clients. The entire infrastructure was programmed in C# utilizing Microsoft's WCF communication frameworks on .NET 3.0 technologies.