Devops un canvi cultural i organitzatiu on tots guanyen

Devops un canvi cultural i organitzatiu on tots guanyen

Què és DevOps?

Per Elena Marcos

Si preguntes a un grup de deu persones que és DevOps és probable que cadascuna et doni una resposta diferent però igualment vàlida.

És una cultura? Una professió? Una metodologia de desenvolupament de software? És una moda que sembla durar i que acabarà convertint-se en un “fons d’armari”?

Podem dir que DevOps és una metodologia de desenvolupament de software basada en la integració entre desenvolupadors i administradors de sistemes, que permet que els desenvolupadors puguin enfocar-se només a desenvolupar i puguin desplegar el seu codi més rapidament.

Des del meu punt de vista el seu abast va més enllà i això es basa en canviar la perspectiva i la manera de treballar, obrint la comunicació, tot això des d’un punt de vista col·laboratiu que unifica els equips de desenvolupament i operacions d’una organització, aconseguint transformar la manera de fer les tasques dels equips.

Contràriament a les creences populars, DevOps no és només un procés ni es tracta només d’eines.

DevOps és un canvi cultural, una filosofia que canvia la manera de treballar i interactuar dels equips per a aconseguir els seus objectius.

Amb DevOps es promou una comunicació contínua més fluida, la col·laboració, la integració, la visibilitat i la transparència entre equips de desenvolupament d’aplicacions (Dev) i els seus homòlegs en operacions tecnològiques (Ops).

Aquesta relació estreta entre «Dev» i «Ops» s’estén a cadascuna de les fases del cicle de vida de DevOps: des de la planificació inicial del programari a les fases de codificació, compilació, proves i publicació, i en la posada en marxa, les operacions i la supervisió contínua.

Aquesta sinergia impulsa un bucle de retroalimentació contínua amb els clients sobre les millores, el desenvolupament, les proves i la posada en marxa. Un dels resultats d’aquests esforços és la publicació contínua i ràpida dels canvis que es necessiten en les funcions.

Algunes persones agrupen els objectius de DevOps en quatre categories: cultura, automatització, mesurament i ús compartit (CAMS, per les seves sigles en anglès), les eines de DevOps poden ajudar en aquestes tasques. Amb aquestes eines, els fluxos de treball de desenvolupament i operacions es converteixen en tasques més optimitzades i col·laboratives en automatitzar tasques que abans eren manuals, estàtiques o que comportaven molt de temps, i que són necessàries per a la integració, el desenvolupament, les proves, la posada en marxa o la supervisió.

Principals beneficis de DevOps

Colaboración

Les metodologies de software anterior a DevOps reconeixen el valor que els equips de desenvolupament, operacions i control de qualitat poden aportar si coexisteixen. Però no van posar l’accent a fomentar la col·laboració entre aquests equips.

DevOps promou un entorn en el qual els diferents equips treballen junts per aconseguir objectius organitzacionals comuns. Una autèntica revolució perquè no es tracta de complir amb objectius específics d’un departament, sinó objectius comuns. És pujar-se a les espatlles d’un gegant.

Es percep en funció de com augmenta la motivació i l’aprenentatge. Diferents departaments es reuneixen i intercanvien idees sobre les àrees de millora en el flux de treball operatiu d’un producte. Aquesta col·laboració també capacita als equips, ja que els dóna l’oportunitat d’ampliar i actualitzar la seva experiència tècnica en àrees que no pertanyen estrictament a la seva especialització. És guanyar per a tots.

Velocidad

Un dels beneficis inherents de DevOps és l’“augment la velocitat de creuer” accelerant el ritme de funcionament a la nostra organització.

DevOps augmenta la velocitat d’entrega de funcions i modificacions del nostre software a través de proves i integracións automatitzades.

Els desenvolupadors vigilen el producte durant tot el cicle de vida a la recerca d’actualitzacions de software o errors. Això redueix el temps per a monitorar, localitzar i corregir errors, la qual cosa accelera també el temps de comercialització. A més, es pot utilitzar Value Stream Mapping en DevOps. Ens ajudarà a identificar els colls d’ampolla a la producció i els processos que no aportin valor. Podrem treballar per a solucionar-los i, com a resultat, crear valor més ràpid.

