Przeprowadź migrację starszych wymagań do BDD

11

P: Jaki jest najlepszy sposób na przeniesienie dużej firmy do firmy Cucumber z co najmniej 15-letnimi wymaganiami dotyczącymi oprogramowania starszego typu przechowywanymi w bazie danych wymagań?

Obecnie rozważa:

1) Migruj wszystko

Wada: nie mamy nieograniczonego czasu / budżetu, musimy iść naprzód, aby przetrwać, nie możemy zatrzymać wszystkiego i GC 100% naszych starszych wymagań i starszych pakietów testowych.

2) Reguła skautowa

Zostaw wszystko lepiej niż znalazłeś. Jeśli dotkniesz wymagań lub je zmienisz, napisz / zaktualizuj funkcję Ogórek. Wada: będziemy mieć dwa systemy zapisu (Ogórek, starsza wersja DB), być może na zawsze zakładając, że istnieją zakątki danej aplikacji, które nie zostaną dotknięte przez bardzo długi czas.

3) Zasada Zwiadowcy Plus

To samo co nr 2, ale w jednym scenariuszu umieść wymagania, których nie chcemy przenosić do Ogórka, i skopiuj / wklej starsze wymagania do sekcji opisu. W ten sposób otrzymujemy dane (za pośrednictwem scenariuszy oczekujących), jak „jesteśmy objęci” przez Cucumber, a także uświadamiamy nam potrzebę utrzymania starego systemu wymagań. Nie mogę znaleźć żadnych wad tego, poza tym, że może to być ogromny bałagan w Ogórku.

4) Wpisz swój pomysł tutaj.

Tło:

Niektóre projekty przenoszące się do Cucumber mają zautomatyzowane zestawy testów, niektóre tylko do testów ręcznych. Wszystkie zachowują swoje wymagania w starszej bazie wymagań. Musimy to zrobić, ponieważ nasze wymagania są mieszanką przepisów / regulacji i złożonej logiki instrumentów finansowych (ryzyko, ceny, struktura itp.).

Należy pamiętać, że jest to bardzo duża firma, która dokonuje ruchu, co jeszcze bardziej komplikuje rozwiązania.

Mamy już kilka projektów wykorzystujących Cucumber do ich „nowych” wymagań. Więc pilotowaliśmy technologię i do tej pory działa ona dla nas. Mamy połączenie projektów internetowych i czysto danych.

Dzięki

Edycja: Aby odpowiedzieć na pytania ... Starsza baza danych zarządzania wymaganiami nie łączy wymagań z testami. Nie można go „przetestować”. Dzisiaj łączenie wymagań z testami odbywa się poprzez żmudny i podatny na błędy ręczny proces łączenia wymagań z naszym systemem zarządzania przypadkami testowymi na końcu każdego projektu. Ogórek to dla nas oczywiste lepsze rozwiązanie. Nie ma co do tego wątpliwości. Pytanie tylko, jak przeprowadzić przeprowadzkę dla dużej organizacji z ogromną ilością ważnych wymagań, których nie można utracić z powodów prawnych i innych.

Ryan Marsh
źródło
1
+1 na pytanie; ale w bardziej ogólnym ustawieniu: jak przejść z jednego systemu testowego do drugiego?
Sjoerd Job Postmus
Czy baza danych wymagań „starszych” jest zautomatyzowana w sprawdzaniu, czy wymagania są zgodne? Czy będziesz musiał ponownie sformułować wymagania, aby dopasować składnię Ogórka (a jeśli tak: upewnij się, że zmiana sformułowania nie modyfikuje wymagań w subtelny sposób)?
Sjoerd Job Postmus
Ciekawość, czy ta baza wymagań jest „testowalna”? jeśli tak, to możesz spróbować zautomatyzować proces jako opcję nr 4, wykonując program, który odczytuje starsze testy i próbuje napisać test ogórka NAWET, jeśli testy nie są czytelne. Posiadanie dwóch źródeł prawdy zwykle nie jest zalecane ze względu na możliwe niedopasowania (źródła 2 wymagań, db i ogórek)
pietromenna
1
Napisałeś „pilotowaliśmy technologię i do tej pory to dla nas działa”, ale nie napisałeś: „działała lepiej niż poprzednia technika”. Czy jesteś w 100% pewien, że to będzie poprawa? W przeciwnym razie najlepszym sposobem może być nie robienie tego ;-)
Doc Brown

Odpowiedzi:

8

Popełniłem błąd, rozrzucając pokój do ćwieków, kiedy wymieniłem jego okna. To stary dom. Pokój był w złym stanie. Na każdym kroku napotykałem problemy. Stara rura rozpadła się w mojej dłoni. Zwisający obecnie dwadzieścia pięć funtów otwór hydrauliczny spadł i uderzył w sufit w kuchni. (Na szczęście nikt nie został ranny, ale ładujący się telefon mojej dziewczyny został zmiażdżony. Nie była rozbawiona.) Zszokowałam się z piekła rodem, kiedy jednocześnie otarłam się o uziemiony i nieuziemiony obwód. Odkryto starożytne okablowanie przebiegające przez wdmuchiwaną izolację.

Z każdym problemem musiałem przekierowywać swoje energie. Zatrzymałem się, aby rozwiązać problem. Potem, czasami kilka dni później, wznawiałem postępy. Jesienią poddałem się. (Planowałem skończyć do późnego lata.) Po prostu zatrzymałem się i odszedłem. To było zbyt wiele. Moja dziewczyna chciała zadzwonić do wykonawcy. Odmówiłem, ponieważ wykonałem już tyle pracy. Nie chciałem, żeby dostali „chwałę”. (Poza tym jestem trochę szczególny i nie chciałem, żeby ktoś skrócił rogi tam, gdzie wiedziałem, że tego nie zrobię.) Pokój był więc niedokończony.

Prawie rok temu, po Nowym Roku, doznałem objawienia: nie było żadnej reguły, która mówi, że muszę pracować wyłącznie nad pokojem, dopóki się nie skończy. Nie było pośpiechu. Nie musiałem robić z tego wielkiej sprawy. Zamiast tego, gdybym miał trochę wolnego czasu, mógłbym pójść na górę i spędzić godzinę lub dwie w pokoju ... powiesić prześcieradło Sheetrock, zabłocić i przykleić ścianę, przyciąć drzwi. Zanim się zorientowałem, skończyłem. Moja dziewczyna znów mnie kochała. Spałem z uśmiechem na twarzy. Na świecie wszystko było w porządku.

Myślę, że jest coś podobnego dla twojej sytuacji. Bądź mądrym żółwiem - powolnym i spokojnym. Ścieżka „Migruj wszystko” jest zbyt stresująca. Sprawi, że wyrzucisz ręce i odejdziesz. Zasada Zwiadowcy pozostawia cechy, które nigdy się nie zmieniają. Zasada Boy Scout Plus tworzy wymagania poniżej par. Wybierz najlepsze podejście:

  1. Jeśli dotkniesz wymagania, przenieś je do Ogórka.
  2. W międzyczasie ustaw tygodniowy cel migracji. Rób trochę każdego tygodnia. Nie rób z tego wszystkiego albo nic. Może się okazać, że okazjonalne prace migracyjne stanowią miłą ulgę od wszystkich innych prac, do których się zobowiązałeś.

Zanim się zorientujesz, skończysz. Twój szef cię pokocha. Twój zespół cię pokocha. Będziesz spał z uśmiechem na twarzy.

Scant Roger
źródło