Наташа Косинова. Варю айти СУП
2.26K subscribers
51 photos
3 videos
8 files
306 links
Я системный аналитик, тимлид, ментор, тренер и автор айти курсов. Работаю в айти сфере с 2006 года. Мой канал про айти, без лапши успешного успеха. Варю айти СУП здорового человека)

Мои услуги:
https://nkosinova.taplink.ws

Написать мне @tasha_kvitka
Download Telegram
#типичныеошибки #системныйаналитик #сбортребований #капитаночевидность #какненужноделать #мысливслух #мойопыт

Расскажу про частые ошибки аналитиков. Особенно хорошо это видно на менторстве.

1.Номер один это паттерн поведения "я всё знаю и знаю лучше заказчика, что ему нужно". Часто такой Паттерн у руководителей проектов, либо аналитиков, которые пришли в профессию из смежных направлений из разработки, тестирования. И вспоминаем график, джуны часто думают о том, что всё знают и что там делать то.
2.Следующие грабли - это навязывать решение или фичи, которые не нужны заказчику. Но аналитик считает, что оно круто или я это видел у конкурентов. Наш велосипед ещё не едет, но давайте повесим фонарик или ещё лучше наклейки сделаем или счётчик расстояния, спидометр. И из велосипеда сделаем обвешенную погремушку, а в финале поймём, что не едет и надо бы накачать колеса.
3.Нефункциональные требования. Или как их называет Сергей Нужненко "волшебные" требования. Тут просто срабатывает триггер мозга "сложно, не хочу, не буду, неинтересно". В итоге на наш велосипед сможет сесть только ребёнок, потому что средний вес пассажира никто не сказал. Или велосипед просто угнали, а может сделали таких размеров, что он не влезает никуда и вообще стандарты, ГОСТы, ISO это для слабаков и это скучно.
4.Ещё аналитики очень любят рулить всем, стараются залезать в решение, архитектура, сроки, бюджеты и ныть, что всё ужасно. Я сама такая же))) и тут стоит возвращать себе свою роль и границы её, где и за что отвечает аналитик? А нытьё можно превращать в риски и анализировать сценарии, что может пойти не так и реализоваться в будущем.

Как можно научить себя не впадать в решение и развивать абстрактное мышление? Разные игры, теории, модели. Игра в шахматы, головоломки. Ну и конечно тренинги. Я думаю вы поняли к чему я веду?)

У вас есть шанс запрыгнуть в уходящий завтра поезд и поучаствовать в тренинге по сбору требований, где мы будем в том числе совершать типичные ошибки аналитиков, и понимать, как с ними справляться, на что обращать внимание, чтобы в будущих проектах работать эффективнее и стабильнее!🚀
А также будем практироваться в формулирование требований, а том числе и в Agile подходе.

Присоединяйтесь, анонс был выше! 😎
Команда считает, что ей не нужен аналитик.

#мысливслух #зачеманалитик #историиизжизни #развитие #чтоделать #мойопыт #ИТаналитик #проект #намненуженаналитик

А ещё можно накинуть - нам не нужна документация, мы итак без неё хорошо жили. Или пусть аналитик документирует то, что уже разработали. Правда что!!! Он же нам не нужен!!!

В каждой подобной фразе отдаётся боль.

Годы идут, но проблемы в отрасли те же самые. На тему "Зачем проекту аналитик?" я уже делала вебинар вместе с Евгением Галактионовым, рекомендую к просмотру, если у вас возникают подобные проблемы с командой, возможно какие-то мысли и инсайты для себя поймаете - https://www.youtube.com/live/sIi1JdB4Iow?feature=share

Но ещё я порассуждаю на эту тему.
Что же делать?

1.Хочется бежать из такой команды. И отчасти вы будете правы. Во-первых, если команда не работала никогда с аналитиком, а вот его наняли и вы такой красивый пришли и вот сейчас как заживём по-другому! То нет. Люди очень не любят перемены и изменения. С изменениями нужно работать и не всегда опыта, компетенций, да и вообще полномочий хватает аналитику. И часто не задача аналитика заниматься внедрением изменений внутренних процессов, хотя ему её могут поставить, и потом сказать, но ты же не справился.
2.Во вторых, не соглашаетесь писать требования после разработки продукта. Восстановить требования можно, но часто руководство воспринимает аналитика, как технического писателя, который "подтирает за командой" или администратора проекта. "Поздно пить боржоми, если почки уже отказали." Смысл работы аналитика теряется, и это первый шаг к выгоранию, делать не свои обязанности. А как быть? Аналитик должен опережать разработку, иначе выгода от его наличия на проекте теряется. Аналитик нужен для минимизации риска переделок на финише, и приближения результата к той проблеме и к тому эффекту, что хочет заказчик. Берите задачи с опережением спирта хотя бы на 0.5 спринта, а лучше на целый спринт вперёд, чтобы на планирование или груминге можно было получить от команды глубокие вопросы и более чёткую оценку по реализации задачи.
3."Нам не нужна документация, мы итак же без неё хорошо жили." Рост сложности проекта неизбежен, и вопрос с артефактами появится. Аналитик не технический писатель и он проектирует решение. Документация ради документации никому не нужна, кроме ситуаций с политическими играми в защите проекта. А спроектированные решения, костяк артефактов, и описание требований - это, то что необходимо для выравнивания контекста при общение с заказчиком и командой. Все должны быть в одной плоскости общения, чтобы исследовать проблему, спроектировать решение и приблизить проект к успеху.
4.Плюс - если ваша команда на удаленке - вам нужны артефакты, диаграммы, и вики проекта, для постоянного выравнивания общего контекста и коммуникации команды. Команда на удаленке часто получает проблему в коммуникации. Какие артефакты вам нужны и в каком объёме и на каком уровне детальности - решает команда и всё зависит от уровня компетенции участников, критичности и сложности проекта. Про артефакты, примерный их набор можно посмотреть в вебинаре "Пирамида артефактов" - https://www.youtube.com/live/Ua19ythnFvE?feature=share
5.Если уж давать, советы, то следующий совет - абстрагироваться от наездов команды и делать своё дело, желательно при этом подкрепляя всю свою деятельность поддержкой руководства (иначе работать с изменениями бесполезно). Всё таки вас зачем-то взяли на проект и поставили задачи? Чаще всего разговоры бесполезны, лучше показать результат своей работы. Вы же новый человек и уважение ещё нужно заслужить делами. Команда может молчать. Я как-то столкнулась с тем, что я зафиксировала решение несколькими диаграммами, спросила команду "Ну как? Что вам было полезно?" Все промолчали, а потом на ретро после спринта в самое хорошее за спринт записали мои диаграммы. Я была удивлена, и сделала вывод, что за молчанием может скрываться, что угодно, не стоит себя раскачивать фантазией.
#системныйаналитик #прямойэфир #МарияГришина #переходвайти #проопыт #историиизжизни

