Характеристики итеративного подхода



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

Выпуск версий

MSF рекомендует начинать разработку решения с построения, тестирования и внедрения его базовой функциональности. Затем к решению добавляются все новые и новые возможности. Такая стратегия именуется стратегией версионирования. Несмотря на то, что для малых проектов может быть достаточным выпуск одной версии, рекомендуется не упускать возможности создания для одного решения ряда версий. Рис. 7 показывает, как с созданием новых версий эволюционирует функциональность решения.

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

 

Рисунок 7. Версионирование

Создание “живой” документации

Итеративный подход к процессу разработки требует использования гибкого способа ведения документации. “Живые” документы (living documents) должны изменяться по мере эволюции проекта. Такой подход существенно отличается от принципов ведения документации в каскадной модели, где процесс разработки начинается лишь после того, как готовы и зафиксированы все требования и спецификации.

Документация проектов MSF, также как и программный код, разрабатывается итеративно. Зачастую, планы первоначально имеют форму описания высокоуровневых “подходов” (“approaches”). На фазе выработки концепции они распространяются среди членов проектной группы и других заинтересованных лиц для получения отзывов. После перехода к фазе планирования эти документы постепенно дорабатываются. Разработанные детальные планы снова поступают на проверку всем заинтересованным сторонам, и описанный процесс повторяется итеративно. Типы планов и общее количество описывающих их документов могут варьироваться от проекта к проекту.

Для избежания путаницы документы планов, разработка которых начинается на стадии выработки концепции, называются “подходами”. К примеру, подход к тестированию может быть кратко сформулирован во время фазы выработки концепции, а его превращение в план тестирования происходит на более поздних фазах.

Ранние базовые версии, отложенные итоговые версии

Создание базовых (предварительных) версий проектных документов на самых ранних этапах (baseline early) дает членам проектной группы возможность начать работу над своими задачами с минимальными задержками. Аналогично, отложенная на максимально долгий срок окончательная фиксация документов (freeze late) позволяет вносить в них жизненно важные изменения на протяжении всего этапа разработки. Но такая гибкость требует очень внимательного отношения к контролю за изменениями (tracking changes). Очень важно обеспечить их надлежащий мониторинг и исключить возможность несанкционированного изменения проектной документации.

Ежедневные билды

MSF рекомендует как можно чаще собирать текущие версии всех компонент решения для проведения тестирования и анализа. Этот подход применим как к разработке программного кода, так и к созданию компонент аппаратного и программного обеспечения. Его достоинство заключается в обеспечении стабильности решения на широком спектре тестовых данных еще до выхода решения в свет.

Большие, сложные проекты часто разделяются на меньшие подпроекты, каждый из которых разрабатывается и тестируется отдельной командой и затем вливается в общее решение. Для таких проектов, типичных в практике разработки продуктов Майкрософт, ежедневные билды (daily builds) являются фундаментальной, неотъемлемой составляющей рабочего процесса. В первую очередь разрабатывается базовая функциональность решения, и лишь затем создаются дополнительные его возможности. Разработка и тестирование ведутся непрерывно и одновременно, представляя собой параллельные процессы. Ежедневные билды служат верификацией совместимости всего разработанного программного кода и позволяют группам направлений продвигаться в своей работе к следующим итерациям разработки и тестирования.

Заметим, что ежедневные билды решения не попадают в реальную производственную среду. Лишь после того, как решение хорошо оттестировано и стабилизировано, осуществляется его пилотный (или бета) выпуск, частично устанавливаемый в производственную среду.

Для надлежащей синхронизации билдов необходимо иметь в проекте четко организованный механизм управления конфигурациями.


Дата добавления: 2019-01-14; просмотров: 167; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!