JAD(共同アプリケーション開発) とは?
- ユーザーと開発者が同じ場でワークショップを行い、要件を共同で定義する手法
- 要件の認識ズレや手戻りを大幅に減らせるのが最大のメリット
- ファシリテーターが進行を仕切り、短期間で集中的に合意形成を行う
- 大規模な業務システムやERP導入のプロジェクトでよく使われる
JADって、普通の開発とどう違うの?
普通の開発だと、まずユーザーにヒアリングして、開発者が要件をまとめて、ユーザーに確認して…ってキャッチボールを何往復もするよね。JADは最初からユーザーと開発者が同じ部屋に集まって、一緒に要件を決めちゃうんだよ
みんなで集まるって、会議みたいなもの?
ファシリテーターって重要なの?
めちゃくちゃ重要だよ。偉い人が一方的に話したり、技術者だけで盛り上がったりしないように中立の立場で進行するんだ。全員が平等に意見を出せる場を作るのがファシリテーターの腕の見せどころだね
どんなプロジェクトで使われるの?
大規模な業務システムやERPの導入プロジェクトでよく使われるよ。部署をまたぐシステムだと関係者が多くて、個別にヒアリングしてると認識がバラバラになりがちなんだ。JADなら全員同じ場で合意できるから、後から「聞いてない」が起きにくいんだよ
デメリットもあるの?
全員のスケジュールを合わせるのが大変だし、参加者が消極的だと効果が薄いよ。あと、ファシリテーターのスキルに大きく依存するから、経験の浅い人が仕切ると議論が迷走することもあるんだ
アジャイルとは何が違うの?
アジャイルは開発全体のプロセスを反復的に回す考え方だけど、JADは「要件定義フェーズ」に特化した手法なんだ。実はアジャイルのスプリントプランニングやデザインスプリントは、JADの考え方が元になっているとも言われているよ。JADは1970年代にIBMが考案した先駆的な手法で、今の参加型開発のルーツなんだよ
歴史が長いんだね!今でも使われているの?
そのままの形で使われることは減ったけど、エッセンスはあちこちに残っているよ。デザイン思考のワークショップやユーザーストーリーマッピングも、JADの「ユーザーと一緒に決める」という精神を受け継いでいるんだよ