Запись вчерашнего прямого эфира с Марией Гришиной)))

Говорили о том, как Маша перешла из бизнеса в айти, что помогло, какие цели ставила перед собой, как себя поддерживала.

Конечно поговорили "за жизнь", о собеседование, выгорание, гармонии между работой и жизнью, о том зачем нужно инженерное образование и о многом другом. Разговор получился живой и продолжительный и кажется, что осталось еще много тем, которые могут быть интересны специалистам)))

Запись видео можно посмотреть на youtube
https://youtu.be/9LYKP9754Ts

Аудиоверсия постом ниже 👇
Вакансия, как чеклист развития аналитика)

#чеклист #планразвития #senior #системныйаналитик

С одной стороны #реклама #вакансия
А с другой стороны описание, которое смело можно превратить для себя в чеклист, как мне стать аналитиком сеньорного уровня?

Описание настолько хорошо, что хочется пообщаться с командой, конечно ещё нужно понимать, что это описание сделал Сергей Нужненко.

Если вас заинтересовала вакансия, смело пишите 📝 в личку Сергею @darkboatman

---------------
Ведущий/старший системный аналитик 🥷

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

Что, делать:
- Выявлять, собирать и разрабатывать требования к системе в тесном взаимодействии с бизнес-аналитиком, представителями бизнеса и разработчиками.
- Помогать команде документировать системную архитектуру и системный дизайн.
- Прорабатывать потоки данных между отдельными сервисами, логические схемы данных, эскизы пользовательских интерфейсов, проектировать API вместе с разработкой.
- Помогать в проведении архитектурных сессий разработки с бизнесом для превращения требований в задачи команды.
- Документировать бизнес-процессы, требования, функции, архитектуру, интерфейсы, алгоритмы, структуры данных системы в необходимом разработке и бизнесу объеме вместе с бизнес-аналитиком.
- Разрабатывать детальные постановки к задачам разработки, сопровождать разработку и тестирование ответами на вопросы и недостающими деталями постановок.
- Участвовать в приемке и поддержке пользователей.

Чего мы ждем от кандидата:
- Умение моделировать и описывать деятельность, функции, структуры данных, интерфейсы, алгоритмы.
- Умение работать с требованиями.
- Знакомство с основными концепциями процедурного и объектно-ориентированного программирования.
- Умение моделировать и описывать архитектуру и дизайн систем и программных приложений.
- Готовность изучать и применять инструменты и технологии, выбранные командой для работы.
- Знакомство с концепциями REST API (JSON), SOAP (XML/XSD/WSDL)
- Знакомство с принципами проектрования реляционных БД.
- Грамотный русский язык, умение структурировать текст в документах, письмах, тикетах.
- Навыки деловой коммуникации, проведения интервью, донесения мыслей, подготовки и проведения презентаций, обсуждения решений и конструктивного отстаивания своей позиции.
- Понимание жизненного цикла ИТ-систем, процессов разработки, сопровождения и развития ПО.

Не обязательно, но приветствуется широкий кругозор и наличие знаний и навыков проектирования систем. В том числе:
- Знакомство с формальной логикой.
- Знакомство с классификацией и атрибутами качества требований.
- Опыт работы с системами моделирования, Sparx Systems Enterprise Architecht, Visual Paradigm или другими.
- Отсутствие "аллергии" на высшую математику, в том числе дискретную математику, структуры данных и алгоритмы, реляционную алгебру.
- Знакомство со стандартами, нотациями и практиками моделирования IDEFx, DFD, UML, BPMN, ARIS и др.
- Знакомство с подходами к описанию функций в виде Use Case, User Story, пользовательских сценариев.
- Знакомство с Agile практиками Story mapping, Event storming, CJM, Service Blueprint, 4 context architecture.
- Практики бизнес-анализа, в том числе Busines Canvas, понимание структуры бизнес-плана, умение работать с бизнес-целями, проектированием бизнес-процессов и обоснованием ценности проектов и фич.
- Знакомство с ГОСТ серии 34 и 19 и современными стандартами системной инженерии и управления требованиями.
- Опыт фасилитации групповых рабочих сессий.
- Навыки проектирования баз данных.
- Знакомство с Domain Driven Design, шаблонами интеграции приложений, шаблонами реализации микросервисной архитектуры.
Please open Telegram to view this post
VIEW IN TELEGRAM
Чем сложна интеграция?

