Principles of API First Design Thinking | Hacker Noon

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’s 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”.

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 [11].

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

In this article 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.




Join Hacker Noon

Create your free account to unlock your custom reading experience.

read original article here