Разработчик поведенчески-ориентированной разработки (BDD)
Разработчик Behavior-Driven Development (BDD) занимается разработкой программного обеспечения, в которой особое внимание уделяется сотрудничеству между заинтересованными сторонами, включая разработчиков, специалистов по контролю качества, а также нетехнических или бизнес-участников программного проекта. Этот подход поощряет команды использовать разговоры и конкретные примеры для формализации общего понимания того, как должно вести себя приложение.
К основным видам деятельности разработчика BDD относятся:
. Сбор требований: Разработчик BDD сотрудничает с командой, чтобы понять и определить ожидаемое поведение системы. Это включает в себя беседы с заинтересованными сторонами для фиксации требований на понятном для всех языке.
. Написание пользовательских историй: Затем разработчик переводит эти требования в пользовательские истории. Это простые и понятные описания функции, рассказанные с точки зрения пользователя. Истории обычно строятся по простому шаблону: "Как , я хочу, чтобы ".
. Определение критериев приемки: Каждая пользовательская история имеет набор критериев приемки, которые представляют собой условия, которым должна удовлетворять система, чтобы считаться "выполненной". Разработчик BDD определяет эти критерии, которые затем используются при разработке и тестировании.
. Написание BDD-сценариев: Разработчик BDD пишет сценарии в специальном формате, известном как Gherkin - Given, When, Then. Это язык, который позволяет описать поведение без детализации того, как оно реализуется.
- Given: Исходный контекст в начале сценария, также известный как предусловия.
- When (Когда): Указывает событие сценария.
- Затем: Ожидаемый исход или результат.
. Разработка функции: Затем BDD-разработчик пишет код для реализации сценария. Для этого обычно используется BDD-фреймворк, например Cucumber, SpecFlow или JBehave.
. Рефакторинг: После того как код написан, разработчик рефакторит его, чтобы обеспечить чистоту, простоту и отсутствие дублирования.
. Обзор и обратная связь: Разработчик BDD участвует в обзорах кода и поведения системы. Он также учитывает отзывы заинтересованных сторон и вносит необходимые изменения.
. Автоматическое тестирование: Разработчики BDD используют инструменты BDD для автоматизации сценариев, которые служат живой документацией и автоматизированными тестами. Это позволяет гарантировать, что программное обеспечение продолжает работать в соответствии с ожиданиями даже при внесении изменений.
. Сотрудничество: Разработчик BDD тесно сотрудничает с другими членами команды, включая других разработчиков, QA-тестеров, бизнес-аналитиков и заинтересованные стороны. Это необходимо для того, чтобы у всех было общее понимание того, что и зачем создается.
В целом BDD-разработчик фокусируется на понимании поведения системы с точки зрения пользователя, а затем на разработке и тестировании системы, чтобы убедиться, что она соответствует этим ожиданиям. Они выступают в роли связующего звена между бизнесом и техническими аспектами, помогая обеспечить согласованность действий и достижение одних и тех же целей.