Семинар №3 4 - V1adique/Vladique.github.io GitHub Wiki

1. Проект

1.1 Рассматриваемая система (процесс)

1.1.1 Наименование: процесс разработки Telegram-бота для сайта компании

1.1.2 Цель (назначение): оптимизация разработки бота для сайта

1.1.3 Разбор цели системы по SMART

Критерий Значение Оценка
S (конкретность) Бот в Telegram
M (измеримость) Модули (Оценка)
A (достижимость) Команда Malina
R (уместность) Компилятор Python
T (ограниченность во времени) Конец второго модуля

1.2 Предлагаемый проект

1.2.1 Наименование: Разработка кнопок и блочных технологий для создания в Telegram-бота

1.2.2 Цель (изменяемый критерий SMART цели системы): Упрощение написания кода

1.2.3 Разбор цели проекта по SMART

Критерий Значение Оценка
S (конкретность) Сократить время разработки
M (измеримость) Человек/час
A (достижимость) Команда Malina
R (уместность) Ограничение: 6 нормо-часов на сотрудника
T (ограниченность во времени) Cрок до окончания 2-го модуля

1.3 Вид прототипа

  • горизонтальный (сценарии работы)
  • вертикальный (структура продукта)
  • одноразовый (исследовательский)
  • инкрементный (эволюционный)

1.4 Задача

1.4.1 ❓ репозиторий

1.4.2 ❓ landing page

1.4.3 пользовательская история (ссылка на issue) ✋ пример

  • Кто: Команда Malina
  • Как: Владелец продукта, Программист, Тех.писатель, Мастер
  • Хочу: Создать бота, используя блоки и кнопки на языке Python
  • Чтобы: Упростить создание
  • Приемка: Все функции работы с данными правильно работают на контрольных примерах

1.5 Проектные риски (спринт) ❓

  1. Дефицит специалистов
  2. Нереалистичные сроки и бюджет
  3. Реализация несоответствующей функциональности
  4. Разработка неправильного пользовательского интерфейса
  5. «Золотая сервировка», перфекционизм, ненужная оптимизация и оттачивание деталей
  6. Непрекращающийся поток изменений
  7. Нехватка информации о внешних компонентах, определяющих окружение системы или вовлечённых в интеграцию
  8. Недостатки в работах, выполняемых внешними (по отношению к проекту) ресурсами
  9. Недостаточная производительность получаемой системы
  10. Разрыв между квалификацией специалистов и требованиями проекта
Вид риска Название риска (описание события) Вероятность Стратегия Мероприятие
1 Один из двух сотрудников заболеет 🟢 Принятие (Acceptance) Проектом займется другой сотрудник
10 Недостаток людей на роли 🟢 Принятие Роли распределяются между сотрудниками

2. Команда

2.1. Закрепление полномочий

Роль Ответственность (компетенция, зона принятия решений) Менеджер Заместитель
РП (Владелец продукта-) Бизнес-результат, решение проблем, обеспечение ресурсами Артамонов Рошу
АД (Мастер) Диспетчирование и контроль задач, выявление проблем Артамонов Рошу
СП (Аналитик) Сбор и управление всеми требованиями в проекте Рошу Артамонов
ВН (Дизайнер) Удобство использования, привлекательность продукта Рошу Артамонов
БА (Тестировщик) Выявление бизнес-проблем, способы тестирования Рошу Артамонов
НИ (Архитектор) Структура продукта, инструменты разработки и поставки Рошу Артамонов
ПП (Программист) Стиль и способы разработки, используемые фреймворки Артамонов Рошу
КО (Тех.писатель) Документирование проекта и продукта Артамонов Рошу

2.2. Закрепление обязанностей

