44
© OPITZ CONSULTING 2017 ¢¢¢ überraschend mehr Möglichkeiten! © OPITZ CONSULTING 2017 with APIs, Containers, Microservices, DevOps Sven Bernhardt, Danilo Schmiedel Strategies for efficient Delivery

Strategies for efficient Delivery

Embed Size (px)

Citation preview

Page 1: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

¢¢¢ überraschend mehr Möglichkeiten!

© OPITZ CONSULTING 2017

with APIs, Containers, Microservices, DevOps

Sven Bernhardt, Danilo Schmiedel

Strategies for efficient Delivery

Page 2: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 2

OPITZ CONSULTING - A success story since 1990¢ Our Mission: Help organizations to leverage the possibilities of

digitalization to be different, better and faster than their competitors

¢ Owner-Managed company with¢ 400+ consultants ¢ 11 locations in Germany and Poland

Danilo Schmiedel

¢

¢ Managing Consultant

¢ Lead of Competence Center Cloud

About us

Sven Bernhardt

¢ Solution Architect

¢ Technical Lead of API Management

Page 3: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 3

Scenario #3: Innovation

Page 4: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

missachten!

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 4

Page 5: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

missachten!

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 5

Page 6: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 6

Lots of buzzwords, concepts and techniques, but how to find a beneficial mixture for Next-gen app development?

API Management

MicroservicesContainers

Docker

DevOpsContinuous Integration

Continuous Delivery

Cloud

SOAIntegration

Page 7: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

missachten!

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 7

Quelle: http://www.businessinsider.de/uber-self-driving-car-accident-arizona-police-report-2017

Page 8: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

missachten!

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 8

Page 9: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps

Often encountered in today’s IT system landscapes

Seite 9

Lack of innovation Missing knowledge

Lack of maintainability

Decreasing data quality

Decreasing benefit

Increasing costs

Lack of integration

Page 10: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 10

New ways on how to develop applications are needed to manage agility (Bi-modal IT)

Standardization

Differentiation

InnovationNew ideas

Better ideas

Typical ideas

Customer-specific solutions

Standard Software solutions

Systems of Innovation

Systems of Differentiation

Systems of Record

Based on Pace Layered Application Strategy, Gartner 2012

Page 11: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

Rücksprache mit Mktg.

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps

How to get there?

Seite 11

Page 12: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

How to make it wrong?

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps

Risk 1 The initiative / program is a collection of individual IT projects

Risk 2 Requirements are just IT-driven

Risk 3 Unconditional belief in the platform vendors

Risk 4 Faith in error-free, unchangeable planning and roadmap

Risk 5 Lack of coordination between Business and IT

Risk 6 Start without clear goals and benefits

Risk 7 Underestimating efforts for changing legacy applications

Risk 8 Missing change management

Risk 9 Lack of coordination with other IT-related initiatives

Risk 10 Insufficient perception of complexity

Seite 12

Erhältlich als eBook auf heise.de

Page 13: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 13

Define the goals

Page 14: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 14

Download:http://tinyurl.com/ydfdyqq9

Page 15: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 15

OPITZ CONSULTING - A success story since 1990¢ Mission: Help organizations leverage the possibilities of digitalization to be

different, better and faster than their competitors

¢ Owner-Managed company with¢ 400+ consultants at 11 locations in DE and PL¢ Revenue 2016: 47 Mill. €

Danilo Schmiedel

¢

¢ Managing Consultant

¢ Lead for Competence Center Cloud

About us

Sven Bernhardt

¢ Solution Architect

¢ Technical Lead for API Management

Page 16: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

missachten!

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 16

„We have a monolithic backend application. We would liketo slice the application into small functional building blocks.Our challenge is to find the right size of these building blocksaccording to our business requirements. “Energy (E-Mobility) / Product Owner

Page 17: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 17

One approach to find the right service designDomain Decomposition

¢ Derive services and respective data objects from your business processes, which are here expressed in a standard notation like BPMN

Production

Logistics

Selling

Billing

Page 18: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 18

But: The Domain Decomposition approach is not trivial ¢ Very formal approach

¢ Knowledge with respect to the modelling notation (e.g. BPMN) is needed and everyone needs to understand the model

¢ Might be time-consuming¢ Disagreements regarding the business process flow¢ Discussions about the modelling style (Is it correct in the sense of the spec?)¢ Danger to model all process variants and edge cases (Lost in details)

¢ Need to know business domain and processes

¢ Risk to loose workshop participants, who might have important information

Page 19: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 19

Event storming as a more agile and lightweight approach for identifying services and domains¢ Event storming was invented by Alberto Brandolini (2013)

¢ Ingredients:¢ Unlimited modelling space¢ Sticky Notes¢ Markers¢ People from different organizational areas and levels (6-8 people)¢ Facilitator

