Model Your Application Domain, Not Your JSON Structures
MetadataShow full item record
Creating truly RESTful Web APIs is still more an art than a science. Developers have to struggle with a number of complex design decisions because concrete guidelines and processes are missing. Consequently, often it is decided to implement the simplest solution which is, most of the time, to rely on out-of-band contracts between the client and the server. Instead of properly modeling the application domain, all the effort is put in the design of proprietary JSON structures and URLs. This then forms the base for the contract which is communicated in natural-language (with all its ambiguity) to client developers. Since it is the server who owns the contract it may be changed at any point, which, more often than not, results in broken clients. In this position paper, we discuss some of the challenges and choices that need to be made when designing RESTful Web APIs. In particular, we compare how contracts are supposed to be established and how they are defined in practice. We illustrate the problems that are the cause of these divergences. As a first step to address these issues we describe and motivate an alternative, domain-driven approach to design Web APIs.
Showing items related by title, author, creator and subject.
Olatunji, Oluwole; Sher, W. (2015)© Emerald Group Publishing Limited. Purpose – The purpose of this paper is to elicit the activities in geometric 3D computer-aided design (CAD) estimating. Construction estimators usually target the structural integrity ...
Jackson, Elizabeth Louise (2008)Australian wool traders and researchers have little knowledge of the incomplete adoption of the price risk management strategies that are available to stabilise wool producers’ incomes. Auction is by far the most popular ...
Chen, Q.; Xia, B.; Jin, Z.; Wu, Peng; Hu, Y. (2016)For design-build (DB) projects, owners normally use lump sum and guaranteed maximum price (GMP) as the major contract payment provisions. However, there was a lack of empirical studies to compare the project performance ...