SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
Agile Testing Framework
The Art of Automated Testing
www.AgileTestingFramework.com
About Dimitri Ponomareff
Dimitri Ponomareff (www.linkedin.com/in/dimka5) is a Coach. Whether
it's a sports team, software products or entire organizations, Dimitri has
that ability to relate and energize people. He is consistently recognized
as a very passionate and successful change agent, with an
overwhelming capacity to motivate and mobilize teams on their path to
continuous improvements. He is a master facilitator, as well as a
captivating speaker with consistent, positive feedback regarding his
ability to engage an audience.
As a certified Coach, Project Manager and Facilitator of "The 7 Habits of Highly Effective People", Dimitri
brings a full spectrum of knowledge in his delivery of methodologies. Through teaching by example, he is able
to build teams of people who understand where to focus their work to generate the most value.
He has coached and provided tailor-made services and training for a multitude of organizations. The short list
includes, American Express, Charles Schwab, Bank of America, Morgan Stanley, Choice Hotels
International, JDA Software, LifeLock, First Solar, Mayo Clinic and Phoenix Children's Hospital. Dimitri
enjoys his work, and does everything to ensure he shares his knowledge with others who seek it.
Agenda
● Agile Methodologies
● Agile Testing Quadrant
● Quality
● Technical Debt
● The Testing Pyramid
● Driven Development
○ FDD
○ TDD
○ BDD
● Agile Testing Framework
www.AgileTestingFramework.com
Agile Methodologies
www.AgileTestingFramework.com
The Triple Constraint
Waterfall
Predictive Process
The plan creates cost and
schedule estimates
Constraints
Estimates
Scope
(requirements)
Cost Time
Plan
Driven
Agile
Adaptive Process
The vision creates
feature estimates
Cost Time
Scope
(features)
Value
Driven
When it doesn’t fit in Agile, we cut Scope, not Quality!
www.AgileTestingFramework.com
5 Levels of Agile Planning
www.AgileTestingFramework.com
Agile Testing Touch Points
● Release Planning
○ Document dependencies
○ Write - End to end flow tests
○ Write - Workflow tests
○ Write - Integration tests
○
● Release Testing
○ Run - End to end flow tests
○ Run - Workflow tests
○ Run - Integration tests
○ Run - Performance and security tests
● Iteration Planning
○ Review - Acceptance criteria
● Iteration Testing
○ Write/Run - Acceptance tests
○ Write/Run - Unit tests
○ Write/Run - Component tests
www.AgileTestingFramework.com
Agile Testing Quadrant
Are we building the right product?
Are we building the product right?
Business Facing
Technology Facing
www.AgileTestingFramework.com
Agile Testing Quadrant
Functional, Story &
Prototype Testing
Unit & Component
Testing
Business Facing
Technology Facing
Exploratory &
Usability Testing
Performance, Load
& Security Testing
CritiqueProduct
SupportingtheTeam
www.AgileTestingFramework.com
Agile Quality
QA is no longer the Sole
Quality Gatekeeper!
● QA may play new role
● Agile Quality requires new skills
● Focuses on Prevention instead of Detection
● Testing role may be done by others
● Testing done upfront
● Automation plays a bigger role
● Focuses on xUnit testing
www.AgileTestingFramework.com
Up front testing leads to lower costs and better quality
www.AgileTestingFramework.com
The whole team is responsible for quality
Business
● Product Owners / Product Manager
● Subject Matter Experts
Technology
● Architects
● Database Administrators
● User Experience Designers
● Operations/Support team members
Team
● Developers
● Testers
● Business Analysts
www.AgileTestingFramework.com
Is incurred by not developing in the correct way...
Technical Debt
Like Financial Debt - is dangerous if the incurred
interest and the debt itself are not payed...
www.AgileTestingFramework.com
Two ways of doing things!
Technical Debt
Clean and smart way - takes
longer to implement but makes
change easier in the future
Quick and dirty way - get your
features sooner, but make the
future changes very hard
www.AgileTestingFramework.com
Technical Debt
http://blog.techdebt.org/interviews/156/interview-with-philippe-kruchten-on-technical-debt-rup-ubc-decision-process-architecture
“Shipping first time code is like going into debt. A little debt speeds
development so long as it is paid back promptly with a rewrite... The
danger occurs when the debt is not repaid. Every minute spent on not-
quite-right code counts as interest on that debt.”
Ward Cunningham (1992-03-26). "The WyCash Portfolio Management System".
www.AgileTestingFramework.com
● Loss of Productivity
● Increase in Testing
● Postponed Releases
● Code Duplication
● Low Code Coverage
● Increase in Bugs
● Unreadable Code
● Decreased Velocity
● Using Old Libraries
● Heavy Stress on Approaching Deadlines
● Being Scared of Changing Anything
● Evil Hacks Wrong Design
● Wrong Choice of Technology
Symptoms of Technical Debt
www.AgileTestingFramework.com
Continuous inspection with SonarQube
Managing 7 axes of code quality or preventing the Developers' 7 Deadly Sins
1. Potential Bugs
2. No Coding Standards
3. Duplications
4. Lack of Unit Tests
5. Bad Distribution of Complexity
6. Spaghetti Design
7. Not Enough or Too Many Comments
Strategic Design
1. Strategic debt intentionally accumulated in a project.
2. Conscious, proactive decisions with larger short term benefits.
3. Focuses on architectural and/or business trade-offs.
4. Forgo’s extensive architecture for increased speed to market or reduced overhead
Agile Engineering Practices
Pair Programming, TDD, Continuous Integration, Automated Unit Tests, Automated Functional Tests,
Automated Other Tests(Regression), Refactoring, Clear Definition of Done
Fixing the Technical Debt
www.AgileTestingFramework.com
The Testing Pyramid
Source: http://www.slideshare.net/nashjain/inverting-the-testing-pyramid
Traditional Agile
www.AgileTestingFramework.com
The DDs...
FDD
FEATURE Driven Development
TDD
TEST Driven Development
BDD
BEHAVIOR Driven Development
www.AgileTestingFramework.com
FDD - Feature Driven Development
● Is a client-centric, architecture-centric, and pragmatic software
process
● Feature Breakdown Structure (FBS) instead of WBS
● A feature is a small, client-valued function expressed in the form:
<action> the <result> by/for/of/to a <object>
www.AgileTestingFramework.com
TDD - Test Driven Development
Is a rapid cycle of testing, coding, and refactoring
● Relies on a very short development
cycle
● Developer writes automated test case
first
● Test case defines desired improvement
or new function
● Next develops minimum amount of
code to pass test
● Lastly refactors the new code to
acceptable standards
Code refactoring is a "disciplined technique for
restructuring an existing body of code, altering its
internal structure without changing its external behavior"
www.AgileTestingFramework.com
BDD - Behavior Driven Development
● Outside-in and pull-based - Wire-frame > Test Cases > Coding
● Multiple-stakeholder, multiple-scale, high-automation
● Describes a cycle of interactions with well-defined outputs
● Results in the delivery of working, tested software that matters
www.AgileTestingFramework.com
TDD, BDD and automated testing...
TDDBDD
TDD invests in automated Unit tests.
BDD invests in automated Acceptance tests.
www.AgileTestingFramework.com
BDD - User Story Traceability
ID: 27
STORY NAME: Save a list of potential cars for later review
As a: Buyer
I can: Add a car to my wish list
So that: I can review my top choices at a later time.
Acceptance Criteria
Scenario 27.1: Add a car to my wish list
Given: A potential buyer is logged in
And: The car is available for sale
When: The ‘Add to Favorites’ option appears
And: A buyer flags the car for the wish list
Then: The car details are displayed in the wish list
Scenario 27.2: Review list of favorite cars
Given: A potential buyer is logged in
Given: A potential buyer has previously picked some favorite
cars’
And: A buyer clicks on “view my favorites’
When: The buyer views the wish list
And: The car is still available for sale
Then: The buyer can view the car summary in the wish list
Story
As a <role>,
I can <activity>,
so that <business value>
Scenarios
Given <context>
When <event>
Then <outcome>
www.AgileTestingFramework.com
Agile Testing Framework (ATF)
www.AgileTestingFramework.com
Agile Testing Framework (ATF)
www.AgileTestingFramework.com
Agile Coaching, Staffing and Training.
Learn more at www.torak.com
Learn more at www.AgileTestingFramework.com
This presentation was inspired by the work of many people and we have done our very best to attribute all
authors of texts and images, and recognize any copyrights. If you think that anything in this presentation
should be changed, added or removed, please contact us.
http://creativecommons.org/licenses/by-nc-nd/3.0/
www.AgileTestingFramework.com
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated Testing

