#238
UI設計パターン
#238びへいびあくどうかいはつ
ビヘイビア駆動開発 (BDD)
別名・表記:BDDBehavior Driven Development
UIXHERO Definition
「振る舞いから作る」。技術的なテストではなく、ユーザーが体験する「振る舞い」を基準に開発する。
概要
TDD(テスト駆動開発)が「正しくコードが書かれているか(Are we building the product right?)」を検証するのに対し、BDDは「正しい製品を作っているか(Are we building the right product?)」により焦点を当てている。 「テスト」という言葉を使わず「振る舞い(スペック)」と呼ぶことで、非技術者も巻き込んだ仕様の議論を促進する。
UXでの活用
- Living Documentation: BDDのシナリオは、そのまま「生きた仕様書」になる。仕様変更があればシナリオも更新され、常に最新のUXの振る舞いがドキュメント化される。
- UX要件の漏れ防止: デザイナーが考える「こう動いてほしい」という意図を、Given/When/Then形式でエンジニアに伝えることで、実装時の認識ズレを防ぐ。
💡 使いどころ
開発者、QA、非技術者(POやデザイナー)の間で、要件に対する共通認識を作りたい時。
⚠️ 注意点・誤用
BDDツール(Cucumberなど)の導入が目的になりがちだが、本質はツールではなく「会話と協調」にある。テストコードを書くことよりも、仕様(振る舞い)について話し合うプロセスが重要。
具体例
- Given(前提):ユーザーがログイン画面にいる
- When(操作):正しいIDとパスワードを入力して「ログイン」ボタンを押す
- Then(結果):マイページに遷移し、「ようこそ」と表示される
出典・参考文献:
- North, D. (2006). Introducing BDD. Better Software Magazine.
- North, D. (2007). Behaviour-modification: the evolution of behaviour-driven development.
- Chelimsky, D., Astels, D., Helmkamp, B., & North, D. (2010). The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends. Pragmatic Bookshelf.
- Cohn, M. (2004). User Stories Applied: For Agile Software Development. Addison-Wesley.
関連する解説記事
関連する記事詳細が見つかりませんでした。