2022-06-22: ЛАФ - море общения и содержательные доклады

< Блог:Максима Цепкова

В прошедшие выходные был на ЛАФ-2022 — Летнем аналитическом фестивале. Это тоже конференция аналитиков, но по формату и атмосфере она очень сильно отличается от AnalystDays. И сопоставима по количеству участников — было несколько меньше 500 человек. ЛАФ проводится с 2010 и первые годы был в Иваново: суббота была с докладами в офисе, вечером ехали на турбазу, шашлыки и общение, а в воскресенье продолжали работать — не взирая на открывающиеся возможности для отдыха. А несколько последних лет оба дня проходят на турбазе или доме отдыха в разных местах. Были Владимир, Тверская область, Кострома, а в этом году — Софрино в Подмосковье. И благодаря формату на фестивале царит атмосфера активных знакомств участников и общения. Тем более, что в пятницу вечером, после заезда, был командный квиз и дискотека, а в субботу — афтерпати с живой музыкой, танцами и шашлыками. Пати завершилось около полуночи, но общение продолжалось до полтретьего минимум, потом я ушел спать.

Что интересно, от AnalystDays отличается не только формат конференции, но и состав докладов, можете посмотреть сами программы: ЛАФ и AnalystDays. На ЛАФ гораздо больше докладов про профессиональную работу аналитика и кейсов конкретных проектов. При этом, конечно, получилось меньше докладов по softskill, хотя они тоже были. Но, как и на AnalystDays докладов, связанных с особенностями работы аналитика в микросервисной архитектуре — не было. Да, были доклады по интеграции, но в них обычная логика, свойственная enterprise-приложениям, а не ситуации, когда запрос пользователя обрабатывается несколькими сервисами и надо обеспечить надежный отклик за приемлемое время при их асинхронной работе. И доклад Дмитрия Морякова про распил монолита задача про минимизацию связей выделяемой части ставилась, но способ решения был в тщательном анализе этих связей, который выполняет аналитик по выделенной архитекторами части, известными методами.

Из докладов я хочу отметить Екатерины Подолиной про визуализацию, пригодную чтобы показать 20к элементов в комплексной картине. Очень интересный способ.

Я сам делал доклад про способы описания бизнес-архитектуры. И участвовал в круглом столе «Почему индустрии нужны проектировщики, а не аналитики?» Это заняло полдня, а дальше я слушал доклады и вел репортаж в телеграме в ходе конференции. Рассказ об этом — дальше в отчете. Надо отметить, что рассказ заведомо не полон: на конференции было пять треков. Кроме того, параллельно с моими выступлениями шли выступления очень хороших спикеров, которые я тоже пропустил. Жаль.

До описания докладов — пара слов о площадке. В целом площадка Софрино — хорошая. Мне лично по атмосфере прошлогодняя под Костромой на берегу Волги в лесу понравилась больше, чем парк Софрино, но это уже вопросы личного вкуса. Я знаю, что участникам понравились бассейн и рыбалка. Но у Софрино есть несколько системных недостатков, один — критичный. Во многих номерах — ровно одна розетка в комнате, высоко на стене рядом с телевизором, так что без удлинителя при подключении зарядки телефон просто висит в воздухе, да и у ноутов не всегда хватает длины провода, в результате он может лежать на полу на проходе с рисками наступить. Проблема лечится удлинителем, я совершенно случайно с собой взял, можно было сильно поругавшись получить на ресепшн, но количество ограничено. Если в следующем году будет там же, то в письмо участникам стоит написать об этом недостатке, чтобы они взяли удлинители. А еще — большие полотенца, потому что отельные очень малы, и ножницы, чтобы открывать шампуни и гели для душа, пакеты руками не разрываются (один из пяти поддался). А если будут искать другую площадку, то, может, стоит завести чеклист проверки для номеров так же как для конференционных залов — чтобы такие предупреждения формировать.

Но, несмотря на отдельные недостатки, конференция прошла великолепно. Громадное спасибо организаторам и программному комитету за прекрасную, вдохновляющую конференцию и качественную программу! И всем участникам - за море общения!

