quality assurance in distributed continuous delivery

41
Quality Assurance in Distributed Continuous Delivery By Jin Ming@金明i Continuous Delivery Lead, ThoughtWorks Wednesday, August 8, 12

Upload: mingjin

Post on 21-Nov-2014

1.514 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Quality assurance in distributed continuous delivery

Quality Assurancein Distributed Continuous DeliveryByJin Ming|@金明i

Continuous Delivery Lead, ThoughtWorks

Wednesday, August 8, 12

Page 2: Quality assurance in distributed continuous delivery

TextBackground: Top One Property Listing Site in OZ

Wednesday, August 8, 12

Page 3: Quality assurance in distributed continuous delivery

Agency

Seller Consumer

Business Overview

Wednesday, August 8, 12

Page 4: Quality assurance in distributed continuous delivery

Architecture Overview

Wednesday, August 8, 12

Page 5: Quality assurance in distributed continuous delivery

How to Do QA?

Wednesday, August 8, 12

Page 6: Quality assurance in distributed continuous delivery

Quality is Value to Some Person.---Gerald Weinberg

Wednesday, August 8, 12

Page 7: Quality assurance in distributed continuous delivery

Challenges We’re Facing

Wednesday, August 8, 12

Page 8: Quality assurance in distributed continuous delivery

Legacy Systems

Wednesday, August 8, 12

Page 9: Quality assurance in distributed continuous delivery

Cross Systems

Wednesday, August 8, 12

Page 10: Quality assurance in distributed continuous delivery

Distributed Development

Wednesday, August 8, 12

Page 11: Quality assurance in distributed continuous delivery

Also, We Want to Be

Wednesday, August 8, 12

Page 12: Quality assurance in distributed continuous delivery

Wednesday, August 8, 12

Page 13: Quality assurance in distributed continuous delivery

We Need “Total Quality”

Wednesday, August 8, 12

Page 14: Quality assurance in distributed continuous delivery

Functional Tests Examples

Story Tests Prototypes Simulations

...

Exploratory Testing Scenarios

Usability Testing UAT(User Acceptance Testing)

Alpha / Beta ...

Unit Tests Component Tests

...

Performance & Load Testing Security Testing

...

Automated & Manual

Manual

Tools Automated

Business Facing

Technology Facing

Critique Product

Supporting Team Q1

Q2 Q3 Q4

Test Quadrants

Wednesday, August 8, 12

Page 15: Quality assurance in distributed continuous delivery

Functional Test Boundaries

Wednesday, August 8, 12

Page 16: Quality assurance in distributed continuous delivery

We Need to Ensure End-to-End

Wednesday, August 8, 12

Page 17: Quality assurance in distributed continuous delivery

We Need to Ensure Single System

Wednesday, August 8, 12

Page 18: Quality assurance in distributed continuous delivery

Units Inside Single System

Wednesday, August 8, 12

Page 19: Quality assurance in distributed continuous delivery

Automatic Those Tests

Wednesday, August 8, 12

Page 20: Quality assurance in distributed continuous delivery

End-to-End Test�

System Test�

Unit Test

Test Pyramid

Scope

End-User Simulation

EfficiencyCost

EfficiencyCost

Scope

End-User Simulation

Wednesday, August 8, 12

Page 21: Quality assurance in distributed continuous delivery

Functional Test Samples

Capybara

Selenium

WebDriver

Wednesday, August 8, 12

Page 22: Quality assurance in distributed continuous delivery

Performance Test Samples

Wednesday, August 8, 12

Page 23: Quality assurance in distributed continuous delivery

Deployment Validation

Wednesday, August 8, 12

Page 24: Quality assurance in distributed continuous delivery

Test Plan

Wednesday, August 8, 12

Page 25: Quality assurance in distributed continuous delivery

Release Test Plan Iteration Test Plan Daily Test Plan

$

$

$

$

Level Stories

Vision & High-

Iteration

Release

Test Plan

Wednesday, August 8, 12

Page 26: Quality assurance in distributed continuous delivery

Iterations

Automated Regression Test

Performance Profiling Test

Full Regression

Test

Integration Test

Acceptance Testing

I1

Exploratory, Automation

I1

Test Analysis I1

I0 I1 I4 … In I2 I3

Acceptance Testing

I2

Exploratory, Automation

I2

Test Analysis I2

Acceptance Testing

I3

Exploratory, Automation

I3

Test Analysis I3

Stabilize (opt)

Pre-production Production

UAT

�iIities operations

&Compliance

Deployment

Data Migration

PVT

End-To-End Test

Load/Stress Load/Stress

End-To-End Test

Integration Test

Wednesday, August 8, 12

Page 27: Quality assurance in distributed continuous delivery

Good Enough?

Wednesday, August 8, 12

Page 28: Quality assurance in distributed continuous delivery

It’s Just Validation.

Where is Verification?

Wednesday, August 8, 12

Page 29: Quality assurance in distributed continuous delivery

Wednesday, August 8, 12

Page 30: Quality assurance in distributed continuous delivery

Stories Behaviour Application

Exercise expectations against Matches to

Customer QA Domain Expert Developer

BDD

Wednesday, August 8, 12

Page 31: Quality assurance in distributed continuous delivery

Co-Education

Wednesday, August 8, 12

Page 32: Quality assurance in distributed continuous delivery

Agile Quality Assurance

Business Analytics

Test Strategy

Risk Assessmen

t

Test Analytics

Process Improveme

nt

Test Framework

Common Vision on Quality

Exploratory Test

Showcase

Quality Assurance Activities

Wednesday, August 8, 12

Page 33: Quality assurance in distributed continuous delivery

Wednesday, August 8, 12

Page 34: Quality assurance in distributed continuous delivery

Build Quality In

Wednesday, August 8, 12

Page 35: Quality assurance in distributed continuous delivery

Shared Responsibility

Wednesday, August 8, 12

Page 36: Quality assurance in distributed continuous delivery

Communication & Collaboration

Wednesday, August 8, 12

Page 37: Quality assurance in distributed continuous delivery

QA is NOT JUST Testing

Wednesday, August 8, 12

Page 38: Quality assurance in distributed continuous delivery

Eradicating Non-Determinism in Tests

Wednesday, August 8, 12

Page 39: Quality assurance in distributed continuous delivery

Visualizing Quality

Wednesday, August 8, 12

Page 40: Quality assurance in distributed continuous delivery

Wednesday, August 8, 12

Page 41: Quality assurance in distributed continuous delivery

? ? ? ? ?

? ?

Wednesday, August 8, 12