The request
The request was to design desktop PC software which would allow one to check and analyze the data coming from a photometer used for blood sample analyses present in cuvettes.
The electronic instrument already had firmware, an LCD display, and a thermal printer available for data reporting and was connected to the PC through a RS232 serial connection.
The goal of the project was to collect data from the photometer and present it to the laboratory in a more accessible way. It was therefore necessary to have, for example, a client registry associated with each analysis and to have aggregate statistics on the data received from the instrument.
Requirements
- Develop software to manage a laboratory instrument
- Cross-platform software
Develer’s contribution
- Software development in Python/Qt
- Installer for Windows
Results
- The software product allows the laboratory biologists to organize the analyses and display the correlated graphics. Technicians are able to manage, monitor, and collect statistics on the analyses — they couldn’t do all of that with just the desktop instrument.
Advantages of our solution
- Portability: thanks to technologies like Python and Qt, the software was made portable between different platforms with very little effort.
- Speed of development: thanks to Python and several open-source libraries, software development was very fast. The subsequent maintenance was also facilitated by these chosen technologies.
Are you looking to build an amazing new product?
Advantages of our approach
We were in close contact with the client and we had frequent feedback from experts of the domain (biologists and physicists). All of this allowed us to organize a virtuous circle where we iteratively collected specifications, implemented features, and where the client could quickly test the result by downloading the software installer from our servers.
Advantages of open source
The project was accomplished by using a lot of open-source technologies: the language is Python with PyQt binding for the GUI part. In addition, other open-source libraries (such as SQLAlchemy and SQLite) were used for implementing Object-Relational Mapping and for the actual database.
Staff
“Putting hardware and software together is always a challenge, but we did it.”