SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
© OPITZ CONSULTING 2018
s
¢¢¢ überraschend mehr Möglichkeiten!
© OPITZ CONSULTING 2018
Meaning for µService architectures
Sven Bernhardt
API design-first
© OPITZ CONSULTING 2018 API design-first Seite 2
About me
Sven Bernhardt
¢ Senior Solution Architect @OPITZ CONSULTING Deutschland GmbH
¢ Oracle ACE Director
@sbernhardt
https://svenbernhardt.wordpress.com/
© OPITZ CONSULTING 2018 Seite 3
Agenda
1
2
3
5
APIs today
µServices and APIs
API design-first
Summary
API design-first
4 API life cycle
© OPITZ CONSULTING 2018 Seite 4
Once upon a time
1
API design-first
© OPITZ CONSULTING 2018 API design-first Seite 5
Meaning of APIs today
¢ Today we have more than 22.000 APIs offered by different companies from
different industries
https://www.programmableweb.com/news/apis-show-faster-growth-rate-2019-previous-years/research/2019/07/17
© OPITZ CONSULTING 2018 API Management: Why it matters! Seite 6
© OPITZ CONSULTING 2018 API design-first Seite 7
Application architectures in traditional industries
¢ Contains a set of business functionality,
often implemented as modules
¢ Sharing infrastructure resources
¢ Database
¢ Storage
¢ CPU
¢ Memory
¢ Simple communication between the
modules
¢ Each module has access to all data
ERP
HR
PPM
SCM
Financials
Monolithic application architecture
Business
Capabilities
© OPITZ CONSULTING 2018 API design-first Seite 8
Bi-modal IT – Two speed IT to further innovation
Agility
Innovation
Effectivity
Competitive advantages
Compliance
Efficiency
Standardization
Differentiation
Innovation
New ideas
Better ideas
Tipical ideas
Customer-specific solutions
Standard Software solutions
Systems of Innovation
Systems of Differentiation
Systems of Record
Based on Pace Layered Application Strategy, Gartner 2012
Non-linear IT
§ Not sequential
§ Agile
§ Fast
§ Innovation
§ Disturbance
Traditional IT
§ Security
§ Efficiency
§ Accuracy
§ Tranquility
© OPITZ CONSULTING 2018 Seite 11
µServices and APIs
2
API design-first
© OPITZ CONSULTING 2018 API design-first Seite 12
APIs as a central architecture element
Seite 12
User Experience
Service Implementation
Persistence
Web Mobile DeviceMonitoring
BusinessAnalytics
Security
Management
Monolithic System RegistryEvent StoreShared Storage
Non-shared
Storage
Semi-decoupled Fully-decoupled
http://omesa.io
API
© OPITZ CONSULTING 2018 API design-first Seite 13
Microservices - Organize applications into Business capabilities
¢ Flexibility
¢ Independently releasable
¢ Technologies
¢ Platform
¢ Scalable
¢ Fault tolerant & robust
¢ Decoupled development
¢ Dedicated responsibility and ownership
Microservices are no silver bullets!
IMPORTANT
ERP
HR
PPM
SCM
Financials
µEmployees
© OPITZ CONSULTING 2018 API design-first Seite 14
APIs - Access business capabilities in a secure way
¢ Describes how consumers can use a business capability
¢ Provides a standard-based interface for accessing the
functionality
¢ Decouples Consumer and Provider
¢ Implements cross-cutting concerns, declared as policies
¢ AuthN/AuthZ
¢ Throttling/Rate Limit
¢ Routing
¢ Caching
¢ …
¢ Policy enforcement done by a specific runtime component
µEmployees
API
API Gateway
© OPITZ CONSULTING 2018 API design-first Seite 15
Focus on API Consumers
¢ Main goal: Build consistent and easy-to-use APIs!
¢ Support of different types of consumers (i.a.
introduce Single Purpose APIs)
¢ Development approach needed to support
collaboration already in an early stage:
¢ Decoupled development
¢ Quick feedback cycles
¢ API Mocking
Employees
Storage
µEmployees
µEmployees
Backoffice
API
API Gateway
© OPITZ CONSULTING 2018 API design-first Seite 16
Focus on API Consumers
¢ Main goal: Build consistent and easy-to-use APIs!
¢ Support of different types of consumers (i.a.
introduce Single Purpose APIs)
¢ Development approach needed to support
collaboration already in an early stage:
¢ Decoupled development
¢ Quick feedback cycles
¢ API Mocking
Employees
Storage
µEmployees
µEmployees
Backoffice
API
µEmployees
Mobile
BFF
API
µEmployees
SelfService
App
API Gateway
© OPITZ CONSULTING 2018 Seite 17
API design-first
3
API design-first
© OPITZ CONSULTING 2018 API design-first Seite 18
What is design?
Design is a collaborative process!
Source: https://ytiffanie.wordpress.com/danish-design/what-is-design/
© OPITZ CONSULTING 2018 API design-first Seite 19
API design-first approach
Feedback
Feedback
Intuitive, consistent API design is
key for API acceptance!
IMPORTANT
© OPITZ CONSULTING 2018 API design-first Seite 20
API life cycle
Design
Mock
Try
Create/configureDeploy
Promote,
deprecate, retire
Observe
API ideation &
planning
API life cycle as proposed by Luis Weir
(@luisw19) in his book „Enterprise API
Management“
© OPITZ CONSULTING 2018 Seite 21
API life cycle
4
API design-first
© OPITZ CONSULTING 2018 API design-first Seite 22
Tools supporting an API first design approach
Design Try
Create/
Configure
Deploy Observe
Feedback
Oracle API
Platform
Mock
© OPITZ CONSULTING 2018 API design-first Seite 23
API design-first
¢ Define your API specification collaboratively
¢ Approach helps to ensure usable API Design (UX)
¢ API spec is for API what Wireframes are for UIs!
¢ Tooling should support collaboration (e.g. by providing Git integration)
¢ Support for at least Open API specification; alternatives:
¢ API Blueprint
¢ RAML
¢ WADL
© OPITZ CONSULTING 2018 API design-first Seite 25
API description dialects: How to decide?
¢ Different specifications available with different focus,
representational styles
¢ As always: It depends!
¢ Which use case?
¢ What is the intention?
¢ Team skills?
¢ BUT: You‘re not trapped, if you decide for a dialect!
¢ APIMATIC helps with converting between the dialects
¢ Alternatives: Local tools like „api-spec-converter“ (Node-based)
© OPITZ CONSULTING 2018 API design-first Seite 26
Mock, try and collect for feedback
¢ Provide an API mock very early and without lots of effort
¢ Ideally without coding and deployment
¢ Mock should be easily adjustable in case of feedback and respective changes
¢ Always try to provide representative Mock data, so that API consumers can test it accordingly
¢ Exposing an API Mock with an API Gateway, can help to understand API usage
¢ Share information about the Service Mock with potential API consumers and
developers
¢ Ask for feedback
¢ Take the feedback serious
© OPITZ CONSULTING 2018 Seite 27
Demo – Design with Apiary
API design-first
© OPITZ CONSULTING 2018 API design-first Seite 28
Create and configure the API
¢ Scaffold Client/Server code, e.g by generating Code based on the IDL
¢ Create APIs metadata and documentation (API page)
¢ Define API version
¢ Create API policies
¢ AuthN/AuthZ
¢ Throttling/Rate limit
¢ Key validation
¢ etc.
© OPITZ CONSULTING 2018 API design-first Seite 30
Automate as much as possible
¢ Automate as much as as possible (Build, test, deployment, infrastructure)
¢ Define a consistent Build/Deployment process
¢ Make use of respective automation tools like Jenkins or Wercker
Pull Inspect
Build &
Package
QA Deploy Rollback
1 2 3 4 5 6
1) Checkout Sourcecode
2) Inspect Code and it‘s dependencies
3) Compile, package the Code and publish into an Artefact
repository
4) Quality assurance by conducting tests (Interface,
Functional, Performance, etc.)
5) Deploy to target environment (e.g. Production)
6) Rollback a previous deployment in case of issues with
certain components
© OPITZ CONSULTING 2018 API design-first Seite 31
API Interface testing is key to ensure consistency
¢ Ensure that the implementation adheres to the API design
¢ Correct payload information
¢ Correct HTTP responce codes
¢ Defined HTTP ressources available
¢ Dredd is a lightweight Open-Source HTTP testing framework
¢ Runs against a Backend service
¢ Test are based on the definitions in the API design (Swagger or API Blueprint)
© OPITZ CONSULTING 2018 API design-first Seite 32
View Dredd test results in Apiary
© OPITZ CONSULTING 2018 Seite 33
Demo – Interface testing with Dredd
API design-first
© OPITZ CONSULTING 2018 API design-first Seite 34
Functional and Performance testing
¢ Post-deployment tests of the integrated solution needs to be done ideally using
(semi) automated tests
¢ Run predefined tests from a tests, which describes the expected behaviour of a
certain operation
¢ Run more complex workflow tests
¢ Run performance & stress tests
© OPITZ CONSULTING 2018 API design-first Seite 35
Torch the light - See what‘s going on
¢ Observability is key in modern, distributed IT system landscapes
¢ Important to identify potential issues or bottlenecks
¢ Absolutely necessary to ensure SLA conformity
¢ Try to get as much insights as possible by externalizing as much information as
possible
¢ Different levels to track:
¢ API monitoring
¢ Service monitoring
¢ End-to-end monitoring
¢ Log analytics
¢ Application Performance monitoring
¢ Distributed Tracing
© OPITZ CONSULTING 2018 Seite 36
Summary
5
API design-first
© OPITZ CONSULTING 2018 API design-first Seite 37
Summary
¢ Consistent DevOps approach is key to succeed with µServices & APIs
¢ It’s not just about technology and tools
¢ Strives culture, organization and people
¢ Mindshift change is needed, to successfully implement the approach
¢ Attitude: “From suit to hoodie wearer”
¢ Mentality: “Be ready to fail, adjust and try again”
¢ API design-first approach is essential to implement usable APIs
¢ Not limited to REST; also valid to other Interface definition languages (IDL)
¢ Integrates with existing CI/CD approaches
¢ Prerequisite to grow and further innovation
© OPITZ CONSULTING 2018 API design-first Seite 38
Links & Resources
¢ Apiary: https://apiary.io
¢ API conversions: https://apimatic.io
¢ Dredd HTTP testing: http://dredd.readthedocs.io/en/latest/
¢ Wercker: http://www.wercker.com
¢ API Fortress: https://apifortress.com
¢ API Fortress Data sheet: https://bit.ly/2OQNjVP
¢ Book: Enterprise API Management (Luis Weir, 2019)
© OPITZ CONSULTING 2018 Seite 39API design-first
Q & A
© OPITZ CONSULTING 2018
¢¢¢ überraschend mehr Möglichkeiten!
@OC_WIRE OPITZCONSULTING opitzconsultingWWW.OPITZ-CONSULTING.COM
Seite 40
Thanks for your attention!
Sven Bernhardt
Senior 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
API design-first

