Q: What is the best way to move a large company to Cucumber with at least 15 years of legacy software requirements maintained in a requirements database?
Currently considering:
1) Migrate Everything
Downside: we don't have unlimited time/budget, we have to move forward to survive, we can't stop everything and GC 100% of our legacy requirements and legacy test suites.
2) Boy Scout Rule
Leave everything better than you found it. If you touch requirements or change them write/update a Cucumber feature. Downside: We will have two systems of record (Cucumber, legacy req. DB), possibly for ever assuming there are corners of a given application that don't get touched for a very long time.
3) Boy Scout Rule Plus
Same as #2 but put requirements which we are not net moving to Cucumber into Features with a single pending scenario and copy/paste the legacy requirements into the description section. This way we get metrics (via pending scenarios) as to how "covered" we are by Cucumber, and also riding us of the need to maintain the old requirements system. I can't find any downsides to this other than it might be a huge mess within Cucumber.
4) Insert your idea here.
Background:
Some projects moving to Cucumber have automated test suites, some only ever used manual testing. All of them maintain their requirements in a legacy requirements database. We have to do this because our requirements are a mixture of laws/regulation and complex logic for financial instruments (risk, pricing, structure, etc...).
Keep in mind this is a very large company making the move, which complicates solutions further.
We already have some projects using Cucumber for their "new" requirements. So we have piloted the tech and it's work for us so far. We have a mixture of web and purely data projects.
Thanks
Edit: To respond to the questions... The legacy requirements management DB does not connect requirements to tests. It's is not "testable". Today connecting requirements to tests is done through an arduous and error prone manual process of linking requirements to our test case management system at the end of each project. Cucumber is an obvious better solution for us. There is no question about that. The question is just how to make the move for a large organization with an immense amount of important requirements that cannot be lost for legal and other reasons.