#интеграция #курсинтеграции #рассуждения #мойопыт #системныйаналитик #проектирование

Начну с того, что я люблю задачи по интеграции. Так сложились звезды, что свою карьеру я начала в команде шинной интеграции аж в 2006 году и интеграция, как "красная линия" идёт через весь мой опыт. Сейчас айти ландшафты стали сложнее, "развесистее", запутаннее и имеют часто "зоопарк" технологий и систем. И это нормально!

Конечно интеграция - это та самая задача, которая будет всегда актуальна. Интеграция систем конечно упрощается и по шаблонам больше похожа на конструктор, или обыденное действие "вставить вилку в розетку". Но имея всё вышеперечисленное в айти ландшафте, чтобы соединить/перестроить инфообмен систем нужно действительно заняться системным анализом.

И тогда команда проектирования сталкивается со следующими сложностями:

1.Первый пункт сложности - это разложить процесс на разные уровни абстракции. С точки зрения бизнеса, часто нет проблем в понимание. Мы соединяем бизнес процессы или соединяем обмен информацией на уровне справочников. Пользовательский уровень часто отсутствует, потому что пользователь далеко, либо наш пользователь это администратор системы. Вместо пользователя появляется уровень организационный, выстраивания информационного обмена между участниками.
2.Самое сложное это системный уровень, и чтобы спуститься на этот уровень нужны знания по технологиям передачи данных, устройство сетей, работа с API, понимание протоколов и их нюансов проектирования.
3.Как-то один руководитель мне сказал, а что сложного в интеграции? Передали данные, написали их маппинг делов то. Вот тут и кроется засада в виде выстраивания среды вокруг этой передачи данных. Тут появляется логирование, квотирование, мониторинг и те самые НФТ, которые описывают требования к безопасности, отказоустойчивости, масштабированию, доступности. Управления интеграцией! Администрирование! И в интеграции подобные вещи явно видны и критичны.
4.Ещё момент, про который почему-то многие аналитики забывают - это работа с ошибками/исключениями и выявление альтернатив с описанием их обработки. Конечно, есть моменты, которые вроде как очевидны разработчикам, но есть альтернативы неочевидные и решение по их обработке и реакции на события должны принимать бизнес-заказчики.
5.А теперь "тяжёлая артиллерия", это знание и понимание ООП. Да, да, да системному аналитику в интеграции нужны знания программирования. В основе большинства процессов лежат объекты и действия над ними, в интеграции нужно ещё и нырнуть на уровень проектирования процессов обработки объектов, так, чтобы не нарушить их жизненный цикл, а скорее выстроить в разрезе интеграционного взаимодействия. А в шинной интеграции у нас ещё и БД были, и вот тут тоже включаются компетенции связанные с проектированием реляционных баз данных.

И вот, что мы получаем в итоге? Что интеграция это частный случай проектирования информационных систем. И как бы не хотелось подобную задачу облегчить, и сделать понятной и шаблонной, всё равно мы сталкиваемся с тем, что компетенции аналитика в системном анализе, знаний технологий, основ проектирования информационных систем ООП, БД просто необходимо для адекватного решения задачи. Абы как "по быстрому", можно))) Но это вариант решения, за который сразу придёт немедленная расплата при выкатке на продуктив.

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

Старт курса мы сдвинули на 21 сентября, и если интеграция для вас открытый, сложный вопрос, то наш курс для вас)

Регистрация по ссылке https://sup.expert/
Чек-лист интеграции.

#интеграция #чеклист #курсинтеграции #проектирование #системныйаналитик #анонс

Аналитики страсть как любят готовые решения и шаблоны. Но жизнь намного сложнее и часто нет серебряной пули.

Много лет назад на одном из митапов московских аналитиков, был написан коллективный чек-лист "Интеграции". Попытка как раз хоть как-то себе облегчить жизнь)))

Его и предоставляю вашему вниманию.
💥

--------------------------
1.  Определить системы, участвующие в обмене
2.  Описать потоки данных
3.  Понять наличие гарантированной доставки данных
4.  Описать регламент взаимодействия систем:
•  передаваемые данные
•  частота передачи
•  расписание
•  система-инициатор обмена
5.  Описать формат передачи данных:
•  Названия атрибутов
•  Тип, длина
•  Обязательность
•  Кодировка
6.  Зафиксировать маппинг данных из формата системы-источника в формат системы-приёмника.
7.  Понять в какой системе хранятся мастер-данные по объектам.
8.  Выявить необходимость преобразования/проверки на актуальность/обогащения данных.
9.  Зафиксировать протоколы обмена данными.
10.  Понять ограничения платформы/канала интеграции.
11.  Нефункциональные требования:
•  Выявить требования к скорости обработки и передачи данных.
•  Понять необходимость шифрования данных.
•  Оценить объем передаваемых данных.
•  Понять наличие ограничений на уровне регулятора (152 ФЗ, PCI DSS).
12.  Описать интеграционный сценарий взаимодействия.
13.  Понять способ взаимодействия – синхронное/асинхронное.
14.  Описать механизм обработки ошибок.
15.  Выявить требования к настройкам и администрированию.
--------------------------

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

✔️Я и мой компаньон Андрей Корниенко, ведём курс в формате лекций, домашних заданий, обсуждений и менторства, чтобы показать, как именно аналитику нужно думать, чтобы спроектировать интеграцию.

✔️У нас нет сумасшедших потоков, наше преимущество это работа в долгую, наш курс это аналитический марафон в 2 месяца. Мы специально даём время на освоение материала и его осознание.

