Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 637335)
Контекстум
Электро-2024

Разработка программного обеспечения: управление изменениями (2000,00 руб.)

0   0
Первый авторБелладжио
АвторыМиллиган Т.
ИздательствоМ.: ДМК Пресс
Страниц385
ID836705
АннотацияЭта книга об инженерной дисциплине, которая называется управлением конфигурацией программного обеспечения (software configuration management — SCM), а также о широко используемом продукте SCM — ClearCase, который автоматизирует и поддерживает практическое применение SCM посредством модели, называемой унифицированным управлением изменениями (Unified Change Management — UCM). Настоящая книга раскрывает базовые концепции, типичные проблемы SCM, возникающие по мере роста и усложнения программных систем, а также способы применения инструментов и процессов SCM для решения этих проблем. Также обсуждаются расширенные темы SCM, включая управление географически разделенными командами разработчиков, и сочетания SCM с управлением запросами на изменение (или отслеживанием дефектов).
ISBN978-5-89818-614-2
Белладжио, Д. Разработка программного обеспечения: управление изменениями / Т. Миллиган; Д. Белладжио .— Москва : ДМК Пресс, 2023 .— 385 с. — ISBN 978-5-89818-614-2 .— URL: https://rucont.ru/efd/836705 (дата обращения: 01.06.2024)

Предпросмотр (выдержки из произведения)

