ВВЕДЕНИЕ 3
1 КРИТЕРИИ ЭФФЕКТИВНОСТИ РЕЗУЛЬТАТОВ 6
1.1 Ключевые особенности методологии SCRUM 6
1.2 Обзор диаграммы скорости выполнения проекта 6
1.3 Обзор диаграммы сгорания проекта 8
1.4 Обзор диаграммы сгорания спринта 9
1.5 Обзор диаграммы совокупного потока 12
2 КОНЦЕПЦИЯ СИСТЕМЫ 14
2.1 Обоснование необходимости создания системы 14
2.2 Принцип работы 14
2.3 Виды оповещений 16
3 РЕАЛИЗАЦИЯ ПЕРСОНАЛЬНОГО АССИСТЕНТА 27
3.1 Архитектура программного инструмента 27
3.2 Разработка программного продукта 31
4 ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ 36
4.1 Авторизация 36
4.2 Выбор проекта 37
4.3 Экран выбора спринтов и User Story 38
4.4 Список User Story 40
4.5 Трекинг задач 41
4.6 Технологии и инструменты реализации продукта 42
ЗАКЛЮЧЕНИЕ 44
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 45
ПРИЛОЖЕНИЕ А Исходный код для push-уведомлений 47
ПРИЛОЖЕНИЕ Б Исходный код Android-приложения
Ключевым принципом гибких методологий разработки является то, что они поддерживают периодическую корректировку действий, которая может привести к устойчивым и эффективным результатам [2]. И в то же время, по данным статистики за 2017 год, примерно 97 млн. долларов на каждый инвестированный миллиард теряется в результате недостаточно эффективного процесса управления проектом. Именно поэтому обучению проектных менеджеров следует уделять особое внимание.
Успех или неудача проекта во многом зависят от способности проектного менеджера правильно расставлять приоритеты между бюджетом проекта, его качеством и временем разработки, а также вовремя разрешать конфликты, возникающие в ходе жизненного цикла проекта [3]. В течение всего цикла разработки программного продукта, важность каждого из приоритетов может несколько раз меняться. Всё это отражается и на временных рамках. Например, переоценка графика может оказаться фатальной для проекта, когда бюджет становится решающим фактором, и наоборот. Аналогично и требования к качеству продукта должны быть изменены в определенных ситуациях, чтобы соответствовать реальности.
Однако, чтобы правильно оценить ситуацию при довольно быстро меняющихся приоритетах, проектному менеджеру безусловно необходим опыт. Начинающим менеджерам может быть крайне трудно оценить текущую обстановку и принять решение, благодаря которому разработка программного продукта будет завершена точно в срок, и сам программный продукт при этом будет соответствовать основным требованиям заказчика.
Обучение управлению проектами требует времени и усилий для освоения знаний, инструментов и навыков по управлению командой, формирования совместного видения конечных целей, среды, максимально приближенной к реальным условиям и в то же время способствующей отработке приобретенных знаний [4]. Обучающийся менеджер должен научиться диагностировать постоянно изменяющиеся условия в проекте и при необходимости адаптировать работу под них, смотивировать свою команду. Для достижения максимальной результативности обучающемуся необходим контроль не просто человека, искусно владеющего навыками управления проектами, но и хорошего педагога-организатора. Обучение по такой схеме требует нескольких недель непрерывной работы, прежде чем команда столкнется с задачами, приближенными к реальным, с высокими долями риска и неопределенности. И в то же время такое обучение будет весьма эффективным, поскольку позволит команде пройти полный цикл: от планов и размышлений до разработанного решения.
Целью данной работы является разработка программного инструмента “ITIS Tracker”, отслеживающего текущее состояние проекта по временным характеристикам. Анализируя их, такой инструмент способен подсказать проектному менеджеру, на что именно следует обратить внимание в текущей проектной обстановке, и помочь ему в выборе действий для достижения эффективных результатов, снизив тем самым нагрузку на преподавателя в рамках процесса обучения.
Для достижения поставленной цели прежде всего необходимо было выявить ситуации, влекущие за собой увеличение риска провала проектов, далее разработать на их основе персонального ассистента в виде системы оповещений, срабатывающей при возникновении таких ситуаций, и также мобильного приложения непосредственно для взаимодействия с менеджером.
В процессе работы были выполнены следующие задачи:
1) Проанализированы данные о проектах и сформулированы критерии, на основании которых менеджер может судить об эффективности процесса разработки программного продукта.
2) На основании проанализированных данных был разработан механизм оповещения проектного менеджера о наступлении ситуаций, требующих оперативного реагирования.
3) Механизм уведомлений был внедрен на уже разработанный сервер системы “ITIS Tracker” для взаимодействия с мобильным клиентом.
4) Был разработан мобильный клиент для системы “ITIS Tracker”, обладающий функциональными возможностями для управления проектами, а также поддерживающий разработанный механизм оповещений.
Разработанный программный продукт призван помочь начинающим менеджерам в процессе их обучения, обеспечив оперативное получение информации относительно текущего статуса проекта и вероятных рисков, а также снизить нагрузку на преподавателя, курирующего обучение.