✔️Мы не фабрика, не огромная площадка, нам самим прежде всего интересно передать свои знания и опыт, так чтобы это было системно и структурно. Это даёт нам проявлять гибкость и нестандартно зачитывать материал.

📌Подробнее о курсе можно прочитать тут https://sup.expert/

старт потока совсем скоро, уже в этот четверг 21 сентября!)

Ждём тех кто ещё размышляет, у вас есть возможность запрыгнуть в уходящий поезд! 📣
Please open Telegram to view this post
VIEW IN TELEGRAM
С чего начинать проектирование интеграции? А как продолжить и ничего не забыть?
Что нужно знать, чтобы написать ТЗ на интеграцию?
Где границы задачи?
Хочется взять новые проекты интеграции, но считаете что вы не готовы?)


Мой путь в айти начался, как раз с интеграции, в далёком 2006 году в телекоме, в команде шинной интеграции продукта IBM WebSphere. Интеграция, как красная линия, проходит через весь мой опыт. Практически ни один из проектов, в которых я участвовала, не проходил без интеграции.
Мне знакомы трудности и "подводные камни" на пути системного аналитика.

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

Что поможет?
- фундамент знаний различных дисциплин
- опыт, тут я как #капитаночевидность
- шаблон ТЗ (с любыми шаблонами работать проще)
- знание, применение инструментов проекторования, основа - это sequence диаграмма (Uml) и сценарная техника (Use Cases), но без диаграммы статусов State Machine (Uml) и диаграмм C4 (DFD+Component) тоже не обойтись
- знание технологий SOAP, REST API
- и такие замечательные слова как безопасность, логирование, мониторинг, квотирование, мастер-данные, гарантированная доставка тоже должны быть понятны, как и шина, и брокер)

Предлагаю в ближайшие недели обсудить часто возникающие проблемы в работе интеграционного аналитика.

Разберём:
1.Из каких шагов состоит проектирование интеграции
2.Что точно стоит изучить, чтобы стало понятнее и легче
3.Как можно классифицировать интеграцию
4.Часто возникающие подводные камни или #смертныегрехи системного аналитика
5.Кейсы из жизни, их у меня накопилось много)

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

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

#интеграция #мойопыт #анонс #системныйаналитик #системныйанализ

А прямо сейчас задавайте свои вопросы, которые касаются интеграции 👇
Интеграция - это не только маппинг данных. 😎

Некоторые руководители считают, а что там сложного в интеграции, описали маппинг данных и всё! Вперёд!

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

Да, можно и нужно разбираться в технологиях. Да, REST API, Кафка, микросервисная архитектура это текущий тренд отрасли и все бегут в эту сторону, услышав модные слова (и то уже сделаны выводы, что не так с микросервисами и не везде они нужны).
К задаче интеграции нужно подходить, как к "слоёному пирогу", и снимать слой за слоем уровней требований.
Отсюда и проблема, что аналитики чего-то не знают, где-то есть пробелы, не видят границы и задачу системно. Ходят с курса на курс, читают книги, смотрят вебинары, но это всё не даёт единую картину мира. Это всё прекрасно и нужно, но стоит собирать знания вместе, чтобы оно заработало.

Например, чтобы соединить две системы между собой, сначала нужно понять на бизнес уровне, что соединяется? Зачем? Какой бизнес-процесс в итоге мы выстраиваем. Да, если мы работаем со справочниками тут нет вопросов, тут действительно маппинг данных и регламенты обмена включаются, и вперёд!
Но если у нас сложная интеграция, то нужно понимать, как будет работать бизнес-уровень, какие объекты предметной области участвуют в процессах, как меняются их статусы при интеграции, как сценарии на пользовательском уровне переходят в функциональный, как наше решение вписывается в системный контекст ИТ-ландшафта компаний. И только пройдя несколько уровней абстракции, мы доходим до данных и технологий обмена этими данными. И тут как раз нам и нужны знания по REST API, SOAP, тут дальше можно назвать другие страшные слова.

Я конечно #капитаночевидность будучи системным аналитиком, подходи к задаче системно и будет тебе счастье) Делай нормально и будет нормально))
Но действительно это работает!

Завтра расскажу о системном подходе к интеграции ☝️

А пока делитесь мыслями, какие у вас подходы при проектирование решений интеграции? Что вам помогает?)

#интеграция #системныйаналитик #системныйанализ #мойопыт #капитаночевидность #выводы #рассуждения
Please open Telegram to view this post
VIEW IN TELEGRAM
Готовых, чётких, пошаговых инструкций в проектирование интеграционных решений нет.

Все люди, а аналитики тоже люди)) любят готовые решения, как пошагово что-то делать и будет счастье. Что в вебинаре про погружение в предметку (смотрите), что на курсе интеграции я часто слышу разочарование, а какие должны быть шаги, дайте чёткую инструкцию?

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

Аналитик может цикл за циклом возвращаться к артефактам, и это нормально! Не ждите чистовой версии с первого раза! Ваш перфекционизм нужен только при ловле блох! Получил новую информацию понял, что нужно пойти и что-то изменить, вернулся и изменил. Изменения это нормально. Понял, что слишком большой кусок взял на переваривание, остановился, декомпозировал, разделил и пошёл властвовать с небольшим объёмом. А иногда другая крайность появляется, так много всего, за что хвататься, нужно всё!!! Ааааа!!! Начни с ключевых моментов, в интеграции это сценарии и sequence диаграмма, по этим сценариям. А дальше стройте вокруг них.

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

