ВВЕДЕНИЕ 3
ЧТО ТАКОЕ AGILE? 4
ПОСТАНОВКА ЗАДАЧИ ПРОЕКТИРОВАНИЯ И РАЗРАБОТКИ 6
СТРУКТУРЫ WEB-ПРИЛОЖЕНИЯ 6
1.1 АНАЛИЗ СУЩЕСТВУЮЩИХ ПЛАТФОРМ 7
1.2 ЦЕЛЬ СОЗДАНИЯ WEB-ПРИЛОЖЕНИЯ 7
1.3 ПОСТАНОВКА ЗАДАЧИ ПРОЕКТИРОВАНИЯ 8
1.4 АНАЛИЗ БИЗНЕС ПРОЦЕССОВ 8
1.5 ПРОЕКТИРОВАНИЕ И РАЗРАБОТКА ОСНОВНЫХ МОДЕЛЕЙ ПРИЛОЖЕНИЯ 11
1.6 ПРОЕКТИРОВАНИЕ И РАЗРАБОТКА ДОПОЛНИТЕЛЬНЫХ МОДУЛЕЙ 13
ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СЕРВЕРНОЙ И КЛИЕНТСКОЙ ЧАСТИ WEB-ПРИЛОЖЕНИЯ 16
2.1 СТРУКТУРА WEB-ПРИЛОЖЕНИЯ 16
2.2 ПЕРЕДАЧА ДАННЫХ 16
2.3 АРХИТЕКТУРНЫЙ ШАБЛОН 17
2.4 СТЕК ТЕХНОЛОГИЙ СЕРВЕРНОЙ ЧАСТИ ПРИЛОЖЕНИЯ 18
2.5 СТЕК ТЕХНОЛОГИЙ КЛИЕНТСКОЙ ЧАСТИ WEB-ПРИЛОЖЕНИЯ 20
2.6 ПРОГРАММНАЯ РЕАЛИЗАЦИЯ СЕРВЕРНОЙ ЧАСТИ WEB-ПРИЛОЖЕНИЯ 22
2.7 ПРОГРАММНАЯ РЕАЛИЗАЦИЯ КЛИЕНТСКОЙ ЧАСТИ WEB-ПРИЛОЖЕНИЯ 32
2.8 РАЗВОРАЧИВАНИЕ КЛИЕНТСКОЙ И СЕРВЕРНОЙ ЧАСТИ WEB-ПРИЛОЖЕНИЯ НА
УДАЛЁННОМ СЕРВЕРЕ 44
ОБЗОР РАЗРАБОТАННОГО WEB-ПРИЛОЖЕНИЯ 47
ЗАКЛЮЧЕНИЕ
В настоящее время все больше профессионалов и специалистов, работающих в самых различных сферах нашей жизни и реализующие проектную деятельность нуждаются в детальном планировании для реализации своих задач. Причем возможных вариантов таких задач огромное количество, начиная от разработок ПО в любой области IT-сферы, и заканчивая, к примеру, журналистами, которые публикуют огромное количество материалов.
Существуют различные методологии для упрощения, улучшения и ускорения проектной деятельности в командах специалистов. Каждый имеет свои плюсы и минусы, и в данной выпускной квалификационной работе рассматривается метод работы Agile, а именно его программная реализация в в виде динамического, асинхронного клиентского web-приложения в связке с удаленным сервером.
Поставленные задачи, в ходе работы над данной выпускной квалификационной работе, можно считать полностью выполненными: разработана информационная система командной работы, которая позволяет группам людей создавать и вести проекты, используя методологию планирования Agile. Разработанная система представляет собой обособленные две части: клиентское web-приложение и удалённый хост с серверной частью данной платформы.
В ходе разработки данной платформы были изучены эффективные парадигмы программирования, использование идеологии контроля версий, активная работа с асинхронными запросами и использование удалённых компьютеров в качестве сервера. Полученные знания позволили качественно выполнить поставленные задачи. Так же, после создания информационной системы были выявлены незначительные ошибки, которые успешно исправлены.
Без сомнений, методология планирования задач Agile является очень мощным инструментом для ведения и реализации проектов различным уровней сложности. Но, использование данной методологии требует ПО, работающее в очень доступной и лёгкой среде. Информационную систему командной работы “Workedly” можно считать полностью подходящим для пользователей, использующие Agile.
1. Хофштадтер, Д. Гедель, Эшер, Бах: Эта бесконечная гирлянда
2. Толковый словарь Cambridge Dictionary
3. Jim Webber, Savas Parastatidis, Ian Robinson. — REST in Practice: Hypermedia and Systems Architecture
4. Leonard Richardson, Sam Ruby. — RESTful Web Services
5. Джефф Форсье, Пол Биссекс, Уэсли Чан — «Django. Разработка вебприложений на Python»
6. John Resig. — Pro Javascript Techniques
7. Джон Лолайгер. — Version Control with Git: Powerful tools and techniques
8. Travis Swicegood. - Paragmatic Guide To Git
9. Алекс Либби. - SASS Essentials
10. Аллен Б. Дауни - Think Python
11. Майк Кон. - Agile Estimating And Planning
12. Эстер Дерби, Дайана Ларсен, Кен Швабер. - Agile Retrospectives: Making Good Teams Great
13. Стив Фентон - Pro TypeScript: Application-Scale JavaScript Development