Do you want to try some new features? By joining the beta, you will get access to experimental features, at the risk of encountering bugs and issues.

Ок Нет, спасибо

Мой доклад — о бизнес-архитектуре

Мой доклад Бизнес-архитектура: от цепочки создания ценности до автоматизации бизнес-процессов был про разные способы описывать бизнес-архитектуру. Обычно это принято делать через описание бизнес-процессов, но такой способ имеет множество проблем, особенно напрактике — думаю, все встречались с толстыми описаниями со множеством диаграмм, которые не соответствуют реальному положению дел, и плохо понимаются сотрудниками компании, которые вроде должны по этим процессам работать. Я говорил об альтернативных способах. Это task flow, поток задач, который широко применятеся в ИТ и знаком по доскам. И его можно применять для любых компаний, и это досотаточно легко — если рассматривать workflow документа как отражение выполнения задачи. От task flow есть переход к цепочкам создания ценности, value chain. И к ценности для потребителя, продуктам для него. В Archimate продукты проявлены, хотя предполагается их реализация через бизнес-сервисы, реализуемые бизнес-процессами. А есть другие способы — OMG Essence, канвас Остервальдера для описания встройки компании в рынок.

Понятно, что глубоко рассмотреть все эти способы за 40 минут нельзя, доклад был обзорным. Но при его подготовке у меня возникло ряд интересных аналогий между представлением процессов торговой компании и ИТ-разработкой, через task flow, думаю, на одной из осенних конференций рассмотреть это детальнее.

А на ЛАФ после доклада был слот общения в кулуарах с участниками. И потом многие подходили по этой и смежным темам. Так что получилось хорошо.

Круглый стол

Круглый стол назывался «Почему индустрии нужны проектировщики, а не аналитики?» Тут надо сказать, что в теории требования, которые выявляет и формулирует аналитик, описывают систему как черный ящик, и в книгах актцентируют внимание на том, чтобы не проектировать конструкцию системы, а фиксировать именно такие описания. В жизни это не работает, идет очень быстрый переход к моделям — а их создание уже является проектированием. При этом требования, выявляемые в ходе анализа, носят временный характер. Это довольно быстро признали все участники обсуждения.

А то, что позиция называется «аналитик» связано с историческими причинами, и не стоит переживать по этому поводу. Впрочем, отмечены ситуации, когда требования обеспечиавают страховку при разборе результатов, либо нужны для формального соответствия ГОСТ, но это уже отдельные темы.

Конспектировать и активно участвовать — невозможно. Но после круглого стола Денис Бесков, который его организовывал, собрал тезисы участников.

Александр Скоробутов, Татьяна Тимофеева. Введение нового человека в проект. Антипаттерны и подводные камни для наставника — как найти верный путь

Александр из Касперского, а Татьяна — из Антифрода для госзаказчиков. Разные области, но доклад решили сделать вдвоем. Хороший доклад про наставничество. Отчасти очевидные вещи, но реакция зала говорит, что антипаттерны, о которых говорили спикеры — реально распространены.

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

Как обосновать важность наставничества заказчику? Ему нужны выполненные работы, а не идеальная команда. Но! Ему нужно уверенное планируемое выполнение задач. Наставничество — позволяет этого достичь.

Наставник — не мамочка, а старший брат или сестра: родительская забота, авторитет опытного, но при этом относительное равенство и приятельские отношения. Старший брат всегда на твоей стороне, это важно.

  • Повышаются требования к качеству собственной работы
  • Надо проанализировать свои недостатки, чтобы не заразить
  • Передать личную одержимость работой. Но помните, что у человека кроме работы есть другая жизнь.
  • Учитывайте график. Удобный вам может быть неудобен подопечному, а он может стесняться сказать. Надо обсуждать.

Активности

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

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

Регулярный фидбэк тет-а-тет. Особенно если работаете в open space. Как отдельная активность, отделенная от других. Еженедельно + по вехам проекта или испытательного срока.

Какие ставить задачи и как это делать.

  • Не только полезные для проекта, но и служить интеграции человека, знакомить с проектом и предметными областями. Задача — элемент мозаики знаний. Каждая задача — расширяет его область.
  • Надо объяснять не только что надо сделать, но и важность этой задачи для проекта.
  • Учитывайте, что сроки у новичка будут больше.

