Концепция: Интеграция программного обеспечения
В этом разделе приведено описание распространенных подходов к интеграции компонентов программного обеспечения в готовую систему.
Взаимосвязи
Связанные элементы
Основное описание

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

  • Интеграция результатов работы коллектива в единую подсистему перед передачей подсистемы интеграторам системы.
  • Интеграция подсистем в конечную систему.

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

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

Преимущества пошаговой интеграции:

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

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