Ok - então vamos reduzir isso:
O principal problema que você está enfrentando é que você precisa executar uma versão mais nova do PHP / MySQL, mas quando a sua equipe de QA testou o software no novo sistema, essa versão está desatualizada.
Isso não é uma falha do seu time; isso é uma falha da equipe de QA.
Sua equipe de controle de qualidade deve ter casos de teste automatizados. Seus desenvolvedores devem fornecer módulos de teste à medida que avançam. Por exemplo:
- O desenvolvedor cria sistema de faturamento proporcional
- O Developer fornece uma interface de teste para pro-rating (ou seja, aceita todos os detalhes necessários para testar o sistema, mas na verdade não gera uma fatura. Ou talvez funcione, mas em um sistema de teste). A equipe de QA da QI planeja uma série de testes para executar a rotina. Qual é a entrada e qual é o resultado correto ? Por exemplo. $ 50 / mês rateado por meio mês == $ 25.
Este último passo deve ser totalmente automatizado. Deve demorar alguns minutos ou horas (dependendo da complexidade do software ou de quantos testes existem) para determinar quaisquer erros. E.G.
- O PHP altera sua matemática de ponto flutuante do arredondamento normal para o cieling (sempre arredondar para cima)
- Teste caso de pro-rating em US $ 5 / mês por meio mês
- Resposta correta: $ 2,50, mas o caso de teste retorna $ 3. Falha automática.
Agora, sei que nada disso realmente responde à sua pergunta. Portanto, se sua equipe de controle de qualidade não puder ser corrigida, quais são nossas outras opções:
Não há uma resposta correta para isso. Pessoalmente, o que fazemos com nosso software é sua última opção - aceitamos todos os service packs e atualizações para nossos ambientes de tempo de execução, mas não mudamos as versões sem uma análise completa e completa de controle de qualidade. Embora o software que usamos em nossos tempos de execução (que é MSSQL e outro back-end, não PHP) só libere novas versões a cada 18 meses a 2 anos, com atualizações e service packs entre eles, então há muito tempo entre lançamentos principais. / p>
Após testes de controle de qualidade em nossos sistemas de preparo, implementamos a atualização em nossos sistemas de dogfood primeiro. Se não encontrarmos problemas importantes, lançamos as atualizações de tempo de execução em nossos sistemas hospedados. Se ainda não tivermos problemas importantes, lançamos avisos para nossos clientes auto-hospedados para que eles possam instalar as atualizações, se quiserem.
Pessoalmente eu me encolho toda vez que recebo uma máquina virtual pré-empacotada. Mesmo que seja totalmente atualizado (eles nunca são, como você apontou) é algo que eu preciso trabalhar na integração em nossa rede. E às vezes eles vêm com sistemas operacionais ou tempos de execução horrivelmente desatualizados.