• Home
  • Blog
  • Porque é que as melhorias e a manutenção são tão importantes como as novas funcionalidades

Porque é que as melhorias e a manutenção são tão importantes como as novas funcionalidades | Development Talks

Na série de entrevistas Development Talks, damos-lhe uma vista de olhos nos bastidores dos nossos processos de desenvolvimento. Desta vez, Joey, um dos nossos desenvolvedores de back-end, falou. Ele explicou-nos porque é que trabalhar na manutenção é tão importante como construir novas funcionalidades. O que é que consideramos como manutenção? E como é que a fazemos?

Publicado em
29 de jun de 2021
Tempo de leitura
7 Minutos
Redigido por
Knowly

Recebemos inúmeros pedidos de funcionalidades todas as semanas. Fazemos o nosso melhor para considerar o feedback que recebemos dos nossos clientes quando criamos coisas novas.

Embora seja fácil ver novos recursos, eles não refletem imediatamente muito do nosso importante trabalho de desenvolvimento. Então, nossa coruja de marketing Priscila entrevistou um de nossos desenvolvedores de back-end, Joey, sobre a importância da manutenção e como os desenvolvedores alternam entre diferentes tipos de trabalho.

Priscila:Obrigada por se juntar a mim para esta entrevista, Joey! Espero que possamos explicar aos nossos clientes e leitores o que é o trabalho de manutenção que fazemos para o Easy LMS e por que ele é necessário. Podes começar por explicar que tipo de trabalho fazemos para manter o Easy LMS? 

Joey:O prazer é meu. Vou tentar explicar as coisas sem ser demasiado técnico. Temos dois tipos de trabalho de manutenção. O primeiro é a correção de erros que aparecem no sistema e que os clientes reportam. O outro é a correção de coisas que nós próprios descobrimos e que requerem melhorias, pelo que trabalhamos para as melhorar.

Priscila: Certo. Então, poderia explicar como isso funciona? Trabalha sob demanda ou planeja o que melhorar com antecedência?

Joey:Bem, normalmente trabalhamos em ciclos planeados de três semanas. A demanda de trabalho vem do Product Owner, que mantém uma lista de melhorias coletadas com base no feedback de clientes, pessoas da empresa e idéias que nós mesmos temos. 

Anteriormente, trabalhávamos em projectos regulares de desenvolvimento de funcionalidades em que todos os tipos de melhorias e trabalhos de manutenção se sobrepunham. Isso significava que éramos interrompidos pela correção de erros e tínhamos de nos desviar das novas funcionalidades que estávamos a criar.

Recentemente, tentámos algo novo. Adicionámos um ciclo de melhorias ao nosso ciclo de desenvolvimento de funcionalidades. Assim, agora temos duas equipas de desenvolvimento a trabalhar no Easy LMS: uma a trabalhar no desenvolvimento regular de funcionalidades e outra a trabalhar em melhorias. Estas equipas trocam de tarefas a cada três semanas.

A equipa de melhorias dedicada trabalha numa lista de melhorias, incluindo bugs, escolhendo o item de maior prioridade dessa lista. Então, uma vez que a história [de desenvolvimento] esteja completa, nós avaliamos qual é o próximo item de alta prioridade. Desta forma, trabalhamos com a lista durante o ciclo de três semanas.

Acho que toda a gente está satisfeita com a forma como está a correr. Estamos a tentar encontrar o equilíbrio perfeito entre a correção de erros e a melhoria de coisas não relacionadas com erros.

Priscila:Ok. Isso soa como uma maneira melhorada de trabalhar, de facto! Porque é que trabalhar na manutenção é tão importante como construir novas funcionalidades?

Joey:Bem, é como uma casa. Se você constrói uma casa e nunca a mantém, você começará a ter muitos problemas. O mesmo acontece com o software. Se partes do sistema ficarem desatualizadas e sem manutenção, elas podem causar problemas com o tempo.

Além disso, mudamos regularmente a nossa forma de trabalhar. Precisamos de manter o sistema atualizado com a forma como trabalhamos agora. Levaria mais tempo a criar novas funcionalidades se precisássemos de tocar numa parte do sistema que não é mantida. 

Se não mantivermos o sistema, haverá menos coisas a funcionar a longo prazo

E a necessidade de manutenção continuará a crescer. Em suma, se não corrigirmos os erros e não mantivermos o sistema, este criará mais erros e, a longo prazo, menos coisas estarão a funcionar.

Priscila: Certo. Então, as 'melhorias' são caraterísticas ou correções?

Joey:Essa é uma área cinzenta. Nós chamamos de 'melhorias' coisas que adicionam a um recurso existente. Elas não são um recurso totalmente novo. Por exemplo, lançamos recentemente uma melhoria para o recurso Grupos da Academia. Agora é possível adicionar uma imagem de capa como uma imagem de descrição para cada grupo na Academia. Chamo-lhe uma melhoria, mas também lhe podemos chamar uma funcionalidade. É um pouco difícil de diferenciar. Mas eu diria que as melhorias são geralmente as mudanças menores que fazemos nos recursos atuais. 