Антипаттерны

  • Человеку поручают рутинные работы. Там легко выявить ошибки, познакомить с процессами. И у новичка рутинная работа не будет вызывать отторжение. Но! нельзя только скидывать рутину на новичка. И не формулировать «вот тебе рутина пока мы заняты делом».
  • Nice to have — не срочные и без рисков для проекта. Кажется хорошей идеей — рисков нет, технический долг разгребают, а в исследованиях новички проявляют себя. Но! Такие задачи не дают чувства значимости и интеграции с командой. Тот же эффект «вот тебе всякое разное, пока мы дело делаем».
  • Бросить в воду — пусть сам выплывает, нет — нам слабаки не нужны. Сценарий очень часто применяют с обоснованием «у нас команда профессионалов, не нужны люди, с которыми надо нянчиться». Реально за этими словами стоит нежелание заниматься наставничеством. Новичок при этом испытывает сильный стресс, и там может быть точка невозврата, от которой человек уйдет. Часть по-факту превращается в стихийное наставничества со всеми минусами. И вам дальше искать следующего — большие накладные расходы впустую. Может, все-таки учить плавать, а не бросать в воду. А еще — вам надо передать ваши практики и способы решения задач, которые отличаются от тех, к которым он привык на предыдущем месте. И еще — что думает выплывший о бросивших в воду? Он не будет воспринимать остальных людей как команду. Так что только как педагогический прием под наблюдением, а не реально бросать вводу.
  • Сразу расскажу тебе все. Обычно у тех, кто недавно выплывал сам — остался посттравматический синдром. И они рассказывают очень много в первый же день. И это превышает возможности восприятия. И человек реально забудет большую часть информации. В то время как наставник наоборот, будет стремиться рассказать все больше.
  • Мелочная опека. В первый день прочитали лекцию. Во второй — дали задачу и плотно опекают, вплоть до того, что диктуют письма. Тоже антипаттерн. Новичок думает «что я, совсем тупой?» А цель наставничества — научить делать задачи — не достигается. И даже если новичок держится за мамину юбку и хочет делать пjд диктовку — надо с этим что-то делать.

Наставничество — не только способ научить, но и способ научиться.

  • Самый эффективный способ разобраться — рассказать другому.
  • Новый взгляд со стороны может показать неожиданные моменты

Профит

  • Новичок стал членом команды
  • Новичок приведет других, скажет что классная компания

Ирина Гертовская. Отдел системного анализа: создать, развить, расширить. Дорожная карта и путевые заметки

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

Интересанты и их интересы

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

Проблемы в привязке к интересантам: долгое погружение аналитика (РП), сложность поиска специалистов (PM), недостаточная эффективность (CEO), нет замены на сложных работах (Senior), недостаток материалов для обучения (Junior), перегруз на типовых работ (Middle)

Демография: в 2017—2022 приход молодежи упала на 25 %, а потребность — возрастает.

User story: я хочу построить работу в отделе, чтобы удовлетворить интересы таких-то стейкхолдеров. Это — из ее опыта, переформулируйте для себя в соответствии с вашей ситуацией.

Первые шаги

  • Ситуация: что критично, что подождет
  • Ресурсы
  • Выделить направление максимального эффекта
  • Выявить показатели для оценки

А параллельно — стратегия

  • Что руководство хочет от отдела
  • Зачем отдел нужен — часто видение руководства разъезжается с собственным, и, более того, можно было сделать, как хотели, но об этом не знали
  • Оценить ресурсы.
  • Составить план

У них на запуске было плохо — аналитики разошлись из-за изменений рынка, а при этом маячило изменение законодательства. Попросили аналитиков из других отделов компании — им дали на время, как-то запустились. Но дальше нужно развитие.

Оценка эффективности. Критерии различаются от ситуации

  • Надо как-то оценить в начале: что есть
  • А потом мониторить

