Нормализация нси с чего начать
Про нормализацию НСИ простыми словами
В любой крупной производственной компании основные бизнес-процессы автоматизированы: бухгалтерский учет, складской учет, управление производством. Автоматизированные системы (АС) обращаются к единому информационному центру, где определен список классификаторов и хранятся номенклатурные карточки. Когда в базе нормативно-справочной информации (НСИ) беспорядок, АС выгружают отчеты с ошибками, на основании которых руководство может принять неверные управленческие решения.
Нормализация нормативно-справочной информации (НСИ) — «генеральная уборка» в информационном центре компании. Сюда входят выделение классов, структурирование, обогащение номенклатурной базы, создание шаблонов, инструкции по взаимодействию с НСИ пользователей и экспертов.
Если изначально базы НСИ не было или она была неполной, информационный центр захламляется. Сотрудники управлений с разными АС дополняют и редактируют карточки на свое усмотрение, интеграции между системами нет — все это усугубляет беспорядок и приводит к ошибкам:
— некорректным названиям и техническим характеристикам материалов;
— неправильному разнесению товаров по классам.
Простейший отчет по финансированию одного проекта сотрудники вынуждены формировать вручную, поскольку неструктурированная выгрузка из 1С, например, не годится для аналитики. Или на складе лежат годами товары, которые добавили в программу под другим наименованием или с ошибкой.
Итак, компания решила привести в порядок НСИ и сталкивается с муками выбора. Рынок предлагает 3 вида исполнителей:
— поставщики модульных систем для управления предприятием и взаимоотношениями с клиентами (1С, SAP);
— разработчики заказного программного обеспечения;
— провайдеры, предлагающие автоматизацию закупок на основе инструментов электронных торговых площадок.
Допустим, исполнителя выбрали. Следующая сложность заключается в том, что нормализация НСИ отнимает много времени у заказчика, в том числе руководителей.
Процесс начинается с анализа, переработки и добавления классификаторов и номенклатурных карточек. Ни один из 3 перечисленных видов подрядчиков не ориентируется в отрасли и специфике компании настолько, чтобы справиться с этим этапом самостоятельно и оправдать ожидания клиента. Поэтому часть работы ложится на экспертов заказчика под руководством нанятых консультантов.
Сама нормализация с помощью специальных платформенных решений – MDM систем (управление мастер-данными), при готовых классификаторах проходит быстро. Но остаются позиции, которые система не классифицировала. Если обращений к этим позициям не будет, они так и потонут в глубинах БД, если информация понадобилась — заинтересованный сотрудник определяет ее класс.
Нормализовать нормативно-справочную информацию мало, ей важно управлять. Можно держать постоянно действующую службу экспертов или давать права на редактирование сотрудникам, изучившим инструкции и детальные описания классов. Второе, впрочем, малоэффективно.
Исполнители, которые способны минимизировать участие заказчика в реструктуризации НСИ и оказывать услуги по поддержанию информационного центра в порядке, имеют конкурентное преимущество. Весь предыдущий опыт, текущие заказные разработки сделали нас экспертами и в этом направлении. Мы готовы помогать электросетевым компаниям проводить нормализацию НСИ без потери их времени.
MDM-система без первичной нормализации. Актуальный подход к решению старых проблем
Беспорядок в справочниках, хранящих основные данные компании – частая проблема, доставляющая не мало неприятностей, среди которых путаница в первичных документах из-за неправильного заведения номенклатуры или закупка товаров, по факту находящихся на складах компании. Этого можно избежать, внедрив MDM-систему и нормализовав данные.
Нормализация избавляет справочники от лишней информации, делает записи в них единообразными и стандартными. Это позволяет пользоваться качественными и структурированными данными, брать их из единого источника и быть уверенным, что они корректны.
Давайте рассмотрим, как принято нормализовывать справочники, хранящие основные данные компании, и как можно избежать дорогостоящего и трудоемкого процесса.
Для примера возьмем справочник материально-технических ресурсов (Номенклатура). Нормализация такого справочника требует большого количества времени, денег и экспертов для вычистки данных.
Что такое нормализация?
Нормализация – это приведение информации в справочниках к стандартному виду, исключая дубли и устаревшие записи, дополняя (по возможности) неполные позиции.
Предполагается, что после нормализации ваши справочники будут хранить актуальную и непротиворечивую информацию, которой совместно смогут пользоваться сотрудники компании для выполнения своей работы.
Как проводят нормализацию сейчас?
Нормализация справочников классически проводится в два этапа:
В чем недостатки описанного подхода?
Главный недостаток такого подхода кроется в первичной нормализации.
Допустим, в компании ведется справочник «Номенклатура» в 200 000 записей. Чтобы провести первичную нормализацию такого объема данных перед загрузкой в MDM-систему выделяется 20 экспертов.
Исходя из условной нормы обработки записей одним экспертом в 1 000 позиций в месяц, получим, что такое количество записей может быть нормализовано примерно за 10 месяцев работы.
Учтем в нашем расчете, что эксперты не роботы, а люди, и добавим к сроку обработки еще полтора месяца на возможные форс-мажоры, болезни, отпуска и непредвиденные ситуации. Получим, что исходный справочник будет обработан 20 экспертами примерно за один год.
Важно отметить, что за этот год справочник будет пополняться новыми записями. На их нормализацию тоже понадобится время. Итак, срок первичной обработки записей справочника может растянутся еще на месяцы.
При этом пользователи смогут увидеть корректные записи только после внедрения системы в эксплуатацию. В это же время начнут выявляться и недостатки проведенной нормализации, что потребует дополнительной обработки контента справочника.
Сколько вы заплатите за первичную нормализацию?
Средняя цена первичной нормализации одной записи справочника «Номенклатура» в Москве – 150 рублей. В нашем примере – 200 000 записей. Первичная нормализация данных такого справочника будет стоить 30 000 000 рублей.
И здесь нужно помнить, что при обычном подходе вы оплатите первичную нормализацию всех записей справочника: актуальных и уже не используемых компанией.
Почему продолжают проводить первичную нормализацию?
Первичную нормализацию проводят, чтобы получить полностью нормализованные записи исходных справочников. Однако часто после первичной нормализации в исходном справочнике остается около 40% обобщенных и неточно описанных данных, которые признаются ненормализуемыми и в исходном виде загружаются в MDM-систему.
В случае со справочником «Номенклатура» такие записи могут быть уточнены только при сверке номенклатуры экспертами на складах компании по внешнему виду или техническому паспорту (инвентаризация). Что прибавит работы и займет немало времени.
Как нормализовать справочники выгоднее и эффективнее?
Как это работает на примере справочника «Номенклатура»?
Помним, что у нас есть справочник «Номенклатура» объемом в 200 000 записей. Мы не проводим его первичную нормализацию и в исходном виде загружаем в MDM-систему. Уже на этом этапе мы не тратим около года на первичную обработку записей и на оплату работы 20 экспертов. В этом случае у нас есть несколько вариантов его нормализации:
Исходя из практики, при использовании нового подхода справочник «Номенклатура» будет нормализован в среднем за один год. Это время обычно тратится на первичную нормализацию всех записей справочника – как нужных, так и устаревших. Поэтому сроки нормализации останутся теми же, но проведена она будет без лишних затрат денег, экспертов и оттягивания даты ввода MDM-системы в эксплуатацию.
Таким образом, при новом подходе вы получите все то, что ожидаете от первичной нормализации: актуальные и корректные данные справочников, которые используются в повседневной работе, но с меньшими затратами. Сэкономленные средства при этом можно будет потратить на проработку классификаторов, шаблонирование наименований, развитие функциональности системы и прочие улучшения, о которых я расскажу в следующих статьях.
Не мыслите шаблонно: изучайте актуальные подходы к решению старых проблем, которые сэкономят ваши деньги и время!
«Нормализация» справочников по методу Axelot
Максим Кушнер: «Проекты по MDM примерно наполовину состоят из «продумывания схем» последующего использования инструментов автоматизации управления НСИ»
08:56 18.05.2017 | 5819 | Алексей Есауленко | «Директор информационной службы»
Приведение нормативно-справочной информации к определенным стандартам является одним из ключевых этапов создания корпоративных систем управления НСИ.
Компания Axelot провела в Москве конференцию по вопросам управления мастер-данными. По заявлению ее устроителей, это первое в России столь масштабное и актуальное мероприятие, посвященное тематике Master Data Management (MDM) и формированию целостного информационного пространства на базе единой системы нормативно-справочной информации.
Как рассказал руководитель направления НСИ в Axelot Максим Кушнер, НСИ и все с ней связанное является сложной предметной областью, поскольку существует множество неоднозначных подходов к решению одних и тех же вопросов, к определению основополагающих терминов. Специалисты по-разному трактуют методологию развития системы НСИ, регламенты ее использования и ведения, процессы интеграции НСИ с другими информационными системами предприятия. Разница во взглядах зачастую определяется требованиями, которые бизнес предъявляет к таким системам.
«Кто именно на предприятии должен определять эти требования? Какие бизнес-подразделения должны участвовать в их формировании? Вот наиболее сложные вопросы. Зачастую бывает очень непросто устранить противоречия в требованиях и согласовать позиции сотрудников разных отделов компании, имеющих принципиально разные подходы к реализации основных задач НСИ», — подчеркнул Кушнер.
Между тем, как утверждают в Axelot, НСИ является основой эффективного управления современной компанией, и от того, в каком виде она будет реализована, зависит продуктивность ключевых бизнес-процессов. Единая НСИ позволяет предприятиям решить целую группу важнейших задач – автоматизировать процессы материально-технического обеспечения, финансового планирования и консолидации управленческой отчетности, а также интегрировать разнородные и территориально распределенные ИТ-системы.
В Axelot считают, что создание единой системы НСИ должно осуществляться поэтапно. Прежде всего следует разработать методологию и регламент ведения НСИ. Это позволит в дальнейшем избежать проблем, связанных с множественностью точек ввода информации, недостаточной квалификацией персонала, занятого вводом новых записей в справочники, размытостью ответственности за качество вводимой информации.
Как подчеркнул Кушнер, проекты по MDM примерно наполовину состоят из «продумывания схем» последующего использования тех или иных инструментов автоматизации управления НСИ.
Второй этап предусматривает «нормализацию» НСИ, что в понимании специалистов Axelot является ее обработкой с целью приведения к определенным стандартам. Это могут быть отраслевые или корпоративные стандарты или их гибрид, обогащенный международными практиками и опытом работы с НСИ, накопленным на самом предприятии. Нормализация позволяет исключить проблемы, обусловленные неполной или недостаточной информацией в справочниках, появлением ошибок в их наименованиях, дублированием информации, отсутствием связей с другими справочниками и др.
В результате нормализации справочники станут соответствовать требованиям по полноте записей, их непротиворечивости, отсутствию дублей, каждый уникальный объект справочника получит свой код, однозначно понимаемый системой управления НСИ, всеми пользователями и всеми прикладными системами, использующими централизованные справочники предприятия. При этом на любой момент времени каждый справочник будет содержать все записи с актуальными значениями атрибутов.
На третьем этапе осуществляется собственно внедрение автоматизированной системы управления НСИ. Эту работу в Axelot также предлагают разделить на несколько стадий. Сначала осуществляется постановка задачи и настройка системы, регулируются механизмы синхронизации справочников разных информационных систем и подразделений предприятия. Затем в систему загружается «нормализованный» контент, проводится обучение пользователей, после чего единая система НСИ запускается в эксплуатацию.
Создав эффективную систему НСИ, предприятие получит ряд важных преимуществ. Прежде всего это позволит оптимизировать обмен и хранение критически важной для бизнеса информации, поможет сформировать в компании единое информационное поле, в котором данные будут синхронизироваться максимально быстро. Единая система НСИ также может стать частью инфраструктуры аналитических систем. Еще она обеспечит сокращение расходов на ведение и сопровождение нормативно-справочной информации, сроков формирования централизованной заявки на закупку материально-технических ресурсов, уменьшит объем неиспользуемых запасов на складе.
Как не сойти с ума в разработке систем управления нормативно-справочной информацией. Из истории наших проектов
За иллюстрации отдельное спасибо замечательному художнику Васе Ложкину.
Случай первый. Как загрузить вагон и маленькую тележку
Создание единой системы управления контрагентами для крупной производственной компании со множеством заводов по всей стране и за рубежом.
Цель проекта – создать единую базу контрагентов для всех подразделений. Ведение контрагентов осуществляется на основе заявок, которым присваиваются приоритеты от низкого до срочного. Срочная заявка должна быть обработана экспертами НСИ за 2 часа вне зависимости от разницы во времени между подразделениями.
Живая история
Проект был согласован со всеми заинтересованными сторонами (в этом нас убедило руководство заказчика) и разработан в заданные сроки в соответствии с утвержденными требованиями.
Презентация созданной системы управления контрагентами проходила гладко, пока не встала одна видная женщина – руководитель сибирского филиала – и весьма энергично, с использованием русских идиоматических выражений, довела до сведения собравшихся, что когда к ней приходит железнодорожный вагон под погрузку готовой продукции, она не будет ждать 2 часа, пока кто-то там в Москве рассмотрит заявку на добавление покупателя.
Она не собирается оплачивать простой вагона, пока происходит утверждение заявки, а заведет данные покупателя в систему как есть и отгрузит товар, а московские товарищи могут разбираться потом с информацией о покупателе сколько угодно.
Это заявление было поддержано еще несколькими руководителями филиалов компании, что практически полностью разрушило централизованную методологию ведения единого справочника контрагентов на основе заявок.
В итоге проект был видоизменен таким образом, чтобы все филиалы имели доступ к базе данных контрагентов и могли вносить в нее изменения напрямую, но при этом выполнялся автоматический поиск схожих записей, которые отображались сотруднику филиала, и он принимал решение о необходимости корректировки данных, которые позднее проверялись экспертной группой.
Что мы запомнили: не доверяйте словам руководителей и ответственных лиц со стороны заказчика, что все решения согласованы, все в теме и возражений нет. Выявляйте все заинтересованные стороны проекта и старайтесь выяснить требования к системе и ограничения непосредственно у них.
Случай второй. Как хотим, так и используем
Создание централизованной системы управления клиентами для страховой компании с большим числом филиалов и агентов по всей стране.
Цель проекта – создание сводной клиентской базы для использования в аналитических приложениях. База данных собиралась со всех филиалов, данные выверялись, дополнялись, дублирующиеся объекты устранялись. Количество клиентов в одном филиале – от тысячи до нескольких миллионов. При этом, пересечений по клиентам между филиалами практически нет.
После создания сводной клиентской базы она должна была периодически сравниваться с базами данных филиалов для выявления различий, их последующей обработки и загрузки изменений в сводную базу. Прирост клиентской базы между сверками составлял несколько тысяч записей.
Для выполнения сверки был создан специальный модуль, архитектура которого была спроектирована исходя из того, что он должен быстро сравнивать большое количество записей и формировать относительно небольшой XML-файл с изменениями для загрузки. Формат XML был выбран заказчиком.
После внедрения системы мы получили от заказчика сообщение, что модуль сверки работает крайне медленно и формирует для загрузки в сводную базу файл огромного размера, который они ничем не могут открыть.
Что же выяснилось? Заказчик производил начальную загрузку данных из филиалов в сводный справочник. Экспертам эта работа показалась нудной и трудоемкой, и они просто взяли модуль сверки и подсунули ему полные данные нового филиала, которые еще не разу не загружались в сводный справочник.
Модуль сверки, который в соответствии с ТЗ должен был формировать сведения о различиях в количестве нескольких тысяч записей, получил на вход два миллиона записей, и все они в сводном справочнике отсутствовали.
В результате, за несколько часов нечеловеческих усилий модуль сверки все-таки сформировал файл для загрузки, в который вошли все данные филиала. И, да, этот файл был огромным.
Модуль сверки был использован заказчиком не по назначению, но сам факт, что сверка позволяет выполнять начальную загрузку данных, заказчику понравился, и он собирался и дальше работать именно таким образом, только просил значительно ускорить работу модуля и что-нибудь сделать с создаваемым файлом, чтобы его можно было открывать в текстовом редакторе.
На наши возражения, что модуль сверки не предназначен для начальной загрузки данных, заказчик радостно показал ТЗ и спросил, а где это тут написано? Как хотим, так и используем!
В результате нам пришлось вносить изменения в архитектуру модуля сверки с целью обработки больших массивов данных и формирования выходного файла в формате CSV, так как заказчик решительно не захотел отказываться от такого удобного инструмента.
Что мы запомнили: всегда включайте в ТЗ описание ограничений – что ваша система делать не должна. Ну, или создавайте решения, которые учитывают все возможные сценарии использования, что сильно дороже.
Случай третий. Не слонёнок, а слон, да еще и должен летать
Создание централизованной системы ведения НСИ для финансовой организации.
Цель проекта — создание централизованной системы ведения справочников и классификаторов с рассылкой изменений в заинтересованные системы и базы данных. Предоставление доступа внешним системам к справочникам через веб-сервисы нашей системы.
Обычно у заказчиков среднее количество записей на один справочник составляет от нескольких сотен до нескольких тысяч. Наш недавний рекордсмен – справочник, в котором было 11 млн. записей. Но этот заказчик преподнес нам сюрприз. В его справочнике оказалось свыше 100 млн. записей. Загружали мы его больше суток, т.к. при начальной загрузке выполнялось множество проверок данных. Это не было бы большой проблемой, но заказчик потребовал, чтобы справочник загружался за несколько минут.
В результате нам пришлось сильно изменить порядок работы системы с этим справочником. Фактически, его ведение осуществляется за пределами системы, а мы только предоставляем интерфейс для его использования. Сейчас мы разрабатываем для нашей системы новые способы работы с очень большими справочниками. Надеемся, что заказчику понравится.
Что мы запомнили: в современном мире данных становится все больше, и темпы их роста постоянно увеличиваются. Система должна быть готова к высоким нагрузкам даже там, где они изначально не предполагались. Мы постоянно развиваем наше решение с учетом современных тенденций роста данных и повышения требований к скорости их обработки.
Случай четвертый. Сложный фокус с файлами
Создание централизованной системы ведения НСИ в крупном банке.
Цель проекта – создание централизованной системы ведения справочников и классификаторов с рассылкой изменений в заинтересованные системы и базы данных. Особенность проекта – весьма непростые процессы распространения изменений, затрагивающие множество систем.
Поскольку в дальнейшем мне придется упомянуть наше собственное решение для управления НСИ, позволю себе небольшое лирическое отступление.
Задачи наших заказчиков во многом схожи, и мы решили снизить затраты на программные разработки и сократить время проектов, создав собственную универсальную платформу для ведения НСИ и основных данных (Reference Data Management & Master Data Management). Система существует уже более 10 лет, и все эти годы мы в ЛАНИТ ее активно развиваем.
NORMA поддерживает централизованное и распределенное ведение НСИ. Все данные и метаинформация ведутся с учетом истории изменений и система позволяет просматривать и изменять весь массив НСИ на произвольную дату в прошлом или будущем. Для справочников могут быть настроены процессы согласования и утверждения изменений. В состав системы входит выделенный сервер распространения изменений, который позволяет взаимодействовать с внешними системам через различные интерфейсы и создавать достаточно сложные интеграционные бизнес-процессы (этакий мини BizTalk Server). У нас есть пакеты экспорта/импорта данных, которые умеют выгружать/загружать данные справочников в базы данных и файлы различных форматов. Поддерживается ведение перекодировочных таблиц для внешних систем.
NORMA включает графический построитель запросов и дизайнер отчетов. Кроме работы с собственными справочниками, система позволяет через свой интерфейс просматривать и изменять справочники, которые находятся во внешних, по отношению к ней, базах данных, а также использовать эти справочники в построителе запросов и пакетах экспорта/импорта.
В ответ на возникновение различных событий в системе, например, события внесения изменений в справочник, могут запускаться подключаемые программные компоненты, написанные на C#, которые могут как проверять данные, так и взаимодействовать с внешними системами и, собственно, самой системой NORMA. Практически все функции системы доступны через веб-сервисы.
Система может масштабироваться как вертикально, путем увеличения мощности сервера приложений и базы данных, так и горизонтально за счет использования многоузлового сервера приложений, в котором каждый узел или группа узлов отвечает за выполнение отдельной функции. Для хранения НСИ система может использовать Microsoft SQL Server, Oracle или PostgreSQL.
Обычно при создании справочников и процессов распространения изменений заказчик консультируется с нашими аналитиками, какой инструмент или набор инструментов, предоставляемых системой, лучше использовать для конкретной задачи. В этот раз заказчик сказал, что будет создавать справочники и процессы самостоятельно.
Через некоторое время к нам обратился один из специалистов заказчика с жалобой, что у него не загружаются данные в систему. В подтверждение нам прислали пакет импорта данных, исходный файл с загружаемыми записями и сообщение об ошибке, в котором говорилось, что загружаемые данные имеют неверный тип.
Начинаем разбираться. Крутим пакет и так, и этак, пробуем разные варианты представления исходных данных, но ошибку повторить не можем. Обращаемся к заказчику с вопросами, может быть, у пакета импорта есть подключенные программные компоненты, может быть на справочник наложены какие-то дополнительные ограничения, может быть данные не от этого процесса? На все получаем ответ — ничего такого нет, все должно легко загружаться и раньше работало.
Оказывается, этот пакет импорта был только вершина айсберга. Если кратко и сильно упрощенно, то происходило следующее. Процедура импорта загружала правильные данные из исходного файла в справочник. Исходный файл удалялся. Затем наша система выполняла распространение изменений в несколько баз данных, в одной из которых производилось сравнение собственных данных с нашими изменениями и формировался файл с расхождениями, который возвращался в нашу систему для загрузки. Причем для загрузки этого файла заказчик использовал ту же процедуру импорта, что и для исходного файла. И вот именно в этом файле, сформированном внешней системой, были данные неверного типа. Очевидно, что при анализе исходного файла мы никаких ошибок найти не могли, а про второй файл и развесистый процесс распространения изменений нам ничего не сообщили.
Что мы запомнили: Всегда проверяйте полученную информацию даже если вам говорят, что у нас тут маленькая проблемка, и она вот именно в этом месте, мамой клянусь! Анализируйте проблему в контексте.
Случай пятый. Я привыкаю к несовпадениям
Создание системы управления НСИ в производственной компании.
Цель проекта – создание системы ведения НСИ в управляющей компании со множеством филиалов, заводов и конструкторских подразделений.
В этот раз мы дальше нескольких презентаций не продвинулись. Наша система NORMA очень понравилась технарям. Она закрывала все их существующие проблемы. Дальше пришла очередь показывать систему руководству, и вот тут произошел облом десятилетия. Высокий руководитель посмотрел, послушал и сказал: «Мы тут все работаем на продуктах Apple, у них есть определенный стиль, а ваша система в этот стиль не вписывается. Мы ее даже рассматривать не будем».
Что мы запомнили: заказчики бывают разные, и некоторым вы просто не подходите. Стиль другой.
Подобные истории случаются в различных проектах. Что интересного было в вашей проектной жизни? Что стало для вас неожиданным уроком? Делитесь в комментариях.