SlideShare a Scribd company logo
1 of 16
SIXTREE 2015
API & Microservices Meetup#1
Welcome
Background
Goals
Rules
Next event: Venue & Speakers
SIXTREE 2015
API-led DesignDamian Harvey, Principal Consultant
Sixtree.
Auckland API & Microservices Meetup#1
SIXTREE 2015
Why? Avoid fail. Move fast.
SIXTREE 2015
What are APIs?
• When we talk about APIs we are talking about “Web” APIs.
• Bits of logic that encapsulate the data they operate on and provide an
interface as the only way to access their functionality.
API-led design means:
1. Starting the solution design process with APIs and
2. Crafting APIs rather than throwing them up.
Back up a bit
SIXTREE 2015
API rock-stars
SIXTREE 2015
• Increase Agility
• Consume rather than build.
• New business models
• Self-service IT
• Composable Enterprise
• Mobile enablement
• Parallel development
• Governance & Control
Why APIs?
SIXTREE 2015
What is Design?
• ‘Making things better for people' - Richard Seymour, Design Council 2002
• Design is a work process which has a user perspective and drives development
based on your specific customers’ needs
Who is the API Customer?
Developers? The Business? Both?
Back up a bit more
SIXTREE 2015
We all like good design
SIXTREE 2015
Good design:
1. Is innovative
2. Makes a product useful
3. Is aesthetic
4. Makes a product
understandable
5. Is unobtrusive
1. Is honest
2. Is long-lasting
3. Is thorough down to the last
detail
4. Is environmentally friendly(?)
5. Is as little design as possible
10 Commandments of good design
- Dieter Rams. Design legend.
SIXTREE 2015
• Alignment between Business, Stakeholders & IT
• APIs are crafted in response to a customer need rather than generated
from a developers code (hide your complexity).
• Quicker and cheaper to make change during design phase.
• Once it’s code it takes longer (even if you have great DevOps)
• Allows engagement with Customers in the creation of the API.
• Prototyping.
• Enables parallel development of front-end and back-end.
• Self-documenting.
Why lead with API Design?
SIXTREE 2015
What’s the alternative?
• Typically code your web services and pull them up into an API
specification.
• Focus is on the service developer not on the API consumer.
• Result is an API that shows all of the complexity in your
codebase and domain.
• Result is nasty APIs. Poor engagement. Fail.
SIXTREE 2015
5 steps:
1. Create high-level domain model (get the language right).
2. Model the state (get the actions right).
3. Create the API outline in an API specification language.
4. Verify that the specification conforms to domain. Update if needed.
5. Flesh out the specification with low-level “developer” detail.
API Design methodology
SIXTREE 2015
• Avoid dumping the whole Domain into the API.
• Avoid “Fat” APIs that cover too many Domains
o eg. /flights, /employees, /invoices all in the one API
o Fat APIs change too frequently. Favour multiple smaller APIs with
fewer owners.
• Avoid inconsistent naming
o eg. resourcename not resourceName, resource-name, resource_name.
o eg. passenger, pax, customer, cust – pick one. “Ubiquitous language”
API Design anti-patterns
13
SIXTREE 2015
RAML
• RAML stands for RESTful API Modeling Language.
• Based on YAML, so if you like tabs….
• Open specification created by MuleSoft
• Alternatives: Swagger, API Blueprint, WADL(?)…etc
• Mule Anypoint API Designer (free) has great RAML editor.
• Can mock out API once specified.
• Can generate code (eg. JAX-RS, Go) from RAML.
• Generates excellent documentation with live interaction.
SIXTREE 2015
Conclusion
• API-led design isn’t about adding roadblocks.
• It’s about crafting something that will have value.
SIXTREE 2015
APIdays 2015: Auckland October 19

More Related Content

What's hot

Introduction to the Art of API Practice
Introduction to the Art of API PracticeIntroduction to the Art of API Practice
Introduction to the Art of API PracticeBill Doerrfeld
 
SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!Sam Basu
 
