Миграция устаревших требований в BDD


11

Вопрос: Каков наилучший способ перевести крупную компанию в Cucumber, если в базе данных требований хранятся не менее 15 лет устаревших требований к программному обеспечению?

В настоящее время рассматриваются:

1) все переносить

Недостаток: у нас нет неограниченного времени / бюджета, нам нужно двигаться вперед, чтобы выжить, мы не можем все остановить и соблюдаем 100% наших устаревших требований и устаревших тестовых наборов.

2) Правило бойскаута

Оставь все лучше, чем ты нашел. Если вы касаетесь требований или меняете их, напишите / обновите функцию Cucumber. Недостаток: у нас будет две системы записи (Cucumber, устаревшая версия DB), возможно, навсегда предполагая, что есть углы данного приложения, которые не затрагиваются в течение очень долгого времени.

3) Бойскаут Правило Плюс

То же, что и № 2, но мы добавили требования, которые мы не переходим в Cucumber, в компоненты с одним ожидающим сценарием и скопируйте / вставьте устаревшие требования в раздел описания. Таким образом, мы получаем метрики (в ожидающих сценариях) о том, насколько «покрыты» мы Cucumber, а также о необходимости поддерживать старую систему требований. Я не могу найти никаких минусов в этом, кроме как может быть огромный беспорядок в огурце.

4) Вставьте свою идею здесь.

Фон:

Некоторые проекты, перемещающиеся в Cucumber, имеют автоматизированные тестовые наборы, а некоторые используют только ручное тестирование. Все они поддерживают свои требования в устаревшей базе данных требований. Мы должны сделать это, потому что наши требования представляют собой смесь законов / регулирования и сложной логики для финансовых инструментов (риск, ценообразование, структура и т. Д.).

Имейте в виду, что это очень большая компания, которая делает этот шаг, что еще больше усложняет решение.

У нас уже есть несколько проектов, использующих Cucumber для их «новых» требований. Итак, мы опробовали технологию, и она пока работает для нас. У нас есть смесь веб-проектов и проектов данных.

благодаря

Изменить: Чтобы ответить на вопросы ... Устаревшая база данных управления требованиями не связывает требования с тестами. Это не "тестируемый". Сегодня подключение требований к тестам осуществляется через сложный и подверженный ошибкам ручной процесс привязки требований к нашей системе управления тестовыми сценариями в конце каждого проекта. Огурец - очевидное лучшее решение для нас. Там нет вопроса об этом. Вопрос только в том, как сделать шаг для большой организации с огромным количеством важных требований, которые не могут быть потеряны по юридическим и другим причинам.


1
+1 по вопросу; но в более общем плане: как перейти с одной системы тестирования на другую?
Sjoerd Job Postmus

Автоматизирована ли устаревшая база данных требований при проверке соответствия требований? Вам нужно перефразировать требования, чтобы соответствовать синтаксису Cucumber (и если да, то убедиться, что переформулировка не изменяет требования тонким способом)?
Sjoerd Job Postmus

Просто любопытство, эта база данных требований "проверяема"? если да, то вы можете попытаться автоматизировать процесс как вариант № 4, выполнив программу, которая читает устаревшие тесты и пытается написать тест на огурец для вас ДАЖЕ, если тесты не читаются. Наличие двух источников правды, обычно не рекомендуются из - за missmatches - плюс (2 требования источников ДБ и огурец)
pietromenna

1
Вы написали «мы опробовали технологию, и она работает для нас до сих пор», но вы не написали «она работала лучше, чем предыдущая технология». Итак, вы на 100% уверены, что это будет улучшение? В противном случае лучшим способом было бы не делать этого ;-)
Док Браун

Ответы:


8

Я сделал ошибку, раздев комнату до шпилек, когда заменил ее окна. Это старый дом. Комната была в плохом состоянии. На каждом шагу я сталкивался с проблемами. Старая труба рухнула в мою руку. Теперь свисающий вентиляционный трубопровод весом двадцать пять фунтов упал и врезался в кухонный потолок. (К счастью, никто не пострадал, но зарядка сотового телефона моей подруги была разбита. Она не была удивлена.) Я потрясла себя до чертиков, когда одновременно коснулась заземленной и незаземленной цепи. Там была обнаженная древняя проводка, проходящая через пробитую изоляцию.

С каждой проблемой мне приходилось перенаправлять свою энергию. Я остановился, чтобы исправить проблему. Затем, иногда несколько дней спустя, я возобновил продвижение вперед. К осени я сдался. (Я планировал закончить к концу лета.) Я просто остановился и ушел. Это было слишком много. Моя девушка хотела позвонить подрядчику. Я отказался, так как уже сделал так много работы. Я не хотел, чтобы они получили «славу». (Кроме того, я немного конкретен и не хотел, чтобы кто-то срезал углы, где я знал, что не буду.) Итак, комната была незаконченной.

Почти год назад, после Нового года, у меня было прозрение: не было правила, согласно которому я должен был работать исключительно над комнатой, пока она не была закончена. Спешки не было. Я не должен был делать это таким большим делом. Вместо этого, если бы у меня было немного свободного времени, я мог бы подняться наверх и провести час или два в комнате ... повесить лист Sheetrock, грязь и заклеить стену, отделать дверь. Прежде чем я знал это, я был сделан. Моя девушка снова полюбила меня. Я спал с улыбкой на лице. Все было правильно в мире.

Я думаю, что есть что-то подобное для вашего затруднительного положения. Будь мудрой черепахой - медленной и устойчивой. Путь «Мигрировать все» слишком стрессовый. Это заставит вас поднять руки и уйти. Правило бойскаута оставляет черты позади, если они никогда не меняются. Бойскаут Правило Плюс создает не соответствующие требованиям. Используйте лучшие из ваших подходов:

  1. Если вы касаетесь требования, переместите его в Огурец.
  2. А пока установите еженедельную цель миграции. Делай немного каждую неделю. Не делайте это предложением «все или ничего». Вы можете обнаружить, что случайная миграция - это хорошая отсрочка от всей другой работы, которую вы посвятили.

Прежде чем вы это знаете, все будет сделано. Твой босс будет любить тебя. Ваша команда будет любить вас. Вы будете спать с улыбкой на лице.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.