Быстро, вкусно, недорого

Логотип компании
Быстро, вкусно, недорого
Работа ИТ-директора во многом напоминает поварское искусство. Кому из нас по собственному опыту не знакома ситуация, когда нужно быстро соорудить завтрак, обед или ужин, пользуясь исключительно подручными средствами?

Работа ИТ-директора во многом напоминает поварское искусство. Кому из нас по собственному опыту не знакома ситуация, когда нужно быстро соорудить завтрак, обед или ужин, пользуясь исключительно подручными средствами?

Приготовить вкусную еду, имея под рукой все самые свежие ингредиенты, рецепты, современное и надежное кухонное оборудование да еще и располагая командой помощников, скорее всего не так уж сложно. Гораздо проблематичнее создать если не кулинарный шедевр, то по крайней мере отменное блюдо из имеющихся в наличии средств, фактически сварить «кашу из топора». Это под силу только настоящему знатоку своего дела. Точно так же и при внедрении информационной системы, порой подобно повару приходится проявлять изрядную долю смекалки и находчивости, чтобы воплотить свои замыслы и построить решение практически на пустом месте.
Так получилось, что бизнес нашей компании достаточно тесно связан с кулинарным делом. Продукция под маркой DeCecco (паста и макаронные изделия) поставляется почти во все известные рестораны итальянской кухни. Но речь здесь пойдет не о нашем основном бизнесе, а об автоматизации вспомогательного и даже достаточно бытового процесса — продажи продукции сотрудникам компании. Не буду здесь останавливаться на организации работы ИТ подразделения, об это сказано и написано достаточно. На мой взгляд, история о том, как мы в компании автоматизировали простой бизнес-процесс, будет гораздо более показательной в плане иллюстрации наших рабочих будней. Возможно, наш опыт будет интересен кому-то, кто столкнется у себя с похожей задачей.

Выбор рецепта

По правилам, действующим в нашей компании, все сотрудники могут приобрести собственную продукцию, причем по специальной цене. Раньше для этого требовалось заполнить заявку в бумажной форме и оплатить заказ при получении. С течением времени популярность такого способа продаж настолько выросла, что пришлось задуматься об автоматизации процедуры обработки заказов. К нам обратились коллеги из отдела логистики с просьбой (привожу дословно): «Предоставить электронную таблицу, с возможностью одновременного доступа к ней большого количества пользователей». Как вы уже понимаете, заказы на готовую продукцию должны были заноситься в таблицу самими покупателями.
Простая электронная таблица в виде единичного файла, конечно же, не годится для решения поставленной задачи. Механизмы коллективной работы с записями, в том числе процедуры блокировки и отката информации для конкурентных запросов, — все это доступно лишь в системах управления базами данных. Но как быть, когда скромные цели и размер проекта явно не предполагают разработки средствами СУБД? Для осуществления такой задачи хочется найти инструмент, дающий практически готовое решение без особых затрат на программное обеспечение и внедрение. Наш выбор пал на Microsoft SharePoint, его редакцией Foundation можно воспользоваться без дополнительных вложений в лицензии, правда, подразумевается, что лицензии на серверную ОС у вас уже имеются. Пользователи будут размещать заказы на корпоративном портале, действующем под управлением SharePoint и СУБД MS SQL server Express. На этом подготовка системного окружения заканчивается, остальные детали системы придется настраивать или дорабатывать.

Приготовление

Идеология, заложенная в основу продукта SharePoint, предполагает, что настройку корпоративных бизнес-процессов можно выполнить на пользовательском уровне, практически без привлечения разработчиков. Для этого в системе предусмотрено несколько типов готовых объектов, основными из которых являются списки и библиотеки. Реализация решения в системе сводится к созданию разных видов списков и доработке прилагающихся к ним стандартных методов, таких как создание и редактирование элемента, вывод перечня элементов и т. д. Замечу сразу, что при всем своем разнообразии возможности стандартного интерфейса системы все же ограничены. Поэтому не стоит надеяться сразу осуществить все задуманное, да еще и в лучшем виде с точки зрения удобства и веб-дизайна, не прибегая к глубокому изучению ASP.NET или javascript. Однако для реализации решения в первом приближении средств, имеющихся в нашем распоряжении, вполне может оказаться достаточно.
Начнем с загрузки перечня продукции, или попросту прайс-листа. Для этого пригодится стандартный интерфейс создания списка на основе загрузки готовой электронной таблицы в формате xls. Очень удобно на практике, поскольку прайс-лист у нас, конечно же, имеется. Затем создаем список заявок и попутно получаем форму заведения заказа на сайте. Настройку перечня полей с различными статусами выполнения заказа и датами оставим за рамками, поскольку это больше относится к области предпочтений в работе конкретной организации. Идентификация сотрудников происходит стандартными средствами ActiveDirectory. Достаточно несложно разрешить пользователю редактировать свои заказы, при этом ограничив доступ к изменению некоторых из полей, дабы избежать в этом процессе полной анархии. В системе автоматически заполняется ряд служебных полей для каждого списка, позволяя, в частности, применять готовые стандартные механизмы ведения версий и контроля изменений.
Логисты получают доступ к полному перечню заказов в системе, в первую очередь путем выгрузки его с сайта в файле формата xls. SharePoint позволяет без особых усилий добавить еще целый ряд усовершенствований, таких как автоматизированная рассылка e-mail-уведомлений об изменении статуса заказа или согласование заявок по маршруту. Впрочем, при желании на первое время можно обойтись и без них.

Сервировка

Итак, наше «блюдо» готово, его можно подавать к столу. Извещаем пользователей, что бумажные формы уходят в прошлое, а все желающие приобрести для себя немного фирменных изделий должны зарегистрировать свои заказы на портале. Логисты довольны, у них появился инструмент оценки спроса, выдающий результат в виде готовой электронной таблицы. Остается только своевременно заказать со склада и подвезти в офис продукцию в необходимом количестве и ассортименте. Сотрудники также получают ощутимое удобство от внедрения электронной услуги, поскольку она удобна и существенно экономит их время. Наконец, и для ИТ-отдела проект оказался результативным и не слишком накладным, практически таким же быстрым и не сложным делом, как и приготовление хорошей пасты.

Опубликовано 13.02.2015