WAPP
Science/Industrial12 min

Разработка LIMS для МСИ: кейс СпектроХим — 250 лабораторий без Excel

СпектроХим проводил межлабораторные испытания через почту и Excel. Мы заменили немецкую платформу кастомной LIMS — подготовка отчётов ускорилась в 3 раза. Кейс WAPP.

Разработка LIMS для МСИ: кейс СпектроХим — 250 лабораторий без Excel
Максим

Максим

Основатель / CTO

LinkedIn
W

Команда WAPP

Раз в несколько месяцев администратор «СпектроХим» открывала почту и начинала копировать цифры.

250 лабораторий. Каждая присылала результаты в своём формате. Одни писали 0,00412 — другие 0.00412. Одни слали один файл — другие три, и не всегда понятно, какой актуальный. Один неправильно перенесённый знак в сводной таблице — и результаты раунда теряют доверие аккредитационных органов. Исправить постфактум нельзя.

Немецкая платформа, на которой работал «СпектроХим», за это не отвечала. Она была построена для внутренней лаборатории — одна команда, один процесс, предсказуемый поток данных. Координировать внешнюю сеть из 250 независимых участников она не умела. Этот пробел закрывали Excel и почта — как всегда, когда корпоративная система не справляется.

К 2022 году обходные пути стали основным процессом. Платформа стоила дорого, поддерживалась сложно и была чужой — зарубежные лицензии, зарубежные обновления, зарубежная зависимость.

Задача была чёткая: не адаптировать старое. Заменить. Этот кейс — как мы делаем разработку LIMS, когда коробка не закрывает реальный процесс.

250+

активных лабораторий

600+

зарегистрированных лаборантов

x3

увеличение скорости работы

x2

сокращение числа исправлений

Как «СпектроХим» работал раньше

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

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

Немецкая платформа закрывала часть этого. Небольшую часть. Остальное — сбор заявок, регистрация участников, сведение итогового отчёта — шло через почту и Excel. Цикл одного раунда занимал недели. Не потому что данных много, а потому что каждый шаг требовал ручного участия человека.

Мы пришли с одной целью: убрать человека из критического пути там, где его присутствие создаёт риск, а не ценность.

Что мы построили

Кабинет организатора: раунд без таблицы

Кабинет организатора мы проектировали от одного вопроса: что администратор реально делает во время раунда испытаний?

Ответ: создаёт раунд, следит кто сдал и кто нет, закрывает сбор, формирует отчёт. Всё остальное — операционные накладные расходы.

Кабинет убирает накладные расходы.

Раунды создаются из структурированной базы — объекты (нефть, мазут, битум), показатели (зольность, массовая доля воды, содержание серы), тысячи ГОСТов. Администратор выбирает из библиотеки, а не вводит методику каждый цикл заново. Настройка раунда, которая раньше занимала часы, занимает минуты.

Участие лабораторий видно в реальном времени. Кто сдал, кто нет, у кого аномалия требует уточнения — без звонков, без писем, без ручной проверки по списку.

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

Интерфейс организатора: управление раундами испытаний и контроль статусов участников в реальном времени

Кабинет лаборатории: точность на входе, не на выходе

Кабинет участника строился под одно ограничение: лаборант должен сдать результаты без инструкции.

После входа аналитик видит только своё: назначенные программы, открытые окна сдачи, нужные показатели. Ничего лишнего.

Ввод результатов работает с точностью до пятого знака после запятой. Отправить неполную форму нельзя — система не предупреждает, она блокирует. Каждое поле должно быть заполнено, каждый протокол — прикреплён в виде скана. В выборку попадают только подтверждённые данные.

Это звучит жёстко. Так и задумано.

До этого кабинета администратор тратила время на погоню за недостающими вложениями, исправление форматных ошибок, ручную проверку полноты. Теперь система принимает чистые данные или не принимает ничего. Администратор получает уже готовое.

Интерфейс лаборатории

Почему кастом, а не коробка

Этот вопрос возникает на каждом проекте. Здесь ответ был очевидным.

Коробочные LIMS-решения строятся под внутреннюю лабораторию: один коллектив, один поток образцов, предсказуемый процесс. Они с этим справляются хорошо. Задача «СпектроХим» — координировать 250 независимых внешних участников против единой статистической методики. Это другая система: программное обеспечение для МСИ и оркестрация межлабораторных сравнений, а не классический внутрилабораторный поток проб.

В регулируемых отраслях у коробки ещё и структурные пределы. Аккредитация ждёт прослеживаемый путь от измерения до отчёта. Если процесс тянется через десятки внешних организаций со своими форматами и привычками, продукт должен кодировать ваши правила — точность знаков, обязательные сканы протоколов, заморозку данных после закрытия раунда — а не чужую generic-модель статусов образца. Кастомизация на чужой архитектуре часто означает ожидание чужого roadmap, пока Excel остаётся настоящей системой учёта.

Ближайшие готовые продукты закрыли бы треть реального требования. Остальное — кастомизация: платить вендору за то, что нужно именно вам, по его срокам, на его архитектуре. И платить снова при каждом изменении требований.

Кастомная разработка дороже на старте. Дешевле каждый год после. «СпектроХим» владеет системой. Нет лицензий. Нет зарубежной зависимости. Нужно добавить новую методику измерений — добавляют сами, без заявки разработчику.

Независимость от иностранного ПО здесь не просто аргумент в пользу кастома — это требование рынка. Регулируемые отрасли в России не могут строить критические процессы на платформах, поддержка которых может исчезнуть в любой момент.

Стек и команда

Нам нужен был стек, который держит нагрузку при одновременной сдаче сотен участников и не тормозит при выгрузке отчётов с тысячами строк.

  • Backend: Laravel — чисто обрабатывает сложный реляционный граф между объектами, показателями, методиками и ГОСТами
  • Frontend: Vue.js — мгновенная реакция интерфейса при работе с большими таблицами, где администраторы проводят большую часть времени
  • База данных: MySQL
  • Команда: PM, фронтенд-разработчик, бэкенд-разработчик, тестировщик, дизайнер

Про внедрение стоит сказать отдельно: выкатить LIMS — это не только инженерная задача. Это работа с людьми. У лаборантов есть мышечная память на старые процессы — даже на плохие. Почему они саботируют новые системы и как этого не допустить — мы разобрали в статье Почему лаборанты саботируют LIMS. Эта работа здесь тоже происходила.

Результат

Сегодня через платформу работают более 250 лабораторий. Подготовка отчётов, которая раньше занимала недели ручного сведения, теперь заканчивается в момент, когда организатор закрывает раунд — примерно в три раза быстрее.

Число исправлений сократилось вдвое. Не потому что лаборанты стали аккуратнее — потому что кабинет не принимает данные, которые нужно исправлять.

«СпектроХим» получил независимую систему под собственную методику. Без зарубежного вендора. Без Excel в критическом пути. Без администратора, которая копирует цифры из 250 писем.

Кастомная LIMS в проде: 250+ лабораторий, отчёты в 3 раза быстрее и вдвое меньше исправлений — без Excel в критическом пути.

Похожий лабораторный процесс?

Если ваша команда всё ещё ведёт МСИ, межлабораторные сравнения или другие регулируемые лабораторные процессы через таблицы и почту, потому что ничто «из коробки» не подходит достаточно точно — это именно тот пробел, в котором мы работаем.

Мы делаем разработку LIMS и смежных лабораторных платформ, когда реальный процесс не ложится в коробочный продукт. Сначала — как у вас реально идут раунды; потом — инженерия вокруг этого.

Обсудить проект — больше о лабораторных решениях WAPP: химические лаборатории и LIMS.