- •Технологии программирования (определения, цели, дисциплины). Отличие от программной инженерии.
- •Основные этапы разработки (Российские и международные стандарты)
- •Жизненный цикл по. Процессы жц. Модели жц по. Их достоинства и недостатки.
- •Процессы жизненного цикла по
- •Модели жизненного цикла по [править]Водопадная (каскадная, последовательная) модель
- •Итерационная модель
- •Спиральная модель
- •Парадигмы программирования
- •4 Методы проектирования, управляемые структурами данных
Жизненный цикл по. Процессы жц. Модели жц по. Их достоинства и недостатки.
Жизненный цикл программного обеспечения (ПО) — период времени, который начинается с момента принятия решения о необходимости создания программного продукта и заканчивается в момент его полного изъятия из эксплуатации[1]. Этот цикл — процесс построения и развития ПО.
Процессы жизненного цикла по
Стандарт группирует различные виды деятельности, которые могут выполняться в течение жизненного цикла программных систем, в семь групп процессов. Каждый из процессов жизненного цикла в пределах этих групп описывается в терминах цели и желаемых выходов, списков действий и задач, которые необходимо выполнять для достижения этих результатов.
процессы соглашения — два процесса;
процессы организационного обеспечения проекта — пять процессов;
процессы проекта — семь процессов;
технические процессы — одиннадцать процессов;
процессы реализации программных средств — семь процессов;
процессы поддержки программных средств — восемь процессов;
процессы повторного применения программных средств — три процесса.
Каждый процесс включает ряд действий. Например, процесс приобретения охватывает следующие действия:
Инициирование приобретения
Подготовка заявочных предложений
Подготовка и корректировка договора
Надзор за деятельностью поставщика
Приемка и завершение работ
Каждое действие включает ряд задач. Например, подготовка заявочных предложений должна предусматривать:
Формирование требований к системе
Формирование списка программных продуктов
Установление условий и соглашений
Описание технических ограничений (среда функционирования системы и т. д.)
Модели жизненного цикла по [править]Водопадная (каскадная, последовательная) модель
Основная статья: Модель водопада
Водопадная модель жизненного цикла (англ. waterfall model) была предложена в 1970 г. Уинстоном Ройсом. Она предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. Требования, определенные на стадии формирования требований, строго документируются в виде технического задания и фиксируются на все время разработки проекта. Каждая стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.
Этапы проекта в соответствии с каскадной моделью:
Формирование требований;
Проектирование;
Реализация;
Тестирование;
Внедрение;
Эксплуатация и сопровождение.
Преимущества:
Полная и согласованная документация на каждом этапе;
Легко определить сроки и затраты на проект.
Недостатки:
В водопадной модели переход от одной фазы проекта к другой предполагает полную корректность результата (выхода) предыдущей фазы. Однако неточность какого-либо требования или некорректная его интерпретация в результате приводит к тому, что приходится «откатываться» к ранней фазе проекта и требуемая переработка не просто выбивает проектную команду из графика, но приводит часто к качественному росту затрат и, не исключено, к прекращению проекта в той форме, в которой он изначально задумывался. По мнению современных специалистов, основное заблуждение авторов водопадной модели состоит в предположениях, что проект проходит через весь процесс один раз, спроектированная архитектура хороша и проста в использовании, проект осуществления разумен, а ошибки в реализации легко устраняются по мере тестирования. Эта модель исходит из того, что все ошибки будут сосредоточены в реализации, а потому их устранение происходит равномерно во время тестирования компонентов и системы[2]. Таким образом, водопадная модель для крупных проектов мало реалистична и может быть эффективно использована только для создания небольших систем[3].