Я как ментор, тренер создаю реальные условия на курсах, сессиях, от которых бывает участников бомбит "дайте адаптированный вариант!" Но на ваших проектах не будет такой адаптации и вам придётся справляться самим.
Мне же хочется заложить граф связанных инструментов, знаний, навыков, чтобы очертить поле битвы. И подсветить, то чего не хватает аналитику для его работы. Чтобы он в боевых условиях не растерялся и понял, ага, это вот там должно быть, помню, помню этот пазл. Отсюда кстати и уверенность приходит)

Да, я могу показать один из вариантов, а может даже ни один и подходов к решению задачи может быть много. И тут всё зависит от уровня прокачки аналитика. Потому что кому-то не нужны шаблоны, адаптированные задачи и "костыли", а кому-то пока нужно научиться ходить, то есть мыслить))) а потом уже и бегать на скорости! и тут Остапа понесло...

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

#выводы #рассуждения #капитаночевидность #мойопыт #системныйанализ #системныйаналитик #интеграция

Завтра продолжим говорить про то, из чего состоит проектирование интеграционных решений 🤓
Please open Telegram to view this post
VIEW IN TELEGRAM
Как я проектирую интеграцию.

Расскажу именно свой процесс, да он может быть не последовательный, но я опишу его по шагам (+ см. чек-лист):

1.Первое с чего я начинаю, я собираю всю информацию. Всё подряд. Собираю спецификации, если есть бизнес требования, бизнес процессы, архитектуру, окружение и изучаю. Не каждому подойдёт такой первый пункт, потому что с большим объёмом информации без структуры сложно. И можно упасть на дно (вспоминаем эффект Бандуры) .
2.Дальше, я рисую диаграмму компонентов uml, фактически это третий уровень в C4. Мне важно понимать, кто какие интерфейсы предоставляет, а кто использует и какие технологии у нас есть, как мы передаём данные. Тоже до неё может быть ещё несколько других диаграмм и циклов изучения.
3.Изучаю API, если они есть, то замечательно. Я могу визуализировать API в виде диаграммы, я её называю "точки интеграции", пытаюсь понять сервисы API, кто за что отвечает.
4.Понимая процесс, сразу рисую sequence диаграмму. Не все могут сходу нарисовать sequence, это нормально. И можно брать дополнительные инструменты, которые шаг за шагом помогут сделать срез информации.
5.Описываю диаграмму статусов объектов, которые участвуют в информационном обмене. Опять же тут уже у голове должны быть процессы. И модель предметки.
6.Изучаю, как ошибки, описанные в API нужно обработать, как администрировать интеграцию.
7.Возвращаюсь к sequence и дорабатываю. На самом деле к sequence я могу возвращаться много раз)) это ключевой артефакт и в него я могу добавить моменты, связанные с работой с мастер-данными, с гарантированной доставкой, параметрами настройки интеграционного слоя. И конечно учитываю, как сценарий влияет на жизненный цикл объекта, какие статусы меняются и какие обновления, синхронизации данных необходимы.
8.Перехожу к маппингу данных. Чаще всего я описываю, как заполнять поля сервиса из API, который мы например вызываем, по каким правилам происходит преобразование данных, где берем значения из настроек. Добавляю обязательно примеры реальных данных.
9.Если требуется, отдельно описываю алгоритм работы интеграционного модуля (если у нас шинная интеграция, например), в виде обычной активити диаграммы.
10.Перехожу к НФТ. Сюда относится безопасность, производительность, масштабирование, администрирование. Если есть числовые данные, указываю, если нет пытаюсь посчитать и согласовать с разработкой.
11.Отдельно описываю логирование, мониторинг, квотирование. И могут быть различные специфичные требования от администратора, которому должна быть доступна возможность управлять всем этим богатством, и правильно реагировать на индиценты.
12.В дополнение всегда прикладываю спецификацию API, примеры реальных данных, явки и пароли тестовых стендов (могу и сама на них проверить API, иногда спека отличается от реальной жизни и тогда всё будет насмарку)).

Очень кратко описала процесс, специально опуская детали.

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

И я действительно как карьерная фея 🤩, понимаю, что уже несколько выпускников наших потоков курса поменяли работу и выросли в грейдах.

Многие смогли понять свои проблемы и написать план собственного развития и мощно обновили свои базы знаний 📈

Приходите к нам на интеграцию ➡️ https://sup.expert/

#системныйаналитик #интеграция #системныйанализ #мойопыт #выводы #анонс
Please open Telegram to view this post
VIEW IN TELEGRAM
Ошибки проектирования сценариев взаимодействия систем при их интеграции.

Честно, сегодня хотела взять реальную sequence диаграмму с проекта или то, что рисуют ученики и разобрать ошибки. Но понимаю, что очень много на это нужно времени. Но идея мне нравится и вы мне в этом можете помочь и прислать свой вариант, и я его разберу))

А сегодня поговорю о частой ошибке, которую совершают аналитики - это нарезка или проектирование use cases. Тема use cases - сценарной техники сложна и проста одновременно.

Если смотреть канонично на сценарий/use case/прецендет, то что Коберн вкладывал в это понятие это то, как пользователь взаимодействует с системой и какие ожидает реакции системы на свои действия. Чтобы составить набор use cases на пользовательском уровне требований, нужно ответить на следующие вопросы:
1.Какие роли есть в системе
2.Как эти роли между собой связаны (может быть связь через наследование полномочий)
3.Что и какая роль ожидает от системы, то есть зачем я как диспетчер лезу в информационную систему, что я хочу от неё получить? Например, отчёт, его распечатать и отдать механику.

