Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
How to organize qa process in agile speed
1. “How to organize QA process in Agile speed:
Scrum and QA. Part II”
Prepared by Svetlana Dubyk
06-07-2011
2. Agenda
1. Project and Team
structure
2. What we do and how we work
3. QA activities in Scrum team
4. Problems QA and Scrum team are faced to and
ways to solve them
3. Project structure
Kiev Copenhagen
Team 1 Product Owner
Business
Team 2 Product Owner
Product Owner
Team 3
Core team
Release
managers
4. Team structure
Kiev Copenhagen
Team ScrumMaster/ Product Owner
PHP developer
PHP developer PHP developer
Business
PHP developer PHP developer
Frontend
PHP developer
developer
PHP developer QA
5. What we do
- Support a set of newspaper sites on different
platforms
- Make re-design/ re-factoring of
existent functionality
- Create new features, develop new
projects
BOND
6. How we work
What is the leght of the sprint?
- Sprint length = 2 weeks;
How often releases are pushed to live
environment?
- Releases are twice per sprint;
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;
7. How we work
What environments do we have?
Different environments:
- localhost;
- labmanager environment;
How often environments are updated?
- 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 browsers are supported?
Supported browsers:
- IE 7/8/9;
- Mozilla 3.6/ 4;
- Chrome;
- Safari.
8. QA activities in Scrum team
- Negotiation quality with the business;
- Clarification of stories/ tasks/ tickets;
- Make sure that acceptance tests verify the quality
specified by customer;
- Make accurate estimates for both programming and
testing tasks
- State the alternative strategies, give a forecast of costs
- Form an integral part of the continuous feedback loop
- Help the team produce quality product
9. Problems QA and SCRUM team are
faced to
- Release issues (e.g. frequent releases)
- Demo issues (no demo with business)
- Communication issues
- Sharing knowledge problems;
- Tasks (tickets) are not described well;
- Tasks are added after sprint starts;
- No definition of Done (when to fix found defects);
- No time to test all tickets from the sprint;
- No time for regression testing;
- QA work is not tracked in sprint;
- Too large tasks;
10. Releases issues - Frequent releases
Related problems:
- 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;
Solutions:
- Use separate branch for tasks that are made during sprint. Release tasks
once per sprint;
- Critical tickets release as fast tracks;
11. Releases procedure issues
Related problems:
- 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;
Solutions:
- Create template for release document;
- Assign person from the team responsible for communication with release
managers;
12. Demo issues
No scheduled demo with business
Related problems:
- No visibility for business what is done
during the sprint;
- No or late feedback from the business;
Solutions:
- Schedule demo once per sprint;
- Plan demo scope with team and product owner in advance;
13. Communication issues
Related problems:
- Product owner don't see when the tasks are finished;
- Product owner waits for answers from team members
that are AFK;
- Product owner doesn't get answer immediatly;
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;
- Inform team members about questions from Product Owner;
- Using of different means of communication: skype, email, gtalk,
phone, “remote windows”;
14. Sharing knowledge problem
Related problems:
- Documentation is absent;
- Wiki is supported weakly;
Solutions:
- Sharing knowledge sessions are organized inside team and between teams;
- 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;
- Create all documents as google docs and share them inside team;
15. Tasks/ tickets are not described well
Related problems:
- Tickets are misunderstood by developers;
- Not all cases to be fixed are described in the ticket;
Solutions:
- Details from private conversations/ chats/ e-mails
are added to the ticket;
- Instructions how to set up environment are added to the
ticket;
- 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
- Instructions how to describe problem are created for the business ;
16. Too many tickets (tasks) are added into sprint
after it actually starts
Related problems:
- Added tickets into sprint are not estimated;
- Priority are changed;
Solutions:
- Leave a buffer in sprint for tickets that will be added during
sprint;
- Assign 2 persons from team who estimate tickets during sprint;
- After new ticket is added into sprint and estimated, discuss
with Product Owner what should be unfinished/ out of sprint;
17. Definition of Done
Related problems:
- When to fix found issues on tasks in progress;
- When task can be marked as Done;
Solutions:
- 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;
- Task is done when it is fixed and on pushed to production;
18. No time to test all tickets from the sprint
Related problems:
- No time for full regression testing (and no time for
automation);
Solutions:
- 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;
- Smoke tests of supported sites on demo (staging) and
live environment;
- Use separate branch for developing new
features/ fixing;
- Developers test each other;
19. QA work is not tracked in sprint backlog
Related problems:
- QA work is not visible to Product Owner;
Solutions:
- Estimated time for testing and time spent on
testing are added into sprint backlog;
Tasks are too large
Related problems:
- Not possible to finish task in time;
Solutions:
- Break down tasks into several tasks;