У нее было: количество ошибок сохранилось, но при этом объем работ возрос, то есть на единицу работы уменьшилось. А еще — не сорвали процесс заказчика, и это — успех. Надо смотреть.

Сделали шаблоны проектирования — сократили работу аналитиков в несколько раз. И два аналитика были на 10 разработчиков. Правда, не успевали все равно одним разработчиком надо было усилить.

При поиске аналитиков важное

  • К новичку — соображалка и проверка по hard skill, которым учился. Учили БД — что узнал?
  • К среднему уровню — soft skill. B проверка, что адекватно рассказывает про опыт, не врет.

РП: Вы дали слабых аналитиков. Чтобы не было — подключаешь его на этапе заявки и совместный отбор. Поэтому даже при ошибках — они совместные.

В каждой команде — сильный лидер и сильную голову в соображалке. Не обязательно один и тот же человек, двое. И к ним более слабых, чтобы они росли.

К подразделениям

  • Не допускать простоев на входе
  • Памятки новичкам — снизить неопределенность
  • И у кого спросить — даже для ведущего, потому что специфике проекта он не знает

ступени развития аналитика.

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

Передача знаний сверху-вниз, люди повышают компетенции

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

Триада технологического развития: технологии, обучение, сохранение знаний. Надо делать все вместе. Разрабатываем технологию — добавляем базу знаний — готовим и проводим обучение. И в обратную сторону, подготовка обучения показывает провалы ы базе знаний, а ее наполнение — пропуски в технологиях.

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

Обучение: если обучали — запишите и положите, ведите список — для повторного использования.

Вовлеченность

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

Новаторов 2-3 %, в ИТ — побольше, но не так много. Ранних последователей 13 %, всего 16 %. На них надо опираться. И к ним притягивать раннее большинство. Они осмотрительны, но если видят, что получилось — они хотят попробовать. Дальше позднее большинство.

Вовлеченность — переход аналитика в архитекторы. Планировали переход на 9 месяцев, чтобы с одной стороны, он обучил и передал другим, а с другой — сам подучился и стал архитектором.

Автоматизация где можно. Например, генерация описания АПИ (старая история) — потому что без этого обновление — адский труд, вплоть до увольнения тех, кто занимался.

Дмитрий Безуглый. Не слепая эволюция. Системный подход в работе и жизни

Как часто у Димы — очень глубокий доклад, в котором собрано много концептов. Часть из них надо будет посмотреть на слайдах и взять себе. А пока — просто тезисы.

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

Собирается в докладе

  • Заставить задуматься — возможно, это сложно
  • Будет говорить вещи, которые могут показаться странными. И, возможно, такими являются.
  • Первая стадия столкновения с изменениями — отрицание

Если ты такой умный, то почему до сих пор не богатый? В 20 ржешь, в 30 заставляет задуматься, в 40 — хочется дать в рожу задающему. Реплика из зала: в 40 отвечаешь на него. Вот так: одни отвечают, а другим хочется дать в рожу.

Что хуже поломанного компаса? Ложные ориентиры.

Как только встречает двуличие — это не мой человек.

Мало людей идут сложными путями. Вместо простых, пусть ложным. Большинство не может быть не правым. Если все побежали — не надо бежать в другую сторону.

Ролик с эффектом домино, когда маленькая дощечка по цепочке валит все больших и больших.

Контур — цепочка субъектов или объектов, которая формирует прямое или отложенное взаимодействие.

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

В 1950 году британские ученые осознали опасность роста населения Индии.

  • Первая версия: тупые индусы не знают, откуда дети. Развернули программу планирования семьи
  • Наводнили дешевыми контрацептивами. Рождаемость сначала упала, потом поднялась.
  • Главный секрет: папаша мог пойти на пенсию после рождения третьего сына. Поэтому — 4-6 детей. Закон принимали раджи, когда надо было набирать армии. До этой причины добирались 30 лет

Контур подхода для решения проблемы. Но любит исследовать, но не любит операционку.

