QUALITY BEFORE BIRTH
The German-IBT and getINNOtized GmbH are on a cause to train young talents to take up Quality Assurance and DevOps roles in the tech industry here in Africa.
This is why we hosted the very first meetup for the Ministry of Testing, Accra. The Ministry of Testing is a global community of software testers. It exists to advance the software testing industry in a fun, safe and professional space while bringing people together to talk and learn about good and authentic testing.
In light of this, a group of software testers and lovers came together for this meetup, under the theme “Quality Before Birth”. The event was led by the elaborate speaker of the day, Percy Tetteh-Saba, a Quality Assurance Engineer at mPharma.
This piece is a report on the day’s event.
“Quality is never an accident; it is always the result of intelligent effort.” – John Ruskin
“There is no better person impress with your products and services than your customer. They are the reason you do what you do and they consciously or subconsciously expect value from you.”
Software and Artificial Intelligence have become commonplace in our day but how many stakeholders think of quality before, during and after development?
Quality Before Birth: The Process of Ensuring Quality Before Birth
Our speaker of the day, Percy Tetteh-Saba took us through the entire concept of ‘Quality Before Birth’. Here are some highlights of his talk:
Testing User Stories
User stories are statements that describe the requirements of the features of a software from the user’s perspective.
As a tester, remember to obtain user stories from the correct source; preferably the client, user or even the project’s team members. Requirements can be distorted or lost in transition if they are communicated by different stakeholders. Hence, the reason for documenting requirements and gaining the buy-in of all stakeholders.
Validating Acceptance Criteria
When writing or developing the user story, ask yourself these questions; what value the user story brings to the customer?
What should be the behavior of the feature when certain actions are performed? Does the user need it? How will the user use the system?
Get to know your users; understand their space and ask questions. Discover what they will feel comfortable using. Do not assume they will find it easy to use a system or UI just because it’s trendy or nice.
Engage the user to see whether they are comfortable with your design. If it is indeed stressful to use, they may want to stick to what they are used to, and wouldn’t ever use the new system.
This is a technical review of your prototype. After creating a prototype, all stakeholders must meet to evaluate it. Here, there is negotiation and criticism to get the best product for the user.
After negotiating and settling on the most suitable design, development begins.
Developers are encouraged to perform unit testing. This method tests individual units of source code, program modules together with associated control data, usage, and operating procedures, to determine whether they are fit for use.
The Test Pyramid is an agile way to approach automated tests. Most of these tests should be covered in the granular form, in unit testing.
Test types and tools
Other tests performed are Contract tests, BDD automation, API tests, Performance and Load Testing. Tools like Selenium, Postman, Jmeter, locust.io or Gatling can be used.
“In order to implement quality processes and deliver quality products in your organization, all stakeholders must be involved; else forget about it.”
— Percy Tetteh-Saba
User Acceptance Testing (UAT)
Test the software as the user would. The aim is to validate the product against the business requirements. If the important features fail, the software must not be shipped.
Here developers and testers use the product themselves before it is shipped to the client or user. This boosts their confidence in the product.
“Africa is scaling high on software and AI development and we need to promise and deliver quality to our consumers and to the world at large. But we can’t assure quality on what has not been tested well.”
— Adea Natchiah-Blay, Tester at Getinnotized
“We need to rise above the myth that Software Testing and Quality Assurance is a simple and low-skilled work.”
— Eva Mwangi
Finally, The Ministry of Testing meetup ended with on a fun note with a period for networking, coupled with a game of “concentration.”
Our take-home point for the day was that software testing is a big deal and must be taken seriously by any developer. So let’s test together!