Что делать при получении задачи

Когда системный аналитик получает задачу, рекомендуется следовать этому алгоритму:

  1. Определение требований - анализ бизнес-процессов, пользовательских сценариев
  2. Исследование и анализ - изучение документации, интервью с пользователями
  3. Моделирование и проектирование - создание моделей данных, диаграмм
  4. Разработка требований - технические спецификации, документация
  5. Взаимодействие с командой - согласование требований с разработчиками
  6. Контроль и мониторинг - отслеживание реализации проекта

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

Ключевые компетенции системного аналитика

▢ Бизнес-анализ ▢ Системный анализ ▢ Работа с данными ▢ UX/UI ▢ Технические знания ▢ Коммуникация

Приоритизация задач

Матрица приоритезации (Value vs Effort)
Низкая ценность
Высокая сложность
Высокая ценность
Высокая сложность
Низкая ценность
Низкая сложность
Высокая ценность
Низкая сложность

✓ Сделать в первую очередь | ✓ Планировать | ✓ Возможно позже | × Избегать

Артефакты в системном анализе

Артефакты - это документы, модели и информация, создаваемые в процессе анализа системы:

Виды требований

Функциональные требования

Определяют, что система должна делать:

Пример

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

Нефункциональные требования

Определяют характеристики системы:

Пример

"Система должна обеспечивать скорость обработки запросов не менее 1000 запросов в секунду"

Критерии требований

Чеклист для проверки требований:

  • Все требования измеримы?
  • Есть критерии приемки?
  • Учтены все сценарии использования?
  • Соответствуют бизнес-целям?
  • Нет противоречий с другими требованиями?

Стейкхолдеры

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

Как взаимодействовать со стейкхолдерами:

  1. Идентификация - составьте полный список всех заинтересованных сторон
  2. Анализ влияния - оцените уровень влияния каждого стейкхолдера
  3. План коммуникации - определите частоту и формат взаимодействия
  4. Управление ожиданиями - четко формулируйте что возможно, а что нет
  5. Обратная связь - регулярно собирайте и анализируйте мнения

Совет: Используйте матрицу влияния/заинтересованности для приоритизации работы со стейкхолдерами. Регулярно обновляйте карту стейкхолдеров по мере развития проекта.

UX/UI принципы

Основные принципы проектирования пользовательского опыта:

Отличия UI от UX:

UI (User Interface) - то, как выглядит и ощущается интерфейс (дизайн, цвета, шрифты)

UX (User Experience) - опыт пользователя при использовании интерфейса (удобство, время отклика, ошибки)

Методы сбора информации

Эффективные методы сбора информации для системного аналитика:

  1. Опрос - интервью, анкеты, телефонные опросы
  2. Наблюдение - прямое или косвенное изучение процессов
  3. Эксперимент - тестирование гипотез в контролируемых условиях
  4. Анализ документов - изучение существующей документации
  5. Фокус-группы - обсуждение темы с группой людей
  6. Глубинное интервью - детальное изучение мнений респондентов
  7. Вторичный анализ данных - использование существующих данных

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

Use Cases

Use case (случай использования) - описание сценария взаимодействия пользователя с системой:

Как пишутся Use Cases:

  1. Определение контекста использования
  2. Описание основных сценариев использования
  3. Детализация сценариев использования
  4. Документирование use case
Пример: Заказ такси

Контекст: Пользователь хочет заказать такси

Основной сценарий:

  1. Пользователь вводит начальную и конечную точку маршрута
  2. Система предлагает выбрать тип автомобиля и тариф
  3. Пользователь выбирает тариф и автомобиль
  4. Пользователь подтверждает заказ
  5. Система отображает информацию о заказе

Альтернативный сценарий: Если пользователь не находит подходящий тариф, он может изменить параметры поиска

User stories

User story (история пользователя) - это краткое описание функциональности с точки зрения конечного пользователя:

Формат user story

"Как [роль пользователя], я хочу [функция], чтобы [получить пользу/решить проблему]"

Критерии хорошей user story (INVEST):

Примеры:

"Как покупатель, я хочу фильтровать товары по цене, чтобы быстрее находить подходящие варианты"

"Как менеджер, я хочу экспортировать отчет в Excel, чтобы анализировать данные"

BPMN (Business Process Model and Notation)

BPMN - стандартная нотация для моделирования бизнес-процессов:

Основные элементы:

Элемент Обозначение Описание
Задача
Единица работы в процессе
Событие
Что-то, что происходит в процессе
Шлюз
Точка принятия решений и ветвления