Три подхода к решению

  • Мышление собирателя — transportation thinking. Есть маленький генератор эндорфинов — собрал что-то. Эта яблоня там-то и есть единственный путь. Если не знаешь, как правильно решать задачу — не профессионал. 90 % госов и run-бизнеса.
  • Мышление охотника. Олень — не там, где видели в тот же раз. Вероятностное мышление, надо построить гипотезу, где может быть объект. А еще если не увидел — не надо уйти в депрессию. Удовлетворение от процесса. А еще «где бы я был, если бы был оленем», и рыбу ловить на то, что любит она. Надо смоделировать ситуацию, держа в голове другой объект. Grow Change.
  • Конвергентное и дивергентное мышление. Сначала создаем альтернативы, а потом делаем выбор. Но еще после выбора — надо заниматься реализацией, просто взял и сделал то, что придумал. То есть надо чередовать все три деятельности, и уметь переключаться.
  • Великий строитель. Надо создать календарь, чтобы заставать мигрирующие стада. А еще организовать деятельность товарищей: загнать мамонта, а не убить, чтобы убить там, где можно переработать, и потом убить. Строители получают удовлетворение от таких проектов. Но их мало.

Мы все гибриды, у нас есть все варианты удовлетворения.

Принцип ритма в процессе: нельзя застревать в фазе, по 30 % каждой — и еще делегирование реализации. Вы можете стать великим строителем. Но надо научиться организовывать коллективную работу.

Контур результата. Мерило работы — не усталость. Лучше всех в колхозе работала лошадь, но председателем она не стала. Если вы в системе — лошадь, то вам будут все время накидывать задачи.

Клиентоориентированность важнее функциональности. Осознанность важнее клиентоориентированности.

Ресурсы — Действия — Результат — Выгода — Влияние. Output — Outcome — Impact (по-русски все — результат).

Outcome — выгода — если вы получите результаты, то ваши клиенты получат такую-то выгоду Impact — влияние — если выгоды для участников будут достигнуты, то можно ожидать изменений в организациях, сообществах или системах.

Как побеждать: Run — Grow — Transform.

Вы зачем получаете 80тр как аналитик, вместо того, чтобы получать 200тр как продукт? Вам это нравится? Реально вы сами для себя определяете, на какой площадке играть.

Принцип баланса инвестиций: Инвестиции, Варианты-Выбор, Операции — по трети.

Работать надо умнее, а не больше. И бежать из тех мест, где работа оценивается потением или демонстрацией потения (имитацией). После трех лет имитации деятельности люди не способны вести деятельность.

  • Прежняя парадигма: 80 run + 20 grow — кризис — transform — снова run + change
  • Новая парадигма: 50 transform + 30 grow + 20 run. При этом часть transform невидима.
  • Джобс 4 года собирал права на музыкальные произведения, чтобы запустить iPod+iPhone. B это создание конкурентного преимущества

Контур контекста.

Гараедаги. Как управлять хаосом и сложными проектами.

Почему нет результатов

  • Не понял (просто скопировал)
  • Я не подумал (сделал как привычно)
  • Подумал, но мало
  • Отказался меняться
  • Не смог понять новую парадигму

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

Сдвиг парадигмы от Анализа к Системе. Матрица: run-change-transform против complicated-complex. В complicated — аналитический подход, в complex — системный. В клеточках подходы, надо будет посмотреть.

Работайте с теми, кто умеет работать.

Куда денется серийное производство? Каждая новая тесла уникальна, при этом программирование роботов ведут 8 scrum команд? и каждая новая тесла — новый релиз продукта.

Контур глубинной причины. TOC. Часть системного мышления — про причины, а не симптомы. Ищем корневые причины. Но! В острой ситуации не всегда есть время искать корневые причины, надо устранять симптомы, а одновременно работать с причиной.

Контур осознанности. 2*2 Осознанность — Компетентность

  • Мы еще не знаем, что не умеем
  • Точно знаю, что не умею — из этого квадранта переход в остальные осознанно
  • Осознанная компетентность — чеклисты, инструкции
  • Magic — работа спорится на лету, наша интуиция подгоняет решения.
  • Но: при изменении внешней среды мы неожиданно оказываемся в квадранте, где мы не знаем, что не умеем.

Люди внедряют устаревшие модели.

