Na preparação para uma nova versão do software que nossa empresa mantém, tenho trabalhado no que acredito ser uma abordagem realmente boa para resolver nossos problemas de escalabilidade. Eu tenho toda a intenção de reunir uma prova de conceito para validar o design no papel que realmente fará o que eu quero. Quando informei à equipe, o chefe tinha uma contraproposta, inspirada em parte pela maneira como descrevi as áreas problemáticas. O chefe também aceitou minha proposta de fazer duas provas de conceito para avaliar as alternativas.
Então, qual é a melhor maneira de resolver a prova de conceito? Temos critérios objetivos e subjetivos que estamos usando para avaliar as soluções. Gostaria de garantir que estamos comparando maçãs com maçãs com essas abordagens bastante diferentes.
- Temos requisitos para taxa de transferência e tamanho. Em resumo, sabemos que precisamos processar um certo número de objetos por segundo e manter essa taxa por uma hora.
- Precisamos avaliar a escalabilidade (adicionando mais núcleos e aumentando o número de objetos)
- Precisamos avaliar a facilidade de desenvolvimento (subjetivo)
- Precisamos avaliar como é fácil entender o algoritmo (subjetivo)
Eu tenho minha teoria sobre como as coisas vão melhorar, mas não quero que isso influencie meus resultados. Qualquer contribuição sobre como manter a objetividade nesse processo, e as coisas que talvez eu precise considerar, serão muito apreciadas.