Microservice Stategies - Scaling your API design workflow
Microservice Stategies - Scaling your API design workflowMicroservice Stategies - Scaling your API design workflow
Microservice Stategies - Scaling your API design workflowJakub Nesetril
 
Essential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramEssential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramJason Harmon
 
Introduction to Kitura - Swift Hong Kong Meetup 2016 July
Introduction to Kitura - Swift Hong Kong Meetup 2016 JulyIntroduction to Kitura - Swift Hong Kong Meetup 2016 July
Introduction to Kitura - Swift Hong Kong Meetup 2016 JulyPatrick C.S. Fan
 
Pure APIs: Development workflows for successful API integrations
Pure APIs: Development workflows for successful API integrationsPure APIs: Development workflows for successful API integrations
Pure APIs: Development workflows for successful API integrationsJosé Haro Peralta
 
apidays LIVE Australia 2021 - Confessions of a Product Geek : My First API BY...
apidays LIVE Australia 2021 - Confessions of a Product Geek : My First API BY...apidays LIVE Australia 2021 - Confessions of a Product Geek : My First API BY...
apidays LIVE Australia 2021 - Confessions of a Product Geek : My First API BY...apidays
 
apidays LIVE Hong Kong 2021 - Better API DX with a CLI by Phil Nash, Twilio
apidays LIVE Hong Kong 2021 - Better API DX with a CLI by Phil Nash, Twilioapidays LIVE Hong Kong 2021 - Better API DX with a CLI by Phil Nash, Twilio
apidays LIVE Hong Kong 2021 - Better API DX with a CLI by Phil Nash, Twilioapidays
 
Preparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with EasylPreparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with EasylLohith Goudagere Nagaraj
 
Why APIs are Different Than Integration
Why APIs are Different Than IntegrationWhy APIs are Different Than Integration
Why APIs are Different Than IntegrationApigee | Google Cloud
 
apidays LIVE Paris - Succeeding with API Programs by Kiran Nadgir
apidays LIVE Paris - Succeeding with API Programs by Kiran Nadgirapidays LIVE Paris - Succeeding with API Programs by Kiran Nadgir
apidays LIVE Paris - Succeeding with API Programs by Kiran Nadgirapidays
 
Connecting Your In-Premise Database To Mobile Apps
Connecting Your In-Premise Database To Mobile AppsConnecting Your In-Premise Database To Mobile Apps
Connecting Your In-Premise Database To Mobile AppsLohith Goudagere Nagaraj
 
Life After Microservices – Shifting the Boundaries
Life After Microservices – Shifting the BoundariesLife After Microservices – Shifting the Boundaries
Life After Microservices – Shifting the BoundariesNordic APIs
 
API SDK Development – Lessons Learned
API SDK Development – Lessons LearnedAPI SDK Development – Lessons Learned
API SDK Development – Lessons LearnedPronovix
 
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botifyapidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botifyapidays
 
Leaping Forward: Finding The Future of Your API Docs
Leaping Forward: Finding The Future of Your API DocsLeaping Forward: Finding The Future of Your API Docs
Leaping Forward: Finding The Future of Your API DocsPronovix
 
API first approach for frontend developers
API first approach for frontend developersAPI first approach for frontend developers
API first approach for frontend developersFDConf
 
Java 8 - Gateway Drug or End of Line?
Java 8 - Gateway Drug or End of Line?Java 8 - Gateway Drug or End of Line?
Java 8 - Gateway Drug or End of Line?Garth Gilmour
 

What's hot (20)

Introduction to the Art of API Practice
Introduction to the Art of API PracticeIntroduction to the Art of API Practice
Introduction to the Art of API Practice
 
Native Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile AppsNative Touches to your Hybrid Mobile Apps
Native Touches to your Hybrid Mobile Apps
 
SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!
 
Microservice Stategies - Scaling your API design workflow
Microservice Stategies - Scaling your API design workflowMicroservice Stategies - Scaling your API design workflow
Microservice Stategies - Scaling your API design workflow
 
Essential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramEssential Ingredients for a Successful API Program
Essential Ingredients for a Successful API Program
 
