Just like software development, software testing also requires some important factors to develop and maintain that can contribute to continuous process improvement. One such significant factor is Team Building. While building the right team, the focus should be on the following key elements:
What You Will Learn:
Roles And Responsibilities
Each organization has a different hierarchy, roles & responsibilities in the QA team. However, on a broader level, there are two levels of the role in the software testing team. The first is the test lead or test manager and another is the test engineer or QC tester or QA tester.
A test lead has the responsibilities like resource allocation, test planning, defining project scope, assign testing activities to the team members, monitor software testing life cycle, prepare the status report and share with higher management, participating in customer interactions, etc.
A test engineer is mainly responsible for understanding & analyzing the requirements, creating test scenarios, test cases & test steps, setting priority for each testing activity, perform testing & report bugs, keep the lead informed about the testing status, etc.
The Software Testing team should have a proper structure where the roles & responsibilities of each member are clearly defined & understood.
It is very important for the team members to understand what they are supposed to do. This is quite often not communicated or discussed with the team.
If each team member is aware of his role & responsibility, then it becomes easier for the team as a whole to achieve its goal sooner & better.
Before the start of a project, the team members must be explained on the typical tasks which they will be performing on a daily basis for their respective roles. Be it a tester or a test lead, setting the expectations and explaining what is expected out of them will give correct results without unnecessary delays or errors.
Following points need to be clarified to the team:
- Scope of the Project
- Roles and Responsibilities expected from everyone
- Key points to focus like Deliverables, Timelines, etc.
- Explain about the Strategy and Plan
And above all this, the team members have the primary responsibility to keep in mind their own career aspirations, growth, learning, etc. These will be the key motivators to perform in their current roles and excel in the same.
It is very vital for the testers to understand the Domain as well as the functions of the application. This enables them to thoroughly test the application under test. KT sessions are essential to make them understand the core functions and logic which will be applied during testing. Brainstorming sessions are vital to share a common understanding of application and domain.
There should be a healthy knowledge sharing atmosphere in the team where everyone can learn & grow.
Testers should be involved in discussions right from the start of the project. Initial discussions essentially consist of Business people, Architects, Developers, Database experts, etc. Involving testers during these early stages of software development will provide good knowledge and understanding about the application that is going to be developed and tested.
The knowledge transfer should happen in the following phases:
- Prepare: The key people having knowledge should be identified and motivated to transfer knowledge.
- Understand the Client: A business person or client itself can impart this knowledge to you.
- Get familiar with the application: It is critical to understand the application you are going to test. You should be provided with proper documentation of the application.
- Get familiar with the teams, processes & systems: You should be made aware of what development lifecycle model is followed in the project (Agile or some other), what are the test processes and which test management tools are being used. Get the basic idea of all tools & processes used in the project.
- Study the application environments – there are different application boxes like dev, cert, test & prod. You should be imparted knowledge of these environments.
- Provide feedback: Once all the KT sessions are over, you should provide feedback about the KT process. This feedback is important for improvement in the process in the future.
Understanding the application’s Domain (e.g. Healthcare, Insurance, Education, Banking, etc.) is very important and will be helpful for testers to verify the functionality with different perspectives. The tester should be able to wear the hat of the end customer as well as an SME.
Domain knowledge building takes time and only over the period of working in a particular domain, the resource will be able to get a sound knowledge of the domain he is working in. Sometimes, a tester will get a chance to test different applications belonging to the same domain, so testing becomes easier and meaningful if he has knowledge of the overall domain.
Technical And Domain Certifications
Having a talented pool of testers is definitely a big asset for the project. The focus should be on training the team and get them certified in the respective areas they work by nominating for internal certifications. There are also a lot of external certifications which can also be selected and get the team trained & certified in those areas.
Certifications will definitely give the team moral support and maturity to perform the testing activities with confidence. Domain certified resources will also leverage the intellectual knowledge gain which can be showcased to prospective clients for new business opportunities.
It is important to ensure the testing team members jointly have the right combination of domain knowledge & technical skills required to achieve the common testing goals of the team.
It’s not enough to create just a team of testers with all skillset, but to provide opportunities to them to rise up in their career ladder is also significantly important. Create career-building programs for them or nominate their names for programs that can shape their careers and make them eligible for their next level of role.
Making them ready for the next level of the role will obviously fulfill the needs of identifying and allocating resources in the project as and when required. Team meetings can be effectively utilized to discuss their roles and responsibilities for the next level.
Educating them on the various skills required to perform in their next roles is advantageous and also aids in continuous process improvement. Every Manager has the responsibility to explain the duties that are expected to be performed when the resources are getting promoted.
This will make sure that not just a set of resources are promoted, but a ready-to-work, responsible and skilled individuals are being promoted.
Team Dynamics And Group Outing
It’s quite obvious to ensure there is a level of healthy team dynamics established and followed by the team for effective group work, meeting common goals, finishing planned targets and achieving goals on time. It is vital to make them understand that “Project” is the common objective for all in the project and completing what the customer wants is “Priority”.
To accomplish this, everyone should work together as a “Team” leaving all differences behind and completing the planned tasks should be the only “Target”. During weekly team meetings, the team members should receive the information on Tasks, Priorities for the upcoming period and have a common, clear and loud understanding of the work to be performed.
Team building exercises and team outings are really necessary to burn out the stress and recharging the team to work more. This will also help for a better understanding between team members outside the project works and in a different environment altogether.
A small token of appreciation can be announced during team meetings to identify talents and to encourage and motivate others to perform better.
About Author: This is a guest post by Baskar Subramanian. The author is working as a Test Manager for an MNC.
Further reading: Read the related articles below:
- How to build a successful QA team.
- 5 Major Problems with Large QA Testing Teams and How to Handle Them
- Leadership in Testing – Test Lead Responsibilities and How to Manage Test Team Effectively
- How to Form an Effective Test Team
If you enjoy this post, please consider sharing it with your friends. Also, put your thoughts and ideas in comments on how to build a successful QA team.