4.7/5 - (7 votes)

About the Project

Industry: Biotech
Headquarters: Basel, Switzerland
Partnership period: May 2019 – Ongoing
Team size: 15 experts
Software product: Medical device simulators
Expertise delivered: Manual and automated software testing & QA, simulator and stubs development, documentation analysis, software development (Java), and Business Analysis.

Goals

  • Provide remote-only testing of embedded software for a DNA-sequencing machine.
  • Provide testing without the involvement of an actual machine.
  • Improve the testing process.

Solutions

  • Deliver testing services at any time despite time zone differences with the client or the presence of experts onsite at the DNA sequencing machine.
  • Custom-develop the stubs to emulate the interactions between the software and hardware in order to prevent any possible damage to the hardware and DNA examples and create time savings for the client.
  • Develop a Software Quality Assurance (SQA) Dashboard.

Results

  • Leveraging online streaming in order to have access to a DNA sequencing machine and make remote testing possible 24/7.
  • Our team has created new and improved the existing custom stubs that Quality Assurance experts and software developers from other teams can use while preventing damage to the equipment in the tens of thousands of dollars range.
  • We have developed and launched the Software Quality Assurance (SQA) Dashboard that is currently in use by 7 other Roche teams.

 Tech Stack

  • Java
  • PostgreSQL
  • Angular
  • RabbitMq

 Methodology

  • Agile
  • SAFe

Don't have time to read?

Book a free meeting with our experts to discover how we can help you save time and money.

Book a Meeting

 Overview

Our client Roche is a Swiss multinational healthcare company, the history of which spans more than 126 years. Nowadays, F. Hoffmann-La Roche AG, which is the full name of the organization, is the #1 pharmaceutical company in the world and the leading provider of cancer treatments globally with 100,920 employees in 150 countries.

Roche has two main divisions: Pharmaceuticals and Diagnostics. Roche Diagnostics is divided into five business areas: Roche Applied Science, Roche Professional Diagnostics, Roche Diabetes Care, Roche Molecular Diagnostics, and Roche Tissue Diagnostics (Ventana). All the company’s business areas except Roche Applied Science focus on health care applications, intended for either physicians, hospitals, and clinics, or consumers.

SPD Group’s involvement in Roche’s projects has become possible thanks to their Senior Software Engineering Manager, Oleksandr Grytsyna. Oleksandr worked with our team at NimbleCommerce, a white-label E-Commerce platform, which was eventually acquired by BlackHawk Network. When a few years later, Olexandr moved on to Roche, he became responsible for SPD Group’s onboarding as a vendor and continues to be our main contact and manager of our services at Roche. At Roche, numerous project challenges required the involvement of additional development resources, and they approached SPD Group for assistance.

Initially, our project team was composed of only 2 experts. In the spring of 2020, it was significantly expanded and kept on gradually growing afterward. By April 2022, the SPD project team had grown to include 15 experts. As of May 2022, 10 members of our team are involved in testing the software and creating simulators and stubs for machines that conduct Nanopore DNA sequencing. This area is working on diagnosing and preventing diseases in:

  • Human genetics (rare disease, risk profiling, drug response prediction).
  • Oncology (research, diagnosis, therapy selection, monitoring).
  • Prenatal screening (trisomy panel, fewer false positives, earlier in pregnancy).
  • Infectious disease (virology, bacteriology, human microbiome).
  • Other applications (newborn screening, immunogenetics, RNA).

Two project team members are working on a Connecting Software system. One Java Developer is also involved in software development, while two more of our experts are working on converting tests from the client’s legacy framework to the one that was chosen as a replacement. We also had a Product Owner that was working with a client on adding new features to a sequencer.

 Business Challenges

The primary business task of SPD Group’s team in collaboration with Roche is to conduct remote automated and manual testing of the DNA-sequencing machine. The machine is responsible for analyzing multiple examples of DNA concurrently. To give you a context of what we do, here is the workflow of the entire process:

  • A person takes a blood test in the laboratory.
  • In the laboratory, a bar code for this person is added to the sample of DNA.
  • The data is added to a system called Connecting Software.
  • The DNA sample is then added to a machine to conduct the DNA-sequencing process.
  • The results are being transferred to the systems that conduct analysis automatically, or to the doctors and scientists who analyze the results manually.

“When developers add a new API to the system, our team tests how properly it works and what adjustments need to be made to the software or hardware in order to achieve the maximum efficiency. Not all the testing can be done on a real machine, so our team also works on developing software simulators that are called stubs to test new features without the risk of damaging the actual hardware.”
— Oleksandr Lazorenko, QA Automation and People Management Expert, SPD Group

In other words, SPD Group helps Roche build software for DNA sequencing machines and protects Roche’s hardware and DNA material by creating simulators that emulate the interactions between the hardware and software virtually. Besides, some of our experts are also working in other, separate teams to help develop the software for the system, convert existing features from the legacy frameworks, and shape up the product.

 Technical Challenges