Преимущества BPMN: Стандартизация нотации, наглядное представление процессов, возможность исполнимых моделей, интеграция с системами управления процессами.

Техники оценки задач

Planning Poker

Оценка сложности задач с помощью карточек

T-Shirt Sizing

Оценка по размерам одежды

Факторы для учета:

Сложность

Объем

Неопределенность

Зависимости

API (Application Programming Interface)

API - набор правил и протоколов для взаимодействия между программными компонентами.

Типы API:

// Пример REST API запроса GET /api/books?author=J.K.%20Rowling HTTP/1.1 Host: example.com Accept: application/json

Популярные методы REST:

REST (Representational State Transfer)

REST - архитектурный стиль для распределенных систем, основанный на 6 принципах:

  1. Единообразие интерфейса - стандартные методы и форматы
  2. Отсутствие состояния (Stateless) - каждый запрос самодостаточен
  3. Кэширование - явное указание возможности кэширования
  4. Клиент-сервер - разделение ответственности
  5. Многоуровневая система - иерархия компонентов
  6. Код по требованию (опционально) - возможность расширения функциональности

Статус коды REST:

SOAP (Simple Object Access Protocol)

SOAP - протокол для обмена структурированной информацией в распределенных системах. Основные характеристики:

SOAP vs REST:

Характеристика SOAP REST
Формат данных XML JSON, XML, текст
Протокол HTTP, SMTP, TCP HTTP
Стандарты WS-*, строгие Нет официальных
Производительность Ниже из-за XML Выше

Когда использовать SOAP: Для высокозащищенных систем (банки, госсектор), при работе с устаревшими системами, когда нужны встроенные транзакции.

GraphQL

GraphQL - язык запросов для API, позволяющий клиентам точно запрашивать только необходимые данные.

Основные концепции:

Пример запроса:

{ user(id: "789") { name email posts(limit: 5) { title createdAt } } }

Преимущества:

Микросервисная архитектура

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

Преимущества микросервисов:

Когда переходить на микросервисы:

DDD (Domain Driven Design)

Domain Driven Design - подход к разработке сложных систем через глубокое погружение в предметную область:

Основные концепции DDD:

Пример DDD в банковской сфере

Домен: Банковские операции
Ограниченные контексты: Платежи, Кредитование, Счета
Агрегаты: БанковскийСчет (включая баланс, историю операций)
События: СчетОткрыт, ПлатежПроведен, ЛимитПревышен

Базы данных

Типы баз данных:

Нормализация баз данных:

Нормальная форма Требование
1NF Атомарность значений, отсутствие повторяющихся групп
2NF Выполнение 1NF + отсутствие частичных зависимостей
3NF Выполнение 2NF + отсутствие транзитивных зависимостей

Моделирование данных

Конструктор ER-диаграмм

Используйте панель инструментов для создания диаграммы

Примеры моделей:

Генератор SQL

-- SQL-код появится здесь после создания диаграммы

Пример нормализации

1NF: Первая нормальная форма

Атомарность значений, отсутствие повторяющихся групп

2NF: Вторая нормальная форма

Отсутствие частичных зависимостей от составного ключа

3NF: Третья нормальная форма

Отсутствие транзитивных зависимостей

Kanban vs Scrum

Scrum

  • Фиксированные итерации (спринты 1-4 недели)
  • Роли: Scrum Master, Product Owner, Команда
  • Артефакты: Бэклог продукта, Бэклог спринта
  • Церемонии: Планирование, Дейли, Обзор, Ретроспектива
  • Изменения в процессе спринта запрещены

Kanban

  • Непрерывный поток работы
  • Визуализация (Kanban-доска)
  • Ограничение WIP (Work In Progress)
  • Управление потоком (flow management)
  • Изменения возможны в любой момент

Когда использовать: Scrum - для проектов с относительно стабильными требованиями. Kanban - для поддержки и оперативных задач с частыми изменениями приоритетов.

Таймер для митинга

15:00

CI/CD (Непрерывная интеграция и доставка)

Автоматизация процессов разработки и развертывания:

Continuous Integration

  • Автоматическая сборка при коммите
  • Запуск тестов
  • Статический анализ кода
  • Раннее обнаружение ошибок

Continuous Delivery

  • Автоматическое развертывание
  • Пайплайны поставки
  • Канареечные релизы
  • Blue-Green деплойменты

Популярные инструменты:

Основы безопасности