API Management and Kubernetes
API Management and KubernetesAPI Management and Kubernetes
API Management and Kubernetes
 
Introduction to Kitura - Swift Hong Kong Meetup 2016 July
Introduction to Kitura - Swift Hong Kong Meetup 2016 JulyIntroduction to Kitura - Swift Hong Kong Meetup 2016 July
Introduction to Kitura - Swift Hong Kong Meetup 2016 July
 
Pure APIs: Development workflows for successful API integrations
Pure APIs: Development workflows for successful API integrationsPure APIs: Development workflows for successful API integrations
Pure APIs: Development workflows for successful API integrations
 
apidays LIVE Australia 2021 - Confessions of a Product Geek : My First API BY...
apidays LIVE Australia 2021 - Confessions of a Product Geek : My First API BY...apidays LIVE Australia 2021 - Confessions of a Product Geek : My First API BY...
apidays LIVE Australia 2021 - Confessions of a Product Geek : My First API BY...
 
apidays LIVE Hong Kong 2021 - Better API DX with a CLI by Phil Nash, Twilio
apidays LIVE Hong Kong 2021 - Better API DX with a CLI by Phil Nash, Twilioapidays LIVE Hong Kong 2021 - Better API DX with a CLI by Phil Nash, Twilio
apidays LIVE Hong Kong 2021 - Better API DX with a CLI by Phil Nash, Twilio
 
Preparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with EasylPreparing Big Data for Analysis with Easyl
Preparing Big Data for Analysis with Easyl
 
Why APIs are Different Than Integration
Why APIs are Different Than IntegrationWhy APIs are Different Than Integration
Why APIs are Different Than Integration
 
apidays LIVE Paris - Succeeding with API Programs by Kiran Nadgir
apidays LIVE Paris - Succeeding with API Programs by Kiran Nadgirapidays LIVE Paris - Succeeding with API Programs by Kiran Nadgir
apidays LIVE Paris - Succeeding with API Programs by Kiran Nadgir
 
Connecting Your In-Premise Database To Mobile Apps
Connecting Your In-Premise Database To Mobile AppsConnecting Your In-Premise Database To Mobile Apps
Connecting Your In-Premise Database To Mobile Apps
 
Life After Microservices – Shifting the Boundaries
Life After Microservices – Shifting the BoundariesLife After Microservices – Shifting the Boundaries
Life After Microservices – Shifting the Boundaries
 
API SDK Development – Lessons Learned
API SDK Development – Lessons LearnedAPI SDK Development – Lessons Learned
API SDK Development – Lessons Learned
 
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botifyapidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
 
Leaping Forward: Finding The Future of Your API Docs
Leaping Forward: Finding The Future of Your API DocsLeaping Forward: Finding The Future of Your API Docs
Leaping Forward: Finding The Future of Your API Docs
 
API first approach for frontend developers
API first approach for frontend developersAPI first approach for frontend developers
API first approach for frontend developers
 
Java 8 - Gateway Drug or End of Line?
Java 8 - Gateway Drug or End of Line?Java 8 - Gateway Drug or End of Line?
Java 8 - Gateway Drug or End of Line?
 

Viewers also liked

Microservices 101: opportunities, dilemmas and problems
Microservices 101: opportunities, dilemmas and problemsMicroservices 101: opportunities, dilemmas and problems
Microservices 101: opportunities, dilemmas and problemsŁukasz Sowa
 
Microservices 101 - The Big Why?
Microservices 101 - The Big Why?Microservices 101 - The Big Why?
Microservices 101 - The Big Why?Yamen Sader
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architectureFaren faren
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementLilia Sfaxi
 
REST and Microservices
REST and MicroservicesREST and Microservices
REST and MicroservicesShaun Abram
 
Microservices: Where do they fit within a rapidly evolving integration archit...
Microservices: Where do they fit within a rapidly evolving integration archit...Microservices: Where do they fit within a rapidly evolving integration archit...
Microservices: Where do they fit within a rapidly evolving integration archit...Kim Clark
 

