The document discusses how a great quality assurance (QA) team can make a disproportionate contribution to project success. It outlines the attributes that define a great QA team, including having domain expertise, working independently and creatively to determine what needs to be done, using tools intelligently, and providing feedback that motivates other teams like developers to improve quality. A great QA team adds value by delivering high quality testing that finds defects early and gives stakeholders clear visibility into a project's quality level and progress.
BDD. The Outer Limits. Iosif Itkin at Youcon (in Russian)
How a Great QA Team can make a Disproportionate Contribution to Project Success
1. ‘How a Great QA Team can make
a Disproportionate Contribution to Project
Success’
Paper Presented by Mark Ryland
2. Presentation Contents
1. Introduction
2. Project Lifecycle & Team Constituents
3. Team Dynamics
4. Typical QA
5. Great QA
3. Mark Ryland’s Credentials
• Close on 20 years large project delivery experience in Wholesale Financial Services
• Banks, exchanges and brokers
• Variety of systems types
• Projects from $10M to $150M
• All of these projects required QA testing
• Involved in building 2 offshore testing centres
• Schooled in QA testing best practise
4. Example Scope From Building
QA Centre
‘Location QA’ - ‘end to end’ testing with location
specific downstream systems
On-shore user acceptance testing ( executed by user
representatives)
Test execution ( system, regression, new functionality)
Off-shore
Maintenance of regression test cases
Test automation development
l oo Tt net si s no C
e T det a mt u A
Tt net si s no C
na Ml e W
o
na Ml e W
no t uce x E
l
l
i
5. Project Team v Lifecycle
Conception Initiation Development Test Implement
Project Sponsor
Project Manager
Business Analyst
Architect/Designer
Development Team
QA Team
Production Team
8. ‘Typical/Normal’ QA Experience
1. Doesn’t fully understand project objectives
2. Lacks detailed domain knowledge
3. Consumes lots of management & BA time
4. Is a bottleneck - test execution cycles take too long
5. Not flexible in dealing with unplanned change
6. Test coverage and quality is not good enough
7. QA team measure their success on how many test cases were executed (as
opposed to the value of them)
9. Attributes of a Great QA Team
1. The basics
2. Domain experts
3. Works out for itself what needs to be done
4. High calibre, motivated staff, stable team
5. Intelligent use of tools to speed up test execution/improve
6. Only raise genuine defects
7. A peer to other parts of the project team
10. Attributes of a Great QA Team
Cont….
8. Energy and diligence
9. Flexible orientation of test effort
10. Responsive to changes in project priorities
11. Disciplined organisation of the test environment
12. Creative
13. Independent & Objective
Adds Up to Making a ‘Real’ Contribution to Quality
& Hence Project Success
11. Measuring QA Team
Effectiveness
1. High
Quality Staff
9. Bespoke
Automation 2. Domain
Tools Available Knowledge
8. Detailed
Management of 3. Level of
Test Environment Energy
Enthusiasm &
Proactivity
7. Test Case
Quality 4. Planning &
Delivering Ability
6. Test 5. Creativity &
Process Flexibility in Problem
Effectiveness Solving
12. Independence & Objectivity
1. Understanding of Requirement
End
Business Manager Business Analyst Designer Devel –oper
Users
2. Delivery of Solution
3A. Independent
Measurement by
QA Team
3B. Independent Measurement by High Quality QA Team
13. Team Dynamics When the QA
Team is Excellent
1. Developers try harder to get it right in the first place
2. Developers get rapid/timely feedback on what’s wrong
3. Developers are work harder to solve defects to keep the project on track
4. Project sponsors get clear visibility on quality level and progress
5. Project designers and analysts are have clear problem statements to work from
6. Have (justified) confidence in the system – that will feed through to the users
7. Fewer problems are going to found in live & hence the project will cost less
Talk Synopsis ‘ How a great QA Team can make a Disproportionate Contribution to Project Success’ Intro Explore project team dynamics – how the different parts of the team work together – focussing on the contribution that QA can make Have in mind financial services electronic trading platforms
Describe sections
Close on 20 years large project delivery experience in Wholesale Financial Services Companies include: UBS, Credit Suisse, Bank of America Merrill Lynch (BAML), HSBC, Swiss Stock Exchange, London Stock Exchange Group, Newedge Systems Include: Sell side order and execution management, market access, position keeping & risk, matching engines, messaging infrastructures, post trade Projects from $10M to $150M All of these projects required QA testing Along the way was involved in building 2 offshore testing centres from scratch one at BAML (though Tata CS) the other at HSBC (Captive) Schooled in QA testing best practise
All large projects that are realised are the result of a team effort Never seen a successful project that did not rely on stong contributions from several parts of the project team Challenging projects call out something extra and it’s usual to see some individuals make outstanding contributions to the whole Observing and being part of that is one of the most rewarding aspects of large project work = buzz, camaraderie, satisfaction of doing an excellent job
Proposition for the Talk Thesis is that certain parts of the project can provide an exceptional contribution that raises the game of the others Look for image of a race with a pace maker The pace maker carries everyone else forward, others need to make an effort to keep up otherwise they can fall behind In the analogy the paced could come from any part of the project team You might expect it to come from the sponsor or the development manager of project manager or maybe the architect or lead analyst – in fact in a well performing team its likely to come from more that one place, but my thesis is that one of the places it can come from if the QA team Almost no-one would think it can come from there
QA Team Place within the Overall Team The general norm in my experience in that the QA team doesn’t make an outstanding contribution to success Typically the QA team is lagging;- doesn’t fully understand the project objectives, lacks detailed understanding, is a bottleneck in that test execution cycles take too long and become the critical path on the project, is not flexible enough to deal with unplanned changes, consumes lots of management time needing to be ‘spoon fed’ and there is a nagging feeling that despite best efforts the test coverage and quality is not good enough, QA team measure their own success on how many test cases were executed (as opposed to the value of them) - often the most frustrating aspect of project delivery This is ‘normal’ QA Results from; inexperience, poor domain knowledge low calibre staff, poor staff retention, industry standard test tools, ‘T&M’ business model, buying based on day rate
It Doesn’t Have to Be Like That Recent experience much better The basics: Clear planning, risk based testing, well organised test case library, test execution management tool, defect reporting database, test data management Domain experts already e.g. FIX, exchanges characteristics of products, attributes of similar preceding platforms Works out for itself what needs to be done & proposed that to the other members of the project team High calibre, motivated staff, stable team Intelligent use of tools to speed up test execution/improve coverage & has invested in a bank of specialist tools for the specific scenario Only raise genuine defects and communicate those clearly Be a peer to other parts of the project team
Apply energy and diligence Flexible orientation of test effort to different parts of the platform as needed Responsive to changes in project priorities – either externally driven or as a result of problems being found Disciplined organisation of the test environment Creative – comes up with suggestions and solutions to move the project forward – these may be outside of the domain where one would normally expect the QA team to operate Independence & Objectivity
Independence and Objectivity Subject to human interpretation & relationships - someone may say something is fine or not because they like or are influenced by the presentation Some project team members may ‘sell’ the results of the work, be arrogant or fail to understand what is really needed Benefits in independence of QA Gives a ‘Measurement’ on status of delivery which is quite distinct from how anybody might ‘spin’ the progress A great QA team can bring insight beyond the brief and specs they have been given and pick up things that have been missed by others The most useful feedback is objective, but that’s not easy; Challenges of objectivity Really need to understand the detail of how is supposed to work Defects articulated clearly with necessary supporting evidence Communicate based on facts not supposition Reserve judgement Consistency All of the above leads to earning respect
Developers are going to try harder to get it right in the first place Developers are going to get rapid/timely feedback on what’s wrong Developers are going to work harder to solve defects to keep the project on track Project sponsors are going to have clear visibility or quality level and progress Project designers and analysts are going to have clear problem statements to work from When the system goes live the project team is going to have (justified) confidence in the system – that will feed through to the users Fewer problems are going to found in live (where they are much more expensive to fix) & hence the project will cost less
Conclusion A great QA Team can make a Disproportionate Contribution to Project Success