Como lidar com situações de "final de vida útil do software"?

14

Quando um fornecedor declara que não pretende mais fornecer suporte ou serviços a um software (e declara a intenção de sair do negócio - sem oferecer caminhos de atualização), que tipo de recurso está disponível para o cliente?

Por favor, considere isso do ponto de vista do cliente . É provável que a equipe de TI do cliente considere apenas as opções técnicas, mas provavelmente existem opções não técnicas que o cliente também pode buscar. Além disso, que tipo de medidas razoáveis ​​podem ser tomadas pelo cliente com antecedência para minimizar interrupções, como nos termos do contrato?

Coisas em que consigo pensar:

  • É necessário adquirir hardware sobressalente e configurar um ambiente sobressalente no qual o software possa continuar operando.
  • Vários métodos de exportação de dados que não requerem envolvimento do fornecedor. (Isso pode incluir técnicas triviais, como examinar os dados armazenados em um back-end de banco de dados de commodities, as técnicas mais envolvidas, como captura de tela, impressão em imagem seguida de nova digitalização, etc.)
  • Sistemas paralelos em que a equipe duplicará os dados antigos em um novo sistema manual ou semi-automaticamente
  • Meios legais, caso o fornecedor esteja com problemas financeiros (como no caso do depósito em código-fonte )

Alguma outra ideia?

  • Supondo que não haja "evasão" envolvida (sem DRM, sem DMCA), a recuperação de dados ou a engenharia reversa são legais / aceitáveis?

Nota editada:

É uma combinação de várias histórias anedóticas, mas reais. Não estou diretamente envolvido em nenhum deles. É simplesmente meu desejo de aprender sobre como a situação de "fim de vida de software" é tratada em geral. Não é minha intenção fazer a história original parecer "muito difícil" para ser resolvida.

rwong
fonte
Quais são as linhas do tempo aqui? Você é cliente ou constrói um produto em cima do fornecedor?
3
Você pode tentar comprar o código-fonte do fornecedor e apoiar-se? Esta é uma situação bastante difícil de se estar. #
2035 btilly
2
Surpreende-se por que os dados não foram armazenados em algum tipo de formato aberto, para começar ... se forem armazenados como texto sem formatação no db, você poderá copiá-los. Se estiver armazenado em xml / texto sem formatação, você poderá copiá-lo. Se for binário / criptografado, será necessário decifrá-lo. Tudo é factível.
Job
3
@ Job: concordou. A importância do formato de armazenamento aberto / simples (e o conceito de "bloqueio de fornecedor") é reconhecida há mais de uma década. As decisões tomadas várias décadas atrás não teriam esse benefício da retrospectiva. Naquela época, os clientes abastados iam com os líderes de mercado, independentemente do custo, e os clientes menos abastados tinham que aceitar o status quo ou assumir o risco.
Rwong
Esses tipos de histórias servem como bons exemplos de por que é bom ter planos de saída de dados. Isso pode estar usando formatos abertos, como o @rwong sugere, mas isso também deve significar ter cláusulas de exportação nos contratos.
21711 smithco

Respostas:

2

A engenharia reversa é perfeitamente aceitável em seus próprios dados. Supondo que você tenha os arquivos de banco de dados para começar. Se for um serviço hospedado, é melhor você pagar a taxa e exportar os dados. imo, é extremamente rude e pouco profissional deles exigir uma taxa por isso, mas algumas pessoas não se importam com essas coisas.

Como você sabe que esse aplicativo é algo que você precisa, talvez se possível, é hora de um sistema desenvolvido internamente? Dessa forma, você não vai acabar nessa situação novamente.

GrandmasterB
fonte
2

Uma estratégia que não está na sua lista é contratar uma equipe de estagiários e dar a eles o verão para descobrir isso. Como provavelmente seria um projeto único, não importará se o código é bonito, se leva muitas horas ou se é preciso apenas muita entrada manual de dados.

smithco
fonte
2
Estagiários: O equivalente local de terceirização
Earlz 21/02/11
Internsourcing!
Paul Nathan
0

Se o produto é algo para o qual você não precisa de alterações, não preveja a necessidade de alterações e é executado em seu próprio hardware, sempre há a opção de aceitar o risco de continuar usando-o.

Não é chique, e pode ser uma dor, mas dependendo do produto e do fornecedor que você pode encontrar, se você pensar que a situação não é diferente do que era quando o fornecedor o apoiou tecnicamente.

Uma observação: se o sistema é algo exposto ao público, essa é uma abordagem ruim, porque você não tem como obter as atualizações de segurança aplicadas.

Conta
fonte