Интеграции — это навык, который помогает расти специалисту даже в кризис. То, что вы будете знать, будет актуален через 1-5-10 лет.
Освоив интеграции сейчас, вы точно не останетесь без работы, ведь мировой рынок API, который используют для интеграций систем, год за годом только набирает обороты.
Освоив интеграции сейчас, вы точно не останетесь без работы, ведь мировой рынок API, который используют для интеграций систем, год за годом только набирает обороты.
🔥7
Есть три ступени владения знаниями:
1. Только учусь. Все в теории. Могу объяснить простыми словами на примерах
2. Все знаю, есть опыт. Объяснить могу. Но вы должны понимать - это сложно
3. Все знаю, много опыта. Могу объяснить простыми словами на примерах
Самое крутое, когда доходишь до третей ступени. Тогда приходит вдохновение и много ассоциаций сложной теории с обычными бытовыми примерами из жизни.
Никогда я не любила занудство. И в какой-то момент нашла способ, как казалось бы сложный системный анализ сделать простым и доступным для всех! Смотрите как Ошибки проектирования можно избежать
1. Только учусь. Все в теории. Могу объяснить простыми словами на примерах
2. Все знаю, есть опыт. Объяснить могу. Но вы должны понимать - это сложно
3. Все знаю, много опыта. Могу объяснить простыми словами на примерах
Самое крутое, когда доходишь до третей ступени. Тогда приходит вдохновение и много ассоциаций сложной теории с обычными бытовыми примерами из жизни.
Никогда я не любила занудство. И в какой-то момент нашла способ, как казалось бы сложный системный анализ сделать простым и доступным для всех! Смотрите как Ошибки проектирования можно избежать
YouTube
Ошибки проектирования можно избежать
Доклад Екатерины Ананьевой на конференции Analyst Days-13. 21-22 ноября 2021. Москва www.analystdays.com
👍8
This media is not supported in your browser
VIEW IN TELEGRAM
Практика без воды с максимально глубоким погружением в детали - это то, что вы забираете, работая вместе со мной.
💥 В течение 6 недель мы встречаемся в формате онлайн
💥 Включаете микрофон и задаете свой вопрос сразу, во время занятия
💥 Обсуждаем вопросы не только по курсу, но и по вашим проектам, либо задачам с собеседований, которые не дались
💥 В начале каждого вебинара обсуждаем ДЗ, и встречаемся на отдельных эфирах по разбору ДЗ
Я допускала ошибки, пока училась. И пока прокачивала скилы в разных проектах. Самое ценное, что я могу вам передать - свой опыт. Зная рабочие подходы, вы сможете не допускать моих ошибок и точно будете знать, как подойти к задаче на интеграции с разных сторон
💥 В течение 6 недель мы встречаемся в формате онлайн
💥 Включаете микрофон и задаете свой вопрос сразу, во время занятия
💥 Обсуждаем вопросы не только по курсу, но и по вашим проектам, либо задачам с собеседований, которые не дались
💥 В начале каждого вебинара обсуждаем ДЗ, и встречаемся на отдельных эфирах по разбору ДЗ
Я допускала ошибки, пока училась. И пока прокачивала скилы в разных проектах. Самое ценное, что я могу вам передать - свой опыт. Зная рабочие подходы, вы сможете не допускать моих ошибок и точно будете знать, как подойти к задаче на интеграции с разных сторон
👍4
Осталось всего 4 места с практикой на курсе Интеграции, который стартует уже через 2 дня!
Я очень рада, что к программе подключились мои ученики, которые уже проходили другие программы GetAnalyst - БД, Разработка требований (системный анализ с 0 до опыта работы на проекте)!
В потоках всегда есть руководители проектов, кто прокачивает свои скилы, чтобы лучше понимтаь бизнес-потребности и процесс сбора требований,выстраивать коммуникации с разработчиками на одном языке. И бизнес-аналитики, которые переквалифицируются в системных.
P.S. В пятницу завершила трехмесячный поток по системному анализу с нуля. И один из самых крутых отзывов - новые навыки уже применятся на практике🔥
Так что переключаю фокус на новый поток, и как всегда будем осваивать и внедрять техники системного анализа для интеграций сразу на практике!
Я очень рада, что к программе подключились мои ученики, которые уже проходили другие программы GetAnalyst - БД, Разработка требований (системный анализ с 0 до опыта работы на проекте)!
В потоках всегда есть руководители проектов, кто прокачивает свои скилы, чтобы лучше понимтаь бизнес-потребности и процесс сбора требований,выстраивать коммуникации с разработчиками на одном языке. И бизнес-аналитики, которые переквалифицируются в системных.
P.S. В пятницу завершила трехмесячный поток по системному анализу с нуля. И один из самых крутых отзывов - новые навыки уже применятся на практике🔥
Так что переключаю фокус на новый поток, и как всегда будем осваивать и внедрять техники системного анализа для интеграций сразу на практике!
Провела два вебинара для вас в костюме лисы 🦊
Теперь, когда будете вспоминать подходы к проектированию интеграций, как работать с Postman и Swagger, то у вас будет 100% ассоциация самой важной теории и практики с лисьими ушами. Да? 👍
P.S. Сегодня будут повторы, не пропускайте
Теперь, когда будете вспоминать подходы к проектированию интеграций, как работать с Postman и Swagger, то у вас будет 100% ассоциация самой важной теории и практики с лисьими ушами. Да? 👍
P.S. Сегодня будут повторы, не пропускайте
🔥14😁3👍2👏1
❗️До начала вебинара 15 минут❗️
Последняя возможность попасть на вебинар Интеграции и Swagger для аналитиков😉
https://pruffme.com/webinar/?id=f7833b4cceecb15e3ff81a2c323ea2fd
Последняя возможность попасть на вебинар Интеграции и Swagger для аналитиков😉
https://pruffme.com/webinar/?id=f7833b4cceecb15e3ff81a2c323ea2fd
До завершения записи на курс ИНТЕГРАЦИИ осталось
Следующий поток не раньше мая 2023
Жду вас на первом занятии 6 декабря в 19:00 (Мск) 😉
Please open Telegram to view this post
VIEW IN TELEGRAM
getanalyst.ru
Интеграции: практический курс для системных и бизнес-аналитиков
Узнать, что такое "интеграции", можно, если решить реальную задачу:
✅ Получите требования заказчика на создание приложения с интеграциями
✅ Опишите архитектуру интеграций: какие приложения есть, и как они взаимодействуют между собой
✅ Опишите сценарии взаимодействия…
✅ Получите требования заказчика на создание приложения с интеграциями
✅ Опишите архитектуру интеграций: какие приложения есть, и как они взаимодействуют между собой
✅ Опишите сценарии взаимодействия…
💥 Завершаем запись на ИНТЕГРАЦИИ 💥
На курс пришли коллеги с разным опытом. Тем, у кого нет опыта будет проще. А вот опытным специалистам может быть немного сложнее, так как у них две цели - структурировать имеющиеся знания и получить новые.
В результате обучения на практике у всех будут результаты:
✔️ Новый проектный опыт, который пригодится как на текущем месте работы, так и при смене компании, на собеседованиях
✔️ Структурированные знания, ассоциированные с конкретным кейсом, на примере которого можно просто объяснять теорию
✔️ Возможность уверенно расти в должности и доходе
Спасибо вам за доверие! Мне важно, чтобы оно было во время нашего обучения. Именно в среде, где нам не страшно ошибаться и задавать вопросы, мы учимся и развиваемся лучше всего! 🚀
На курс пришли коллеги с разным опытом. Тем, у кого нет опыта будет проще. А вот опытным специалистам может быть немного сложнее, так как у них две цели - структурировать имеющиеся знания и получить новые.
В результате обучения на практике у всех будут результаты:
✔️ Новый проектный опыт, который пригодится как на текущем месте работы, так и при смене компании, на собеседованиях
✔️ Структурированные знания, ассоциированные с конкретным кейсом, на примере которого можно просто объяснять теорию
✔️ Возможность уверенно расти в должности и доходе
Спасибо вам за доверие! Мне важно, чтобы оно было во время нашего обучения. Именно в среде, где нам не страшно ошибаться и задавать вопросы, мы учимся и развиваемся лучше всего! 🚀
getanalyst.ru
Интеграции: практический курс для системных и бизнес-аналитиков
Узнать, что такое "интеграции", можно, если решить реальную задачу:
✅ Получите требования заказчика на создание приложения с интеграциями
✅ Опишите архитектуру интеграций: какие приложения есть, и как они взаимодействуют между собой
✅ Опишите сценарии взаимодействия…
✅ Получите требования заказчика на создание приложения с интеграциями
✅ Опишите архитектуру интеграций: какие приложения есть, и как они взаимодействуют между собой
✅ Опишите сценарии взаимодействия…
👍1
Синхронное и асинхронное взаимодействияе по REST API не всегда подходит для интеграции систем. Есть альтернатиный вариант- очереди сообщений.
Очередь сообщений – это аналог временного хранилища данных, которое позволяет размещать сообщения и читать данные в установленном порядке. Системы в этом случае взаимодействуют меджду собой в асинхронном режиме. Сообщения в очереди должны быть обработаны как можно скорее. Для этого в некоторых современных реализациях есть специальный параметр - "время жизни сообщения".
Во взаимодействии через очередь есть два компонента, взаимодействие которых нужно обеспечить:
▫️Producer – отправляет сообщения в очередь,
▫️Consumer – получает и читает сообщения из очереди.
Эти компоненты - системы, сервисы, микросервисы. Компоненты могут быть написаны разными разработчиками, на разных языках программирования, иметь разные мощности. А могут быть сервисами внутри одной системы.
Цель очереди: надёжно и быстро передавать сообщения от Producer к Consumer.
Можно сравнить очередь сообщений с обслуживанием очереди в магазине.
1. Покупатели собирают корзины с продуктами и встают с ними в очередь на кассу, чтобы оплатить - отправляют сообщение с товарами из корзины в очередь. Покупатель - producer. Сообщение - корзины с товарами.
2. Покупатели с корзинами стоят в очереди. Все хотят скорее покинуть ее. Есть максимальное время терпения.
3. Очередной покупатель со своей корзиной наконец добирается до кассы. Продавец обрабатывает запрос покупателя - пробивает все продукты из корзины, возвращает финальную стоимость покупателю и разрешает оплатить. Кассир - consumer.
Получается, как и в обычных интеграциях через запросы REST API, системы обмениваются друг с другом данными, отправляя запросы и получая ответы. Главное отличие - между ними находится промежуточный компонент-посредник, который отвечает за порядок передачи запросов в обработку от одной системы для другой.
Завтра с группой "Интеграции" будем рисовать очереди на схеме архитектуры 📚
Очередь сообщений – это аналог временного хранилища данных, которое позволяет размещать сообщения и читать данные в установленном порядке. Системы в этом случае взаимодействуют меджду собой в асинхронном режиме. Сообщения в очереди должны быть обработаны как можно скорее. Для этого в некоторых современных реализациях есть специальный параметр - "время жизни сообщения".
Во взаимодействии через очередь есть два компонента, взаимодействие которых нужно обеспечить:
▫️Producer – отправляет сообщения в очередь,
▫️Consumer – получает и читает сообщения из очереди.
Эти компоненты - системы, сервисы, микросервисы. Компоненты могут быть написаны разными разработчиками, на разных языках программирования, иметь разные мощности. А могут быть сервисами внутри одной системы.
Цель очереди: надёжно и быстро передавать сообщения от Producer к Consumer.
Можно сравнить очередь сообщений с обслуживанием очереди в магазине.
1. Покупатели собирают корзины с продуктами и встают с ними в очередь на кассу, чтобы оплатить - отправляют сообщение с товарами из корзины в очередь. Покупатель - producer. Сообщение - корзины с товарами.
2. Покупатели с корзинами стоят в очереди. Все хотят скорее покинуть ее. Есть максимальное время терпения.
3. Очередной покупатель со своей корзиной наконец добирается до кассы. Продавец обрабатывает запрос покупателя - пробивает все продукты из корзины, возвращает финальную стоимость покупателю и разрешает оплатить. Кассир - consumer.
Получается, как и в обычных интеграциях через запросы REST API, системы обмениваются друг с другом данными, отправляя запросы и получая ответы. Главное отличие - между ними находится промежуточный компонент-посредник, который отвечает за порядок передачи запросов в обработку от одной системы для другой.
Завтра с группой "Интеграции" будем рисовать очереди на схеме архитектуры 📚
🔥14👍4❤1
Системы растут. Становятся более масштабными и сложными. Монолиты делят на сервисы и микросервисы. И очереди становятся необходимы для того, чтобы обеспечить взаимодействие между компонентами системы.
Мы уже знаем, что такое очередь. Но вместе с этим мы будем слышать "брокер сообщений".
🟠 Что такое БРОКЕР СООБЩЕНИЙ? 🟠
Брокер сообщений - это тип построения архитектуры систем, обеспечивающий взаимодействие компонентов в них с помощью "посредника". Благодаря "посреднику" снимается нагрузка с сервисов системы, т.к. им не приходится заниматься пересылкой сообщений. Всю ответственность за этот процесс и логику обработки очередей брокер сообщений берет на себя.
Сообщения в брокер можно передавать с некоторым ключом — по нему брокер понимает, в какую именно очередь(-и) должно попасть переданное сообщение.
Варианты реализации брокера сообщений:
▶️ Сообщение отправляется напрямую от отправителя к получателю и используется однократно.
▶️ Схема публикации/подписки - отправитель (producer) не знает своих получателей (consumers), и публикует свои сообщения в определённую тему. Потребители, которые подписаны на эту тему, получают сообщения.
Коллеги, делитесь кейсами, кто работал с брокерами сообщений, реализованными по схеме публикации/подписки? Какие задачи решали?
Мы уже знаем, что такое очередь. Но вместе с этим мы будем слышать "брокер сообщений".
🟠 Что такое БРОКЕР СООБЩЕНИЙ? 🟠
Брокер сообщений - это тип построения архитектуры систем, обеспечивающий взаимодействие компонентов в них с помощью "посредника". Благодаря "посреднику" снимается нагрузка с сервисов системы, т.к. им не приходится заниматься пересылкой сообщений. Всю ответственность за этот процесс и логику обработки очередей брокер сообщений берет на себя.
Сообщения в брокер можно передавать с некоторым ключом — по нему брокер понимает, в какую именно очередь(-и) должно попасть переданное сообщение.
Варианты реализации брокера сообщений:
▶️ Сообщение отправляется напрямую от отправителя к получателю и используется однократно.
▶️ Схема публикации/подписки - отправитель (producer) не знает своих получателей (consumers), и публикует свои сообщения в определённую тему. Потребители, которые подписаны на эту тему, получают сообщения.
Коллеги, делитесь кейсами, кто работал с брокерами сообщений, реализованными по схеме публикации/подписки? Какие задачи решали?
👍15
📌 Кейсы: когда используют очереди на примере Интернет-магазина 📌
Синхронизация данных между системами
Сервис обработки заказов Интернет-магазина синхронизирует сведения о покупках клиентов с CRM-системой.
- CRM система в какой-то момент может стать недоступна.
- Или в магазине в один момент будет проведено 100 платежей, а лимит одновременных запросов в CRM-систему 20, в случае превышения будет ошибка.
Чтобы сообщение о покупке клиента не потерялось и записалось в учетной записи клиента в CRM-системе, на стороне Интернет-магазина его можно поставить в очередь к обработке.
Получается, если CRM-система будет недоступна или пользователи создадут высокую нагрузку, то сообщения не потеряются, а будут накапливаться в очереди до тех пор, пока она снова не станет доступна и не обработает их. Также очередь будет контролировать лимит в 20 сообщений.
Пользователям Интернет-магазина нужно отправлять СМС-уведомления об изменениях статуса заказа. Чтобы уведомления не терялись и гарантированно доставлялись, мы можем использовать очереди обработки сообщений. Например, на стороне СМС-сервиса, все входящие запросы на отправку сообщений будут ставиться в очередь и обрабатываться последовательно, в зависимости от заданного логического приоритета (FIFO/LIFO).
---------
Постановка задач в фоновую (асинхронную) обработку
После очередной продажи нужно выполнить перерасчеты остатков товара, пересчитать показатели отчета по прибыли и убыткам, создать задачу на сбор заказа для менеджера и много других действий. И все это нужно сразу, в момент оплаты.
Сервисы пересчета остатков и отчетов могут быть недоступны в момент продажи, т.к. заняты другими пересчетами. Чтобы задачи не потерялись и мы не удерживали пользователя в ожидании, то их можно поставить в очередь на асинхронную обработку, чтобы эти показатели были посчитаны, но с небольшой задержкой, чуть позже.
Сразу после постановки задачи на перерасчеты в очередь мы можем отпустить пользователя и не держать его в ожидании, пока перерасчеты завершатся. Как только все будет готово, можно направить пользователю уведомление.
---------
Снятие отчетов и статистики
Снятие отчета или статистики по продажам в высоконагруженном Интернет-магазине - задача долгая и трудоемкая. А разные пользователи могут часто запрашивать его.
Мы можем реализовать формирование отчетов как асинхронную задачу. Т.е. пользователь будет нажимать кнопку "Сформировать отчет", сразу получать уведомление о том, что его задача на формирование отчета принята в обработку. - запущен фоновый (асинхронный процесс) А когда она дождется своего порядка в очереди, то пользоватеь получит уведомление об ее выполнении.
С точки зрения пользователя это может происходить мгновенно. С точки зрения системы, прежде чем запрос текущего пользователя будет обработан, может быть выполнено несколько других задач.
Синхронизация данных между системами
Сервис обработки заказов Интернет-магазина синхронизирует сведения о покупках клиентов с CRM-системой.
- CRM система в какой-то момент может стать недоступна.
- Или в магазине в один момент будет проведено 100 платежей, а лимит одновременных запросов в CRM-систему 20, в случае превышения будет ошибка.
Чтобы сообщение о покупке клиента не потерялось и записалось в учетной записи клиента в CRM-системе, на стороне Интернет-магазина его можно поставить в очередь к обработке.
Получается, если CRM-система будет недоступна или пользователи создадут высокую нагрузку, то сообщения не потеряются, а будут накапливаться в очереди до тех пор, пока она снова не станет доступна и не обработает их. Также очередь будет контролировать лимит в 20 сообщений.
Пользователям Интернет-магазина нужно отправлять СМС-уведомления об изменениях статуса заказа. Чтобы уведомления не терялись и гарантированно доставлялись, мы можем использовать очереди обработки сообщений. Например, на стороне СМС-сервиса, все входящие запросы на отправку сообщений будут ставиться в очередь и обрабатываться последовательно, в зависимости от заданного логического приоритета (FIFO/LIFO).
---------
Постановка задач в фоновую (асинхронную) обработку
После очередной продажи нужно выполнить перерасчеты остатков товара, пересчитать показатели отчета по прибыли и убыткам, создать задачу на сбор заказа для менеджера и много других действий. И все это нужно сразу, в момент оплаты.
Сервисы пересчета остатков и отчетов могут быть недоступны в момент продажи, т.к. заняты другими пересчетами. Чтобы задачи не потерялись и мы не удерживали пользователя в ожидании, то их можно поставить в очередь на асинхронную обработку, чтобы эти показатели были посчитаны, но с небольшой задержкой, чуть позже.
Сразу после постановки задачи на перерасчеты в очередь мы можем отпустить пользователя и не держать его в ожидании, пока перерасчеты завершатся. Как только все будет готово, можно направить пользователю уведомление.
---------
Снятие отчетов и статистики
Снятие отчета или статистики по продажам в высоконагруженном Интернет-магазине - задача долгая и трудоемкая. А разные пользователи могут часто запрашивать его.
Мы можем реализовать формирование отчетов как асинхронную задачу. Т.е. пользователь будет нажимать кнопку "Сформировать отчет", сразу получать уведомление о том, что его задача на формирование отчета принята в обработку. - запущен фоновый (асинхронный процесс) А когда она дождется своего порядка в очереди, то пользоватеь получит уведомление об ее выполнении.
С точки зрения пользователя это может происходить мгновенно. С точки зрения системы, прежде чем запрос текущего пользователя будет обработан, может быть выполнено несколько других задач.
👍18🔥5❤1
Хотите, чтобы все знания загружались в голову без усилий? 😉
Перешел по ссылке => Нажал "Скачать" => Получил обновления.
Я всегда хотела. Особенно в университете. С 8:00 до 16:00 училась сама, с 18 до 21 преподавала математику и информатику, и с 21 до победного было ДЗ. У меня всегда хватает сил учиться. Есть желание, я осознаю ценность. Вижу результаты.
Сейчас, когда на все 100% знания выбираю я, кнопка "Скачать" работает безотказно. Но в университете, вместе с полезным, был %воды, который я до сих пор не знаю как применить. И с ним кнопка "Скачать знания" не работала.
Мне удалось поучаствовать в обучении одновременно с двух сторон. Наблюдения:
Учат меня: Преподаватель увлеченно объясняет - желание продлить лекцию, любой предмет
Учу я: Переработки за "спасибо", если ребенок хочет разобраться. Я влюблена в математику
Учат меня: Преподаватель читает с листа и делает это явно ради денег, а не от сердца - я сплю или делаю другие ДЗ
Учу я: Истощение, когда один ученик не хотел. Просто не хотел. И ДЗ мама делала... Как бы я ни пыталась подойти - все было бестолку
Обмен знаниями подобен обмену энергиями. В игру "математика" можно вовлечь, если ты сам ее любишь и если ученик готов пробовать. Важно разжечь желание во время занятия. Дальше оно само. А если его нет, то результата не будет. Да еще и оба истощенные разойдемся 😔
Так с любой учебой. Поэтому волшебная кнопка "Скачать" есть. И она зависит от того, как твой наставник разожжет в тебе костер желания и мотивации🔥
Перешел по ссылке => Нажал "Скачать" => Получил обновления.
Я всегда хотела. Особенно в университете. С 8:00 до 16:00 училась сама, с 18 до 21 преподавала математику и информатику, и с 21 до победного было ДЗ. У меня всегда хватает сил учиться. Есть желание, я осознаю ценность. Вижу результаты.
Сейчас, когда на все 100% знания выбираю я, кнопка "Скачать" работает безотказно. Но в университете, вместе с полезным, был %воды, который я до сих пор не знаю как применить. И с ним кнопка "Скачать знания" не работала.
Мне удалось поучаствовать в обучении одновременно с двух сторон. Наблюдения:
Учат меня: Преподаватель увлеченно объясняет - желание продлить лекцию, любой предмет
Учу я: Переработки за "спасибо", если ребенок хочет разобраться. Я влюблена в математику
Учат меня: Преподаватель читает с листа и делает это явно ради денег, а не от сердца - я сплю или делаю другие ДЗ
Учу я: Истощение, когда один ученик не хотел. Просто не хотел. И ДЗ мама делала... Как бы я ни пыталась подойти - все было бестолку
Обмен знаниями подобен обмену энергиями. В игру "математика" можно вовлечь, если ты сам ее любишь и если ученик готов пробовать. Важно разжечь желание во время занятия. Дальше оно само. А если его нет, то результата не будет. Да еще и оба истощенные разойдемся 😔
Так с любой учебой. Поэтому волшебная кнопка "Скачать" есть. И она зависит от того, как твой наставник разожжет в тебе костер желания и мотивации🔥
👍6🔥6
Привет! Давно не виделись ♥️
Прошедшую неделю я посвятила своему образованию, расширению нетворкинга в сферах IT+бизнес, и отдыху. Познакомилась еще с несколькими владельцами IT-компаний в США, послушала про особенности стартап-жизни в Силиконовой долине, узнала про организацию процессов разработки "с полей" от опытного программиста.
Окончательно убедилась в том, что позиция "Systms analyst" почти отсутствует в командах крупных IT-компаний 😒 Так что если вы ищите работу в США, то системные аналитики это Project manager / Technical Project Manager.
Бизнес-аналитикам повезло - совпадение почти 1 к 1. Выделенная позиция есть. Очень нравится, что в их подходе к работе особенное внимание уделяется работе с метриками бизнеса, которые собирают Data Analysts. Такого я в живую не видела в России.
Я так понимаю, что полезно было бы пригласить вас в эфир и рассказать про устройство процесса разработки в IT-компаниях.
Собираем 100+ 🔥 под этот пост и планируем эфир "Команда разрботки в США и место аналитика в ней"!
Прошедшую неделю я посвятила своему образованию, расширению нетворкинга в сферах IT+бизнес, и отдыху. Познакомилась еще с несколькими владельцами IT-компаний в США, послушала про особенности стартап-жизни в Силиконовой долине, узнала про организацию процессов разработки "с полей" от опытного программиста.
Окончательно убедилась в том, что позиция "Systms analyst" почти отсутствует в командах крупных IT-компаний 😒 Так что если вы ищите работу в США, то системные аналитики это Project manager / Technical Project Manager.
Бизнес-аналитикам повезло - совпадение почти 1 к 1. Выделенная позиция есть. Очень нравится, что в их подходе к работе особенное внимание уделяется работе с метриками бизнеса, которые собирают Data Analysts. Такого я в живую не видела в России.
Я так понимаю, что полезно было бы пригласить вас в эфир и рассказать про устройство процесса разработки в IT-компаниях.
Собираем 100+ 🔥 под этот пост и планируем эфир "Команда разрботки в США и место аналитика в ней"!
🔥124👍1
Unified Modeling Language (UML) — унифицированный язык моделирования, графическая нотация моделирования. UML показывает объекты и процессы в едином стиле при проектировании. Человеку не нужно читать полотно текста: всё обозначено схематически и визуально приятно глазу.
UML диаграммы делят на 2 типа:
📌 Структурные диаграммы
Показывают статическую структуру системы и её частей на разных уровнях абстракции и реализации.
Больше подходят для описания объектов данных, которые есть в системе, а также компонентов системы.
К ним относятся диаграммы:
✔️ классов,
✔️ объектов,
✔️ компонентов,
✔️ развёртывания.
📌 Диаграммы поведения
Описывают происходящие в системе процессы - есть динамика, движение.
Их используют для описания алгоритмов и поведения системы.
К ним относятся диаграммы:
✔️ деятельности,
✔️ последовательности,
✔️ диаграммы взаимодействия,
✔️ диаграммы состояний.
Документацию по UML можно посмотреть по ссылке:
🔗 http://www.omg.org/spec/UML/
Это спецификация. Есть разные версии - берите самую актуальную. Документ на английском.
Внутри вы найдете полный перечень диаграмм, разбор назначения всех структурных элементов и примеры.
Хороший документ как для начинающих, так и для опытных специалистов.
#getanalyst_UML
UML диаграммы делят на 2 типа:
📌 Структурные диаграммы
Показывают статическую структуру системы и её частей на разных уровнях абстракции и реализации.
Больше подходят для описания объектов данных, которые есть в системе, а также компонентов системы.
К ним относятся диаграммы:
✔️ классов,
✔️ объектов,
✔️ компонентов,
✔️ развёртывания.
📌 Диаграммы поведения
Описывают происходящие в системе процессы - есть динамика, движение.
Их используют для описания алгоритмов и поведения системы.
К ним относятся диаграммы:
✔️ деятельности,
✔️ последовательности,
✔️ диаграммы взаимодействия,
✔️ диаграммы состояний.
Документацию по UML можно посмотреть по ссылке:
🔗 http://www.omg.org/spec/UML/
Это спецификация. Есть разные версии - берите самую актуальную. Документ на английском.
Внутри вы найдете полный перечень диаграмм, разбор назначения всех структурных элементов и примеры.
Хороший документ как для начинающих, так и для опытных специалистов.
#getanalyst_UML
🔥16
PlantUML - это бесплатный инструмент для создания UML-диаграмм.
Не является графическим редактором. Все диаграммы описываются в текстовом виде, с помощью специального языка PlantUML со своим синтаксисом. Можно сказать, что диаграммы как-будто программируются.
Язык PlantUML является примером предметно-ориентированного языка. Для построения диаграмм он использует программное обеспечение Graphviz.
История гласит, что инструмент появился, чтобы позволить слепым студентам работать с нотацией моделирования UML. PlantUML помогает слепым программистам разрабатывать и читать диаграммы UML.
Пример
Больше примеров: здесь
PlantUML Online: здесь
#getanalyst_UML
Не является графическим редактором. Все диаграммы описываются в текстовом виде, с помощью специального языка PlantUML со своим синтаксисом. Можно сказать, что диаграммы как-будто программируются.
Язык PlantUML является примером предметно-ориентированного языка. Для построения диаграмм он использует программное обеспечение Graphviz.
История гласит, что инструмент появился, чтобы позволить слепым студентам работать с нотацией моделирования UML. PlantUML помогает слепым программистам разрабатывать и читать диаграммы UML.
Пример
@startuml
Сайт -> Сервер: Авторизация | Request
Сервер --> Сайт: Ключ доступа | Response
Сайт -> Сервер: Получить информацию о пользователе по id | Request
Сервер --> Сайт: Информация о пользователе по id | Response
@endumlБольше примеров: здесь
PlantUML Online: здесь
#getanalyst_UML
👍10
Диаграммы активностей (Activity Diagram) и последовательности (Sequence Diagram) - основные диаграммы, которыми я пользуюсь.
💥 Activity Diagram - это блок-схема, которая показывает, как поток от одной деятельности переходит к другой. Здесь мы рисуем алгоритм действий системы или взаимодействия нескольких систем.
Например, как будет себя вести пользователь по шагам в интернет-магазине при покупке. Важно пофантазировать и подумать, какие ходы он может предпринять, в зависимости от статуса (оптовик/не оптовик, зарегистрирован или нет, есть дисконт-карта или нет).
Пример на картинке - диаграмма с заказом (рус).
💥 Sequence Diagram - это детальное описание логики сценариев использования.
Помогает описать поведение пользователя в системе, спрогнозировать его маршрут.
Например, человек захочет связаться на сайте интернет-магазина с оператором, чтобы уточнить определенные моменты. Нужно выстроить работу с сообщениями.
Пример на картинке - диаграмма про отправку комментариев с красными подписями (англ).
Работая с UML, вы можете задаться вопросом: зачем столько видов диаграмм?
При проектировании участвует большое количество лиц: аналитики, тестировщики, архитекторы, программисты и т.д. Каждому важна детализация описания системы на определенном уровне: код, объекты данных, алгоритмы и поведение пользователей, взаимодейстие приложений при интеграциях, компоненты системы.
За счёт UML схем визуально разобраться с требованиями бывает гораздо проще. Благодаря чему команда выполняет задачу быстрее и продуктивнее. Но это не всегда так. Когда UML-схема получается слишком громоздкая, то лучше убрать ее и оставить только текстовое описание.
Из моего опыта могу сделать следующий вывод: в требования и документацию надо добавлять либо только UML, либо только текстовое описание алгоритма. Если добавлять и то, и другое, то вероятность рассинхрона 100%, когда появятся уточнения по работе алгоритма. Не надо дублировать одно и то же (если правила компании разрешают обходиться без дублирования информации).
#getanalyst_UML
💥 Activity Diagram - это блок-схема, которая показывает, как поток от одной деятельности переходит к другой. Здесь мы рисуем алгоритм действий системы или взаимодействия нескольких систем.
Например, как будет себя вести пользователь по шагам в интернет-магазине при покупке. Важно пофантазировать и подумать, какие ходы он может предпринять, в зависимости от статуса (оптовик/не оптовик, зарегистрирован или нет, есть дисконт-карта или нет).
Пример на картинке - диаграмма с заказом (рус).
💥 Sequence Diagram - это детальное описание логики сценариев использования.
Помогает описать поведение пользователя в системе, спрогнозировать его маршрут.
Например, человек захочет связаться на сайте интернет-магазина с оператором, чтобы уточнить определенные моменты. Нужно выстроить работу с сообщениями.
Пример на картинке - диаграмма про отправку комментариев с красными подписями (англ).
Работая с UML, вы можете задаться вопросом: зачем столько видов диаграмм?
При проектировании участвует большое количество лиц: аналитики, тестировщики, архитекторы, программисты и т.д. Каждому важна детализация описания системы на определенном уровне: код, объекты данных, алгоритмы и поведение пользователей, взаимодейстие приложений при интеграциях, компоненты системы.
За счёт UML схем визуально разобраться с требованиями бывает гораздо проще. Благодаря чему команда выполняет задачу быстрее и продуктивнее. Но это не всегда так. Когда UML-схема получается слишком громоздкая, то лучше убрать ее и оставить только текстовое описание.
Из моего опыта могу сделать следующий вывод: в требования и документацию надо добавлять либо только UML, либо только текстовое описание алгоритма. Если добавлять и то, и другое, то вероятность рассинхрона 100%, когда появятся уточнения по работе алгоритма. Не надо дублировать одно и то же (если правила компании разрешают обходиться без дублирования информации).
#getanalyst_UML
👍11
Какими UML-диаграммами вы пользуетесь у себя на проектах? 🤔
Пишите в комментариях, насколько они помогают или мешают в работе
Пишите в комментариях, насколько они помогают или мешают в работе
Anonymous Poll
63%
Последовательности (Sequence)
26%
Активности (Activity)
22%
Классов
7%
Объектов
8%
Прецедентов
3%
Другие (в комментарии)
11%
Не пользуемся
19%
Я только учусь - смотреть ответы
👍2