Про точки контролю

Не можеш контролювати належно й повно — краще не роби цього взагалі.

Не можеш організувати повноцінну реакцію на виявлені під час контролю відхилення — не витрачай ресурсів на сам контроль.

Краще, якщо це можливо, повноцінно перевірити результат на попередньому чи наступному етапі, ніж організовувати контроль лише для годиться.

Розташування точок контролю в процесі — цікава й непроста справа.

Є багато теоретичних міркувань на цю тему. А я хочу навести один із реальних випадків.

Зараз буде трохи деталей і специфіки, але без них не обійтися...

Щоразу, перш ніж додати перевірку певних умов у роботу програми, потрібно подумати, кому надавати результати цієї перевірки. Чи зможуть ці користувачі щось із ними зробити.

Іноді цієї логіки не дотримуються.

В одній із компаній, де впроваджували інформаційну систему, виникла проблема в операторів введення даних. Під час роботи в системі в них періодично з'являлося повідомлення про помилку, яке заважало працювати. Оператори через свого керівника просили прибрати повідомлення.

Розбираюся.

Виявляється, за порядком роботи контрагентам після оформлення замовлення мало надходити повідомлення електронною поштою. І під час введення замовлення оператор періодично отримував ненависне повідомлення: «Не задано e-mail контрагента. Операцію перервано». Документ не проводився.

Оператор зазвичай не мав доступу з правом редагування адрес контрагентів. Тобто виправити ситуацію самостійно він не міг, продовжити роботу — теж. І перетворювався на такого собі «підганяльника»: починав шукати «правду» — хто відповідає за цього контрагента? Хто знає адресу його електронної пошти? Кому потрібно написати, щоб потрібна інформація з'явилася в системі?

З погляду керівника операторів — марнування часу.

З погляду програміста, який не бачить і не проєктує весь процес, усе зроблено правильно:

— не всі контрагенти мають адреси електронної пошти, тому вимагати обов'язкового заповнення цього реквізиту під час створення контрагента не можна.

— на етапі проведення замовлення для цього контрагента, коли стає зрозуміло, що потрібно надіслати листа, перевіряється наявність e-mail. І добре, що перевіряється, бо можна й просто отримати помилку або, що ще гірше, залишити адресата без листа.  

Контроль виконується. Проблема вирішується.

З погляду аналітика процес організовано неоптимально. Потрібна ще одна точка контролю: після введення контрагента в систему, але до його вибору в цьому документі. І якщо процесу «Ведення реєстру отримувачів розсилки» ще немає, його потрібно створити. І перевіряти там.

Залежно від специфіки підприємства можливі й інші рішення. Наприклад, надати операторові права на введення e-mail, якщо він знає, де взяти цю інформацію.

Головне — не залишати ситуацію такою, як вона є.