[This is a followup to an earlier post on the Myths of Agile Testing.]
Following up on our first webinar on successfully conducting testing in an Agile development environment, we ran a second webinar for Europe. This again generated more questions than we could answer in the webinar itself, so we've collected and answered these below, we hope they are informative for those of you seeking to better employ testing in your Agile projects.
What is the main purpose of scrum?
Scrum is one of the methodologies of Agile which gives a Process Management framework for software project execution. It is a team-based approach to iteratively and incrementally develop products when requirements are change rapidly.
How long did it take to effectively transition to Agile and which are the big challenges / pitfalls to avoid in the transition to Agile?
Effective transition depends on team composition, team competency and also many other criteria (Complexity, availability of SMEs, Agile Coach etc.). Based on our experience it takes roughly 2-3 iterations to effectively adopt agile.
Besides those presented in our webinar, here are some more challenges and tips for the transition to Agile:
- Prioritization of user stories should be looked at continuously during sprint execution to achieve most user stories with ‘Definition of Done’.
- Formulating a self organizing, highly motivated and committed team
- User story and task break down needs to be practiced and mastered.
- Agile demands you to become self sustainable and self competent. Seeking external SMEs support within short delivery cycles is a big challenge.
- Streaming strategies needs to be well managed because of possible interaction with other members working on the same code.
Normally, close interaction and the presence of a coach enable a smoother transition.
How to get the best results from automation in Agile?
In Agile, automation also has to be iterative in nature, like the code development. That’s why it becomes important that automation be treated like CODE using.
- Incremental and modular approach
- With defined guidelines
- Well defined integration hooks for reuse & evolution.
How do we adopt practices of the customer along with what’s been learned?
While formulating the follow-up action plan (that is to be adopted/adhered) during retrospective in upcoming iterations we can evaluate and adopt the practices of the customer also. The Agile methodologies are flexible enough to adopt the best practices in subsequent iterations.
You talked about independent test teams. If you have multiple SCRUM teams that are working in different sites (but on the same product), do you setup a SCRUM team with testers on one site or do you have members from all sites in this SCRUM team?
Both the options are possible. Agile is mature enough to handle collocated/distributed team members across geographies.
If you setup an independent test team to test integration, performance, upgrades etc; how is this team setup when it comes to SCRUM master, Product Owner etc? Is it the same way as the development SCRUM teams?
It depends on the project dynamics. It is advisable to have a separate SCRUM master for the independent scrum test team. The product owner can be different or shared based on the project complexity and size.
You can view the recorded webinar and download a PDF of the first presentation also, and find out more about Aricent's testing services.