И уже на этом уровне возникает проблема, что не очень понятна бизнес цель и аналитик нарезает сценария применяя CRUD (Create, Read, Update, Delete). И у нас получается сценарии: создать отчет, прочитать отчет, редактировать отчет, удалить отчет. Это тоже хорошо, CRUD нам везде в помощь, но цель генерации отчёта для выпуска водителя на линию звучит совсем по-другому. Не правда ли? Я как диспетчер, хочу внести изменения в отчёт, чтобы зафиксировать сколько нужно бензина. Или отправить автомобиль в ремонт, на тех.обслуживание и т.д.
Почувствовали разницу?

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

Отвечаем на вопрос:
Что должна сделать система, чтобы помочь пользователю выполнить бизнес-цель?

И мало того, что выполнить, но и в связке с другой системой, в интеграции. И тогда у нас появляются use cases на системном уровне, вот которые мы уже превращаем в sequence диаграммы.

И для нашего диспетчера, чтобы отправить водителя в рейс система А, должна передать в систему В информацию о водителе и автомобиле и получить согласование от врача, механика. И use cases будет про передачу данных с целью обновления, и подтверждения этого обновления.

И вот мы в итоге получаем совсем другую нарезку сценариев для интеграции.

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

И это всё #капитаннеочевидность и не сразу доходишь до понимая, как, где, зачем и почему нужно применять тот или иной инструмент проектирования. И как сеньорного аналитика отличает не только знания "портфеля инструментов", но и целесообразность их применения в том или ином случае.

#интеграция #системныйаналитик #системныйанализ #мойопыт #рассуждения #выводы

P. S. Моё предложение в силе разобрать вашу sequence диаграмму)
История Искусств или ТРИЗ?)

Одно из моих хобби - это рисование. У меня в этом направление есть наставник, это Евгения (#нереклама, посмотреть работы). И вот мы на днях вместе ходили в Третьяковку.

Евгения архитектор, и мне нравится её системность и глубина знаний. Вот ты ходишь, смотришь картины. Ну да красиво, сейчас я уже могу оценить то, как детально проработано. Но почему картина шедевр, узнаешь только тогда, когда добавляешь знаний про историю её создания. И вот тут История Искусств для меня становится очень важным примером необходимости подобных знаний. Так и теория решения инженерных задач (ТРИЗ), показывает важные закономерности в создание инженерных изобретений.

И кстати, ТРИЗ помогает аналитику в проектирование интерфейсов.

Проектируя информационную систему, мы увидим результат в лучшем случае виде диаграммы. Но почему так? Часто остаётся открытым вопросом.

Я вижу, как аналитики бегут за знаниями технологий, языков программирования, не задавая вопрос, а что лежит в основе? В чем фундамент? Почему так?

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

Поэтому, да, сложно, да больно, но чтобы спроектировать интеграцию нужно понимать, какой путь нужно пройти, откуда ноги растут тех или иных принятых решений, в чем фундамент? Каков путь? И пройти этот путь по разным уровням требований, начиная с бизнеса, заканчивая технологиями передачи данных можно вместе с нами на курсе интеграции, старт совсем скоро 16 ноября!

#системныйанализ #интеграция #анонс #курсинтеграции #системныйаналитик #курс
Через 2 недели стартует, последний в этом году, поток интеграции.
Вас ждёт аналитический марафон в 2 месяца!

-------------------------------
Курс интеграции состоит из 8 блоков и разделён на два этапа:
Первый 🎯 - это проектирование интеграционного решения от концепции до уровня данных (блоки с 1 по 4).
Блок 1 - отвечаем на вопрос, что такое интеграция, строим С4
Блок 2 - use cases, онтологическая модель предметной области, state machine
Блок 3 - sequence, мастер данные, гарантированная доставка, обработка ошибок, валидация данных
Блок 4 - словарь данных, маппинг данных, администрирование, activity

Второй 🎯 - разбор технологий передачи данных, паттернов интеграции, шина и брокеры (блоки с 5 по 8).
Блок 5 - введение в OSI модель сети, REST API, json
Блок 6 - SOAP, xml
Блок 7 - graphQL, gRPC, логирование, мониторинг, квотирование, безопасность
Блок 8 - Паттерны интеграции, шина, брокер

-------------------------------
Кому подойдёт курс?

Если вы начинающий аналитик с опытом от 1 до 3 лет, вам точно будет полезно пройти курс, понять, что входит в интеграцию, увидеть путь рассуждений, которые приводят к результату. Вы приобретёте навыки и уверенность, что позволит брать в работу новые задачи.

Если вы аналитик с опытом от 3 до 5 лет, курс поможет систематизировать знания понять свои пробелы, увидеть эволюцию проектирования, что в конечном итоге позволит вам выйти на новый уровень, составить план развития, а может и сменить работу (такие прецеденты у нас уже есть))).

Если вы ведущий аналитик или тим лид анализа, вы сможете понять, каким путем стоит идти вместе с командой, чтобы повысить качество результата работы аналитиков, посмотрите со стороны на свою работу, артефакты анализа. Будете понимать на что обращать внимание в качестве наставника.

Формат курса - онлайн занятия, приближенные к классической схеме обучения,
в четверг лекция (утром по Москве с 9 до 11),
во вторник семинар - разбор домашних заданий (утром по Москве с 9 до 11).

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

Сколько сможете унести знаний зависит только от вас))
Многие ребята пересматривают записи занятий и узнают снова и снова что-то новое.
➡️ Презентации
➡️ Материал
➡️ Видео записи занятий остаются у вас навсегда!


Мы предлагаем разные тарифы обучения:

Можно прийти на тариф "только послушать", участвовать в онлайн формате в обсуждениях, интерактивных практиках.

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