Weitere ähnliche Inhalte

Was ist angesagt?

Test Automation - Keytorc Approach
Test Automation - Keytorc Approach Test Automation - Keytorc Approach
Test Automation - Keytorc Approach
Keytorc Software Testing Services
 
How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy
Impetus Technologies
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
SivaprasanthRentala1975
 
Agile Testing Process
Agile Testing ProcessAgile Testing Process
Agile Testing Process
Intetics
 

Was ist angesagt? (20)

Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
 
Automated Testing with Agile
Automated Testing with AgileAutomated Testing with Agile
Automated Testing with Agile
 
Test Automation - Keytorc Approach
Test Automation - Keytorc Approach Test Automation - Keytorc Approach
Test Automation - Keytorc Approach
 
QA Best Practices in Agile World_new
QA Best Practices in Agile World_newQA Best Practices in Agile World_new
QA Best Practices in Agile World_new
 
How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy How to Design a Successful Test Automation Strategy
How to Design a Successful Test Automation Strategy
 
Agile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil KaradeAgile testing principles and practices - Anil Karade
Agile testing principles and practices - Anil Karade
 
Automation testing strategy, approach & planning
Automation testing  strategy, approach & planningAutomation testing  strategy, approach & planning
Automation testing strategy, approach & planning
 
BDD with Cucumber
BDD with CucumberBDD with Cucumber
BDD with Cucumber
 
