Тема: Коллективная разработка программного обеспечения.

ПЛАН ЗАНЯТИЯ

Дисциплина: МДК 03.01 Технология разработки программного обеспечения

Преподаватель: Машарова Р.В.

Курс: 4

Группа: 1 ПКС-19

Специальность: Программирование в компьютерных системах

Дата: 11.10.22

Время проведения: 11.50 – 13.20, 3 пара

Тема: Коллективная разработка программного обеспечения.

Цель занятия:

дидактическая: Познакомится с методами коллективной разработки программного обеспечения.

развивающая: Развивать логическое и критическое мышление, умение обобщать и синтезировать знания.

Вид занятия лекция

Литература:

1. Гагарина Л. Г., Кокорева Е. В., Виснадул Б. Д. Г12 Технология разработки программного обеспечения: учебное посо­бие / под ред. Л. Г Гагариной. — М.: ИД «ФОРУМ»: ИНФРА-М, 2008. — 400 с.

2. Буч Г, Рамбо Джеймс, Джекобсон Айвар. Язык UML. Руководство пользователя. – М.: ДМК Пресс; СПб.: Питер, 2004. – 432с.

3. Жоголев Е.А., Технология программирования. М.: Научный мир, 2004. – 216 с.

4. Павловская Т. А. С/С++. Программирование на языке высокого уровня: Учебник для студентов вузов. - Москва [и др.]: Питер, 2012

Тема: Коллективная разработка программного обеспечения.

1. Системы управления версиями при коллективной разработке ПО.

2. Авторская разработка.

3. Коллективная разработка.

4. Общинная модель разработки .

1. Системы управления версиями при коллективной разработки ПО.

Коллективная разработкаэто бизнес стратегия рабочий процесс и набор программного обеспечения, способствующие совместной работе различных организаций,программистов над одним изделием.

Плодотворная разработка различных программных комплексов на сегодняшний день немыслима без использования сопутствующих современных технологий программирования, функционирование которых направленно на решение проблем, непосредственно связанных с созданием программного обеспечения, обладающего такими качествами, как надёжность, модульность, информативность, способность к видоизменению, повторная используемость кода и тому подобное.

Указанные качества необходимы при создании программного обеспечения для различных областей деятельности, исходя из этого в сфере разработки новых технологий программирования, в том числе для параллельного программирования, ведутся интенсивные научные исследования.

Для того чтобы создать крупную информационную систему необходимо задействовать группу согласованно работающих программистов. Из практики видно, что благодаря появлению систем быстрой разработки приложений, организация взаимосвязанной работы несколькихпрограммистов может потребоваться не только крупному, но и малому бизнесу. Так к примеру внедрение средств Rapid Application Development (RAD) даёт возможность увеличить производительность коллективных разработок, путём сокращения численности их групп и затрачиваемого времени. В итоге потребность в обеспечении коллективных разработок малых группам повлекла за собой появление на рынке множество программ.

Коллективная разработка программного обеспечения включает как минимум следующие процессы:

· Разработка

· Тестирование

· Сбор

· Развертывание

· Выпуск продукта

 

Системы коллективной разработки должны выполнять как минимум две функции — это регистрация изменений, вносимых в проект и хранение файлов проекта.

Термин «collaborate» (с англ. коллективная работа) в XXI веке, веке технологий, популярен как никогда. Он означает, что сервис предоставляет возможность одновременной работы сразу для нескольких пользователей, которые трудятся над решением общей задачи.

У одних сервисов коллективный труд является лишь одной из опций, а у других —основной функцией. Основной проблемой является то, что термин “collaborate” не всегда обозначает «командную работу», а среди сервисов, по-настоящему поддерживающих совместную работу, бесплатны лишь некоторые.

Система управления версиями представляет собой программное обеспечение, для работы с постоянно изменяющейся информацией. Она даёт возможность хранить несколько версий одного и того же документа, при необходимости возвращаться к более ранним, а также определять, кто и когда сделал то или иное изменение.

Подобные системы довольно широко используются в процессе разработки программного обеспечения для сохранения исходных кодов создаваемой программы, также они могут с успехом применяться и в других областях программирования, при работе с большим количеством постоянно изменяющихся электронных документов.

Проведём мониторинг работоспособности некоторых из них.

Bazaar, ранее известная как Bazaar- NG, утилита командной строки bzr, — это распределённая система управления версиями, разработка которой спонсируется фирмой Canonical Ltd, в последнюю версию по сравнению с предыдущей было внесено более 50 изменений. Данная система разработана в целях облегчения создания и развития проектов для пользователей

Mercurial, в переводе с англ. «подвижный», распределённая система управления версиями, способная функционировать на многих операционных системах и различных аппаратных платформах, разработанная для эффективной работы с очень большими кодами.

Git распределённая система управления версиями файлов. Код программы был написан на языке «С», проект создан Линусом Торвальдсом в 2005 году для управления разработкой ядра Linux, является общедоступным программным обеспечением. Данная система была введена многими ведущими разработчиками, используется в известных Linux сообществу проектах.

Concurrent Versions System (или CVS, в переводе «Система Одновременных Версий») представляет собой программный продукт, который относится к разряду систем управления версиями. Программа хранит историю изменений исходного кода программного обеспечения, тем самым облегчая совместную работу программистов над одним проектом. CVS популярна в мире открытого программного обеспечения.

Для более подробного анализа сравним характеристики программ в таблице.