Найти в Дзене
Иван Соловьев

Навыки Системного аналитика

1) Критически важно уметь фиксировать и управлять требованиями!

проводить интервью для выделения необходимого и достаточного (фиксировать: "Как есть сейчас" и "Как должно быть"),

для этого полезно по разному уметь формулировать функции системы в виде use case и user story.

2) Владение инструментами моделирования.

Для проектной документации мои фавориты (у них есть интеграция с базой знаний компании Confluence):

  • Draw.io - для описания BPMN бизнес процессов и ER-диаграмм БД,
  • Plantuml.com для всех видов UML диаграмм, однако Sequence-диаграммы удобно редактировать на сайте Sequencediagram.org

Для мозгового штурма подойдут интерактивные доски типа lucid.app или miro.com - тут можно работать одновременно и таскать друг у друга квадратики (пробуйте бесплатно).

3) Умение применять нотации (выбрать какую схему нужно применить под вашу конкретную задачу)

лучше знать все нотации BPMN, IDEF, UML, ARIS, не обязательно подробно, но те что используете нужно знать детально - то есть понимать назначение и все необходимые элементы

Далее типы диаграмм в стандартной последовательности появления на свет в процессе строительства системы

на берегу:

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

- для описания бизнес-процессов используем BPMN или аналоги - это диаграммы активити UML и eEPC

в процессе реализации:

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

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

- для моделирования подкапотной структуры сервиса - Диаграмма классов UML

- для физического воплощения БД - ER-диаграмма (может совпадать с UML диаграммой классов, но чаще всего не совпадает)

4) Понимать законы и проектировать REST API - то есть делать техническое описание openapi на языке разметки YAML, попробуйте editor.swagger.io

5) Разбираться в типах данных, формировать структуры необходимые для передачи данных JSON, XML

6) Полезно уметь делать прототип экранных форм, попробуйте figma.com

7) Полезно понимать как работают очереди сообщений и брокеры событий, понимать как использовать концепцию писатель-читатель, загуглите RabbitMQ и Kafka.

8) Ну последнее, но первое что спросят на собеседовании - SQL - язык запросов БД, практикуйтесь тут sql-ex.ru