Описание утилиты
Method Validation Data Packager — Оценка параметров валидации аналитических методик
ℹ️ Утилита проверяет ключевые параметры валидации согласно ICH Q2(R1) и USP <1225>:
• Линейность (Linearity): R² ≥ 0.999
• Точность (Accuracy): Восстановление 98.0–102.0%, RSD ≤ 2.0%
• Прецизионность (Precision): RSD повторимости ≤ 2.0%
• Пределы обнаружения и количественного определения (LOD/LOQ): Отчет
• Робастность (Robustness): Вариация ≤ 5.0%
⚠️ КРИТИЧНО: Несоответствие критериям линейности или точности делает методику непригодной!
Данные параметры являются основой для регистрации фармакопейной методики.
Использование:
Method_Validation_Data_Packager.exe → демо-режим (вывод в консоль)
Method_Validation_Data_Packager.exe input.csv output.json → оценка ваших данных
Формат input.csv:
BatchNumber,LinearityR2,YIntercept,Slope,MeanRecoveryPercent,RecoveryRSD,PrecisionRSD,LOD,LOQ,RobustnessVariationPercent
Пример:
VAL-METHOD-2026-001,0.9998,0.5,12000.0,99.5,0.8,0.9,0.05,0.15,1.2
— ЗАЧЕМ ЭТО НУЖНО?
Валидация аналитических методик — обязательное требование GMP и регуляторных органов (FDA, EMA).
• Подтверждает, что методика пригодна для intended use (контроль качества, идентификация, примеси).
• ICH Q2(R1) определяет стандартные параметры: Specificity, Linearity, Accuracy, Precision, Range, LOD, LOQ, Robustness.
• Утилита автоматизирует расчет и проверку основных метрик, снижая риск человеческой ошибки при подготовке отчетов.
• Позволяет быстро оценить пригодность методики перед началом серийного анализа.
⚠️ КРИТИЧЕСКИ ВАЖНО:
• R² ≥ 0.999 требуется для количественного определения основного вещества и примесей.
• Recovery 98-102% демонстрирует отсутствие систематической ошибки (bias).
• Precision RSD ≤ 2.0% гарантирует воспроизводимость результатов между анализами.
• Robustness показывает устойчивость метода к малым изменениям параметров (pH, температура, состав подвижной фазы).
Ключевые особенности утилиты:
• Агрегация данных по всем ключевым параметрам ICH Q2.
• Автоматическая проверка критериев приемлемости (Acceptance Criteria).
• Генерация структурированного JSON для архивации в LIMS.
Критические параметры:
• Linearity R²: >= 0.999
• Accuracy Recovery: 98.0-102.0%
• Precision RSD: <= 2.0%
• Robustness Variation: <= 5.0%
💡 Советы по использованию:
1. Используйте данные минимум из 5 концентраций для оценки линейности.
2. Для точности проводите анализ на 3 уровнях концентрации (80%, 100%, 120%) по 3 повторности.
3. Прецизионность оценивайте по 6 повторностям одной концентрации (100%).
4. LOD/LOQ рассчитывайте по сигналу/шуму (3:1 и 10:1) или по стандартному отклонению отклика и наклону.
5. Сохраняйте сырые данные хроматограмм/спектров вместе с этим отчетом для аудита.
⚠️ Особенность: Данная утилита не заменяет полный статистический анализ (например, ANOVA для промежуточной прецизионности), но служит быстрым инструментом первичной оценки (Screening) перед финальным оформлением отчета о валидации.
URS & FS — спецификация пользователя и функциональная спецификация
Документ описывает контролируемый интерфейс, требования пользователя и функциональное поведение утилиты Method_Validation_Data_Packager. Назначение: автоматизированная проверка лабораторных, фармакопейных, аналитических или производственных QC-параметров на основе данных input.csv с формированием структурированного результата output.json.
Предметные ограничения и критические параметры
Перед продуктивным применением пределы должны быть сверены с утверждённой спецификацией, регистрационным досье, фармакопейной статьёй, валидированной методикой и локальными SOP.
- • R² ≥ 0.999 требуется для количественного определения основного вещества и примесей.
- • Recovery 98-102% демонстрирует отсутствие систематической ошибки (bias).
- • Precision RSD ≤ 2.0% гарантирует воспроизводимость результатов между анализами.
- • Robustness показывает устойчивость метода к малым изменениям параметров (pH, температура, состав подвижной фазы).
- • Агрегация данных по всем ключевым параметрам ICH Q2.
- • Автоматическая проверка критериев приемлемости (Acceptance Criteria).
- • Генерация структурированного JSON для архивации в LIMS.
- • Linearity R²: >= 0.999
- • Accuracy Recovery: 98.0-102.0%
- • Precision RSD: <= 2.0%
- • Robustness Variation: <= 5.0%
- • Линейность (Linearity): R² ≥ 0.999
- • Точность (Accuracy): Восстановление 98.0–102.0%, RSD ≤ 2.0%
- • Прецизионность (Precision): RSD повторимости ≤ 2.0%
- • Робастность (Robustness): Вариация ≤ 5.0%
URS — пользовательские требования
| ID | Требование | Критичность | Критерий приемки |
| URS-001 | Утилита должна принимать файл input.csv с точными заголовками из контракта данных. | High | Файл обрабатывается без ручной правки заголовков. |
| URS-002 | Утилита должна выполнять детерминированную проверку для Method Validation Data Packager на основе входных значений, утверждённых пределов и предметных правил. | High | Для каждой строки формируется статус PASS / WARNING / FAIL. |
| URS-003 | Утилита должна проверять обязательные поля, типы данных, числовые диапазоны, единицы измерения и предметную правдоподобность. | High | Ошибки схемы, формата и преобразования явно отражаются в результате. |
| URS-004 | Утилита должна выявлять критические отклонения по показателям, указанным в описании и спецификации метода. | High | Критическое отклонение приводит к FAIL или отдельному critical finding. |
| URS-005 | Утилита должна формировать output.json с машинно-читаемыми результатами, исходными значениями, предупреждениями и отказами. | High | JSON пригоден для LIMS/ELN/MES, QA/QC review и архивирования. |
| URS-006 | Результат не должен зависеть от машинного обучения или недокументированных эвристик. | Medium | Все решения основаны на явно заданных правилах, порогах и входных значениях. |
| URS-007 | Система должна сохранять трассируемость между серией, входными данными, применёнными правилами и итоговым статусом. | High | Выход содержит идентификатор серии/образца и перечень проверенных параметров. |
| URS-008 | Документация должна поддерживать подготовку IQ/OQ/PQ и обсуждение при инспекции. | Medium | URS, FS, контракт CSV/JSON и тестовые сценарии поставляются вместе с утилитой. |
| URS-009 | Утилита должна быть пригодна для пакетной обработки нескольких строк input.csv. | Medium | Каждая строка получает независимую оценку; ошибки одной строки не скрывают ошибки других строк. |
| URS-010 | Утилита должна поддерживать простую операционную модель: запуск в demo-mode и запуск с входным/выходным файлом. | Medium | CLI-сценарий воспроизводим на тестовом и продуктивном окружении. |
Контракт input.csv
| # | Поле | Тип | Пример | Назначение |
|---|
| 1 | BatchNumber | string | VAL-METHOD-2026-001 | Идентификатор серии/партии для трассируемости, review и последующего расследования отклонений. |
| 2 | R2 | decimal | 0.9998 | Коэффициент детерминации; основной критерий линейности аналитической методики. |
| 3 | YIntercept | decimal | 0.5 | Содержание платины; контролируемый остаточный катализатор/элементная примесь. |
| 4 | Slope | decimal | 12000.0 | Контролируемый входной параметр для детерминированных QC-правил и трассируемого результата. |
| 5 | MeanRecovery% | decimal | 99.5 | Восстановление; показатель точности и отсутствия систематической ошибки. |
| 6 | RecRSD% | decimal | 0.8 | Относительное стандартное отклонение; показатель точности/прецизионности процесса или метода. |
| 7 | PrecRSD% | decimal | 0.9 | Относительное стандартное отклонение; показатель точности/прецизионности процесса или метода. |
| 8 | LOD | decimal | 0.05 | Предел обнаружения; справочный параметр чувствительности метода. |
| 9 | LOQ | decimal | 0.15 | Предел количественного определения; справочный параметр пригодности метода для количественного анализа. |
| 10 | RobustnessVar% | decimal | 1.2 | Контролируемый входной параметр для детерминированных QC-правил и трассируемого результата. |
BatchNumber,R2,YIntercept,Slope,MeanRecovery%,RecRSD%,PrecRSD%,LOD,LOQ,RobustnessVar%
VAL-METHOD-2026-001,0.9998,0.5,12000.0,99.5,0.8,0.9,0.05,0.15,1.2
VAL-METHOD-2026-002,0.9995,0.2,11500.0,100.1,1.1,1.2,0.06,0.18,1.5
VAL-FAIL-2026-003,0.9950,1.5,10000.0,95.0,3.5,3.0,0.10,0.30,8.0
FS — функциональная спецификация
| ID | Функция | Реализация |
| FS-001 | CSV import | Прочитать input.csv в UTF-8/CSV-совместимом формате, проверить наличие заголовка и ожидаемых колонок. |
| FS-002 | Schema validation | Проверить обязательные поля, количество колонок, отсутствие критических пропусков и корректность структуры строк. |
| FS-003 | Type conversion | Преобразовать числовые, флаговые и текстовые значения; некорректный формат фиксировать как ошибку строки. |
| FS-004 | Domain rule engine | Применить предметные правила для Method Validation Data Packager, включая лимиты из описания утилиты и утверждённой спецификации. |
| FS-005 | Status aggregation | Сформировать итоговый статус: FAIL при критическом отказе, WARNING при некритическом отклонении, PASS при соответствии. |
| FS-006 | JSON export | Записать output.json с детализацией проверок, исходными значениями, предупреждениями, отказами и critical findings. |
| FS-007 | Audit support | Сохранять структуру результата пригодной для review, расследования отклонений, воспроизведения расчёта и подготовки IQ/OQ/PQ. |
| FS-008 | Integration contract | Поддерживать сценарий: LIMS/ELN/MES формирует input.csv, утилита возвращает output.json, портал отображает описание и документацию. |
| FS-009 | Error handling | Отражать ошибки без неоднозначных сообщений; не подменять отсутствующие значения расчетными значениями без явного правила. |
| FS-010 | Version control support | Документировать версию утилиты, входной контракт, контрольную сумму исполняемого файла и дату применения правил. |
Пример output.json
{
"utilityId": "method-validation-data-packager",
"utilityName": "Method_Validation_Data_Packager",
"overallStatus": "PASS|WARNING|FAIL",
"sourceFile": "input.csv",
"checks": [
{
"parameter": "BatchNumber",
"value": "VAL-METHOD-2026-001",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "R2",
"value": "0.9998",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "YIntercept",
"value": "0.5",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Slope",
"value": "12000.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "MeanRecovery%",
"value": "99.5",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "RecRSD%",
"value": "0.8",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "PrecRSD%",
"value": "0.9",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "LOD",
"value": "0.05",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "LOQ",
"value": "0.15",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "RobustnessVar%",
"value": "1.2",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
}
],
"criticalFindings": [],
"warnings": [],
"generatedFor": "QA/QC review and LIMS integration"
}
Матрица трассируемости
| URS | FS | OQ/PQ покрытие |
|---|
| URS-001, URS-003 | FS-001, FS-002, FS-003 | OQ-001/OQ-002/OQ-003 |
| URS-002, URS-004 | FS-004, FS-005 | OQ-004/PQ-001 |
| URS-005, URS-007 | FS-006, FS-007 | OQ-005/PQ-002 |
| URS-008, URS-010 | FS-008, FS-010 | IQ-001/OQ-006 |
OQ/PQ тестовые сценарии
| ID | Сценарий | Ожидаемый результат |
|---|
| OQ-001 | Валидная строка из примера | PASS или допустимый WARNING согласно правилам. |
| OQ-002 | Отсутствует обязательная колонка | Ошибка схемы или FAIL. |
| OQ-003 | Нечисловое значение в числовом поле | Ошибка преобразования типа. |
| OQ-004 | Значение критического параметра за пределом | FAIL и critical finding. |
| OQ-005 | Несколько строк с разными статусами | Независимая оценка каждой строки. |
| PQ-001 | Реальная серия/партия пользователя | Согласованный результат review с сохранением input/output. |
QA/QC и change control
- Не менять имена колонок без обновления валидатора, документации и тестового набора.
- Хранить
input.csv, output.json, версию исполняемого файла, документацию и checksum. - Перед продуктивным использованием провести IQ/OQ/PQ или эквивалентную CSV/CSA-проверку.
- Критические пределы должны быть сверены с утверждённой спецификацией, локальными SOP и регистрационным досье.