Já tem uma aplicação, e correu mal

Prestador desaparecido, projeto parado, código que já ninguém se atreve a tocar. É uma situação banal e quase sempre se recupera. Começamos por olhar para o que tem realmente.

Reconhece alguma destas situações?

São as cinco razões pelas quais nos ligam. Nenhuma é irrecuperável.

  • O seu prestador deixou de responder, ou fechou.
  • A aplicação funciona, mas já ninguém sabe alterá-la.
  • Cada nova funcionalidade parte alguma coisa noutro sítio.
  • Dizem-lhe que é preciso refazer tudo, e não sabe se é verdade.
  • Nem sequer tem a certeza de ter o código na sua posse.

Como procedemos

  1. 01

    Recuperamos o que existe

    O código, os acessos, as contas, os servidores. É muitas vezes a etapa mais penosa e assumimo-la, incluindo as conversas com o seu antigo prestador se ainda for possível contactá-lo.

  2. 02

    Olhamos e dizemos-lhe quanto vale

    Em uma a duas semanas, examinamos a aplicação em detalhe e entregamos-lhe um levantamento escrito numa linguagem que percebe: o que está são, o que está frágil, o que é perigoso.

  3. 03

    Damos-lhe um veredicto franco

    Retomar, reparar, ou reconstruir. Dizemos-lhe qual dos três, porquê, e quanto custaria cada um. Por vezes a resposta honesta é «recomece do zero» — e dizemo-lo quando é o caso.

  4. 04

    Retomamos, se quiser

    Não é obrigado a confiar-nos a continuação. O levantamento pertence-lhe e pode entregá-lo a quem quiser.

O que contém o levantamento

Um documento de uma dezena de páginas, escrito para ser lido por um dirigente, não por um programador.

  • O que a aplicação faz realmente hoje, ecrã a ecrã
  • O que está sólido e pode ser mantido tal como está
  • O que está frágil e lhe vai sair caro se nada for feito
  • As falhas de segurança e os dados pessoais mal protegidos
  • Se tem mesmo todo o código, e o que falta caso contrário
  • Três cenários orçamentados: retomar, reparar, reconstruir

O que lhe diremos, mesmo que nos custe

  • Por vezes é mesmo preciso refazer tudo

    Quando o custo da reparação ultrapassa o de uma reconstrução, dizemo-lo — e mostramos-lhe as contas em vez de lhe pedir que acredite em nós.

  • Por vezes o seu antigo prestador tinha razão

    Um projeto que descarrilou nem sempre é culpa da equipa anterior. Acontece que o âmbito mudou dez vezes. Não procuramos um culpado, procuramos uma saída.

  • Por vezes não se deve fazer nada

    Se a sua aplicação cumpre a função e as evoluções com que sonha não trarão nada, aconselhá-lo-emos a guardar o orçamento.

As perguntas que nos fazem

Não tenho a certeza de ter o código. O que faço?

É frequente, e é a primeira coisa que verificamos. O código pode estar num servidor a que ainda tem acesso, num alojamento que paga sem saber, ou numa conta em nome do seu antigo prestador. Ajudamo-lo a recuperá-lo e, na falta disso, dizemos-lhe o que é possível reconstruir a partir da aplicação que está online.

O meu prestador recusa-se a devolver o código. Tem esse direito?

Depende inteiramente do que diz o seu contrato. Se a cessão de direitos lá constar, o código é seu. Se o contrato for omisso, a situação é mais complicada e exige aconselhamento jurídico — podemos ajudá-lo a perceber tecnicamente o que está em jogo, mas não somos advogados.

Chegam a recusar recuperações?

Sim, quando retomar não serviria os seus interesses. Preferimos dizer-lhe que não e explicar porquê a faturar seis meses de trabalho sobre uma base condenada.

Quanto tempo até o projeto voltar a andar?

O levantamento demora uma a duas semanas. Depois, uma recuperação bem conduzida devolve um ritmo de entregas normal em cerca de um mês. A primeira coisa que fazemos é repor a capacidade de entregar sem partir nada.

E se a aplicação estiver escrita numa tecnologia antiga?

Não é um obstáculo em si. Muitas aplicações antigas funcionam muito bem e não precisam de ser reescritas. A verdadeira questão não é a idade da tecnologia mas o custo de cada evolução futura — e é exatamente isso que o levantamento mede.

O detalhe da auditoria técnica Para a sua equipa técnica — pode saltar.

A auditoria cobre a qualidade e a legibilidade do código, a arquitetura e o seu acoplamento, a cobertura de testes, as dependências obsoletas e as suas vulnerabilidades conhecidas (CVE), a reprodutibilidade do build e da implementação, o estado das migrações de base de dados, a gestão de segredos, a conformidade RGPD dos tratamentos, e a dívida técnica realmente bloqueante — por oposição à que é apenas inestética. Conduzimos regularmente migrações de Cordova e Ionic para Flutter, passagens de Objective-C para Swift e de Java para Kotlin, atualizações de versão maior de Angular, Django ou React Native, e recuperações de projetos sem histórico Git utilizável.

Comecemos pelo levantamento

Descreva a sua situação em poucas linhas. Respondemos em 24 h úteis para lhe dizer se o podemos ajudar — gratuitamente e sem compromisso.