Модель жизненного цикла разработки программного обеспечения (SDLC) — это структура, описывающая действия, выполняемые на каждом этапе проекта разработки программного обеспечения.
В жизненном цикле разработки программного обеспечения действия выполняются в пять этапов:
-
Сбор требований — требования к разрабатываемому программному обеспечению собраны. Эти требования будут на языке, понятном клиенту / пользователю. Рекомендуется использовать доменную терминологию.
-
Анализ — Собранные требования анализируются с точки зрения реализации, а спецификации программного обеспечения написаны так, чтобы охватывать как функциональные, так и нефункциональные требования.
-
Проектирование — этот этап включает в себя разработку архитектуры программного обеспечения и особенностей реализации на основе технологии, выбранной для разработки.
-
Построение — на этом этапе код разрабатывается, тестируется модулем, интегрируется, тестируется на интеграцию и производится сборка.
-
Тестирование. На этом этапе выполняется функциональное тестирование встроенного программного обеспечения. Это также включает в себя тестирование нефункциональных требований.
Сбор требований — требования к разрабатываемому программному обеспечению собраны. Эти требования будут на языке, понятном клиенту / пользователю. Рекомендуется использовать доменную терминологию.
Анализ — Собранные требования анализируются с точки зрения реализации, а спецификации программного обеспечения написаны так, чтобы охватывать как функциональные, так и нефункциональные требования.
Проектирование — этот этап включает в себя разработку архитектуры программного обеспечения и особенностей реализации на основе технологии, выбранной для разработки.
Построение — на этом этапе код разрабатывается, тестируется модулем, интегрируется, тестируется на интеграцию и производится сборка.
Тестирование. На этом этапе выполняется функциональное тестирование встроенного программного обеспечения. Это также включает в себя тестирование нефункциональных требований.
Есть два подхода к выполнению этих действий —
-
Prescriptive — модели SDLC, которые обеспечат вам способы выполнения действий в установленном порядке, как это определено в рамках.
-
Адаптивный — модели SDLC, которые дадут вам гибкость в выполнении заданий с определенными правилами, которые необходимо соблюдать. Гибкие методы в основном следуют этому подходу, каждый из которых имеет свои правила. Однако использование адаптивного или гибкого подхода не означает, что программное обеспечение разрабатывается без соблюдения какой-либо дисциплины. Это приведет к хаосу.
Prescriptive — модели SDLC, которые обеспечат вам способы выполнения действий в установленном порядке, как это определено в рамках.
Адаптивный — модели SDLC, которые дадут вам гибкость в выполнении заданий с определенными правилами, которые необходимо соблюдать. Гибкие методы в основном следуют этому подходу, каждый из которых имеет свои правила. Однако использование адаптивного или гибкого подхода не означает, что программное обеспечение разрабатывается без соблюдения какой-либо дисциплины. Это приведет к хаосу.
Вы должны понимать, что мы не можем сказать, что конкретная модель SDLC является хорошей или плохой. Каждый из них имеет свои сильные и слабые стороны и поэтому подходит в определенных условиях.
Когда вы выбираете модель SDLC для своего проекта, вы должны понимать —
- Контекст вашей организации
- Ваш технологический контекст
- Состав вашей команды
- Ваш контекст клиента
Например, если разработка программного обеспечения предсказуема, вы можете использовать предписывающий подход. С другой стороны, если разработка программного обеспечения непредсказуема, то есть требования не совсем известны, или команда разработчиков не имеет предварительного доступа к текущей области или технологии и т. Д., Тогда Адаптивный подход является лучшим выбором.
В следующих разделах вы поймете наиболее распространенные модели SDLC, которые развивались в ходе выполнения проектов по разработке программного обеспечения в отрасли. Вы также узнаете сильные и слабые стороны каждого из них и в каком контексте они подходят.