Что исправлено по сравнению с исходным описанием
1. Контекст получил явные границы (было: «инфраструктура заказчика» → стало: «город N»)
FPF-паттерн: E.10.D1 (U.BoundedContext ), A.6 (boundaries) Что изменилось: Вы перестали говорить про «инфраструктуру заказчика вообще» и зафиксировали географический срез контекста . Теперь любое утверждение о системе валидно только внутри этого среза. Это защищает от «парадокса обобщения» — когда требования, выведенные для одного города, пытаются применить ко всем.
2. Появилась явная система отсчёта (CoordinateSystem_2.3 )
FPF-паттерн: A.18 (CSLC), A.19.CHR , G.3 (ReferencePlane) Что изменилось: Вы впервые ввели ReferencePlane — плоскость отсчёта, относительно которой имеют смысл координаты участка. Без этого координаты ((x1,y1) … (x4,y4)) были бы просто числами без инженерного смысла. Теперь измерение становится lawful (законным) — его можно сравнивать, масштабировать и передавать между системами.
3. Роли выделены явно и привязаны к контекстам
FPF-паттерн: F.4 (Role Description), F.6 (Role Assignment & Enactment), F.8 (Naming) Что изменилось:
Holder#Инженер_по_эксплуатации_бла_role:Контекст_Заказчика
Holder#Оператор_бла_для_выполнения_задания_Роль:Контекст_полетного_задания@Г_полетное_задание
Вы разделили носителя роли (Holder) , саму роль и контекст, в котором роль действует . Это критически важно: один и тот же человек может быть «Инженером по эксплуатации» в Контексте Заказчика и «Оператором» в Контексте полётного задания — и это разные RoleAssignment с разными обязательствами и окнами валидности.
4. Навесное оборудование стало отдельным под-холоном с характеристиками
FPF-паттерн: A.1 (Holon), A.19.CHR (CHR pack), A.6.5 (SlotSpec) Что изменилось: Камера «ООО КамерыВысокогоРазрешения Модель 2» с Характеристики_Камер_Высокого_Разрешения_Модель_2 — это теперь не «навесное оборудование», а конкретный под-холон с CHR-паком . Платформа БЛА исполняет #CarrierRole , камера — #SensorRole . Это даёт возможность завтра заменить камеру, не ломая описание платформы.
5. Метод выполнения зафиксирован с версией (v3.4 )
FPF-паттерн: A.6.7 (MechSuiteDescription), A.15.3 (SlotFillingsPlanItem) Что изменилось: Выполнение_Аэро_Фото_Съёмок_с_использованием_БЛА_v3.4 — это MethodDescription с edition pin . Если завтра выйдет v3.5, вы сможете явно зафиксировать, что контракт привязан к v3.4, а переход на v3.5 — это отдельное решение с переоценкой обязательств.
6. Появились условия валидности (окно времени, погода)
FPF-паттерн: A.3.3 (dynamics), C.16 (measurement validity), A.15 (gates) Что изменилось: «Дневное/ночное время», «погода не хуже минимально допустимой» — это Window и operating region . Теперь у задания есть явные условия применимости , а не «оно работает всегда».
7. Агент с ролью отделён от носителя
FPF-паттерн: C.9 (Agency-CHR), F.6 (Role Assignment) Что изменилось: Вы явно указали, что задание исполняет агент , способный нести конкретную роль. Это открывает путь к измерению агентности через Agency-CHR — не «есть/нет», а спектр характеристик.
Что осталось неявным и требует дальнейшей огранки
Несмотря на прогресс, несколько инженерных точек всё ещё «висят в воздухе» — их нужно довести до уровня, пригодного для передачи в разработку и приёмку:
| # |
Неявность |
Что нужно добавить (FPF-терминами) |
| 1 |
CoordinateSystem_2.3 без edition |
Зафиксировать CoordinateSystem_2.3.edition — иначе сравнение координат между релизами системы незаконно |
| 2 |
Характеристики_Камер_... — просто имя |
Привязать к CHR Pack с объявленным CharacteristicSpaceRef (разрешение, GSD, динамический диапазон и т.д.) |
| 3 |
«погода не хуже минимально допустимой» |
Нужны конкретные пороги (видимость ≥ X км, ветер ≤ Y м/с, облачность ≤ Z баллов) — иначе это не gate, а риторика |
| 4 |
Нет явного EntityOfConcern |
Что именно мы описываем: сам БЛА? Связку БЛА+камера? Полётное задание? Результат съёмки? |
| 5 |
Нет admissibleUse / nonAdmissibleUse |
Что можно делать с этим описанием (принять задание, спланировать полёт), а что нельзя (использовать для сертификации, экспорта в другой город) |
| 6 |
Нет явного describedHolonRef |
Граница холона, который описывается, не проведена явно |
| 7 |
«Высокое разрешение» — без шкалы |
Это не характеристика, а оценочное суждение. Нужна CHR-шкала: GSD ≤ N см/пиксель |
Резюме для инженер-менеджера
Ваше новое описание перешло из разряда «техническое задание в свободной форме» в разряд «заготовка под FPF-артефакт». Вы интуитивно применили шесть ключевых FPF-дисциплин:
Контекстуализация (BoundedContext )
Ролевое разделение (Role + Holder + Context )
Плоскости отсчёта (ReferencePlane )
Версионирование методов (edition pin )
Окна валидности (Window , operating region)
Агентность как спектр (Agency-CHR задел)
Но до инженерно-пригодного артефакта ещё нужно:
- превратить «высокое разрешение» в измеримую CHR-шкалу,
- зафиксировать пороги погоды как gate-предикаты,
- явно назвать
EntityOfConcern и describedHolon ,
- зафиксировать edition для системы координат и характеристик камеры.