The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness •...

15
Acceptance Test Driven Development @ Scale Robert van Vark & Marcel van der Poel Scrum Day Europe Amsterdam • 7 July 2016

Transcript of The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness •...

Page 1: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

Acceptance Test Driven Development @ Scale

Robert van Vark & Marcel van der Poel

Scrum Day Europe

Amsterdam • 7 July 2016

Page 2: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

• IT starting for me with buying a ZX-Spectrum…

• … and now I am product owner Test Automation @

Wholesale Bank ING

• I love to improve the way we work

• and today Robert van Vark and myself want to share

our experiences with ATTDD over the last two years.

Marcel van der Poel

Page 3: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

• Senior Technical Consultant @ Prowareness

• Focus on Test Automation & Continuous Delivery

• Loves well written software

• Technical Lead E2E Test Automation team

Robert van Vark

Page 4: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

1. What is Acceptance Test Driven Development ?

2. Typology ING organisation

3. Four new impediments when Scrum is implemented

4. How ATDD can help you remove these impediments

5. Takeaways

6. Questions

4

Agenda

Page 5: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

5

Acceptance Test Driven Development Example

Step 1 Write Scenarios Step 2 Automate Scenarios Step 3 Run Scenarios

Page 6: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

One domain language clearly understood by Business and IT

This format can be read by non-technical people and testing tools.

Requirements, Documentation and Acceptance Tests in one format

6

Advantages Acceptance Test Driven Development

Page 7: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

Movie ING

7

Page 8: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

ING was project and process driven

Features can only be delivered by multiple teams

ING has a large and complex IT landscape

Agile introduced in 2014 within wholesale bank

8

Typology organisation

Page 9: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

You can’t postpone detailing yourrequirements anymore

Traditional E2E Testing preventsdeployment

No more time to test everything manually

The projectmanager is gone, who takes care of alignment ???

9

Before Scrum solves problems, it introduces new ones

Page 10: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

• There used to be time to postpone detailling requirements.

• That is not possible when multiple teams want to deliver an E2E-feature in one sprint.

• Then teams need a common understanding of when the feature is done, not when the separate teams are done.

• Feature files describe both the details of the feature and the expected behaviourbetween systems.

• The Screening Scenario shows different expected behaviour in the E2E chain of systems based on the decision in one system.

1 - You can’t postpone detailing your requirements anymore

10

Page 11: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

• Projects used to integrate in a separate phase at the end of the project

• The entire value chain could only be tested and accepted at the end of the project, usually in several test cycles

• Resulting in late feedback to the teams at the last irresponsible moment

• Features are tested regularly in the complete End-2-End context

• DevOps teams receive continuous feedback using test cycles every 2 hours

• End-2-End test framework supports delayed verification to even test non-STP processesfully automated

2 - No more time to test everything manually

11

Page 12: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

• Traditionally we have a separate E2E QA team that acts as a tollgate.

• Instead, we want to test drive development of software also on the E2E level.

• Scenarios in feature files can be automated into Acceptance Tests

• And used for continuous validation and regression of features while teams are developing

• The @Regression- and @Validation-builds give us continuous and fast feedback on ourlevel of E2E done-ness.

3 - Traditional E2E Testing prevents deployment

12

Page 13: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

• Teams have their own scope on work on different projects on different moments in time

• Project managers play a crucial role to align and coordinate the work for their projects

• Teams share a common scope: the feature / scenario

• Teams are responsible for implementing steps but are only done when the wholescenario passes.

• Teams are challenged to deliver their changes as quickly as possible to complete the scenario End-2-End

• Continuous Delivery is a key driver for enabling ATDD @ Scale

4 - The projectmanager is gone, who takes care of alignment ???

13

Page 14: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

We showed that ATDD is a great approach to describeand validate E2E features.

Knowing the details on “what?” before you buildreally helps.

ATDD slices features anddoing so creates focus andalignment between teams.

Teams can pick up justenough scenarios they are able to finish in a sprint.

ATDD makes transparenthow agile your organisationis.

When it is hard to get E2E features done, you need topractice more.

Takeways

Page 15: The Agile Community Event in the Netherlands ......• Senior Technical Consultant @ Prowareness • Focus on Test Automation & Continuous Delivery • Loves well written software

Given I liked this presentation

And I still have a question

When I raise my hand

Then the nice people in front of me will answer my question

Questions?

15