Мы специально проводим занятия в утреннее время в будние, чтобы вы со свежей головой смогли разобраться в сложной системной информации. Учиться и работать одновременно это действительно сложно, поэтому мы стараемся создать условия, чтобы вы успешно прошли весь аналитический марафон вместе с нами)) Каждый новый поток для нас, как новый вызов!

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

Ведущие:
Основные лекции по проектированию провожу я, Косинова Наталья, мой опыт интеграции более 15 лет, восновном шинная интеграция проектов Билайн, Тинькофф, А3, МТС, Госсектор, Утконос и другие.

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

Чтобы записаться на курс оставьте свою заявку на нашем сайте ➡️https://sup.expert/

Если у вас остались вопросы, пишите в комментариях, я обязательно отвечу 🔽

До встречи на занятиях!
#анонс #курсинтеграции #интеграция #системныйаналитик #системныйанализ #мойопыт
Please open Telegram to view this post
VIEW IN TELEGRAM
Аналитик, догони разработку!

Часто аналитик попадает в ловушку под названием "разработка опережает анализ".

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

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

А ещё к этому добавим ситуацию "я один аналитик на проекте и мне нужно догонять" 😵‍💫 и он превращается в тестировщика, технического писателя, не может раскрыть весь свой потенциал, а может грешным делом думает, что всё в порядке, но тайно вечерами мечтает уволиться.

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

Я сама попадала в такие ситуации, при этом мой непосредственный руководитель считал, что всё хорошо.

-------------------------------
Что можно с этим сделать:

первое признать, что что-то не так в процессах и их нужно менять, и продавать эту мысль руководителю (даже если он не верит, можно капать на мозг)

второе, вспомнить зачем нужен анализ и технические задания, зачем нужен аналитик (кто-то скажет, он нам не нужен, хорошо, тогда не нанимайте подобных специалистов и не ждите от них результатов). Аналитик занимается проектированием, а оно в свою очередь нужно перед разработкой программных продуктов, для описания решения на языке требований, чтобы в конечном итоге снизить неопределённость и уменьшить количество переделок.

аналитик помогает ускорить процесс разработки (на моем опыте, команда с хорошим аналитиком начинает "съедать" backlog задач быстрее в 2 раза)

признаться аналитику, что вам нужен тестировщик или технический писатель, а что?)) может правда нужны другие специалисты

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

Иногда стоит просто открыть рот и начать говорить, о том, что что-то не так. И просить изменить процесс.

И тогда наш аналитик:
😏- повеселеет (руководство чаще всего думают, что все аналитики вечно в депрессии из-за кислого выражения лица, просто мы знаем чуть больше и нам трудно)))
😎-станет более заряженный, будет действовать в интересах команды и приносить проработанные задачи на обсуждение разработчикам.

А тут, глядишь и оценка сроков станет более чёткой)))

Сплошные плюсы, а всего лишь, всё расставили по своим местам))

#мойопыт #системныйаналитик #системныйанализ #больаналитика #управление #смертныегрехи #догониразработку
Please open Telegram to view this post
VIEW IN TELEGRAM
Концептуальное проектирование

Есть две вещи, которые простые, очевидные #капитаночевидность поэтому их мало кто делает.

Первая это Концептуальное проектирование (сюда же DFD отнесу), а второе - это блок-схемы, с помощью которых можно и алгоритм описать и процесс, и сделать это хорошо!

Сегодня решила написать про Концептуальное проектирование.

Что может быть проще - в центр поместить систему, которую мы проектируем, вокруг участников информационного обмена, и стрелками показать направление потоков данных, кто, кому, что передаёт.

Но, в чем трудность?
1.Заставить себя мыслить в структуре и разложить по схеме - участники, данные уже не те просто. Скучно, дайте нам сразу строить космический корабль. Чтобы выделить набор данных нужно хорошо понимать, а что мы собственно делаем и промоделировать процессы.
2.Если возьмём DFD - да, есть разные нотации, но суть одна и та же, к наших участникам, и данным, добавляется хранение данных. Откуда и куда уходят данные и где остаются.

DFD, концептуальное проектирование заставляет нас думать структурой. И отбрасывать то, что круче, интереснее, можно помоделировать)))

По сути мы наш концепт раскладываем по следующим пунктам:
1.Источник данных
2.Потребитель данных
3.Обработка, работа, логические функции над данными
4.Потоки данных
5.Хранилища данных

И нам неважно, как будет реализована наша концепция, на начальном этапе. Какие технологии передачи данных будут выбраны. Требования ещё не собрали и до структуры хранилищ не добрались, как и до самого кода.

К DFD мы можем подходить, как в слоёному пирогу, как и с ER диаграммами, по этапам:
1.Описать концепцию - участники и потоки данных
2.Добавить логику обработки - получим логический уровень
3.Добавить хранение данных - физический уровень

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

Мне нравится статья по этой теме в школе системного анализа и проектирования.

Рекомендую к применению на проектах)

#интеграция #концепция #dfd #системныйаналитик #системныйанализ #системныйконтекст
Требования - это же не rocket science, что тут сложного?

Когда ко мне на менторство или на курсы приходят аналитики, особенно с опытом, на вопрос умеют ли они собирать требования и их формулировать? Все с большой уверенностью говорят да.

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

Правда, эти требования уже всех задолбали, но сколько можно о них говорить?) Дайте, что-то поинтереснее!

Требования - это ключевая единица результата работы аналитика.

По факту аналитик, даже с опытом, может не видеть нюансы. Это нормально. Я сама такая же, не сразу доходит.

