Executando verificação de segurança...
3

Guia de Estrutura e Processos de Desenvolvimento: Do Planejamento à Entrega de Valor

O que você vai ler a seguir é um roteiro completo para organizar times de desenvolvimento. Vamos explorar a estrutura de equipe, metodologias e os processos fundamentais, do planejamento à entrega, para garantir a eficiência no ciclo de software.

Introdução

Este documento propõe uma estrutura de trabalho projetada para otimizar o gerenciamento, fomentar a colaboração entre os membros e garantir entregas de valor contínuo ao cliente final.

Utilizando como alicerce a metodologia SCRUM, definimos um fluxo que integra papéis essenciais para o sucesso do projeto: profissionais responsáveis pelo levantamento de requisitos e criação de histórias; designers para a prototipagem de telas; uma equipe de desenvolvimento bem definida (Front-end e Back-end); e analistas de qualidade (QA) dedicados à criação de cenários de testes e validação das entregas.

Guia

  • Estrutura
  • Refinamento – Fluxo de Definição e Documentação de Funcionalidades
  • Planejamento da Sprint e Estimativa de Esforço
  • Monitoramento da Sprint e Alinhamento da Equipe
  • Execução da Sprint e Preparação do Próximo Ciclo
  • Gestão de Incidentes e Hotfixes
  • Validação de Qualidade, Homologação e Entrega
  • Retrospectiva e Melhoria Contínua do Processo
  • Considerações Finais

Estrutura

  • Refinamento;
  • Planning;
  • Ponto de Controle (Daily ou Semanal);
  • Sprints de 2 Semanas ou 3 Semanas;
  • Gestão de Incidentes;
  • Retrospectiva;

Refinamento - Fluxo de Definição e Documentação de Funcionalidades

O processo se inicia com os profissionais responsáveis pelo contato com o cliente ou partes interessadas (stakeholders), a fim de obter os requisitos, as necessidades e as dores do negócio. Com isso, é feito um refinamento das ideias e uma análise sobre o que foi levantado, definindo a necessidade e a prioridade.

Com esse refinamento serão feita as histórias de desenvolvimento, documento esse que serve tanto como documentação do andamento do software, quanto principalmente para guia dos desenvolvedores fazerem a tarefa, deve estar bem escrito ao ponto de ficar claro o objetivo da tarefa e fatores importantes como regras de negócio e detalhes importantes que será levado em consideração no momento do desenvolvimento.

Junto da historia, é recomendado conter os detalhes de tela dessa tarefas, seja para localização dentro do projeto, seja para implementação dessa tela, conter um design mostrando o visual e os detalhes de fontes, cores e espaçamentos é crucial para o melhor desenvolvimento assertivo de interfaces.

Nesse momento é necessário implementar na historia o cenário de testes iniciais, um campo onde será organizado regras nas quais o desenvolvedor deverá entregar junto com a tarefa, seja validação de campos de entrada, seja permissão de usuários ou comportamentos esperados pela tarefa.

Planejamento da Sprint e Estimativa de Esforço

Possuindo uma quantidade de histórias formuladas e validadas pelo cliente ou parte interessada, inicia-se o fluxo de desenvolvimento, orquestrado pela estrutura SCRUM.

Tendo inicio pelo evento Planning: Evento esse que acontece reunindo os membros da equipe, requisitos, designs, desenvolvedores e testes. O objetivo é apresentar as tarefas/histórias desenvolvidas a equipe de desenvolvimento, detalhar a necessidade da tarefa, uma explicação inicial e prioridade da demanda. Não misture equipes de projetos diferentes em uma única Planning, o desenvolvedor pode até acrescentar informações para a demanda, mas não tem porque ele participar e palpitar em algo que ele não irá trabalhar.

Momento também reservado para que a equipe de desenvolvimento discorra junto sobre as dificuldades da implementação da tarefa, tire suas duvidas e apresente ideias relacionadas que poderiam apoiar o desenvolvimento, além de servir de conversar entre os membros de desenvolvimento para alinharem ideias e tecnologias.

Ao final da discussão sobre a tarefa devera ser dado a demanda uma pontuação de dificuldade, que será usado como termômetro em futuras entregas para contabilizar os pontos de dificuldade que a equipe de desenvolvimento consegue entregar no prazo solicitado.

A quantidade ideal de tarefas irá depender do tamanho da equipe de desenvolvimento, porém é preferível que a toda nova sprint, tenham tarefas equivalentes ao desempenho de entrega da equipe de desenvolvimento.

Por fim, teremos definido uma lista de tarefas que serão desenvolvidas durante o decorrer da sprint e tarefas com prioridades menores na lista de Backlog.

Monitoramento da Sprint e Alinhamento da Equipe

