Вера Коновалова | Системный аналитик в IT
2.18K subscribers
199 photos
6 videos
125 links
Системный аналитик 8+ лет
Жиза и наблюдения про работу в IT
Мой курс по СА на Stepik 👉 https://stepik.org/a/247866
Практика 👉 https://stepik.org/a/253170
Связаться 👉 @verakonovalova
Download Telegram
Системный аналитик — мастер на все руки! 💼🛠

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

1️⃣ Требования:

Начнем с общения с заказчиком. Узнаем, что нужно сделать? Вопросы могут быть самые разные:

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

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

2️⃣ Бизнес-процессы:

Изучаем текущий процесс записи на прием — AS IS. Как сейчас пациент выбирает врача и подтверждает запись? После анализа определяем с заказчиком, как должен выглядеть идеальный процесс — создаем модель TO BE, которая станет основой для разработки.

3️⃣ Макеты:

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

4️⃣ Проектирование:

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

5️⃣ Работа с БД:

Системный аналитик использует SQL, чтобы для тестирования извлекать и менять данные в базе данных. Нужно извлечь список пациентов, записанных к конкретному врачу на определенный день? SQL вам в помощь!

6️⃣ Постановка задач:

На основе всех артефактов создадим задачи на разработчиков:

* Реализовать запись на прием к врачу
* Поиск врача по специализации
* Обработать кейс, когда у врача нет свободных слотов

7️⃣ Документация:

Лицо системного аналитика — это его документация. В ней мы пишем, как работает система, как устроена база данных, как реализованы алгоритмы.

8️⃣ Взаимодействие с командой:

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

9️⃣ Разбор инцидентов:

Если что-то пошло не так на проде, мы участвуем в разборе инцидентов. Пациент не может записаться на прием? Анализируем логи, выясняем причину сбоя, ставим задачи на исправление и контролируем, чтобы в будущем таких проблем не возникало.
👍17💯5🔥4💩2
Требования и задачи могут измениться даже если проект, казалось бы, идет по плану.
👍13😁8🔥3
🤔 Только БА общается с бизнесом и собирает требования? Нет.

Главная задача бизнес-аналитика — понять, как устроены процессы в организации, найти слабые места и предложить способы их оптимизации, причём не всегда связанные с IT.
- 📉 Чтобы сократить расходы, можно более оптимально использовать пустующие площади и сэкономить на аренде доп. помещения.
- 📞 Можно автоматизировать рутинные задачи кол-центра и сократить количество операторов.
- 👥 Если два сотрудника делают одно и то же, стоит делегировать задачи одному человеку.

Я изучила вакансии на бизнес-аналитиков — в них акцент делается именно на аудите, оптимизации и улучшении процессов. А системный аналитик работает как раз над тем, чтобы реализовать эти улучшения с помощью IT. Он детализирует бизнес-требования и проектирует систему, которая будет соответствовать нуждам бизнеса. Для этого СА также общается с заказчиком, документирует и согласовывает требования. Так что с требованиями работают не только бизнес-аналитики.
👍26🤩5💯52
Лайфхаки для сбора требований

Как общаться с заказчиком?

1️⃣ Переформулируйте мысли заказчика. «Если я правильно понял, вы хотите, чтобы... Это верно?»

2️⃣ Задавайте уточняющие вопросы. «А как это должно работать в случае, если...?»

3️⃣ Используйте открытые вопросы. Они помогают получить более детальные ответы.

4️⃣ Активно слушайте. Подтверждайте понимание короткими фразами: «Понял вас», «Это важно», «Согласен».

5️⃣ Запрашивайте примеры. «Можете показать, как это должно работать?»

6️⃣ Уточняйте намерения. «Что вас побудило выбрать именно это решение?»

7️⃣ Подводите итоги. «Мы обсудили это и это, правильно я понял ваши пожелания?»

8️⃣ Уточняйте приоритеты. «Какие из этих требований наиболее приоритетны?»

9️⃣ Визуализируйте. «Давайте нарисуем, как это должно выглядеть?»

🔟 Многого не обещайте. Если что-то сложно реализовать, обсудите это сразу: «Это может быть сложно, есть ли альтернатива?», «Мы обсудим это с командой и вернёмся с решением»
🔥17👍13💯32👏2
Когда аналитик настаивает на следовании согласованному плану
18🔥5💯5👍3
Одна из частых ошибок системных аналитиков — не задавать уточняющих вопросов. Не бойтесь уточнять детали, даже если они кажутся очевидными. Часто мелкие недопонимания могут стать большими проблемами в разработке. Лучше спросить дважды, чем переделывать задачу позже.
👍11🔥54💯3
Хорошие и плохие требования

Требования — основа любого проекта. Если они собраны плохо, система не будет соответствовать ожиданиям заказчика. Но что такое «плохо», а что «хорошо»? Существует ряд критериев, которым должны соответствовать требования: атомарность, полнота, корректность, недвусмысленность и др.

Теорию смотрите в картинках, а пример плохого требования ниже 👇

📌 Пример:
Система должна предоставлять возможность выбрать блюда и добавить дополнительные опции.
Почему это требование плохое?

