How to organize qa process in agile speed

22
Prepared by Svetlana Dubyk 06-07-2011 “How to organize QA process in Agile speed: Scrum and QA. Part II”

description

 

Transcript of How to organize qa process in agile speed

Page 1: How to organize qa process in agile speed

Prepared by Svetlana Dubyk06-07-2011

“How to organize QA process in Agile speed: Scrum and QA. Part II”

Page 2: How to organize qa process in agile speed

Agenda

4. Problems QA and Scrum team are faced to and ways to solve them

1. Project and Team structure

2. What we do and how we work

3. QA activities in Scrum team

Page 3: How to organize qa process in agile speed

Team 2

Team 1

Core team

Product Owner

Team 3

Release managers

Product Owner

Business

Kiev Copenhagen

Project structure

Product Owner

Page 4: How to organize qa process in agile speed

Team

PHP developer

ScrumMaster/ PHP developer

PHP developer

PHP developer

PHP developer

PHP developer

Frontend developer

PHP developer QA

Product Owner

Business

Kiev Copenhagen

Team structure

Page 5: How to organize qa process in agile speed

What we do- Support a set of newspaper sites on different platforms

- Make re-design/ re-factoring of existent functionality

BOND

- Create new features, develop new projects

Page 6: How to organize qa process in agile speed

How we work

- Sprint length = 2 weeks;

- Releases are twice per sprint;

What is the leght of the sprint?

How often releases are pushed to live environment?

What types of testing are done?- Functional testing;- UI testing; - Confirmation/ regression testing;- Smoke testing;- Acceptance testing;

What is average length of the tasks?- The average length of the tasks/ tickets are 5 hours;

Page 7: How to organize qa process in agile speed

Supported browsers: - IE 7/8/9; - Mozilla 3.6/ 4; - Chrome; - Safari.

Different environments: - localhost; - labmanager environment; - demo (staging) environment; - live environment. - localhost/ labmanager environment are

updated several times per day; - demo(staging) and live environment are updated twice per sprint.

What environments do we have?

How often environments are updated?

What browsers are supported?

How we work

Page 8: How to organize qa process in agile speed

QA activities in Scrum team - Negotiation quality with the business;

- Clarification of stories/ tasks/ tickets;

- Make accurate estimates for both programming andtesting tasks

- Form an integral part of the continuous feedback loop

- State the alternative strategies, give a forecast of costs

- Help the team produce quality product

- Make sure that acceptance tests verify the quality specified by customer;

Page 9: How to organize qa process in agile speed

Problems QA and SCRUM team are faced to

- Release issues (e.g. frequent releases)- Demo issues (no demo with business)- Communication issues

- Too large tasks;

- Sharing knowledge problems;

- Tasks are added after sprint starts;

- QA work is not tracked in sprint;

- No definition of Done (when to fix found defects); - No time to test all tickets from the sprint;- No time for regression testing;

- Tasks (tickets) are not described well;

Page 10: How to organize qa process in agile speed

Releases issues - Frequent releases

- Use separate branch for tasks that are made during sprint. Release tasks once per sprint;

Solutions:

- Developers spend their time on tickets preparation and testing on demo (staging) and live environments twice per sprint. This effects team velocity;

- QA spends time on tickets confirmation and regression testing on demo (staging) environment and live environment twice per sprint.

- Hard to plan demo for business;

- Critical tickets release as fast tracks;

Related problems:

Page 11: How to organize qa process in agile speed

Related problems:

Releases procedure issues

Solutions:

- Release document is new each time;

- Commit deadlines are new each time;

- Staging environment and live environment are set up at different time each time;

- Create template for release document; - Assign person from the team responsible for communication with release managers;

Page 12: How to organize qa process in agile speed

Demo issues

Related problems:

No scheduled demo with business

Solutions:

- No visibility for business what is done during the sprint;

- No or late feedback from the business;

- Schedule demo once per sprint;- Plan demo scope with team and product owner in advance;

Page 13: How to organize qa process in agile speed

Communication issuesRelated problems:

Solutions:- Estimations for time left to finish the tickets are given on daily morning scrum and put into sprint backlog;

- Inform Product Owner about impediments immediately;

- Inform Product Owner when somebody is AFK;

- Product owner don't see when the tasks are finished; - Product owner waits for answers from team members that are AFK;

- Using of different means of communication: skype, email, gtalk, phone, “remote windows”;

- Product owner doesn't get answer immediatly;

- Inform team members about questions from Product Owner;

Page 14: How to organize qa process in agile speed

Sharing knowledge problemRelated problems:

Solutions:

- Sharing knowledge sessions are organized inside team and between teams;

- Documentation is absent;

- Test documentation (test reports, test check ists, test cases) is created and shared to the team;

- Add information to the wiki;

- Add information to the respective tickets;

- Wiki is supported weakly;

- Create all documents as google docs and share them inside team;

Page 15: How to organize qa process in agile speed

Tasks/ tickets are not described well

- Tickets are misunderstood by developers;

Solutions:

Related problems:

- Not all cases to be fixed are described in the ticket;

- Details from private conversations/ chats/ e-mails are added to the ticket; - Instructions how to set up environment are added to the ticket;

- Instructions how to describe problem are created for the business ;

- Tickets are viewed before/ on estimation session by the team. Ask for details in ticket description as early as possible ; - Create subtasks when additional information arrives and it needs time to fix

Page 16: How to organize qa process in agile speed

Too many tickets (tasks) are added into sprint after it actually starts

- Added tickets into sprint are not estimated;

- Assign 2 persons from team who estimate tickets during sprint;

- Leave a buffer in sprint for tickets that will be added during sprint;

Related problems:

Solutions:

- After new ticket is added into sprint and estimated, discuss with Product Owner what should be unfinished/ out of sprint;

- Priority are changed;

Page 17: How to organize qa process in agile speed

Definition of Done

Related problems:

Solutions:

- When to fix found issues on tasks in progress;

- When task can be marked as Done;

- Task is done when it is fixed and on pushed to production;

- Add testing results into the ticket, create test reports;

- Split tickets into several tasks (when new information is arrived);- Issues that won't be fixed before task is pushed to production are created as separate ticket;

Page 18: How to organize qa process in agile speed

No time to test all tickets from the sprint

- Test tickets starting from the top of sprint backlog with Ready for test status;

- Developers prepare each environment for testing;- Developers test their own tickets;

- No time for full regression testing (and no time for automation);

- Smoke tests of supported sites on demo (staging) and live environment;

Related problems:

Solutions:

- Use separate branch for developing new features/ fixing;

- Developers test each other;

Page 19: How to organize qa process in agile speed

Tasks are too large

- Estimated time for testing and time spent on testing are added into sprint backlog;

Solutions:

QA work is not tracked in sprint backlogRelated problems:

- QA work is not visible to Product Owner;

- Break down tasks into several tasks;

Solutions:

Related problems:

- Not possible to finish task in time;

Page 20: How to organize qa process in agile speed

http://www.slideshare.net/VLDCORP/agile-7905985

Materials usedwww.testingexperience.com

Henrik Kniberg "Scrum and XP from the trench"

http://www.slideshare.net/VLDCORP/agile-4134064

Page 21: How to organize qa process in agile speed

"Testing a product is a learning process."

"Ever Tried. Ever failed. No matter.Try again. Fail again. Fail better."

(Samuel Beckett, "Worstward Ho")

Brian Marick

Page 22: How to organize qa process in agile speed

THANK YOU