maintainable consumers
DESCRIPTION
Slides of my talk at the API Strategy & Practice Conference Amsterdam 2014.TRANSCRIPT
![Page 1: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/1.jpg)
26 March 2014Bruno Pedro
Maintainable Consumers
![Page 2: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/2.jpg)
Bruno Pedro Web and Cloud Computing Technologist with over ten years’ experience. CTO of GetApp. Editor at APIUX.com.
http://brunopedro.com/
![Page 3: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/3.jpg)
Summary• What is a maintainable consumer
• Factors that influence maintainability
• Defending your implementation
• Reacting to changes
![Page 4: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/4.jpg)
Maintainable
• prevent unexpected downtime
• identify and correct problems
• maximize efficiency and reliability
• cope with changes
![Page 5: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/5.jpg)
API Documentation
![Page 6: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/6.jpg)
Your Own Consumer vs SDK
![Page 7: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/7.jpg)
Unit and Integration Tests
![Page 8: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/8.jpg)
Alerts
![Page 9: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/9.jpg)
Documentation changes• Get notified by the provider
• API Changelog
• alerts by email
![Page 10: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/10.jpg)
Documentation changes• API Changelog
• email alerts, RSS and JSON feeds
![Page 11: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/11.jpg)
Implement a Façade
![Page 12: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/12.jpg)
Consumer Generation• collection
• markdown
• functionsnodeunit
![Page 13: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/13.jpg)
Tests• POSTMAN Collection Runner
![Page 14: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/14.jpg)
Tests• Runscope Radar
![Page 15: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/15.jpg)
Reacting to changes• Technical changes
• detected through tests
• implement fix
• e.g. invalid certificate, changed authorization layer, etc.
![Page 16: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/16.jpg)
Reacting to changes• Functional changes
• harder to detect
• don’t change the Façade
• implement fix on the service layer
• if not possible to fix, implement new methods
![Page 17: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/17.jpg)
Summary• Write code that can cope with changes
• Evaluate API Documentation
• Write unit and integration tests
• Get alerts when things break
![Page 18: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/18.jpg)
Questions?
![Page 19: Maintainable consumers](https://reader034.vdocuments.site/reader034/viewer/2022052410/548809a0b47959e70c8b562f/html5/thumbnails/19.jpg)
26 March 2014Bruno Pedro
Maintainable Consumers