26
© Qentinel Group 2016 Safety Nets with Fast Feedback Loops Jani Haapala 15.2.2016

Safety nets with fast feedback loops | Jani haapala 2016-10

Embed Size (px)

Citation preview

© Qentinel Group 2016

Safety Nets with Fast Feedback Loops

Jani Haapala 15.2.2016

© Qentinel Group 2016 PUBLIC

Measurement vs Feedback

© Qentinel Group 2016 PUBLIC

Measurement vs Feedback

Measurement:

• Weight, speed or temperature don’t tell much alone

Feedback:

• Weight + time of the day + diet = healthier life

• Speed + route planning + traffic data = arrive on time

• Temperature + time of the year + weather forecast = good

nights sleep

© Qentinel Group 2016 PUBLIC

What is measurement?

• Only one data point

• The measure of one quantity

• Normally irrelevant alone

• Input for something meaningful

• Hard to interpret or use alone

• Very prone to misinterpretations

© Qentinel Group 2016 PUBLIC

Feedback

• Refined and relevant information in selected context

(”Feedback loop”)

• Usually a sum of several measurements

• Should regulate the doing

• Provides meaningful information for the feedback follower

• Adjusts the process or system through measurements

© Qentinel Group 2016 PUBLIC

How to choose feedback?

• Should always be based on a paradigm (How the world

works? What should we be? How to make the world a

better place?)

• To get into a paradigm, one must set goals (How can I

reach my goals?)

• Those goals should be measured with feedback (Where

am I now in my journey towards my goals))

© Qentinel Group 2016 PUBLIC

Automation and speed

”Measure what you use,

use what you measure”

© Qentinel Group 2016 PUBLIC

Why increase speed with automation?

• Human evolution causes humans to think only linearly

• Digitalization causes the speed to be exponential

• Automation enables humans to keep up with this

exponential speed

• Example of exponential growth:

–Today 2 bugs, tomorrow 4 bugs, by end of the week

128 bugs!

© Qentinel Group 2016 PUBLIC

Possibilities of automation

• To create sensors for various measurements

• To gather colossal amounts of data

• To process that colossal amount of data

• To provide real time feedback

© Qentinel Group 2016 PUBLIC

Pitfalls of automation

• You have too much information

• You have too many measurements

• You gather too much data

• You measure what is easy to measure rather than

measuring what you actually need

• Defects are not corrected as soon as the warning signs

appear. (See the exponential growth example)

© Qentinel Group 2016 PUBLIC

Note!

• Measure what you use and use what you measure

• When you need to do the same task for the third time,

automate it!

• Instead of measuring the increased doing, measuring the

reduced waste is more efficient

• Reducing the waste is usually cheaper than increasing the

doing

© Qentinel Group 2016 PUBLIC

History of feedback

• Previously popular form of feedback, reporting, did always

provide outdated view of the system.

• Today’s form of feedback, dashboards, provide real time

snapshot of the system

• Future form of feedback, trends, will forecast the future of

the system

© Qentinel Group 2016 PUBLIC

Heartbeat, heartbeat, heartbeat, …

© Qentinel Group 2016 PUBLIC

Heartbeat?

• All systems have a rhythm (”heartbeat”) unique to that system

• Defines the fastest response time that the system can react to

change

• Examples for heartbeats:

– Hummingbird: n/sec

– City: 1/day

– Scrum: 1/day + 1/sprint

– Earth: 1/year

© Qentinel Group 2016 PUBLIC

Feedback and heartbeat

• Feedback is useful only when it matches the heartbeat of

the system

• Too fast or too slow feedback makes the system oscillate

until it breaks

• Feedback with a heartbeat of 1/day is irrelevant and

useless for a system with a heartbeat of 1/quarter year

• Similarly, excessively slow feedback is useless

© Qentinel Group 2016 PUBLIC

Types of feedback

• Three main types: increasing, decreasing and balancing

• In population growth, the birth rate is the increasing factor

• In price declining, the number of competitors is the

decreasing factor

• In controlling the temperature, a thermostat is the

balancing factor

© Qentinel Group 2016 PUBLIC

Note!

• System feedback dominance can change by its own

• It can be very confusing moment when the dominance

changes

• Example:

– A hot dog stand sells hot dogs and earns money. The

more they sell hot dogs, the more money they get

(increasing). At some point the oversupply drops the

price (balancing) and the profits go down.

© Qentinel Group 2016 PUBLIC

Safety nets

Unit tests

Smoke Test Set

Full Test Set

Release Tests

Release Actions

Build product

Static checks

Every commit

0 min

+ 5 min

+ 2 h

+ 1 h

+ 10 min

+ 5 min

+ 1 min

Development Environments

© Qentinel Group 2016 PUBLIC

Why have safety nets?

• Nobody makes bad decisions

• Decision interpret as bad is only the result of lacking the

relevant information

• When the responsibilities of the developers are

overloading with excessive speed in agile (DevOps), it

usually leads to unwanted defects (Dev-Ooops)

© Qentinel Group 2016 PUBLIC

DevOps?

• Mainly a trend word for Continuous Integration (CI) /

Continuous Delivery (CD)

• CI / CD should include tasks of making “pipelines”

– Pipelines should include all phases of development

– Pipelines form one complete system

– Pipelines must utilize automation

– Pipelines create safe and reliable distribution

systems

© Qentinel Group 2016 PUBLIC

Safety nets for software development

• Creates a series of fast feedback channels to software developers

• Brings visibility to stakeholders

• Utilizes the power of slowing feedback cycles

• Early bug and defect detection

• Harmonizes the processes and increases the communication

• Shows the assumptions that have been made based on

specifications (the decisions that were needed but were not

described in the specifications)

© Qentinel Group 2016 PUBLIC

Safety nets for environments

• Bears part of the teams’ responsibilities

• Helps in SecOps’ side (automatic security checks and

controlled environments)

• Enables the team to test different technologies before

taking them into use safely and in scalable manner

• Provides means of verification for the teams

• Provides environments

© Qentinel Group 2016 PUBLIC

CAQFL

• .Model is in continuous use.

The phases of the process are automated and manual

work is minimized.

Achieving a significant improvement in quality that brings a

competitive edge.

Feedback is received right after every change.

Continuous improvement within and between each stages.

© Qentinel Group 2016 PUBLIC

CAQFL?

• Core ideology behind quality automation:

Constantly in use

Always running

Quality focused system

Focuses in relevant and meaningful information

Loops the feedback into correct places automatically

© Qentinel Group 2016 PUBLIC

Quality as a service, QaaS?

• For this we have Qentinel Pace service

• No commitment on tools that age but instead using the

state of the art open source solutions

• Focus on visualizing, producing and increasing the value

• Gathers good practises and solutions from all customers

and utilizes with all customers

• For more information, contact [email protected] or

[email protected]

© Qentinel Group 2016 PUBLIC

[email protected] www.qentinel.com