Estimativa do tempo de envio de um arquivo
Como estimar o upload de um arquivo: limites de tamanho, verificação de vírus, retomada do upload, 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 a seguir é o bilhete propriamente dito.
A parte do upload de arquivos no navegador dá trabalho para algumas horas. O resto é um recurso. 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 tenta enviar um arquivo de 2 GB usando o wi-fi de um hotel. Os custos do armazenamento de objetos se tornam reais quando a retenção não tem limite 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 são 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 se fala 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 caso a conexão seja interrompida?”
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 orientativa?
- Back-end de armazenamento: S3, disco local, uso de um bucket próprio?
- Verificação antiví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 se resume a um único número; é uma história que vale a pena ser dividida.
Dimensionar o armazenamento, a digitalização e a retenção. O seletor é a parte mais barata.
Adjacente: estimativa de uma integração de pagamentos para o mesmo perfil de cauda operacional e outros exemplos de estimativas já trabalhados. Inicie uma sessão gratuita de Planning Poker quando houver respostas sobre armazenamento e retenção.