Sep 2, 2014

What is Agile Software Development and how does it impact testing?

Agile Software Development generally refers to incremental, collaborative software development approaches that provide alternatives to 'heavyweight', documentation-driven, waterfall-type development practices. It grew out of such approaches as Extreme Programming, SCRUM, DSDM, Crystal, and other 'lightweight' methodologies. In 2001 a group of software development and test practitioners gathered to discuss lightweight methods and created the 'Agile Manifesto' which describes the Agile approach values and lists 12 principles that describe Agile software development. In reality many organizations implement these principles to widely varying degrees (and with widely varying degrees of success) and still call their approach 'Agile'.
The impact of Agile approaches on software testing can also vary widely but often includes the following:
  • Requirements and documentation are often minimal and when present are often in the form of high-level 'user stories' and 'acceptance tests'.
  • Requirements can be added or changed often
  • Iterative development/test cycles ('sprints') are often in the range of 1-3 weeks. Both new functionality testing and regression testing (preferably automated) may occur within each iterative cycle.
  • Close collaboration between testers and developers, product owners and other team members
  • Short daily project status 'standup' meetings that include testers.
  • Common testing-related practices in agile projects may include test-driven development, extensive unit testing and unit test automation, API-level test automation, exploratory and session-based testing, UI test automation.
  • Testers may be heavily involved in fleshing out requirements details, including both functional and non-functional requirements.
For more info on Agile and other 'lightweight' software development approaches (XP, Scrum, Crystal, etc.) see the resource listings in the 'Agile Testing Resources' section of this web site.

3 comments:

  1. I have been searching for the best testing blogs to make me update in software testing domain. I found your blog, after I read, I am very much impressed in the way you have expresses your thoughts, thank you admin to make my time useful.
    Regards:
    Software testing training institutes | Software Testing courses in chennai

    ReplyDelete
  2. I am glad to say that I have gained some cool info from your blog on testing. By the way sure, I will be implementing your idea on my upcoming projects. Thank you so much
    Regards:
    Selenium Course in Chennai | Selenium Courses in Chennai

    ReplyDelete
  3. I like your post there is a lot of information about software testing, which i would like to learn, thank you for the great guide. Very useful post and I think it is rather easy to see from the other comments as well that this post is well written and useful.Keep up the good work.. Read more about QA Services

    ReplyDelete