Migrar requisitos herdados para o BDD

11

P: Qual é a melhor maneira de mudar uma grande empresa para a Cucumber com pelo menos 15 anos de requisitos de software herdados mantidos em um banco de dados de requisitos?

Atualmente considerando:

1) Migrar tudo

Desvantagem: não temos tempo / orçamento ilimitados, temos que seguir em frente para sobreviver, não podemos parar tudo e GC 100% de nossos requisitos e suítes de testes herdados.

2) Regra dos escoteiros

Deixe tudo melhor do que você o encontrou. Se você tocar nos requisitos ou alterá-los, grave / atualize um recurso de Pepino. Desvantagem: teremos dois sistemas de registro (Pepino, legado req. DB), possivelmente para sempre assumindo que existem cantos de um determinado aplicativo que não são tocados por muito tempo.

3) Regra de escoteiros Plus

O mesmo que o nº 2, mas coloca requisitos que não estamos transferindo para o Pepino em Recursos em um único cenário pendente e copia / cola os requisitos herdados na seção de descrição. Dessa forma, obtemos métricas (via cenários pendentes) sobre o quão "cobertos" estamos pelo Pepino, e também nos levando à necessidade de manter o antigo sistema de requisitos. Não consigo encontrar nenhuma desvantagem nisso, a não ser que possa haver uma enorme bagunça no Pepino.

4) Insira sua ideia aqui.

Fundo:

Alguns projetos que se mudam para o Cucumber possuem suítes de testes automatizadas, enquanto outros apenas usam testes manuais. Todos eles mantêm seus requisitos em um banco de dados de requisitos herdados. Temos que fazer isso porque nossos requisitos são uma mistura de leis / regulamentos e lógica complexa para instrumentos financeiros (risco, preços, estrutura, etc ...).

Lembre-se de que é uma empresa muito grande que está mudando, o que complica ainda mais as soluções.

Já temos alguns projetos usando o Pepino para seus "novos" requisitos. Então, nós testamos a tecnologia e é um trabalho para nós até agora. Temos uma mistura de projetos na Web e puramente de dados.

obrigado

Editar: para responder às perguntas ... O banco de dados de gerenciamento de requisitos herdados não conecta os requisitos aos testes. Não é "testável". Hoje, a conexão de requisitos a testes é feita por meio de um árduo e manual processo de vincular requisitos ao nosso sistema de gerenciamento de casos de teste no final de cada projeto. Pepino é uma solução melhor e óbvia para nós. Não há dúvida sobre isso. A questão é exatamente como fazer a mudança para uma grande organização com uma imensa quantidade de requisitos importantes que não podem ser perdidos por razões legais e outras.

Ryan Marsh
fonte
1
+1 na pergunta; mas em um cenário mais geral: como passar de um sistema de teste para outro?
Sjoerd Job Postmus
O banco de dados de requisitos "legado" é automatizado na verificação da correspondência de requisitos? Você precisará reformular os requisitos para corresponder à sintaxe do pepino (e se sim: garantir que a reformulação não modifique os requisitos de maneira sutil)?
Sjoerd Job Postmus
Apenas curiosidade, esse banco de dados de requisitos é "testável"? se sim, você pode tentar automatizar o processo como uma opção nº 4 executando um programa que lê os testes herdados e tenta escrever um teste de pepino para você, mesmo que os testes não sejam legíveis. Ter duas fontes verdadeiras geralmente não é recomendado por causa de possíveis erros de combinação (duas fontes de requisitos, o banco de dados e o pepino)
pietromenna
1
Você escreveu "nós pilotamos a tecnologia e é um trabalho para nós até agora", mas você não escreveu "funcionou melhor que a tecnologia anterior". Então, você tem 100% de certeza de que isso será uma melhoria? Caso contrário, a melhor maneira pode não ser fazê-lo ;-)
Doc Brown

Respostas:

8

Cometi o erro de retirar um quarto dos pregos quando substituí as janelas. É uma casa velha. A sala estava em mau estado. A cada passo, encontrei problemas. Um cachimbo velho se desfez na minha mão. O agora pendente tubo de ventilação de cinco quilos caiu e bateu no teto da cozinha. (Felizmente, ninguém se machucou, mas o telefone celular da minha namorada foi esmagado. Ela não se divertiu.) Fiquei chocada quando me deparei com um circuito aterrado e não aterrado. Havia fiação antiga exposta passando por isolação soprada.

A cada questão, eu precisava redirecionar minhas energias. Parei para corrigir o problema. Então, algumas vezes dias depois, retomei o progresso. No outono, desisti. (Eu planejava terminar no final do verão.) Parei e fui embora. Foi demais. Minha namorada queria ligar para um empreiteiro. Recusei, já que já havia feito tanto trabalho. Não queria que eles recebessem a "glória". (Além disso, sou um pouco mais exigente e não queria que alguém abrisse cantos onde eu sabia que não iria.) Portanto, a sala ficou inacabada.

Quase um ano atrás, depois do Ano Novo, tive uma epifania: não havia uma regra que dizia que eu tinha que trabalhar exclusivamente na sala até que ela terminasse. Não houve pressa. Eu não tive que fazer isso um grande negócio. Em vez disso, se eu tivesse um pouco de tempo livre, poderia subir e passar uma ou duas horas no quarto ... pendure uma folha de Sheetrock, lama e prenda uma parede na parede, guarde uma porta. Antes que eu percebesse, eu tinha terminado. Minha namorada me amou novamente. Eu dormi com um sorriso no rosto. Tudo estava certo no mundo.

Eu acho que há algo semelhante disponível para a sua situação. Seja a tartaruga sábia - lenta e constante. O caminho "Migrar tudo" é muito estressante. Isso fará você levantar as mãos e se afastar. A regra dos escoteiros deixa os recursos para trás se eles nunca mudarem. A regra do escoteiro Plus cria requisitos inferiores. Aproveite ao máximo suas abordagens:

  1. Se você tocar em um requisito, mova-o para Pepino.
  2. Enquanto isso, defina uma meta de migração semanal. Faça um pouco a cada semana. Não faça uma proposta de tudo ou nada. Você pode achar que o trabalho ocasional de migração é um bom alívio para todos os outros trabalhos com os quais você se comprometeu.

Antes que você perceba, você estará pronto. Seu chefe vai te amar. Sua equipe vai te amar. Você vai dormir com um sorriso no rosto.

Roger escasso
fonte