Аннотация
ВВЕДЕНИЕ6
1 ПРОЦЕСС РАСПРЕДЕЛЕННОЙ РАЗРАБОТКИ ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ8
1.1 Основные участники современной распределенной разработки ПО8
1.3 Системы контроля версий программных продуктов 12
Выводы по разделу один24
2 ОБЗОР СИСТЕМ РАЗРАБОТКИ И КОНТРОЛЯ ВЕРСИЙ, НЕПРЕРЫВНОЙ ИНТЕГРАЦИИ, ПОСТРОЕНИЕ ИТЕРАТИВНОГО ПРОЦЕССА РАЗРАБОТКИ ПО26
2.1 Работа с Git репозиториями из Visual Studio26
2.2 Графические оболочки Git27
Выводы по разделу два37
3 ВНЕДРЕНИЕ СИСТЕМ КОНТРОЛЯ ВЕРСИЙ В РАСПРЕДЕЛЕННУЮ РАЗРАБОТКУ ПО38
3.1 Требования к знанию систем контроля версий для участников
распределенной разработки ПО38
3.2 Этап развертывания очередной версии программного продукта39
3.3 Методология разработки, построенная вокруг систем контроля версий
GitOps51
Выводы по разделу три55
ЗАКЛЮЧЕНИЕ56
БИБЛИОГРАФИЧЕСКИЙ СПИСОК57
Зарождение принципов разработки и интеграции шаблонов управления проектами в процесс разработки программного обеспечения началось в конце 60-х — начале 70-х годов 20 века. Причиной стал так называемый «первый кризис программирования». Стоимость программ приблизилась к цене на компьютеры, которые в то время были, естественно, редкими, а потому — дорогостоящими. Разработка ПО отличалась от современной, была более время и трудозатратной.
Как известно, развитие рынка компьютерного железа привело не только к удешевлению компьютеров, как ЭВМ для специфичных расчетов, но и, благодаря усовершенствованию технологии их производства и улучшению характеристик способствовало формированию новых ниш для внедрения использования компьютеров, формируя постепенно новый их класс — персональные компьютеры. Такое расширение масштабов использования ЭВМ привело к увеличению потребности в квалифицированных кадрах для разработки, поддержки, модификации и улучшения характеристик как конструируемых компьютеров, так и ПО для них, что привело к необходимости внедрения методологий разработки, конструирования, модификации, тестирования и внедрения как аппаратной, так и программной части современных компьютеров.
Выявление лучших практик императивным путем способствовало их закреплению в процессе разработки современного ПО. Также как и формированию отдельной ниши программ для управления процессом его разработки, контроля над изменениями, появление так называемой «итеративной разработки», что давало возможность тестирования программ через более частые промежутки времени и, в связи с этим, более раннего выявления ошибок или несоответствия требований инициаторов разработки программного продукта.
В рамках выпускной квалификационной работы рассмотрена широко распространенная методология Scrum, приведены обязанности участников разработки по ней, описаны современные программные средства для управления разработкой, модификацией и поддержкой программного обеспечения.
В заключении можно отметить, что системы управления версиями программных продуктов неотъемлемы от управления распределенной разработкой. Они позволяют работать параллельно над одним проектом и контролировать версии изменений в коде, уменьшая время на слияние кода, контролируя качество изменений и уменьшая возможность ошибок. Выбор конкретной системы управления версиями должен основываться на потребностях команды разработчиков и характере проекта, а также на соответствии современным стандартам безопасности для защиты кода проекта. Использование систем управления версиями - необходимый шаг для создания эффективной и успешной распределенной разработки, повышающий качество кода и безопасность проекта, а также ускоряющий и упрощающий процесс разработки программных продуктов.