Главная страница
Навигация по странице:

  • Основные понятия Жизненный цикл программного обеспечения

  • Модель жизненного цикла программного обеспечения

  • Стандарты жизненного цикла ПО

  • Инкрементная модель Инкрементная модель

  • Спиральная модель Спиральная модель

  • Жизненный цикл похож на приведенный ниже рисунок: Плюсы и минусы Плюсы: Быстрый выпуск минимального продукта

  • V модель (разработка через тестирование)

  • Заключение Сегодня мы рассмотрели модели жизненного цикла ПО и определили минусы и плюсы в каждой из них. Спасибо за внимание!

  • Жизненный цикл ПО. Жизненный цикл программного обеспечения. Студент Румянцев антон Преподаватель Гульшат дамировна


    Скачать 0.78 Mb.
    НазваниеСтудент Румянцев антон Преподаватель Гульшат дамировна
    АнкорЖизненный цикл ПО
    Дата30.04.2022
    Размер0.78 Mb.
    Формат файлаpptx
    Имя файлаЖизненный цикл программного обеспечения.pptx
    ТипДокументы
    #505221
    Студент: Румянцев антон
    Преподаватель: Гульшат дамировна
    Соддержание

    Основные понятия
    Стандарты жизненного цикла
    Модели жизненного цикла
    Заключение

    Основные понятия

    Жизненный цикл программного обеспечения — ряд событий, происходящих с системой в процессе ее создания и дальнейшего использования. Говоря другими словами, это время от начального момента создания какого либо программного продукта, до конца его разработки и внедрения. Жизненный цикл программного обеспечения можно представить в виде моделей.
    Модель жизненного цикла программного обеспечения — структура, содержащая процессы действия и задачи, которые осуществляются в ходе разработки, использования и сопровождения программного продукта. Эти модели можно разделить на 3 основных группы:
    Инженерный подход
    С учетом специфики задачи
    Современные технологии быстрой разработки

    Стандарты жизненного цикла ПО

    ГОСТ 34.601-90
    ISO/IEC 15288:2015 Systems and software engineering — System life cycle processes
    ISO/IEC/IEEE 12207:2017 System and software engineering — Software life cycle processes

    Основные модели ЖЦ ПО

    Каскадная модель
    Инкрементная модель
    Спиральная модель
    Итеративаная модель
    V-образная модель

    Каскадная модель

    Каскадная модель (англ. waterfall model) — модель процесса разработки программного обеспечения, жизненный цикл которой выглядит как поток, последовательно проходящий фазы анализа требований, проектирования. реализации, тестирования, интеграции и поддержки.

    Плюсы и минусы

    Плюсы:
    стабильность требований  в течение всего жизненного цикла разработки;
    на каждой стадии формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;
    определенность и понятность шагов модели и простота её применения;
    выполняемые в логической последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие ресурсы (денежные. материальные и людские).
    Минусы:
    сложность чёткого формулирования требований и невозможность их динамического изменения на протяжении пока идет полный жизненный цикл;
    последовательность линейной структуры процесса разработки, в результате возврат к предыдущим шагам для решения возникающих проблем приводит к увеличению затрат и нарушению графика работ;
    невозможность гибкого моделирования уникальных систем;
    позднее обнаружение проблем, связанных со сборкой, в связи с одновременной интеграцией всех результатов в конце разработки;
    недостаточное участие пользователя в создании системы — в самом начале (при разработке требований) и в конце (во время приёмочных испытаний);
    пользователи не могут убедиться в качестве разрабатываемого продукта до окончания всего процесса разработки. у пользователя нет возможности постепенно привыкнуть к системе. Процесс обучения происходит в конце жизненного цикла, когда ПО уже запущено в эксплуатацию;

    Инкрементная модель

    Инкрементная модель (англ. increment — увеличение, приращение) подразумевает разработку программного обеспечения с линейной последовательностью стадий, но в несколько инкрементов (версий), т.е. с запланированным улучшением продукта за все время пока Жизненный цикл разработки ПО не подойдет к окончанию.

    Плюсы и минусы

    Плюсы:
    затраты, которые получаются в связи с изменением требований пользователей, уменьшаются, повторный анализ и совокупность документации значительно сокращаются по сравнению с каскадной моделью;
    легче получить отзывы от клиента о проделанной работе — клиенты могут озвучить свои комментарии в отношении готовых частей и могут видеть, что уже сделано. Т.к. первые части системы являются прототипом системы в целом.
    у клиента есть возможность быстро получить и освоить программное обеспечение — клиенты могут получить реальные преимущества от системы раньше, чем это было бы возможно с каскадной моделью.
    Минусы:
    менеджеры должны постоянно измерять прогресс процесса. в случае быстрой разработки не стоит создавать документы для каждого минимального изменения версии;
    структура системы имеет тенденцию к ухудшению при добавлении новых компонентов — постоянные изменения нарушают структуру системы. Чтобы избежать этого требуется дополнительное время и деньги на рефакторинг. Плохая структура делает программное обеспечение сложным и дорогостоящим для последующих изменений. А прерванный Жизненный цикл ПО приводит еще к большим потерям.

    Спиральная модель

    Спиральная модель - представляет собой процесс разработки программного обеспечения, сочетающий в себе как проектирование, так и постадийное прототипирование с целью сочетания преимуществ восходящей и нисходящей концепции.

    Плюсы и минусы

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

    Минусы:

    Минусы:
    если проект имеет низкую степень риска или небольшие размеры, модель может оказаться дорогостоящей. Оценка рисков после прохождения каждой спирали связана с большими затратами;
    Жизненный цикл модели имеет усложненную структуру, поэтому может быть затруднено её применение разработчиками, менеджерами и заказчиками;
    спираль может продолжаться до бесконечности, поскольку каждая ответная реакция заказчика на созданную версию может порождать новый цикл, что отдаляет окончание работы над проектом;
    большое количество промежуточных циклов может привести к необходимости в обработке дополнительной документации;
    использование модели может оказаться дорогостоящим и даже недопустимым по средствам, т.к. время. затраченное на планирование, повторное определение целей, выполнение анализа рисков и прототипирование, может быть чрезмерным;
    могут возникнуть затруднения при определении целей и стадий, указывающих на готовность продолжать процесс разработки на следующей

    Итеративная модель

    Это модель, при которой заказчик не обязан понимать, какой продукт хочет получить в итоге, и может не прописывать сразу подробное техзадание.
    Жизненный цикл похож на приведенный ниже рисунок:

    Плюсы и минусы

    Плюсы:
    Быстрый выпуск минимального продукта даёт возможность оперативно получать обратную связь от заказчика и пользователей. А значит, фокусироваться на наиболее важных функциях ПО и улучшать их в соответствии с требованиями рынка и пожеланиями клиента.
    Постоянное тестирование пользователями позволяет быстро обнаруживать и устранять ошибки.
    Минусы:
    Использование на начальном этапе баз данных или серверов — первые сложно масштабировать, а вторые не выдерживают нагрузку. Возможно, придётся переписывать большую часть приложения.
    Отсутствие фиксированного бюджета и сроков. Заказчик не знает, как выглядит конечная цель и когда закончится разработка.

    V модель (разработка через тестирование)

    Данная модель имеет более приближенный к современным методам алгоритм, однако все еще имеет ряд недостатков. Является одной из основных практик экстремального программирования.


    Данная модель основывается на разработки прототипов и прототипирования продукта. Прототипирование используется на ранних стадиях жизненного цикла программного обеспечения:
    Прояснить не ясные требования (прототип UI)
    Выбрать одно из ряда концептуальных решений (реализация сцинариев)
    Проанализировать осуществимость проекта
    Классификация протопипов:
    Горизонтальные и вертикальные
    Одноразовые и эволюционные
    Бумажные и раскадровки

    Заключение
    Сегодня мы рассмотрели модели жизненного цикла ПО и определили минусы и плюсы в каждой из них. Спасибо за внимание!


    написать администратору сайта