Beruflich Dokumente
Kultur Dokumente
The Marriage of
Agile and Test
Management
Brian Massey, Sr. Product Manager, IBM
Who Am I
Product Manager
No worries – not here to sale you anything (but to ensure the kids
get fed I have to mention them)
The fight is on
3
The Marriage
5
Agile Defined !
Agile software development refers to a group of
software development methodologies that promotes
development iterations, open collaboration, and
process adaptability throughout the life-cycle of the
project.
Things are done in small increments, with minimal
planning, rather than plan at length.
Project adapts to changes
Emphasis on stakeholder involvement.
Agile Principles 6
Customer satisfaction by rapid, continuous delivery of
useful software
Working software is delivered frequently (weeks rather
than months)
Working software is the principal measure of progress
Even late changes in requirements are welcomed
Close, daily cooperation between business people and developers
Face-to-face conversation is the best form of communication (Co-
location)
Projects are built around motivated individuals, who should be trusted
Continuous attention to technical excellence and good design
Simplicity
Self-organizing teams
Regular adaptation to changing circumstances
Agile -- IBM/Rational System Test Team? 7
7
9
Test Driven Development (TDD) 10
The fight is on
11
12
Development Lifecycle Methodologies
Generic “V” cycle
12
Agenda
13
14
Business Basics
Test Early, Test Often
Find Bugs?
Validate Specs?
To break things?
The fight is on
IBM Agile Project
18
19
Agile Testing vs. Traditional Testing
www.ambysoft.com/essays/whyAgileWorksFeedback.htm
19
The Extremes 20
21
Approaches to Quality
• Linear, Sequential
• QA planning occurs late
• No test case review
• Emphasis on bug fixing
Continuous Testing in an 22
Agile Environment
Release
Definition
(RDD / PRD)
QA Signoff
QA Plan \ QA Feature
Author Feature Feat. System Product
Automation Test
Test Cases WOs Test Release
Plan Execution
Agenda
The fight is on
23
IBM SVT Agile practices 24
Solution:
Constant Development and Test collaboration
Daily SCRUM meetings
Better use case development
Internal customer adoption as well as external deliverables and stakeholders
Tools Used:
ReqPro for tracking integrations and requirements
CQ for defect management
RFT and RPT for automation
RMT and CQTM for manual testing
Reuse of artifacts from RAD and the RAM environment as a system under test
25
26
More about testing iterations
Establish function and system testing goals for iterations
When do you plan to run your performance benchmarks? Scalability runs? Identify those
major areas of focus for each iteration including documentation, install, and
comsumability.
Target regression testing of various areas across iterations. Ensure that previously released
function is working.
For the last iteration, most development teams are only be fixing defects and
reacting to customer change requests
Agenda
The fight is on
27
The Importance of Test Management
28
Integrations 29
Not saying
We have no process/strategy
Only do Spray and Pray testing
We have no deliverables
We have no goals
Agile Test Plans 31
Coverage Outline
Product elements, function, data , schedule, etc
Best Practices
Avoid using record and playback for GUI automation
for a 1.0 product release due to the amount of user
interface changes. Utilize headless tests or using SDKs
or APIs to drive automation. Test services and
enterprise hardening for your product.
Similarities to today
Testcases and test plans are living documents and are enhanced
each iteration as features are delivered and coverage changes.
Limited use of formal entrance and exit criteria and rely on
general inputs required for milestone assessments (weekly builds,
development published themes and goals, customer feedback
etc)
Focus on all test types as applicable: integration, reliability long
runs, scalability, stress scenarios, functional capability regression,
install/config, system performance, end-to-end customer
scenarios
Provide input to final quality certification of the software
Provide “softer” experience report for each iteration as well as
data from defects and execution
Agile testing 37
Key Differences
Test coverage spread across iterations, with emphasis on
customer scenarios evolving with the addition of features – EARLY
FEEDBACK
Less “dead” time at the end of the cycle although you may still
have a final SVT phase
More defects can be addressed in the current release
SVT is better able to impact new designs and features and is
always working with the product and impacting quality, even
when not doing an actual tracked test pass
Happily Ever After 38
Brian Massey
Senior Product Manager
IBM/Rational Software
678-248-4523
jbmassey@us.ibm.com
www.ibm.com/rational