SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
An Introduction to
Agile Software Testing
                         1
Course Objectives
                    After this seminar, you will:

                     Understand what an Agile project
                     Know the differences between Kanban and Scrum
                     Understand what and how a tester performs the
                       testing in Scrum process
                     Understand what testing techniques required for a
                    tester in Agile
                     Know what challenges of Agile Software Testing




                                                                       2
Course Content


                  What is an Agile Project?
                  What are Scrum and Kanban?
                  What are Scrum & Kanban Processes?
                  What are testing Activities in Scrum?
                  What are Agile Testing Techniques?




                                                           3
What is an Agile Project?
            All projects are “agile”, but some agile projects
                       are more agile than others


                                                        In practice, “Agile” labeled
How to “agile” a project                              to projects that its delivery of
An Agile purist would point to agile manifesto and       each increment taking no
its principles
                                                                       longer 4 weeks
Individuals and interactions over process and tools
                                                                Is it met level of agility?
 Working SW over comprehensive documents
 Customer collaboration over contract negotiation
 Responding to change over following a plan                                          4
Agile Project
     An
introduction
of Scrum and
   Kanban


                5
What is Scrum?
  Scrum in 100 words
 • Scrum is an agile process that allows us to focus on
     delivering the highest business value in the shortest
     time.
 •   It allows us to rapidly and repeatedly inspect actual
     working software (every two weeks to one month).
 •   The business sets the priorities. Teams self-organize to
     determine the best way to deliver the highest priority
     features.
 •   Every two weeks to a month anyone can see real
     working software and decide to release it as is or
     continue to enhance it for another sprint.
                                                            6
What is Scrum? - Principles
                          9 Scrum principles
                              Scrum contains sets of principles (some of them
                                  required while others are optional) and
                                             predefined roles
                                                 (1)Demo
                                            (2)Sit together
                                           (3)Daily Scrum
                                          (4)Retrospective
                                          (5)Sprint backlog
                                        (6)Product Backlog
                                  (7)Sprint planning meetings
                                    (8)Time-boxed iterations
                                       (9)Definition of Done             7
What is Kanban?
  Kanban in 100 words
Visualize the workflow
Split the work into pieces, write each item on a card and put on
the wall.
Use named columns to illustrate where each item is in the
workflow..
Limit Work In Progress (WIP) – assign explicit limits to how many
items may be in progress at each workflow state
Measure the lead time (average time to complete one item,
sometimes called “cycle time”), optimize the process to make
lead time as small and predictable as possible

                                                                8
Kanban vs Scrum Board
                      Kanban and Scrum Board


                              V.S.

                   Scrum and Kanban over time

                              V.S.

Scrum resists change within   V.S.     Kanban limits number of items
an Iteration                           in workflow state
                                                                  9
An
introduction
  of Scrum
   Process



               10
What is Scrum process?
Scrum Roles            Key Artifacts                 Ceremonies                           Process
                                                 Sprint planning
                Product Backlog                  • Hosted by Scrum Master                Product
                • Requirements – user stories    • Pick highest priority items in        Backlog
                • Desired work                     Product backlog and the team turns
                • Prioritized by Product Owner     the items into Sprint Backlog
                • Anybody can add to it
Product Owner                                    • Estimate sprint backlog in hours                 Sprint – 2-4 weeks
                                                 • Work breakdown
                Sprint Goal                                                               Sprint Planning      Sprint Goal
                • Summary of focused work in     • Declare Sprint Goal
                  sprint                         Daily Scrum                                                      Sprint
                • Declared by Product Owner
                • Accepted by team               • Hosted by Scrum Master                  Daily Scrum           Backlog
                                                 • 15 minutes - same time every day
Scrum Master                                                                                                      Blocks
                Sprint Backlog                   • Not for problem solving
                • Team signs up for work of      • 3 questions in meeting: (1) What        Daily Work
                  their own – work never                                                                          Product
                                                   did you do? (2) What will you do?
                  assigned                         (3) What’s in your way?
                • Owned/managed by the team
                • Estimated work remaining is    • Team updates sprint backlog
                  updated daily                                                            Sprint Review/
                                                 Sprint Review
                Blocks List                      • Hosted by Scrum Master – 2-4 hours      Retrospective
Scrum Team      • List of blocks & unmade        • Accomplishments
                  decisions                      • Whole team participants
 (max – 9)      • Owned by Scrum Master
                • Updated daily                  • Take form of demo for features
                                                                                            Product
                                                 Sprint Retrospective
                Burndown chart                                                              Backlog
                                                 • Hosted by SM – 15-30 minutes
                • Effort spent over period
                • Stories/ features completed    • Discuss on “Start doing”, “Continue                                       11
                                                   doing” and “Stop doing”
