Este artigo também está disponível em:
Nós distinguimos três tipos de mudanças: bugs, características e mudanças na infraestrutura ou manutenção do sistema. O estágio inicial é diferente para cada mudança, mas eles compartilham todos o mesmo processo de desenvolvimento, teste e implantação.

Bugs reportados pelo cliente
Sempre que um bug é reportado ao nosso serviço ao cliente, esse bug é reportado em nossa central de atendimento interno. Da central de serviço interno, o bug é validado pela equipe de QA. Os bugs válidos são então encaminhados para nossa equipe de suporte ao desenvolvimento1 que lida com os bugs. A partir desse momento, eles seguem o mesmo processo de desenvolvimento das novas funcionalidades.

Características
Os recursos do roteiro que são selecionados para desenvolvimento são escritos em critérios de aceitação pelo gerente de produto. Antes que o recurso seja implementado, o recurso é discutido e refinado por todas as equipes envolvidas.

Manutenção de infra-estrutura e/ou sistema
Há várias razões que causam uma mudança em nossa infra-estrutura/sistema.

Há atualizações de segurança para softwares de terceiros dos quais nosso produto depende.
Há novas versões para softwares de terceiros dos quais nosso produto depende.
São necessárias mudanças na infra-estrutura/sistema para melhorar nosso produto ou processos de trabalho.

Estas mudanças que são selecionadas para desenvolvimento são então discutidas e depois implementadas pela nossa equipe de desenvolvimento, da mesma forma que as características são feitas. Dada nossa política de desenvolvimento seguro, nós damos prioridade às atualizações de segurança.

Processo de desenvolvimento
O processo tem as seguintes etapas:

Discussão: Os critérios de aceitação são escritos/aperfeiçoados para a mudança pretendida. Isto assegura que todos que estão trabalhando no recurso/mudança saibam qual é o resultado final pretendido. O nosso objetivo é fazer muitas pequenas melhorias em relação às grandes mudanças.
Desenvolvimento: pelo menos dois desenvolvedores trabalham no código. Nós usamos desenvolvimento testado. Nós testamos nosso código com unidade automatizada, integração, testes funcionais e de aceitação. Todos os testes novos e existentes são exigidos para passar antes de ir para a etapa de revisão do código.
Revisão do código: todas as mudanças são revisadas por pelo menos um outro desenvolvedor que não tenha trabalhado no código. Aqui nós verificamos se o código está de acordo com os padrões. Nós usamos o OWASP top102 para verificar se há vulnerabilidades. A mudança não pode passar para o próximo estágio até que todo o feedback seja resolvido e todas as mudanças no código tenham sido revisadas novamente.
Garantia de Qualidade: As mudanças são testadas pela equipe de GQ. Se as mudanças não alcançarem os critérios de aceitação, padrões de acessibilidade ou tiverem outros problemas, todo o processo retorna ao estágio de desenvolvimento.
Fundir: Todas as mudanças são fundidas na versão de desenvolvimento do nosso produto.
Lançamento: Nós lançamos uma nova versão do nosso software diariamente:
Nós colocamos a última versão de desenvolvimento em nosso ambiente de desenvolvimento para testes.
Nós executamos o teste de aceitação em toda a aplicação.
Se tudo passar, nós implantamos todas as mudanças na produção.

Notas
A equipe de apoio ao desenvolvimento é uma equipe de desenvolvedores que ajuda com o suporte do nosso produto. A maioria dos nossos bugs são resolvidos por esta equipe.
O OWASP top10 é uma lista das vulnerabilidades mais comuns. Uma lista pode ser encontrada no site do OWASP: https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project|||
Este artigo foi útil?
Cancelar
Obrigado!