Estimativa do tempo de envio de um arquivo
Como estimar o envio de um arquivo: limites de tamanho, verificação antivírus, retomabilidade, armazenamento e retenção. O recurso de arrastar e soltar é a parte fácil; o desafio está nos bastidores.
Arrastar e soltar é a parte fácil. Tudo o que vem depois é o bilhete em si.
A parte do upload de arquivos no navegador dá trabalho para algumas horas. O restante é uma funcionalidade. Os limites de tamanho são atingidos logo pelo primeiro usuário com uma câmera de celular de 4K. A verificação antivírus é imprescindível no momento em que você aceita qualquer coisa do público. Os uploads retomáveis se tornam importantes assim que alguém tentar enviar um arquivo de 2 GB usando o wi-fi de um hotel. Os custos do armazenamento de objetos se tornam reais quando o período de retenção é ilimitado e alguém começa a enviar seus backups.
A estimativa depende de quais desses itens estão dentro do escopo da equipe e quais foram deliberadamente deixados de lado. “Fazer upload de um arquivo”, sem esse contexto, refere-se ao dimensionamento do seletor, e não do sistema.
O que é dito na sala
Front-end: “Arrastar e soltar com uma barra de progresso: meio dia.”
Backend: “Para onde vão os bytes? Para o S3? Para o disco?”
Segurança: “Estamos fazendo verificação antivírus? Qual é o tamanho máximo?”
SRE: “Os uploads podem ser retomados ou precisam recomeçar do zero se a conexão cair?”
Finanças: “Custos de armazenamento? Por quanto tempo vamos mantê-los?”
Perguntas que vale a pena fazer antes de votar
- Tamanho máximo do arquivo, número máximo de arquivos por usuário, total máximo por conta?
- Tipos de MIME permitidos; e essa verificação é obrigatória ou apenas recomendada?
- Back-end de armazenamento: S3, disco local, uso de um bucket próprio?
- Verificação de vírus: síncrona, assíncrona ou nenhuma?
- Retenção: para sempre, por tempo limitado, com a possibilidade de exclusão pelo usuário?
- Uploads com retomada ou apenas de uma única vez?
- URLs públicas, URLs assinadas ou download com autenticação?
Cada “sim” aqui representa uma parte do escopo. Se as respostas abrangerem varredura, capacidade de retomada e retenção ao mesmo tempo, isso não é um único número; é uma história que vale a pena dividir.
Dimensionar o armazenamento, a digitalização e a retenção. O seletor é a parte mais barata.
Veja também: estimativa de uma integração de pagamentos para o mesmo perfil operacional, e outros exemplos práticos de estimativas. Inicie uma sessão gratuita de Planning Poker quando tiver respostas sobre armazenamento e retenção.