SDLC: фазы и модели жизненного цикла разработки программного обеспечения

Что такое SDLC?

SDLC - это систематический процесс создания программного обеспечения, обеспечивающий качество и правильность созданного программного обеспечения. Процесс SDLC направлен на создание высококачественного программного обеспечения, отвечающего ожиданиям клиентов. Разработка системы должна быть завершена в заранее определенные сроки и стоимость. SDLC состоит из подробного плана, в котором объясняется, как планировать, создавать и поддерживать конкретное программное обеспечение. Каждая фаза жизненного цикла SDLC имеет свой собственный процесс и результаты, которые используются в следующей фазе. SDLC означает Жизненный цикл разработки программного обеспечения и также называется жизненным циклом разработки приложений.

В этом руководстве по жизненному циклу разработки программного обеспечения вы узнаете

Почему именно SDLC?

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

  • Он предлагает основу для планирования, составления графиков и оценки проекта.
  • Предоставляет основу для стандартного набора действий и результатов
  • Это механизм отслеживания и контроля проекта.
  • Повышает прозрачность планирования проекта для всех заинтересованных сторон процесса разработки.
  • Увеличение и повышение скорости разработки
  • Улучшение отношений с клиентами
  • Помогает снизить риски проекта и накладные расходы на план управления проектом

Фазы SDLC

Весь процесс SDLC разделен на следующие шаги SDLC:

Фазы SDLC

  • Этап 1. Сбор и анализ требований.
  • Этап 2: технико-экономическое обоснование
  • Этап 3: Дизайн
  • Этап 4: Кодирование
  • Этап 5: Тестирование
  • Этап 6: установка / развертывание
  • Этап 7: Техническое обслуживание

В этом руководстве я объяснил все эти этапы жизненного цикла разработки программного обеспечения.

Этап 1. Сбор и анализ требований.

Требование - это первый этап процесса SDLC. Его проводят старшие члены команды при участии всех заинтересованных сторон и отраслевых экспертов. Планирование гарантия качества требования и признание связанных рисков также выполняется на этом этапе.

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

На этапе сбора требований команды должны получить подробные и точные требования. Это помогает компаниям завершить необходимые сроки для завершения работы этой системы.

Этап 2: технико-экономическое обоснование

После завершения этапа анализа требований следующим шагом SDLC является определение и документирование потребностей в программном обеспечении. Этот процесс выполняется с помощью документа «Спецификация требований к программному обеспечению», также известного как документ «SRS». Он включает в себя все, что должно быть спроектировано и разработано в течение жизненного цикла проекта.

В основном существует пять типов проверки выполнимости:

  • Экономический: Сможем ли мы завершить проект в рамках бюджета или нет?
  • Юридический: Можем ли мы справиться с этим проектом как с кибер-законом и другими нормативными рамками / соответствиями.
  • Осуществимость операции: Можем ли мы создать операции, которых ожидает клиент?
  • Технические: Необходимо проверить, может ли текущая компьютерная система поддерживать программное обеспечение
  • Расписание: Решите, можно ли завершить проект в рамках заданного графика или нет.

Этап 3: Дизайн

На этом третьем этапе документация по проектированию системы и программного обеспечения подготавливается в соответствии с документом со спецификацией требований. Это помогает определить общую архитектуру системы.

Этот этап проектирования служит исходными данными для следующего этапа модели.

На этом этапе разрабатываются два вида проектной документации:

Дизайн высокого уровня (HLD)

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

Низкоуровневый дизайн (LLD)

  • Функциональная логика модулей
  • Таблицы базы данных, которые включают тип и размер
  • Полная детализация интерфейса
  • Решает все типы проблем с зависимостями
  • Список сообщений об ошибках
  • Полные входы и выходы для каждого модуля

Этап 4: Кодирование

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

На этом этапе разработчик должен следовать определенным предопределенным правилам кодирования. Им также необходимо использовать инструменты программирования, такие как компилятор, интерпретаторы, отладчик, для генерации и реализации кода.

