Вопрос 4.
Большая длительность полного цикла разработки:
заказчики/пользователи могут увидеть первые результаты очень поздно, только по завершении всего проекта, - и пожелать радикально изменить требования
требования конкурентного рынка заставляют максимально сокращать цикл
Модель, созданная в начале 70-х, абсолютизирует значение стадии проектирования "за столом": не учитывает ускорения цикла кодирование-отладка в эпоху персональных компьютеров
Психологическая причина: разрабатывать проектную документацию скучно
Спиральная модель жц
Функциональная
полнота
Каждый виток
спирали - цикл
разработки очередной версии по
каскадной схеме.
Функциональность
нара-щивается постепенно.
Первые результаты
быстро получаются
Сложность
увеличи-вается постепенно; удобно для
роста снизу вверх
Проще проектирование
(в частности, меньше моделирования)
Вопросы
5, 6.
ТЗ
Комплексная отладка/испытания
Проекти-
рование
Вер-сия
Время
Кодиро-вание
Автономная
отладка
Варианты спиральной модели:
А. Быстрое прототипирование
Прототип - макет, упрощенная версия будущего продукта для подтверждения его осуществимости (feasibilty). Упрощения: неполная функциональность и/или эффективность (например, прототип разрабатывается на неэффективном языке -SmallTalk, Prolog и пр.). Сейчас прототип, как правило, обязательный результат начальных стадий проекта, особенно в области мультимедиа.
Вопрос 6.
Инкрементальная (наращиваемая) разработка
Инкремент - полностью работоспособная версия, возможно, поступающая в эксплуатацию. Удобно для больших систем. Пример - ПО бортовой системы управления Shuttle: 7 инкрементов за 10 лет (IBM).
Модель процесса Microsoft Solutions Framework (см. Приложение 2.1) – комбинация вариантов А и В:
Основные понятия MSF:
Каждый этап (phase) завершается вехой (milestone) - событием, сопровождающимся появлением и фиксацией некоторого отчуждаемого материала (документа, программы, протокола).
Этап анализа завершается выпуском концепции проекта - набора документов, из которых основной - внешняя спецификация
Проектные (внутренние, функциональные) спецификации включают в себя проектные документы, модели, прототипы, программу и методику испытаний и сетевой график работ
Разработка = реализация
Стабилизация = тестирование
Выпуск (release) сопровождается подготовкой документации пользователей, готовой для тиражирования.
Число витков спирали различно для различных продуктов; оно планируется заранее и корректируется по промежуточным результатам. Длительность одного витка не превышает 6 месяцев.
Вопросы для обсуждения
В чем заключается сопровождение ПП ?
Приведите примеры непрерывных и дискретных технологических процессов в различных отраслях промышленности. В чем их достоинства и недостатки с точки зрения управляемости?
Одна из причин итераций разработки очевидна: это ошибка проектирования или кодирования. Назовите другие возможные причины.
Какие виды программных продуктов предпочтительно разрабатывать и вводить в действие по частям и какие – “выращивать из зародыша”?
Почему проектирование упрощается при спиральной модели ?
Какова должна быть минимальная функциональность у первого прототипа корпоративной информационной системы? Для программы численного моделирования физического процесса? Для графической библиотеки?