Recently, we asked three of our top Quality Analysts to answer questions about their role, the best ways to break into the industry, and best practices, below you will find their answers.
1. What do you think is the best education/training for someone that is looking to become a Quality Analyst?
Rajesh: SQL, Agile training, and any automation tool training. I feel all are important since Agile is the process which is helpful to work in a fast-paced environment and SQL is required for every QA in software to work on the data. Whereas, automation tools make QA testing faster and less repetitive work for regression tests.
Gowthami: There are many online QA training institutes which train individuals from the basics.
Deepak: Any candidate who has good communication and analytical skills, strong critical thinking skills, knowledge of computers/technology, knowledge of systems analysis, complex problem solving, good knowledge of writing skills, able to use web/data warehouse platform, enterprise application integration, configuration management, and knowledge of program testing software/tools can be a good Quality Analyst.
2. What do you think are the best methods of communicating with the rest of the Project team? What are some challenges you may face in integrating your testing into the larger project plan?
Rajesh: In my current client, we have an onsite model and everyone including Business, Dev team, Project Management and QA all work in the same location. We communicate through in-house project meetings, internal emails and we use communicator for any project related discussions or questions. Direct interaction helps for better communication and also improves the business relationship. You will have all the information about the systems and the client’s requirements easily available.
In my last company, we had an onsite – offshore model. We were based in Massachusetts and offshore, in Pune, India. QA tasks were distributed between the two teams and ensured that there was work going on every minute of 24 hours on a project. We communicated the timelines, progress, delays, etc. back and forth from the team to the client and vice versa. We had a list of to-do’s for one another and made sure we were working on the list and updating each other on the progress.
In a large project, sometimes direct communication or a phone call is very helpful to discuss the issues openly instead of emails which sometimes misleads the intention.
Gowthami: Email communication is the best way, but if you need something urgent, always have in-person communication. Challenges faced: In an Agile environment, there is not enough time for documentation. For testers, it is a challenge to cover all the scenarios for testing due to lack of documentation.
The following are the best methods of communication with the team members:
- It is always better to attend all the meetings that are related to the project. It will help candidates gain knowledge about the changes/future planning/timeline of the project, and will also help to build good relationships with the other team members.
- One-on-one meeting with Managers and the Project Manager. These kinds of meetings will help candidate to boost their motivation levels, can address any critical issues that can cause a problem in the project, directly or indirectly, allows feedback about personal performance, and helps to develop ideas for the team members.
- Daily/Weekly stand-up meetings with team members. These kinds of meetings give the candidate an opportunity to communicate with other team members about what is currently happening in the project like the burn-up and burn-down charts. These daily or weekly basis meetings give an opportunity to get to know other team members and their thoughts regarding the project.
- IM/Skype call with team members helps the candidate to update the status of the project and efficient communication with team members helps to address any issues with better detail.
The following are the challenges that a candidate may face testing into larger project plan:
- Less time to test. It is not always possible for a Tester to be given the entire time period that is defined in the timeline of the project. Sometimes you will be given such little time to test, that it seems impossible. For example, in a timeline there is 1 week for a testing period and the Developer drops the code on any day that week, the tester then needs to complete his/her testing within the same week, no extra days will be given to the tester to test due to delay in the drop.
- Frequent changes in the requirement. Larger project means involvement of many people that can creates some level of confusion resulting in a challenge for a solution according to the requirement of the project.
- When the project expands, the regression testing work simply becomes uncontrolled with only a limited number of testers. Pressure to handle the current functionality changes, previous working functionality checks and bug tracking can become too difficult to track.
- In the larger project, application development methods are changing rapidly due to frequent changes in the requirement, making it difficult to manage the test cases, test data, and defects.
3. How do you track and fix defects?
Rajesh: My client uses Microsoft Team Foundation Server (TFS) for all work item tracking, such as defects, requirements, tasks, and scenarios.
Gowthami: Defects can be tracked using defect/project management tools like Quality Center, JIRA and Visual Studio.
Deepak: Most of the companies or almost all of the companies use some kind of tool to manage the defects that are discovered during the QA phase. Some companies use 3rd party vendor tools, some companies build their own, and some simply use Excel to log and track the defects. It all depends on how the project was developed and what the budget is. The best solution to track the defect properly is to find a unified tool where defects can be monitored frequently and related specifically to other items such as releases. Once the candidate logs the defect, it’s always a better process to set up a process for tracking, this will prevent from losing any logged issues/defects, and let other also knows the process they should follow. Always make sure that all the team members use the same tracking tool to update their comments or any information regarding that particular bug in the tool and also let them know to assign that to you so that you can get notifications about the changes.
4. How different is it to work in Waterfall projects than in Agile projects? Which do you prefer?
Rajesh: In the Waterfall model, software development is to be completed as one single project, which is then divided into different phases, with each phase appearing only once during the SDLC.
However, the Agile methodology can be considered as a collection of many different projects, which are nothing but the iterations of the different phases focusing on improving the overall software quality with feedbacks from users or the QA team.
The Waterfall model is best suited for projects which have clearly defined requirements and in which change is not expected at all, while Agile development supports a process in which the requirements are expected to change and evolve. Thus, if you are planning to develop a software that would require frequent overhauls and has to keep up with the technology landscape and customer requirements, Agile is the best approach to follow.
Agile provides multiple opportunities for stakeholder and team engagement during the Sprints. An Agile approach provides a unique opportunity for clients to be involved throughout the project, from prioritizing features to iteration planning and review sessions. However, it depends on the type of the project too. If the project is dependent on lot of other systems than fitting the Agile process would be challenging.
Gowthami: Both models are different from each other and I prefer Agile Methodology. Instead of a sequential design process, the Agile methodology follows an incremental approach. Developers start off with a simplistic project design, and then begin to work on small modules. The work on these modules is done in weekly or monthly sprints, and at the end of each sprint, project priorities are evaluated and tests are run. These sprints allow for bugs to be discovered, and customer feedback to be incorporated into the design before the next sprint is run.
Deepak: While working in the project, methodology really does not matter a lot. A candidate may find both methodologies in one company for different related projects. In Agile, the tester should always be prepared for changes because this methodology follows neither a purely sequential approach, nor does it follow a purely iterative approach like waterfall. Fast and incremental development is one of the key principles of Agile methodology so it focuses on obtaining quick, practical and visible outputs and results, rather than merely following theoretical processes.
Since, the waterfall model adopts a 'top down' approach for software development or testing, where you move on to the next step of the life cycle only after you have completed the present step. This methodology gives tester sufficient time to learn about the project deeply. There is no scope for jumping backward in this methodology so the tester needs to test the product very carefully. The main benefit of this methodology is its simplistic, systematic and orthodox approach. Since both methodologies have some Pros and Cons, I prefer to work on both.
This blog post was written by Danielle Higgins, Social Media Coordinator at Whitridge Associates
About Whitridge Associates
Whitridge Associates provides expert talent to a diverse group of technology companies, financial services, defense contractors and healthcare providers throughout the country. With a history of 22 plus years of unparalleled service to both our clients and consultants, Whitridge is one of the most highly regarded staffing companies in New England. Whitridge was recently recognized as an Inavero’s Best of Staffing® Client and Talent Awards winner, one of the top 100 fastest growing staffing companies in the United States and was presented with The Excellence Award from TechServe Alliance the industry’s leading trade association.
Whitridge helps our clients and candidates achieve business success. Think Whitridge. Think Success. www.whitridge.com