Emerging QA COE Practice by Mukund Wangikar
Emerging QA COE Practice by Mukund WangikarEmerging QA COE Practice by Mukund Wangikar
Emerging QA COE Practice by Mukund Wangikar
 
Testing Centre Of Excellence From AppLabs
Testing Centre Of Excellence From AppLabsTesting Centre Of Excellence From AppLabs
Testing Centre Of Excellence From AppLabs
 
Behavior Driven Development (BDD)
Behavior Driven Development (BDD)Behavior Driven Development (BDD)
Behavior Driven Development (BDD)
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
Introduction to Software Test Automation
Introduction to Software Test AutomationIntroduction to Software Test Automation
Introduction to Software Test Automation
 
Agile Testing by Example
Agile Testing by ExampleAgile Testing by Example
Agile Testing by Example
 
Building a Test Automation Strategy for Success
Building a Test Automation Strategy for SuccessBuilding a Test Automation Strategy for Success
Building a Test Automation Strategy for Success
 
Test automation process
Test automation processTest automation process
Test automation process
 
Agile Testing Process
Agile Testing ProcessAgile Testing Process
Agile Testing Process
 
Software Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing TrendsSoftware Testing Process, Testing Automation and Software Testing Trends
Software Testing Process, Testing Automation and Software Testing Trends
 
Test Automation
Test AutomationTest Automation
Test Automation
 
Agile testing - Testing From Day 1
Agile testing - Testing From Day 1Agile testing - Testing From Day 1
Agile testing - Testing From Day 1
 

Andere mochten auch

Introducing Agile Scrum XP and Kanban
Introducing Agile Scrum XP and KanbanIntroducing Agile Scrum XP and Kanban
Introducing Agile Scrum XP and Kanban
Dimitri Ponomareff
 
Agile stories, estimating and planning
Agile stories, estimating and planningAgile stories, estimating and planning
Agile stories, estimating and planning
Dimitri Ponomareff
 

Andere mochten auch (13)

The 5 Levels Planning in Agile
The 5 Levels Planning in AgileThe 5 Levels Planning in Agile
The 5 Levels Planning in Agile
 
Introducing Agile Scrum XP and Kanban
Introducing Agile Scrum XP and KanbanIntroducing Agile Scrum XP and Kanban
Introducing Agile Scrum XP and Kanban
 
Why Does Agile Work?
Why Does Agile Work?Why Does Agile Work?
Why Does Agile Work?
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.com
 
Understanding and Working with Agile Culture - PMI-SOC
Understanding and Working with Agile Culture - PMI-SOCUnderstanding and Working with Agile Culture - PMI-SOC
Understanding and Working with Agile Culture - PMI-SOC
 