Малый круг — рефлексия. Объясняешь другим. Раз, два — сам понял, они не понимают. Когда ты оцениваешь свою компетентность — можно избежать большого круга.

Большинство проджектов думают, что знают, что такое продукт — то, что делает команда. Продукты знают, что продукт — нечто другое, то, что наносит пользу. Одни других не понимают. То есть понимание зависит от контекста.

Теория U. Кусочек, хорошие схемы. Система — не один, а двое. Потому что синергетический эффект — только тогда возникает. Поэтому определить только одну сторону — провально. Если мы хотим изменить — то мы должны и измениться сами. Принцип сотворчества.

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

Механизмы слепой эволюции

  • здоровый дух авантюризма — отказ от канонов
  • естественный отбор — плохо приспособленные должны умирать
  • короткая память — многократные построения идентичных попыток — угадать с окном возможности
  • примеры успеха — культивирование ошибок выжившего

600 экспериментов, 500 человек, выкатили 3.

История с разработкой продуктов больше похожа на кладбище великолепных идей.

В омут с головой — не надо.

Стратегия — не про героизм «мало ресурсов гарантированный результат».

Осознанность, а не авантюризм. Чем отличается Взрослый от Ребенка? Каждый делает, что хочет. Взрослый хочет с учетом последствий сделанного выбора. С учетом влияния решения на других — это более глубокий учет последствий.

Будущего нет: ни в данных, ни в экспериментах, ни в гибком реагировании на внезапно прилетающие изменения. Это все — реактивное мышление. Воин сражается там, где застала битва, стратег выбирает место время и способ так, чтобы победить.

По мотивам фреймворка Роджера Мартина.

  • В чем смысл существования (миссия)
  • Где мы можем достичь максимум (рынок)
  • Что есть наша победа (vision) — мы сами это формулируем в меняющемся мире
  • Как победим (стратегические ставки, вектора развития)
  • Как мы изменимся: в чем будем лучшими (возможности), как изменимся наши поддерживающие процессы

Как создать

  • Discovery
  • Research
  • Design: ставки, capability, системы и процессы
  • Operate & Optimize

Контур целостности.

  • Холархия и холоны.
  • Самоопределение — это способ вхождения в объемлющую систему.
  • Самоопределение — основа эволюции.

На текущий момент мы как люди — не объекты эволюции. Мы не конкурируем друг с другом. Вопрос самоопределения — с кем и на кого. И мы сами определяем, на какую организацию работаем. Переход в другую организацию — способ поменять мир.

Не делайте херни, и не находитесь в организации, которая ее делает.

Анжелика Арсланова. Работа с источниками данных и изменениями. Чек-лист для изменений

Понятный рассказ о переходе от устных уведомлений к чеклисту по изменениям для того, чтобы обеспечить устойчивость процесса. Большая компания, 15 команд занимаются аналитикой данных, а данные лежат на 20 серверах и поступают из многих CRM-систем. Структуры данных меняются. Раньше была устная информация об изменениях на летучке. Те, кто слушал вроде как прикидывали, что проблем нет. Но с голоса воспринимали не все, руководители не всегда знали про использование полей, и от изменений ложились процессы интеграции. И это было 1-2 раза в месяц, и это приводило к инкапсуляции команд внутри, взаимному недовольству.

Поэтому сделали протокол из 4 пунктов изменений. Потом постепенно это разрослось в большой чек-лист

  • Использование изменяемых объектов — через инструменты, скрипты по базам, интеграционные пакеты, BI-отчеты, логи ClickHouse
  • Предварительные уведомления: сделали структурную ленту новостей, с детальным описанием изменений. Плюс ping в slack инфраструктурных команд. Если с отработкой изменений есть проблемы — то новость комментируют или отвечают в slack, изменение может быть отложено.
  • Изменения — задача на разработчиков по шаблону, изменения, тестирование. В задаче: проблема, мотивация, что сделать, сроки. Важно раскрыть смысл задачи, а не просто набор изменений. Разработчику это важно, чтобы ответственно отнестись, и не было рефакторинга.
  • Уведомления по факту — новости в стафф, на каналах в слаке и на летучках.

