HAPPY HACKING Oouchi's BLOG

PSE(ポンコツエンジニア)の技術ブログ

スクラムプロジェクトでの「意図を伝える方法」を考えてみる

先日までスクラムプロジェクトに携わっていましたが、参画当初は作りたいものは一緒なはずなのにいざ出来上がるとPOやステークホルダーから「ここはこうしてほしかった」「ここはこうなるとは思わなかった」みたいに言われることが多かったように思います。

今になって考えてみると、お互いに上手く意図を伝えることができてなかったように思います。
今は意図を伝えられる手段を身に付けたので当初よりは格段にお互いの認識がずれないまま開発を行えています。
スクラムやアジャイル的な開発に慣れているチームは当たり前にやっていることだとは思いますが、画面デザインや仕様を固めながら開発を進めていくことにお慣れていなかった私みたいな人もいると思うので、スクラムじゃなくてもすぐに実践できることを整理して記事にしてみます。

なぜ認識がずれるのか

スクラムチームにおいて、POと開発チームは「同じものを作り、同じものを実現する」ことを目標としていると思います。
では、なぜ認識がずれるのかというとロールが違うからです。
POは何を実現したいかを考えているし、開発チームはどうやって実現するかを無意識的に考えているはずです。
同じものについて話し合っているのに考えていることが違うので、会話の中ですり合わせられない部分が発生し、認識がずれたままになってしまいます。

そこで、異なるロールを持つメンバーが認識を合わせつための方法を何点か紹介します。

文章で伝える

5W1Hを持ったユーザーストーリー

スクラムプロジェクトであれば、まず思い浮かぶのがユーザーストーリーだと思います。

www.atlassian.com

↑の説明では、

ユーザーストーリーは、「ペルソナ + ニーズ + 目的」としてよく表される開発タスクです。

とありますが、一般的には

  • 誰が
  • どんな目的のために
  • 何をしたい

といったことが記述されます。

このフォーマットに則って
営業マン商談で使用するために物件情報を閲覧したい」
といったユーザーストーリーを作成しても良いですが、POと開発者がさらに共通認識を持つためには5W1Hを意識すると良いです。
営業マン日中営業所内で商談で使用するためにiPadを使用してクライアントと一緒に物件情報を閲覧したい」
といった内容のユーザーストーリーにすることで、

  • 営業所内でクライアントと一緒に閲覧するのであれば営業マンが説明したい項目の文字は大きくした方がいい
  • iPadを使用して閲覧するので物件画像はフリックでのスライダー表示ができるといい
  • PC、スマートフォンでの表示調整は優先度を下げることができる

など、認識合わせの材料にもなりますし、優先順位の判断基準を作ることもできます。

プロジェクトの形式上ユーザーストーリーを作成しない場合でも、5W1Hを意識すると意図を伝える助けになります。

イメージで伝える

ペーパープロトタイピング

イメージで伝えると言っても、方法が何種類かあります。

新規サービスを立ち上げる時は、「ペーパープロトタイピング」がよく使われます。

www.webcreatorbox.com

読んで字の如くですが、紙とペンを使って表示したい画面や挙動を表現することで意図を伝えます。

先述したユーザーストーリーはこういう場面で活きてきます。
5W1Hを図で表現してすり合わせることができると、文字だけで意図を伝え合っていた時の数倍はお互いの認識が合います。

最終的に表示される画面を想像してすり合わせるので当然といえば当然ですが・・

キャプチャ

昨今はリモートワークが主流となっておりチームで集まってペーパープロトタイピングをする環境も機会も少なくなっていると思います。
そんな時は画面イメージをサクッと作るか簡単な挙動を実装してしまってキャプチャで認識合わせをしてしまいます。

画面イメージは主にdraw.ioを使って作成しています。

qiita.com

文字の大きさや色などはこの時点で大体すり合わせられます。

ちなみに私が一番強力だと思っているのは実際の挙動をGifで連携することです。
具体的な方法は過去に記事で紹介しています。

www.ooooouchi.info

最終的な画面イメージをそのまま見せられるのでフィードバックももらいやすいです。

f:id:ooooouchi:20200915121315g:plain

まとめ

意図を伝える方法を整理してみましたが、いざ方法を整理してみると意図を伝えることも手段で、目的は意図を反映したシステムを作ることであることがわかりました。
POは開発者へ意図を伝えることによってシステム上で何を表現して欲しいのか、開発者はPOは何を表現して欲しくて意図を伝えているのかを常に考えることが重要なんだなと思いました。

最後に

蛇足ですが、今回この記事を書くきっかけになった参考書籍を紹介します。

この書籍には意図を伝えることの重要さはもちろん、スクラム開発におけるいろはを教えてくれます。

新人スクラムマスターのボクくんが架空の開発案件を通して立ち上げからリリースまでの間に実際に遭遇し得る様々な課題を明確化し、改善し続けていく半分文章で半分マンガ仕立ての本です。
「アジャイルとは」「スクラムとは」のように基礎知識をわかりやすく説明してくれている章もあるので、「そもそもスクラムってなんだろう」レベルで読み始めても大丈夫です。