We rise up for the things we believe in over and over again
Энтерпрайз, то есть больше компании, не зря называют кровавым. Нет, подводных камней хватает при работе на предприятиях абсолютно любого размера, но чем контора больше, тем и камни эпичнее. Вот и мне один такой попался.

В принципе, система регистрации и ведения заявок от пользователей (в дальнейшем просто "система") не является прерогативой именно крупных контор. Подобные системы внедряются почти везде, и свою лепту в нормализацию процесса работы с пользователями вносят. Это факт. Проблема в другом. Не всегда такие системы в состоянии "из коробки" способны покрыть все нужды компании. Произошло такое и у нас. Я не буду вдаваться в детали (хотя, думаю, что как минимум название системы знающие люди сразу скажут), так как это не требуется, но в общем случае ситуация выглядит так.

Сотрудник при помощи корпоративного портала оформляет заявку на обслуживание его рабочего места (читай, компьютера). Характер запрашиваемых работ таков, что все работы делится на 4 этапа. На основании пользовательской заявки система автоматически генерирует 4 сервисных запроса, по одному на каждый этап работ, после чего эти запросы назначаются в соответствующие отделы (на практике - два к нам, первый и четвертый, и два в соседний отдел). И логика такова, что каждый следующий запрос назначается после закрытия предыдущего. В общем случае это выглядит так: сотрудник берет в работу запрос, выполняет необходимые действия, после чего в системе на странице этого запроса выбирает в поле "Код закрытия" значение "Выполнено", заполняет необходимые поля и, собственно, закрывает заявку. После этого система назначает следующий запрос в цепочке оных.

Пока все логично. Веселье начинается дальше.

Еще на стадии формирования заявки от пользователя есть здоровенный прокол со стороны системы в целом. Она довольно неповоротлива, и одновременно с этим, пока регистрируется заявка от сотрудника, на экране нет никакой индикации о том, что вообще происходит. Сотрудник думает, что система либо зависла, либо кнопку ОК он не нажал, либо еще что-то. Что обычно делают в таком случае? Правильно, давят на эту кнопку еще раз. А может быть и еще, и еще. Приводит это к прекрасному списку дубликатов одной и той же заявки.

Следующая остановка в нашей истории: согласно внутренним правилам дубликаты заявок/запросов закрываются кодом "Дубликат". Это целиком и полностью на совести ведущего эту заявку или запрос.

А вот теперь начинается самый смак. Прилетает на наш отдел очередной запрос. Айтишник берет запрос в работу, по ходу работы видит, что это дубль, так как идентификатор пользовательского компютера уже прописан туда, куда надо, закрывает этот запрос с кодом "Дублирование", вписывает номер того запроса, дубликатом которого этот запрос является. Что делает система в этом случае? Правильно, начихав на то, что запрос НЕ выполнен, назначает в соседний отдел следующий запрос в рамках текущей заявки. Тамошние ребята вообще ни сном, ни духом, дубликат это или нет (логично ведь, если запрос прилетел, значит система его пропустила), пытаются выполнить свою часть работы. И тоже нарываются на тот факт, что работы уже выполнены. И закрывая второй и третий сервисный запрос (без разницы, закрыты они кодом "Выполнено" или "Дублирование"), передают всю эту канитель на последнем шаге опять нам. И опять разгребать: дублирование или нет.

Почему так происходит? Триггером на назначение следующего запроса в цепочке является смена флага "Статус" у исходного запроса на значение "Закрыто". Без проверки кода закрытия. Почему так сделано - я могу только гадать. Но я точно знаю, что это поведение системы - не коробочное. Эту логику дописывали уже на нашем предприятии. Видимо, дописывали наспех.

Вот и получается, что видишь такие до жути обидные ляпы, и плакать хочется. Теми самыми кровавыми слезами.

@музыка: Vincent Rubinetti - Reveal

@темы: Этот безумный мир