In this tough environment more and more companies are start to explore how “Agile with different flavors” can help their Enterprises more reliably deliver software quickly and iteratively. The roles of Test Professionals become more important in implementing Agile Projects. Innovations are increasingly being fueled by the needs of the testing society at large. But the most challenging role to adapt to agile development is the role of Tester. That's because agile development contradicts so many things that many Testers have been taught is 'best practice'.
In an agile development environment you cannot wait for things to happen. You must be proactive. This is true for all team members, but it is especially true for Testers. QA team members cannot let anything get in their way of testing. If they don’t follow the requirements they need to speak with the Product Owner for clarification. If they are not sure how programmers is going to implement the new code, they need to discuss how the code will be implemented with the developer. They must become self directed experts at removing any obstacles that prevent them from testing.
So, what are the challenges face Testers when working with Agile development teams and how they can meet that challenges?
Recently, browsing through Software Testing Help I found one interesting article: Tips to be More Innovative in the Age of Agile Testing ..., written by J.B. Rajkumar - experienced Trainer, QA Manager, frequent Speaker for Colleges, Universities and International Conferences.
According to him Agile Testers face lot of challenges when they are working with Agile development team. And they should be able to apply Root-Cause Analysis when finding severe bugs so that they unlikely to reoccur. While Agile has different flavors, Scrum is one process for implementing Agile. Some of the challenging scrum rules to be followed by every individual are,
- Obtain Number of Hours Commitment Up Front
- Gather Requirements / Estimates Up Front
- Entering the actual hours and estimated hours daily.
- Daily Builds
- Keep the Daily Scrum meetings short
- Code Inspections are Paramount
Mr.Rajkumar claims in order to meet the challenges, an agile testers needs to be innovative with the tools that they have. And here is some important keys for innovation:
- A good Agile Tester needs to be extremely creative when trying to cope up with speed of development/release. For a tester, being creative is more important than being critical.
- Testing professional must be highly talented and strives for more learning and innovating new ideas. Talented Testers are never satisfied with what they have achieved and always strives to find unimaginable bugs of high value and priority.
- An Agile Tester should not be afraid to look at a developer’s code and if need be, and in extreme cases, to correct it.
- He must have a comprehensive vision to client’s expectations and delivery of the good product.
- He must be empowered to work in Pairs. He will be involving in Pair Programming to bring shorter scripts, better designs and finding more bugs.
- Tester should be passionate and contributes something unique that may be in terms of their innovative ideas or the way they carry day-to-day work.
And finally, Agile Tester must have multiple skills like, Manual, Functional, Performance testing skills and soft skills like Leadership skills, Communication skills etc. As in this new world Testing Professional will be concentrate on adding value to the business and the software development life-cycle and will operate in a new and elevated position where the combination of their structured driven approach, creativity and ability to articulate and define quality and testing criteria in to the new models will be critical to the success of the business implementation of technology.


I agree with all your description of what an agile tester is especially the new added skills not as needed as much previously by individual contributor in the typical waterfall models such as creativity, leadership and communication. I would also add proactive and adaptive.
ReplyDeleteI also agree that with agile testing there is no I in the word team, everyone HAS to work together for the common goal.
In the agile world traditional QA is nearly non-existent. The traditional 2-3 week test cycle is pretty much thrown out and a new perpetual testing model takes its place. This leads to new risks and mitigations that have to be contained on an on-going basis. Additionally, agile test managers tend to become more about priorities and taking risks where risks can be taken based on customer requirements. Personally, I found my customer advocacy role heighten immensely in the Agile world for the past two years. But we delivered into live web environments as much as daily but minimally every two weeks so my case may be the exception rather than the rule.
Dear...
ReplyDeleteits very nice....i hope you will provide more information for testing..
thanks,
Rohit
II do not think that agile is a good methodology for testing. I do think that agile is a good way to develop an application or product, but testing is very different from development. In testing we need to prove that a product will work in a stable predictable manor over a long period of time. Although continue testing is part of agile I have found it almost impossible to reproduce predictable results. I have also seen that a great deal of time is lost to trying to reproduce bugs and defects that are transient in the agile process.
ReplyDeleteAgile testing will work in the early stages of a project but I think that solid SQA practices of thoroughly testing builds/ releases on stable platform produces a better product in the long run.
I agree with kevans999 - my rule of thumb when using Agile in SQA is "Fail early and often". I think the process usually does not allow enough time between iterations to satisfactorily test against defined functionality, let alone find new defects.
ReplyDeleteHi Guys
ReplyDeleteI have worked on a massive project where Agile development techniques were adopted. The most important conclusion that I reached is synoymous with a comment above. Agile is good for development but not for testing. Testing is like engineering and needs to be fairly structured and methodical.
Hi All,
ReplyDeleteI'm very dissappointed after looking into few comments above that, Agile does not work for testing. I've been an Agile practitioner for last 5 years, and I have seen many success using Agile testing methodology. Techniques like story hurdle, elaborative user acceptance crieteria, early viewing and automated testings are key to success of any Agile project.
Nice Article because Now a days not only big companies like Adobe, Microsoft are doing software and product development in India at their development center. But now many other small to medium scale companies have started software and product development and started entering into outsourcing software product development. It is considered that, increase in business will be around 100% in offshore outsourcing product development.
ReplyDeleteFor more information please visit : http://www.elantechnologies.com
Thanks for sharing this really useful information. I own a software testing outsourcing website that might be useful for your visitors. Go through it! Bye.
ReplyDeleteJust linked this article on my facebook account. it’s a very interesting article for all.
ReplyDeleteScrum Process
I also agree that with agile testing there is no I in the word team, everyone has to work together for the common goal. I think the process usually does not allow enough time between iterations to satisfactorily test against defined functionality, let alone find new defects. Software Testing Services
ReplyDeleteHey, nice site you have here! Keep up the excellent work!
ReplyDeleteScrum Process
Any tool/process/methodology/technique is developed to solve particular issues arising in development, testing, management process. Be it Scrum, Kanban or any other; important point to note in adoption in any methodology is that it HAS to be adapted to your requirements in any area wherever it is needed. Which means there is no shortcoming or problems with that methodology, but since nature of business is never defined, no methodology can work out of the box.
ReplyDeleteInitially it may even work out of the box but sooner or later adaptation will be needed. Hence successful adoption and adaptation of methodology also depends upon Roles, Rules and Training of that methodology.
just linked this article on my facebook account. it’s a very interesting article for all.
ReplyDeleteScrum Process