Jump to content

Модель синхронизации

При управлении конфигурацией (CM) необходимо контролировать (помимо прочего) изменения, вносимые в программное обеспечение и документацию. Это называется контролем версий , который управляет несколькими версиями одной и той же единицы информации. Хотя контроль версий важен для CM, он не равен ему.

Модели синхронизации , также известные как модели управления конфигурацией (Фейлер, 1991), описывают методы, обеспечивающие контроль версий посредством одновременного и одновременного внесения изменений в отдельные файлы.

Модели синхронизации

[ редактировать ]

Фейлер (1991) сообщает о четырех различных моделях синхронизации, кратко описанных ниже.

Выезд/заезд

[ редактировать ]

В модели извлечения/возврата файлы хранятся индивидуально в репозитории, из которого они извлекаются при каждом обращении к файлам и возвращаются при их изменении. В этом репозитории можно хранить несколько версий файлов. Поскольку эти файлы могут представлять собой документацию или исходный код , но также могут представлять собой набор файлов, термин «элемент конфигурации» с этого момента будет использоваться (CI). Основным механизмом, используемым для предотвращения конфликтов при одновременных изменениях, является механизм блокировки .

Композиционная модель является расширением модели оформления/регистрации. Эта модель позволяет разработчикам думать о конфигурациях, а не об отдельных файлах. Хотя полная модель извлечения/возврата представлена ​​в композиционной модели, она позволяет использовать различные стратегии обновления за счет использования улучшенной поддержки управления конфигурациями. Конфигурация определяется как построенная на основе модели системы и правил выбора версии. Модель системы определяет, какие файлы используются, а правила выбора версии определяют, какая версия файлов (например, последние версии или определенная стадия разработки ).

Длинные транзакции

[ редактировать ]

Модель длинных транзакций использует более широкий подход, предполагая, что система построена из логических изменений. Основное внимание уделяется координации и интеграции этих изменений. По сути, он использует версии конфигураций и версии файлов. Конфигурация создается на основе запроса на изменение , который хранится отдельно. Файлы в этой конфигурации можно синхронизировать с использованием модели извлечения/возврата. После завершения изменения полная конфигурация сохраняется обратно в репозиторий и интегрируется с другими изменениями.

Изменить набор

[ редактировать ]

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

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

Словарный запас

[ редактировать ]
Концепция Определение
Версия Версия — это состояние объекта или концепции, которое отличается от его предыдущего состояния или состояния.
Элемент конфигурации Элемент программного обеспечения или документ, находящийся под контролем версий. Группу КИ также можно определить как КИ (Crnkovic et al., 2003).
История элемента конфигурации Концепция, облегчающая штамповку версий. Разделяет атрибуты, специфичные для версии, от атрибутов, общих для всех версий (Ван де Веерд, 2005).
Документ Многие типы документации являются частью разработки программного обеспечения. Рассмотрите документы, описывающие архитектуру программного обеспечения, техническую документацию, руководства пользователя и т. д.
исходного кода Файл Файл исходного кода содержит любую серию операторов, написанную на каком-либо удобочитаемом языке компьютерного программирования . Исходный код компьютерной программы — это набор файлов, которые можно преобразовать из удобочитаемой формы в эквивалентную форму, исполняемую компьютером.
Репозиторий Репозиторий также называют хранилищем. Репозиторий содержит только одну полную версию элемента конфигурации. Различия между версиями обычно сохраняются с использованием дельта-алгоритма (Crnkovic, Asklund & Persson-Dahlqvist, 2003).
Организация версий Версии ЭК могут быть организованы различными способами. Это родительский элемент концепций, описывающих организацию версий (Crnkovic et al., 2003).
Ветвь Версии организованы в виде параллельных линий разработки (Crnkovic et al., 2003).
Редакция Версии организованы в последовательность (Crnkovic et al., 2003).
Состояние развития Показывает, как продвигалась разработка программного обеспечения и какой объем дальнейшей разработки может потребоваться. Каждая основная версия продукта обычно проходит этап добавления новых функций (альфа-стадия/состояние), затем этап активной отладки (бета-стадия/состояние) и, наконец, этап, когда все важные ошибки устранены ( стабильная стадия/состояние).

Проработка модели выезда/заселения

[ редактировать ]

В этом разделе подробно описана модель синхронизации выезда/регистрации.