Innovación

Per a la majoria de les persones, DevOps només pot significar fer les coses més ràpid amb uns costos més reduïts. Però hi ha un avantatge rellevant que no hem d’ignorar: la innovació empresarial.

Es pot definir la innovació empresarial com un procés d’intercanvi de noves idees que, quan s’implementin, agilitaran els fluxos de treball operatius i agregaran valor a una organització. Sovint, la innovació es produeix modificant un procés o sistema existent, creant altres nous o introduint una alternativa millor a un procés obsolet.

DevOps té la clau per a desbloquejar la innovació en el desenvolupament de software. Hem vist com DevOps permet lliurar productes de software ràpidament. Una entrega de software tan ràpida allibera part del temps dels desenvolupadors, per la qual cosa poden dedicar-lo a experimentar amb funcions addicionals o millorar l’eficàcia de les existents. Tenen temps per a validar la viabilitat d’aqyestes idees realitzant una prova de concepte i procedint d’acord amb els resultats amb una interrupció mínima del projecte actual.

DevOps fomenta la innovació en permetre que els equips aprenguin més i comprenguin millor les expectatives dels clients. La innovació generalment sorgeix de la pluja d’idees de diferents perspectives i l’intercanvi d’idees entre si. DevOps conrea i fomenta un entorn en el qual els desenvolupadors no estan restringits a un conjunt d’instruccions rígides. Això significa que l’abast de qualsevol projecte està obert a la innovació sempre que es compleixin els resultats finals.

La satisfacción del cliente

La satisfacció del client és la clau de l’èxit d’un negoci. És fonamental comptar amb la satisfacció dels nostres clients si volem continuar sent competitius i seguir créixer.

Els cicles de retroalimentació són un component important de qualsevol adopció de DevOps.

A la majoria de casos de desenvolupament de software empresarial, els circuits de retroalimentació permeten als usuaris finals, generalment els clients, realitzar un seguiment del progrés de la construcció de l’aplicació en diverses etapes i suggerir les modificacions desitjades. Els cicles de retroalimentació són generalment de naturalesa dinàmica i l’ajudaran a assegurar-se que els seus usuaris finals i desenvolupadors estiguin veient el mateix respecte a l’aplicació.

Devops accelera el lliurament de software, la qual cosa impactarà amb un efecte positiu en la satisfacció del client. A més, atès que DevOps agilita els diferents aspectes del seu flux de treball, podrà oferir els seus productes a un cost menor en comparació amb un competidor que no treballa amb Devops.

Agilitat

El mercat exigeix cada vegada ser més àgils en els lliuraments dels productes i serveis que oferim sense oblidar la qualitat. Per a combatre aquests desafiaments i ser competitius, les empreses hem d’introduir agilitat en els nostres processos.

DevOps compleix tots els requisits que es consideren àmpliament com a subconjunts d’agilitat, la qual cosa equipa a les empreses perquè siguin més àgils. Per exemple, les pràctiques de DevOps permeten que una organització sigui flexible quan es tracta d’equilibrar la seva capacitat a conseqüència de les fluctuacions de la demanda. Ens ajuda a comprendre com els clients utilitzen els productes i les seves preferències generals per a oferir contínuament funcions que aportin valor. També fa possible controlar característiques i requisits per a diverses aplicacions que s’executen en diferents plataformes. A més, l’adopció de DevOps millora la forma en què es realitza la gestió de canvis i garanteix que no relentitzi ni interrompi el procés actual. A banda, ajuda als líders de TI a superar els desafiaments que normalment duen a terme diferents processos aïllats.

Qualitat i fiabilitat

La qualitat del nostre software és important per raons òbvies. DevOps pot ajudar a maximitzar aquesta qualitat perquè canvia la forma en què les organitzacions realitzen les seves proves de software tradicional. Fa que les proves siguin un component crític en tot el Cicle de Vida i distribueix la responsabilitat a tots els enginyers involucrats.

