Slim

Software di controllo di un fotometro per analisi mediche

Slim

“Mettere d'accordo hardware e software è sempre una sfida. Ma ce l'abbiamo fatta.”

Lorenzo Berni - Sviluppatore desktop @ Develer

La richiesta

La richiesta era quella di progettare un software per PC desktop che permettesse di controllare e analizzare i dati provenienti da un fotometro utilizzato per effettuare analisi su campioni di sangue presenti in cuvette.

Lo strumento elettronico disponeva già di un firmware e aveva a disposizione un display LCD e una stampante termica per il report dei dati ed era collegato al PC tramite una connessione di tipo seriale RS232.

Lo scopo del progetto era di raccogliere i dati dal fotometro e presentarli in una maniera più fruibile al laboratorio. Era quindi richiesto di avere per esempio una anagrafica cliente associata ad ogni analisi e poter avere statistiche aggregate sui dati ricevuti dallo strumento.

Vantaggi introdotti dalle nostre soluzioni

  • Portabilità: grazie all’uso di tecnologie come Python e Qt, il software è stato reso portabile tra piattaforme diverse con pochissimo sforzo.
  • Velocità di sviluppo: grazie a Python e diverse librerie opensource, lo sviluppo del software è stato molto veloce. Anche la successiva manutenzione è stata agevolata da queste scelte tecnologiche.

In quale modo la nostra metodologia ci ha aiutato

Eravamo in stretto contatto con il cliente e avevamo frequenti feedback dagli esperti del dominio (biologi e fisici). Tutto questo ha permesso di organizzare un circolo virtuoso in cui, iterativamente, raccoglievamo specifiche, implementavamo features e il cliente poteva provare prontamente il risultato prelevando l’installer del software dai nostri server.

In quale modo l'open source ha aiutato il progetto

Il software non sarebbe stato possibile grazie alle tecnologie opensource utilizzate: il linguaggio è Python con il binding PyQt per la parte di GUI. Inoltre sono state utilizzate altre librerie opensource (quali sqlalchemy e sqlite) per la realizzazione dell’Object-Relational Mapping e per il database vero e proprio.

Le richieste:

  • Sviluppare un software per gestire uno strumento da laboratorio
  • Multipiattaforma

Cosa ha fatto Develer:

  • Sviluppo software in Python/Qt
  • Installer per Windows

Risultati:

Il software prodotto permette ai biologi del laboratorio di organizzare le analisi e visualizzare i relativi grafici. I tecnici sono in grado di gestire, monitorare e raccogliere statistiche sulle analisi come non avrebbero potuto fare con il solo strumento da banco.