ユーザー ストーリー マッピング。 ユーザーストーリーマッピングで地図を書き、ソフトウェア開発の旅に出よう!

ユーザーストーリーマッピングで地図を書き、ソフトウェア開発の旅に出よう!

ユーザー ストーリー マッピング

だいぶ時間があいてしまいましたが、ユーザーストーリーのセミナーに参加してきましたので、そのメモです。 ユーザーストーリー すでに多くの記事やスライドが公開されていますので、詳細はそちらに譲りますが、すごく大雑把に言えば簡潔なフォーマットでユーザーストーリーを書き出し、それらをリリースや要求種別を軸に並べ替え製品全体のユーザーワークフローを見えるようにしたものをユーザーストーリーといいます。 参考: よくある悩み ユーザーストーリーはシンプルで素晴らしいものですが、ソフトウェアの機能的な要求ばかりに目が行きがちです。 また、3C(カード、会話、確認)というプロセスはあれど、抜け漏れの防止や発想の仕方まではカバーすることが難しい面があります。 特に実現性や品質特性なども踏まえて検討するには、異なる視点の人々を参加させる必要があります。 その不足を補うために提案されたのがDtoD(Discover to Deliver)という手法です。 今回のセミナーはこのDtoDを実際に試して学ぼうというものでした。 DtoD 資料はオージス総研さんのWebページで公開されています。 「Discover to Deliver」は、米EBG Consulting社のエレン・ゴッテスディーナーとメアリー・ゴーマンによって考案されたです。 特徴を記事より抜粋します。 ワークショップの活用 専門家単独で行うのではなく、顧客、業務、技術という異なる視点の人々が参加するワークショップを開催して、迅速にニーズをより多面的に理解し、表現し、開発内容を検討し、合意を形成する。 多様なモデルの活用 ワークショップで、ニーズや開発内容を軽量でとっつきやすい様々なモデル(短文記述や図等)により多面的に表現し、理解する。 これらは「プロダクトの7側面」という形でまとめられる。 分析者の役割の変更 分析者がワークショップのやの役割を担うことで、プロダクトオーナーの役割を分担する。 合意形成まで如何に早く到達するか、が重要なポイントのように思います。 そのために、ワークショップを開催し、多面的に要件を捉えるためのを提供する、という感じでしょうか。 分析者がになるというのも面白いですね。 プロダクトオーナー1人をたてて集中させるのではなく、分業することでチームによるプロダクトづくりを推進していけるように思えます。 How to DtoDは以下のステップで進んでいきます。 プロダクトビジョン、目的、目標を決める• プロダクトパートナーを整理する• 価値観点を整理する• 7つの側面それぞれのオプション(選択肢)を考える• 価値観点を実現するオプションの組み合わせをストーリーにして考える• 絞り込んだオプションの妥当性を確認する 1. プロダクトビジョン、目的、目標を決める プロダクトが誰を対象にしており、他のプロダクトと違うどのような特色を持つか等を簡潔に記述した プロダクトビジョン を作成します。 そして、達成すべきことを定性的に箇条書きしたものを 目的 、目的に対する定量的な指標を 目標 と呼びます。 DDDでもビジョン声明文というものがありますが、これとの関連はまた別の記事で考えたいと思います。 プロダクトパートナーを整理する DtoDでは3種類のプロダクトに関わる人(パートナー)を定義しています。 記事より抜粋します。 顧客パートナー ユーザーの立場でプロダクトを使う人• 業務パートナー プロダクト開発の予算を獲得し、ビジネス目的やビジネス目標の達成に責任を持つ人• 技術パートナー プロダクトを開発したり、運用する人 プロダクトパートナーの中で要となるのはプロダクトオプションの取捨選択をする人であり、DtoDでは プロダクト擁護者 と呼びます。 プロダクト擁護者はではプロダクトオーナーに相当し、業務パートナーの一員です。 このステップ以降の価値観点の検討する中心になるのは、プロダクト擁護者を含む業務パートナーと技術パートナーの立場の人です。 技術パートナーには、分析者やアーキテクトが参加していることが望ましいとされます。 価値観点を整理する 価値観点とは、プロダクトによって提供したい価値です。 これは、 「このような価値を提供すればそれによりビジネス目的やビジネス目標を達成できるだろう」 という仮説です。 開発では価値観点を実解するソフトウェアを早期にリリースして仮説を検証していきます。 ここでの整理は、前述のパートナーそれぞれの視点でプロダクトが提供すべき価値を考えます。 手順としては次のような形です。 先の各プロダクトパートナーの中から特に重要なパートナーを選ぶ• そのパートナーが何を得るかを列挙する• その中から特に重視するものをピックアップする 書籍「ユーザーストーリー」の中でも、ユーザーストーリーの中で、特に重視するロールを絞って計画をたてる事例が出ていましたが、それと同様に注力するところを決めることが大切です。 私たちは望む全てを手に入れられないという現実を受け入れて、その限られた時間をどこに注力するかを決める必要があります。 7つの側面それぞれのオプション(選択肢)を考える プロダクトオプションとは、やリリースで作成されるプロダクトを構成しうる1つの 選択肢 です。 DtoDでは、複数のプロダクトオプションを識別して、それらの中で作るものを取捨選択していくことが中心的な活動になります。 このプロダクトを構成するオプションは、以下の7つの側面で考えていきます。 記事より抜粋します。 側面 説明 識別方法 表現方法(一部) ユーザー プロダクトの利用者や利用者の役割を表現する どんなユーザーロールを対象にすべきか ユーザーロールマップ インタフェース プロダクトとユーザー、他システムとの相互作用を表現する どんなユーザー、デスと他システムを連携をするか コンテキスト図 アクション プロダクトが提供する機能を表現する どんな業務上のきっかけに対してプロダクトはどのようなことを行わなければならないか イベントと応答 データ プロダクトが対象とする(業務)やデータと、それらのデータ間の関係を表現する 問題領域を構成する概念やエンティティとしてどのようなものが存在し、それらの間にどのような関係があるか 概念モデル、論理データモデル 制御 プロダクトが機能する際に守るべき業務ルールや法規制を表現する アクションが実行される際にどのような業務ルールが施行されるか 決定表、決定木 環境 プロダクトが利用される環境や開発される環境を表現する プロダクトがどのような開発環境で開発され、どのような運用環境で用いられるか 環境オプションの記述表 品質特性 プロダクトが達成すべき利用上あるいは開発上の品質を表現する プロダクトが利用上、開発上でどのような品質を達成すべきか ージ これらの定義は、技術パートナーの一員である分析者が支援します。 7つの側面は区画であり、見つけたプロダクトオプションはその区画に貼り付けていきます。 これをオプションボードと呼びます。 例: 7つの側面の内、品質特性などはストーリーに現れるというより非機能要求として検討されるものです。 ユーザーストーリーから考え始めることで漏れがちな非機能面をここでカバーできるのがポイントのように思います。 動くソフトウェアをリリースするには、環境や品質特性も重要なオプションです。 価値観点を実現するオプションの組み合わせをストーリーにして考える オプションボードに貼り付けられた優先度の高いプロダクトオプションから(粒度の大きな)ストーリーを組み立てます。 このときのフォーマットはユーザーストーリーと同じく、以下のような形式にします。 <役割>として<機能、サービス>ができる それにより<価値>がもたらされる この<役割>と<機能、サービス>のところに、ユーザー側面やアクション側面、データ側面などの言葉を使います。 オプションを整理して、重要なものを組み合わせることで、より洗練されたストーリーをつくることができるように思います。 いきなりストーリーを書きだした場合、個人の主観が混じりやすく、またどれも必要なように見えてしまいます。 選択肢というより小さなものから組み立てるという点がポイントですね。 絞り込んだオプションの妥当性を確認する 後述の3つのビューにおいて、それぞれ行うことが異なります。 事前ビューでは 優先度の高いオプションからストーリーを作ったら、それに対するシナリオを記述して妥当性を確認します。 シナリオとは、ユーザーの観点にたって、プロダクトを利用する具体的な状況を記述したものです。 このとき、全体として最低限必要な機能が網羅されているかも確認します。 現在ビューでは ストーリーに対する受け入れテストケースを定義します。 DtoDでは前提 - 条件 - 結果(Given - When - Then:)の形式で受け入れテストケースを作成することが推奨されます。 "分析"という面が強めにあらわれているように感じますね。 先に述べた通り、ここまでの内容が素早く合意形成されることは、ひとつの目指すところです。 3つの計画期間範囲(ビュー) DtoDは、3つの計画期間範囲(ビュー)を用います。 全体ビュー プロダクトのロードマップを考える• 事前ビュー 次のリリースを構成するプロダクトオプションを考える• 現在ビュー 1回ので実現する要求を考える 前述4〜6を"構造化された会話"と呼び、事前ビューや現在ビューはこれによって検討が進められます。 事前ビューで検討した粒度の大きなストーリーから、現在ビューでは更に同様の手順で深掘りをして、粒度の小さなストーリーにします。 事前ビューでは、妥当性が確認できたら、ストーリーを開発する労力を見積もり、次のリリースで予定するかなどを確認します。 このリリース計画は事前ビューの最後のアウトプットです。 事前ビューでは、価値の高いプロダクトオプションを調査、評価、確認して、リリース計画を作成します。 構造化された会話 "構造化された会話"は3つのステップで構成されます。 調査する プロダクトオプションを広く考える• 評価する 価値と計画対象期間を考慮してプロダクトオプションを絞り込む• 確認する 絞り込んだプロダクトオプションの妥当性を確認する これらの3ステップは必ず順番に行う必要はありません。 調査と評価は頻繁に繰り返し、確認はそれらで得られたものに対して行います。 感想 実際にセミナーで体験してみると、とりあえずユーザーストーリーを考えだすよりも、DtoDを用いた方が進め方が分かりやすかったです。 プロダクト開発は正解のわからない中で進めなければいけないので、DtoDを用いたとしても迷いがなくなるわけではありません。 やはり最終的には人と人の会話によって、プロダクトは形作られるものと思います。 その会話のきっかけや議論の順序というものをDtoDのようなで補うという点は良かったと思いました。 一方で、セミナーではかなり短い時間設定で体験したため、実際にこれらを毎の最初に行うと実は重いのではないかとも感じますが、そこは試してみないと判断できないところです。 毎回7側面すべてをゼロから考え直すわけではなく、反復の中で蒸留していく考えだと思うので、重すぎるとまではいかないと思いますがどうなんでしょう。 チームの習熟度やパートナーとの関係なども踏まえて工夫しなければいけないのは、どんな手法でも変わらないところですね。 本当はDDDとユーザーストーリー、そしてDtoDで絡めて書きたかったのですが、力尽きたのでまた機会があれば改めて書きたいと思います... 参考 ここまでの内容は端折っている部分も多いですので、より詳細が知りたい場合は参考リンクや書籍、実践的なトレーニング受講を検討した方が良いでしょう。 yoskhdia.