Weitere ähnliche Inhalte

Was ist angesagt?

Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...Kai Wähner
 
Highlights of WSO2 API Manager 4.0.0
Highlights of WSO2 API Manager 4.0.0Highlights of WSO2 API Manager 4.0.0
Highlights of WSO2 API Manager 4.0.0WSO2
 
Introduction to Kong API Gateway
Introduction to Kong API GatewayIntroduction to Kong API Gateway
Introduction to Kong API GatewayYohann Ciurlik
 
API first Design and Microservices
API first Design and MicroservicesAPI first Design and Microservices
API first Design and MicroservicesSven Bernhardt
 
AWS Cloud Experience CA: Desplegando y Desarrollando Aplicaciones Modernas en...
AWS Cloud Experience CA: Desplegando y Desarrollando Aplicaciones Modernas en...AWS Cloud Experience CA: Desplegando y Desarrollando Aplicaciones Modernas en...
AWS Cloud Experience CA: Desplegando y Desarrollando Aplicaciones Modernas en...Amazon Web Services LATAM
 
Backstage at CNCF Madison.pptx
Backstage at CNCF Madison.pptxBackstage at CNCF Madison.pptx
Backstage at CNCF Madison.pptxBrandenTimm1
 
Monoliths to microservices workshop
Monoliths to microservices workshopMonoliths to microservices workshop
Monoliths to microservices workshopJudy Breedlove
 
