Sign in

API First Design Thinking Process distilled

There’s no single definition for design thinking. It’s an idea, a strategy, a method, and a way of seeing the world [1].

It provides a solution-based approach to solving problems. It’s useful in tackling complex problems by understanding the human needs involved, by re-framing the problem in human-centric ways, by creating many ideas in brainstorming sessions, and by adopting a hands-on approach in prototyping and testing [2].

Good to know that the terms design methods and design process are often used interchangeably, but there is a difference between the two:

  • Design methods are all the techniques, rules, or ways of doing things that are employed by a design discipline.
  • Design process is the way in which the methods come together through a series of actions, events, or steps.

The Design Thinking process builds on earlier models that have been proposed for the design process. It consists of a number of stages, typically between three and seven, and can be linear or circular, that is, it may return to the starting point and begin a new iteration. It may also include various feedback loops between stages, and may even have several stages taking place in parallel [3].

Design thinking is also central to recent conceptions of software development in general [4].

For example, API design refers to the process of developing APIs that expose data and application functionality for use by developers and users [5]. More specifically API design is the process of constructing the blueprint for the API [6]. So, as we can see an API’s design is a solid blueprint and API development is a continuous process [7].

There is not a single approach to design APIs “the right way” [8].

And that why we should combine API Design and Design Thinking here.

Let’s add one more thing — API First approach!

API First is a design strategy for a company’s entire product line, where APIs are the basis of every product instead of being a separate side product [9]. When developing cloud-native applications, “API First” is a core principle [10].

So we can see a lot of buzzwords around the design. To simplify the communication I prefer to use the term “API architecture” instead of “API design” [11].

In this case “API architecture” refers to the process of developing a software interface that exposes backend data and application functionality for use in new applications [12].

And as a result, API Architecture is the collection of planning and architectural decisions [8].

In conclusion I want to highlight how beneficial can be the using of Design Thinking approach while building the architectural process and implementing API First strategy in you product company.