Академический Документы
Профессиональный Документы
Культура Документы
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
План на сегодня
бизнес аналитик
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
Виды
●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)
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
30
1970
Цикл разработки по или SDLC
31
1970
Цикл разработки по или SDLC
32
1970
Цикл разработки по или SDLC
33
1970
Цикл разработки по или SDLC
34
1970-2019
Цикл разработки по или SDLC
35
Waterfall (predictive)
Цикл разработки по или SDLC
36
Цикл разработки по или SDLC
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
53
Доски
Цикл разработки по или SDLC
54
Временные рамки
Цикл разработки
Scrum по или SDLC
Kanban
55
Kanban Ограничения потока задач
Цикл разработки по или SDLC
56
Kanban Пример
Цикл разработки по или SDLC
57
Оценки
Цикл разработки
Scrum по или SDLC
Kanban
58
Работа на разными продуктами
Цикл разработки по или SDLC
Scrum Kanban
59
Отличия
Цикл разработки по или SDLC
60
Scrum Kanban
61
Плюсы и минусы Kanban
+ Уменьшение числа параллельно выполняемых задач
сильно уменьшает время выполнения каждой
отдельной задачи
+ Гораздо меньше времени тратится на планирование
+ Сразу видны узкие горлышки
62
Summary
Цикл разработки по или SDLC
• Что такое бизнес анализ и кто
• Agile: Scrum/Kanban
63
Домашнее задание
Цикл разработки по или SDLC
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