La credibilitat del servei és una altra conclusió important d’un bon enfoc de DevOps. La credibilitat com a capacitat d’un sistema per a funcionar sense problemes dins de les seves limitacions ambientals de manera consistent. L’adopció de DevOps millora la credibilitat del servei, ja que millora la disponibilitat i connectivitat dels serveis necessaris per al bon funcionament d’una empresa.

Seguretat

Un altre benefici fonamental que porta una bona estratègia de DevOps és la seguretat reforçada.

La taxa de ciber delictes ha anat en augment i està costant a les organitzacions milions d’euros a causa del robatori de dades.

Devops amplia els components centrals de desenvolupament i operacions, introduint la seguretat com un component independent a la canalització. L’essència de DevSecOps és que tots els equips son responsables de la seguretat. 

DevSecOps ajuda a reduir costos; i a realitzar un seguiment minuciós, detectant problemes de seguretat a les primeres etapes de desenvolupament en lloc de gastar diners en seguretat després del llançament del producte.

DevSecOps segueix la filosofia de millores iteratives constants, la qual cosa fa que tot el procés de gestió de la seguretat sigui molt més fàcil. També accelera la velocitat de recuperació si succeeix algun incident de seguretat.

La implementació de DevSecOps portarà altres conclusions viables, com a vulnerabilitats minimitzades i valors predeterminats insegurs i cobertura de codi millorada, al mateix temps que enforteix els patrons de disseny segur en el flux de treball.

Reducció de costos

El major benefici d’una estratègia DevOps sòlida des d’una perspectiva empresarial és maximitzar la rendibilitat. Curiosament, hi ha diverses formes en les quals DevOps redueix els costos en una empresa, ja sigui directament o indirectament.

Métodos de DevOps

Existeixen diversos mètodes de DevOps comuns que les organitzacions utilitzen per accelerar i millorar el desenvolupament i les publicacions de productes. Normalment es presenten com a pràctiques i metodologies de desenvolupament de software. Entre els més populars estan Scrum, Kanban i Agile:

  • Scrum. Scrum defineix la manera en la que els membres d’un equip han de col·laborar per aconseguir entre tots accelerar els projectes de desenvolupament i control de qualitat. Les pràctiques de Scrum inclouen fluxos de treball principals i terminologia específica (sprints, blocs de temps, scrum diari [reunió]), i rols designats (Scrum Màster, propietari del producte [product owner]).
  • Kanban. Kanban es va originar a partir de les eficiències que es van aconseguir a la fàbrica de Toyota. Kanban prescriu que l’estat «en curs» (WIP, de l’anglès «work in progress») d’un projecte de software ha de controlar-se en un tauler Kanban.
  • Agile. Els anteriors mètodes de desenvolupament de software Agile continuen tenint una gran influència en les eines i les pràctiques de DevOps. Molts d’aquests mètodes, inclosos Scrum i Kanban, han incorporat elements de la programació Agile. Algunes d’aquestes pràctiques estan associades a una major capacitat de resposta als continus canvis en requisits i necessitats, els requisits de documentació en forma de casos pràctics, la realització de reunions diàries per a posar-se al dia i la incorporació de comunicació contínua amb els clients per a conèixer les seves opinions.

Conclusió

Els beneficis tècnics i comercials de DevOps són enormes.

Una estratègia sòlida i ben definida de DevOps i una implementació reeixida poden agilitar tot el procés de lliurament d’un extrem a l’altre.

Comença amb la qualitat del software central fins a inculcar bucles de retroalimentació dels clients per a garantir que els seus productes estiguin en línia amb els requisits i expectatives dels nostres clients. Per descomptat, enfrontarem molts desafiaments en el camí, com les barreres i resistències de la mentalitat d’algunes persones en els equips i la clàssica resistència general que hi ha al canvi, però una vegada superem aquests obstacles habituals, DevOps serà un èxit i redefinirà la forma en la qual opera el nostre negoci.

Si encara no tens DevOps a la teva organització, et convidem a fer el salt, perquè els seus beneficis són majors que els desafiaments que planteja.