Wrong Service Boundaries Identification

Entity-Services

Drawbacks

  1. Tight Coupling: Every service is a client of all the rest ones.
  2. Chatty Services: They have a lot of internal communication — usually synchronous, which is fragile and slow.
  3. Lots of services: Hence it’s hard to comprehend overall picture and hard to track a request.
  4. Poor encapsulation: Business-rules are spread all over the system.
  5. Synchronous nature: Typically, it’s http, and every call is synchronous.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/dcb5431a-42b2-4b55-a718-7fd7e00d6038/Untitled.png

Blind Mapping of Blurred Business Architecture to Technical Architecture

An approach I encounter very often goes like “Why bother? We’re here for writing code and shipping stuff, let’s just do it!”. Well, it works for a small project, and it doesn’t in a bigger one. It inevitably brings you to business-IT impedance, which results in decreasing business-agility. And if you’re not agile, you’re out.

Here is how technical architecture not aligned with business functionalities looks like:

Drawbacks