Processes and Software Building 6: Interfaces

This is an updated version of a previous post.

Interfaces—General Considerations:

When buying equipment while planning/implementing new laboratory software, I originally had a rule not to purchase anything that the vendor did not have a ready interface.  Even that was not so clear since some vendors had interfaces listed as alpha, beta, and completed.

Could you use an alpha or beta interface?  Was it safe for patient care?  What was the development cycle for new interfaces with your vendor—months, years?

Even if the vendor had a completed interface?  How “complete” was it?  Did it accept all data from the machine?  Did the data stream require reformatting?  Who would write the transformational script?

Even if the vendor could support it, could your local IT organization and the local agent’s IT staff do it?  I had plenty of headaches over this.  The best equipment with the best interface that the local agent could not support was worthless to me.

Some finished interfaces took months to install because of connectivity issues.  What version of the operating system OS was used?  Was it secure?  Did our IT department accept that OS version (e.g. Windows 7) and the provided malware protection?  I have seen malware spread across a network from the interface software installed by the vendor, threatening the entire corporate system. 

Did the solution require middleware?  What were the implications of having middleware and its affect on the main software program, especially at the time of its upgrade or the main software?

I have seen vendors using Windows 2000 for their interface software as late as 2017.  It was difficult for some of them to update to current, more secure versions.  Anyway, our corporate IT department gave them all a deadline to update to the current operating system—they all complied or risked losing all connectivity to the network.

Almost every instrument vendor has told me that they can communicate with my laboratory system.  I guess that is true:  one talks in Russian and the other Sanskrit—they do communicate but is it effective?  Talking is not necessarily useful communication!

I remember one open EIA machine that had a TCP/IP port but it was not functional by the standard protocols.  One had to emulate a serial port to get some rudimentary communication.  The port’s light blinked, however.  I never imagined that someone would put a nonfunctional port as a mere decoration.

On the other hand, I have had excellent experience with another software vendor Medinfo.  Even if the vendor did not have the interface developed, they could build it from scratch in a few weeks.  Paradoxically, it was faster to build these new interfaces than some so-called already interfaces.

I must emphasize:  This is a collaborative team effort between the blood bank information system, software vendor, instrument vendor, and your institution’s IT staff.  There must be excellent cooperation between them for a successful result.

When installing the Medinfo Hematos IIG software, many of our most important interfaces (the Terumo mixed shaker, Trima, Reveos and its predecessor Atreus, Mirasol illuminator) had no developed interfaces when we started.  This was a risk, but actually those interfaces were developed in a few weeks and fully functional.  In fact, we were the first site in the world to have those interfaces working—and without any Middleware.

In general, the blood bank software vendor installed the completed interface and did some low-level testing.  Then, my blood bank computer team did the testing.  The final responsibility for testing and acceptance was with the end-user blood bank team and me as Head of the Laboratory Information Systems.

In general,  I wrote the validation protocol and assigned the tasks to the Medinfo Super Users.  To perform this testing, we still had to register donors and collect and then export the specimens to the donor marker testing laboratory before the actual interface testing could begin.  This was all done in a special test domain separate from the production domain.  The interface did not go live until the validation was completed and accepted and then was moved to the production environment.

I made the validation criteria and reviewed all data as Division Head of Laboratory Information Systems.  Representative screen shots were made.  All data was sent to me.  My final acceptance was required before the interface could be activated.

Automated component processing (Reveos) and component modification are more complicated and will be covered in a future post.