Разработка_программного_обеспечения_управление_изменениями.pdf
Стр.5
Стр.6
Стр.7
Стр.8
Стр.9
Стр.10
Стр.11
Стр.12
Стр.13
Стр.14
Стр.15
Разработка_программного_обеспечения_управление_изменениями.pdf
УДК 004.4 ББК 32.973.26-018.2 Б43 Б43 Белладжио, Дэвид. Разработка программного обеспечения: управление изменениями / Д. Белладжио, Т. Миллиган ; пер. с англ. Н. А. Мухина. — 2-е изд., эл. — 1 файл pdf : 385 с. — Москва : ДМК Пресс, 2023. — Систем. требования: Adobe Reader XI либо Adobe Digital Editions 4.5 ; экран 10". — Текст : электронный. ISBN 978-5-89818-614-2 Эта книга об инженерной дисциплине, которая называется управлением конфигурацией программного обеспечения (software configuration management — SCM), а также о широко используемом продукте SCM — ClearCase, который автоматизирует и поддерживает практическое применение SCM посредством модели, называемой унифицированным управлением изменениями (Unified Change Management — UCM). Настоящая книга раскрывает базовые концепции, типичные проблемы SCM, возникающие по мере роста и усложнения программных систем, а также способы применения инструментов и процессов SCM для решения этих проблем. Также обсуждаются расширенные темы SCM, включая управление географически разделенными командами разработчиков, и сочетания SCM с управлением запросами на изменение (или отслеживанием дефектов). УДК 004.4 ББК 32.973.26-018.2 Электронное издание на основе печатного издания: Разработка программного обеспечения: управление изменениями / Д. Белладжио, Т. Миллиган ; пер. с англ. Н. А. Мухина. — Москва : ДМК Пресс, 2016. — 384 с. — ISBN 978-5-97060-341-3. — Текст : непосредственный. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации. ISBN 978-5-89818-614-2 © by International Business Machines Corporation. © Перевод на русский язык, оформление, издание, ДМК Пресс
Стр.5
Содержание Благодарности ........................................................................... 15 Похвалы второй редакции SCM и IBM® Rational® ClearCase®: Практическое представление......................... 16 Об авторах................................................................................... 17 Дэвид Белладжио (David E. Bellagio) .......................................... 17 Том Миллиган (Tom J. Milligan) ................................................... 17 Предисловие ко второму изданию ........................................ 19 О чем эта книга ............................................................................. 19 Что необходимо знать, прежде чем приступить к чтению этой книги ..................................................................................... 20 Кто вы и почему вам нужно прочесть эту книгу ......................... 20 Для разработчика программного обеспечения........................ 20 Для менеджера программного проекта или технического руководителя ........................................................................... 21 Для специалиста по инструментальным средствам ................. 21 Для тех, кто оценивает возможности ClearCase....................... 21 Для опытных пользователей ClearCase .................................... 22 Как организована эта книга ........................................................ 22 Используемые соглашения ......................................................... 24 Команды и примечания, предупреждения и подсказки ............ 24 Формат диаграмм UML ............................................................ 25 Глава 1 Что такое управление конфигурацией программного обеспечения? .................................................. 27 1.1 Практика применения SCM .................................................. 29 1.1.1 Идентификация и хранение рабочих продуктов в защищенном репозитории ......................................... 30
Стр.6
6 Разработка программного обеспечения: управление изменениями 1.1.2 Контроль и аудит изменений рабочих продуктов .......... 31 1.1.3 Организация версий рабочих продуктов в версии компонентов ................................................... 31 1.1.4 Организация версий компонентов и подсистем в новые версии подсистем ............................................ 33 1.1.5 Создание базовых линий в контрольных точках проекта ......................................................................... 33 1.1.6 Запись и отслеживание запросов на изменение ........... 35 1.1.7 Организация и интеграция согласованных наборов версий посредством видов деятельности ..................... 35 1.1.8 Сопровождение стабильных и согласованных рабочих пространств .................................................... 38 1.1.9 Поддержка параллельных изменений в рабочих продуктах и компонентах .............................................. 38 1.1.10 Раннее начало интеграции системы и частое ее повторение ............................................................... 39 1.1.11 Обеспечение воспроизводимости сборок программного обеспечения .......................................... 40 1.2 Инструменты SCM и процесс SCM ...................................... 40 1.2.1 Инструменты SCM ........................................................ 40 1.2.2 Процесс SCM ................................................................ 41 1.3 Итоги .............................................................................. 41 Глава 2 Применение решений SCM ..................................................... 42 2.1 Как справиться с изменениями требований в проекте ..... 42 2.1.1 Возрастание сложности разрабатываемой программной системы .................................................. 44 2.1.2 Возрастание сложности среды разработки проекта ..... 46 2.1.3 Изменение фазы жизненного цикла.............................. 47 2.1.4 Изменение процессов и персонала .............................. 48 2.2 Эволюция инструментов SCM.............................................. 50 2.2.1 Пять категорий проектных команд ................................ 52 2.2.2 Что делать при отсутствии инструментов SCM ............. 54 2.2.3 Ранняя поддержка инструментов SCM.......................... 59 2.2.4 Поддержка современных инструментов SCM ............... 65 2.2.5 Расширенная поддержка инструментов SCM ............... 75 2.3 Итоги ....................................................................................... 77
Стр.7
Содержание 7 Глава 3 Обзор модели унифицированного управления изменениями (UCM).................................................................. 78 3.1 Что такое UCM? ..................................................................... 78 3.2 Значение UCM ....................................................................... 79 3.2.1 Абстракция ................................................................... 80 3.2.2 Стабильность ................................................................ 80 3.2.3 Контроль ....................................................................... 81 3.2.4 Коммуникации .............................................................. 81 3.3 Что такое ClearCase? ............................................................. 82 3.3.1 Модель UCM ClearCase ................................................. 82 3.3.2 Модель UCM «Базовая линия + Изменение» ................. 83 3.4 Что такое ClearQuest? ........................................................... 86 3.5 Обзор процесса UCM ClearCase .......................................... 86 3.5.1 Архитектор .................................................................... 88 3.5.2 Менеджер по управлению конфигурацией.................... 88 3.5.3 Менеджер проекта ........................................................ 88 3.5.4 Разработчик .................................................................. 89 3.5.5 Интегратор ................................................................... 89 3.6 Архитектор: определение модели реализации .................. 89 3.6.1 Компоненты ClearCase .................................................. 91 3.6.2 Компоненты в унифицированном языке моделирования .. 92 3.7 Менеджер по управлению конфигурацией: настройка среды SCM ........................................................... 93 3.8 Менеджер проекта: управление проектом ......................... 94 3.9 Разработчик: подключение к проекту и разработка .......... 96 3.10 Интегратор: интеграция, сборка и выпуск версии............ 98 3.10.1 Выпуск компонента ....................................................... 98 3.10.2 Интеграция системы ..................................................... 99 3.10.3 Выпуск систем и подсистем .......................................... 99 3.11 Итоги ................................................................................... 100 Глава 4 Функциональный обзор объектов ClearCase..................... 101 4.1 Репозиторий: база версионных объектов ......................... 101 4.2 Рабочие пространства: снимки и динамические представления ..................................................................... 103
Стр.8
8 Разработка программного обеспечения: управление изменениями 4.2.1 Представленияснимки............................................... 104 4.2.2 Webпредставления .................................................... 106 4.2.3 Динамические представления .................................... 106 4.2.4 Различия между снимками и динамическими представлениями........................................................ 109 4.3 Управление проектами: проекты, потоки и деятельности .................................................................... 110 4.3.1 Проекты ...................................................................... 110 4.3.2 Потоки ........................................................................ 111 4.3.3 Деятельности .............................................................. 116 4.4 Версионные объекты: элементы, ветви и версии ............ 119 4.4.1 Версионность директориев ........................................ 121 4.4.2 Типы элементов .......................................................... 122 4.5 Управление компонентами: компоненты и базовые линии .................................................................................... 124 4.5.1 Компоненты ................................................................ 124 4.5.2 Базовые линии ............................................................ 124 4.6 Процессы: метки, атрибуты, гиперссылки, триггеры ...... 130 4.6.1 Метки .......................................................................... 130 4.6.2 Атрибуты ..................................................................... 131 4.6.3 Гиперссылки ............................................................... 131 4.6.4 Триггеры ..................................................................... 132 4.6.5 Создание и управление типами .................................. 132 4.7 Сборка: Clearmake, порожденные объекты, конфигурационные записи ................................................. 133 4.7.1 Аудит сборок ............................................................... 134 4.7.2 Разделение объектов .................................................. 134 4.7.3 Параллельные и распределенные сборки ................... 135 4.7.4 Clearmake против классического Make ....................... 135 4.8 Итоги..................................................................................... 136 Глава 5 Установка начальной среды SCM ........................................ 137 5.1 Основы архитектуры ClearCase.......................................... 137 5.1.1 Сервер лицензий и сервер регистрации ..................... 138 5.1.2 Сервер VOB и сервер представлений ......................... 139 5.1.3 Сервер ALBD и клиентские процессы.......................... 141 5.1.4 Многоверсионная файловая система ......................... 142
Стр.9
Содержание 5.1.5 Пример аппаратной конфигурации ............................. 143 9 5.2 Требования ClearCase к аппаратным ресурсам ............... 145 5.2.1 Требования к памяти................................................... 147 5.2.2 Требования к дисковому вводу/выводу ...................... 148 5.2.3 Пропускная способность и надежность сети ............... 148 5.2.4 Центральный процессор ............................................. 149 5.2.5 Прочие требования ..................................................... 149 5.2.6 Ограничения числа пользователей, VOB и представлений ......................................................... 152 5.2.7 Соображения о размере VOB ...................................... 152 5.3 Мониторинг и настройка производительности ClearCase .............................................................................. 153 5.3.1 Измерения на низшем уровне..................................... 156 5.3.2 Измерения на среднем уровне ................................... 157 5.3.3 Измерение на верхнем уровне .................................... 158 5.4 Определение модели реализации..................................... 159 5.5 Создание репозиториев VOB ............................................. 160 5.5.1 Создание PVOB в интерфейсе командной строки ....... 160 5.5.2 Создание PVOB в графическом интерфейсе пользователя .............................................................. 161 5.5.3 Использование VOB администратора ......................... 162 5.5.4 Использование более одного PVOB ............................ 164 5.5.5 Создание VOB’ов и компонентов в интерфейсе командной строки ....................................................... 164 5.5.6 Создание VOB’ов и компонентов в графическом интерфейсе пользователя .......................................... 166 5.5.7 Импорт существующего кода ...................................... 168 5.6 Уровни продвижения базовых линий ................................ 169 5.7 Итоги..................................................................................... 171 Глава 6 Управление проектами в ClearCase .................................... 172 6.1 Что такое проект ClearCase? .............................................. 172 6.1.1 Кто проводит изменения? ........................................... 172 6.1.2 Что изменяется? ......................................................... 174 6.1.3 Как выполняются изменения? ..................................... 174 6.1.4 Как формируется и интегрируется поток изменений? ... 174 6.2 Создание проекта ClearCase .............................................. 175
Стр.10
10 Разработка программного обеспечения: управление изменениями 6.2.1 Идентификация менеджера проекта ........................... 175 6.2.2 Идентификация компонентов и базовых линий........... 176 6.2.3 Определение правил вашего проекта ......................... 176 6.2.4 Определение свойств вашего проекта UCM ............... 184 6.2.5 Выбор местонахождения вашего проекта ................... 190 6.2.6 Создание вашего проекта ........................................... 190 6.3 Итоги..................................................................................... 195 Глава 7 Управление и организация проектов ClearCase ............... 197 7.1 Координация множества параллельных версий .............. 197 7.1.1 Проектдоработка ....................................................... 198 7.1.2 Проект главной линии ................................................. 198 7.1.3 Завершение проекта ................................................... 199 7.1.4 Создание проекта ....................................................... 200 7.1.5 Множественные параллельные проекты ..................... 201 7.2 Организация масштабной многопроектной разработки .... 202 7.2.1 Архитектурно ориентированные команды разработчиков ............................................................ 202 7.2.2 Функционально ориентированные команды разработчиков ............................................................ 206 7.3 Координация взаимодействующих проектов: независимые компоненты .................................................. 208 7.3.1 Создание проекта ....................................................... 208 7.3.2 Планирование итераций ............................................. 208 7.3.3 Интеграция ................................................................. 210 7.4 Координация взаимодействующих проектов: совместно используемые компоненты ............................. 211 7.4.1 Создание проекта ....................................................... 211 7.4.2 Планирование итераций ............................................. 212 7.4.3 Интеграция ................................................................. 213 7.5 Координация проектов разработки IT/IS .......................... 213 7.5.1 Выбор функций, над которыми нужно работать .......... 216 7.5.2 Реализация процесса утверждения ............................ 216 7.5.3 Срочное исправление ошибок .................................... 217 7.5.4 Планирование главной версии.................................... 217 7.6 Координация проектов документации или малых команд.... 218 7.6.1 Создание проекта ....................................................... 219 7.6.2 Подключение к проекту ............................................... 220
Стр.11
Содержание 11 7.6.3 Доставка изменений ................................................... 220 7.6.4 Обновление рабочего пространства ........................... 221 7.6.5 Создание базовых линий ............................................ 221 7.7 Итоги..................................................................................... 221 Глава 8 Разработка с применением модели UCM ClearCase ....... 222 8.1 Взгляд разработчика на UCM ............................................. 222 8.2 Работа с проектом............................................................... 223 8.3 Внесение изменений .......................................................... 227 8.3.1 Работа с деятельностями ............................................ 227 8.3.2 Модификация файлов и директориев ......................... 229 8.3.3 Работа из командной строки ....................................... 231 8.4 Доставка изменений в проект ............................................ 232 8.4.1 Checkin всех элементов, полученных checkout ......... 232 8.4.2 Смена базы от последних рекомендованных базовых линий проекта ............................................... 234 8.4.3 Запуск команды ClearCase Deliver ............................... 234 8.4.4 Сборка и тестирование доставки ................................ 236 8.4.5 Завершение или отмена доставки .............................. 237 8.5 Смена базы потока разработки ......................................... 237 8.5.1 Запуск операции Rebase ............................................. 238 8.5.2 Сборка и тестирование ............................................... 239 8.5.3 Завершение или отмена смены базы .......................... 240 8.6 Обработка конфликтующих изменений ............................ 240 8.6.1 Сценарий доставки 1 (конфликтов нет) ....................... 240 8.6.2 Сценарий доставки 2 (конфликтов нет) ....................... 241 8.6.3 Сценарий доставки 3 (с конфликтами) ........................ 241 8.6.4 Сценарий смены базы 1 (без конфликтов) .................. 242 8.6.5 Сценарий смены базы 2 (с конфликтами) ................... 243 8.6.6 Инструменты слияния ClearCase ................................. 243 8.7 Бесшовная интеграция в IDE разработчика ...................... 245 8.8 Итоги..................................................................................... 247 Глава 9 Интеграция................................................................................ 250 9.1 Интеграция программного обеспечения .......................... 251 9.1.1 Интеграция слиянием ................................................. 251
Стр.12
12 Разработка программного обеспечения: управление изменениями 9.1.2 Интеграция сборкой ................................................... 251 9.1.3 Сценарии интеграции для команд разного размера ... 252 9.2 Изоляция и интеграция с ClearCase .................................. 254 9.2.1 Разделяемое представление: никакой изоляции ........ 256 9.2.2 Разработка «ветвь/ПОСЛЕДНЯЯ»: максимизация интеграции ................................................................. 257 9.2.3 Применение ветвей для изоляции и интеграции ......... 261 9.2.4 Интеграция с UCM ...................................................... 265 9.3 Итоги..................................................................................... 279 Глава 10 Построение, создание базовых линий и развертывание версий........................................................ 280 10.1 Создание базовых линий и сборка с UCM ....................... 281 10.1.1 Блокировка потока интеграции ................................... 282 10.1.2 Создание базовых линий программных компонентов .... 283 10.1.3 Сборка программных компонентов ............................. 286 10.1.4 Выполнение поверхностных тестов ............................ 287 10.1.5 Использование стабилизационных сборочных потоков ....................................................................... 287 10.1.6 Продвижение и рекомендация базовых линий программных компонентов ......................................... 288 10.1.7 Разблокирование потока интеграции ......................... 292 10.1.8 Автоматизация ночного процесса сборки ................... 293 10.2 Установка, развертывание и выпуск ................................ 293 10.2.1 Устанавливаемые компоненты.................................... 295 10.2.2 Применение сборочного проекта для развертывания версий ......................................... 295 10.2.3 Моделирование стадий развертывания версии с помощью потоков ..................................................... 297 10.2.4 Роль ClearQuest в развертывании ............................... 298 10.3 Итоги ................................................................................... 305 Глава 11 Географически распределенная разработка ................... 306 11.1 Проблемы распределенной разработки.......................... 307 11.1.1 Организация ............................................................... 307
Стр.13
Содержание 13 11.1.2 Коммуникации ............................................................ 308 11.1.3 Технология .................................................................. 308 11.2 Как ClearCase поддерживает распределенную разработку ........................................................................... 311 11.2.1 Удаленный терминальный, или настольный, доступ ... 311 11.2.2 Удаленный клиентский доступ .................................... 312 11.2.3 Webдоступ ................................................................. 313 11.2.4 Автономная работа ..................................................... 314 11.2.5 Локальный доступ ....................................................... 314 11.2.6 Что такое ClearCase Remote Client (CCRC)? ................ 315 11.2.7 Что такое ClearCase MultiSite? ..................................... 317 11.2.8 Что такое ClearQuest MultiSite?.................................... 319 11.2.9 Совместное использование ClearCase MultiSite и ClearQuest MultiSite .................................................. 321 11.3 Множество команд: сценарий «поставщик/потребитель» .................................................. 323 11.3.1 Поддержка команд поставщиков/потребителей ......... 326 11.3.2 Как UCM поддерживает модель «Поставщик/потребитель» .......................................... 326 11.3.3 Как базовый ClearCase поддерживает модель «Поставщик/потребитель» .......................................... 327 11.3.4 Итоги о модели «поставщик/потребитель» ................. 329 11.4 Множество команд: cценарий с совместно используемым кодом .......................................................... 329 11.4.1 Как UCM поддерживает разделяемый исходный код .. 332 11.4.2 Как базовый ClearCase поддерживает разделяемый исходный код .............................................................. 333 11.4.3 Итоги по разделяемому коду ...................................... 334 11.5 Единая команда: сценарий с распределенными членами .. 334 11.5.1 Как модель UCM поддерживает локальный доступ ..... 335 11.5.2 Как базовый ClearCase поддерживает локальное использование ............................................................ 336 11.5.3 Ветвление по деятельности ........................................ 339 11.5.4 Единая команда: итоги по работе с распределенными членами ...................................................................... 341 11.6 Другие применения ClearCase MultiSite ........................... 341 11.6.1 MultiSite для резервного копирования ........................ 341 11.6.2 MultiSite для доставки ................................................. 341 11.6.3 MultiSite для межплатформенного взаимодействия.... 342 11.7 Итоги ................................................................................... 342
Стр.14
14 Разработка программного обеспечения: управление изменениями Глава 12 Управление запросами на изменение и ClearQuest ........ 343 12.1 Что такое управление запросами на изменение?........... 343 12.2 Что такое запросы на изменение? ................................... 344 12.3 Процесс управления запросами на изменение .............. 345 12.3.1 Регистрация ................................................................ 346 12.3.2 Оценка ........................................................................ 346 12.3.3 Решение ..................................................................... 347 12.3.4 Реализация ................................................................. 348 12.3.5 Верификация .............................................................. 348 12.3.6 Завершение ................................................................ 349 12.4 Что такое ClearQuest? ........................................................ 349 12.5 Как использовать данные ClearQuest? ............................. 351 12.5.1 Запросы ...................................................................... 353 12.5.2 Отчеты ........................................................................ 354 12.5.3 Графики ...................................................................... 356 12.6 Как ClearQuest поддерживает UCM .................................. 359 12.7 ClearQuest MultiSite ............................................................ 361 12.8 Итоги ................................................................................... 361 Приложение A Повторное проведение и отмена наборов изменений с UCM .................................................................... 363 A.1 Нахождение скрипта ........................................................... 363 A.2 Ограничьте применение скрипта только от имени роли Integrator ............................................................................... 364 A.3 Интерфейс скрипта ............................................................. 364 A.4 В чем его польза? ................................................................ 364 A.5 Повторное проведение деятельности в другом потоке... 365 В чем его польза? .................................................................. 365 A.6 Отмена доставки или деятельности .................................. 367 Глоссарий.................................................................................. 368 Список литературы .................................................................... 382
Стр.15

Облако ключевых слов *


* - вычисляется автоматически
Периодика по подписке
Антиплагиат система Руконтекст