Interface Quality Patterns — Communicating and Improving the Quality of Microservices APIs
The design and evolution of Application Programming Interfaces(APIs) in microservices architectures is challenging. General de-sign issues in integration and programming have been coveredin great detail in many pattern languages since the beginnings ofthe patterns movement, and service-oriented infrastructure designpatterns have also been published in the last decade. However, theinterface representations (i.e., the content of message payloads)have received less attention. We presented five structural represen-tation patterns in our previous work; in this paper we continue ourcoverage of the API design space and propose five interface qualitypatterns that deal with the observable aspects of quality-attribute-driven interface design for efficiency, security, and manageability:AnAPI Keyallows API providers to identify clients. Providers mayoffer rich data contracts in their responses, which not all consumersmight need. AWish Listallows the client to request only the at-tributes in a response data set that it is interested in. If a clientmakes many API calls, the provider can employ aRate Limitandbill clients according to a specifiedRate Plan. A provider has toprovide a high-quality service while at the same time having to useits available resources economically. The resulting compromise isexpressed in a provider’sService Level Agreement.
Top- Stocker, Mirko
- Zimmermann, Olaf
- Lübke, Daniel
- Zdun, Uwe
- Pautasso, Cesare
Category |
Paper in Conference Proceedings or in Workshop Proceedings (Paper) |
Event Title |
23rd European Conference on Pattern Languages of Programs 2018 |
Divisions |
Software Architecture |
Subjects |
Software Engineering |
Event Location |
Irsee, Germnay |
Event Type |
Conference |
Event Dates |
4 - 8 July 2018 |
Date |
July 2018 |
Export |