requirement and test for continuous delivery - customer in focus at scania connected services

66
NFI 2014-12-02 Requirement and test with Continuous Delivery Customer in focus at Scania Connected Services

Upload: kneulen

Post on 10-Aug-2015

261 views

Category:

Software


0 download

TRANSCRIPT

NFI 2014-12-02

Requirement and test with Continuous DeliveryCustomer in focus at Scania Connected Services

Agenda – A time-travel

• History

• Today

• Future

Agenda – A time-travel

• History

• Today

• Future

• Individuals

• Team

• Innovators

Jonatan Mossberg Rebecca Isaksson

A long time ago…

Today?

Why do we need

requirements?

Nobody reads them!

Who wants what and why?

”Requirement meeting” starts every story!

Requirement Specification by Example

But Given When Then is nothing

new?

http://code.tutsplus.com/tutorials/behavior-driven-development-in-python--net-26547

ATDD + TDD

Requirements linked to the code!

Living documentation

Executable documentation

Executable documentation

Now

Requirement

Then

Documentation

Soon

Test

Change Success

Fragile

Robust

Antifragile

Please

mishandle!

But should we really automate

all the tests?

Automate on the right level!

Black box

http://fabiopereira.me/blog/2012/03/18/introducing-depth-of-test-dot/

Black box

http://fabiopereira.me/blog/2012/03/18/introducing-depth-of-test-dot/

Black box

http://fabiopereira.me/blog/2012/03/18/introducing-depth-of-test-dot/

SlowImprecise

Fragile

Late feedback

http://fabiopereira.me/blog/2012/03/18/introducing-depth-of-test-dot/

White box

http://fabiopereira.me/blog/2012/03/18/introducing-depth-of-test-dot/

White box

http://fabiopereira.me/blog/2012/03/18/introducing-depth-of-test-dot/

FastPreciseRobust

Fast feedback

White box

The requirement meeting gives us both!

Talk to each other!

But how do we know if the

customer is happy?

Continuous Delivery

BuildStage

BronzeStage

Deployment Pipeline

Silver Stage

GoldStage

Deploy Stage

Compile Package Unit Test Analysis DB. Script ”Compile”

DB Deploy Int.Tests

Deploy System Test

Staging Deploy

Prod Deploy

.....

…..

But still, what about the customer?

Old!

New!

Feature Toggle

Old!

New!

Feature Toggle

Main

GUI

Business Logic

Database

Feature Toggle

Main

GUI

Business Logic

Database

But should we use our customers for human

experimentation?

Limited number of

customers

Limited functionality

Limited time

What about the future?

Try new ideas…

Try new ideas…

Let’s try both!

…on real users!

…on real users!

A/B-testing!

Hypothesis driven development!

We Believe That this featureWill Result In this valueWe Will Know We Have Succeeded When we have this measurable result

Improve the ability to respond to changeKill bad idéas – FAST

It is fun!

Contact

• Jonatan Mossberg– [email protected] – @Kneulen

• Rebecca Isaksson– [email protected]– @auriorai