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

API Design First in Practise - An Experience Re...

API Design First in Practise - An Experience Report

API Design First requires that all stakeholders adhere to the spec that has been agreed. Come join me in this talk where I share our experience helping team instantly convert API specs into executable contracts to help them independently develop and confidently deploy their components. This approach of using API specs as executable contracts addresses several shortcomings associated with code generation based techniques we had tried in the past. I will also be sharing how we went about iterative API Design to allow for collaborative evolution of features. And mainly avoiding breaking compatibility during API evolution. Key takeaways:
1. API Specifications to API Tests in seconds – Also generative API coverage report (similar to code coverage, but for APIs) to verify adherence for API implementations
2. API Specifications as API Mocks
3. Backward Compatibility Testing – API Spec vs API Spec
4. Using Linters effectively
5. Extracting common API Specification elements and reusing them
6. Single source of truth for API specifications to promote collaboration between all stakeholders

HariKrishnan

October 09, 2024
Tweet

Resources

Live Demo of Interactive Examples

https://www.youtube.com/watch?v=5tG7eZ_hFG0

More Decks by HariKrishnan

Other Decks in Programming

Transcript

  1. © 2024 All Rights Reserved Live Demo 1. Interactive Example

    Generation 2. Intelligent Service Virtualization 3. Contract Testing Video link - https://www.youtube.com/watch?v=5tG7eZ_hFG0
  2. © 2024 All Rights Reserved API Design First in our

    context API Consumers API Providers Architects App Sec
  3. © 2024 All Rights Reserved Contract Driven Development – In

    a nutshell Consumer Provider API Design First • Shift Left all the way to Design • Reduced time-to-market due to Parallel Development • Enhanced DevEx with improved Collaboration • Resilient API Building Blocks