Red Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewRed Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewJames Falkner
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...Simplilearn
 
Microservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SREMicroservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SREAraf Karsh Hamid
 
Low code platform and Outsystems
Low code platform and Outsystems Low code platform and Outsystems
Low code platform and Outsystems Dzung Nguyen
 
The Architecture of an API Platform
The Architecture of an API PlatformThe Architecture of an API Platform
The Architecture of an API PlatformJohannes Ridderstedt
 
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항rockplace
 
How Spotify reaches the 80%+ of satisfaction of the techies making developers...
How Spotify reaches the 80%+ of satisfaction of the techies making developers...How Spotify reaches the 80%+ of satisfaction of the techies making developers...
How Spotify reaches the 80%+ of satisfaction of the techies making developers...Francesco Corti
 

Was ist angesagt? (20)

Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...
 
Highlights of WSO2 API Manager 4.0.0
Highlights of WSO2 API Manager 4.0.0Highlights of WSO2 API Manager 4.0.0
Highlights of WSO2 API Manager 4.0.0
 
Introduction to Kong API Gateway
Introduction to Kong API GatewayIntroduction to Kong API Gateway
Introduction to Kong API Gateway
 
API first Design and Microservices
API first Design and MicroservicesAPI first Design and Microservices
API first Design and Microservices
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
AWS Cloud Experience CA: Desplegando y Desarrollando Aplicaciones Modernas en...
AWS Cloud Experience CA: Desplegando y Desarrollando Aplicaciones Modernas en...AWS Cloud Experience CA: Desplegando y Desarrollando Aplicaciones Modernas en...
AWS Cloud Experience CA: Desplegando y Desarrollando Aplicaciones Modernas en...
 
Backstage at CNCF Madison.pptx
Backstage at CNCF Madison.pptxBackstage at CNCF Madison.pptx
Backstage at CNCF Madison.pptx
 
Monoliths to microservices workshop
Monoliths to microservices workshopMonoliths to microservices workshop
Monoliths to microservices workshop
 
Kong
KongKong
Kong
 
02 api gateway
02 api gateway02 api gateway
02 api gateway
 
Red Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewRed Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform Overview
 
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
DevOps Tutorial For Beginners | DevOps Tutorial | DevOps Tools | DevOps Train...
 
Microservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SREMicroservices Docker Kubernetes Istio Kanban DevOps SRE
Microservices Docker Kubernetes Istio Kanban DevOps SRE
 
Low code platform and Outsystems
Low code platform and Outsystems Low code platform and Outsystems
Low code platform and Outsystems
 
DevOps and AWS
DevOps and AWSDevOps and AWS
DevOps and AWS
 
The Architecture of an API Platform
The Architecture of an API PlatformThe Architecture of an API Platform
The Architecture of an API Platform
 
Api Gateway
Api GatewayApi Gateway
Api Gateway
 
Deep-Dive: Secure API Management
Deep-Dive: Secure API ManagementDeep-Dive: Secure API Management
Deep-Dive: Secure API Management
 
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
 