OWASP Top 10:

  1. Инъекции (SQL, NoSQL, OS)
  2. Некорректная аутентификация
  3. Раскрытие чувствительных данных
  4. XXE (XML External Entities)
  5. Некорректный контроль доступа

Принципы безопасности:

Чеклист: Безопасность

Чеклист по обеспечению безопасности

Ключевые метрики для аналитика

Проектные метрики

  • Velocity - скорость выполнения задач
  • Lead Time - время от запроса до реализации
  • Cycle Time - время выполнения задачи
  • Burndown Rate - скорость закрытия задач

Бизнес-метрики

  • ROI - возврат инвестиций
  • User Adoption Rate - уровень принятия пользователями
  • Feature Usage - использование функционала
  • CSAT - удовлетворенность пользователей

Типичные ошибки аналитика

Топ-10 ошибок:

  1. Недостаточное вовлечение стейкхолдеров
  2. Фокус на решениях вместо проблем
  3. Игнорирование нефункциональных требований
  4. Недостаточная детализация требований
  5. Отсутствие приоритизации
  6. Плохая трассируемость требований
  7. Игнорирование edge cases
  8. Переоценка технических возможностей команды
  9. Недостаточное тестирование требований
  10. Плохая коммуникация изменений

Шаблоны документов

Основные артефакты с примерами:

Карьерный путь аналитика

Junior Analyst →

  • Сбор требований
  • Документирование процессов
  • Поддержка тестирования

Middle Analyst →

  • Проектирование решений
  • Управление бэклогом
  • Координация команды

Senior Analyst →

  • Архитектурные решения
  • Стратегия продукта
  • Менторство

Быстрые инструменты

Конвертер величин

Выбор методологии

Проект имеет четкие требования?

Рекомендуемый подход:

Шаблоны писем и сообщений

Swagger/OpenAPI

OpenAPI - стандарт описания REST API, Swagger - набор инструментов для работы с OpenAPI:

Преимущества использования:

Пример описания метода в OpenAPI:

openapi: 3.0.0 info: title: User API version: 1.0.0 paths: /users: get: summary: Get all users responses: '200': description: List of users content: application/json: schema: type: array items: $ref: '#/components/schemas/User'

Интеграция с API

Ответ появится здесь...

Примеры публичных API для тестирования:

  • JSONPlaceholder: https://jsonplaceholder.typicode.com/posts
  • ReqRes: https://reqres.in/api/users

Чеклист для проведения интервью

Подготовка к интервью:

  • Определить цели интервью
  • Выбрать участников
  • Подготовить вопросы
  • Запланировать время и место

Во время интервью:

  • Представиться и объяснить цель
  • Задать открытые вопросы
  • Активно слушать
  • Уточнять непонятные моменты

Проверка знаний

Выберите раздел для тестирования:

Карта компетенций системного аналитика

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

0%

Освоено: 0 из 0 компетенций

Бизнес-анализ

Системный анализ

Ваш прогресс сохраняется локально в браузере

Глоссарий терминов

Основные понятия системного анализа

Артефакты (Artifacts)
Рабочие продукты, создаваемые в процессе анализа - документы, модели, диаграммы
Стейкхолдеры (Stakeholders)
Лица и организации, заинтересованные в проекте и влияющие на требования
Функциональные требования
Что система должна делать - описание функций и возможностей системы

Архитектура и технологии

REST (Representational State Transfer)
Архитектурный стиль для API, основанный на стандартных HTTP-методах
SOAP (Simple Object Access Protocol)
Протокол обмена структурированными XML-сообщениями для веб-сервисов
GraphQL
Язык запросов для API, позволяющий клиентам запрашивать только необходимые данные

Полезные ресурсы

База знаний и заметки

Интерактивные чеклисты

Чеклист анализа требований

Прогресс выполнения

0/8 (0%)
0%
Подготовка
Сбор требований

Инструменты моделирования данных

Конструктор ER-диаграмм

Используйте панель инструментов для создания диаграммы

Генератор SQL

-- SQL-код появится здесь после создания диаграммы

Пример нормализации

1NF: Первая нормальная форма

Атомарность значений, отсутствие повторяющихся групп

2NF: Вторая нормальная форма

Отсутствие частичных зависимостей от составного ключа

3NF: Третья нормальная форма

Отсутствие транзитивных зависимостей

Генератор документов

SRS Document

Спецификация требований к программному обеспечению

User Stories

Пользовательские истории с критериями приемки

API Specification

Спецификация REST API в OpenAPI формате

Test Cases

Тестовые сценарии и кейсы