* Полнота. Из требования не понятно, какие блюда можно выбрать? Куда они добавляются? Есть ли категории блюд со своими параметрами?
* Корректность. Как реализовать выбор блюд? Как это требование вписывается в полный процесс оформления заказа из ресторана? Всё это нужно, чтобы добавить блюда в корзину, нужно дописать это в требование.
* Недвусмысленность. Что подразумевается под «дополнительными опциями»? Это могут быть ингредиенты, способы оплаты, ввод промокода или что-то другое. Разработчики, тестировщики и заказчики могут по-разному понять это требование. Конкретизируйте, что такое «дополнительные опции»?

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

Уже лучше? 🤔
Да, но оно всё ещё не соответствует критерию атомарности.
Давайте разобьём требование на несколько и добавим каждому уникальный идентификатор, чтобы требование стало отслеживаемым:
* FR1 Система должна предоставлять возможность выбрать блюда из категорий (салаты, основные блюда, десерты) и автоматически добавлять их в корзину
* FR2 Система должна предоставлять возможность добавить ингредиенты (соусы, специи) к выбранным блюдам при их добавлении в корзину
* FR3 Система должна предоставлять возможность выбрать количество порций для каждого блюда как на этапе выбора в каталоге, так и при редактировании в корзине — это требование тоже можно разбить на два: 1) изменение количества порций в каталоге и 2) изменение количества порций уже в корзине.
👍14🔥6❤‍🔥3💯2
Рубрика дельных советов 😏

Работать у бассейна не всегда удобно. Солнце светит в глаза, да и ноутбук можно случайно залить. Так что, выбирайте комфортное место для удалённой работы, например, в тени у бара! 😎
😁12👨‍💻4😎4🆒2
Вебинару быть! Системный аналитик — кто это и как им стать?

Не пропустите наш открытый вебинар, который состоится 12 сентября! Это отличный шанс узнать больше о профессии системного аналитика и сделать первые шаги в IT!

12 сентября в 19:00 МСК

Записи не будет

Что вас ждёт:

🔍 Кто такой системный аналитик и чем он занимается?
🚀 Как начать карьеру с нуля или развиваться дальше, если вы уже с небольшим опытом?
🛠️ Какие навыки нужны для работы? В том числе мы расскажем, как эти навыки можно развить с помощью нашего курса AnalystCore.

И ещё много интересного!

🎁 И самое главное — на вебинаре будет уникальное предложение только для участников!

Регистрация бесплатна. Переходите по ссылке прямо сейчас и занимайте место на вебинаре. Ждём вас! Будет интересно!

Зарегистрироваться
https://forms.gle/BoRk81vPWHJUjn4U9
🔥10👍6🎉3👏1
Документация в IT

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

В Confluence у каждой команды есть своё пространство, где описаны все детали работы продукта. Каждая страница — это отдельная часть: на одной странице описан юз кейс, на другой — структура базы данных, в отдельном разделе — экраны приложения. И что удобно, все страницы связаны между собой ссылками 🔗, как в Википедии. Например, из описания экрана приложения можно сразу перейти к соответствующему юз кейсу.

Документация помогает команде понять, как система работает сейчас. А если вы описываете в Confluence и технические задания, то тогда документация показывает и что нужно сделать.
👍10🔥3👏3
Вебинар уже сегодня! 🕖

Уже сегодня в 19:00 МСК пройдёт наш открытый вебинар «Системный аналитик: кто это и как им стать?» 🚀

12 сентября в 19:00 МСК

Записи не будет

Это ваш шанс узнать больше о профессии системного аналитика, получить полезные советы и увидеть, как можно начать карьеру в IT.

Что вас ждёт:
* Кто такой системный аналитик и чем он занимается?
* Как начать карьеру с нуля или развиваться дальше?
* Какие навыки нужны для работы, и как их развить?
🎁 Специальное предложение, доступное только для участников вебинара!

Переходите по ссылке прямо сейчас и занимайте место на вебинаре!
https://forms.gle/BoRk81vPWHJUjn4U9
🔥43👏3
Мы начинаем! 🕖
Системный аналитик: кто это и как им стать?
🚀

Записи не будет

Ссылка на вебинар: https://pruffme.com/landing/u4395866/12092024
👍7
Нас уже 300 🎓
😁12🎉4🍾2👍1💯1
Как СА применяет скилы по БД? Зачем знать SQL?

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

* Первое, мы проектируем модель данных. Это требуется на новых проектах или изменении функциональности, которая затрагивает структуру БД. Нужно понимать, как выделять сущности, атрибуты, связи, а также нормализовать данные. Знание SQL также помогает нам лучше понять, как данные хранить, чтобы их проще было извлекать, обновлять, удалять. Пример влияния SQL на модель данных см. в картинках👆.

* Второе — разбор инцидентов. Допустим, клиент жалуется, что не видит раздел «Премиум-контент». Пишем SQL-запрос и узнаем, что у клиента тариф Base, а доступ к разделу есть только на Premium. Вот и ответ.

* Ещё нас могут попросить выгрузить данные из БД для отчётов. Важно понимать, как работают SELECT, JOIN, агрегатные функции и другие базовые операторы.

* И ещё один кейс: иногда нужно тестировать. С помощью SQL можно создавать записи напрямую в БД.

#questions
👍10🔥3💯2