What are roles in Scrum?

 Product Owner (PO) is a         Scrum Master represents            The Team
 client’s representation        Management                        5-9 members
 Define features of product    Enacting Scrum values            Including: developers,
 Decide Release Date and                                          testers, designers,…
                                Ensure team’s productivity
 content                                                          Full time
                                Prioritize features according
 Prioritize features             to market value                 Work Self-organizing
   according to market value                                       Membership should be
                                Corporate across all roles
 Be responsible for the          and functions                     changed each sprint
   profitability of product
                                 Shield team from external
  Accept or reject work          interferences
   item result

                   A practice for prioritizing features (or User Story)
                     Priority = Max (5 (or 6) x priority that assigned by PO, sum
                         (priority that assigned by team members)                           12
What are roles of tester in Scrum?
                                         There is NO tester in formal Scrum Process
                                         Testing is carried out by developer with Unit Test
                                         •Test Driven Development means testing
                                         executed before development and refactoring
                                         performed to optimize development
                                         •Testing coverage

                                          Testing is carried out by Product Owner/ Client

                                         •Frequently testing by Product Owner – each
                                         sprint
                                         •Testing Acceptance Criteria



Isn’t it really necessary tester position in Scrum?
            What happens without tester?
                 No future for tester?                                                  13
What are roles of tester in Scrum ? (cont.)
Are testers obsolete?
Questions:
• Will developers do acceptance
testing well?
•Will developers test their work
product well?
•Is that enough with only one
kind of testing – Unit Test?
• How to test non-functional
requirements?

Benefits when have
dedicated test team:
•Focus on customer usage over
technical implementation
•Focus on uncovering flaws over
confirming completeness

                                              14
What are roles of tester in Scrum? (cont.)
                        • Participant   in   Release/   Sprint
                        Planning
                        • Support developers in Unit Testing
                        – say them about testing view instead
                        of development view
                        • Test User Story when completed,
                        last  gate   to   confirm testing
                        completeness
                        • Collaborate with customer and
                        Product Owner to define acceptance
                        criteria
                        • Provide positive feedback         to
                        customer
                        • Develop automation testing

                                                                 15
Testing Activity
  in Scrum &
Kaban Process



                   16
What are Testing Activities in Scrum Process?
 Process                            Tester must know what model of cadence used
Product




                                    cadence
Backlog




                                     single
           Sprint – 2-4 weeks




                                    cadence
                                     Three
 Sprint Planning      Sprint Goal
                         Sprint
  Daily Scrum           Backlog
                         Blocks


                                    Driven
  Daily Work
                         Product    event


                                    In Sprint Planning:
  Sprint Review/
  Retrospective                     • As a tester, he/she says what should be picked from
                                    Product Backlog for this Sprint to bring value to customer
                                    & to create high performance

   Product                          •As a tester, he/she says how many hours should have
   Backlog                          to complete testing for each of selected User Stories
                                    •As a tester, he/she must understand what sprint goals
                                    • As a tester, involves into the prioritizing process17
What are Testing Activities …? – estimate effort
Effort Estimate techniques:
Heuristic (expert judgment based)                         Parametric (calculation based)
Comparison to similar systems                             Function Points
 Expert Judgment                                          Use Case Points
 Activity Based (top down)                                User Story Points
 Task Based (bottom up)
 Three-point estimate
 50/90 estimate

In Agile, testers are empowered to make decision. It means they
are given authority to estimate effort for each work item that
stated in Story Card for Product Owner reviews
As a result, testers are responsible for all testing activities that
they estimated.



                                                                                           18
What are Testing Activities …? – 50/90 estimate




                  50/90 Estimation
                  Worst case: number of hours (cost) in the worse-case scenario
                   Most -likely: number of hours (cost) in the Most -likely scenario

                                    Total Hours = Most Likely
                        Task variance = (Worst Case (W) – Most Likely (A))
                                Deviation = sqrt (sum((Wi-Ai)^2))

                                                                                19
What are Testing Activities …? – 3-point estimate



          3 Points Estimate (PERT)

          Opt: indicates number of hours (cost) in the best-case scenario
          Pess: indicates number of hours (cost) in the worse-case scenario
           Most -likely: indicates number of hours (cost) in the Most -likely scenario

                              PERT = (Opt + 4 x Most-Likely + Pess) / 6

                                      Variance = (Pess – Opt) / 6




                                                                                          20
What are Testing Activities …? – User Story Points
               User Story points (USP)
                Story points are a unit of measure for expressing the overall size of a
               user story, feature, or other piece of work
                The raw values assigned are unimportant
                Image a story with 2 USP(s) will 2 times bigger than 1-USP one
                Two estimation scales               or                or
               Velocity is a measure of a team’s rate of progress – Ideal Time


               The beauty of this is that estimating in story points completely separates
               the estimation of effort from the estimation of duration
                   If we find that a particular work unit is twice the size we thought.
                   The estimate remains the same, but rate of progress through it
                   will be slower

                                                                                    21
What are Testing Activities in Scrum Process?
 Process
Product
Backlog

           Sprint – 2-4 weeks

 Sprint Planning      Sprint Goal
                         Sprint
  Daily Scrum           Backlog     In Daily Scrum:
  Daily Work
                         Blocks
                                    • As a tester, he/she joins all daily meeting (standup)
                         Product    to speak up
                                         1. what was tested and did yesterday/ progress;

  Sprint Review/                         2. What will test and do today?
  Retrospective                          3. Any in testing progress
                                    •As a tester, he/she can bring any backlog item that
                                    cannot be completed in current sprint and put to next
   Product
                                    sprint – EX: I don’t have enough time to execute
   Backlog
                                    testing for item #4. it will be tested in next sprint.

                                                                                      22
What are Testing Activities in Scrum Process?
 Process
Product
Backlog

           Sprint – 2-4 weeks       In Daily Work:
 Sprint Planning      Sprint Goal   • As a tester, he/she is responsible for develop
                         Sprint     automation scripts (for automation testing
  Daily Scrum           Backlog     •As a tester, he/she schedules automation testing
                         Blocks     with Continuous Integration (CI) System.
  Daily Work
                         Product    •As a tester, he/she reviews & reports test results to
                                    stakeholders via CI System or by himself/herself.
                                    •As a tester, he/she executes non-functional testing
  Sprint Review/                    with approved user stories
  Retrospective
                                    Some organizations, Product Owner does not have
                                    enough energy to do acceptance testing each sprint.
                                    Tester is hired for this case
   Product
   Backlog                          •As a tester, in end of Sprint, he/she executes UAT
                                    and confirms testing completeness for current sprint.
                                                                                      23
What are Testing Activities in Scrum Process?
                      In Scrum, Software is integrated daily, build and test
                      each day. Therefore, CI System is deployed to most
                      of Agile Project. A CI System & test components can
                      be identified as below
                      • Hudson / CruiseControl – CI Framework
                      • Junit (for Java)/ Nunit (.Net) – Unit Test
                      • Cobertura (Java)/ NCoverage – Testing
                        Coverage
                      • Ant (for Java)/ Nant (.Net) – Automation Build
                      • SVN – Version Control
                      •Selenium integrated with Hudson - Functional
                      testing


                      In Daily Work, tester will responsible for develop
                      automation scripts, integrate testing automation
                      testing tools/scripts with CI for regression test and
                      UAT
                      As a part of duty, tester is playing role supporter in
                      helping developers create Unit Tests effectively and
                      efficient                                        24
What are Testing Activities in Scrum Process?

              In Daily Work:
              As a practice, “Done” of sprint can be considered when
              Code checked in.
               Builds ready
               Unit Test complete successfully        Tester’s
                                                       supports
               80% code branch coverage on UT
               Non-functional testing completed
                (confirmed by testers)
               Finish deploying to Production




                                                                       25
What are Testing Activities in Scrum Process?
 Process
Product
Backlog

           Sprint – 2-4 weeks       In Review & Retrospective:
 Sprint Planning      Sprint Goal   • As a tester, he/she identifies what went right and
                         Sprint     what went wrong in current sprint
  Daily Scrum           Backlog     •As a tester, he/she identifies lesson learned and
                         Blocks     best practices.
  Daily Work
                         Product    •As a tester, he/she is encouraged to write user
                                    stories that support testing.
                                    EX: As a tester, I need interface with inputs – A, B, C
  Sprint Review/                    to execute testing of feature X.
  Retrospective
                                    •As a tester, he/she is encouraged to write user
                                    stories that bring value to customer.
   Product                          EX: As a user, I need to be able to sort items.
   Backlog                          All these user stories are put to Product Backlog
                                    for review and Approved
                                                                                       26
What are Testing Activities in Scrum Process?
                                    In Review & Retrospective:
                                    • Any items remaining will be
                                        •Review why tester could        NOT complete in
                                         current sprint
                                         Problem may be identified by lacking of
                                         experience in estimate or any roadblock
                                         prevented it completed. Whatever reason
                                         identified will be noted as lesson learned
                                         •Put to next sprint for continuing testing
                                    • Any roadblock comes from lacking of support of
                                    Product Owner, should be pointed out for Scrum
                                    Master’s follow-up


       To bring effectiveness and efficiency to review sessions,
       Scrum Master should request participants to prepare list of
       items/ issues at least 1 day prior to meeting date

                                                                                      27
What are Testing Activities in Kanban Process?
                         Kanban is less prescriptive than Scrum
                         All testing activities are similar with Scrum

                         No required time-boxed iteration
                         •Testing is not limited by time duration
                         •Accept changes at anytime – Scrum protects changing backlog items
                         in sprint while Kanban still accepts removing and adding new items
                         • Testing item in workflow state can be added or removed to get the
                         most effectiveness and efficiency.

Kanban limits number of items for each workflow state
•Testing items should be picked logically to put to workflow stated




                                                                                        28
What are Testing Activities in Kanban Process?
An Example of Managing Tasks/ Work Item
                                     1. Backlog: state all work items/ user stories translated into
                                        tasks - As a characteristic of Backlog may be limited
                                        number of items
                                     2. Ready: List of work items that ready for executing
                                     3. Specifics: Identify what criteria to confirm work item
                                        completeness
                                     4. Execute: Work Item in executing




Tuan completed work item -           Next, he moves another work         He also moves another work
testing for “Sorting Items”. He      item – testing for “Filter Items”   item from Backlog as a
reviews and confirms that it         from ready to “execute” to          pipeline item.
satisfied criteria state. He moves   start new work
                                                                                              29
this item to “Done”
What are Testing Activities in Product Development?
                               Testing against          Testing in live
                                 user story           environment - UAT




                                              Non-functional
                  Unit Testing
                                            testing/ confirms
                Integration Test
                                               story is met



In Agile, testing is focused on
                                                                      Tester is also responsible for
1. Unit Test that developers need support of testers to               testing user story that cannot be
   create effective set of tests and
                                                                      verified by UT to confirm testing
2. Acceptance Test that the responsibility is belonged
   to tester                                                          completed before demo and
                                                                      release to production.
Integration & regression test are executed daily by
automation.                                                                                            30
What are Testing Activities in Product Development?
                              Testing against          Testing in live
                                user story           environment - UAT




                                             Non-functional
                 Unit Testing
                                           testing/ confirms
               Integration Test
                                              story is met




 Story Exploration          Communication within an agile team to explore story
                             understanding
 Estimation
                              Consider flows of between Product Owner and team on story
 Story Planning
                              Testers also speak up with questions to clarify any vagueness
 Story Progression          in the story
 Story Acceptance
What are Testing Activities in Product Development?
EX: For User story: “As a user, I can
reset my account password if I forgot
my password”
Test may have questions relate to this
story as follows
1. What does it mean for an email
address to be ‘unknown’?
2. What does it mean to ‘require
confirmation’ of the password?

And then s/he temporarily states their
understanding as next picture



 Story Exploration          Estimation is a part of iteration where tester is using appropriate
                             techniques
 Estimation
                             Story Planning occurs after a story has been estimated and be
 Story Planning             placed in iteration. Details of test tasks defined as
 Story Progression          1. Prepare test data     2. Extend acceptance test
 Story Acceptance           3. Execute manual        4. Automate CI tests
What are Testing Activities in Product Development?
 If acceptance criteria are not in
place, agile teams may collaborate
on writing acceptance tests during
story planning

 Tester can select acceptance
tests   for    automation.       Not     all
acceptance tests will be automated

Ex: for Forgot Password story, team may
have scenario as next picture for acceptance
test


 Story Exploration              Story Progression: uncover additional tests that reply on
 Estimation                     exploratory testing and communication. Conducting testing while
                                 monitor results from CI system
 Story Planning
 Story Progression              Story acceptance: “done” in test may be understood as all tests
                                 pass or level of test automation is met
 Story Acceptance
What are documents of testing in Agile Project?
Agile in common, or Scrum/ Kanban in
particular, is focused on how to deliver
                                                As a part of process, testing in Agile has
value to customer by involving customer                 lightweight documentation with:
(that presented by Product Owner) in
whole process; transferring product to
live (production) environment to bring          Use reusable checklists to
benefits to business soon as possible                                  suggest tests
and expect changes to maximize

                                                 Focus on essential of test
customer business value. While Agile
reduces documentation overhead by
simplifying process and number of
artifacts created                          rather than the incidental details


                                                    Capture test ideas for
                                                              Exploratory Testing
                                           In case test-cases required, they should be
                                           created at high level
                                           If any, leverage one artifact for Manual and
                                           Automation Tests

                                                                                     34
How to track bugs in Agile Process?
              Do or Do Not need Bug Tracking.
             No bug Tracking is still working well when testers perform their tests
             in Dev environment

             However, in Test environment, testers need to track bugs because they
             don’t see fixes for a while

             With Bug Tracking, any bugs which are identified (opened) by
             developers also will be regress tested by testers. Then test scripts will
             be updated to cover the case

             Ultimately, bugs can be prioritized with stories

             Keep in mind, in Agile, testing is not concrete phase. It is a part of
             development



                Development                                     Development &
                                                                   Testing
                                      Testing                                    35
Agile Testing
 Techniques



                36
What are Agile Testing Techniques? Quadrants
   Automation &
                                               Business Facing                              Manual
   Manual Test                                                                               Test
                                                                   Exploratory Testing
                    Functional Testing
                                                                       Scenario Test
                          Story Test
                                                                       Usability Test
                        Prototypes Test
Support the team




                                                                                                 Critique Product
                                                                   User Acceptance Test




                        Unit Testing                       Performance & Load Testing

                    Unit tests combined with                          Performance Test
                          Test coverage                                   Load Test
                                                                        Security Test
                                                                                          Special Tool &
       Automation
                                                                                           Automation
          Test
                                               Technology Facing                              Test
                                                                                                         37
What are Agile Testing Techniques?
              As typical testing, black box testing is used.
              Agile testing is focus on using
               Automation testing techniques
               Test driven development, auto builds and continuous regression test
               daily all reply on automation and will not work without it. And
               acceptance test is carried out each Sprint that automation also has
               benefits

               Exploratory testing technique
               This technique simultaneous learning, test design and test execution.
               While the software is being tested, the tester learns things that
               together with experience and creativity generates new good tests to
               run.

               Scenario testing technique
               Use real-world scenarios that exercise multiple stories

               Don’t think of Exploratory is Agile Testing – it is only one of Agile
               testing approaches                                               38
What are Agile Testing Techniques? Exploratory
                          An example of Exploratory testing
                      technique.
                      User Story
                      As an online shopper, I want to be able to delete
                      items from my shopping cart

                      Exploratory is kind of creativity techniques
                      We start with thinking of some personas or
                      characters and devise exploratory scenarios which
                      role may get into. Ex:

                      1. Senior citizen who never shopped on web
                      2. Hacker looking for troubles
                      3. Internet-savvy teen

                      For each role, behaviors will be different to have
                      cases of testing generated and tested



                                                                   39
References

                                       Scrum and Kaban at InfoQ
                                            http://www.infoq.com/

                                              Testing Experience
                                   http://www.testingexperience.com/

                                        Mountain Goat Software
                              http://www.mountaingoatsoftware.com/

                       Agile Estimating and Planning – Mike Cohn

              User Stories Applied: For Agile Software Development




                                                                       40
Recommended useful tool for Agile Team
            - the ultimate screenshot capture software designed specifically for
   testers that:
   -     Snap a single screenshot or record a sequence of screens
   -     Automatically generate intelligent step-by-step narration (defect report)
   -     Auto submit tickets to defect tracking and ALM systems

            - calling for BETA user - Full featured Test Management System to
   give testers a simple yet productive working environment. Some of the qTest
   features and modules include:
   -      Test Planning
   -     Requirement Management
   -     Test Case Management
   -     Test Execution
   -     Defect Tracking
   -     Dashboards and Reports
   -     Built in workflows and collaboration

   Get the tools as free download at http://www.qasymphony.com/
                                                                                 41
Thank You

            Welcome your questions
                 Agile
                 Project   1
                 Scrum &   2
                 Kanban

                 Agile     3
                 Testing
                 Others    4


                                     42

Weitere ähnliche Inhalte

Was ist angesagt?

What is scrum in Agile methodology?
What is scrum in Agile methodology?What is scrum in Agile methodology?
What is scrum in Agile methodology?Mario Lucero
 
Scrum 101
Scrum 101Scrum 101
Scrum 101beLithe
 
ScrumMaster vs Project Manager
ScrumMaster vs Project ManagerScrumMaster vs Project Manager
ScrumMaster vs Project ManagerAgileDad
 
Scrum guide presentation (Scrum Guide in easy to read PPT format)
Scrum guide presentation (Scrum Guide in easy to read PPT format)Scrum guide presentation (Scrum Guide in easy to read PPT format)
Scrum guide presentation (Scrum Guide in easy to read PPT format)Aloke Bhattacharya
 
Scrum Agile Methodlogy
Scrum Agile MethodlogyScrum Agile Methodlogy
Scrum Agile MethodlogyBahaa Farouk
 
Introduction To Scrum
Introduction To ScrumIntroduction To Scrum
Introduction To ScrumDave Neuman
 
Agile Scrum Methodology
Agile Scrum MethodologyAgile Scrum Methodology
Agile Scrum MethodologyRajeev Misra
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.pptMohan Late
 
Scrum Training (One Day)
Scrum Training (One Day)Scrum Training (One Day)
Scrum Training (One Day)beLithe
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrumPrudentialSolutions
 
What does a Scrum Master do, or should do, all day?
What does a Scrum Master do, or should do, all day? What does a Scrum Master do, or should do, all day?
What does a Scrum Master do, or should do, all day? Stefania Marinelli
 
Agile - Scrum Presentation
Agile - Scrum PresentationAgile - Scrum Presentation
Agile - Scrum Presentationgihanlsw
 

Was ist angesagt? (20)

2017 Scrum by Picture
2017 Scrum by Picture2017 Scrum by Picture
2017 Scrum by Picture
 
What is scrum in Agile methodology?
What is scrum in Agile methodology?What is scrum in Agile methodology?
What is scrum in Agile methodology?
 
What Is Agile Scrum
What Is Agile ScrumWhat Is Agile Scrum
What Is Agile Scrum
 
Scrum 101
Scrum 101Scrum 101
Scrum 101
 
Agile & Scrum Training
Agile & Scrum TrainingAgile & Scrum Training
Agile & Scrum Training
 
Scrum: Scrum Guide Summary
Scrum: Scrum Guide SummaryScrum: Scrum Guide Summary
Scrum: Scrum Guide Summary
 
ScrumMaster vs Project Manager
ScrumMaster vs Project ManagerScrumMaster vs Project Manager
ScrumMaster vs Project Manager
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Scrum Process
Scrum ProcessScrum Process
Scrum Process
 
Scrum guide presentation (Scrum Guide in easy to read PPT format)
Scrum guide presentation (Scrum Guide in easy to read PPT format)Scrum guide presentation (Scrum Guide in easy to read PPT format)
Scrum guide presentation (Scrum Guide in easy to read PPT format)
 
Scrum Agile Methodlogy
Scrum Agile MethodlogyScrum Agile Methodlogy
Scrum Agile Methodlogy
 
Introduction To Scrum
Introduction To ScrumIntroduction To Scrum
Introduction To Scrum
 
Scrum framework
Scrum frameworkScrum framework
Scrum framework
 
Agile Scrum Methodology
Agile Scrum MethodologyAgile Scrum Methodology
Agile Scrum Methodology
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.ppt
 
Seminar On Scrum
Seminar On  ScrumSeminar On  Scrum
Seminar On Scrum
 
Scrum Training (One Day)
Scrum Training (One Day)Scrum Training (One Day)
Scrum Training (One Day)
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrum
 
What does a Scrum Master do, or should do, all day?
What does a Scrum Master do, or should do, all day? What does a Scrum Master do, or should do, all day?
What does a Scrum Master do, or should do, all day?
 
Agile - Scrum Presentation
Agile - Scrum PresentationAgile - Scrum Presentation
Agile - Scrum Presentation
 

Andere mochten auch

Agile Testing Process
Agile Testing ProcessAgile Testing Process
Agile Testing ProcessIntetics
 
There and back again, Our journey with QA Reports and metrics
There and back again, Our journey with QA Reports and metricsThere and back again, Our journey with QA Reports and metrics
There and back again, Our journey with QA Reports and metricsZbyszek Mockun
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projectssriks7
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterDeclan Whelan
 
Shift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceShift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceZbyszek Mockun
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategytharindakasun
 

Andere mochten auch (8)

Agile Testing Process
Agile Testing ProcessAgile Testing Process
Agile Testing Process
 
There and back again, Our journey with QA Reports and metrics
There and back again, Our journey with QA Reports and metricsThere and back again, Our journey with QA Reports and metrics
There and back again, Our journey with QA Reports and metrics
 
Introduction to Plants PPT
Introduction to Plants PPTIntroduction to Plants PPT
Introduction to Plants PPT
 
Testing in Agile Projects
Testing in Agile ProjectsTesting in Agile Projects
Testing in Agile Projects
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
 
Shift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality AssuranceShift left as first transformation step into Quality Assurance
Shift left as first transformation step into Quality Assurance
 
Agile Testing Strategy
Agile Testing StrategyAgile Testing Strategy
Agile Testing Strategy
 
Agile Testing by Example
Agile Testing by ExampleAgile Testing by Example
Agile Testing by Example
 

Ähnlich wie Introduction to Agile software testing

Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012MrAlexRosales
 
Managing Scope Time Cost And Team In Agile
Managing Scope Time Cost And Team In AgileManaging Scope Time Cost And Team In Agile
Managing Scope Time Cost And Team In Agilemlaulin
 
Scrum methodology
Scrum methodology Scrum methodology
Scrum methodology C.T.Co
 
Introduction to scrum
Introduction to scrumIntroduction to scrum
Introduction to scrumWilliam Simms
 
Agile-Scrum Methodology-An Introduction
Agile-Scrum Methodology-An IntroductionAgile-Scrum Methodology-An Introduction
Agile-Scrum Methodology-An IntroductionXBOSoft
 
Beginning SCRUM for Startups
Beginning SCRUM for StartupsBeginning SCRUM for Startups
Beginning SCRUM for StartupsPradeep Sethi
 
Customized Scrum
Customized ScrumCustomized Scrum
Customized ScrumAbdul Karim
 
Introduction to Scrum
Introduction to ScrumIntroduction to Scrum
Introduction to Scrumbarrst
 
Scrum - A different approach to project management
Scrum - A different approach to project managementScrum - A different approach to project management
Scrum - A different approach to project managementAndres Vargas
 
Project management
Project managementProject management
Project managementSSA KPI
 
PMI-ACP Lesson 2 : Scrum
PMI-ACP Lesson 2 : ScrumPMI-ACP Lesson 2 : Scrum
PMI-ACP Lesson 2 : ScrumSaket Bansal
 

Ähnlich wie Introduction to Agile software testing (20)

Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012
 
Managing Scope Time Cost And Team In Agile
Managing Scope Time Cost And Team In AgileManaging Scope Time Cost And Team In Agile
Managing Scope Time Cost And Team In Agile
 
Scrum methodology
Scrum methodology Scrum methodology
Scrum methodology
 
Introduction to scrum
Introduction to scrumIntroduction to scrum
Introduction to scrum
 
Scrum wall images by tobias mayer
Scrum wall images by tobias mayerScrum wall images by tobias mayer
Scrum wall images by tobias mayer
 
Introduction to scrum & agile
Introduction to scrum & agileIntroduction to scrum & agile
Introduction to scrum & agile
 
Agile intro module 1
Agile intro   module 1Agile intro   module 1
Agile intro module 1
 
Agile-Scrum Methodology-An Introduction
Agile-Scrum Methodology-An IntroductionAgile-Scrum Methodology-An Introduction
Agile-Scrum Methodology-An Introduction
 
Scrum Training
Scrum TrainingScrum Training
Scrum Training
 
Scrum training
Scrum trainingScrum training
Scrum training
 
Scrum Overview
Scrum OverviewScrum Overview
Scrum Overview
 
Beginning SCRUM for Startups
Beginning SCRUM for StartupsBeginning SCRUM for Startups
Beginning SCRUM for Startups
 
Customized Scrum
Customized ScrumCustomized Scrum
Customized Scrum
 
Introduction to Scrum
Introduction to ScrumIntroduction to Scrum
Introduction to Scrum
 
Scrum - A different approach to project management
Scrum - A different approach to project managementScrum - A different approach to project management
Scrum - A different approach to project management
 
Project management
Project managementProject management
Project management
 
Agiletools
AgiletoolsAgiletools
Agiletools
 
Agile intro module 1
Agile intro   module 1Agile intro   module 1
Agile intro module 1
 
Introduction to Scrum - Agile Methods
Introduction to Scrum - Agile MethodsIntroduction to Scrum - Agile Methods
Introduction to Scrum - Agile Methods
 
PMI-ACP Lesson 2 : Scrum
PMI-ACP Lesson 2 : ScrumPMI-ACP Lesson 2 : Scrum
PMI-ACP Lesson 2 : Scrum
 

Mehr von KMS Technology

A journey to a Full Stack Tester
A journey to a Full Stack Tester A journey to a Full Stack Tester
A journey to a Full Stack Tester KMS Technology
 
React & Redux, how to scale?
React & Redux, how to scale?React & Redux, how to scale?
React & Redux, how to scale?KMS Technology
 
Common design principles and design patterns in automation testing
Common design principles and design patterns in automation testingCommon design principles and design patterns in automation testing
Common design principles and design patterns in automation testingKMS Technology
 
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOpsKMS Technology
 
What's new in the Front-end development nowadays?
What's new in the Front-end development nowadays?What's new in the Front-end development nowadays?
What's new in the Front-end development nowadays?KMS Technology
 
JavaScript - No Longer A Toy Language
JavaScript - No Longer A Toy LanguageJavaScript - No Longer A Toy Language
JavaScript - No Longer A Toy LanguageKMS Technology
 
JavaScript No longer A “toy” Language
JavaScript No longer A “toy” LanguageJavaScript No longer A “toy” Language
JavaScript No longer A “toy” LanguageKMS Technology
 
Preparations For A Successful Interview
Preparations For A Successful InterviewPreparations For A Successful Interview
Preparations For A Successful InterviewKMS Technology
 
Introduction To Single Page Application
Introduction To Single Page ApplicationIntroduction To Single Page Application
Introduction To Single Page ApplicationKMS Technology
 
AWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic BeanstalkAWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic BeanstalkKMS Technology
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...KMS Technology
 
Technology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsTechnology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsKMS Technology
 
Contributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project SeminarContributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project SeminarKMS Technology
 
Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014KMS Technology
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberKMS Technology
 
Software Technology Trends in 2013-2014
Software Technology Trends in 2013-2014Software Technology Trends in 2013-2014
Software Technology Trends in 2013-2014KMS Technology
 

Mehr von KMS Technology (20)

A journey to a Full Stack Tester
A journey to a Full Stack Tester A journey to a Full Stack Tester
A journey to a Full Stack Tester
 
React & Redux, how to scale?
React & Redux, how to scale?React & Redux, how to scale?
React & Redux, how to scale?
 
Sexy React Stack
Sexy React StackSexy React Stack
Sexy React Stack
 
Common design principles and design patterns in automation testing
Common design principles and design patterns in automation testingCommon design principles and design patterns in automation testing
Common design principles and design patterns in automation testing
 
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
 
KMSNext Roadmap
KMSNext RoadmapKMSNext Roadmap
KMSNext Roadmap
 
KMS Introduction
KMS IntroductionKMS Introduction
KMS Introduction
 
What's new in the Front-end development nowadays?
What's new in the Front-end development nowadays?What's new in the Front-end development nowadays?
What's new in the Front-end development nowadays?
 
JavaScript - No Longer A Toy Language
JavaScript - No Longer A Toy LanguageJavaScript - No Longer A Toy Language
JavaScript - No Longer A Toy Language
 
JavaScript No longer A “toy” Language
JavaScript No longer A “toy” LanguageJavaScript No longer A “toy” Language
JavaScript No longer A “toy” Language
 
Preparations For A Successful Interview
Preparations For A Successful InterviewPreparations For A Successful Interview
Preparations For A Successful Interview
 
Introduction To Single Page Application
Introduction To Single Page ApplicationIntroduction To Single Page Application
Introduction To Single Page Application
 
AWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic BeanstalkAWS: Scaling With Elastic Beanstalk
AWS: Scaling With Elastic Beanstalk
 
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
Behavior-Driven Development and Automation Testing Using Cucumber Framework W...
 
KMS Introduction
KMS IntroductionKMS Introduction
KMS Introduction
 
Technology Application Development Trends For IT Students
Technology Application Development Trends For IT StudentsTechnology Application Development Trends For IT Students
Technology Application Development Trends For IT Students
 
Contributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project SeminarContributors for Delivering a Successful Testing Project Seminar
Contributors for Delivering a Successful Testing Project Seminar
 
Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014Increase Chances to Be Hired as Software Developers - 2014
Increase Chances to Be Hired as Software Developers - 2014
 
Behavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using CucumberBehavior Driven Development and Automation Testing Using Cucumber
Behavior Driven Development and Automation Testing Using Cucumber
 
Software Technology Trends in 2013-2014
Software Technology Trends in 2013-2014Software Technology Trends in 2013-2014
Software Technology Trends in 2013-2014
 

Introduction to Agile software testing

  • 1. An Introduction to Agile Software Testing 1
  • 2. Course Objectives After this seminar, you will:  Understand what an Agile project  Know the differences between Kanban and Scrum  Understand what and how a tester performs the testing in Scrum process  Understand what testing techniques required for a tester in Agile  Know what challenges of Agile Software Testing 2
  • 3. Course Content  What is an Agile Project?  What are Scrum and Kanban?  What are Scrum & Kanban Processes?  What are testing Activities in Scrum?  What are Agile Testing Techniques? 3
  • 4. What is an Agile Project? All projects are “agile”, but some agile projects are more agile than others In practice, “Agile” labeled How to “agile” a project to projects that its delivery of An Agile purist would point to agile manifesto and each increment taking no its principles longer 4 weeks Individuals and interactions over process and tools Is it met level of agility?  Working SW over comprehensive documents  Customer collaboration over contract negotiation  Responding to change over following a plan 4
  • 5. Agile Project An introduction of Scrum and Kanban 5
  • 6. What is Scrum? Scrum in 100 words • Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. • It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month). • The business sets the priorities. Teams self-organize to determine the best way to deliver the highest priority features. • Every two weeks to a month anyone can see real working software and decide to release it as is or continue to enhance it for another sprint. 6
  • 7. What is Scrum? - Principles 9 Scrum principles Scrum contains sets of principles (some of them required while others are optional) and predefined roles (1)Demo (2)Sit together (3)Daily Scrum (4)Retrospective (5)Sprint backlog (6)Product Backlog (7)Sprint planning meetings (8)Time-boxed iterations (9)Definition of Done 7
  • 8. What is Kanban? Kanban in 100 words Visualize the workflow Split the work into pieces, write each item on a card and put on the wall. Use named columns to illustrate where each item is in the workflow.. Limit Work In Progress (WIP) – assign explicit limits to how many items may be in progress at each workflow state Measure the lead time (average time to complete one item, sometimes called “cycle time”), optimize the process to make lead time as small and predictable as possible 8
  • 9. Kanban vs Scrum Board Kanban and Scrum Board V.S. Scrum and Kanban over time V.S. Scrum resists change within V.S. Kanban limits number of items an Iteration in workflow state 9
  • 10. An introduction of Scrum Process 10
  • 11. What is Scrum process? Scrum Roles Key Artifacts Ceremonies Process Sprint planning Product Backlog • Hosted by Scrum Master Product • Requirements – user stories • Pick highest priority items in Backlog • Desired work Product backlog and the team turns • Prioritized by Product Owner the items into Sprint Backlog • Anybody can add to it Product Owner • Estimate sprint backlog in hours Sprint – 2-4 weeks • Work breakdown Sprint Goal Sprint Planning Sprint Goal • Summary of focused work in • Declare Sprint Goal sprint Daily Scrum Sprint • Declared by Product Owner • Accepted by team • Hosted by Scrum Master Daily Scrum Backlog • 15 minutes - same time every day Scrum Master Blocks Sprint Backlog • Not for problem solving • Team signs up for work of • 3 questions in meeting: (1) What Daily Work their own – work never Product did you do? (2) What will you do? assigned (3) What’s in your way? • Owned/managed by the team • Estimated work remaining is • Team updates sprint backlog updated daily Sprint Review/ Sprint Review Blocks List • Hosted by Scrum Master – 2-4 hours Retrospective Scrum Team • List of blocks & unmade • Accomplishments decisions • Whole team participants (max – 9) • Owned by Scrum Master • Updated daily • Take form of demo for features Product Sprint Retrospective Burndown chart Backlog • Hosted by SM – 15-30 minutes • Effort spent over period • Stories/ features completed • Discuss on “Start doing”, “Continue 11 doing” and “Stop doing”
  • 12. What are roles in Scrum? Product Owner (PO) is a Scrum Master represents The Team client’s representation Management 5-9 members Define features of product Enacting Scrum values Including: developers, Decide Release Date and testers, designers,… Ensure team’s productivity content Full time Prioritize features according Prioritize features to market value Work Self-organizing according to market value  Membership should be Corporate across all roles Be responsible for the and functions changed each sprint profitability of product  Shield team from external  Accept or reject work interferences item result A practice for prioritizing features (or User Story) Priority = Max (5 (or 6) x priority that assigned by PO, sum (priority that assigned by team members) 12
  • 13. What are roles of tester in Scrum? There is NO tester in formal Scrum Process Testing is carried out by developer with Unit Test •Test Driven Development means testing executed before development and refactoring performed to optimize development •Testing coverage  Testing is carried out by Product Owner/ Client •Frequently testing by Product Owner – each sprint •Testing Acceptance Criteria Isn’t it really necessary tester position in Scrum? What happens without tester? No future for tester? 13
  • 14. What are roles of tester in Scrum ? (cont.) Are testers obsolete? Questions: • Will developers do acceptance testing well? •Will developers test their work product well? •Is that enough with only one kind of testing – Unit Test? • How to test non-functional requirements? Benefits when have dedicated test team: •Focus on customer usage over technical implementation •Focus on uncovering flaws over confirming completeness 14
  • 15. What are roles of tester in Scrum? (cont.) • Participant in Release/ Sprint Planning • Support developers in Unit Testing – say them about testing view instead of development view • Test User Story when completed, last gate to confirm testing completeness • Collaborate with customer and Product Owner to define acceptance criteria • Provide positive feedback to customer • Develop automation testing 15
  • 16. Testing Activity in Scrum & Kaban Process 16
  • 17. What are Testing Activities in Scrum Process? Process Tester must know what model of cadence used Product cadence Backlog single Sprint – 2-4 weeks cadence Three Sprint Planning Sprint Goal Sprint Daily Scrum Backlog Blocks Driven Daily Work Product event In Sprint Planning: Sprint Review/ Retrospective • As a tester, he/she says what should be picked from Product Backlog for this Sprint to bring value to customer & to create high performance Product •As a tester, he/she says how many hours should have Backlog to complete testing for each of selected User Stories •As a tester, he/she must understand what sprint goals • As a tester, involves into the prioritizing process17
  • 18. What are Testing Activities …? – estimate effort Effort Estimate techniques: Heuristic (expert judgment based) Parametric (calculation based) Comparison to similar systems  Function Points  Expert Judgment  Use Case Points  Activity Based (top down)  User Story Points  Task Based (bottom up)  Three-point estimate  50/90 estimate In Agile, testers are empowered to make decision. It means they are given authority to estimate effort for each work item that stated in Story Card for Product Owner reviews As a result, testers are responsible for all testing activities that they estimated. 18
  • 19. What are Testing Activities …? – 50/90 estimate 50/90 Estimation Worst case: number of hours (cost) in the worse-case scenario  Most -likely: number of hours (cost) in the Most -likely scenario Total Hours = Most Likely Task variance = (Worst Case (W) – Most Likely (A)) Deviation = sqrt (sum((Wi-Ai)^2)) 19
  • 20. What are Testing Activities …? – 3-point estimate 3 Points Estimate (PERT) Opt: indicates number of hours (cost) in the best-case scenario Pess: indicates number of hours (cost) in the worse-case scenario  Most -likely: indicates number of hours (cost) in the Most -likely scenario PERT = (Opt + 4 x Most-Likely + Pess) / 6 Variance = (Pess – Opt) / 6 20
  • 21. What are Testing Activities …? – User Story Points User Story points (USP)  Story points are a unit of measure for expressing the overall size of a user story, feature, or other piece of work  The raw values assigned are unimportant  Image a story with 2 USP(s) will 2 times bigger than 1-USP one  Two estimation scales or or Velocity is a measure of a team’s rate of progress – Ideal Time The beauty of this is that estimating in story points completely separates the estimation of effort from the estimation of duration If we find that a particular work unit is twice the size we thought. The estimate remains the same, but rate of progress through it will be slower 21
  • 22. What are Testing Activities in Scrum Process? Process Product Backlog Sprint – 2-4 weeks Sprint Planning Sprint Goal Sprint Daily Scrum Backlog In Daily Scrum: Daily Work Blocks • As a tester, he/she joins all daily meeting (standup) Product to speak up 1. what was tested and did yesterday/ progress; Sprint Review/ 2. What will test and do today? Retrospective 3. Any in testing progress •As a tester, he/she can bring any backlog item that cannot be completed in current sprint and put to next Product sprint – EX: I don’t have enough time to execute Backlog testing for item #4. it will be tested in next sprint. 22
  • 23. What are Testing Activities in Scrum Process? Process Product Backlog Sprint – 2-4 weeks In Daily Work: Sprint Planning Sprint Goal • As a tester, he/she is responsible for develop Sprint automation scripts (for automation testing Daily Scrum Backlog •As a tester, he/she schedules automation testing Blocks with Continuous Integration (CI) System. Daily Work Product •As a tester, he/she reviews & reports test results to stakeholders via CI System or by himself/herself. •As a tester, he/she executes non-functional testing Sprint Review/ with approved user stories Retrospective Some organizations, Product Owner does not have enough energy to do acceptance testing each sprint. Tester is hired for this case Product Backlog •As a tester, in end of Sprint, he/she executes UAT and confirms testing completeness for current sprint. 23
  • 24. What are Testing Activities in Scrum Process? In Scrum, Software is integrated daily, build and test each day. Therefore, CI System is deployed to most of Agile Project. A CI System & test components can be identified as below • Hudson / CruiseControl – CI Framework • Junit (for Java)/ Nunit (.Net) – Unit Test • Cobertura (Java)/ NCoverage – Testing Coverage • Ant (for Java)/ Nant (.Net) – Automation Build • SVN – Version Control •Selenium integrated with Hudson - Functional testing In Daily Work, tester will responsible for develop automation scripts, integrate testing automation testing tools/scripts with CI for regression test and UAT As a part of duty, tester is playing role supporter in helping developers create Unit Tests effectively and efficient 24
  • 25. What are Testing Activities in Scrum Process? In Daily Work: As a practice, “Done” of sprint can be considered when Code checked in.  Builds ready  Unit Test complete successfully Tester’s supports  80% code branch coverage on UT  Non-functional testing completed (confirmed by testers)  Finish deploying to Production 25
  • 26. What are Testing Activities in Scrum Process? Process Product Backlog Sprint – 2-4 weeks In Review & Retrospective: Sprint Planning Sprint Goal • As a tester, he/she identifies what went right and Sprint what went wrong in current sprint Daily Scrum Backlog •As a tester, he/she identifies lesson learned and Blocks best practices. Daily Work Product •As a tester, he/she is encouraged to write user stories that support testing. EX: As a tester, I need interface with inputs – A, B, C Sprint Review/ to execute testing of feature X. Retrospective •As a tester, he/she is encouraged to write user stories that bring value to customer. Product EX: As a user, I need to be able to sort items. Backlog All these user stories are put to Product Backlog for review and Approved 26
  • 27. What are Testing Activities in Scrum Process? In Review & Retrospective: • Any items remaining will be •Review why tester could NOT complete in current sprint Problem may be identified by lacking of experience in estimate or any roadblock prevented it completed. Whatever reason identified will be noted as lesson learned •Put to next sprint for continuing testing • Any roadblock comes from lacking of support of Product Owner, should be pointed out for Scrum Master’s follow-up To bring effectiveness and efficiency to review sessions, Scrum Master should request participants to prepare list of items/ issues at least 1 day prior to meeting date 27
  • 28. What are Testing Activities in Kanban Process? Kanban is less prescriptive than Scrum All testing activities are similar with Scrum No required time-boxed iteration •Testing is not limited by time duration •Accept changes at anytime – Scrum protects changing backlog items in sprint while Kanban still accepts removing and adding new items • Testing item in workflow state can be added or removed to get the most effectiveness and efficiency. Kanban limits number of items for each workflow state •Testing items should be picked logically to put to workflow stated 28
  • 29. What are Testing Activities in Kanban Process? An Example of Managing Tasks/ Work Item 1. Backlog: state all work items/ user stories translated into tasks - As a characteristic of Backlog may be limited number of items 2. Ready: List of work items that ready for executing 3. Specifics: Identify what criteria to confirm work item completeness 4. Execute: Work Item in executing Tuan completed work item - Next, he moves another work He also moves another work testing for “Sorting Items”. He item – testing for “Filter Items” item from Backlog as a reviews and confirms that it from ready to “execute” to pipeline item. satisfied criteria state. He moves start new work 29 this item to “Done”
  • 30. What are Testing Activities in Product Development? Testing against Testing in live user story environment - UAT Non-functional Unit Testing testing/ confirms Integration Test story is met In Agile, testing is focused on Tester is also responsible for 1. Unit Test that developers need support of testers to testing user story that cannot be create effective set of tests and verified by UT to confirm testing 2. Acceptance Test that the responsibility is belonged to tester completed before demo and release to production. Integration & regression test are executed daily by automation. 30
  • 31. What are Testing Activities in Product Development? Testing against Testing in live user story environment - UAT Non-functional Unit Testing testing/ confirms Integration Test story is met  Story Exploration Communication within an agile team to explore story understanding  Estimation  Consider flows of between Product Owner and team on story  Story Planning  Testers also speak up with questions to clarify any vagueness  Story Progression in the story  Story Acceptance
  • 32. What are Testing Activities in Product Development? EX: For User story: “As a user, I can reset my account password if I forgot my password” Test may have questions relate to this story as follows 1. What does it mean for an email address to be ‘unknown’? 2. What does it mean to ‘require confirmation’ of the password? And then s/he temporarily states their understanding as next picture  Story Exploration Estimation is a part of iteration where tester is using appropriate techniques  Estimation Story Planning occurs after a story has been estimated and be  Story Planning placed in iteration. Details of test tasks defined as  Story Progression 1. Prepare test data 2. Extend acceptance test  Story Acceptance 3. Execute manual 4. Automate CI tests
  • 33. What are Testing Activities in Product Development?  If acceptance criteria are not in place, agile teams may collaborate on writing acceptance tests during story planning  Tester can select acceptance tests for automation. Not all acceptance tests will be automated Ex: for Forgot Password story, team may have scenario as next picture for acceptance test  Story Exploration Story Progression: uncover additional tests that reply on  Estimation exploratory testing and communication. Conducting testing while monitor results from CI system  Story Planning  Story Progression Story acceptance: “done” in test may be understood as all tests pass or level of test automation is met  Story Acceptance
  • 34. What are documents of testing in Agile Project? Agile in common, or Scrum/ Kanban in particular, is focused on how to deliver As a part of process, testing in Agile has value to customer by involving customer lightweight documentation with: (that presented by Product Owner) in whole process; transferring product to live (production) environment to bring Use reusable checklists to benefits to business soon as possible suggest tests and expect changes to maximize Focus on essential of test customer business value. While Agile reduces documentation overhead by simplifying process and number of artifacts created rather than the incidental details  Capture test ideas for Exploratory Testing In case test-cases required, they should be created at high level If any, leverage one artifact for Manual and Automation Tests 34
  • 35. How to track bugs in Agile Process?  Do or Do Not need Bug Tracking. No bug Tracking is still working well when testers perform their tests in Dev environment However, in Test environment, testers need to track bugs because they don’t see fixes for a while With Bug Tracking, any bugs which are identified (opened) by developers also will be regress tested by testers. Then test scripts will be updated to cover the case Ultimately, bugs can be prioritized with stories Keep in mind, in Agile, testing is not concrete phase. It is a part of development Development Development & Testing Testing 35
  • 37. What are Agile Testing Techniques? Quadrants Automation & Business Facing Manual Manual Test Test Exploratory Testing Functional Testing Scenario Test Story Test Usability Test Prototypes Test Support the team Critique Product User Acceptance Test Unit Testing Performance & Load Testing Unit tests combined with Performance Test Test coverage Load Test Security Test Special Tool & Automation Automation Test Technology Facing Test 37
  • 38. What are Agile Testing Techniques?  As typical testing, black box testing is used.  Agile testing is focus on using Automation testing techniques Test driven development, auto builds and continuous regression test daily all reply on automation and will not work without it. And acceptance test is carried out each Sprint that automation also has benefits Exploratory testing technique This technique simultaneous learning, test design and test execution. While the software is being tested, the tester learns things that together with experience and creativity generates new good tests to run. Scenario testing technique Use real-world scenarios that exercise multiple stories Don’t think of Exploratory is Agile Testing – it is only one of Agile testing approaches 38
  • 39. What are Agile Testing Techniques? Exploratory  An example of Exploratory testing technique. User Story As an online shopper, I want to be able to delete items from my shopping cart Exploratory is kind of creativity techniques We start with thinking of some personas or characters and devise exploratory scenarios which role may get into. Ex: 1. Senior citizen who never shopped on web 2. Hacker looking for troubles 3. Internet-savvy teen For each role, behaviors will be different to have cases of testing generated and tested 39
  • 40. References Scrum and Kaban at InfoQ http://www.infoq.com/ Testing Experience http://www.testingexperience.com/ Mountain Goat Software http://www.mountaingoatsoftware.com/  Agile Estimating and Planning – Mike Cohn  User Stories Applied: For Agile Software Development 40
  • 41. Recommended useful tool for Agile Team - the ultimate screenshot capture software designed specifically for testers that: - Snap a single screenshot or record a sequence of screens - Automatically generate intelligent step-by-step narration (defect report) - Auto submit tickets to defect tracking and ALM systems - calling for BETA user - Full featured Test Management System to give testers a simple yet productive working environment. Some of the qTest features and modules include: - Test Planning - Requirement Management - Test Case Management - Test Execution - Defect Tracking - Dashboards and Reports - Built in workflows and collaboration Get the tools as free download at http://www.qasymphony.com/ 41
  • 42. Thank You Welcome your questions Agile Project 1 Scrum & 2 Kanban Agile 3 Testing Others 4 42