Planning, scaling and flowing within your agile organization
Planning, scaling and flowing within your agile organizationPlanning, scaling and flowing within your agile organization
Planning, scaling and flowing within your agile organization
 
Agile stories, estimating and planning
Agile stories, estimating and planningAgile stories, estimating and planning
Agile stories, estimating and planning
 
Test Automation Framework Designs
Test Automation Framework DesignsTest Automation Framework Designs
Test Automation Framework Designs
 
Faster Cheaper Better the Agile / Lean Way
Faster Cheaper Better the Agile / Lean WayFaster Cheaper Better the Agile / Lean Way
Faster Cheaper Better the Agile / Lean Way
 
Stories, Backlog & Mapping
Stories, Backlog & MappingStories, Backlog & Mapping
Stories, Backlog & Mapping
 
Leading the agile organization
Leading the agile organizationLeading the agile organization
Leading the agile organization
 
Patterns of a “good” test automation framework
Patterns of a “good” test automation frameworkPatterns of a “good” test automation framework
Patterns of a “good” test automation framework
 
Agile Project Management - An introduction to Agile and the new PMI-ACP
Agile Project Management - An introduction to Agile and the new PMI-ACPAgile Project Management - An introduction to Agile and the new PMI-ACP
Agile Project Management - An introduction to Agile and the new PMI-ACP
 

Ähnlich wie Agile Testing Framework - The Art of Automated Testing

Assessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility AssessmentAssessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility Assessment
Mike Cohn
 

Ähnlich wie Agile Testing Framework - The Art of Automated Testing (20)

TestOps and Shift Left
TestOps and Shift LeftTestOps and Shift Left
TestOps and Shift Left
 
Testing in Agile Development
Testing in Agile DevelopmentTesting in Agile Development
Testing in Agile Development
 
Assessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility AssessmentAssessing Your Agility: Introducing the Comparative Agility Assessment
Assessing Your Agility: Introducing the Comparative Agility Assessment
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the Enterprise
 
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...
 
About Agile & PMI Agile Certified Practitioner (PMI-ACP) Overview
About Agile & PMI Agile Certified Practitioner (PMI-ACP) OverviewAbout Agile & PMI Agile Certified Practitioner (PMI-ACP) Overview
About Agile & PMI Agile Certified Practitioner (PMI-ACP) Overview
 
QA Role In Agile Teams - by Michael Hall
QA Role In Agile Teams - by Michael HallQA Role In Agile Teams - by Michael Hall
QA Role In Agile Teams - by Michael Hall
 
QA Role in Agile Teams
QA Role in Agile Teams QA Role in Agile Teams
QA Role in Agile Teams
 
Behavior Driven Development—A Guide to Agile Practices by Josh Eastman
Behavior Driven Development—A Guide to Agile Practices by Josh EastmanBehavior Driven Development—A Guide to Agile Practices by Josh Eastman
Behavior Driven Development—A Guide to Agile Practices by Josh Eastman
 
What is quality, and how do we build it in
What is quality, and how do we build it in What is quality, and how do we build it in
What is quality, and how do we build it in
 
Test Policy and Practices
Test Policy and PracticesTest Policy and Practices
Test Policy and Practices
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
Prashant technical practices-tdd for xebia event
Prashant   technical practices-tdd for xebia eventPrashant   technical practices-tdd for xebia event
Prashant technical practices-tdd for xebia event
 
Moving to tdd bdd
Moving to tdd bddMoving to tdd bdd
Moving to tdd bdd
 
How to build confidence in your release cycle
How to build confidence in your release cycleHow to build confidence in your release cycle
How to build confidence in your release cycle
 
Agile Chennai 2023 | Agile story with new age leadership and empiricism - She...
Agile Chennai 2023 | Agile story with new age leadership and empiricism - She...Agile Chennai 2023 | Agile story with new age leadership and empiricism - She...
Agile Chennai 2023 | Agile story with new age leadership and empiricism - She...
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
PMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 QualityPMI-ACP Lesson 06 Quality
PMI-ACP Lesson 06 Quality
 
Effective Testing Practices in an Agile Environment
Effective Testing Practices in an Agile EnvironmentEffective Testing Practices in an Agile Environment
Effective Testing Practices in an Agile Environment
 
Behaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibileBehaviour Driven Development: Oltre i limiti del possibile
Behaviour Driven Development: Oltre i limiti del possibile
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 