Участник Стадия Действие (activity) Ожидаемый результат
РП (Владелец продукта) 1 старт Регистрирует участников проекта Участники приняли приглашения и подключились к проекту
РП (Владелец продукта) 2 контроль Принимает решение по всем возникающим проблемам Комментарии к проблемам (issue)
РП (Владелец продукта) 3 финиш Принимает решение об успешности спринта, дает общую оценку работы команды и дает предложения по всем индивидуальным оценкам Предложения по индивидуальным оценкам
АД (Мастер) 1 старт Получает оценку времени для каждой подзадачи, собирает sprint log, назначает исполнителей Список подзадач на канбан-доске
АД (Мастер) 2 контроль Проводит stand-up совещание Статус задач отмечен на канбан-доске, проблемы зарегистрированы и назначены РП в форме дополнительных задач (issue)
АД (Мастер) 3 финиш Проводит stand-up совещание Статус задач отмечен на канбан-доске, проблемы зарегистрированы и назначены РП в форме дополнительных задач (issue)
АД (Мастер) 3 финиш Проводит демонстрацию результатов спринта владельцу продукта и другим заинтересованным лицам Протокол демонстрации записан в виде комментария к пользовательской истории
СП (Аналитик) 1 старт Регистрирует историю как отдельную задачу проекта (issue) Задача с номером
СП (Аналитик) 2 контроль Регистрирует возникающие дополнительные задачи (issue) в соответствующих проектах Задачи с номером
СП (Аналитик) 3 финиш Выполняет все разработанные тесты, регистрирует все выявленные несоответствия требованиям Задачи с номером, комментарии
ВН (Дизайнер) 1 старт Разбивает задачу истории на подзадачи - страницы Список подзадач с именами страниц
ВН (Дизайнер) 2 контроль Разрабатывает процедуры - страницы, стили и заглушки обработчиков html-страницы с обработчиками событий
ВН (Дизайнер) 3 финиш Разрабатывает и отлаживает процедуры - страницы, позволяющие выполнять тесты в интерактивном режиме html-страницы и js-процедурами для запуска тестов
БА (Тестировщик) 1 старт Разбивает задачу истории на подзадачи - тесты Список подзадач с именами тестов
БА (Тестировщик) 2 контроль Разрабатывает процедуры - тесты и тестовые наборы данных html-страницы с тестами
БА (Тестировщик) 3 финиш Разрабатывает и отлаживает процедуры - тесты и тестовые наборы данных html-страницы с js-процедурами тестов и тестовые наборы данных
НИ (Архитектор) 1 старт Разбивает задачу истории на подзадачи - процедуры Список подзадач с именами процедур
НИ (Архитектор) 2 контроль Определяет дополнительные требования к выполнению задач Комментарии к задачам
НИ (Архитектор) 3 финиш Принимает решение по всем выявленных несоответствиям требованиям Комментарии к задачам
ПП (Программист) 1 старт Разрабатывает алгоритмы выполнения всех подзадач, требующих программной реализации Описание алгоритма и диаграмма деятельности в комментариях к задаче, в виде вики-страницы или в виде комментариев в файле программы
ПП (Программист) 2 контроль Разрабатывает процедуры - обработчики и генераторы тестовых наборов данных js-модули
ПП (Программист) 3 финиш Разрабатывает и отлаживает процедуры - генераторы тестовых наборов данных js-модули
КО (Тех.писатель) 1 старт Делает описания для всех подзадач, требующих программной реализации Описание и необходимые диаграммы в комментариях к задаче, в виде вики-страницы или в виде комментариев в файле программы
КО (Тех.писатель) 2 контроль Корректирует или делает новые описания для всех разработанных процедур Описание и необходимые диаграммы в комментариях к задаче, в виде вики-страницы или в виде комментариев в файле программы
КО (Тех.писатель) 3 финиш Разрабатывает требуемые описания всех разработанных процедур, тестов и тестовых наборов данных Описание и необходимые диаграммы в комментариях к задаче, в виде вики-страниц или в виде комментариев в файлах процедур, тестов и тестовых наборов данных

3. Личные риски (на спринт) ❓

  1. Дефицит специалистов
  2. Нереалистичные сроки и бюджет
  3. Реализация несоответствующей функциональности
  4. Разработка неправильного пользовательского интерфейса
  5. «Золотая сервировка», перфекционизм, ненужная оптимизация и оттачивание деталей
  6. Непрекращающийся поток изменений
  7. Нехватка информации о внешних компонентах, определяющих окружение системы или вовлечённых в интеграцию
  8. Недостатки в работах, выполняемых внешними (по отношению к проекту) ресурсами
  9. Недостаточная производительность получаемой системы
  10. Разрыв между квалификацией специалистов и требованиями проекта
Роль Фаза Вид риска Название риска (описание события) Вероятность Стратегия Мероприятие
ПП (Программист) 1 старт 1 Выполнение обязанностей за нескольких специалистов 🟢 Принятие (Acceptance) Выполнять несколько ролей будет 1 человек