Рис.8.
На рисунке 9 представлено подробное описание проекта. Здесь появляется та же сводная информация о проекте, которая видна на кратком обзоре, приводится сводная информация по разработчикам, а также список всех спринтов по данному проекту. По каждому разработчику видно, сколько задач у него выполнено, сколько осталось и с какими статусами, сколько ошибок и т.д. При нажатии на ячейку в таблице статусов появляется всплывающее окошко, в котором задачи из этой ячейки расписаны по типам. В таблице с типами происходи то же самое, но задачи расписываются по их статусам.
Для каждого спринта описано, сколько задач в нем было всего, и сколько было не выполнено, а значит перенесено на следующий спринт.
Рис.9.
В настоящее время информационные технологии достигли высокого уровня и продолжают развиваться.
Потребности людей растут, проекты становятся все более масштабными и бюджетными. Растут требования, уделяется внимание жестким ограничениям по времени, ресурсам и рискам.
На этом фоне в компаниях по разработке программного обеспечения существует проблема с организацией эффективной работы коллектива.
Ее решением может стать внедрение определенного набора формальностей, который заставит разработчиков выполнять свои обязанности качественно и в срок, но при этом не нарушит легкую атмосферу в коллективе.
А для этого необходимо применить подходящую для данной компании методологию разработки программного обеспечения.
Если методология будет выбрана правильно, эта цель будет достигнута.
Целью данной работы являлось создание системы управления проектами для компании «Битворкс», которая будет основана на методологии разработки, наиболее полно удовлетворяющей нуждам данной компании.
Как известно, методологии разработки можно подразделить на два вида: тяжеловесные и гибкие.
Тяжеловесные методологии предполагают соблюдение жестких правил и предписаний, создание большого объема артефактов, что зачастую замедляет весь темп работ.
Гибкие методологии являют собой нечто среднее между слишком перегруженным процессом разработки и полным его отсутствием. Иначе говоря, объема процесса в них как раз достаточно, чтобы получить разумную отдачу.
При выборе методологии подробно были рассмотрены XP, Scrum, Crystal и RUP.
Наиболее подходящей оказалась Scrum.
Использование этой методологии дает возможность выявлять и устранять отклонения от желаемого результата на более ранних этапах разработки программного продукта, т.к. ее основа – итеративная разработка.
В методологии Скрам всего тири роли: владелец продукта, скрам-мастер и скрам-команда. У каждой из этих ролей свой набор обязанностей, которые они должны выполнять.
Кратко опишем схему процесса разработки.
1) В начале разработки Владелец продукта поставляет список требований к продукту, полученные от заказчика, выставляет для них приоритеты, и вместе с командой делает приближенную оценку. Полученный артефакт называется Product backlog.
2) После этого начинаются итерации, которые в Скрам называются «СПРИНТ». При планировании каждого спринта все участники определяют ту функциональность, которая будет реализована в его пределах, детализируют до небольших задач, команда дает им оценки, и итерация начинается.
3) Ежедневно в начале дня проходит 15-минутный митинг, называемый «Скрам», в течение которого выясняется, кто что делал вчера, что будет делать сегодня, и с какими проблемами столкнулся.
4) В конце каждой итерации происходит демонстрация новой функциональности и ее обсуждение.
В рамках данной работы были рассмотрены лишь архитектурно – значимые варианты использования, и для каждой роли, описанной Скрам, был выделен свой набор.
На слайде приведен типичный пример набора вариантов использования для роли «Скрам мастер»
На основе анализа предметной области и набора требований, полученного от заказчика, была получена схема БД, представленная на слайде.
Для реализации системы был строго определен набор технологий:
1) Фреймворк Джанго, который позволяет очень быстро и легко создавать веб-приложения
2) Язык программирования Python, который также является стандартным языком для веб-разработки
3) СУБД MySQL
Выбор данных технологий был не случайным. Он являются основными средствами разработки в компании-заказчике.
В результате анализа и проектирования был создан эволюционный прототип системы, который реализовал и полностью визуализировал базовые возможности системы и стал основой для разработки.
На слайде приведена схема базовой функциональности реализованного сайта, которая показывает основные переходы между страницами.
В результате проделанной работы было:
1) Проведено исследование методологий
2) Выбрана подходящая методология для данной компании
3) Изучен язык программирования Python
4) Изучен фреймворк Джанго
5) Освоена СУБД MySQL
6) Создан прототип приложения
7) Разработаны основные компоненты системы