🌊

Alistair Cockburnさんの新しい書籍「Unifying User Stories, Use Cases, Story Map」

2024/12/06に公開

Alistair Cockburnさんは

アジャイルソフトウェア開発宣言を考えたエンジニアの一人です。
読み方はカタカナだとアリスターコーバーンが近いでしょうか。
Hexagonal Architectureでもまた有名です。

以前書いた記事

Hexagonal Architectureについては以前読んで記事を書きました。コーバーンさん本人についても軽く書いています。
https://zenn.dev/voicy/articles/722c810df3ba0b
この本と同時期に出た、Hexagonal Architecture Explainedについても一応記事を書いています。
https://zenn.dev/voicy/articles/b0bf7897c54d83

Use caseについての書籍

コーバーンさんはUse caseについての書籍で著名です。https://www.informit.com/store/writing-effective-use-cases-9780201702255
邦訳も以前出版されていましたが、現在は絶版となっており中古しか入手できなそうです。

ここで言うUse caseは、Ivar Jacobson(UMLとかRUPの生みの親、アジャイル以前のレジェンド)が考案した、システムの利用者がある目的を達成するまでのシステムの振る舞いを、失敗した場合なども含めて記述した文章みたいなやつです。詳しくはないのでWikipediaを読んでください。
https://en.wikipedia.org/wiki/Use_case
※ 便利な言葉のいわゆるユースケースのことではないです。

さて、そんなUse caseについての書籍を書いてくれたコーバーンさんが今回刊行したのは、User Stories, Use Case, Story Map などのソフトウェアの振る舞いや目的などを記述する手法をいい感じにまとめて書いてくれた本です。
Writing Effective Use Caseはいい本だと思うのですが、いかんせん細かい文字で300ページもある本であり、僕は輪読会の力を借りて読みましたが、なかなか時間がかかりました。
今回の書籍は100ページくらい。前文によるとこんなことをコーバーンさんは言っています。

ある技法の20%で80%の価値が得られるので、一番美味しい20%をとにかく学んで動き出しませんか?そして、そこでカバーできないところは他のテクニックで補完しながらレベルアップしていきましょう!

いいですね。もしかしたら自分が以前書いた本がむずい自覚があるのかも。

詳しいところは書籍を読んでもらうとして面白い箇所

Use caseについては、Writing Effective Use Caseで書いていたようなことが書いてありました。
Use caseを書くときの最大の間違いは、その時使う同士の時間軸を意識しないということです。数秒で完了すること、20分の動詞、または数ヶ月の動詞を混ぜてしまうことです。
全ての動詞には時間がかかります。読み手と書き手は、ほとんどの動詞について同様の時間感覚を持っています。「ATMでお金を引き出す」と書くとき、2-5分かかることを想定しています。「投資ポートフォリオを管理する」は2-5分では終わらず、数年続く活動です。「(商品の)数量を選択する」は数秒で、数分ではありません。

コーバーンさんは、これを解決するために、Use case におけるユーザーゴールに対して高度のメタファーを使っています。

海面、凧、魚、貝殻
というような形で
2-20分のユーザータスクを「海面レベル」としてタグ付けします。すると、より長い時間軸は自然に上(「凧レベル」から「雲レベル」)に、より短い時間軸は下(「魚レベル」や「貝レベル」)に配置されます。

ユーザーストーリーについて

As a <certain type of user>
I want to be able to <do something>
So that <larger goal in a business context>

よく、こんな形で書かれているユーザーストーリーを見たことはないでしょうか。コーバーンさんはこのスタイルが好きではないそうです。
嫌いな理由はこんな感じ

冗長すぎる。何回も書いていると、授業中に話をして罰されているような気持ちになる。
読みにくい。同じ定型文を200回も見ていると疲れる
意味のある so that節を書ける人は少ない。
大体の人は長すぎる宿題を終わらせるためになんか書くだけ。
この形式を使用しているということは、ビジネス担当者と開発者の間で会話が不足していることを意味すする。
十分な会話があれば普通の会話で伝わる。
以下さらに続く。

100ページ中2ページをこの形式の文句に費やすのはよほど嫌いなようでとても面白いです。

大体の人は長すぎる宿題を終わらせるためになんか書くだけ

でもこの箇所はとても共感したところではあります。

おわりに

コーバーンさん自体がアジャイル界の歴史みたいなものなので、Use caseの説明やUser Storiesの説明に他の書籍でも見たことのある名前やエピソードが出てくるのは面白いですね。
難しい箇所は抜きにして簡潔にまとまっている印象なので、多くの人に読んでもらいたいですね。

このマグカップはあまり欲しくないかな...
https://store7710079.company.site/Alistair-Face-Mug-p656911260

Voicyテックブログ

Discussion