
Тази статия е написана от нашия специален гост блогър Димитър Атанасов. Димитър е Solution Architect и има над 10 години опит в областта на business intelligence, софтуерен дизайн и архитектура.
DevOps набира популярност много бързо и може би сте се замисляли как може и вашата организация да се възползва от него. Въпреки, че се е породил от нуждите на SaaS тенденцията, всъщност всяка софтуерна компания може да постигне значителни оптимизации с него. DevOps едва ли би могъл да навреди, по-скоро въпросът е как да се извлече максимална полза от него. За да отговорим на този въпрос, трябва да вникнем в самите основи на тaзи вече не толкова нова методика. DevOps е естествена стъпка към по-гъвкав процес на разработка, добавяйки внедряването на софтуера в картината. Той следва същите принципи, зададени от Agile Манифеста. Първият принцип в него гласи:
“Хората и взаимодействията преди Процесите и Инструментите” (“Individuals and interactions over processes and tools”)
Но не бяха ли инструментите основното в DevOps? Да, инструментите са основна сила на DevOps, но по-важно е как тези инструменти се използват и още по-важно – от кого. Alex Honor, един от най-уважаваните експерти в DevOps общността, споделя своя опит в оптимизацията на процеси в тази много добра статия. Според него:
“избирането и налагането на инструмент е най-неподходящата първа стъпка към подобряването на важна функция” (“selecting and instituting a tool is almost always the worst first step in improving an important function”)
Той представя собствения си подход за подобряване на даден процес: “Хората преди Процеса преди Инструментите” (“People over Process over Tools”) е неговото мото. Винаги първата му стъпка е да намери правилните хора, които са най-запознати или са тези, които действително вършат работата. Следваща стъпка е включването на тези хора при анализирането на процеса и идентифициране на неефективностите и слабите звена. Следва търсене на решения на тези проблеми, и чак накрая – намиране на инструменти за канализиране на процеса. Вижда се, че служителите всъщност трябва да бъдат основните двигатели на тази трансформация. И това е логично, тъй като крайната цел е подобряване на точно тяхната ежедневна работа.
Хората са изключително важни, ако искаме DevOps да сработи добре. И Agile и DevOps поставят в основата си комуникацията и сътрудничеството в екипа. За да съборим стените между Dev и Ops екипите, всеки един член от тях трябва да бъде добре запознат с общата цел. Всички членове на екипа трябва да имат добро разбиране за това как работи целият процес и как те могат да дадат своя принос. След това, екипът е този, който може най-добре да генерира идеи за това как може да се подобри процесът. Те са и тези, които могат най-добре да разучат и внедрят най-подходящите инструменти, за да изпълняват своята работа ефективно. В крайна сметка, кой не иска да направи работата си по-лесна и автоматизирана.
Разбира се, напълно възможно е екипът да няма необходимия манталитет или да му липсват някои от уменията. Някои от членовете на екипа може да са твърде нови, а други – могат да се окажат прекалено привикнали към стария начин на правене на нещата. Но поставянето на всички на обща основа е съществена стъпка към успеха. Необходими са споделени ценности и култура. Да се чувстваш част от екип с обща добре дефинирана цел е невероятен мотиватор. По този начин промяна в процеса всъщност може да дойде от самия екип, вместо да бъде налагана отвън. Добрата подготовката на екипа в комбинация със свобода да иновира е най-добрият начин да се стартира с DevOps.