Эффект

  • Сократилось время на поиск объектов — собрали единые скрипты для поиска.
  • Скорость подготовки к изменениям сократилась в два раза — задача стала типовой, идем по чеклисту
  • Скорость реализации увеличилась в 1.5 раза
  • Падения ушли
  • Увеличилось доверие между командами

Дмитрий Моряков. Изоляция микросервисов по данным при миграции с монолита

Понятный доклад о процессе распила монолита в изолированные микросервисы. К сожалению, без примеров. На абстрактном уровне процесс понятен, а дьявол как всегда сидит в деталях, потому что оказывается, что система внутри сильно связана и с этим надо как-то разбираться. Дальше тезисы.

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

Как менять? Варианты пилотного проекта.

  • Делаем в микросервисах новое, ставим рядом. Оно хорошо, но не получается распилить.
  • Поставить новую систему в параллельную работу, а потом переключить. Дорого, не всегда есть время.
  • Вырезаем из монолита критичную часть и делаем микросервисами.

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

Роль аналитика

  • Реверс инжиниринг — анализ БД, сбор требований. С документацией обычно проблемы. Есть средства не только для БД, но и для кода и логов, но практически БД — не дорого и достаточно.
  • Моделирование: предметная область, процессы AsIs
  • Проектирование: бизнес-процессы ToBe на основании решений по архитектуре. Управление зависимостями.

И дальше в докладе было детальное описание по стадиям.

  • Построить модель предметной области
  • Описать бизнес-процессы AsIs — выдерживая модель
  • Выделить микросервисы
  • Спроектировать новые бизнес-процессы: монолит обеспечивал транзакционность работы по запросу пользователя, а в микросервисной архитектуре исполнение идет асинхронно по нескольким сервисам, и это требует перестройки процессов
  • Детальное проектирование микросервисов.

Нотации.

  • Процессы — BPMN. Процессы, и их ассоциация с хранилищами. Описание коллаборации: межпроцессный обмен, service task, очереди сообщений.
  • Предметная область:
Domain-Subdomain - удобная, но слабая, только верхнего уровня. Работает на простых областях. 
UML диаграмма классов - хорошая, но с трудом понимается всей командой, особенно бизнесом. 
    • ER-диаграммы, с дополнением сущность-связь EA для отложения вложенности доменов

Инструментарий — EA (он использовал его), Visual Paradigm, iServer. На большой БД нужны отчеты по БД.

Диаграмма: два БП, в одном пишем хранилище, в другом — читаем. Направленная связь записи/чтения — по варианту использования use case. Вся модель — в репозитории, и это дает возможности проверять модель, группировать информацию.

Итерационный процесс, чтобы добиться изоляции.

  • Бизнес-процессы формулировать в сущностях предметной области
  • Названия хранилищ — в соответствии с сущностями предметной области
  • Отчеты по репозитарию
  • Изоляция: хранилище ассоциировано с одним вариантом использования.
  • Персистентность данных — только в конечных состояниях.
  • Избегаем update, создаем новые данные

Самый страшный монолит можно распилить. Вопрос — сколько сил вкладывать в детальное проектирование и моделирование.

В вопросах — как интегрировать с системами ведения задач после начала разработки. Ответ: однократную выгрузку, например, для создания задач в Jira, сделать легко, а вот изменения отслеживать сложно. Именно поэтому он предлагает методику только для пилота. На описание полной системы не хватит ресурсов аналитиков. Но кусочки отпиливать по-очереди можно.

Екатерина Подолина. Растим деревья на данных и тушим пожар риск-мониторинга

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

Компания проверяет закупочную деятельность. Конфликт интересов:

  • Инспекторы выписывают безопасные штрафы, которые не оспариваются
  • Руководитель — обеспечивает выполнение своих показателей
  • Главный босс — заинтересован в увеличении числа штрафов.

Анализ: мощность инспекторов — десятки контрактов, а их 10к+. Большие контракты идут мимо проверок. Заказчик сложный — идет конфликт интересов.

Была процедура вне системы. Инспектор заходил на портал по госзакупкам, находил контракт, вручную копировал в Excel и так же вручную, заходил в систему закупок города, оттуда копировал.