¢ Key terms:¢ Event ¢ Command and External system¢ Aggregate¢ Bounded Context

Page 20: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 20Source: https://www.slideshare.net/ziobrando/model-storming, Slide 60

Page 21: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 21

Event Storming is a good approach for breaking up complex business domains to manageable services¢ Informal and easy approach, because there are no formal rules like

standard notations

¢ The right people are talking about their business domain, so it is ensured that all questions can be answered

¢ Since it is not strictly formalized and everyone is invited to participate, the approach is fun

¢ But, attention¢ Good facilitation skills are needed and ¢ Workshop participants have to get involved

Page 22: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

missachten!

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 22

„We have a historically evolved system. Today it is hardfor us to extend the system with new apps, chatbotsand location-based services because of missing APIs.“

Professional Services / Head of Business Development

Page 23: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 23

Current situation: Monolithic custom-implemented ERP application prevents innovation¢ Complex system without

public APIs

¢ Controls whole business usecases

¢ Difficult to maintain und extend

¢ Fragile solution (each change can lead to inconsistency)

¢ Needs to stay robust and free from defects

Oracle Forms Client

Oracle ADF Application

Page 24: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Service Implementation(fuly-decoupled)

APIs

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 24

Implementation platform overview – The big picture

Validation

Authentication

Throttling

Routing

{json}

{json}

{json}

Filtering

https://guidelines.axonivy.com/projects/guides/wiki/Continuous_integration_delivery

Persistence

DevOps

Developer CS

Container CS

API PlatformCS

Page 25: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Service Implementation(fuly-decoupled)

APIs

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 25

Modernization based on Oracle Cloud Services

Service Implementation(semi-decoupled)Validation

Authentication

Throttling

Routing

Transform

Orchestrate

{json}

{json}

{json}

Filtering

https://guidelines.axonivy.com/projects/guides/wiki/Continuous_integration_delivery

{json}

Connect

API PlatformCS

Container CS

Integration CS

Java CS

SOA CS

Developer CS

Page 26: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps

Solution architecture for the use case based on OMESA reference architecture

Open Modern Enterprise Software Architecture (OMESA) | https://omesa.io

Credits to Luis Weir, Capgemini

Seite 26

User Experience

Service Implementation

Persistence

Web Mobile Device

Single Purpose API

Multi-Purpose API

Mon

itorin

g

Busi

ness

Ana

lytic

s

Secu

rity

Man

agem

ent

Monolithic System RegistryEvent StoreShared Storage Non-shared

Storage

Semi-decoupled Fully-decoupled

Seite 26

Page 27: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 27

OMESA reference architecture

Open Modern Enterprise Software Architecture (OMESA) | https://omesa.io

Credits to Luis Weir, Capgemini

Page 28: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 28

Main Objectives of OMESA¢ All in all, OMESA has 4 main objectives:

1. To deliver a modern and enterprise-wide software reference architecture suitable to combine ”existing" with the "new"

2. Provide guiding principles and definition of terms to ensure the architecture can be interpreted and applied

3. Deliver a vendor agnostic capability model that can add tangible business value to organizations

4. Bring back architectural best practices (based on real live experiences) into modern solutions that are suitable for organizations of any size and industry

Page 29: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

missachten!

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 29

„We are in the process of establishing a centralized communication platform. Itis based on microservices but our development performance is not as goodas we expected. The available infrastructure does not scale. The Developersare not very much motivated because of very slow feedback cycles.“Retailer / Head of IT Governance

Page 30: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 30

Agile software delivery is hard without a DevOps approach¢ Fixed set of technologies (e.g. not Java,

Node.js and .Net), which might block developers to use the most appropriate technologies

¢ No DevOps approach because Software delivery is the responsibility of another team in a different organizational unit; discussions with them are hard

¢ A consistent DevOps approach is needed to be able to establish new services efficiently within a short time-to-market

https://upload.wikimedia.org/wikipedia/commons/thumb/b/b5/Devops.svg/2000px-Devops.svg.png

Page 31: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 31

It’s not a only technical thing; being adaptable and agile concerns the whole organization¢ Changeability is an essential prerequisite for becoming more agile and to

promote innovation

¢ Moving forward is basic for prospective success

¢ New collaboration approaches are needed to improve time-to-market

”It is not the strongest of the species that survives, nor the most intelligent that survives. It is the one that is most adaptable to change.”(Charles Darwin)

Page 32: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 32

Continuous Delivery and Deployment for complex Microservice architecturesWercker¢ Create custom CI/CD pipelines

¢ Chain & trigger pipelines to create complex workflows

¢ Speed up tests by running them in parallel

Source: http://www.wercker.com/platform

Page 33: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

missachten!

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 33

