strategies for efficient delivery
Post on 21-Jan-2018
36 Views
Preview:
TRANSCRIPT
© OPITZ CONSULTING 2017
¢¢¢ überraschend mehr Möglichkeiten!
© OPITZ CONSULTING 2017
with APIs, Containers, Microservices, DevOps
Sven Bernhardt, Danilo Schmiedel
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
© OPITZ CONSULTING 2017
möglich
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 3
Scenario #3: Innovation
© OPITZ CONSULTING 2017
missachten!
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 4
© OPITZ CONSULTING 2017
missachten!
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 5
© 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
© 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
© OPITZ CONSULTING 2017
missachten!
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 8
© 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
© 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
© OPITZ CONSULTING 2017
Rücksprache mit Mktg.
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps
How to get there?
Seite 11
© 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
© OPITZ CONSULTING 2017
möglich
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 13
Define the goals
© OPITZ CONSULTING 2017
möglich
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 14
Download:http://tinyurl.com/ydfdyqq9
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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)
© 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
© 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/
© 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
© 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/
© 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?
© 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
© OPITZ CONSULTING 2017
möglich
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 38
It‘s all about change!
© OPITZ CONSULTING 2017
möglich
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps Seite 39
OC|Lab ®
Download:http://tinyurl.com/y9k687o5
© 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
© 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
© OPITZ CONSULTING 2017 Seite 42Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps
Q & A
© 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: danilo.schmiedel@opitz-consulting.com
@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: sven.bernhardt@opitz-consulting.com
@sbernhardt
https://svenbernhardt.wordpress.com
Strategies for Efficient Delivery with APIs, Containers, Microservices, DevOps
© 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
top related