How Spotify reaches the 80%+ of satisfaction of the techies making developers...
How Spotify reaches the 80%+ of satisfaction of the techies making developers...How Spotify reaches the 80%+ of satisfaction of the techies making developers...
How Spotify reaches the 80%+ of satisfaction of the techies making developers...
 

Ähnlich wie API design-first and Microservices

API-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approachAPI-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approachSven Bernhardt
 
API First - Best Practices for consistent API management
API First - Best Practices for consistent API managementAPI First - Best Practices for consistent API management
API First - Best Practices for consistent API managementSven Bernhardt
 
Implementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCIImplementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCISven Bernhardt
 
Implementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCIImplementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCISven Bernhardt
 
Implementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCIImplementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCISven Bernhardt
 
Evolution of API-driven architectures
Evolution of API-driven architecturesEvolution of API-driven architectures
Evolution of API-driven architecturesSven Bernhardt
 
API Management and why it matters (Oracle API Platform)
API Management and why it matters (Oracle API Platform) API Management and why it matters (Oracle API Platform)
API Management and why it matters (Oracle API Platform) OPITZ CONSULTING Deutschland
 
Strategies for efficient delivery with APIs, containers, microservices and De...
Strategies for efficient delivery with APIs, containers, microservices and De...Strategies for efficient delivery with APIs, containers, microservices and De...
Strategies for efficient delivery with APIs, containers, microservices and De...Sven Bernhardt
 
One Gateway to Rule them All: Building a Federated API Management Platform
One Gateway to Rule them All: Building a Federated API Management PlatformOne Gateway to Rule them All: Building a Federated API Management Platform
One Gateway to Rule them All: Building a Federated API Management PlatformSven Bernhardt
 
Efficient API delivery with APIOps
Efficient API delivery with APIOpsEfficient API delivery with APIOps
Efficient API delivery with APIOpsSven Bernhardt
 
Improve your Cloud Integrations with Test-driven Development
Improve your Cloud Integrations with Test-driven Development Improve your Cloud Integrations with Test-driven Development
Improve your Cloud Integrations with Test-driven Development OPITZ CONSULTING Deutschland
 
Elevating Development: Embracing APIOps for Enhanced Developer Productivity
Elevating Development: Embracing APIOps for Enhanced Developer ProductivityElevating Development: Embracing APIOps for Enhanced Developer Productivity
Elevating Development: Embracing APIOps for Enhanced Developer ProductivitySven Bernhardt
 
Cloud-native Integration in the Oracle Cloud
Cloud-native Integration in the Oracle CloudCloud-native Integration in the Oracle Cloud
Cloud-native Integration in the Oracle CloudSven Bernhardt
 
API Gateway or Service Mesh - Complementary or excluding concepts
API Gateway or Service Mesh - Complementary or excluding conceptsAPI Gateway or Service Mesh - Complementary or excluding concepts
API Gateway or Service Mesh - Complementary or excluding conceptsSven Bernhardt
 
Efficient API delivery with APIOps
Efficient API delivery with APIOpsEfficient API delivery with APIOps
Efficient API delivery with APIOpsSven Bernhardt
 
MuleSoft Meetup Valletta 1.0
MuleSoft Meetup Valletta  1.0MuleSoft Meetup Valletta  1.0
MuleSoft Meetup Valletta 1.0Anastasiia Linnas
 
API Management - Practical Enterprise Implementation Experience
API Management - Practical Enterprise Implementation ExperienceAPI Management - Practical Enterprise Implementation Experience
API Management - Practical Enterprise Implementation ExperienceCapgemini
 

Ähnlich wie API design-first and Microservices (20)

API-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approachAPI-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approach
 
API Management - Why it matters!
API Management - Why it matters!API Management - Why it matters!
API Management - Why it matters!
 
API First - Best Practices for consistent API management
API First - Best Practices for consistent API managementAPI First - Best Practices for consistent API management
API First - Best Practices for consistent API management
 
Implementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCIImplementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCI
 
Implementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCIImplementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCI
 
Implementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCIImplementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCI
 
Evolution of API-driven architectures
Evolution of API-driven architecturesEvolution of API-driven architectures
Evolution of API-driven architectures
 
Evolution of API-driven Architectures
Evolution of API-driven ArchitecturesEvolution of API-driven Architectures
Evolution of API-driven Architectures
 
API Management and why it matters (Oracle API Platform)
API Management and why it matters (Oracle API Platform) API Management and why it matters (Oracle API Platform)
API Management and why it matters (Oracle API Platform)
 
Strategies for efficient Delivery
Strategies for efficient DeliveryStrategies for efficient Delivery
Strategies for efficient Delivery
 
Strategies for efficient delivery with APIs, containers, microservices and De...
Strategies for efficient delivery with APIs, containers, microservices and De...Strategies for efficient delivery with APIs, containers, microservices and De...
Strategies for efficient delivery with APIs, containers, microservices and De...
 
One Gateway to Rule them All: Building a Federated API Management Platform
One Gateway to Rule them All: Building a Federated API Management PlatformOne Gateway to Rule them All: Building a Federated API Management Platform
One Gateway to Rule them All: Building a Federated API Management Platform
 