Она сделала выгрузку контрактов, наложила на них риск-мониторинг. 10k строк, 50 колонок: характеристики и риски. Она сама была инспектором и хотела помочь инспектору — облегчить работу. И помочь боссу — чтобы он видел мониторинг.

Надо было наглядно показать проблему, и далее — динамику работы. Смотрела инфографику. Нашла 3d-дерево, но по масштабу не подходило. А потом — увидела фрактальное дерево на питоне, оно уже подходило на объеме. А риск мониторинг — подсвечивать цветами, как пробки. Построение дерева — открытый код, довольно быстро, но дальше игрались с хорошей визуализацией.

Две инфографики

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

Логика дерева

  • Справа — более дорогие контракты. И как раз было видно, какие контракты проверяют.
  • Деление ветвей — по годам и финансовым критериям — по объему закупок.
  • Более 15 фильтров, чтобы получить нужный срез контрактов — это часть дерева. Например, подозрительного поставщика, или по конкретному лекарству с особым учетом.
  • Риск-мониторинг по цветовой гамме желтый-красный.
  • Можно увидеть уже проведенные проверки и включение в текущие контракты. И эти контракты подсвечивались другим цветом — бирюзовым и синим. Красный пожар тушим синей водой.

Инфографика — не убирает работу с таблицами, под деревом есть таблица. Обоснование включения в проверку.

Результаты

  • Инспекторы не делают 2/3 механической работы — все контракты в дереве.
  • Руководитель получил инструмент, защищающий от высшего руководства — прозрачность и обоснованность проверок.
  • Босс увидел картину и масштаб проблемы, получил управляемость.

Работает во многих проектах: контрольное управление РФ, города, ДИТ — анализ с поставщиками, Европейский банк. И не только нарушения, но и освоение бюджета.

Владимир Баймаков. Просто о сложном: о моделях данных, интеграциях и баре

Хороший доклад о простых аналогиях из жизни, которыми объясняются сложные вещи бизнесу. Ведь основная задача аналитика — грамотная коммуникация между бизнесом и ИТ при разнице языков, что получается не слишком хорошо. Простые примеры это облегчают. В докладе было на примерах систем интеграции, но прием применим и для других областей.

Задача в интеграции — описание моделей данных. Вроде все просто — структуры данных. Но надо объяснить разницу разного уровня.

  • Физический уровень данных. Коробка, и разнородный крепеж. Если накидать — будет ненормализованная БД. Нужны коробочки по видам изделий. И их подписать — индексация. При этом нормализация разумна, гайки и болты используют совместно — значит можно в одну коробку. Аналогия хорошо заходит людям.
  • Логический уровень. В телекоме история: надо перекрутить перегородку, а мужик пришел, и говорит: фигня какая, надо открутить и прикрутить. Логический уровень — об объектах, свойствах и взаимосвязях.
  • Концептуальный уровень. О терминологии, которую мы используем.
Телеком. Для них Договор - контейнер для услуг. А у заказчика договор - уникальный идентификатор клиента, по которому идет пополнение счета и так далее.
Агрегатор такси. Вы вызываете, оплачиваете со своей карты. Но есть функция "вызов для другого человека", при этом плательщик - другой, а не вы. 

Способ интеграции — разница между шиной, точка-точка и dblink на примерах бара.

  • Шина. Заходите в бар, заказываете пиво, платите. Бармен — идентификация, авторизация (18 лет), параметры контракта (пиво) и т. д. Он выполняет роль шины
  • Точка-точка. Это уже другой бар — из холодильников с бутылками пива, и каждый из них с собственной авторизацией и собственной оплатой. И если надо несколько сортов пива — то надо стоять много очередей и в каждом выполнять свою процедуру.
  • dblink — бар с бочкой и ковшиком, из которой сам наливаешь пиво. Очень просто — скорость и простота. Вместе с рисками — грязный ковшик, неаккуратный посетитель, могут всю бочку опрокинуть.

[ Хронологический вид ]Комментарии

(нет элементов)

Войдите, чтобы комментировать.