„We are an enterprise company. Softwaredevelopment is usually done by followinga waterfall approach. Our developmentcycles are too long due to organizationalbarriers and rules. On the other hand wehave to come up with new ideas andinnovations to improve our daily work.“Manufacturer / CIO

Source: http://blog.procademysoftware.com/agile-project-management/

Source: http://www.commonplaces.com/blog/agile-vs-waterfall-how-to-approach-your-web-development-project/

Page 34: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 34

Be brave and promote innovation!¢ Initiate digital innovation labs for trying new

ideas and technologies and leverage from PoCs, Pilots, MVPs

¢ Involve those who are affected at an early stage and ask for "advice"

¢ Earlier and quicker feedback on feasibility and acceptance

¢ Change the attitude: “From suit to hoodie wearer“

¢ Change the mentality: “Be ready to fail, adjust and try again.”

PoC

Pilot

MVP

Page 35: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 35

Get support from OutsideInnovation Lab as a Service (ILaaS)

¢ Guru Co-working space

¢ From office space, support from experts, coffee and water => all inclusive for a monthly fee

¢ Example use cases:¢ Supporting and optimizing existing processes with

Mobile apps¢ Hololens for supporting the production process¢ GPS tracking use cases

Source: http://blog.procademysoftware.com/agile-project-management/

Source: http://www.commonplaces.com/blog/agile-vs-waterfall-how-to-approach-your-web-development-project/

Page 36: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 36

ILaaS Approach¢ Choose manageable use case

¢ Fixed iteration length (approximately 4 weeks)¢ Development ends with a Minimal Viable Product (MVP)

¢ Define basic solution architecture

¢ Choose implementation platform & approach

¢ Staff team¢ Technicians (Implementors / Architects)¢ Business stakeholders

¢ Implement MVP

¢ Review

Re-/Define use case

Define solution

architecture

Choose platformStaff team

Implement MVP

ReviewFeedback

Feedback

FeedbackFeedback

Feedback

WithdrawSolution not applicable?

Page 37: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Modernize Your IT Landscape with API-Driven Architectures Seite 37

API Management is the key to ensure agility

Phase 1 Phase 2

ü Finalized definition of the single-purpose APIs on day two in a collaborative way with Apiary

ü Independent development of Mobile app, Mobile Backend, Backend Service and API

ü Problem: Connectivity to the backend system, because Firewall changes took too long (4 weeks project duration, connectivity was available in week 3)

ü Development team was not blocked because implementation of the mobile app was done against the Mock Server functionality in Apiary

Page 38: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 38

It‘s all about change!

Page 39: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 39

OC|Lab ®

Download:http://tinyurl.com/y9k687o5

Page 40: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Plan you next steps

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps

Microservices

DevOps0%DevOps

100% DevOps

0%Microservices

100%Microservices

Backend for Frontend (BfF)0%BfF Usage

100% BfF Usage

Decoupling Backendsfrom Frontends

Use ofMicroservice architecture

Establish a DevOps approach

API-Management0%API-Mgmt.

100% API-Mgmt.

Use ofAPI Management

Application platform0%Platform

100% Platform

Implement an application platform

Seite 40

Page 41: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 41

Summary¢ Understand the business goals and design properly (e.g. Event Storming)

¢ API Management is the key to ensure agility

¢ Ability to change, which means the way¢ how architectures and applications are designed and implemented¢ collaboration between different stakeholders happens¢ how processes and procedures are used

¢ Attitude: “From suit to hoodie wearer”

¢ Mentality: “Be ready to fail, adjust and try again”

¢ Microservices and DevOps belong together and both are not just tools

Page 42: Strategies for efficient Delivery

© OPITZ CONSULTING 2017 Seite 42Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps

Q & A

Page 43: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

¢¢¢ überraschend mehr Möglichkeiten!

@OC_WIRE OPITZCONSULTING opitzconsultingWWW.OPITZ-CONSULTING.COM

Seite 43

In case of any questions, please contact us!

Danilo SchmiedelManaging Consultant Solutions | Oracle ACE Director

OPITZ CONSULTING Deutschland GmbHTempelhofer Weg 64, 12347 Berlin, Germany

Phone: +49 173 7279001Mail: [email protected]

@dschmied

http://inside-bpm-and-soa.blogspot.com

Sven BernhardtSolution Architect | Oracle ACE

OPITZ CONSULTING Deutschland GmbHKirchstrasse 6, 51647 Gummersbach, Germany

Phone: +49 172 2193529Mail: [email protected]

@sbernhardt

https://svenbernhardt.wordpress.com

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps

Page 44: Strategies for efficient Delivery

© OPITZ CONSULTING 2017

möglich

Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 44

Micro service

Micro service

API Gatew

ay

Service Catalog

Conversational platform

Backend Systems