Efficient API delivery with APIOps
Efficient API delivery with APIOpsEfficient API delivery with APIOps
Efficient API delivery with APIOps
 
Improve your Cloud Integrations with Test-driven Development
Improve your Cloud Integrations with Test-driven Development Improve your Cloud Integrations with Test-driven Development
Improve your Cloud Integrations with Test-driven Development
 
Elevating Development: Embracing APIOps for Enhanced Developer Productivity
Elevating Development: Embracing APIOps for Enhanced Developer ProductivityElevating Development: Embracing APIOps for Enhanced Developer Productivity
Elevating Development: Embracing APIOps for Enhanced Developer Productivity
 
Cloud-native Integration in the Oracle Cloud
Cloud-native Integration in the Oracle CloudCloud-native Integration in the Oracle Cloud
Cloud-native Integration in the Oracle Cloud
 
API Gateway or Service Mesh - Complementary or excluding concepts
API Gateway or Service Mesh - Complementary or excluding conceptsAPI Gateway or Service Mesh - Complementary or excluding concepts
API Gateway or Service Mesh - Complementary or excluding concepts
 
Efficient API delivery with APIOps
Efficient API delivery with APIOpsEfficient API delivery with APIOps
Efficient API delivery with APIOps
 
MuleSoft Meetup Valletta 1.0
MuleSoft Meetup Valletta  1.0MuleSoft Meetup Valletta  1.0
MuleSoft Meetup Valletta 1.0
 
API Management - Practical Enterprise Implementation Experience
API Management - Practical Enterprise Implementation ExperienceAPI Management - Practical Enterprise Implementation Experience
API Management - Practical Enterprise Implementation Experience
 

Mehr von Sven Bernhardt

Effective and simple - integration architectures with Apache Camel and Quarkus
Effective and simple - integration architectures with Apache Camel and QuarkusEffective and simple - integration architectures with Apache Camel and Quarkus
Effective and simple - integration architectures with Apache Camel and QuarkusSven Bernhardt
 
Modernization options for Oracle Forms applications
Modernization options for Oracle Forms applicationsModernization options for Oracle Forms applications
Modernization options for Oracle Forms applicationsSven Bernhardt
 
Kong 101 - Jumpstart into the world of APIs
Kong 101 - Jumpstart into the world of APIsKong 101 - Jumpstart into the world of APIs
Kong 101 - Jumpstart into the world of APIsSven Bernhardt
 
Declarative observability management for Microservice architectures
Declarative observability management for Microservice architecturesDeclarative observability management for Microservice architectures
Declarative observability management for Microservice architecturesSven Bernhardt
 
Integration architectures based on Microservices, APIs and events
Integration architectures based on Microservices,  APIs and eventsIntegration architectures based on Microservices,  APIs and events
Integration architectures based on Microservices, APIs and eventsSven Bernhardt
 
Build and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using KumaBuild and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using KumaSven Bernhardt
 
Build and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using KumaBuild and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using KumaSven Bernhardt
 
Torch the light - Implementing Observability for Microservice Architectures
Torch the light - Implementing Observability for Microservice ArchitecturesTorch the light - Implementing Observability for Microservice Architectures
Torch the light - Implementing Observability for Microservice ArchitecturesSven Bernhardt
 
Analytics meets Integration - Modern Development with Data APIs
Analytics meets Integration - Modern Development with Data APIsAnalytics meets Integration - Modern Development with Data APIs
Analytics meets Integration - Modern Development with Data APIsSven Bernhardt
 
Modern Integration based on OCI Cloud-native Services
Modern Integration based on OCI Cloud-native ServicesModern Integration based on OCI Cloud-native Services
Modern Integration based on OCI Cloud-native ServicesSven Bernhardt
 
Service Mesh Advanced Use Cases
Service Mesh Advanced Use CasesService Mesh Advanced Use Cases
Service Mesh Advanced Use CasesSven Bernhardt
 
Cloud-native Application Development on OCI
Cloud-native Application Development on OCICloud-native Application Development on OCI
Cloud-native Application Development on OCISven Bernhardt
 
Rumble in the Jungle - API Kickstart with Kong
Rumble in the Jungle - API Kickstart with KongRumble in the Jungle - API Kickstart with Kong
Rumble in the Jungle - API Kickstart with KongSven Bernhardt
 
Cloud-native Application Development - The new normal
Cloud-native Application Development - The new normalCloud-native Application Development - The new normal
Cloud-native Application Development - The new normalSven Bernhardt
 
Implementing Cloud-native apps on OCI
Implementing Cloud-native apps on OCIImplementing Cloud-native apps on OCI
Implementing Cloud-native apps on OCISven Bernhardt
 
Service integration made easy with Open Source Kuma
Service integration made easy with Open Source KumaService integration made easy with Open Source Kuma
Service integration made easy with Open Source KumaSven Bernhardt
 
Cloud-native is just part of the game
Cloud-native is just part of the gameCloud-native is just part of the game
Cloud-native is just part of the gameSven Bernhardt
 
API Gateway or Service mesh - Complementary or excluding concepts
API Gateway or Service mesh - Complementary or excluding conceptsAPI Gateway or Service mesh - Complementary or excluding concepts
API Gateway or Service mesh - Complementary or excluding conceptsSven Bernhardt
 
