As technology advances, softwares are increasingly more used in the most diverse areas, including medical, biotechnology and genetic companies, resulting in a medical revolution with unprecedented fast and easy access to diagnosis.
However, considering that a medical application has a large impact on the wellbeing of an individual, how can we assure the quality of the software and, most importantly, the quality of the data traded within it?
To answer these questions, I share six directives that I have learnt within the years spent working with quality assurance (QA), which can be applied to the healthcare industry and several others:
1. Quality assurance is cultural and it is everybody’s responsibility
It is not the QA analyst’s role to argue with teams for quality. The delivered results are a collective responsibility, given that defects will affect the entire project. Delegating the task to assure quality is not the best choice given that it often generates redundancy in the operation and, in the worst cases, makes your company lose your client’s trust. Every team manager should see the whole company as a team, and the final delivery as the product.
2. Code quality is essential
Developers must assure that what they code does not impact on any other part of the working software through unit tests. Every piece of new code which will be integrated to the working code must be unit tested to ensure that the new code is doing what it was designed to do, the information processed inside is reliable and everything else interacting with this code is working just as expected.
3. Automation is powerful
Automate functional and integrity tests are very important, even more in the medical field where data is very sensitive and the data flow is high, as the quality assurance analyst will not be able to check every little detail and every data processed deploy after deploy every time. Automation brings freedom to analysts from the repetitive work and also to focus on something else, and it makes a huge impact on the quality.
4. A taste of the real world: the role of user testers
User tests play an important role as it consists of a simulation of the final users, and they might see some defects and design improvements which the quality assurance analyst may not, due to the lack of the specific knowledge in this case.
5. Reports are friends, you should try to make your own
Use data analysis to help. Analyze what is being tested, where in the software the recurrent defects are more likely to happen and where the users are having more usability difficulties. Synthesizing this data is very important to see the big picture and understand the software’s quality, where the team should make more effort on and the heat map of the defects. Quality, beyond avoiding and catching defects, is also the feedback for the project.
6. God is in the detail, and so is the devil as well
Pay close attention to the information from the database and the results after data is processed, even more when there is crossed and processed information.
The process of assuring the quality starts with the software requirements and never stops, even when the client is already using the software. Quality control is crucial for a company to ensure its software usability, data integrity and its value to the user, especially when the company is a worldwide reference in the field, as Varstation is in genomics.