Speaking of our main product line, there are five main challenges we have had to deal with in order to provide our services as efficiently, as possible:

  • Remote-only testing of embedded software.
  • The 10-hour time difference between the United States of America and Ukraine.
  • The need to perform the tests without causing damage to the machines and DNA samples.
  • The decentralized character of the testing-related information.
  • A predefined tech stack.

Need help with software development services?

Book a free meeting with our experts to find out how we can help you to build your project according to your business vision.

Book a Meeting

 Solution

The remote testing of the embedded software was a major challenge from the very beginning. Our team in Ukraine had to have a person in a laboratory monitor the machine’s response to certain actions and send reports to the testing team. This approach had remained productive for a while but shortly became inconvenient as the team grew.

In order to optimize the process, the on-site Senior Software Engineering Manager installed a number of webcams on the machine and launched online streaming. This allowed our team to see how the machine responds to changes in the software, as well as to run tests at any time of the day.

This solution helps solve a 10-hour time difference challenge, enabling our team to perform testing even when the on-site team is not working. Additionally, we adjusted the Agile processes in our teams for our regular meetings to bring the most value for both sides and exclude the people who are not required on the calls.

“I like that we have periodic meetings where we provide feedback on the work and the individuals working for us. We’ve only had one time when something minor needed to be corrected.

For tools, we use industry best practices like Jira, Miro, and some other specific project management tools. We have multiple channels for communication, but the most common one is the Google ecosystem where we have Sheets, Docs, Chat, and Hangouts. We also use Slack and email.”
— Oleksandr Grytsyna, Senior Software Engineering Manager, Roche

As not all the automated and manual testing can be performed on the real machine because it can cause damage to both the machine and the DNA material, we developed stubs, the simulators that emulate the interactions between any newly developed software functionality and the machine. This helped us safeguard the real machines and components and prevent damage in case of any incompatibilities between the software and hardware.

Besides, custom-developed stubs also help achieve time savings for the entire organization. These stubs can be reused by other 6 or 7 teams at Roche in order to test other software on other similar machines. These stubs have project-specific logic for a particular sequencer, so they can be massively reused by other teams.

Thanks to the effort of our Front-End developer, who was working in the role of a QA Automation Engineer, our team also delivered a Software Quality Assurance (SQA) Dashboard. The Senior Software Engineering Manager proposed that our team create an application that would allow monitoring of the testing progress by collecting and storing testing reports for multiple Roche projects. The SQA Dashboard was developed from scratch. It includes such parameters, as time, the reasons for failed tests, the number of failed tests, and so on. This application can be used for any project in Roche and is already in use by 7 teams.

The Software Quality Assurance (SQA) Dashboard looks as follows:

SQA Dashboard

SQA Dashboard

SQA Dashboard

“In order to create a really good device, you need to write quality code. And in order for the code to be high quality, it needs to be tested. This is exactly what our QA Team does. The SQA Dashboard was created to simplify the analysis of the test results, of which there are actually a lot. It helps the QA Team and DEV Team to analyze test results faster and better and make appropriate decisions. It also provides online monitoring of the status of the builds, includes additional tools for analyzing the results and finding the cause in case of unsuccessful results.”
— Denys Lysenko, Front-End Developer, SPD Group

With regards to the tech stack, Roche had defined it before our team arrived, so we had to work with this stack as a request from the client. We proposed some additional libraries. Our team members also gained some additional expertise in working with the technologies that made up the client-selected tech stack.

“We are trying to make a big impact and be more efficient by constantly identifying efficient tools, new libraries, and technologies that can help us move faster, as well as educate people. They are doing a lot of training to keep their people and their skills up to the market expectations of the knowledge of the most recent tools.”
— Oleksandr Grytsyna, Senior Software Engineering Manager, Roche

 Result

As of May 2022, we have been working on the project for 3 years. The COVID-19 pandemic-related lockdown slowed down the project’s progress, limiting our on-site experts’ access to the California-based laboratories. Currently, the project is in an active development phase. This is a long-term partnership, and the release date of the final product is currently not clearly defined.

The members of our project team continue to provide automated and manual Quality Assurance services, develop software simulators, perform business analysis, analyze documentation, and extend custom software development services. Some of the automated tests we created, when run on the actual hardware, can ensure 3x-4x time savings as compared with manual testing.

Although we already have some achievements with testing and delivering stubs for simulation, the project represents a multi-year partnership, and it will become possible to talk about its business results when all the features are finalized and the product is released.

Testimonials Testimonials

“Where other engagements have seen delays and regressions in quality, SPD Group has well outstripped the industry expectations for the client. They excel at balancing different working styles and working across time zones. Customers can expect a transparent and straightforward partner.”
— Oleksandr Grytsyna, Senior Software Engineering Manager, Roche

Do you have questions? Ask our experts!

Contact our experts to get a free consultation and time&budget estimate for your project.

Contact Us