If you're not familiar with quality assurance (QA), it refers to the role of product quality control at the software development frontline, mainly aiming to spot defects and thus boost quality through various tests during the development process before official launch. QA specialists never get involved in the product development process directly; rather, they take a third-party viewpoint and prepare to tackle unexpected occurrences, user operations, and external attacks with malicious intent.
Product quality has an enormous impact on the brand image of service providers. Quality assurance, hence, aims to improve customer satisfaction and enhance company development by working on the stable provision of quality products.
Although QA is primarily responsible for software testing, the definition of "software quality" can vary greatly from company to company, organization to organization, and product to product, and the tasks that QA performs varies greatly accordingly. Thus, it is extremely hard to define the role of those who work in this discipline.
The figure above (source) shows the quality characteristics defined in the international standard for software product quality, the software quality model ISO/IEC 25010.
When considering the quality of a product, "Does it have any defects when the screen is operated?" is only one of many questions that need to be asked. Are there any security issues? How easy is it to use the product? Is the system built for easy modification? Is the development process running smoothly and efficiently? It's necessary to look at quality from various angles. Quality and the various activities conducted in product development are two sides of the same coin.
In this article, I use the 2015 science fiction film Jurassic World (successor to the Jurassic Park series) to describe and illustrate the role and functions of QA, as well as the QA mindset.
Let's use this film to understand how we can avoid disasters from a QA viewpoint (make sure to check out the Jurassic World movie trailer if you are not already familiar with the film)!
(*) This article contains movie spoilers. Beware!
(*) This article will be easier for you to follow if you've seen the movie at least once.
I believe that in Jurassic World, there were at least three major junctions for decision-making leading to the eventual catastrophe of 20,000 park staff & visitors, and $800 million in damages.
Let's do a post-mortem examination (commonly adopted in system development to identify problems ex-post) of these three critical junctions.
|
Now, let’s take a look at how a QA specialist should think and act at these three turning points along the plot if this disaster, unfortunately, happens at the development frontline. It will soon be clear what QA specialists do besides implementing tests.
First, let's discuss the genesis of the Jurassic World catastrophe. To increase the number of visitors to the park, the business side wanted to create scarier, more impressive creations within a shorter timespan. Meanwhile, the research and development side tried to accommodate this request by creating a new species with new powers, using the newest technologies.
As a result...
This powerful hybrid creature possessed unique abilities, surpassing expectations, so it was successful in escaping from its cage as well as the special forces.
What would QA do?
So, what could have QA specialists done from the initial DNA design/manipulation phase to prevent this from happening? Here are some of my ideas (let me know what you think)!
|
Let's take a closer look at the first four points. In Jurassic Park (Films I ~ III), the DNA of frogs (which can change gender) were incorporated in the dinosaur genomes, allowing dinosaurs to unexpectedly breed although all of the dinosaurs should have been female. So in Jurassic World, when designing DNA for a hybrid dinosaur, the stakeholders should have looked back at this occurrence and avoided making the same mistake.
Furthermore, by conducting risk analysis at the planning stage of new development, one can identify possible risks and consider countermeasures in advance. Such analysis is one of the responsibilities of QA: to identify serious risks that can be eliminated at the development stage or can be addressed with tests.
In the case of Jurassic World and the manipulation of dinosaur genomes, there were also discrepancies between the requirements of the business side and the R&D side, and these discrepancies were unfortunately incorporated into the project design. These discrepancies are the source of defects that can lead to major rework as the project progresses to the later stages of development. This is where documentation and reviews become crucial, as they can help align perceptions among stakeholders in the early stages of the project.
The QA Mindset
To prevent defects from being built into the final product, we as QAs should keep the following things in mind and share our concerns with those on the front lines of development.
Are the perceptions of all stakeholders aligned (are they in agreement)? From a third party perspective, are there anuy misalignments or discrepancies in communication among stakeholders? |
After conducting adequate risk analyses, let's plan and create all tests necessary for the management of these risks. |
The second mistake made in Jurassic World was the lack of awareness and response to early warning signs that trouble was to come. This allowed the issue to escalate to a more severe scale.
Cannibalizing its own sister, trying to break the glass in the breeding area, trying to bite of the keeper's arm, growing bigger than expected...the ferociousness and danger of the Indominus rex should have been recognized at the breeding stage, but all concerned did not consider these risks seriously and continued to take band-aid measures like replacing the breeders and enhancing the facility.
As a result...
What would QA do?
In order to prevent such a situation, what kind of measures would a QA take during the training/nurturing stage of creating the Indominus rex? Here are my thoughts:
|
As development (in the case of the movie, the breeding of Indominus rex) progresses little by little, deviations from the original plan can likely be identified. In such cases, it is important to repeatedly provide appropriate feedback to those on the project and respond to new risks. Each time this happens, risk-based testing is conducted to repeatedly assure quality. In addition, it is sometimes necessary to make a decision to forgo the originally planned release until quality can be assured.
The QA Mindset
To prevent defects that were unintentionally and unexpectedly built into the product from causing more issues, QA professionals must keep the following in mind.
Things seldom go as initially planned! Constantly review and adapt processes for continuous improvement. |
Finally, I believe that in Jurassic World, the decisions made during the response to the incident increased the scale of damage and therefore delayed the resolution of the catastrophe.
The surge in the number of victims can be traced back to four critical decision points. Apart from relying on the infrared sensor, it was essential to confirm Indominus rex's location through GPS embedded in its body. However, during the investigation when the infrared sensor failed to respond, Owen and his team inadvertently entered the breeding area, leading to the first pivotal decision point. The second decision point arose when the Raptor squad chose not to use weapons to capture Indominus rex discreetly, despite the emergency situation. Subsequently, the third decision point occurred when they decided to snipe the escaping Indominus rex from a helicopter, aiming to terminate it once and for all. Lastly, the Raptor squad employed their sense of smell and intelligence for tracking Indominus rex, marking the fourth decision point.
As a result...
What would QA do?
Let's think about what a QA specialist might do to avoid such a disastrous emergency response.
|
The QA Mindset
To respond promptly and effectively to critical situations, QA must adopt the following mindset and disseminate it within the whole team.
The more people involved, the more diverse viewpoints will be involved in the decision-making process. Establish priority judgment criteria even in normal times, keep a third-party perspective and encourage correct decision-making from an unbiased point-of-view. |
Through the lens of "Jurassic World," we have explored the causes of the incident and how QA would respond to such a situation. I hope this article has provided you with a glimpse of the essential work QA undertakes.
The central theme of the Jurassic Park series has always been "life finds a way," which resonates even in the realm of software development. Every software field, team, and product possess unique characteristics, demanding distinct levels of quality.
"Testing" is just one aspect of QA's multifaceted approach to maintain and enhance quality. As illustrated in this article, activities like "process improvement" and "risk analysis" encompass the diverse range of QA tasks.
Similar to how dinosaurs adapted optimally to the Earth's environment during the Mesozoic Era, evolving into the birds of today, QA will continuously transform and adapt to the needs of the services and products it assures. As we journey forward, let us embrace the spirit of evolution and adaptability, fostering the most suitable form of quality assurance for the ever-changing landscape of software development.
This article was originally written in Japanese, and translated for TestingPod with permission from the original author. Check out the original article here.