Poka-yoke (mistake-proof) your software's UX/UI, too

Poka-yoke (mistake-proof) your software’s UX/UI, too

28 July, 2022 1 min read
Lean, continuous improvement, software, UX

Poka-yoke in issuing a new sales item number: the in-house microservice for Master Data Management of TECTRA Ltd’s product portfolio finds the existing sales item number N with the most-similar-looking textual description and then finds an available number for the new item that is most unlike number N when typed.

The end result is a new item number that, if mistyped or misquoted (by us or by a customer), will result in an inquiry/order that is blatantly and obviously incorrect.

This is achieved with the Levenshtein distance . It could also be helped with a bit of stemming and NLP (e.g., with spaCy), but it’s probably overkill.

A simple alternative is to identify the largest “island” of available numbers among the already-issued set, and then use a symmetric triangular distribution (Python’s random.triangular(min, max, mode)) to pick a random number between the island’s min and max values. This works too, however without guaranteeing typo-resilience.

UX is more than UI. It’s also about taking care of all the little details that add up to a worry-free process.

(Poka-yoke (ポカヨケ, [poka yoke]) is a Japanese term that means “mistake-proofing” or “inadvertent error prevention”.)