Weitere ähnliche Inhalte Ähnlich wie Strategies for efficient delivery with APIs, containers, microservices and DevOps (20) Mehr von Sven Bernhardt (20) Kürzlich hochgeladen (20) Strategies for efficient delivery with APIs, containers, microservices and DevOps1. © OPITZ CONSULTING 2017
¢¢¢ überraschend mehr Möglichkeiten!
© OPITZ CONSULTING 2017
with APIs, Containers, Microservices, DevOps
Sven Bernhardt, Danilo Schmiedel
Strategies for efficient
Delivery
2. © OPITZ CONSULTING 2017
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
3. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 3
Scenario #3: Innovation
4. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 4
5. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 5
6. © OPITZ CONSULTING 2017
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
Microservices
Containers
Docker
DevOps
Continuous Integration
Continuous Delivery
Cloud
SOA
Integration
7. © OPITZ CONSULTING 2017
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
8. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 8
9. © OPITZ CONSULTING 2017
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
10. © OPITZ CONSULTING 2017
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
11. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
How to get there?
Seite 11
12. © OPITZ CONSULTING 2017
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
13. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 13
Define the goals
14. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 14
Download:
http://tinyurl.com/ydfdyqq9
15. © OPITZ CONSULTING 2017
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
16. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 16
„We have a monolithic backend application. We would like
to slice the application into small functional building blocks.
Our challenge is to find the right size of these building blocks
according to our business requirements. “
Energy (E-Mobility) / Product Owner
17. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 17
One approach to find the right service design
Domain 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
18. © OPITZ CONSULTING 2017
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
19. © OPITZ CONSULTING 2017
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
20. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 20Source: https://www.slideshare.net/ziobrando/model-storming, Slide 60
21. © OPITZ CONSULTING 2017
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
22. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 22
„We have a historically evolved system. Today it is hard
for us to extend the system with new apps, chatbots
and location-based services because of missing APIs.“
Professional Services / Head of Business Development
23. © OPITZ CONSULTING 2017
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 use
cases
¢ 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
24. © OPITZ CONSULTING 2017
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
Develope
r CS
Container
CS
API
PlatformCS
25. © OPITZ CONSULTING 2017
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
Develope
r CS
26. © OPITZ CONSULTING 2017
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
Monitoring
BusinessAnalytics
Security
Management
Monolithic
System
RegistryEvent StoreShared Storage
Non-shared
Storage
Semi-decoupled Fully-decoupled
Seite 26
27. © OPITZ CONSULTING 2017
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
28. © OPITZ CONSULTING 2017
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
29. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 29
„We are in the process of establishing a centralized communication platform. It
is based on microservices but our development performance is not as good
as we expected. The available infrastructure does not scale. The Developers
are not very much motivated because of very slow feedback cycles.“
Retailer / Head of IT Governance
30. © OPITZ CONSULTING 2017
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
31. © OPITZ CONSULTING 2017
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)
32. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 32
Continuous Delivery and Deployment for complex
Microservice architectures
Wercker
¢ 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
33. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 33
„We are an enterprise company. Software
development is usually done by following
a waterfall approach. Our development
cycles are too long due to organizational
barriers and rules. On the other hand we
have to come up with new ideas and
innovations 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/
34. © OPITZ CONSULTING 2017
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
35. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 35
Get support from Outside
Innovation 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/
36. © OPITZ CONSULTING 2017
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
platform
Staff team
Implement
MVP
Review
Feedback
Feedback
FeedbackFeedback
Feedback
Withdraw
Solution not
applicable?
37. © OPITZ CONSULTING 2017 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
38. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 38
It‘s all about change!
39. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 39
OC|Lab ®
Download:
http://tinyurl.com/y9k687o5
40. © OPITZ CONSULTING 2017
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 Backends
from Frontends
Use of
Microservice architecture
Establish a
DevOps approach
API-Management0%
API-Mgmt.
100%
API-Mgmt.
Use of
API Management
Application platform0%
Platform
100%
Platform
Implement an
application platform
Seite 40
41. © OPITZ CONSULTING 2017
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
42. © OPITZ CONSULTING 2017 Seite 42
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Q & A
43. © 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 Schmiedel
Managing Consultant Solutions | Oracle ACE Director
OPITZ CONSULTING Deutschland GmbH
Tempelhofer Weg 64, 12347 Berlin, Germany
Phone: +49 173 7279001
Mail: danilo.schmiedel@opitz-consulting.com
@dschmied
http://inside-bpm-and-soa.blogspot.com
Sven Bernhardt
Solution Architect | Oracle ACE
OPITZ CONSULTING Deutschland GmbH
Kirchstrasse 6, 51647 Gummersbach, Germany
Phone: +49 172 2193529
Mail: sven.bernhardt@opitz-consulting.com
@sbernhardt
https://svenbernhardt.wordpress.com
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
44. © OPITZ CONSULTING 2017
Strategies for Efficient Delivery with APIs, Containers,
Microservices, DevOps
Seite 44
Micro
service
Micro
service
APIGateway
Service Catalog
Conversational
platform
Backend
Systems