container-solutions.com info@container-solutions.com ... · containers - docker. ... advanced...

Post on 14-Aug-2020

7 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

What is Cloud Native?

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Containers - Docker

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Fast / Customer-Centric

Sa

fe a

nd

Re

liab

le

LIMITS SPEED, SAFETY AND COMPLEXITY

ACHIEVE QUALITY THROUGH SPEED

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Dynamic Scheduling - Kubernetes

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

It is not the strongest of the species that survive,

but the most adaptable

Charles Darwin

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

What do companies want?

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

● System Thinking: A business can be seen as a system that processes resources to deliver value to its customers with an emphasis on the performances of the entire system versus local optimization

System Thinking

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

● Feedback loops enable knowledge of the system to flow back from the customer to the business and allow for better informed decisions

Feedback Loops

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

● Continual experimentation enables improvements at every level of the system and the emergence of new business initiatives

Continual Experimentation

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

CUSTOMER CENTRIC BY GOING FAST

WITHOUT BREAKING THINGS

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

What do we find

when we go out into the field?

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Value Stream Map

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Why is this actually

happening?

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

1. Agile

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

CLOUD NATIVE

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

2. DevOps

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

CLOUD NATIVE

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

5. Automation and CI/CD

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

6. Organisation and culture

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Experimental culture

JournalOutput & conclusionsDecide: kill or continue

Experiment

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

What will be the impact on the

testing?

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Decentralization and local freedom over central control

"organizations which design systems ... are constrained to

produce designs which are copies of the communication

structures of these organizations."

— M. Conway

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Infrastructure provisioning

Manual operations create bottlenecks

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Testers

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Testers

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Full test automation according to test pyramid

Microservices and CI/CD demand full automation

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Testing is not finished when software is deployed

Developers need to build testability into the applications to

allow continuous testing

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Data driven diagnosis and testing in production

Lots of opportunities to collect data due to automation.

Alert at near misses and other non-events

Employ advanced protection techniques such as circuit

breakers

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Advanced deployment strategies

Canary releases, A/B testing and more

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

https://thenewstack.io/deployment-strategies/

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Blameless postmortems

When blame is assigned, organisation stops learning

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Complex systems fail in complex ways

Some issues will only happen in production. Large scale

exposes a failure that was built into the design and hidden by

safety measures. But erosion of the safety measures,

eventually leads to series of events build up until something

trips the systems into a failure

Adrian Cockcroft

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

Questions?

container-solutions.com info@container-solutions.com Testing Cloud Native Applications @pini42

top related