3. Решение задачи предполагает предшествующее использованию инструмента удовлетворение набора требований, без которых инструмент не будет эффективен или не будет работать
12. Классификация инструментов управления конфигурациями В область интересов управления конфигурациями попадают следующие процессы: Контроль версий (version control) Юнит-тестирование Анализ покрытия кода Непрерывная интеграция (continuous integration) Статический анализ кода Генерация документации Управление сборками (build management)
15. Большинство разработчиков знакомы с CVS,Subversionили VSS; популярность приобретают распределенные системы контроля версий: git, mercurial, bazaar
16. Обычно разработчики не задумываются о продуманной организации репозитория. Subversion предлагает простейшее решение, которое используется чаще всего: деление на trunk, branches и tags.
17. Одна из самых больших головных болей разработчиков – слияние. Без слияний жизнь проще.
30. Использование юнит-тестирования в программных проектах, написанных на интерпретируемых языках программирования (PHP, в частности) определяет кроме необходимости управления сборками также и нужду в более основательном подходе к управлению конфигурациями.
32. При принятии решения о применении юнит-тестов обычно принимается во внимание архитектурная и логическая целостность проекта, которую нужно поддерживать на достаточном уровне.
33. Хоть это и неочевидно, но принятие решения о использовании юнит-тестирования автоматически подразумевает введение ряда дополнительных процессов связанных с организацией разработки.7
36. Кроме выявления синтаксических и логических ошибок в коде часто необходимо в автоматическом режиме проводить верификацию на соответствие code conventions
37. Иногда статический анализ может производиться для сбора метрик исходного кода и составления соответствующей отчетности
45. Полезной особенностью представляется возможность интеграции сгенерированной документации с системой tracпосредством соответствующих плагинов: DoxygenPluginи PhpdocPlugin9
48. Исходный код и всё необходимое для сборки сохраняется либо в репозитории исходного кода, либо в легкодоступном месте;
49. Операции копирования из репозитория, сборки и тестирования всего проекта автоматизированы и легко вызываются из внешней программы
50. При наличии этапа развертывания включенного в процесс сборки непрерывная интеграция может быть приспособлена к обеспечению команды тестировщиков работающей и готовой к тестированию копии приложения
51.
52. SQL-приложение имеет свою специфику. Часто его можно рассматривать как приложение в приложении и выделять в отдельный проект, подлежащий версионированию.
53. Выделяют два типа идентификационных элементов, использующихся при версионировании баз данных: DML (Database Manipulation Language) и DDL (Database Definition Language)
66. Конфигурационные элементы Исходный код Библиотеки (бинарные файлы) Конфигурационные файлы Документация Файлы ресурсов (изображения, иконки) Структура БД Данные и словари данных Тесты (юнит-тесты) Исполняемые файлы и инсталляционные пакеты
67. Элементы идентификации 15 Сборки Типы сборок Релизы Типы релизов Платформы Компоненты (third-party) Экспериментальные разработки
68.
69. A – альфа (тестирование производится тестировщиками)
84. Детализация процесса интеграции Условные обозначения Директория сборки в репозитории исходного кода Проверкаслужбойнепрерывнойинтеграцииизменений в директориисборокрепозиторияисходногокода и инициированиепроцессасборки Процесс выполнения сборки CI служба Детализацияпроцессаинтеграции Процесс сборки Загрузка исходногокодаизрепозитория Репозиторий Файловаясистема Файловаясистема Определениепараметровсборки Развертывание результатов сборки Выполнениеинтеграциибазыданных Production-сервер 27