Viewers also liked (7)

Microservices 101: opportunities, dilemmas and problems
Microservices 101: opportunities, dilemmas and problemsMicroservices 101: opportunities, dilemmas and problems
Microservices 101: opportunities, dilemmas and problems
 
Microservices 101 - The Big Why?
Microservices 101 - The Big Why?Microservices 101 - The Big Why?
Microservices 101 - The Big Why?
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Revitalizing Aging Architectures with Microservices
Revitalizing Aging Architectures with MicroservicesRevitalizing Aging Architectures with Microservices
Revitalizing Aging Architectures with Microservices
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API Management
 
REST and Microservices
REST and MicroservicesREST and Microservices
REST and Microservices
 
Microservices: Where do they fit within a rapidly evolving integration archit...
Microservices: Where do they fit within a rapidly evolving integration archit...Microservices: Where do they fit within a rapidly evolving integration archit...
Microservices: Where do they fit within a rapidly evolving integration archit...
 

Similar to Auckland API & Microservices Meetup 1: API led design

Practical Application of API-First in microservices development
Practical Application of API-First in microservices developmentPractical Application of API-First in microservices development
Practical Application of API-First in microservices developmentChavdar Baikov
 
Alfresco Digital Business Platform - Why, How, What
Alfresco Digital Business Platform - Why, How, WhatAlfresco Digital Business Platform - Why, How, What
Alfresco Digital Business Platform - Why, How, WhatMario Romano
 
Top 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationTop 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationOCTO Technology
 
API Management: Unlock the Value of Your Unique Assets with a Robust API
API Management: Unlock the Value of Your Unique Assets with a Robust APIAPI Management: Unlock the Value of Your Unique Assets with a Robust API
API Management: Unlock the Value of Your Unique Assets with a Robust APISoftware AG
 
Driving Digital Innovation with a Layered API Design Approach
Driving Digital Innovation with a Layered API Design ApproachDriving Digital Innovation with a Layered API Design Approach
Driving Digital Innovation with a Layered API Design ApproachAkana
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for LongevityMuleSoft
 
Lessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxLessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxapidays
 
APIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside OutAPIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside Out3scale
 
Pitney Bowes Uses Development and Testing Tools to Drive Early API Developmen...
Pitney Bowes Uses Development and Testing Tools to Drive Early API Developmen...Pitney Bowes Uses Development and Testing Tools to Drive Early API Developmen...
Pitney Bowes Uses Development and Testing Tools to Drive Early API Developmen...CA Technologies
 
APIs as a Product Strategy
APIs as a Product StrategyAPIs as a Product Strategy
APIs as a Product StrategyRavi Kumar
 
MuleSoft Meetup Winnipeg: Maiden Edition
MuleSoft Meetup Winnipeg: Maiden EditionMuleSoft Meetup Winnipeg: Maiden Edition
MuleSoft Meetup Winnipeg: Maiden EditionMannaAkpan
 
API Economy - Cuomo
API Economy - Cuomo API Economy - Cuomo
API Economy - Cuomo Prolifics
 
SAP Cloud Platform API Management Technical Brief
SAP Cloud Platform API Management Technical BriefSAP Cloud Platform API Management Technical Brief
SAP Cloud Platform API Management Technical BriefSAP Cloud Platform
 
API-first, going beyond SOA, ESB & Integration
API-first, going beyond SOA, ESB & IntegrationAPI-first, going beyond SOA, ESB & Integration
API-first, going beyond SOA, ESB & IntegrationApigee | Google Cloud
 
WSO2Con Asia 2014 - Building the API-Centric Enterprise
WSO2Con Asia 2014 - Building the API-Centric EnterpriseWSO2Con Asia 2014 - Building the API-Centric Enterprise
WSO2Con Asia 2014 - Building the API-Centric EnterpriseWSO2
 
Exposing Business Functionalities with SOA, Integration and API Management
Exposing Business Functionalities with SOA, Integration and API ManagementExposing Business Functionalities with SOA, Integration and API Management
Exposing Business Functionalities with SOA, Integration and API ManagementWSO2
 