Priscila:Que tipo de trabalho prefere, o desenvolvimento regular de funcionalidades ou trabalhar na equipa de melhorias?

Joey: Eu diria que ambos. Gosto muito de mudar para outros projectos ao fim de algum tempo. Não é que me aborreça, mas é bom mudar e trabalhar em coisas diferentes.

Priscila:Ok. Você consegue terminar tudo o que começa a construir no ciclo de três semanas? Ou, deixa-se para a equipa seguinte ou para outro ciclo?

Joey:Devemos terminar tudo o que começamos a construir no mesmo ciclo. É muito fácil criar algo grande e nunca o terminar. Mas se estivermos realmente concentrados em melhorar o produto, acabamos por o terminar. O que quer que façamos, mesmo que acabemos por não gostar, é feito em três semanas.

Nunca sabemos exatamente quanto tempo será necessário para construir ou melhorar algo. Portanto, a coisa completa pode não estar terminada em três semanas, mas teremos algo que funciona e agrega valor ao sistema.

Priscila:Isso faz sentido. Acho que também nos dá uma sensação de realização no final. Tens alguns exemplos de trabalhos recentes que tenhas feito em melhorias ou manutenção?

Joey:A maior parte da nossa manutenção não afecta diretamente os clientes. No entanto, muito do nosso trabalho de manutenção torna possível a criação de recursos futuros. Por exemplo, acabamos de lançar uma melhoria que permite que os administradores reordenem os grupos na Academia. Pode parecer uma pequena mudança para o administrador, mas na verdade tivemos que reconstruir grande parte dessa página para tornar isso possível.

Também melhorámos o sistema de exportação. O administrador apenas notará que agora pode exportar maiores quantidades de dados de uma só vez. Mas tivemos de criar um sistema totalmente novo que pudesse suportar essas exportações e trabalhar mais rapidamente.

Muitas das manutenções são feitas no nosso ambiente de desenvolvimento e melhoram a forma como podemos realmente criar novas funcionalidades - pode ser atualizar ou alterar o código. Ainda assim, pode tornar mais fácil para os novos programadores trabalharem no nosso código. Também torna mais fácil testar o sistema antes de implementar algo online. Isso evita que bugs apareçam e incomodem os clientes...

Priscila:Isso é uma coisa boa. Já viu o impacto disso?

Joey:Com certeza. Todos os problemas que encontramos durante os testes não ficam online. Automatizámos muitos dos testes. Temos ensinado mais pessoas na empresa a testar corretamente e a envolver mais pessoas em todo o processo. Dessa forma, podemos detetar pequenos erros que os clientes nem sequer notam.

Priscila:Quais são os planos para o futuro em termos de manutenção?

Joey:É a continuação do que estamos a fazer agora. Como disse, toda a ideia de ter uma equipa dedicada a melhorias é nova, e estamos muito satisfeitos com ela. Como Thomas explicou, também estamos mudando cada vez mais partes do sistema para uma arquitetura de microsserviços.

Há sempre espaço para melhorias no sistema e na forma como trabalhamos. No entanto,  estou muito satisfeito com as melhorias que fizemos até agora, incluindo os nossos processos e a nossa forma geral de trabalhar. 

Priscila:Do que pude entender e da minha perspetiva não técnica, concordo com você! Obrigado por participar da entrevista, e estamos ansiosos por mais melhorias.

Joey:De nada. Eu também!

Veja mais dos nossos blogs

Caroline

Caroline

12 de dez de 2024

Explicação das nossas prestações de emprego secundário

While your salary is a big deal when picking a job, let's not forget the perks that come with it. The secondary benefits can really sweeten the deal! And we believe we've put together a fantastic package. Dive into all our wonderful extras!

Ler mais
Caroline

Caroline

8 de abr de 2025

Trabalhe e prospere!

Trabalhar para a Easy LMS é gratificante! Claro, oferecemos um salário competitivo, abonos de viagem e trabalho remoto, e ainda 25 dias de férias pagas por ano! Mas além disso temos orgulho em oferecer benefícios que ajudam você a se sentir e fazer o seu melhor. O seu bem-estar, físico e mental, é a nossa maior prioridade! Porque os nossos funcionários são a espinha dorsal da nossa organização.

Ler mais
Caroline

Caroline

22 de abr de 2025

O seu primeiro mês

Quando se tem um novo emprego, está-se ansioso por começar! Ao mesmo tempo, há sempre uma boa dose de nervosismo. O que é que o espera? Como serão as suas primeiras semanas? E com que rapidez pode realmente acrescentar valor? Este último é o nosso objetivo. O nosso programa de integração claro para engenheiros de software ajudá-lo-á a conhecer a nossa empresa, os seus colegas e as suas tarefas num instante! Veja como lhe damos o pontapé de saída!

Ler mais