Последнее время нахожусь в поиске «схем между». Так я называю особые графические построения, которые помогают мне думать, но не относятся ни к каким каноническим схемам или нотациям. Такие схемы помогают «нащупать объект».
Изучение объекта
Труднее всего в проектировании даётся изучение объекта деятельности. Под этим словосочетанием в СМД-подходе скрывается нетривиальное понятие. Объект как икс в математике — неизвестное пока искомое. Объект почти никогда не дан нам, мы постоянно его изучаем и можем только насколько-то приблизиться.
Обычно в качестве объекта берут всю деятельность, всё, что входит в рамку текущего функционирования и ближайшего шага изменений. Причём знание об объекте обычно многомерно и его возможно уместить лишь в разных проекциях как срезах объекта в каком-то отношении. Вместе с тем все эти срезы нужно умудриться взаимно увязать и согласовать друг с другом.
Заранее практически никогда непонятно что собой в точности представляет объект, что у него «внутри», что «снаружи», где проходит его рамка. Суфийская притча про слепых и слона здесь целиком и полностью подходит. Слон и есть наш объект никогда не данный нам целиком. Мы как слепые то щупаем одну его часть, то нюхаем другую, то слышим отзвук его внезапного «рыка». В общем и целом, кто любит тайну и её постижение, полюбит и исследование объекта. Без этого сложные проекты, на мой взгляд, не поднять.
Может возникнуть резонный вопрос. А как же без подобных знаний справляются участники деятельности? Справляются и даже вполне неплохо. А зачем тогда глубоко копать? Дело в том, что в один прекрасный момент, когда требуется совершить целенаправленное действие бо́льшего масштаба, чем-то, что ежедневно совершают сотрудники компании, их с их знаниями ждёт неудача.
Чтобы делать повседневную работу людям достаточно обладать предметными знаниями. Обычно это какие-то местные нормативно-предписательные знания о их отдельном фрагменте деятельности. Они не обязаны быть максимально подробными и точными. Если человеку их хватает для выполнения операций, то и довольно. Когда мы приходим и беседуем с представителями компаний о их предметной области, звучат как раз рассказы об этих отдельных участках. Но эти предметные представления всегда ограничены, а порой даже противоречивы. Тут мне понадобится пример.
Кейс с контрольным событием
Расскажу о проекте, уточнение объекта на котором заняло достаточно много времени, и если бы мы не пошли в это с должной глубиной, проект пришлось бы закрыть как неудавшийся.
Предприятие — крупнейший спецдепозитарий страны. В деятельность спецдепозитария входит проверка портфелей управляющих компаний. Чем-то это похоже на аудит, только не в области бухгалтерии, а в области фондовых рынков. Ежедневно спецдепозитарий обрабатывает тысячи показателей по тысячям портфелей. Проект же был связан с построением системы по автоматическому контролю за тысячами составных показателей.
Беседы с сотрудниками компании выявили очертания их предметной области, однако их рассказы каждый раз давали только какую-то часть целого, и картинка подолгу не складывалась из-за противоречий.
Частью ежедневной работы одних был контроль за уведомлениями, которые нужно отправлять регулятору и управляющей компании в нескольких ситуациях. Если при проверке очередного портфеля случалось нарушение по какому-то из контрольных показателей, то важно было отправить сначала уведомление о нарушении, спустя какое-то нормативное время уведомление о неустранении нарушения, если нарушение не удалось устранить, или уведомление об устранении в противном случае.
Других волновал сам факт нарушений, они стремились их всячески убрать. Им важно было устранено ли вчерашнее нарушение сегодня. Они привязывались к понятию операционного дня, которое закрывается не по астрономическому времени, а по факту обработки документов, что вносило дополнительные путаницы.
Каждая из групп говорила, что одно важнее другого, потому что этому их обучили их предметы. Например, сначала постулировалось «важно закрывать операционного день как можно раньше» или «мы стараемся закрывать дни не позднее». Этому противоречил факт, что нечто может быть пересчитано постфактум, потому что после пересчёта вдруг выяснялось, что показатель удовлетворял норме. Так постепенно конфликт фрагментов знания помогал продвигаться. Но движение шло медленно.
Нашей ошибкой было долго говорить с людьми одних знаний. Они объясняли нам что данные сегодня зависят от вчера. Тогда как зависимость была от некоторой точки начала, а не только предыдущего дня. Нас ослепляла зацикленность на понятии операционного дня. Долгое время от нас ускользало, что сам факт установленных регулятором норм требовал анализа событий в цепочках.
Так появилась сущность «контрольного события». Сущность, которая реально существует, но никому не видна. Контрольное событие собирало всю цепочку. Наступило первичное нарушение — родилось контрольное событие, от него стартуют нормативные отсчёты когда нужно проверить устранено оно или нет и отправить уведомления.
Как удалось увидеть эту сущность? Мне запомнилось, что для этого мне помогла схематизация конкретики цепочки фактов по дням. Вот портфель (По.), вот перечень контрольные показателей в таблице. Какие-то в порядке (галка), какие-то с нарушением (крестики).
Рассмотрим последовательность фиксаций для показателя n. В первый день нарушения выпускается уведомление о нарушении (УН). Тип этого показателя даёт норму в 4 дня на исправление. Мы видим, что три дня нарушение не устранялось (крестики). На четвертый день нарушение устранено — выпускается уведомление об устранении. Цикл завершился.
Далее через день у нас новое нарушение. Оно стартует новый цикл. Начинаем как обычно с уведомления о нарушении. По истечении четырёх дней, на пятый день у нас опять очередное нарушение, поэтому выпускаем уведомление о не устранении нарушения (УНУ).
Такая раскладка и позволила увидеть сущность, получившую название контрольного события.
Что это за вид схематизаций? Я не знаю, не могу пока в точности это определить. Кажется, что он похож на выкладки в математической индукции или математическом моделировании. Здесь я пока ставлю многоточие со знаком вопроса.