次の

ユビキタス言語を発見するためにユーザーストーリーマッピングをやってみた #GameWith #TechWith

ユーザー ストーリー マッピング

要件が曖昧でもITシステムを作れる。 ただし、方法論を知らずしてそれは叶わない。 要件手前のアイデアを「仮説」に変換する技術など、システム開発を迅速に進めるための方法論を押さえよう。 デザイン思考などの手法を用いてシステム開発の「仮説」を立てたら、次はそれを実際に動くシステムとして開発していく。 とはいえ、仮説はプロジェクトの目的やユーザーが抱える課題、その解決案の候補を短い文で挙げただけ。 システムの開発を始めるには曖昧すぎる。 開発に入る前に、仮説を「システムへの要求」に詳細化する必要がある。 デジタル変革や新サービス開発では、「システムを世に出してみないと分からないことがたくさんあり、一番力を入れた機能がユーザーに受け入れられないという場合もある」(アクセンチュアの山根圭輔テクノロジーコンサルティング本部インテリジェントソフトウェアエンジニアリングサービス グループ統括マネジング・ディレクター)。 システムへの要求を考える際には、こうした特徴を押さえておくことが重要となる。 多数のITエンジニアがこの難題に挑み、次のようなやり方が見えてきた。 新事業創出の方法論「リーンスタートアップ」と、小刻みにソフトウエアを開発する手法「アジャイル開発」を組み合わせたシステム開発である。 まずは仮説から考えられるシステムへの要求を洗い出す。 アジャイル開発の「ユーザーストーリーマッピング」という手法を用いるITエンジニアが多い。 [画像のクリックで拡大表示] 洗い出したシステムへの要求の中から「仮説を検証できる最小限の機能」を見つけ出す。 こうした実用最小限の機能を実装したシステムを、リーンスタートアップでは「MVP(Minimum Viable Product)」と呼ぶ。 MVPの見極めにはさまざまなやり方がある。 今回は代表例として「ディスカバリー&フレーミング」という手法を紹介する。 この先はアジャイル開発の進め方に沿って、システムへの要求のうち重要度の高い機能から開発をする。 MVPに相当する機能を開発できたら、初回のリリースとなる。 リリースしたシステムについて、ユーザーの声を聞いたり、主要指標を計測したりして反応を見る。 これが仮説の検証に当たる。 ユーザーの反応が良ければ機能の開発を進め、ユーザーの反応が悪ければ軌道修正をする。 MVPがユーザーに受け入れられなかった場合は、仮説が誤っている可能性が高い。 仮説そのものを見直すなどの、方向転換を検討する。 使いにくいといった問題が見つかれば、機能を改良する。 リリース予定がずっと先の機能を求める声が挙がるなど想定外の反応があれば、開発に着手する順番を変更する。 ビジネス担当や開発担当が新たなアイデアを思いつく場合もある。 アジャイル開発はこうした変化への対応を得意とする。 ユーザーストーリーマッピング システム機能の見取り図を作る ユーザーストーリーマッピングとは、時系列で並べたユーザーの行動に沿って、システムへの要求を洗い出す手法だ。 ビジネス担当と開発担当が話し合い、模造紙と付箋を使ってシステムへの要求の見取り図を作成する。 [画像のクリックで拡大表示] 具体的な流れは以下の通り。 まず、模造紙の一番上に業務の大まかな流れを書いた付箋を貼る。 続いて、業務の流れの各段階で、ユーザーが実施する作業をステップに分解して、その内容を付箋に書く。 付箋は左から右へと時系列に沿って横に並べて貼っていく。 役割が異なるユーザーが複数いて混乱しそうな場合は、2段目の作業のステップを複数行に分ける。 各作業のステップの下に、それを実現するシステムの機能を縦方向に貼っていく。 教科書的には、付箋は「[ユーザーの役割]が[機能]をできる。 それは[目的]のためだ」といったユーザーストーリー形式で書く。 アジャイル開発に詳しいエバンジェリズム研究所の長沢智治代表は「実務ではあまりユーザーストーリーの形式にこだわる必要はない。 単なる機能名でもいいので、まずは考えつく限りの全てを出し切る」とアドバイスする。 新日鉄住金ソリューションズのチームがユーザーストーリーマッピングを実施している様子(出所:新日鉄住金ソリューションズ) 一通り出し切ったら、優先順位が高い機能が上にくるよう並び替える。 そして、MVPとなる機能を選択して線を引く。 これが初回のリリースとなる。 それ以降のリリースで提供したい機能を想定して、2回目以降のリリースの線も引く。 伊藤忠テクノソリューションズの松村和美流通・EPビジネス企画室アプリケーションビジネス推進部エキスパートエンジニアは、実践的なテクニックとして「特定ユーザーの細かい作業のステップで議論が白熱して、必要な機能を見逃してしまう場合がある。 模造紙の左側にビジネスやプロジェクトの目的、ユーザーの一覧を書いておくと、話し合いが偏らずに取りこぼしを防ぎやすくなる」と助言する。 ディスカバリー&フレーミング 最も効果のある解決策を発見 システムへの要求の全体像だけでは、MVPに実装する機能を見極めるのが難しい。 富士通の中村記章デジタルフロントビジネスグループエグゼクティブアーキテクトはこの問題に対応するため、ディスカバリー&フレーミングという手法を用いている。 最も効果のある解決策を見つけ出す手法だ。

