fbpx

Орчин үеийн технологийн байгууллагуудын хувьд Agile аргачлал бол уян хатан, хурдан, хэрэглэгч төвтэй хөгжүүлэлтийн үндсэн тулгуур болсон. Agile-ийн дэд аргачлалууд дундаас хамгийн өргөн хэрэглэгддэг нь Scrum, харин Agile соёлын дараагийн шатанд DevOps буюу тасралтгүй интеграци ба хүргэлтийн соёл бий болсон юм.

Хоёулаа бүтээмж, чанарыг сайжруулах зорилготой ч, Scrum нь багийн түвшинд төслийг удирдах арга бол DevOps нь байгууллагын түвшинд программ хангамжийг бүтээх, турших, байршуулж, хянах бүх процессыг автоматжуулах арга юм.
Тэгвэл эдгээрийн гол ялгаа юу вэ, ямар нөхцөлд аль нь илүү тохиромжтой вэ?

1. Суурь зорилго ба анхны үүсэл

    • Scrum нь 1990-ээд онд программ хангамжийн төслийн менежментийн уян хатан аргачлал хэлбэрээр үүссэн. Түүний зорилго бол багийн уялдаа, хариуцлагыг нэмэгдүүлж, итератив буюу давталттай хөгжүүлэлтийн орчин бүрдүүлэх.

    • DevOps нь 2009 онд үүсэж, хөгжүүлэлт (Development) ба ажиллагаа (Operations) хоёрын хоорондын зөрчлийг арилгах зорилготой байв. Энэ нь технологийн байгууллагуудын код → бүтээгдэхүүн хүргэх хурдыг нэмэгдүүлэх, алдаа багасгах зорилготой.

Товчхондоо:

Scrum нь “багийн ажлын зохион байгуулалт” бол DevOps нь “бүтээгдэхүүний хүргэлтийн автоматжуулалт” юм.

2. Scrum аргачлалын онол ба бүтэц

Scrum нь 1990-ээд онд Хиротака Такеучи, Икуджиро Нонака нарын “The New New Product Development Game” (Harvard Business Review, 1986) өгүүллээс үүдэлтэй. Тус аргачлал нь:

      • Спринт (Sprint) – богино хугацааны хөгжүүлэлтийн мөчлөг,
      • Daily Scrum (Өдөр тутмын хурлууд) – харилцаа, уялдааг сайжруулах хэрэгсэл,
      • Review ба Retrospective – тасралтгүй сайжруулалтын механизм, гэсэн үндсэн элементүүдийг агуулдаг.

Scrum нь хамтын шийдвэр гаргалт, ил тод байдал, хэрэглэгчийн оролцоог дэмжих замаар төслийн эрсдэлийг бууруулдаг. Түүний гол элементүүд:

      • Product Owner – бүтээгдэхүүний шаардлага, тэргүүлэх чиглэл тодорхойлно.      
      • Scrum Master – багийн үр ашгийг дэмжиж, саад тотгорыг арилгана.                        
      • Development Team – программ хангамжийг бүтээж, спринтийн зорилгыг биелүүлнэ.

Scrum нь ил тод байдал, хариуцлага, хамтын шийдвэр гаргалтыг түлхүү дэмждэг.

3. DevOps аргачлал ба CI/CD соёл

DevOps нь “Development” болон “Operations” гэсэн хоёр үгийг нэгтгэсэн бөгөөд 2009 онд Патрик Дебуа “DevOps Days”-ыг санаачилснаар өргөн хэрэглээнд нэвтэрсэн.
DevOps-ийн үндсэн тулгуур элементүүд нь:

      • Continuous Integration (CI) – кодын тасралтгүй нэгтгэл,

      • Continuous Delivery (CD) – автомат хүргэлт ба байршуулалт,

      • Infrastructure as Code (IaC) – дэд бүтцийн автомат удирдлага,

      • Monitoring & Feedback – бодит хэрэглээний өгөгдөлд суурилсан хяналт.

DevOps-ийн гол зорилго нь код хөгжүүлэлтээс ашиглалт хүртэлх хугацааг багасгах, системийн найдвартай ажиллагааг сайжруулах явдал юм. Puppet State of DevOps Report (2023) судалгаагаар DevOps-ийг бүрэн хэрэгжүүлсэн байгууллагуудын хүргэлтийн давтамж 208 дахин, сэргээн засварлах хурд 2,600 дахин сайжирсан гэжээ. 

4. Scrum ба DevOps-ийн уялдаа

