Очень часто при развитии информационной системы появляются спорные решения. Можно реализовать какое-то изменения, потому что с чьей-то точки зрения это выглядело круто! А потом получить бурю возмущений — потому что не учли какие-то особенности и в результате получили ухудшение, вместо улучшения.

Примеры:

  1. Один уважаемый сотрудник потребовал в списке исполнителей по документу — первым сделать ответственного. Для этого пришлось сильно переписать модуль работы с официальными документами. Сделали — желая угодить. Потом пришлось тратить тоже время чтобы все вернуть обратно, т.к. другим это не понравилось. А кто-то захотел ответственного делать первым в списке 🙂

  2. Одному заказчику нужна кнопка автоматического согласования документов — другому нет. В этом случае для заказчика стоит написать модуль (плагин), чтобы не трогать общее ядро системы.

И просто бывают споры среду команды развития продукта, даже команда ярда WordPress — не исключение http://wpmag.ru/2013/wordpress-admin-plugin-mp6/ (спорное новшество в части интерфейса консоли, решили сделать отдельным плагином и посмотреть как приживется).

Если изменение — вызвало отрицательную реакцию, в таком случае его можно отключить одной кнопкой в консоли и все вернуть назад. В большинстве случаев обходится без сложных манипуляций. Это сильно экономит ресурсы.