Why should you design a system which fails?

This statement looks counter intutive, right? Why would someone design a system which fails? All of us want our processes and systems to succeed. Well, reality is quite different. If you are not designing your systems to fail, then you are at a higher risk of getting unpredictable failures and unknowingly you can accumulating huge amount of technical/process debt.

Designing a system which fails is the only way to build scalable and predictable processes.

Consider the case of coding, if the compiler accepts a code with syntax/logical errors, then the programmer will never know if she/he has made any error in the code and it will be difficult to debug the error in future.

If your body stops sending signals after eating unhealthy food, then you will never know how much junk you are collecting in your body.

If cash counter machine/clert in the bank does not fail with counterfeit bills/cheques, then bank will end up with very high number of counterfeit currency and will also run huge litigation risk of fraud cases.

In Toyota assembly line, entire production line used to stop if any specific work station stopped processing because work stations down the line were dependent on output of previous work stations. This was the only way for Toyota to run a lean production system with minimum inventory.

Consider the process design like designing an electricity fuse. Only purpose a fuse exists for is to fail whenever there is overcurrent. If the fuse does not fail, then it is not serving its duty and you are running a risk of potential damage in your electrical appliances.

Having predictable failure points in your processes will allow you to easily diagnose the cause of failure and it will allow you to create scalable systems.




Curious about design, numbers and behaviour.

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Newton, Darwin, and Einstein. Three hundred years of Agile Revolution

Fantastic Swap Testnet

GitFlow encourages Continuous Integration

10 Examples to Master Python Tuples

Amazon Alexa Skill Recipe with Python 3.6

Fauna | Core FQL concepts part 5: Joins

Bullet Proof your Java Program Part 1 — Incorrect use of Java Variables

Apps for studying Spanish vocabulary

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Akash Deep

Akash Deep

Curious about design, numbers and behaviour.

More from Medium

Digital Pond: EP#5 Anouk Agussol— How to Scale Culture and Build a Happy Team for Remote-First…

A Day in the Life of a Product Owner: — All Responsibility & No Power, makes a stressed Product…

The top two experienced Project Managers’ pitfalls

The “Return to the office”​ in an agile world