С тех пор, как начинаете работать с различными веб-приложениями, термин DevOps будет привлекать все больше и больше внимание.
Важно понять, что такое DevOps на самом деле. DevOps – чрезвычайно популярное модное слово, и вы найдете множество его определений в Интернете. Но, основываясь на нашем собственном опыте, мы пришли к следующему окончательному определению и мыслям. Это попытка пересмотреть существующие нормы DevOps и переосмыслить их в форме новой модели, которую мы предлагаем здесь.
DevOps представляет собой непрерывный процесс упрощения поддержания хрупкого баланса между функциональностью, удобством и безопасностью приложения как с точкой зрения ее Development и Operations.
Как этого добиться?
Обеспечение того, чтобы приложение эффективно развивалось и одновременно работало, является постоянной проблемой для инженеров DevOps. Для этого необходимо постоянно контролировать наиболее фундаментальные компоненты DevOps.
Жизненный цикл разработки приложений – это фундаментальная мотивация разработки любого приложения. Если процесс разработки не будет тщательно и постоянно отслеживаться, вы не можете быть абсолютно уверены в его безупречном развитии. Приложение всегда будет находиться в ADLC, пока оно не будет готово к производству.
ADLC – это важный принцип разработки программного обеспечения, который состоит из шести основных этапов. Разработка приложения включает следующие этапы:
Этот цикл будет существовать до тех пор, пока не будет доступен стабильный выпуск. Как только программное обеспечение выпущено в виде готовой к производству стабильной версии, оно больше не подпадает под ADLC. В конечном итоге он подпадает под жизненный цикл разработки системы (SDLC).
Часть нашего DevOps-сообщества может сказать, что ADLC и SDLC – одно и то же. Но в реальном сценарии ADLC и SDLC совершенно разные.
Жизненный цикл разработки системы – это фундаментальная мотивация как разработки, так и эксплуатации приложения. Он предполагает непрерывное развитие приложения после его первого стабильного выпуска и обеспечивает его непрерывную работоспособность.
Открытая модель, управляемая сообществом, всегда будет иметь самое удобное обслуживание. Последний шаг в цикле действительно достижим только с помощью модели с открытым исходным кодом. Это важнейший решающий фактор с точки зрения развития любого приложения.
Приложение, у которого еще нет стабильной версии, не может считаться завершенным. Как только приложение полностью построено, ADLC превращается в SDLC. Почему?
Теперь вы поняли нашу мысль? В ADLC приложение не готово к производству, поэтому оно все еще находится в стадии разработки barebone. Поэтому мы не можем называть это DevOps. Только когда выходит первый стабильный выпуск, он превращается в SDLC, который называется DevOps, потому что готовое к производству приложение впоследствии станет непрерывно работающим.
Как видно из двух сокращений и диаграммы выше, приложение сильно отличается от всей системы. Приложение – это всего лишь часть полного системного процесса. Это то, что отличает SDLC от ADLC. Итак, ADLC на самом деле является подмножеством SDLC.
Мы как сообщество должны постоянно совершенствовать SDLC, помня о тонком балансе между функциональностью, удобством использования и безопасностью.
Эта диаграмма никогда не бывает одинаковой, потому что SDLC никогда не бывает стационарным. Именно SDLC постоянно превращается в треугольник сообществом на основе постоянной обратной связи разработчиков, тестировщиков и пользователей.
Такой процесс поворота постоянно меняется в соответствии с требованиями развертываемого приложения. Эта постоянно меняющаяся модель в реальном мире – это процесс DevOps.
Расположение SDLC внутри треугольника всегда будет варьироваться от приложения к приложению. Поворотное местоположение на самом деле зависит от характера развертываемого приложения, при разработке которого уделяется пристальное внимание:
Разнообразное сообщество, поддерживающее приложение с открытым исходным кодом, должно всегда поддерживать тонкий баланс между функциональностью, удобством использования и безопасностью.
Но как на самом деле?
В конце концов, разработчики, пользователи и тестировщики – все люди. Будь то локальная или виртуальная, культура DevOps и рабочие места должны принять простую идею сострадания. Рабочее место, где проявляют доброту к коллегам, обязательно повысит производительность как ADLC, так и SDLC!
Речь идет не только о веб-приложениях, но и о людях. Именно они постоянно их создают, развертывают и поддерживают. В этом суть сообщества, и именно поэтому DevOps – это тоже культура. Культура DevOps охватывает управление не только веб-приложением, но и людьми, которые делают его реальностью.