Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Apidays New York 2024 - Prototype-first - A mod...

Apidays New York 2024 - Prototype-first - A modern API development workflow by Tom Akehurst, WireMock

Prototype-first - A modern API development workflow
Tom Akehurst, CTO and Co-Founder at WireMock

Apidays New York 2024: The API Economy in the AI Era (April 30 & May 1, 2024)

------

Check out our conferences at https://www.apidays.global/

Do you want to sponsor or talk at one of our conferences?
https://apidays.typeform.com/to/ILJeAaV8

Learn more on APIscene, the global media made by the community for the community:
https://www.apiscene.io

Explore the API ecosystem with the API Landscape:
https://apilandscape.apiscene.io/

apidays

May 14, 2024
Tweet

Video

More Decks by apidays

Other Decks in Technology

Transcript

  1. WireMock API Days - Prototype-First Deck | 1 Prototype-first -

    a modern API development workflow 1 PRESENTED BY: Tom Akehurst CTO and co-founder, WireMock @TomAkehurst
  2. WireMock API Days - Prototype-First Deck | 2 “An ounce

    of practice is worth a ton of theory” - Emerson…or Marx…or Schumacher… or someone else…who knows?
  3. WireMock API Days - Prototype-First Deck | • Model of

    reality • Validated via inspection • Quick + cheap to change Design 3 • Model of reality • Validated via inspection • Quick + cheap to change
  4. WireMock API Days - Prototype-First Deck | • Realised object

    (with limitations) • Validated via use • Quicker + cheaper to change than production item Prototyping 4 • Realised object (with limitations) • Validated via use • Quicker + cheaper to change than production item
  5. WireMock API Days - Prototype-First Deck | • Generally unpopular

    in today’s development approaches ◦ “Big up-front design” = 💩 • “The code is the design” • Worthwhile when impact of poor design is high e.g. UX • Generally unpopular in today’s development approaches ◦ “Big up-front design” = 💩 • “The code is the design” • Worthwhile when impact of poor design is high e.g. UX 5 Design & prototyping in software
  6. WireMock API Days - Prototype-First Deck | • Decisions have

    to be lived with for a long time • Poor design limits adoption • Poor design harms productivity • Serial working lengthens time-to-market 6 API Design & Prototyping - Motivation • Decisions have to be lived with for a long time • Poor design limits adoption • Poor design harms productivity • Serial working lengthens time-to-market
  7. WireMock API Days - Prototype-First Deck | • Enables verification

    by inspection - linting, design review • Helps produce better APIs But… • Often adds time and effort up front • Doesn’t support verification through use 7 API Design • Enables verification by inspection - linting, design review • Helps produce better APIs But… • Often adds time and effort up front • Doesn’t support verification through use
  8. WireMock API Days - Prototype-First Deck | • Enables early

    validation through use • Supports parallel development • Enables early validation through use • Supports parallel development 8 API Prototyping
  9. WireMock API Days - Prototype-First Deck | • Write just

    enough code to produce a plausible response with stubbed/hard-coded data. • Ship to test environment. • Long cycle time to test design changes. • Simulating more than basic behaviour involves writing non-trivial code. 9 Code-a-bit-first API prototyping • Write just enough code to produce a plausible response with stubbed/hard-coded data. • Ship to test environment. • Long cycle time to test design changes. • Simulating more than basic behaviour involves writing non-trivial code.
  10. WireMock API Days - Prototype-First Deck | • Lots of

    tools available - OSS, SaaS • Build prototype out of stubbed responses • Much shorter cycle time than deploying code • Design/prototyping is not the primary use case • Missing capabilities e.g. spec generation 10 Mocking • Lots of tools available - OSS, SaaS • Build prototype out of stubbed responses • Much shorter cycle time than deploying code • Design/prototyping is not the primary use case • Missing capabilities e.g. spec generation
  11. WireMock API Days - Prototype-First Deck | • API spec/description

    is primary artifact • Mocks generated from specs • OpenAPI and other description languages not intended for mocking. • Generated mocks tend to be simplistic 11 API design platform with mocking • API spec/description is primary artifact • Mocks generated from specs • OpenAPI and other description languages not intended for mocking. • Generated mocks tend to be simplistic
  12. WireMock API Days - Prototype-First Deck | • Flexible, dynamic

    mocking • Bidirectional spec < - > mock generation • Traffic validation • Flexible, dynamic mocking • Traffic validation • Bidirectional spec < - > mock generation 12 API prototyping platform - WireMock Cloud
  13. WireMock API Days - Prototype-First Deck | Prototyping your APIs:

    • Enables verification through use • Shifts discovery of design shortcomings early in the timeline • Supports parallel producer/consumer development 13 TL;DR (2) Prototyping your APIs: • Enables verification through use • Shifts discovery of design shortcomings early in the timeline • Supports parallel producer/consumer development
  14. WireMock API Days - Prototype-First Deck | 14 Want to

    see more? https://www.wiremock.io/demo PRESENTED BY: Tom Akehurst CTO and co-founder, WireMock @TomAkehurst