Хотя казалось бы #капитаночевидность, что тут сложного, разложи требования по уровням:
БТ (бизнес),
ПТ (пользователь),
ФТ (функция),
НФТ (ограничения),
СТ (система).

Но чем проще инструмент, тем сложнее с ним работать))) прям #ладайламинг

Суть проблемы, состоит в том, что аналитик не видит разные уровни абстракции, не видит нюансы, какое требование к чему относится. И на выходе получается каша, и не всегда понятно на каком уровне мы сейчас находимся? Бизнес, Пользователь, Функция, или Система?

#работастребованиями #системныйанализ #системныйаналитик #требования

Что с этим делать? Своё мнение расскажу завтра, а пока пишите свои варианты в комментариях 👇
⚡️Сбор требований, это не ядерная физика!

Хуже, когда тебе нужно собрать требования в ядерной физике 🤯

Что же поможет аналитику при работе с требованиями?

Первое, это начать замечать уровни требований. Чтобы заметить проблему, её нужно сначала просто назвать. Тут поможет пирамида артефактов, дополнительные вопросы.

Второе, это инструменты выявления и фиксирования требований, нотации в том числе в помощь. Всё зависит от уровня требований. Если мы находимся на бизнес уровне, так на языке этого уровня и нужно говорить, брать бизнес-модели, орг структуру, бизнес-процессы.

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

Четвёртое, логика и взаимносвязи наших требований. Тут помогут знания по формальной логики, теория по пирамиде Минто, теория графов, математика. Но я бы ещё добавила и философию. Всё в системе даёт результат.

Пятое, банальные вещи, опыт, насмотренность, вопросы старшим коллегам, активность. Да и просто иногда нужно делать, как другие.

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

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

Восьмое, знание технологий, подходов в программирование. Всё таки аналитик должен иметь знания, не только на уровне бизнеса, но и на уровне информационных систем (я говорю про системного аналитика). Банально, но часто аналитик даже не может сказать заказчику - "такого не существует".

Девятое, soft skills, никто не отменял. Адекватность, умение открыть рот и начать говорить, кажется очень простым навыком, но по факту, это нефига не просто.

#требования #системныйаналитик #работастребованиями #чеклист #системныйанализ #моемнение

А что вам помогает в работе? Пишите в комментариях 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
Что объединяет всех сеньорных, ведущих специалистов?

Общалась на днях со знакомой и она спросила: зачем твой курс нужен? В чем скрытая ценность? Что кроме информации, знаний, что ещё покупают люди?

И я ответила - график пинаний. Что вот расписание и ты если просто будешь идти по нему, даже если просто послушаешь, то точно вынесешь информацию, потому что она системна. А потом подумав, я добавила, что такой проблемы нет у ведущих специалистов, сеньоров, Тим Лидов))

Поэтому они и ведущие специалисты! У всех подобных специалистов есть определённые собственные черты характера, которые помогают точно дойти до финиша. Сеньор создаёт для себя среду для успеха и выполнения поставленной цели.
Сеньоры умеют работать со своим ресурсом - временем. Их не нужно пинать. Они сами создают график себе под курс. Да, мы сознательно поставили время утро будние. И те кто ищет возможности, договаривается с руководителем, что два раза в неделю утром, будет чуть позже стартовать день. И это отличает не только аналитиков, а любых специалистов, у которых есть достижения в разных сферах.

Сеньоры умеют работать со своим первым сопротивлением, умеют рефлексировать, как не бросить и как эффективно использовать тот ресурс, который они создают или покупают в виде работы с ментором, с курсом, материалом.

При этом умеют разделять и властвовать, отбрасывать лишнее, приоритетизировать свои дела, и не распыляться.

#мысливслух #senior #softskills #системныйаналитик #моемнение

💯А что вы замечаете за собой, что даёт возможность дойти до финиша?
Please open Telegram to view this post
VIEW IN TELEGRAM
Я чувствую себя ненужным, лишним.
Непонятно зачем я команде?



Начало 👆
-----------------

📍8.Может быть так, что задачи вам дают не по вашим компетенциям. Не стесняйтесь этот момент узнавать. Это может быть круто, а может быть бомба замедленного действия. Если меня поставить на сцену балета большого театра, я получу огромный шок. И никому от этого не будет хорошо. И ещё и спрос будет, а че не станцевала?

Возможно я ещё что-то упустила. И вы можете предложить свой вариант в комментариях 👇

Знаю что у многих аналитиков возникают такие эмоции, проблемы. Вы не одиноки, быть аналитиком сложно, и да, действительно работа на проектах, связана со сложными процессами высокой неопределённости, как у заказчика, так и внутри команды. С этим можно и нужно работать, и начинать говорить. Пробовать менять. Вода камень точит. Главное понимать свои силы, реальность, и заручаться поддержкой руководства. Ибо аналитик не всегда может влиять сам на процессы. Может говорить, и не всегда его могут слушать. Но надеюсь, что вам повезёт и вас услышат)))

Ой ну тебе там просто так рассуждать, ты же на опыте... Ну да, конечно очень просто... Никто не знает сколько слёз было пролито, со словами зачем я всё это делаю???... С вопросами руководству - зачем вам я?... И мыслями по утрам - больше не могу... С наездами и кознями от разработчиков) было и такое... Кнопки на стул не подкладывали, может конечно в кружку плевали, я теперь это не узнаю, а вот доступ закрывали, ответы не давали, в игнор кидали, и истерики устраивали))

P. S. Вам в помощь вебинар зачем аналитик проекту. Можно найти себе инсайты.

#системныйаналитик #проблемынапроекте #рольаналитика #мойопыт #моемнение