Ошибки можно легко обнаружить Когда во время инкрементной интеграции возникает
новая проблема, то очевидно, что к этому причастен новый класс. Либо его интерфейс с остальной
частью программы неправилен, либо его взаимодействие с ранее интегрированными классами
приводит к ошибке. В любом случае вы точно знаете, где искать проблему.
В таком проекте система раньше становится работоспособной Когда код
интегрирован и способен выполняться, даже если система еще не пригодна к использованию, это
выглядит так, будто это скоро произойдет. При инкрементной интеграции программисты раньше
видят результаты своей работы, поэтому их моральное состояние лучше, чем в том случае, когда
они подозревают, что их проект может никогда не сделать первый вдох.
Вы получаете улучшенный мониторинг состояния При частой интеграции реализованная
и нереализованная функциональность видна с первого взгляда. Менеджеры будут иметь лучшее
представление о состоянии проекта, видя, что 50% системы уже работает, а не слыша, что
кодирование «завершено на 99%».
Вы улучшите отношения с заказчиком Если частая интеграция влияет на моральное
состояние разработчиков, то она также оказывает влияние и на моральное состояние заказчика.
Клиенты любят видеть признаки прогресса, а инкрементная интеграция предоставляет им такую
возможность достаточно часто.
Системные модули тестируются гораздо полнее Интеграция начинается на ранних
стадиях проекта. Вы интегрируете каждый класс по мере его готовности, а не ожидая одного
внушительного мероприятия по интеграции в конце разработки. Программист тестирует классы в
обоих случаях, но в качестве элемента общей системы они используются гораздо чаще при
инкрементной, чем при поэтапной интеграции.
Вы можете создать систему за более короткое время Если интеграция тщательно
спланирована, вы можете проектировать одну часть системы в то время, когда другая часть уже
кодируется. Это не уменьшает общее число человеко-часов, требуемых для полного
проектирования и кодирования, но позволяет выполнять часть работ параллельно, что является
преимуществом в тех случаях, когда время имеет критическое значение.
При поэтапной интеграции вам не нужно планировать порядок создания компонентов
проекта. Все компоненты интегрируются одновременно, поэтому вы можете разрабатывать их в
любом порядке — главное, чтобы они все были готовы к часу X.
При инкрементной интеграции вы должны планировать более аккуратно. Большинство
систем требует интеграции некоторых компонентов перед интеграцией других. Так что
планирование интеграции влияет на планирование конструирования — порядок, в котором
конструируются компоненты, должен обеспечивать порядок, в котором они будут интегрироваться.
Достарыңызбен бөлісу: |