Реферат по теме выпускной работы
Содержание
Введение1. Актуальность темы
2. Цель и задачи исследования, планируемые результаты
3. Понятие и структура жизненного цикла программного обеспечения
4. Основы и принципы DevOps
5. Влияние DevOps на управление жизненным циклом программного обеспечения
Заключение
Список источников
Введение
В условиях цифровизации и роста зависимости организаций от программного обеспечения особую значимость приобретает эффективное управление жизненным циклом программных продуктов. Это обуславливает необходимость пересмотра традиционных подходов к организации процессов разработки и сопровождения программного обеспечения.
Классические модели жизненного цикла программного обеспечения, такие как каскадная модель, предполагают последовательное прохождение этапов разработки и чёткое разделение ответственности между участниками процесса. Однако на практике подобный подход часто приводит к увеличению сроков поставки, затруднённой обратной связи и конфликтам между командами разработки и эксплуатации. В результате снижается гибкость управления жизненным циклом и возрастает риск несоответствия конечного продукта ожиданиям пользователей.
В ответ на указанные проблемы в индустрии программного обеспечения сформировалась концепция DevOps, ориентированная на интеграцию процессов разработки и эксплуатации, а также на обеспечение непрерывности всех этапов жизненного цикла программного обеспечения.
1. Актуальность темы
Актуальность изучения DevOps в контексте управления жизненным циклом программного обеспечения обусловлена необходимостью теоретического осмысления его роли как управленческого и организационного подхода, а не только набора технических практик. Анализ DevOps с позиции жизненного цикла ПО позволяет выявить его влияние на структуру процессов, распределение ответственности и эффективность сопровождения программных продуктов [17].
2. Цель и задачи исследования, планируемые результаты
Целью исследования является анализ роли DevOps-подхода в управлении жизненным циклом программного обеспечения и выявление его влияния на организацию и взаимосвязь основных этапов разработки, внедрения и сопровождения программных продуктов.
Для достижения поставленной цели в работе предполагается решение следующих задач:
- Рассмотреть понятие и основные характеристики жизненного цикла программного обеспечения в традиционных моделях разработки [9].
- Проанализировать сущность DevOps как организационного и управленческого подхода в разработке программного обеспечения [1].
- Определить, каким образом DevOps-практики изменяют структуру и логику управления этапами жизненного цикла ПО [15].
- Выявить преимущества применения DevOps для управления изменениями, качеством и сопровождением программных продуктов.
Планируемые результаты исследования заключаются в формировании систематизированного представления о DevOps как инструменте управления жизненным циклом программного обеспечения, а также в обосновании его значимости для повышения эффективности процессов разработки и эксплуатации ПО. Полученные выводы могут быть использованы в дальнейшем исследовании в рамках ВКР, а также при анализе практики внедрения DevOps в IT-организациях.
3. Понятие и структура жизненного цикла программного обеспечения
Жизненный цикл программного обеспечения (Software Development Life Cycle, SDLC) представляет собой совокупность этапов и процессов, обеспечивающих разработку, внедрение и сопровождение программных продуктов. Основные этапы отображены на рисунке 1.
Рисунок 1 – Жизненный цикл ПО
Анализ требований – сбор и формализация требований заказчика, создание технической документации. Качественно проведённый анализ позволяет минимизировать ошибки на последующих этапах и снизить затраты на исправление дефектов.
Планирование – определение целей проекта, формулирование требований к функциональности и производительности, оценка рисков и ресурсов. На этом этапе разрабатываются стратегические и тактические планы реализации продукта. Недостаточное внимание к планированию может приводить к несоответствию требований пользователей и конечного продукта.
Проектирование – разработка архитектуры системы, структур данных, интерфейсов и модулей. Этап проектирования критически важен для обеспечения масштабируемости и надёжности будущей системы.
Разработка (кодирование) – непосредственное создание программного продукта в соответствии с проектной документацией. Эффективность этапа зависит от качества коммуникации между разработчиками, стандартизации кода и использования инструментов контроля версий.
Тестирование – проверка корректности, производительности и безопасности программного продукта. Тестирование позволяет выявлять ошибки на ранних стадиях, снижая стоимость исправлений и повышая качество ПО.
Внедрение (деплоймент) – процесс развертывания программного продукта в эксплуатационной среде. На этом этапе особое значение имеет совместимость с инфраструктурой организации и минимизация сбоев при переходе в рабочую среду.
Эксплуатация и поддержка – обеспечение исправности и актуальности программного продукта, обновления, исправление выявленных дефектов и адаптация к изменяющимся требованиям. Эффективное сопровождение позволяет продлить срок службы ПО и повысить удовлетворённость пользователей
Традиционные модели SDLC различаются по способу организации процессов. Каскадная модель (Waterfall), изображенная на рисунке 2, предполагает последовательное прохождение этапы, при котором переход к следующему этапу возможен только после завершения предыдущего. Такая модель обеспечивает системность, но снижает гибкость при изменении требований.
Рисунок 2 – Каскадная модель
V-модель, изображенная на рисунке 3, усиливает контроль качества на каждом этапе через интеграцию тестирования. Гибкие методологии (Agile, Scrum) ориентированы на итеративную разработку и быструю адаптацию к изменениям, но не всегда обеспечивают полную интеграцию с эксплуатацией [5].
Рисунок 3 – V-модель
4. Основы и принципы DevOps
DevOps представляет собой организационный и управленческий подход, направленный на интеграцию процессов разработки (Dev) и эксплуатации (Ops) программного обеспечения. Основная цель DevOps — обеспечение непрерывности жизненного цикла программного продукта, повышение скорости поставки и качества программного обеспечения при эффективном взаимодействии команд [1].
Ключевыми принципами DevOps являются:
- Непрерывная интеграция (Continuous Integration, CI) — практика регулярного объединения изменений кода в общую ветку разработки с автоматическим тестированием, что позволяет выявлять ошибки на ранних стадиях и снижает риски интеграции [12].
- Непрерывная поставка и развертывание (Continuous Delivery/Deployment, CD) — автоматизация процессов сборки, тестирования и развертывания приложений, что обеспечивает быстрое и безопасное выпускание обновлений.
- Автоматизация процессов — использование инструментов для автоматизации тестирования, сборки, развертывания и мониторинга, что повышает эффективность и снижает вероятность человеческих ошибок [10].
- Культура сотрудничества и обмена знаниями — тесное взаимодействие между разработчиками, операторами и другими участниками жизненного цикла ПО, обмен опытом и совместное принятие решений.
- Метрики и мониторинг (Measurement) — сбор и анализ показателей производительности, стабильности и качества ПО для постоянного улучшения процессов.
- Lean-подход и сокращение избыточности — минимизация задержек и неэффективных процессов на всех этапах жизненного цикла программного обеспечения.
Одним из ключевых инструментов описания DevOps является модель CALMS, которая акцентирует внимание на пяти элементах: Culture (культура), Automation (автоматизация), Lean (оптимизация процессов), Measurement (метрики), Sharing (обмен знаниями). Эта модель позволяет систематизировать организационные и процессные аспекты DevOps, подчеркивая его роль как управленческого подхода, а не только набора технических практик [8].
5. Влияние DevOps на управление жизненным циклом программного обеспечения
Интеграция DevOps приводит к сдвигу от раздельных этапов SDLC к непрерывному циклу поставки, где планирование, разработка, тестирование, развертывание и эксплуатация связаны сквозными процессами и короткими обратными связями. Это изменение архитектуры процессов снижает задержки при передаче артефактов между командами и уменьшает длительность цикла от идеи до поставки, что подтверждается как эмпирическими исследованиями, так и отчётами DORA о показателях эффективности разработки [12].
Рисунок 4 – Жизненный цикл DevOps
Автоматизация ключевых операций — сборки, тестирования, развертывания и мониторинга — повышает предсказуемость и повторяемость процессов, что в свою очередь снижает частоту ошибок при интеграции и релизах и улучшает стабильность поставок. Практики CI/CD обеспечивают раннее обнаружение дефектов и ускоряют их устранение, уменьшая объём исправлений на поздних этапах жизненного цикла и снижая сопутствующие издержки качества.
Организационный эффект DevOps проявляется в перераспределении ответственности и усилении межфункционального взаимодействия: команды разработки и эксплуатации начинают совместно отвечать за результат продукта на всём протяжении его жизненного цикла. Это способствует более оперативному реагированию на инциденты и более быстрому внедрению изменений, поскольку ответственность за релиз и поддержку становится коллективной, а не фрагментированной по ролям.
Применение метрик и постоянный мониторинг рабочих и бизнес-показателей позволяют оценивать эффективность изменений в процессе и принимать обоснованные решения по оптимизации жизненного цикла. Ключевые метрики — частота релизов, время вывода на рынок, время восстановления после сбоев и доля неудачных изменений — служат основой для цикла непрерывного улучшения и позволяют соотнести организационные инициативы с реальными результатами разработки и эксплуатации.
В результате управление жизненным циклом при внедрении DevOps становится более адаптивным и управляемым: сокращается время поставки функционала, повышается надёжность релизов и улучшаются коммуникации между участниками процесса. Одновременно это требует изменения управленческих практик, инвестиций в автоматизацию и развития компетенций персонала, что должно учитываться при планировании трансформации жизненного цикла ПО [13], [14].
Заключение
Интеграция DevOps в управление жизненным циклом программного обеспечения обеспечивает переход от раздельных этапов SDLC к сквозным, непрерывным процессам, что сокращает время поставки и повышает стабильность релизов. Ключевой механизм этих улучшений — автоматизация CI/CD и мониторинга, позволяющая обнаруживать и устранять дефекты на ранних стадиях и повышать воспроизводимость поставок. Важным условием успеха является организационная трансформация: изменение культуры, перераспределение ответственности и развитие межфункционального взаимодействия между командами разработки и эксплуатации. Для оценки эффективности DevOps целесообразно опираться на измеримые показатели (частота релизов, время восстановления, доля неудачных изменений), что обеспечивает основу для непрерывного улучшения жизненного цикла ПО. Полученные выводы подтверждают, что DevOps следует рассматривать не как набор инструментов, а как комплексный управленческий подход, требующий согласованных организационных и технических мер для повышения эффективности разработки, внедрения и сопровождения программных продуктов.
Список источников
- Дж. Ким, К. Бер, Дж. Спаффорд Проект «Феникс». Как DevOps устраняет хаос и ускоряет развитие компании / Дж. Ким, К. Бер, Дж. Спаффорд. — М. : Эксмо, 2020. — 384 с. ISBN 978-5-04-101855-9.
- К. С. Серегин Практики devops для ускорения разработки и внедрения современных приложений и оптимизации процессов доставки программного обеспечения [Электронный ресурс] // Вестник науки. — 2025. — №1 — (82). Режим доступа: https://cyberleninka.ru/article/n/praktiki-devops-dlya-uskoreniya-razrabotki-i-vnedreniya-sovremennyh-prilozheniy-i-optimizatsii-protsessov-dostavki-programmnogo.
- П. С. Цынгалев Применение методологии DevOps при разработке приложений для высокопроизводительных вычислений [Электронный ресурс] // Программные продукты и системы. — 2025. — №3. Режим доступа: https://cyberleninka.ru/article/n/primenenie-metodologii-devops-pri-razrabotke-prilozheniy-dlya-vysokoproizvoditelnyh-vychisleniy.
- Microsoft. Что такое DevOps? [Электронный ресурс] // Microsoft Learn, — 2025. Режим доступа: https://learn.microsoft.com/ru-ru/devops/what-is-devops.
- Atlassian. Цикл SDLC [Электронный ресурс] // Atlassian, — 2025. Режим доступа: https://www.atlassian.com/ru/agile/software-development/sdlc.
- OpenCode.md. Жизненный цикл DevOps [Электронный ресурс] // OpenCode — 2025. Режим доступа: https://opencode.md/ru/registry/devops/lifecycle/.
- AVG DevOps. Жизненный цикл разработки в DevOps [Электронный ресурс] // AVG — 2025. Режим доступа: https://avega-devops.com/blog/devops-lifecycle.
- N. Forsgren, J. Humble, G. Kim Accelerate: The Science of Lean Software and DevOps [Электронный ресурс] // IT Revolution Press, — 2018. Режим доступа: https://itrevolution.com/product/accelerate/.
- J. Humble, D. Farley Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation [Электронный ресурс] // Addison-Wesley, — 2011. Режим доступа: https://martinfowler.com/books/continuousDelivery.html.
- L. Bass, I. Weber, L. Zhu DevOps: A Software Architect’s Perspective [Электронный ресурс] // Addison-Wesley, — 2015. Режим доступа: https://www.sei.cmu.edu/library/devops-a-software-architects-perspective/.
- G. Kim, K. Behr, G. Spafford The Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win [Электронный ресурс] // IT Revolution Press, — 2018. Режим доступа: https://itrevolution.com/product/the-phoenix-project/.
- N. Forsgren, D. Smith, J. Humble DORA State of DevOps Report 2023 [Электронный ресурс] // Google Cloud, 2023. — Режим доступа: https://cloud.google.com/devops/state-of-devops.
- L. E. Lwakatare, P. Kuvaja, M. Oivo DevOps adoption challenges in organizations: A systematic literature review [Электронный ресурс] // Information and Software Technology. — 2016. — Vol. — 80. — P. 21–35. Режим доступа: https://www.sciencedirect.com/science/article/pii/S0950584916301466.
- F. M. A. Erich, C. Amrit, M. Daneva A qualitative study of DevOps usage in practice [Электронный ресурс] // Journal of Software: Evolution and Process. — 2017. — Vol. 29, — No. 6. Режим доступа: https://onlinelibrary.wiley.com/doi/10.1002/smr.1885.
- M. Shahin, M. A. Babar, L. Zhu Continuous Integration, Delivery and Deployment: A Systematic Review on Approaches, Tools, Challenges and Practices[Электронный ресурс] // IEEE Access. — 2017. —Vol. 5. — P. 3909–3943. Режим доступа: https://ieeexplore.ieee.org/document/7870423.
- L. Chen Continuous Delivery: Overcoming Adoption Challenges[Электронный ресурс] // Journal of Systems and Software. — 2015. — Vol. 128. — P. 72–86. Режим доступа: https://www.sciencedirect.com/science/article/pii/S0164121215001171.
- A. Wiedemann, M. Wiesche, H. Krcmar Implementing DevOps in Organizations: A Maturity Model [Электронный ресурс] // Proceedings of the 26th European Conference on Information Systems (ECIS). — Portsmouth, — 2018. Режим доступа: https://aisel.aisnet.org/cis2018_rp/80/.
- К. А. Лотов, Е. Ю. Андиева Эволюция devops: роль ci/cd в ускорении цикла разработки программного обеспечения [Электронный ресурс] // Вестник науки. — 2025. — №4 — (85). Режим доступа: https://cyberleninka.ru/article/n/evolyutsiya-devops-rol-ci-cd-v-uskorenii-tsikla-razrabotki-programmnogo-obespecheniya.
- М. А. Ганжур, Н. В. Дьяченко, А. С. Отакулов Анализ методологий devops и devsecops [Электронный ресурс] // Молодой исследователь Дона. — 2021. — №5 — (32). Режим доступа: https://cyberleninka.ru/article/n/analiz-metodologiy-devops-i-devsecops.
- М. В. Безпятый Автоматизация и оптимизация процессов разработки и развертывания в devops: применение современных методов и инструментов [Электронный ресурс] // Инновации и инвестиции. — 2023. — №7. Режим доступа: https://cyberleninka.ru/article/n/avtomatizatsiya-i-optimizatsiya-protsessov-razrabotki-i-razvertyvaniya-v-devops-primenenie-sovremennyh-metodov-i-instrumentov.
