Role Of QA And Testing In Agile

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    6 Favorites

    Role Of QA And Testing In Agile - Presentation Transcript

    1. Role of QA and Testing in Agile Mayank Gupta
    2. Time for Introduction
      • Working w ith GlobalLogic India
      • Practicing Agile for last 3 years
      • Certified Scrum Master (CSM), OCP, ISTQB
      • Published Articles in Scrum Alliance & CM Journal
      • Blog - http://thought-reader.blogspot.com/
    3. Agenda
      • Agile Testing – An Overview
        • Traditional vs. Agile Approach
        • Agile Values
      • Agile Testing practices
        • Test Driven Development
        • Continuous Integration
        • Regression Testing
        • Exploratory Testing
      • Role of a Tester in an Agile Project
      • A Case Study
    4. Let us brainstorm
      • Does agile help QA?
      • What is the difference between testing in traditional environment and agile environment?
      • Do testers and QA people have a role in agile software development environment? If yes, what?
      • Why QA is so much neglected in agile?
      • Do developers and testers remain at opposite poles as it happens in traditional testing model (though not always)?
    5. Traditional software development
    6. Agile testing -Why?
    7. Traditional vs. Agile Approach Continuous sprint by sprint planning, deliver important features first Plan one time delivery which has to happen way later Planning Entire team Quality Engineer Quality Responsibility Evolving and Iteration Wise All Upfront Designing of Test Cases See working software every iteration and every release Milestone document review Progress review Adapt and adjust at every release and iteration boundary Prohibit Change Manage Change Constant interaction within the team and with the Product Owner Upfront Understanding Requirements Agile Traditional Criteria
    8. Agile Values
      • We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
      • Individuals and interactions over processes and tools
      • Working software over comprehensive documentation
      • Customer collaboration over contract negotiation
      • Responding to change over following a plan
      • That is, while there is value in the items on the right, we value the items on the left more.
    9. Agile synthesized
      • Reference – “Agile QA Testing by Elisabeth Hendrickson
    10. Agile Testing - Definition
      • Agile testing is all about applying agile values and principles to testing. The value of agile testing lies in effective communication between developers, testers and the product owner
      • Testers write acceptance test cases and get them approved by the product owner. At the same time, coding is driven by the customer facing tests which is more likely to deliver better software
      • In the end a story is not complete until testing is finished.
    11. Focus of Agile Testing
      • High Value features first
      • Continuous Integration with pre/post release build automation
      • Test Driven development
      • Automation of unit & regression testing
      • Automated acceptance testing
      • Exploratory testing
    12. Agile Testing Practices
      • Within an Iteration
      Automated Acceptance tests Manual Exploratory testing Automated Unit Tests
      • Define “Done”
      • Represent requirements
      • Derive “Design”
      • Represent Specifications
      • Provide additional feedback
    13. Test Driven Development (TDD)
      • A software development technique which ensures that the software being developed is 100% covered by unit test cases
      • Write the unit test case
      • Execute the build  Test fails
      • Write just enough code to cover the test
      • Execute the build  Test passes
      • Refactor
      Write the Test Refactor Execute the build Coding Execute the build Fail Pass Pass Fail
    14. Continuous Integration
      • Continuous Integration is a software development practice where members of a team integrate their work frequently; usually each person integrates at least daily - leading to multiple integrations per day.
      • Each integration is verified by an automated build (including test ) to detect integration errors as quickly as possible
      • – Martin Fowler
      • Pre-release builds (hourly/nightly) help developers to  improve the quality of the source code and release builds help in automating the release process.
    15. Continuous Integration
      • It is essential that code repository is centralized and unified tools are used
    16. Regression Testing
    17. Exploratory Testing
      • Exploratory testing is concurrent test design, test execution, test logging and learning, based on a test charter containing test objectives, and carried out within time-boxes.
      • Used in higher test levels to complement systematic (automated) testing
      • Exploratory testing is like the chess game with the application
    18. Role of a Tester in an Agile Project
      • Testers are integral part of the team
      • Participate in Release/Iteration planning
      • Start Testing activities from the day 1
      • Collaborates with the customer to define the acceptance test criteria  Validates that the system is doing exactly what it is supposed to do
      • Tests Stories once they are complete
      • Focuses on test automation
      • Focuses more on exploratory testing
      • Practices pair testing (similar to pair programming)
      • Collaborates with Development team
      • Provides continuous feedback to the team
    19. A Day in Life of a Tester
      • Starts by looking at prioritized personal work queue
      • Identifying the work items for the day
      • Attending the standup meeting
      • Collaboration with Dev Team (seeking and offering support)
      • Depending on the type of work item
        • Writing acceptance Criteria
        • Writing the test case
        • Automating a test case
        • Executing a test case (manually)
    20. Why does it fail?
      • Hard!
      • Agile does not fix everything
      • Are we ready for a change?
      • Practicing TDD is not easy
      • A move from Manual testing to Automated testing
      • Agile Testing needs a coder-tester profile
      • It makes products to be delivered faster
      • Partial adoption?
    21. How GlobalLogic does it?
      • GlobalLogic applies a unique method and platform for distributed software development, “GlobalLogic Velocity™”
      • “ GlobalLogic Velocity™ is an Agile product engineering method supported by an innovative collaboration platform, software frameworks and reusable software objects that together help bring high quality software products to market faster and with less risk.“
      • Velocity Method is the GlobalLogic framework of processes, templates, and behaviors which optimizes communication and provides just enough structure to effectively manage distributed product engineering teams.
      • Velocity Platform is an integrated suite of tools and systems that aids Distributed Product Development by facilitating end-to-end collaboration and tracking of issues through Requirements Engineering, Iteration Planning and Release, Test Engineering, and Release Engineering.
    22. Velocity – A case study
    23. [email_address]

    + Naresh JainNaresh Jain, 2 years ago

    custom

    3857 views, 6 favs, 0 embeds more stats

    Mayank Gupta's presentation on role of testing and more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 3857
      • 3857 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 6
    • Downloads 267
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories