Вы находитесь на странице: 1из 67

BUSINESS

ANALYSIS IN IT
Topic 1: Intro. SDLC and Agile
methodologies

Спикер:
Dmytro Lepetiuk
Dmytro Lepetiuk
Lead Business Analyst
@ EPAM

2
Давайте знакомиться

• Бизнес аналитики?

• Собираетесь стать?

• Ожидания от курса?

3
О чем курс?
● Лекция 1 Жизненный цикл разработки требований (SDLC) и Agile
методологии
● Лекция 2 Анализ заинтересованных сторон. Коммуникации. Правила
деловой переписки
● Лекция 3 + Практика Выявление требований. Техники выявления
требований.
● Лекция 4 + Практика Документирование требований. Decomposition and
Story mapping
● Лекция 5 + Практика User Stories. Backlog и приоритизация требований
● Лекция 6 + Практика Детализация требований: Acceptance criteria,
Specification by example, Use Cases
● Лекция 7 + Практика Моделирование требований: BPMN и UML диаграммы
● Лекция 8 + Практика Прототипирование требований. Управление
требованиями, изменениями, рисками
● Лекция 9 + Практика Работа в команде. Инструменты аналитика. Jira и
Confluence
● Лекция 10 + Защита проекта Карьерный рост и дальнейшее
развитие + на выбор слушателей

4
План на сегодня

1. Что такое бизнес анализ и кто такой

бизнес аналитик

2. Какие бывают требования

3. Что такое SDLC

4. Agile: Scrum/Kanban

5
Бизнес анализ
Business analysis - The practice of
enabling change in the context of an
enterprise by defining needs and
recommending solutions that deliver value
to stakeholders.

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


изменение в компании

путем определения потребностей и


рекомендации решений

которые приносят ценность для


заинтересованных сторон

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

7
Бизнес Аналитик
Business analyst - Any person who
performs business analysis, no matter their
job title or organizational role.

Бизнес аналитик – Любое лицо, которое


занимается бизнес-аналитическими
активностями, независимо от позиции либо
роли в организации.

8
Бизнес Аналитик
Business analyst responsible for eliciting the
actual needs of stakeholders—which
frequently involves investigating and clarifying
their expressed desires—in order to
determine underlying issues and causes.

Бизнес аналитик отвечает за выявление


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

9
Чем занимается БА
● Выявляет проблемы и потребности
корпорации, понимает ее цели
● Анализирует потребности и решения,
чтоб самостоятельно либо с командой
сформулировать концепцию решения
● Оформить концепцию в техничесское
задание используя техники бизнес-
анализа
● Консультирует команду разработки,
спорные моменты обсуждает с
заказчиком
● Проводит, драйвит изменения
● Разрабатывает стратегию

10
Плюсы и минусы БА
+ Важность и значимость деятельности, так как
напрямую влияет на результат проекта
+ Больше общения меньше сидячей работы
+ Возможность общения напрямую с заказчиком тем
самым влияя на продукт
+ Возможность разбираться как все работает из каких
частей состоит, описание сложных вещей с помощью
простых моделей

– Сложности общения с проблемным заказчиком


– Отсутствие влияния на сроки и бюджет проекта
– Необходимо изучать большие объемы информации
в короткий срок

11
Что нужно знать БА
● Знать методологию выявления, анализа,
формализации (Hard skills)
● Знать предметную область, которую нужно
анализировать (Domain knowledge)
● Понимать жизненный цикл ПО (SDLC)
● Знать основы программирования, тестирования
(Technical skills)
● Личные качества (Soft skills):
- аналитическое мышление
- коммуникативные способности
- внимание к деталям
- уметь быстро разбираться в неизвестной области,
- уметь принимать решения
- любить и уметь учиться
- четко и ясно выражать свои мысли
12
Виды

●BA – Business analyst

●SA – System analyst

●BI – Business intelligence / Data analyst

●PO – Product Owner / Product Manager

●Technical writer

13
ТРЕБОВАНИЯ
Цикл разработки по или SDLC
Требования это спецификация того, что должно
быть реализовано. В них описано поведение
системы, свойства системы или ее атрибуты. Они
могут служить ограничениями в процессе
разработки системы.

14
Задание – определить что описывают
данные
Цикл разработки требования
по или SDLC

• 6ти цилиндровый
дизельный двигатель
• Мощность 300+ л.с.
• Полный привод
• Высокий клиренс
• Темный салон
• Мягкие и удобные сидения
• Красного цвета

15
Классификация требований
Business requirements

Stakeholder
requirements

Solution requirements

Non-functional
Functional requirements
requirements

Transition requirements

16
Бизнес-требования
Цикл разработки по или SDLC
Бизнес-требование (Business requirement) - Высокоуровневая бизнес-цель
организации или заказчиков системы

Примеры:
• Снизить на 25% затраты на сотрудников магазина путем установки
автоматизированных терминалов
• На сайте магазина должна возможность оформить доставку домой
• Сайт должен предоставлять возможность выбора и заказа услуг по сборке/установке
продукции

17
Пользовательские требования
Цикл разработки по или SDLC
Пользовательское требование (Stakeholder requirement) - Задача, которую
определенные классы пользователей должны иметь возможность выполнять в системе

Примеры:
• Автоматизированный терминал должен позволять заказывать товары без помощи
сотрудников магазина
• Сайт должен позволять пользователю выбирать между разными типами доставки
• При заказе сборки/установки должна быть возможность выбрать к какому товару это
относится

18
Функциональные требования
Цикл разработки по или SDLC
Функциональное требование (Functional requirement) - Описание требуемого
поведения системы в определенных условиях

Примеры:
• Система должна рекомендовать к покупке сопутствующие товары при добавлении
основного товара в корзину
• Система должна рассчитывать стоимость доставки по следующей формуле: x*y*z
где x – вес продукта, y – расстояние от склада до пункта назначения, z –
конфигурабельный коэффициент
• При создании заказа с опцией сборки/уставновки, система должна оповещать
соответствующего установщика по электронной почте

19
Взаимоотношения между функциями, пользовательскими и
функциональными требованиями
Цикл разработки по или SDLC

20
Нефункциональные требования
Цикл разработки по или SDLC
Нефункциональное требование (Nonfunctional requirement) - Описание свойства
или особенности, которым должна обладать система. Они представляют собой
описание различных измерений характеристик продукта, которые важны для
пользователей или для разработчиков и тех, кто будет обслуживать систему. Другие
нефункциональные требования описывают внешние интерфейсы между системой и
внешним миром.
Примеры:
• В 90% случаев, система должна загружать страницу не более чем за 2 секунды
• 90% сотрудников должны иметь возможность успешно использовать новую систему
после не более чем 6 часов тренинга
• Сайт должен поддерживать безопасный протокол https

21
Нефункциональные требования
Цикл разработки по Внешние
Внутренние (Internal quality):
или SDLC
(External quality):
• Доступность (Availability)
• Эффективность (Efficiency)
• Легкость установки (Installability)
• Модифицируемость (Modifiability) • Целостность (Integrity)

• Портативность (Portability) • Совместимость (Interoperability)


• Производительность (Performance)
• Возможность переиспользования
• Надежность и Отказоустойчивость
(Reusability) (Reliability and Robustness)

• Масштабируемость (Scalability) • Безопасность использования (Safety)


• Защищенность (Security)
• Проверяемость (Verifiability)
• Удобство использования (Usability)

22
Другие виды: Бизнес-правила
Цикл разработки по или SDLC
Бизнес-правила (Business rules) - Политика, предписание, стандарт или правило,
определяющее или ограничивающее некоторые стороны бизнес-процессов. По своей
сути это не требование к ПО, но оно служит источником нескольких типов требований к
ПО

Примеры:
• Покупатель должен входить в премиум группу если он создает более 10 заказов в
месяц
• Провинциальный налог должен рассчитываться по формуле (стоимость всех
товаров, которые облагаются данным налогом * налоговую ставку)

23
Другие виды: Ограничения
Цикл разработки по или SDLC
Ограничения (Constraints) - Ограничение на выбор вариантов, доступных разработчику
при проектировании и разработке продукта

Примеры:
• Система должна быть разработана с использованием только языка Java
• Название организации должно быть не более 256 символов (ограничение СУБД)
• Система должна использовать нереляционную (NoSQL) базу данных

24
Другие виды: Допущения
Цикл разработки по или SDLC
Допущения (Assumptions) - Допущения, которое может повлиять на реализацию
продукта, но не является подтвержденным фактом

Примеры:
• Система не будет поддерживать функцию удаления пользователей
• Функция добавления пользователей уже реализована
• Для калькуляции стоимости доставки будет использоваться формула вида: Вес *
Расстояние

25
Другие виды: Требования к переходу
Цикл разработки по или SDLC
Требования к переходу (Transition requirements) – Описание того, что должно быть
реализовано для успешного перехода из текущего состояния (As is) в желаемое (To be).
Требования становятся ненужными после того как переход полностью завершен.

Примеры:
• Все документы должны быть переформатированы из формата .doc в формат .docx
• После запуска новой системы, старая должна продолжать функционировать и
использоваться для управления существующими заказами. Новая система должна
использоваться для управления заказами, которые были созданы после запуска
новой системы
• Перед использованием новой системы все сотрудники должны пройти 6-ти часовой
тренинг

26
Другие виды: Внешние
интерфейсы
Цикл разработки по или SDLC
Внешние интерфейсы (Interfaces) - Описание взаимодействия между системой и
пользователем, другой программной системой или устройством

Примеры:
• Описание API, сервисов посредством которых система взаимодействует,
обменивается данными с другими системами или устройствами
• Требования к графическим пользовательским интерфейсам (UI/UX). Прототипы,
дизайны.

27
Требования и документы
Цикл разработки по или SDLC

Сплошные линии означают «содержатся в», а пунктирные — «являются отправной точкой» или «влияют на».

28
Цикл разработки ПО или SDLC
Цикл разработки по или SDLC

29
Развитие software engineering
Цикл разработки по или SDLC
1950-1970

Полное видео Максима Дорофеева:


https://youtube.com/watch?v=X1c2--sP3o0

30
1970
Цикл разработки по или SDLC

31
1970
Цикл разработки по или SDLC

32
1970
Цикл разработки по или SDLC

33
1970
Цикл разработки по или SDLC

34
1970-2019
Цикл разработки по или SDLC

35
Waterfall (predictive)
Цикл разработки по или SDLC

36
Цикл разработки по или SDLC

Winston Royce – Managing the Development of Large Software Systems

37
Развитие SDLC
Цикл разработки по или SDLC

38
Rational Unified Process (RUP)
Цикл разработки по или SDLC

39
Цикл разработки ПО или SDLC
Цикл разработки по или SDLC

40
Agile (adaptive)
Цикл разработки по или SDLC

41
Проблемы, которые решает Agile
Цикл разработки по или SDLC

42
Цикл разработки по или SDLC

43
Цикл разработки по или SDLC

44
Цикл разработки по или SDLC

45
Scrum
Цикл разработки по или SDLC

46
Scrum roles
Цикл разработки по или SDLC

47
Scrum Артефакты
Цикл разработки по или SDLC

48
Scrum митинги
Цикл разработки по или SDLC

49
Цикл разработки по или SDLC

50
Scrum vs Kanban
Цикл разработки по или SDLC

51
Kanban
Цикл разработки по или SDLC

52
Kanban доска
Цикл разработки по или SDLC

Хенрик Книберг: Scrum и Kanban

53
Доски
Цикл разработки по или SDLC

Хенрик Книберг: Scrum и Kanban

54
Временные рамки
Цикл разработки
Scrum по или SDLC

Kanban

Хенрик Книберг: Scrum и Kanban

55
Kanban Ограничения потока задач
Цикл разработки по или SDLC

Хенрик Книберг: Scrum и Kanban

56
Kanban Пример
Цикл разработки по или SDLC

Хенрик Книберг: Scrum и Kanban

57
Оценки
Цикл разработки
Scrum по или SDLC

Kanban

Хенрик Книберг: Scrum и Kanban

58
Работа на разными продуктами
Цикл разработки по или SDLC

Scrum Kanban

Хенрик Книберг: Scrum и Kanban

59
Отличия
Цикл разработки по или SDLC

Хенрик Книберг: Scrum и Kanban

60
Scrum Kanban

Цикл разработки по или SDLC

Хенрик Книберг: Scrum и Kanban

61
Плюсы и минусы Kanban
+ Уменьшение числа параллельно выполняемых задач
сильно уменьшает время выполнения каждой
отдельной задачи
+ Гораздо меньше времени тратится на планирование
+ Сразу видны узкие горлышки

– Отсутствие временных рамок и чувства


предсказуемости
– Может не давать желаемый результат при
неправильно выбранных ограничениях
– Некоторые команды слишком усложняют процесс
перегруженной доской

62
Summary
Цикл разработки по или SDLC
• Что такое бизнес анализ и кто

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

• Какие бывают требования

• Что такое SDLC

• Agile: Scrum/Kanban

63
Домашнее задание
Цикл разработки по или SDLC

Карл Вигерс - Разработка Scrum и XP: Scrum и kanban:


требований заметки с передовой выжимаем максимум
к программному
обеспечению – Главы: 1, 4

64
Links
Цикл разработки по или SDLC
• Карьера в IT: должность Бизнес-аналитик
• BA communities:
- http://analyst.by
- http://analyst.by/forum
- http://modernanalyst.com
- http://bridging-the-gap.com/
• Kanban статья

65
Feedback
Цикл разработки по или SDLC

• Что вынесли с этого занятия?

• Что хотелось бы еще узнать?

• Что стоит улучшить?

66
?
Цикл разработки по или SDLC

67

Вам также может понравиться