次の

デザイン思考を生かしてシステムを素早く開発する方法

ユーザー ストーリー マッピング

ストーリー 物語 は、世界とコミュニケーションをとるための最古にして最強のツール。 ウェブサイトであれアプリであれ、オーディエンスからエンゲージメントを獲得できるか否かは、 そこに優れた物語があるかどうかにかかっています。 UXデザイン初学者にまずおすすめしたい入門書です。 ノースウェスタン大学でラジオ、映画、テレビの修士号を取得。 ステーキに食べ放題のサラダバーがつく形態や、スターバックスのようなヨーロッパのバルっぽい喫茶店、ほぼ牛丼だけを早く安く出す店、オーダー式の食べ放題中華、レストランだけで考えても一つ大当たりが出たらすぐにそっくりな営業形態が出て、結局は価格競争になってしまいます。 営業形態には特許申請が効かないことと、MBAの標準教育がほぼ事例研究であることから、どんどんぱくられるのです。 これでは、せっかくのアイデアも短時間しか保ちません。 しかしこの本を読んで気づいた事は、絶対に後発の店でマネできないものは、物語かもしれないということです。 スターバックスが他の類似カフェよりも一歩有利なのは、その営業理念に物語があるからです。 ディズニーリゾートが他のテーマパークより有利なのは、そこに長いお話があるからです。 ほぼ同じクオリティの鞄でも、ルイ・ヴィトンの製品は一桁高い価格で売られるのも、おそらくそこに物語があるからでしょう。 となると、いかに良質な物語を付与するかが重要になります。 次のMBA教育のテーマは、おそらくこれになるでしょう。 それは業務形態をまねるよりはるかに難しいと思いますが、しかし訓練でできるようになるのかもしれません。 この本は、かなり良い参考書になると思います。

次の