Practical guide to building public APIs
Practical guide to building public APIsPractical guide to building public APIs
Practical guide to building public APIsReda Hmeid MBCS
 
MuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
MuleSoft Surat Meetup#39 - Pragmatic API Led ConnectivityMuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
MuleSoft Surat Meetup#39 - Pragmatic API Led ConnectivityJitendra Bafna
 

Similar to Auckland API & Microservices Meetup 1: API led design (20)

Practical Application of API-First in microservices development
Practical Application of API-First in microservices developmentPractical Application of API-First in microservices development
Practical Application of API-First in microservices development
 
Alfresco Digital Business Platform - Why, How, What
Alfresco Digital Business Platform - Why, How, WhatAlfresco Digital Business Platform - Why, How, What
Alfresco Digital Business Platform - Why, How, What
 
Top 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationTop 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementation
 
Octo API-days 2015
Octo API-days 2015Octo API-days 2015
Octo API-days 2015
 
Effective API Design
Effective API DesignEffective API Design
Effective API Design
 
API Management: Unlock the Value of Your Unique Assets with a Robust API
API Management: Unlock the Value of Your Unique Assets with a Robust APIAPI Management: Unlock the Value of Your Unique Assets with a Robust API
API Management: Unlock the Value of Your Unique Assets with a Robust API
 
Driving Digital Innovation with a Layered API Design Approach
Driving Digital Innovation with a Layered API Design ApproachDriving Digital Innovation with a Layered API Design Approach
Driving Digital Innovation with a Layered API Design Approach
 
Building a REST API for Longevity
Building a REST API for LongevityBuilding a REST API for Longevity
Building a REST API for Longevity
 
Lessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxLessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptx
 
APIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside OutAPIS for Startups - Running your Business Inside Out
APIS for Startups - Running your Business Inside Out
 
Pitney Bowes Uses Development and Testing Tools to Drive Early API Developmen...
Pitney Bowes Uses Development and Testing Tools to Drive Early API Developmen...Pitney Bowes Uses Development and Testing Tools to Drive Early API Developmen...
Pitney Bowes Uses Development and Testing Tools to Drive Early API Developmen...
 
APIs as a Product Strategy
APIs as a Product StrategyAPIs as a Product Strategy
APIs as a Product Strategy
 
MuleSoft Meetup Winnipeg: Maiden Edition
MuleSoft Meetup Winnipeg: Maiden EditionMuleSoft Meetup Winnipeg: Maiden Edition
MuleSoft Meetup Winnipeg: Maiden Edition
 
API Economy - Cuomo
API Economy - Cuomo API Economy - Cuomo
API Economy - Cuomo
 
SAP Cloud Platform API Management Technical Brief
SAP Cloud Platform API Management Technical BriefSAP Cloud Platform API Management Technical Brief
SAP Cloud Platform API Management Technical Brief
 
API-first, going beyond SOA, ESB & Integration
API-first, going beyond SOA, ESB & IntegrationAPI-first, going beyond SOA, ESB & Integration
API-first, going beyond SOA, ESB & Integration
 
WSO2Con Asia 2014 - Building the API-Centric Enterprise
WSO2Con Asia 2014 - Building the API-Centric EnterpriseWSO2Con Asia 2014 - Building the API-Centric Enterprise
WSO2Con Asia 2014 - Building the API-Centric Enterprise
 
Exposing Business Functionalities with SOA, Integration and API Management
Exposing Business Functionalities with SOA, Integration and API ManagementExposing Business Functionalities with SOA, Integration and API Management
Exposing Business Functionalities with SOA, Integration and API Management
 
Practical guide to building public APIs
Practical guide to building public APIsPractical guide to building public APIs
Practical guide to building public APIs
 
MuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
MuleSoft Surat Meetup#39 - Pragmatic API Led ConnectivityMuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
MuleSoft Surat Meetup#39 - Pragmatic API Led Connectivity
 

Recently uploaded

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
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
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
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
 

Recently uploaded (20)

Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
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...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
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
 

