Software à medida
Quando nada do que se compra serve, construímos o sistema pequeno que serve.
Alguns negócios têm uma forma que nenhum produto acompanha: um único lugar onde cada trabalho e o seu estado vivem, um portal que os clientes consultam sozinhos, um painel que mostra a semana num relance, duas ferramentas ligadas para se comportarem como uma. Construímos isso, pequeno e simples, e o resultado é seu por inteiro. Quando um produto existente o serviria melhor, dizemo-lo antes de gastar seja o que for.
O encaixe
Quando o à medida é a decisão certa
O software pronto a usar serve a maioria das empresas na maioria das vezes, e por menos do que qualquer construção alguma vez custa. Os sinais abaixo são o aspeto que tem a sua empresa ser a exceção.
- Paga uma plataforma com cem funcionalidades, usa seis, e a que realmente precisa não existe.
- A mesma informação é escrita à mão em duas ferramentas, e as cópias discordam até sexta-feira.
- A forma como um trabalho percorre a sua empresa vive na cabeça de um funcionário antigo e em mais lado nenhum.
- Torceu um produto para tão longe do seu propósito que cada atualização do fornecedor parte os seus improvisos.
- Os clientes ligam a perguntar em que ponto as coisas estão, porque não existe uma página que lhes possa indicar.
- Cada demonstração de produto acaba consigo a perceber que teria de mudar a forma como trabalha para caber no software.
O trabalho
Como se faz bom trabalho à medida
Construído de propósito não quer dizer grande. Os sistemas que construímos são deliberadamente pequenos, e mantê-los pequenos, honestos e seus exige mais disciplina do que código. É este o aspeto dessa disciplina na prática.
Um teste de encaixe honesto
O software à medida perde para um bom produto mais vezes do que ganha, e a avaliação começa aí. Se uma ferramenta padrão cobre o trabalho e a falha está só nas margens, dizemos: compre a ferramenta — e podemos ajudar a configurá-la. Construir compensa quando o desencontro está no centro da operação — quando os improvisos, a reescrita e os erros custam mais por ano do que um sistema pequeno custaria. Pomos essa comparação por escrito, para que decida com números, não com o nosso entusiasmo.
Aborrecido de propósito
Tudo assenta em fundações que são banais há uma década: uma base de dados relacional, uma framework corrente, alojamento onde milhares de outras empresas correm. A novidade é um custo que se paga mais tarde, quando a parte engenhosa precisa de um especialista para lhe tocar. Um sistema aborrecido é um em que qualquer programador competente pega a frio — e é exatamente essa propriedade que o deixa livre para nos deixar.
O mínimo que resolve
O âmbito é o que decide se isto acaba bem. Cada ecrã e cada funcionalidade tem um custo de manutenção permanente, por isso a primeira versão faz uma coisa: elimina o problema que o fez ligar. As ideias que surgem pelo caminho vão para uma lista escrita de "um dia", em vez de irem para a construção. Ao fim de uns meses de uso real, muitas dessas ideias deixam de parecer necessárias — e as que sobrevivem podem juntar-se a um sistema que já funciona.
Onde a IA pertence
A maior parte do que estes sistemas fazem não é IA, nem deve ser. Um passo que corre da mesma maneira de cada vez é escrito como código comum, que custa menos e falha de forma previsível. A IA fica reservada para os passos que exigem leitura e critério, e ganha acesso a cada um passando verificações tiradas do histórico da sua própria operação — trabalhos reais, não dados de demonstração. Tudo o que um cliente possa ver espera pela aprovação de uma pessoa, e quando a IA erra, essa falha junta-se às verificações que tem de passar daí em diante.
Custos de operação, por escrito
Software seu continua a custar dinheiro a manter ligado: alojamento, uma base de dados, envio de email, uso de IA se existir, cada um faturado pelo respetivo fornecedor ao seu cartão, não ao nosso. Antes de a construção ser aprovada recebe a lista — cada serviço, o que faz e um valor mensal realista — para que o custo de operação seja um número que aceitou, não uma surpresa num extrato. Se uma escolha de desenho fizer subir esse número, fica a sabê-lo enquanto ainda é uma escolha.
A entrega como padrão
Um sistema que não consegue operar sem nós é um sistema que construímos mal. Desde o primeiro dia, cada conta é registada em nome da sua empresa, o código-fonte fica num repositório que controla, e as decisões são escritas à medida que se tomam. No fim, as pessoas que o vão usar aprendem-no no sistema em funcionamento, e a documentação é julgada por um único teste: um programador que nunca nos conheceu deve conseguir assumir o sistema apenas com ela. Manter-nos depois é uma conveniência, nunca uma trela.
O projeto
Da primeira chamada à entrega
Chamada de encaixe
Uma conversa sobre o processo, não sobre a tecnologia. Perguntamos quanto lhe custam os improvisos e verificamos se um produto existente já resolve o problema. Se resolver, damos-lhe o nome e o projeto pode acabar aí mesmo; essa resposta vale a pena ter.
Especificação
Vemos o trabalho a ser feito e escrevemos exatamente o que o sistema fará, o que deliberadamente não fará, e o que custa construir e operar. O preço fecha-se antes de existir uma linha de código, e não se mexe a menos que o âmbito se mexa. Aprova o documento, e o documento é o acordo.
Construção por fases
A primeira versão a funcionar chega cedo e trata de uma fatia real do trabalho, para que a sua equipa a use enquanto o resto ainda está a ser construído. As correções nesta fase são baratas; a mesma correção depois do lançamento não é. Vê o progresso como software a funcionar, nunca como um relatório de estado.
Entrega
Qualquer conta que ainda não esteja em seu nome passa para lá, as suas pessoas são formadas no sistema que vão realmente usar, e o código e a documentação são entregues sem nada retido. O suporte da nossa parte depois disso é opcional e faturado à parte. O sistema não precisa de nós para continuar a funcionar.
O que fica seu
O que tem quando termina
O estado final são artefactos, não dependências. Tudo o que é preciso para operar, alterar ou substituir o sistema está nas suas mãos, não nas nossas.
- Um sistema em uso diário, em contas em nome da sua empresa.
- O código-fonte completo num repositório que controla, seu para alterar ou entregar a qualquer programador.
- Um guia de operação em linguagem simples: o que o sistema faz, quanto custa por mês e as primeiras coisas a ver quando se porta mal.
- Uma equipa formada no sistema real, a fazer o seu trabalho real.
- A lista escrita do que ficou de fora de propósito, para que a próxima versão parta de decisões, não de memória.
Próximo passo
Falemos primeiro.
Traga o processo para o qual nada parece feito. Numa chamada curta e gratuita dizemos se ele justifica software à medida — e se um produto já o cobre, damos-lhe o nome do produto.
Marcar a chamada