Диаграмма данных процесса

[ редактировать ]

Приведенная выше диаграмма данных процесса описывает различные концепции, применимые в модели синхронизации выезда/регистрации, и их связь с происходящими действиями. Центральным элементом модели метаданных (правая часть рисунка) является элемент конфигурации. Он хранится в одном или нескольких репозиториях и может представлять собой, например, файл исходного кода или набор других ЭК. Репозиторий может содержать несколько веток и ревизий файлов. Они, в свою очередь, состоят из элементов конфигурации.

Модель метапроцесса (левая часть рисунка) описывает процесс оформления и возврата товаров. Действия описаны в таблице действий ниже.

Активность Подвид деятельности Определение
Проверить Файлы не читаются и не изменяются непосредственно из репозитория. Проверка описывает эти действия.
Копируйте ЗДЕСЬ Из репозитория копируется определенная версия ЭК.
Блокировка CI Если требуется доступ для записи и если ЭК еще не заблокирован кем-то другим, ЭК блокируется. В противном случае ЭК не может быть записан обратно в репозиторий (доступ только для чтения).
Изменить ЭК Лицо, редактирующее ЭК, вносит в него изменения. Это выходит за рамки текущей метамодели управления версиями.
Регистрироваться CI необходимо поместить обратно в репозиторий. Регистрация описывает эти действия.
Выберите стратегию управления версиями Новый ЭК необходимо поместить обратно в репозиторий, используя стратегию управления версиями. Здесь описывается выбор стратегии, используемой для помещения ЭК обратно в репозиторий.
Создать ветку ЭК выбран в качестве начала новой ветки.
Создать редакцию ЭК выбран как ревизия другого ЭК.
Выберите состояние разработки Определено, что CI находится на определенном уровне развития.
Напишите IN CI хранится в репозитории.
Разблокировать CI CI разблокирован.

Фейлер (1991) оценил модель синхронизации выезда/регистрации. Его явное преимущество заключается в простоте использования и понимания. Однако эта простота приводит к отсутствию управления конфигурациями, такого как отслеживание версий продукта и проверка истории версий в нескольких логически связанных файлах.

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

Чтобы проиллюстрировать модель синхронизации выезда/регистрации, в этом разделе приведен пример того, как работает этот процесс. На рисунке ниже представлена ​​диаграмма перехода состояний CI.

При первом создании ЭК он модифицируется и сохраняется в репозитории. Когда кто-то запрашивает открытие CI, он сначала копируется на локальный компьютер разработчика (примечание: существуют системы, в которых редактирование происходит непосредственно в репозитории. Однако этап копирования представляет собой классический способ извлечения/возврата). Когда этот разработчик также хочет отредактировать ЭК, он запрашивает блокировку. Это можно сделать как непосредственно по запросу открытия КИ, так и через некоторое время после его чтения. Если ЭК еще не заблокирован, применяется блокировка, которую разработчик может изменить. После внесения изменений он сохраняется обратно в репозитории и разблокируется. Теперь предположим, что разработчик, о котором только что говорилось, находится в процессе редактирования ЭК, который уже находится в репозитории. Вы хотите открыть ЭК из репозитория, поэтому он копируется на ваш локальный диск. Вы начинаете читать его и обнаруживаете, что кое-что хотите изменить, поэтому просите отредактировать его. Однако CI уже заблокирован и вам придется дождаться его разблокировки или закрыть файл и перейти к другому.

См. также

[ редактировать ]
  • Црнкович И.; Аскланд, У.; Перссон-Дальквист, А. (2003), Внедрение и интеграция управления данными о продуктах и ​​управления конфигурацией программного обеспечения , Лондон: Artech House Publishers.
  • Фейлер, PH (1991), «Модели управления конфигурацией в коммерческих средах», Технический отчет CMU / SEI-91-TR-7 , Институт разработки программного обеспечения, Университет Карнеги-Меллон.
  • Ван де Верд, И. (2005), Техника метамоделирования - черновой вариант курса «Методная инженерия» 05/06.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 76a8b9e5b44abbb5750625310b70ea56__1690786680
URL1:https://arc.ask3.ru/arc/aa/76/56/76a8b9e5b44abbb5750625310b70ea56.html
Заголовок, (Title) документа по адресу, URL1:
Synchronization model - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)