Auckland API & Microservices Meetup 1: API led design

  • 1. SIXTREE 2015 API & Microservices Meetup#1 Welcome Background Goals Rules Next event: Venue & Speakers
  • 2. SIXTREE 2015 API-led DesignDamian Harvey, Principal Consultant Sixtree. Auckland API & Microservices Meetup#1
  • 3. SIXTREE 2015 Why? Avoid fail. Move fast.
  • 4. SIXTREE 2015 What are APIs? • When we talk about APIs we are talking about “Web” APIs. • Bits of logic that encapsulate the data they operate on and provide an interface as the only way to access their functionality. API-led design means: 1. Starting the solution design process with APIs and 2. Crafting APIs rather than throwing them up. Back up a bit
  • 6. SIXTREE 2015 • Increase Agility • Consume rather than build. • New business models • Self-service IT • Composable Enterprise • Mobile enablement • Parallel development • Governance & Control Why APIs?
  • 7. SIXTREE 2015 What is Design? • ‘Making things better for people' - Richard Seymour, Design Council 2002 • Design is a work process which has a user perspective and drives development based on your specific customers’ needs Who is the API Customer? Developers? The Business? Both? Back up a bit more
  • 8. SIXTREE 2015 We all like good design
  • 9. SIXTREE 2015 Good design: 1. Is innovative 2. Makes a product useful 3. Is aesthetic 4. Makes a product understandable 5. Is unobtrusive 1. Is honest 2. Is long-lasting 3. Is thorough down to the last detail 4. Is environmentally friendly(?) 5. Is as little design as possible 10 Commandments of good design - Dieter Rams. Design legend.
  • 10. SIXTREE 2015 • Alignment between Business, Stakeholders & IT • APIs are crafted in response to a customer need rather than generated from a developers code (hide your complexity). • Quicker and cheaper to make change during design phase. • Once it’s code it takes longer (even if you have great DevOps) • Allows engagement with Customers in the creation of the API. • Prototyping. • Enables parallel development of front-end and back-end. • Self-documenting. Why lead with API Design?
  • 11. SIXTREE 2015 What’s the alternative? • Typically code your web services and pull them up into an API specification. • Focus is on the service developer not on the API consumer. • Result is an API that shows all of the complexity in your codebase and domain. • Result is nasty APIs. Poor engagement. Fail.
  • 12. SIXTREE 2015 5 steps: 1. Create high-level domain model (get the language right). 2. Model the state (get the actions right). 3. Create the API outline in an API specification language. 4. Verify that the specification conforms to domain. Update if needed. 5. Flesh out the specification with low-level “developer” detail. API Design methodology
  • 13. SIXTREE 2015 • Avoid dumping the whole Domain into the API. • Avoid “Fat” APIs that cover too many Domains o eg. /flights, /employees, /invoices all in the one API o Fat APIs change too frequently. Favour multiple smaller APIs with fewer owners. • Avoid inconsistent naming o eg. resourcename not resourceName, resource-name, resource_name. o eg. passenger, pax, customer, cust – pick one. “Ubiquitous language” API Design anti-patterns 13
  • 14. SIXTREE 2015 RAML • RAML stands for RESTful API Modeling Language. • Based on YAML, so if you like tabs…. • Open specification created by MuleSoft • Alternatives: Swagger, API Blueprint, WADL(?)…etc • Mule Anypoint API Designer (free) has great RAML editor. • Can mock out API once specified. • Can generate code (eg. JAX-RS, Go) from RAML. • Generates excellent documentation with live interaction.
  • 15. SIXTREE 2015 Conclusion • API-led design isn’t about adding roadblocks. • It’s about crafting something that will have value.
  • 16. SIXTREE 2015 APIdays 2015: Auckland October 19

Editor's Notes

  1. Salesforce released APIs to enable partners to extend the capabilities of their platform and now generates half of their annual revenue through those APIs.
  2. 6. Is Honest : doesn’t do unexpected things. Behaves as expected. 10. As little design as possible. Don’t throw meta-models and over-cooked concepts into API.