Scrum ба DevOps нь харилцан нөхөх шинж чанартай:

      • Scrum нь хөгжүүлэлтийн багийн зохион байгуулалт, зорилго, ил тод байдлыг хангадаг.

      • DevOps нь хүргэлтийн автоматжуулалт, тасралтгүй ажиллагаа, найдвартай байдлыг хангадаг.

Уялдааны түвшин:

ХэмжээсScrum-ийн хувь нэмэрDevOps-ийн хувь нэмэр
ХугацааБогино спринт мөчлөгөөр төлөвлөхCI/CD циклээр тасралтгүй хүргэх
ЧанарТест, review процессоор баталгаажуулахАвтомат туршилт, мониторинг ашиглах
Хамтын ажиллагааScrum баг доторх харилцааг нэмэгдүүлэхХөгжүүлэлт ба ажиллагааны багийг нэгтгэх
ХариуцлагаБагийн түвшинд шийдвэр гаргахСистемийн түвшинд тасралтгүй сайжруулах

5. Хэрэгжүүлэлтийн түвшин ба хамрах хүрээ

ҮзүүлэлтScrumDevOps
Хэрэгждэг түвшинБагийн болон төслийн түвшинБайгууллага болон системийн түвшин
Үндсэн зорилгоХөгжүүлэлтийг уян хатан, итератив болгохХүргэлт, байршуулалт, системийн найдвартай байдлыг автоматжуулах
Циклийн онцлогСпринт (2–4 долоо хоногийн давталт)CI/CD (тасралтгүй интеграци ба хүргэлт)
Бүтээмжийн хэмжүүрVelocity, Burn-down chartDeployment frequency, MTTR, Lead time
Орц ба гаралтБэлэн болсон функцАшиглалтад оруулсан бүтээгдэхүүн

Scrum-ийн үр дүн нь “хэрэглэгчид хүргэхэд бэлэн болсон код” бол DevOps-ийн үр дүн нь “хэрэглэгчийн гарт хүрсэн, тогтвортой ажиллаж буй бүтээгдэхүүн” юм.

6. Бодит хэрэглээ

Netflix компани Scrum болон DevOps-ийг хослуулж, микро-сервис архитектур болон тасралтгүй хүргэлтийн системийг бүрэн хэрэгжүүлсэн.

      • Спринт бүрийн төгсгөлд шинэ функцуудыг CI/CD pipeline-аар дамжуулан автоматаар байршуулдаг.

      • Хэрэглэгчийн зан төлөвийг “real-time feedback loop”-оор дамжуулан шинжилж, дараагийн спринтийн backlog-д тусгадаг.
        Үр дүнд нь Netflix өдөрт дунджаар 1000+ deployment хийдэг ч системийн тасалдал 0.01%-иас хэтэрдэггүй.

    •  

7. Хэрэгжилтийн сорилт ба зөвлөмж

Гол сорилтууд:

    1. Соёлын ялгаа – Scrum “багийн уян хатан байдал”-д төвлөрдөг бол DevOps “системийн автоматжуулалт”-д анхаардаг.

    2. Хэмжүүрийн ялгаа – Scrum багийн гүйцэтгэлийг velocity-гаар хэмждэг бол DevOps хүргэлтийн хурд, системийн найдвартай байдлаар хэмждэг.

    3. Чадварын шаардлага – DevOps орчинд багийн гишүүд CI/CD, containerization, cloud deployment мэдлэгтэй байх шаардлагатай.

Дүгнэлт

Scrum ба DevOps нь хоёулаа Agile соёлын салшгүй хэсэг боловч өөр түвшинд төвлөрдөг хоёр өөр хандлага юм. Scrum болон DevOps нь өөр зорилготой ч, уялдаж байж илүү хүчтэй болдог. Scrum нь “хийх ажлыг төлөвлөдөг”, DevOps нь “хийсэн ажлыг хүргэдэг”. Бодит нөхцөлд олон байгууллага Scrum спринт дотор DevOps pipeline ашиглан туршилт, байршуулалтыг автоматжуулдаг.

      • Scrum → багийн ажиллагаа, спринт төлөвлөлт, итератив менежмент

      • DevOps → автоматжуулалт, тасралтгүй хүргэлт, системийн найдвартай байдал

Эцсийн дүнд эдгээрийг хослуулах нь:

“Хурдан хөгжүүлэлт” + “Тасралтгүй хүргэлт” = бүтээмжийн төгс хослол

Leave a Reply