Этап 5: Тестирование

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

На этом этапе команда QA и тестирования может обнаружить некоторые ошибки / дефекты, о которых они сообщают разработчикам. Команда разработчиков исправляет ошибку и отправляет обратно в QA для повторного тестирования. Этот процесс продолжается до тех пор, пока программное обеспечение не будет исправным, стабильным и не будет работать в соответствии с бизнес-потребностями этой системы.

Этап 6: установка / развертывание

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

Этап 7: Техническое обслуживание

После того, как система развернута и клиенты начинают использовать разработанную систему, выполняются следующие 3 действия.

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

Основное внимание на этом этапе SDLC уделяется обеспечению того, чтобы потребности продолжали удовлетворяться и чтобы система продолжала работать в соответствии со спецификацией, упомянутой в первом этапе.

Популярные модели SDLC

Вот некоторые из наиболее важных моделей жизненного цикла разработки программного обеспечения (SDLC):

Модель водопада в SDLC

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

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

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

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

V-модель и SDLC

В этом типе тестирования и разработки модели SDLC этап планируется параллельно. Итак, есть этапы проверки SDLC на одной стороне и этап проверки на другой стороне. V-Model присоединяется к этапу кодирования.

Гибкая модель в SDLC

Методология Agile - это практика, которая способствует непрерывному взаимодействию разработки и тестирования в процессе SDLC любого проекта. В методе Agile весь проект делится на небольшие инкрементные сборки. Все эти сборки предоставляются в виде итераций, и каждая итерация длится от одной до трех недель.

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

Спиральная модель - это модель процесса, ориентированного на риски. Эта модель тестирования SDLC помогает команде принять элементы одной или нескольких моделей процессов, таких как водопад, инкрементальный, водопад и т. Д.

Эта модель использует лучшие черты прототипной модели и водопадной модели. Спиральная методология представляет собой сочетание быстрого прототипирования и параллелизма при проектировании и разработке.

Модель большого взрыва

Модель большого взрыва сосредотачивается на всех типах ресурсов в разработке и кодировании программного обеспечения без какого-либо планирования или с очень незначительным планированием. Требования понимаются и выполняются, когда они поступают.

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

Резюме

  • Жизненный цикл разработки программного обеспечения (SDLC) - это систематический процесс создания программного обеспечения, обеспечивающий качество и правильность созданного программного обеспечения.
  • Полная форма SDLC - это жизненный цикл разработки программного обеспечения или жизненный цикл разработки систем.
  • SDLC в программной инженерии обеспечивает основу для стандартного набора действий и результатов
  • Семь различных этапов SDLC: 1) Сбор и анализ требований 2) Технико-экономическое обоснование: 3) Дизайн 4) Кодирование 5) Тестирование: 6) Установка / развертывание и 7) Техническое обслуживание.
  • Старшие члены команды проводят анализ требований фаза
  • Стадия технико-экономического обоснования включает в себя все, что должно быть спроектировано и разработано в течение жизненного цикла проекта.
  • На этапе проектирования документация по проектированию системы и программного обеспечения подготавливается в соответствии с документом со спецификацией требований.
  • На этапе кодирования разработчики начинают сборку всей системы с написания кода на выбранном языке программирования.
  • Тестирование - это следующий этап, который проводится для проверки того, что все приложение работает в соответствии с требованиями заказчика.
  • Установка и развертывание начинается, когда тестирование программного обеспечения фаза завершена, и в системе не осталось ошибок или ошибок.
  • Действия по исправлению ошибок, обновлению и взаимодействию, охватываемые этапом обслуживания
  • Waterfall, Incremental, Agile, V-модель, Spiral, Big Bang - вот некоторые из популярных моделей SDLC в разработке программного обеспечения.
  • SDLC в тестировании программного обеспечения состоит из подробного плана, в котором объясняется, как планировать, создавать и поддерживать конкретное программное обеспечение.