Изделие (версия) снято с производства.
Завершение этапа окончания работ: прекращение сопровождения и сворачивание деятельности по поддержке версии или всех версий. После получения извещения о прекращении поддержки изделия (версии) некоторые пользователи, возможно, захотят отложить (на определенный или неопределенный срок) наступление данного события. Если они в состоянии финансировать поддержку, сопровождение и, возможно, развитие изделия, то срок окончания работ передвигается. Это обычная процедура, благодаря которой продолжают жить и даже совершенствоваться устаревающие системы. Классический пример тому — уникальное долгожительство языка Fortran.
Этап окончания работ мог бы быть представлен во всех традиционных моделях, но в то время, когда эти модели разрабатывались, ему не придавали особого значения. Вместе с тем, когда речь идет о совместной поддержке нескольких версий (а именно такая ситуация типична для объектно-ориентированного проектирования), окончание работ игнорировать нельзя.
Одним из существенных моментов адаптивных методологий, который учитывается и при обычном объектно-ориентированном проектировании, является отказ от традиционного постулата о том, что все требования к системе сформулированы заранее. Как указывает М. Фаулер [24], предсказать направление целесообразного развития программного проекта чаще всего невозможно, а потому следует строить адаптивные процессы разработки, что применительно к моделированию жизненного цикла вообще и его фазы завершения в частности означает необходимость учета обработки потока внешних требований на всех этапах. Этому вопросу еще будет уделено внимание, а пока можно считать (как чаще всего и бывает), что требования, поступающие на фазе завершения итерации, рассматриваются как относящиеся к следующим итерациям, т.е. к следующимверсиям системы. В таком случае завершение итерации означает сопровождение программного изделия, а затем — окончание работы с данной версией. Пожелания к развитию проекта в этот период учитываются как требования к последующим (возможно, еще не начатым) итерациям. Окончание проекта рассматривается как отказ от сопровождения всех версий системы. Поучительно сопоставить это положение с традиционными подходами к проектированию, когда учет пожеланий к системе в процессе ее эксплуатации чаще всего означает одно: организацию нового проекта (быть может, специального), цель которого — учет новых требований.
Несколько слов о функциональном измерении в модифицированной для объектно-ориентированного подхода матрице фазы—функции. Как было показано выше, целесообразно список технологических функций расширить за счет моделирования. Соответственно, следует определить в матрице Гантера строку интенсивностей для этой функции. В предположении о сохранении распределения интенсивностей других функций (см. рис. 8.2) распределение интенсивности для модифицированной модели жизненного цикла можно задать так, как это сделано на рис. 9.2. На рисунке показан новый вид модели целиком (указаны номера контрольных точек жизненного цикла без пояснений).
Представленные распределения интенсивностей нельзя абсолютизировать. Наивно было бы предполагать стабильность интенсивностей технологических функций по итерациям. Следовательно, весь цикл развития проекта в матричном, двумерном представлении модифицированной гантеровской модели изобразить не удастся: оно не может показать изменение интенсивностей технологических функций при переходе от одной итерации к другой. По этой причине предлагается распределение интенсивностей технологических функций рассматривать как «среднестатистическую» интегральную по итерациям тенденцию. Практическая полезность рассмотрения функционального измерения — не в конкретном распределении интенсивностей технологических функций в реальных проектах, а в том, что оно заставляет руководство проекта думать о расстановке сил в коллективе разработчиков и вообще о правильном распределении кадровых и других ресурсов проекта.
Вариант 1
Объектно-ориентированное проектирование отличается от традиционных подходов тем, что:
□ используется итеративность развития, и функциональность
наращивается в соответствии со сценариями
□ используются традиционные этапы, которые повторяются при
переходе от итерации к итерации
□ в этих подходах предусматриваются различные виды сценариев
□ используются сценарии как основа распределения требований
по итерациям
□ используются модели разных уровней
Что означает критерий системной значимости?
□ оценка сценария как необходимого элемента системы, без которого не сможет выполняться большая часть функций
□ оценка сценария с позиций его полезности с точки зрения потребности развития проекта, внутренней по отношению к решаемым пользовательским задачам
П оценка сценария с точки зрения реализации для него системных средств: заготовок широкого применения, базовых и инструментальных компонентов для других, предоставляемых средств системы
□ оценка сценария с точки зрения необходимости реализации
для него количества поддерживающих системных средств
□ оценка сценария с точки зрения его эффективности для удовлетворения пользовательских потребностей
Главные менеджерские обязанности в проекте в контрольной точке "Спецификации реализуемых сценариев составлены» — это:
□ распределение работ в коллективе для реализации выбранных
сценариев
□ распределение финансов с целью выделения их для реализации каждого из выбранных сценариев
□ инвентаризация ресурсов и выяснение, хватает ли ресурсов
для реализации выбранных сценариев
□ оформление подготовленных к реализации сценариев для их
утверждения
□ подбор кадров для выполнения реализации выбранных сценариев
Вариант 2
1. Критерии отбора сценариев для реализации — это:
□ описание предпочтений разработчиков для выбора реализуемых на итерации сценариев
□ способ упорядочить предварительно отобранные для реализации сценарии по степени их важности с той или иной точки
зрения
□ определение свойств сценариев, которые упорядочивают предварительно отобранные сценарии для реализации по степени
их важности
□ предпочтение одного сценария другим с той или иной точки
зрения
□ показатели предпочтения разработчиков и заказчиков, по которым оцениваются предварительно отобранные для реализации сценарии
2. Что означает критерий демонстрационной значимости?
□ оценка сценария с позиций возможности показать различные
выигрышные качества проекта и деятельности разработчиков
по его реализации
□ оценка интерфейсных возможностей сценария
□ оценка сценария как демонстрирующего возможности, наиболее значимые для автоматизируемой деятельности
□ оценка сценария как демонстрирующего надежность выполнения проекта в данных условиях
□ то же, что критерий актуальности для пользователя
3. Пополнение базового окружения проекта — это:
□ процедура оформления компонента программного обеспечения, который объявляется как переиспользуемый
□ включение программного компонента в депозитарий проекта
Q этап жизненного цикла, вложенный в этап оценки, в ходе которого выделяются общие либо для данного проекта, либо более универсальные компоненты, оформляемые как переиспользуемые
□ процесс создания компонента программного обеспечения, для
которого планируется переиспользование
□ организация процесса включения программного компонента в
депозитарий проекта
Вариант 3
1. Ближайшая задача проекта — это:
□ набор сценариев, назначенных к реализации в текушей итерации, и проектных условий и ограничений, которым реализация должна удовлетворять
□ задача текущей итерации
□ набор функций, реализуемых в текущей итерации, и ограничения, которым реализация должна удовлетворять
□ подготовка и выполнение очередной итерации
П задача текущей итерации, решаемая в проекте с целью предложения пользователю полученных результатов в качестве продукта, которая задана как набор конкретных реализуемых требований
2. Различия между критерием и ограничением с точки зрения задачи отбора сценариев для реализации состоят в
том, что:
□ критерии служат для упорядочения сценариев по степени
предпочтения для выбора, тогда как ограничения задают условия, нарушение которых запрещает выбор
□ критерии фиксируют показатели актуальности, полноты, системной и демонстрационной значимости, а также скорости раз
работки, тогда как ограничения задают все остальные параметры
□ это, по сути, одно и то же
□ критерии оценивают сценарии с разных точек зрения, а ограничения оценивают условия, создаваемые для реализации
3. Расщепление линии жизненного цикла при итеративном
наращивании приводит:
□ к появлению и одновременному существованию двух версий
системы: одна из них начинает использоваться, а вторая создается в виде набора требований
□ к приостановке выполнения текущей итерации и организации
работ над новой итерацией с целью реализации дополнительной функциональности версии системы
□ к приостановке выполнения текущей итерации и организации
работ над новой итерацией с целью исправления обнаруженных ошибок в версии системы
□ к появлению работоспособной версии системы, функциональные возможности которой наращиваются путем реализации
дополнительного набора требований