Cloud-native Integration in the Oracle Cloud
Cloud-native Integration in the Oracle CloudCloud-native Integration in the Oracle Cloud
Cloud-native Integration in the Oracle CloudSven Bernhardt
 
Flexible, hybrid API-led software architectures with Kong
Flexible, hybrid API-led software architectures with KongFlexible, hybrid API-led software architectures with Kong
Flexible, hybrid API-led software architectures with KongSven Bernhardt
 

Mehr von Sven Bernhardt (20)

Effective and simple - integration architectures with Apache Camel and Quarkus
Effective and simple - integration architectures with Apache Camel and QuarkusEffective and simple - integration architectures with Apache Camel and Quarkus
Effective and simple - integration architectures with Apache Camel and Quarkus
 
Modernization options for Oracle Forms applications
Modernization options for Oracle Forms applicationsModernization options for Oracle Forms applications
Modernization options for Oracle Forms applications
 
Kong 101 - Jumpstart into the world of APIs
Kong 101 - Jumpstart into the world of APIsKong 101 - Jumpstart into the world of APIs
Kong 101 - Jumpstart into the world of APIs
 
Declarative observability management for Microservice architectures
Declarative observability management for Microservice architecturesDeclarative observability management for Microservice architectures
Declarative observability management for Microservice architectures
 
Integration architectures based on Microservices, APIs and events
Integration architectures based on Microservices,  APIs and eventsIntegration architectures based on Microservices,  APIs and events
Integration architectures based on Microservices, APIs and events
 
Build and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using KumaBuild and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using Kuma
 
Build and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using KumaBuild and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using Kuma
 
Torch the light - Implementing Observability for Microservice Architectures
Torch the light - Implementing Observability for Microservice ArchitecturesTorch the light - Implementing Observability for Microservice Architectures
Torch the light - Implementing Observability for Microservice Architectures
 
Analytics meets Integration - Modern Development with Data APIs
Analytics meets Integration - Modern Development with Data APIsAnalytics meets Integration - Modern Development with Data APIs
Analytics meets Integration - Modern Development with Data APIs
 
Modern Integration based on OCI Cloud-native Services
Modern Integration based on OCI Cloud-native ServicesModern Integration based on OCI Cloud-native Services
Modern Integration based on OCI Cloud-native Services
 
Service Mesh Advanced Use Cases
Service Mesh Advanced Use CasesService Mesh Advanced Use Cases
Service Mesh Advanced Use Cases
 
Cloud-native Application Development on OCI
Cloud-native Application Development on OCICloud-native Application Development on OCI
Cloud-native Application Development on OCI
 
Rumble in the Jungle - API Kickstart with Kong
Rumble in the Jungle - API Kickstart with KongRumble in the Jungle - API Kickstart with Kong
Rumble in the Jungle - API Kickstart with Kong
 
Cloud-native Application Development - The new normal
Cloud-native Application Development - The new normalCloud-native Application Development - The new normal
Cloud-native Application Development - The new normal
 
Implementing Cloud-native apps on OCI
Implementing Cloud-native apps on OCIImplementing Cloud-native apps on OCI
Implementing Cloud-native apps on OCI
 
Service integration made easy with Open Source Kuma
Service integration made easy with Open Source KumaService integration made easy with Open Source Kuma
Service integration made easy with Open Source Kuma
 
Cloud-native is just part of the game
Cloud-native is just part of the gameCloud-native is just part of the game
Cloud-native is just part of the game
 
API Gateway or Service mesh - Complementary or excluding concepts
API Gateway or Service mesh - Complementary or excluding conceptsAPI Gateway or Service mesh - Complementary or excluding concepts
API Gateway or Service mesh - Complementary or excluding concepts
 
Cloud-native Integration in the Oracle Cloud
Cloud-native Integration in the Oracle CloudCloud-native Integration in the Oracle Cloud
Cloud-native Integration in the Oracle Cloud
 
Flexible, hybrid API-led software architectures with Kong
Flexible, hybrid API-led software architectures with KongFlexible, hybrid API-led software architectures with Kong
Flexible, hybrid API-led software architectures with Kong
 

Kürzlich hochgeladen

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 

Kürzlich hochgeladen (20)

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 

