Processos de desenvolvimento, ou quanto custa para fazer um site

Certa vez, o capataz discutiu com um cliente em potencial a reforma de uma pequena casa. O dono da casa estava preocupado com a inclinação das paredes. A casa foi construída de tijolos, as paredes de tijolos apenas ficavam no chão. Suportes de madeira foram reforçados em todo o perímetro da casa, mas as paredes ainda estavam tentando desabar. 

- Sua casa está em mau estado, é preciso reconstruí-la - disse o capataz. - Vamos esticar o cabo de força para alimentar o equipamento, cavar uma fossa, fazer a drenagem, encher a fundação ... - Não, não! - interrompeu-o o dono da casa, - não preciso de cova, preciso de paredes! Casa! - Nesse caso, talvez você pense em comprar uma casa modular? - sugeriu o capataz. 

Falei com uma startup no mês passado. Ele tem um serviço da web em funcionamento que diferentes pessoas vêm escrevendo há vários anos, e agora a gerência está pensando no que fazer com ele. Os fundadores me contaram sobre o desejo de contratar uma equipe de dez desenvolvedores para reescrever ou modernizar o aplicativo. Perguntei a eles sobre a história do usuário, a documentação, o rastreador de problemas e eles responderam que não os tinham. Eles pediram uma lista do que sugiro que façam e eu escrevi o seguinte:

  1. Liste os principais parâmetros que afetam as vendas: SLA, funcionalidade, qualquer coisa para vincular as tarefas virtuais ao mundo real.

  2. Defina contextos DDD e crie documentação de alto nível para discutir a arquitetura e ajudar novos desenvolvedores a se familiarizarem com o projeto.

  3. Identifique os gargalos do sistema que estão causando problemas de escala e disponibilidade.

  4. Combine as metas de médio prazo da equipe de TI com a alta administração.

  5. Crie um fluxo de trabalho com base em ferramentas de interação de equipe, como um quadro, rastreador, mensageiro, repositório.

  6. Organizar o processo de contratação e adesão ao projeto de novos desenvolvedores.

  7. Estabeleça sistemas de monitoramento e backup.

  8. Faça uma decomposição das tarefas de médio prazo em etapas e escreva um cronograma.

  9. Faça CI / CD.

  10. Escreva um plano de mudança de arquitetura.

  11. Priorize tarefas no backlog.

  12. IT- .

? - . « ". 

, , . . , , .

.

  1. , : , , , , , . , , - , IT- - , . . , , - . - , . . , , , . Oracle. : , , — , , , , , , , . , -, , . Oracle corp, .

  2. - - . , . , - . , .

  3. - , . .

  4. - , IT-. - , , , , .

  5. , , , , , code review, , - . SLA - , .

  6. . . , , . . . - , , , . . , , . , - .

  7. , , - , MVP. , . , , . - , . 

  8. , , . - , .

  9. (CI/CD) . , , . CI/CD - . , . . git. CI/CD - , , QA , , , . , . , , . 

  10. - , , . . . . , . , .

  11. -, . SCRUM planning-. . - . , . , , .

  12. , , , , , - . .

, -? , " Wordpress, 38% - ». . SAAS, outsource. , IT. , , . , , , -, , , , , .

E se você apenas escrever código sem planos, testes, rastreadores - basta ligar e discutir ao longo do caminho? Talvez os desenvolvedores entendam o problema corretamente e escrevam a solução correta, ou talvez tenham que mudar de desenvolvedor várias vezes e reescrever o aplicativo várias vezes. A diferença está na previsibilidade do resultado.




All Articles