Para uma boa comunicação com o cliente e buscando o entendimento de todos sobre o que está sendo feito durante a sprint é importante a equipe ter um ponto de controle para que seja feito a evolução das tarefas durante a sprint, dependendo da equipe uma daily pode ser implementada, todos os dias, no máximo de 15 minutos a equipe se reúne para falar sobre o desenvolvimento, dificuldades, necessidades e afins. Outro modelo que poderia ser adotado seria uma vez na semana, reunir os membros para que fosse tratados a respeitos desses pontos da tarefa.

A daily não deve ser feita a fim de gerenciar pessoas, o objetivo é ter conhecimento de possíveis problemas ou dificuldades que pode prejudicar a entrega!

Execução da Sprint e Preparação do Próximo Ciclo

No decorrer da sprint, os responsáveis por alinhar os requisitos com o cliente terão como missão continuar obtendo os requisitos das próximas tarefas, a fim de que toda Planning contenha demandas suficientes para a equipe de desenvolvimento atuar na próxima sprint.

Durante o ciclo atual, a equipe de desenvolvimento alinhará as demandas para que seja feita a implementação da tarefa, o cumprimento do cenário de testes e a realização de testes de código. O objetivo é manter um ciclo de qualidade que evite que o projeto em produção receba componentes que causem a quebra do sistema.

Antes de avançar para a equipe de testes, as entregas devem ser submetidas a um Pull Request e analisadas por um desenvolvedor mais experiente da equipe (Code Review). Essa etapa é essencial para garantir a qualidade técnica e o padrão do código, onde correções e ajustes necessários serão solicitados antes da integração final.

Ao mesmo tempo em que serão notificadas issues de demandas anteriores para a equipe de desenvolvimento corrigir, neste momento é fundamental realizar uma triagem da gravidade: erros críticos devem ser tratados imediatamente, enquanto ajustes menores devem ser documentados no Backlog. Isso garante que a manutenção do sistema não comprometa o andamento e o prazo das novas funcionalidades da sprint.

Gestão de Incidentes e Hotfixes

Apesar de todo o planejamento, problemas poderão surgir no ambiente de produção. Quando um erro é reportado, é dever da equipe realizar uma análise imediata para definir o nível de gravidade do problema.

Caso o problema seja algo Crítico, aciona-se o fluxo de Hotfix. Neste cenário, a tarefa atual da sprint é pausada e o desenvolvedor ou equipe deve atuar com prioridade na correção, criando uma versão de emergência para corrigir o problema.

Se o erro for classificado como Não-Crítico, ele deve ser documentado como um bug no Backlog e priorizado na próxima Planning. Essa análise evita que interrupções constantes prejudiquem a entrega das funcionalidades comprometidas na sprint.
Validação de Qualidade, Homologação e Entrega

Cada entrega da equipe de desenvolvimento deve passar pelo profissional de testes, a fim de que seja feita a validação do cenário de testes escrito nas histórias e para que seja realizado o teste da implementação no ambiente de homologação. O objetivo é identificar problemas de desenvolvimento, falhas de regras e más experiências para o usuário final.

Após a validação dos testes, a equipe responsável pelo contato com o cliente deve comunicar a nova implementação às partes interessadas. Essa notificação pode ser feita via e-mail, reunião ou pelo canal de preferência do cliente.

Retrospectiva e Melhoria Contínua do Processo

É imprescindível um ponto de retrospectiva com a equipe, buscando alinhar e trabalhar os feedbacks entre os membros sobre as tarefas, requisitos e problemas que surgiram no decorrer das sprints. O foco deve ser em recomendações de mudanças e tudo que possa agregar na melhoria da equipe e do desenvolvimento. Recomenda-se que seja feita uma reunião como essa após algumas sprints (duas ou três), a depender da maturidade da equipe e da situação atual do projeto.

Considerações Finais

A implementação deste manual de processos é o primeiro passo para construir uma equipe de alta performance. Mais do que ferramentas ou ritos do SCRUM, o sucesso deste modelo depende da colaboração entre as partes: analistas, desenvolvedores e QA trabalhando em sintonia.

É importante lembrar que este guia é um ponto de partida. Através das retrospectivas e do monitoramento constante, a equipe deve ter a autonomia para adaptar e refinar esse fluxo conforme sua maturidade cresce. O objetivo final é criar um ambiente de trabalho onde a técnica, a organização e o bem-estar da equipe caminhem juntos rumo a entregas cada vez mais assertivas.

Autor:

linkedin.com/in/emanuelbitencourt

Artigo postado no LinkedIn e Medium:
Guia de Estrutura e Processos de Desenvolvimento: Do Planejamento à Entrega de Valor - Linkedin
Guia de Estrutura e Processos de Desenvolvimento: Do Planejamento à Entrega de Valor - Medium

Outros artigos publicados:

Boas praticas técnicas - Issues
Um Commit Malfeito pode Destruir Seu Final de Semana.

Carregando publicação patrocinada...