API design-first and Microservices

  • 1. © OPITZ CONSULTING 2018 s ¢¢¢ überraschend mehr Möglichkeiten! © OPITZ CONSULTING 2018 Meaning for µService architectures Sven Bernhardt API design-first
  • 2. © OPITZ CONSULTING 2018 API design-first Seite 2 About me Sven Bernhardt ¢ Senior Solution Architect @OPITZ CONSULTING Deutschland GmbH ¢ Oracle ACE Director @sbernhardt https://svenbernhardt.wordpress.com/
  • 3. © OPITZ CONSULTING 2018 Seite 3 Agenda 1 2 3 5 APIs today µServices and APIs API design-first Summary API design-first 4 API life cycle
  • 4. © OPITZ CONSULTING 2018 Seite 4 Once upon a time 1 API design-first
  • 5. © OPITZ CONSULTING 2018 API design-first Seite 5 Meaning of APIs today ¢ Today we have more than 22.000 APIs offered by different companies from different industries https://www.programmableweb.com/news/apis-show-faster-growth-rate-2019-previous-years/research/2019/07/17
  • 6. © OPITZ CONSULTING 2018 API Management: Why it matters! Seite 6
  • 7. © OPITZ CONSULTING 2018 API design-first Seite 7 Application architectures in traditional industries ¢ Contains a set of business functionality, often implemented as modules ¢ Sharing infrastructure resources ¢ Database ¢ Storage ¢ CPU ¢ Memory ¢ Simple communication between the modules ¢ Each module has access to all data ERP HR PPM SCM Financials Monolithic application architecture Business Capabilities
  • 8. © OPITZ CONSULTING 2018 API design-first Seite 8 Bi-modal IT – Two speed IT to further innovation Agility Innovation Effectivity Competitive advantages Compliance Efficiency Standardization Differentiation Innovation New ideas Better ideas Tipical ideas Customer-specific solutions Standard Software solutions Systems of Innovation Systems of Differentiation Systems of Record Based on Pace Layered Application Strategy, Gartner 2012 Non-linear IT § Not sequential § Agile § Fast § Innovation § Disturbance Traditional IT § Security § Efficiency § Accuracy § Tranquility
  • 9. © OPITZ CONSULTING 2018 Seite 11 µServices and APIs 2 API design-first
  • 10. © OPITZ CONSULTING 2018 API design-first Seite 12 APIs as a central architecture element Seite 12 User Experience Service Implementation Persistence Web Mobile DeviceMonitoring BusinessAnalytics Security Management Monolithic System RegistryEvent StoreShared Storage Non-shared Storage Semi-decoupled Fully-decoupled http://omesa.io API
  • 11. © OPITZ CONSULTING 2018 API design-first Seite 13 Microservices - Organize applications into Business capabilities ¢ Flexibility ¢ Independently releasable ¢ Technologies ¢ Platform ¢ Scalable ¢ Fault tolerant & robust ¢ Decoupled development ¢ Dedicated responsibility and ownership Microservices are no silver bullets! IMPORTANT ERP HR PPM SCM Financials µEmployees
  • 12. © OPITZ CONSULTING 2018 API design-first Seite 14 APIs - Access business capabilities in a secure way ¢ Describes how consumers can use a business capability ¢ Provides a standard-based interface for accessing the functionality ¢ Decouples Consumer and Provider ¢ Implements cross-cutting concerns, declared as policies ¢ AuthN/AuthZ ¢ Throttling/Rate Limit ¢ Routing ¢ Caching ¢ … ¢ Policy enforcement done by a specific runtime component µEmployees API API Gateway
  • 13. © OPITZ CONSULTING 2018 API design-first Seite 15 Focus on API Consumers ¢ Main goal: Build consistent and easy-to-use APIs! ¢ Support of different types of consumers (i.a. introduce Single Purpose APIs) ¢ Development approach needed to support collaboration already in an early stage: ¢ Decoupled development ¢ Quick feedback cycles ¢ API Mocking Employees Storage µEmployees µEmployees Backoffice API API Gateway
  • 14. © OPITZ CONSULTING 2018 API design-first Seite 16 Focus on API Consumers ¢ Main goal: Build consistent and easy-to-use APIs! ¢ Support of different types of consumers (i.a. introduce Single Purpose APIs) ¢ Development approach needed to support collaboration already in an early stage: ¢ Decoupled development ¢ Quick feedback cycles ¢ API Mocking Employees Storage µEmployees µEmployees Backoffice API µEmployees Mobile BFF API µEmployees SelfService App API Gateway
  • 15. © OPITZ CONSULTING 2018 Seite 17 API design-first 3 API design-first
  • 16. © OPITZ CONSULTING 2018 API design-first Seite 18 What is design? Design is a collaborative process! Source: https://ytiffanie.wordpress.com/danish-design/what-is-design/
  • 17. © OPITZ CONSULTING 2018 API design-first Seite 19 API design-first approach Feedback Feedback Intuitive, consistent API design is key for API acceptance! IMPORTANT
  • 18. © OPITZ CONSULTING 2018 API design-first Seite 20 API life cycle Design Mock Try Create/configureDeploy Promote, deprecate, retire Observe API ideation & planning API life cycle as proposed by Luis Weir (@luisw19) in his book „Enterprise API Management“
  • 19. © OPITZ CONSULTING 2018 Seite 21 API life cycle 4 API design-first
  • 20. © OPITZ CONSULTING 2018 API design-first Seite 22 Tools supporting an API first design approach Design Try Create/ Configure Deploy Observe Feedback Oracle API Platform Mock
  • 21. © OPITZ CONSULTING 2018 API design-first Seite 23 API design-first ¢ Define your API specification collaboratively ¢ Approach helps to ensure usable API Design (UX) ¢ API spec is for API what Wireframes are for UIs! ¢ Tooling should support collaboration (e.g. by providing Git integration) ¢ Support for at least Open API specification; alternatives: ¢ API Blueprint ¢ RAML ¢ WADL
  • 22. © OPITZ CONSULTING 2018 API design-first Seite 25 API description dialects: How to decide? ¢ Different specifications available with different focus, representational styles ¢ As always: It depends! ¢ Which use case? ¢ What is the intention? ¢ Team skills? ¢ BUT: You‘re not trapped, if you decide for a dialect! ¢ APIMATIC helps with converting between the dialects ¢ Alternatives: Local tools like „api-spec-converter“ (Node-based)
  • 23. © OPITZ CONSULTING 2018 API design-first Seite 26 Mock, try and collect for feedback ¢ Provide an API mock very early and without lots of effort ¢ Ideally without coding and deployment ¢ Mock should be easily adjustable in case of feedback and respective changes ¢ Always try to provide representative Mock data, so that API consumers can test it accordingly ¢ Exposing an API Mock with an API Gateway, can help to understand API usage ¢ Share information about the Service Mock with potential API consumers and developers ¢ Ask for feedback ¢ Take the feedback serious
  • 24. © OPITZ CONSULTING 2018 Seite 27 Demo – Design with Apiary API design-first
  • 25. © OPITZ CONSULTING 2018 API design-first Seite 28 Create and configure the API ¢ Scaffold Client/Server code, e.g by generating Code based on the IDL ¢ Create APIs metadata and documentation (API page) ¢ Define API version ¢ Create API policies ¢ AuthN/AuthZ ¢ Throttling/Rate limit ¢ Key validation ¢ etc.
  • 26. © OPITZ CONSULTING 2018 API design-first Seite 30 Automate as much as possible ¢ Automate as much as as possible (Build, test, deployment, infrastructure) ¢ Define a consistent Build/Deployment process ¢ Make use of respective automation tools like Jenkins or Wercker Pull Inspect Build & Package QA Deploy Rollback 1 2 3 4 5 6 1) Checkout Sourcecode 2) Inspect Code and it‘s dependencies 3) Compile, package the Code and publish into an Artefact repository 4) Quality assurance by conducting tests (Interface, Functional, Performance, etc.) 5) Deploy to target environment (e.g. Production) 6) Rollback a previous deployment in case of issues with certain components
  • 27. © OPITZ CONSULTING 2018 API design-first Seite 31 API Interface testing is key to ensure consistency ¢ Ensure that the implementation adheres to the API design ¢ Correct payload information ¢ Correct HTTP responce codes ¢ Defined HTTP ressources available ¢ Dredd is a lightweight Open-Source HTTP testing framework ¢ Runs against a Backend service ¢ Test are based on the definitions in the API design (Swagger or API Blueprint)
  • 28. © OPITZ CONSULTING 2018 API design-first Seite 32 View Dredd test results in Apiary
  • 29. © OPITZ CONSULTING 2018 Seite 33 Demo – Interface testing with Dredd API design-first
  • 30. © OPITZ CONSULTING 2018 API design-first Seite 34 Functional and Performance testing ¢ Post-deployment tests of the integrated solution needs to be done ideally using (semi) automated tests ¢ Run predefined tests from a tests, which describes the expected behaviour of a certain operation ¢ Run more complex workflow tests ¢ Run performance & stress tests
  • 31. © OPITZ CONSULTING 2018 API design-first Seite 35 Torch the light - See what‘s going on ¢ Observability is key in modern, distributed IT system landscapes ¢ Important to identify potential issues or bottlenecks ¢ Absolutely necessary to ensure SLA conformity ¢ Try to get as much insights as possible by externalizing as much information as possible ¢ Different levels to track: ¢ API monitoring ¢ Service monitoring ¢ End-to-end monitoring ¢ Log analytics ¢ Application Performance monitoring ¢ Distributed Tracing
  • 32. © OPITZ CONSULTING 2018 Seite 36 Summary 5 API design-first
  • 33. © OPITZ CONSULTING 2018 API design-first Seite 37 Summary ¢ Consistent DevOps approach is key to succeed with µServices & APIs ¢ It’s not just about technology and tools ¢ Strives culture, organization and people ¢ Mindshift change is needed, to successfully implement the approach ¢ Attitude: “From suit to hoodie wearer” ¢ Mentality: “Be ready to fail, adjust and try again” ¢ API design-first approach is essential to implement usable APIs ¢ Not limited to REST; also valid to other Interface definition languages (IDL) ¢ Integrates with existing CI/CD approaches ¢ Prerequisite to grow and further innovation
  • 34. © OPITZ CONSULTING 2018 API design-first Seite 38 Links & Resources ¢ Apiary: https://apiary.io ¢ API conversions: https://apimatic.io ¢ Dredd HTTP testing: http://dredd.readthedocs.io/en/latest/ ¢ Wercker: http://www.wercker.com ¢ API Fortress: https://apifortress.com ¢ API Fortress Data sheet: https://bit.ly/2OQNjVP ¢ Book: Enterprise API Management (Luis Weir, 2019)
  • 35. © OPITZ CONSULTING 2018 Seite 39API design-first Q & A
  • 36. © OPITZ CONSULTING 2018 ¢¢¢ überraschend mehr Möglichkeiten! @OC_WIRE OPITZCONSULTING opitzconsultingWWW.OPITZ-CONSULTING.COM Seite 40 Thanks for your attention! Sven Bernhardt Senior 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 API design-first