Partilhe nas Redes Sociais

Agile-Ops, a próxima moda para o desenvolvimento de software?

Iqra Hamid, consultant da Mind Source

Publicado em 15 Setembro 2020 por Ntech.news | 331 Visualizações

Quando vamos ao dentista colocar um aparelho dentário ou fazer outro tratamento qualquer, convém visitá-lo regularmente para ajustes periódicos e follow-up para ver se está tudo alinhado com o pretendido, certo?

Agora, pense em como ficava o seu trabalho dentário se o dentista principal deixasse o follow-up para um dentista assistente, sem comunicar com ele, e o culpabilizasse caso algo corresse mal após a sessão principal.

O mundo de desenvolvimento de softwares também não é muito diferente deste exemplo.

As equipas de TI (tecnologias de informação) desenvolvem projetos tecnológicos para os clientes que esperam ter o acompanhamento dos profissionais durante e após a implementação do software na infraestrutura do cliente, em vez de ficarem só com um desenvolvimento estático nas mãos.

Os projetos tecnológicos têm três fases principais:

As equipas podem optar por seguir metodologias diferentes para cumprir com os objetivos do desenvolvimento do projeto.

Mesmo quando a equipa de desenvolvimento (Development) segue a metodologia Agile, em que a equipa foca-se na colaboração constante com o cliente para entregar software de qualidade com rapidez e eficácia, o software passa para uma equipa distinta de infraestrutura (Operations) que tem a responsabilidade de o estabilizar e manter na infraestrutura do cliente, sem mais preocupações para a equipa que o desenvolveu!

Por causa dos silos interdepartamentais entre os que desenvolvem e os que são responsáveis pela manutenção, sempre que se identifica um defeito ou a necessidade de efetuar um ajuste/atualização, a equipa de infraestrutura empenha-se em realizar correções, melhorias, atualizações e tudo que for necessário para não deixar cair o software do cliente.

Aqui entra a desordem entre o bom e o estável!

Quem desenvolve o software é diferente de quem faz a implementação do mesmo na infraestrutura do cliente, departamentos diferentes e sem interesse no que o próximo irá fazer. A passagem do desenvolvimento para a infraestrutura tradicionalmente significa uma passagem de responsabilidades sem voltas para trás.

A metodologia DevOps, diz respeito a uma cultura organizacional onde se fazem mudanças frequentes e incrementais nas versões do código para que o mesmo seja testado constantemente, requerendo uma colaboração constante dos programadores (Dev) com a equipa de Infraestrutura (Ops) em que não há uma distinção explicita nas responsabilidades de cada um.

Num ambiente DevOps, os programadores sabem não só desenvolver e testar o código, mas também conhecem a estrutura de gestão e manutenção e vice-versa para sincronizar o produto final com o objetivo de entregar um software atempadamente que seja de alta qualidade e que forneça uma experiência digital otimizada ao utilizador.

Seguir uma metodologia Agile-Ops significará uma cultura de agilidade no desenvolvimento + um ambiente organizacional que elimine os silos entre o departamento de desenvolvimento e o departamento de infraestrutura.

Todos trabalhariam em conjunto para não deixar ao próximo um produto “meio passado” evitando haver uma cultura de culpabilização entre os departamentos para problemas que surgirem durante o processo, desde a conceção do software até ao processo de manutenção do mesmo. Cada equipa idealmente comunicará claramente com o próximo, acumulando conhecimento do A ao Z, assumindo responsabilidade integral do produto final.

Os clientes não gostam de atualizações manuais que lhes façam perder tempo, nem gostam das falhas técnicas no software ou do tempo de inatividade (down-time).

Lembrem-se que é a satisfação do cliente que se traduz no sucesso das empresas tecnológicas e fazer uma entrega rápida, customizada e de alta qualidade ajuda muito a atingir este objetivo!


Publicado em:

Opinião

Partilhe nas Redes Sociais

Artigos Relacionados