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