Николай Науменко – системный аналитик на проекте СТОРИ в Сбере, опыт в IT 8 лет, опыт в сфере аналитики 5 лет. Работал в международной французской логистической компании Gefco, в Sitronics на проекте Транснефти. В новой статье Николай поделился своим опытом в системном анализе и рассказал какие hard skills он применяет в своей работе.
Кто такой «системный аналитик»?
Системный аналитик (SA) – это своего рода мост между бизнесом и IT-командой, которая отвечает за создание продукта. В процессе работы SA выявляет, анализирует потребности бизнеса, понимает его цели и задачи и на их основе формулирует требования к будущему продукту и системе. То есть аналитик служит связующим звеном между командой разработки и стейкхолдерами (заказчиками, пользователями, менеджментом). Именно SA преобразует бизнес-требования в технические задания, понятные разработчикам.
Какие же Hard Skills необходимы системному аналитику в проекте?
Системный аналитик играет ключевую роль в процессе разработки программного обеспечения и внедрения информационных систем. Подробнее разберем с чем придется столкнуться в работе начинающему специалисту и какие навыки освоить:
1. Сбор и анализ требований
Системный аналитик выявляет потребности и ожидания от будущего продукта и системы, осуществляет сбор требований. Обычно проводится интервью, опрос или анкетирование с заинтересованными лицами, такими как заказчики, пользователи или другие участники проекта. Также, анализируется документация из существующих систем.
Затем, производится документирование требований, которые разделяются на функциональные и нефункциональные. Функциональные требования описывают, что система должна делать. Нефункциональные требования описывают характеристики системы, такие как производительность, надежность, безопасность, а также ограничения, условия, которым должны соответствовать продукт или процесс его разработки.
В процессе разработки требования могут изменяться, и поэтому необходима их постоянная проверка, анализ и корректировка, а также, создание прототипов для демонстрации и проверки функциональности в действии. Часто для этого проводится PSI, приемо-сдаточное испытание, где сотрудникам безопасности и заказчикам демонстрируют, что было сделано или исправлено в ходе работы.
Далее происходит приоритизация – определение наиболее важных и наиболее срочных требований для последующей разработки. На этом этапе зачастую взаимодействие идет с product owner, так как он знает, что необходимо сделать, внедрить и доработать.
В конечном итоге анализ требований заканчивается их согласованием. Системному аналитику нужно убедиться, что все заинтересованные стороны принимают и одобряют собранные требования.
2. Моделирование систем и процессов
Системный аналитик определяет основные объекты или сущности, с которыми будет работать система. Для этого важно понимать, как различные сущности связаны друг с другом. Например, один пользователь может сделать множество заказов, но каждый заказ связан только с одним пользователем.
3. Создание технической документации
Системный аналитик разрабатывает спецификации, описания и другие документы, которые используются командой разработки для создания продукта.
4. Контроль соответствия
В ходе работы, системный аналитик удостоверяется, что разрабатываемое решение соответствует установленным требованиям участия в тестировании. В процессе разработки требования могут изменяться, и поэтому необходима их постоянная проверка, анализ и корректировка.
5. Участие в тестировании
По своей специфике системный аналитик активно сотрудничает с командой тестирования, помогает в определении критериев приемки и устранении неясности, поэтому необходимо разбираться в процессах и методах тестирования.
6. Взаимодействие с командой
SA тесно сотрудничает с проектным менеджером, разработчиками, тестировщиками, со всеми участниками команды, обеспечивает понимание задач и требований на всех этапах проекта. Базовые навыки программирования могут помочь в общении с командой разработки и понимании технических аспектов проекта.
7. Управление изменениями
Системный аналитик реагирует на изменения требований, адаптирует документацию и координирует эти изменения с командой разработки.
8. Знание методологий управления проектами
Системному аналитику предстоит взаимодействовать с командой согласно методологии разработки, такой как agile, scrum, waterfall или другой. Важно знать принципы Agile и Waterfall и разницу между ними.
9. Работа с базами данных и SQL
Системному аналитику необходимо основное понимание работы с базами данных и языком SQL, что позволит лучше анализировать данные. Личная рекомендация – приятно и удобно писать SQL-запросы, например, в DataGrip.
10. Владение программами и инструментами для моделирования бизнес-процессов
Начинающий системный аналитик должен изучить инструменты для создания блок-схем, прототипов, графиков и диаграмм и обладать системным мышлением, способностью видеть большую картину, понимая, как изменения в одной части системы скажутся на других ее компонентах. Ознакомьтесь, если еще не сделали этого, с графическим редактором Microsoft Vizio для BPMN процессов и бесплатной утилитой Draw.io.
Где приобрести описанные выше Hard Skills с нуля или расширить свою экспертность?
На курсе «Системный аналитик с нуля» от HeadBridge. На практических занятиях ты получишь знания и навыки, которые востребованы на реальных проектах, а после обучения пройдешь стажировку в университете Технологии и Дизайна. Записаться на курс.