Хабр, привет!
Меня зовут Витя, я работаю системным аналитиком, а также пишу про системный анализ и в целом про аналитику у себя в Telegram канале.
Сегодня хочу рассказать какие этапы жизненного цикла программного обеспечения существуют на примере алгоритма Software Life Cycle Model (SLCM).
Предлагаю рассмотреть основные этапы жизненного цикла ПО на самом простом примере – разработка интернет магазина одежды.
Что такое SDLC ?
SDLC – это алгоритм создания IT-продукта, который состоит из 6 этапов и охватывает период с момента принятия решения о его разработке и заканчивается, когда ПО перестают использовать.
Каждый этап опирается на результат предыдущего и дает пул необходимых указаний для выполнения последующего.
Основная функция SDLC – регламентирование и формализация процесса разработки. Это важно при командной работе, когда задействуют десятки специалистов.
Этапы жизненного цикла разработки программного обеспечения
SDLC определяет задачи, которые должен выполнять на различных этапах аналитик или разработчик. Это гарантирует, что конечный продукт сможет оправдать ожидания клиента и уложиться в общий бюджет. Следовательно, разработчику крайне важно иметь предварительные знания об этом процессе разработки программного обеспечения.
Как говорил выше - модель SDLC включает шесть этапов разработки любого программного обеспечения. Рассмотрим каждый из этапов подробнее на примере разработки интернет магазина одежды.
Этап 1: Планирование и анализ требований
Планирование — важный шаг во всем, как и в разработке программного обеспечения. На этом же этапе также выполняется анализ требований.
Информация, полученная в результате этого анализа, образует строительные блоки базового проекта. Качество проекта является результатом планирования.
Таким образом, на этом этапе разрабатывается базовый проект с учетом всей доступной информации.
Для нашего интернет магазина на этом этапе мы должны выполнить следующие шаги: определить цели проекта и требований к интернет-магазину, выполнить анализ конкурентов, определить бюджет и сроки проекта.
Этап 2: Определение требований
На этом этапе уточняются все требования к целевому программному обеспечению.
Эти требования получают одобрение со стороны клиентов, аналитиков рынка и всех заинтересованных сторон.
Это достигается за счет использования спецификаций требований к программному обеспечению (SRS). Это документ, в котором указаны все те вещи, которые необходимо определить и создать в течение всего цикла проекта.
Для нашего магазина создаются различные макеты дизайна будущего приложения, аналитики определяют технические требования к приложению.
Этап-3: Проектирование архитектуры
Благодаря требованиям, которые были определены в SRS, разработчики могут выбрать технологии для проекта и спроектировать будущую архитектуру.
SRS (или другой любой документ с чётко сформулированными требованиями)— это справочник для разработчиков программного обеспечения, позволяющий придумать лучшую архитектуру программного обеспечения.
Этап 4: Разработка продукта
Далее выполняется сама разработка продукта.
Для нашего интернет-магазина пишется необходимый код, создается база данных, выполняется интеграция платежных систем и других необходимых сервисов в соответствии с разработанной архитектуре проекта.
Обычно этот этап является самым длительным этапом в SDLC.
Этап 5: Тестирование и интеграция продукта
После разработки продукта необходимо тестирование программного обеспечения, чтобы обеспечить его бесперебойную работу.
На этом этапе все возможные недостатки отслеживаются, исправляются и перепроверяются.
Это гарантирует, что продукт соответствует требованиям качества SRS.
Для магазина выполняется проведение тестов на работоспособность и безопасность сайта, исправление ошибок и устранение недочетов.
Так же на этом этапе составляется необходимая документация по проекту. В документации содержится информация о том, как использовать продукт и описание его основного функционала.
Этап 6: Развертывание и обслуживание продуктов
После детального тестирования окончательный продукт выпускается поэтапно в соответствии со стратегией организации.
На этом этапе происходит развертывание интернет-магазина на сервере, настройка доменного имени, проведение финальных тестов перед запуском. Важно обеспечить его бесперебойную работу.
После окончательного вывода продукта в промышленную среду осуществляется надзор за продуктом и его поддержка с целью обеспечить бесперебойную работу.
Для магазина выполняется анализ работы сайта, внесение изменений и доработок в соответствии с требованиями пользователей.
На сегодняшний день используется более 50 признанных моделей SDLC. Но ни одна из них не идеальна, и каждая имеет свои преимущества и недостатки для конкретного проекта разработки программного обеспечения или команды.
В следующей статье я подробно разберу все самые популярные модели разработки ПО. А пока давайте ответим на вопрос - "А зачем нам, собственно нужен такой цикл разработки ПО ?"
Зачем нам нужен SDLC?
SDLC — это подход, которому следует организация по разработке ПО при разработке любого ПО.
Модели SDLC были введены для того, чтобы следовать дисциплинированному и систематическому методу при разработке программного обеспечения.
В жизненном цикле разработки программного обеспечения процесс проектирования программного обеспечения разделен на небольшие части, что делает проблему более понятной и легкой для решения.
SDLC включает подробное описание или пошаговый план проектирования, разработки, тестирования и обслуживания программного обеспечения.
Заключение
Итак, теперь мы знаем, что разработка программного обеспечения на основе жизненного цикла разработки программного обеспечения (SDLC) является важной основой для более качественной и структурированной разработки ПО.
В мире, полном быстрого развития технологий, этапы SDLC играют решающую роль в создании хороших и инновационных решений для помощи пользователям и организациям.
В заключении статьи предлагаю ответить на несколько вопросов для лучшего усвоения материала:
Что такое SDLC ?
Каковы основные этапы SDLC ?
Почему SDLC важен ?
Каковы основные цели SDLC ?
Спасибо всем, кто дочитал эту статью до конца. Делитесь своим мнением в комментариях. Как говорил выше – в следующих статьях продолжу тему разработки ПО и разберу основные модели SDLC.
avf48
А что помешало воспользоваться стандартом?
* И чем отличаются аббревиатуры SDLC и SLCM???
** submarine-launched cruise missile (SLCM)
***Иф ю донт спик раша, гоу хоум...