Agile Testing Framework - The Art of Automated Testing

  • 1. Agile Testing Framework The Art of Automated Testing
  • 2. www.AgileTestingFramework.com About Dimitri Ponomareff Dimitri Ponomareff (www.linkedin.com/in/dimka5) is a Coach. Whether it's a sports team, software products or entire organizations, Dimitri has that ability to relate and energize people. He is consistently recognized as a very passionate and successful change agent, with an overwhelming capacity to motivate and mobilize teams on their path to continuous improvements. He is a master facilitator, as well as a captivating speaker with consistent, positive feedback regarding his ability to engage an audience. As a certified Coach, Project Manager and Facilitator of "The 7 Habits of Highly Effective People", Dimitri brings a full spectrum of knowledge in his delivery of methodologies. Through teaching by example, he is able to build teams of people who understand where to focus their work to generate the most value. He has coached and provided tailor-made services and training for a multitude of organizations. The short list includes, American Express, Charles Schwab, Bank of America, Morgan Stanley, Choice Hotels International, JDA Software, LifeLock, First Solar, Mayo Clinic and Phoenix Children's Hospital. Dimitri enjoys his work, and does everything to ensure he shares his knowledge with others who seek it.
  • 3. Agenda ● Agile Methodologies ● Agile Testing Quadrant ● Quality ● Technical Debt ● The Testing Pyramid ● Driven Development ○ FDD ○ TDD ○ BDD ● Agile Testing Framework www.AgileTestingFramework.com
  • 5. The Triple Constraint Waterfall Predictive Process The plan creates cost and schedule estimates Constraints Estimates Scope (requirements) Cost Time Plan Driven Agile Adaptive Process The vision creates feature estimates Cost Time Scope (features) Value Driven When it doesn’t fit in Agile, we cut Scope, not Quality! www.AgileTestingFramework.com
  • 6. 5 Levels of Agile Planning www.AgileTestingFramework.com
  • 7. Agile Testing Touch Points ● Release Planning ○ Document dependencies ○ Write - End to end flow tests ○ Write - Workflow tests ○ Write - Integration tests ○ ● Release Testing ○ Run - End to end flow tests ○ Run - Workflow tests ○ Run - Integration tests ○ Run - Performance and security tests ● Iteration Planning ○ Review - Acceptance criteria ● Iteration Testing ○ Write/Run - Acceptance tests ○ Write/Run - Unit tests ○ Write/Run - Component tests www.AgileTestingFramework.com
  • 8. Agile Testing Quadrant Are we building the right product? Are we building the product right? Business Facing Technology Facing www.AgileTestingFramework.com
  • 9. Agile Testing Quadrant Functional, Story & Prototype Testing Unit & Component Testing Business Facing Technology Facing Exploratory & Usability Testing Performance, Load & Security Testing CritiqueProduct SupportingtheTeam www.AgileTestingFramework.com
  • 10. Agile Quality QA is no longer the Sole Quality Gatekeeper! ● QA may play new role ● Agile Quality requires new skills ● Focuses on Prevention instead of Detection ● Testing role may be done by others ● Testing done upfront ● Automation plays a bigger role ● Focuses on xUnit testing www.AgileTestingFramework.com
  • 11. Up front testing leads to lower costs and better quality www.AgileTestingFramework.com
  • 12. The whole team is responsible for quality Business ● Product Owners / Product Manager ● Subject Matter Experts Technology ● Architects ● Database Administrators ● User Experience Designers ● Operations/Support team members Team ● Developers ● Testers ● Business Analysts www.AgileTestingFramework.com
  • 13. Is incurred by not developing in the correct way... Technical Debt Like Financial Debt - is dangerous if the incurred interest and the debt itself are not payed... www.AgileTestingFramework.com
  • 14. Two ways of doing things! Technical Debt Clean and smart way - takes longer to implement but makes change easier in the future Quick and dirty way - get your features sooner, but make the future changes very hard www.AgileTestingFramework.com
  • 15. Technical Debt http://blog.techdebt.org/interviews/156/interview-with-philippe-kruchten-on-technical-debt-rup-ubc-decision-process-architecture “Shipping first time code is like going into debt. A little debt speeds development so long as it is paid back promptly with a rewrite... The danger occurs when the debt is not repaid. Every minute spent on not- quite-right code counts as interest on that debt.” Ward Cunningham (1992-03-26). "The WyCash Portfolio Management System". www.AgileTestingFramework.com
  • 16. ● Loss of Productivity ● Increase in Testing ● Postponed Releases ● Code Duplication ● Low Code Coverage ● Increase in Bugs ● Unreadable Code ● Decreased Velocity ● Using Old Libraries ● Heavy Stress on Approaching Deadlines ● Being Scared of Changing Anything ● Evil Hacks Wrong Design ● Wrong Choice of Technology Symptoms of Technical Debt www.AgileTestingFramework.com
  • 17. Continuous inspection with SonarQube Managing 7 axes of code quality or preventing the Developers' 7 Deadly Sins 1. Potential Bugs 2. No Coding Standards 3. Duplications 4. Lack of Unit Tests 5. Bad Distribution of Complexity 6. Spaghetti Design 7. Not Enough or Too Many Comments Strategic Design 1. Strategic debt intentionally accumulated in a project. 2. Conscious, proactive decisions with larger short term benefits. 3. Focuses on architectural and/or business trade-offs. 4. Forgo’s extensive architecture for increased speed to market or reduced overhead Agile Engineering Practices Pair Programming, TDD, Continuous Integration, Automated Unit Tests, Automated Functional Tests, Automated Other Tests(Regression), Refactoring, Clear Definition of Done Fixing the Technical Debt www.AgileTestingFramework.com
  • 18. The Testing Pyramid Source: http://www.slideshare.net/nashjain/inverting-the-testing-pyramid Traditional Agile www.AgileTestingFramework.com
  • 19. The DDs... FDD FEATURE Driven Development TDD TEST Driven Development BDD BEHAVIOR Driven Development www.AgileTestingFramework.com
  • 20. FDD - Feature Driven Development ● Is a client-centric, architecture-centric, and pragmatic software process ● Feature Breakdown Structure (FBS) instead of WBS ● A feature is a small, client-valued function expressed in the form: <action> the <result> by/for/of/to a <object> www.AgileTestingFramework.com
  • 21. TDD - Test Driven Development Is a rapid cycle of testing, coding, and refactoring ● Relies on a very short development cycle ● Developer writes automated test case first ● Test case defines desired improvement or new function ● Next develops minimum amount of code to pass test ● Lastly refactors the new code to acceptable standards Code refactoring is a "disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior" www.AgileTestingFramework.com
  • 22. BDD - Behavior Driven Development ● Outside-in and pull-based - Wire-frame > Test Cases > Coding ● Multiple-stakeholder, multiple-scale, high-automation ● Describes a cycle of interactions with well-defined outputs ● Results in the delivery of working, tested software that matters www.AgileTestingFramework.com
  • 23. TDD, BDD and automated testing... TDDBDD TDD invests in automated Unit tests. BDD invests in automated Acceptance tests. www.AgileTestingFramework.com
  • 24. BDD - User Story Traceability ID: 27 STORY NAME: Save a list of potential cars for later review As a: Buyer I can: Add a car to my wish list So that: I can review my top choices at a later time. Acceptance Criteria Scenario 27.1: Add a car to my wish list Given: A potential buyer is logged in And: The car is available for sale When: The ‘Add to Favorites’ option appears And: A buyer flags the car for the wish list Then: The car details are displayed in the wish list Scenario 27.2: Review list of favorite cars Given: A potential buyer is logged in Given: A potential buyer has previously picked some favorite cars’ And: A buyer clicks on “view my favorites’ When: The buyer views the wish list And: The car is still available for sale Then: The buyer can view the car summary in the wish list Story As a <role>, I can <activity>, so that <business value> Scenarios Given <context> When <event> Then <outcome> www.AgileTestingFramework.com
  • 25. Agile Testing Framework (ATF) www.AgileTestingFramework.com
  • 26. Agile Testing Framework (ATF) www.AgileTestingFramework.com
  • 27. Agile Coaching, Staffing and Training. Learn more at www.torak.com Learn more at www.AgileTestingFramework.com
  • 28. This presentation was inspired by the work of many people and we have done our very best to attribute all authors of texts and images, and recognize any copyrights. If you think that anything in this presentation should be changed, added or removed, please contact us. http://creativecommons.org/licenses/by-nc-nd/3.0/ www.AgileTestingFramework.com