DEV Community

李超
李超

Posted on

Human-Oriented Architecture (HOA)

If Software Systems Were Human: Thinking About Human-Oriented Architecture (HOA)

Most systems don’t collapse because they’re “badly written” —
they slowly turn into something nobody dares to touch.

If you’ve ever maintained a system that’s more than three years old, this feeling is probably familiar:

The features still work

Bugs can still be fixed

But touching the core logic makes everyone nervous

We’ve tried layered architecture, Clean Architecture, and DDD — yet the same problems keep resurfacing.

So I started asking a different question:

Why don’t our software systems behave like living organisms?

  1. The problem isn’t technology — it’s how we understand systems

Most traditional architectures are designed from a technical perspective:

Controller / Service / Repository

UI / Domain / Infrastructure

They look elegant at the beginning. But over time:

Controllers become “god objects”

Services accumulate business logic

State leaks everywhere

Boundaries slowly disappear

The root cause isn’t that these architectures are wrong.

It’s that:

They don’t align well with human intuition.

  1. A counterintuitive but natural idea: treat the system as a human

The human body is one of the most successful complex systems we know:

Clear structure

Well-defined responsibilities

Built-in error handling

Long-term evolution

So what if:

Instead of starting from layers, we treated a software system as a human being?

This idea is the foundation of
Human-Oriented Architecture (HOA).

  1. System as a human, modules as organs

In HOA:

A software system is a complete human being.

This “person” is closed and protected — the outside world cannot arbitrarily access internal organs.

Mapping organs to architectural roles
Human Organ Architectural Role Responsibility
Skin UI / Presentation User interaction & feedback
Bones Structural skeleton Stability and structural constraints
Mouth Interface layer Input reception & protocol translation
Hands Use-case layer Expressing user intent & orchestration
Stomach Business core Business rules & computation
Brain State & decision center Global state & complex decisions
Hypothalamus Coordination center Flow control & command dispatch
Kidneys Error handling system Exception filtering & recovery
Blood vessels Data channels Data and event flow

This is not a playful metaphor —
it is a strict responsibility model.

  1. How a user action flows through the “human system”

Take a typical user operation:

The user interacts through the skin (UI)

Input enters via the mouth (interface)

The hands (use cases) interpret user intent

The hypothalamus coordinates the process

The stomach (business core) applies business rules

The brain updates state and makes decisions

The kidneys handle errors and anomalies

Data flows back through the blood vessels

The skin presents the final result

Each step is explicit, traceable — and cannot overstep its authority.

  1. Why this model resists architectural decay

HOA naturally prevents common anti-patterns:

❌ Controllers containing business logic
(mouths don’t think)

❌ Services becoming god objects
(stomachs don’t command the body)

❌ Global try-catch blocks
(errors have kidneys)

❌ State scattered everywhere
(only the brain decides)

When you evaluate code through the lens of a “human body,”
bad design often feels instinctively wrong.

  1. How does HOA relate to Clean Architecture or DDD?

HOA is not a replacement for existing architectures.

More precisely:

Clean Architecture tells you how to divide code.
HOA helps you understand what a system should look like.

HOA is a higher-level architectural mental model.

  1. Where HOA fits — and where it doesn’t Suitable for:

Long-lived systems

Complex frontend state management

Data-heavy and orchestration-heavy domains

Not suitable for:

One-off scripts

Very small demos

Systems with minimal architectural constraints

  1. Final thoughts

Good architecture doesn’t try to look clever —
it feels as natural as a living organism.

Human-Oriented Architecture is not a silver bullet,
and not a framework.

It’s simply an attempt to use the system we understand best — ourselves
to stay clear-minded and disciplined when facing software complexity.

If HOA makes you pause and ask:

“Would this make sense in a healthy human body?”

Then it has already served its purpose.

Top comments (0)