SlideShare a Scribd company logo
1 of 37
Download to read offline
ユースケース駆動開発の
ワークショップやってみた!
澤井 友恵(ともえーぬ)
@tomoeine
こんな人に聞いてもらえたらお役に立てそう
● 「ユースケース駆動開発」を読んだことがあるけど、
いざ実践投入するイメージが湧かない人
● 「ユースケース駆動開発」「ICONIXプロセス」をなんとなく知っているけ
ど、具体的なプロセスはまだあまり知らない人
● ワークショップ形式のICONIXプロセス勉強会を開いてみたい人
自己紹介
フリーランスWebエンジニア
ともえーぬ @tomoeine
● 東京→宮崎移住(5年前)
● フリーランス歴3年半
● スタートアップ・ベンチャーを中心に、
スモールチームメインで開発のお手伝い
● よく使うのは Laravel, Node.js, Vue.js, Ruby
on Rails, AWS 等
● 設計や開発プロセスを学ぶのが好き
(実践はまだまだ・・・)
みんなでポモドーロする「minporo」
アジェンダ
● ICONIXプロセスへの理解
● ワークショップの進め方
● ワークショップの内容紹介
○ ドメインモデリング
○ ユースケースモデリング
○ ロバストネス分析
● ワークショップで学んだこと
ICONIXプロセスへの理解
ICONIXプロセスの全体像
● 要求定義よりも後の作業は
イテレーティブ(繰り返し)。
● 最初のドメインモデルとユースケースは
ドラフト版。
以降のプロセスでアップデートされる。
● 稚拙ですが、初心者向けの記事も書きました
のでよろしくお願いします!
https://zenn.dev/tomoeine/articles/2bab
b554aa0478
https://tomoeine.github.io/2021/04/sof
tware-design-miyazaki-202104/
ワークショップの進め方
ワークショップの参加者
先生(たち) 初学者たち
実務でICONIXプロセスを使っています
進め方を指南しますよ
私が要求を伝えます
ICONIXプロセスの経験者を指南役としてお招きした
メンバーの中からドメインエキスパートを決めた
ドメインエキスパート
ワークショップで実践した範囲
ワークショップの題材
居酒屋でボトルキープを記録するアプリ
● お客さんが居酒屋やスナックに行き、
ボトルキープしたらそれを記録する
● お客さんは後で
キープしたボトルを確認する
● お店側も、誰がどのボトルを
キープしたか確認する
ワークショップの内容紹介
ドメインモデリング
ドメインモデリング
ドメインエキスパート
スナックや居酒屋で焼酎のボトルをキープした際に、
スマホで写真を撮って記録するアプリが欲しいです。
なるほど。その記録を見るのは誰ですか?
ボトルをキープしたお客さんと・・・
ボトルを提供したお店ですね。
ドメインモデリング
なるほど。ではドメインモデルはこんな感じでしょうか?
はい。それで良いと思います。
● restaurant: 居酒屋やスナックの店舗
● customer: ボトルキープするお客さん
● kept_bottle: キープされたボトル
ユースケースモデリング
〜ユースケース図〜
ユースケース - ユースケース図
お客さんは最初に、アカウント登録をします。そして
お店でボトルをキープしたら記録します。その際、お
店を一覧から選ぶか、未登録であれば自分でそのお店
を登録します。
後日同じお店でボトルの中身を飲みきったら、再度そ
れを記録します。
お店側も、誰が何をキープしているか確認できます。
このシステムを利用する際の流れを教えて下さい。
お店を登録できるのはお客さんだけですか?
お店のオーナーも、自分のお店を登録できた方がいい
ですね。
また、オーナーのなりすましを防ぐために、管理者に
よる承認が必要です。
ユースケース - ユースケース図
では、ユースケース図はこうでしょうか。
新たなドメインモデルが見つかりましたね!
ユースケース図を踏まえてモデル図をアップデート
ユースケースモデリング
〜ユースケース記述〜
ユースケース記述
今回のシステムで最も重要なユースケース、
「ボトルをキープする」についての
ユースケース記述を作成してみましょう。
ここからはイテレーションですね!
● ドメインモデルの用語を用いる。
● バウンダリクラス(主に画面名)の名前を使う。
● ユーザーとシステムの対話の両側を記述する。
● 指示的ではなく叙述的に書く。
● 基本コースと代替コースを記述する。
● 紙芝居やGUIプロトタイプを用いる。
以下のポイントに気をつけながら作成しましょう。
ユースケース記述 - 基本コース
まずは「基本コース」から考えてみよう。
「ボトルをキープする」の基本コース
1. customer は名前を書いたボトルの写真を撮る
2. システムは位置情報を取得し、近隣の restaurant 一覧を表示する
3. customer は restaurant 一覧から自分の居る restaurant を選択する
4. システムは kept_bottle と restaurant と時刻を登録し、
完了画面を表示する
「基本コース」はこれで良さそうです!
ドメインエキスパートさん、どうでしょうか?
ユースケース記述 - 代替コース
「ユーザーがログインしていない」ケースの考慮が必要で
す。
なるほど!確かに必要ですね。
次に「代替コース」も考えてみましょう。
「代替コース」とは、いわゆる「異常系」ですよね。
「ボトルをキープする」の中でどんな代替コースがあるで
しょうか。
「ボトルをキープする」の代替コース
1. システムは、ログインしていない場合はログイン画面を表示する
ユースケース記述 - 基本コースと代替コース
「ボトルをキープする」の基本コース
1. customer は名前を書いたボトルの写真を撮る
2. システムは位置情報を取得し、近隣の restaurant 一覧を表示する
3. customer は restaurant 一覧から自分の居る restaurant を選択する
4. システムは kept_bottle と restaurant と時刻を登録し、
完了画面を表示する
うーん、ログインチェックしてログイン画面を表示するの
はどのタイミングなんだろう・・・?
「ボトルをキープする」の代替コース
1. システムは、ログインしていない場合はログイン画面を表示する
「基本コース」に足りない項目があるようですね。
ユースケース記述 - 基本コースと代替コース
「ボトルをキープする」の基本コース
1. customer は「keepする」ボタンを押す
2. システムは keep画面を表示する
3. customer は名前を書いたボトルの写真を撮る
4. システムは位置情報を取得し、近隣の restaurant 一覧を表示する
5. customer は restaurant 一覧から自分の居る restaurant を選択する
6. システムは kept_bottle と restaurant と時刻を登録し、
完了画面を表示する
「ボトルをキープする」の代替コース
2-a. システムは、ログインしていない場合はログイン画面を表示する
5-a. customer は、自分の居る restaurant が
restaurant 一覧にない場合はrestaurant 追加ボタンを押す
5-b. システムは、 restaurant 追加画面を表示する
keep 画面までの導線が足りな
かったんだ!
ロバストネス分析
ロバストネス図とは
バウンダリ
オブジェクト
(名詞)
エンティティ
オブジェクト
(名詞)
コントローラ
オブジェクト
(動詞)
● バウンダリとエンティティは名詞、コントローラは動詞として捉え、「名詞-名
詞」にならないように表現する
×バウンダリ-エンティティ ○バウンダリ-コントローラ-エンティティ
● ユースケース記述に合致させて表現する
● 代替コースも漏れなく記述する
● 詳細設計に踏み込まない
● 新たに見つけたオブジェクトをドメインモデル図に反映する
ロバストネス分析
ユースケース記述の上から書き出してみよう。
トップ画面 ログイン状態
か?
customer
ログイン画面
いい
え
keep 画面
はい
写真を撮る?
keep 画面で写真を撮る、でいいのかな・・・?
まずは、「撮影」ボタンを押す操作が必要でしょうか?
ロバストネス分析
できるだけ操作をシンプルにしたいので、トップ画面から
遷移してきた時点で、スマホのカメラが立ち上がって欲し
いですね。
なるほど!
私はここにボタンがあるのかと考えていました。
チーム内で画面のイメージが揃えた方が良さそうですね。
簡単なワイヤーフレームを作って、イメージを共有しま
しょう。
ワイヤーフレーム作成
ワイヤーフレームを踏まえたロバストネス図の修正
トップ画面 ログイン状態
か?
customer
ログイン画面
いい
え
ボトル撮影画面
はい
写真を撮る
写真をメモリー
上に保存する
この画面を踏まえると、今まで「keep画面」と呼んでいた
画面は「ボトル撮影画面」と呼んだ方がわかりやすいです
ね。
完成したロバストネス図
ロバストネス分析を踏まえたユースケース記述の修正
「ボトルをキープする」の基本コース
1. customer は「keepする」ボタンを押す
2. システムはボトル撮影画面を表示する
3. customer は名前を書いたボトルの写真を撮る
4. システムは写真をメモリー上に保存して、位置情報を取得し、近い順に最大n件の restaurant 一覧を検索し、
restraunt 一覧画面に表示する
5. customer は restaurant 一覧から自分の居る restaurant を選択する
6. システムは kept_bottle と restaurant と時刻を登録し、
完了画面を表示する
「ボトルをキープする」の代替コース
2-a. システムは、ログインしていない場合はログイン画面を表示する
4-a. 位置情報が取得できない場合、「位置情報が取得できません」エラーメッセージを表示する
5-a. customer は、自分の居る restaurant が
restaurant 一覧にない場合はrestaurant 追加ボタンを押す
5-b. システムは、 restaurant 追加画面を表示する
ワークショップで学んだこと
ワークショップを通じて学んだこと
それぞれのプロセスでは「完璧だ!」と思っていても、
ユースケースモデリングしたらドメインモデルの不足に気づいたり、
ロバストネス分析したらユースケースの漏れに気づいたり・・・
ICONIXプロセスの流れに従うことで、参加者全員の要求への理解が深まった!
ワイヤーフレームなしで突き進んだら、ロバストネス分析で混乱してしまった
本書にある通り、ユースケースモデリングの時点でGUI紙芝居を作成しておけばよかった
ドメインモデルはゆくゆくクラス図に進化するものという前提のもと英語でドメインモデルを作ったら
現実で使う言葉と違うので以降の作業が難しくなった
やはり現実で使っている日本語を利用するべき?
その場合、クラス名とのマッピングはどうする?
ご清聴ありがとうございました!
澤井 友恵
@tomoeine
ユースケース駆動開発の
ワークショップやってみた!

More Related Content

What's hot

Pull Request & TDD 入門
Pull Request & TDD 入門Pull Request & TDD 入門
Pull Request & TDD 入門ESM SEC
 
テスト観点に基づくテスト開発方法論 VSTePの概要
テスト観点に基づくテスト開発方法論VSTePの概要テスト観点に基づくテスト開発方法論VSTePの概要
テスト観点に基づくテスト開発方法論 VSTePの概要Yasuharu Nishi
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織Takafumi ONAKA
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発日本マイクロソフト株式会社
 
アジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドアジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドHiroyuki Ito
 
やってはいけない空振りDelete
やってはいけない空振りDeleteやってはいけない空振りDelete
やってはいけない空振りDeleteYu Yamada
 
事業成長にコミットするエンジニア組織への道のり
事業成長にコミットするエンジニア組織への道のり事業成長にコミットするエンジニア組織への道のり
事業成長にコミットするエンジニア組織への道のりRecruit Lifestyle Co., Ltd.
 
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回Yoshiki Hayama
 
あなたのチームの「いい人」は機能していますか?
あなたのチームの「いい人」は機能していますか?あなたのチームの「いい人」は機能していますか?
あなたのチームの「いい人」は機能していますか?Minoru Yokomichi
 
「顧客の声を聞かない」とはどういうことか
「顧客の声を聞かない」とはどういうことか「顧客の声を聞かない」とはどういうことか
「顧客の声を聞かない」とはどういうことかYoshiki Hayama
 
大企業アジャイルの勘所 #devlovex #devlovexd
大企業アジャイルの勘所 #devlovex #devlovexd大企業アジャイルの勘所 #devlovex #devlovexd
大企業アジャイルの勘所 #devlovex #devlovexdItsuki Kuroda
 
Python入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングPython入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングYuichi Ito
 
人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説Livesense Inc.
 
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまでShuichi Tsutsumi
 
テスト分析・設計を体感しよう ~マインドマップを活用してテスト観点を発想しよう
テスト分析・設計を体感しよう ~マインドマップを活用してテスト観点を発想しようテスト分析・設計を体感しよう ~マインドマップを活用してテスト観点を発想しよう
テスト分析・設計を体感しよう ~マインドマップを活用してテスト観点を発想しようAkira Ikeda
 
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)Yasuharu Nishi
 
僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達Yusuke Wada
 
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 Hiroshi Ito
 
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかなぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかYusuke Suzuki
 
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門Sho A
 

What's hot (20)

Pull Request & TDD 入門
Pull Request & TDD 入門Pull Request & TDD 入門
Pull Request & TDD 入門
 
テスト観点に基づくテスト開発方法論 VSTePの概要
テスト観点に基づくテスト開発方法論VSTePの概要テスト観点に基づくテスト開発方法論VSTePの概要
テスト観点に基づくテスト開発方法論 VSTePの概要
 
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
 
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
【BS13】チーム開発がこんなにも快適に!コーディングもデバッグも GitHub 上で。 GitHub Codespaces で叶えられるシームレスな開発
 
アジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイドアジャイルメトリクス実践ガイド
アジャイルメトリクス実践ガイド
 
やってはいけない空振りDelete
やってはいけない空振りDeleteやってはいけない空振りDelete
やってはいけない空振りDelete
 
事業成長にコミットするエンジニア組織への道のり
事業成長にコミットするエンジニア組織への道のり事業成長にコミットするエンジニア組織への道のり
事業成長にコミットするエンジニア組織への道のり
 
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回
「UXデザインとは」からはじめる「本流」のUXデザインはじめの一歩 | UXデザイン基礎セミナー 第1回
 
あなたのチームの「いい人」は機能していますか?
あなたのチームの「いい人」は機能していますか?あなたのチームの「いい人」は機能していますか?
あなたのチームの「いい人」は機能していますか?
 
「顧客の声を聞かない」とはどういうことか
「顧客の声を聞かない」とはどういうことか「顧客の声を聞かない」とはどういうことか
「顧客の声を聞かない」とはどういうことか
 
大企業アジャイルの勘所 #devlovex #devlovexd
大企業アジャイルの勘所 #devlovex #devlovexd大企業アジャイルの勘所 #devlovex #devlovexd
大企業アジャイルの勘所 #devlovex #devlovexd
 
Python入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニングPython入門 : 4日間コース社内トレーニング
Python入門 : 4日間コース社内トレーニング
 
人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説
 
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
「スキルなし・実績なし」 32歳窓際エンジニアがシリコンバレーで働くようになるまで
 
テスト分析・設計を体感しよう ~マインドマップを活用してテスト観点を発想しよう
テスト分析・設計を体感しよう ~マインドマップを活用してテスト観点を発想しようテスト分析・設計を体感しよう ~マインドマップを活用してテスト観点を発想しよう
テスト分析・設計を体感しよう ~マインドマップを活用してテスト観点を発想しよう
 
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
 
僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達僕がつくった 70個のうちの48個のWebサービス達
僕がつくった 70個のうちの48個のWebサービス達
 
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3 データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
データ履歴管理のためのテンポラルデータモデルとReladomoの紹介 #jjug_ccc #ccc_g3
 
なぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのかなぜ「マイクロサービス“化”」が必要なのか
なぜ「マイクロサービス“化”」が必要なのか
 
Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門Ansible ではじめるインフラのコード化入門
Ansible ではじめるインフラのコード化入門
 

Similar to ユースケース駆動開発のワークショップやってみた!

推し技術書「ユースケース駆動開発実践ガイド」
推し技術書「ユースケース駆動開発実践ガイド」推し技術書「ユースケース駆動開発実践ガイド」
推し技術書「ユースケース駆動開発実践ガイド」keitasudo1
 
Letsgo developer 2012 Continuous Delivery
Letsgo developer 2012 Continuous DeliveryLetsgo developer 2012 Continuous Delivery
Letsgo developer 2012 Continuous DeliveryNobuhiro Sue
 
Windowsアプリ開発の実務で使うUnitTest
Windowsアプリ開発の実務で使うUnitTestWindowsアプリ開発の実務で使うUnitTest
Windowsアプリ開発の実務で使うUnitTestkeitasudo1
 
「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) 「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) Taku Yajima
 
How to inspect complete scenes with Unity?
How to inspect complete scenes with Unity?How to inspect complete scenes with Unity?
How to inspect complete scenes with Unity?小林 信行
 
第0回徳島スマホアプリ開発勉強会
第0回徳島スマホアプリ開発勉強会第0回徳島スマホアプリ開発勉強会
第0回徳島スマホアプリ開発勉強会健一 辰濱
 
スクラム開発に取り組んでみた
スクラム開発に取り組んでみたスクラム開発に取り組んでみた
スクラム開発に取り組んでみたyyasuyuki
 
IT業界におけるコミュニティ活動とキャリア形成
IT業界におけるコミュニティ活動とキャリア形成IT業界におけるコミュニティ活動とキャリア形成
IT業界におけるコミュニティ活動とキャリア形成法林浩之
 
jbug#10(ジョイゾー星野)
jbug#10(ジョイゾー星野)jbug#10(ジョイゾー星野)
jbug#10(ジョイゾー星野)Tomohisa Hoshino
 
ヘルプサイトの制作プロセス
ヘルプサイトの制作プロセスヘルプサイトの制作プロセス
ヘルプサイトの制作プロセスNaohiro Nakata
 
プログラミングのお勉強としてscratchをさわってみた
プログラミングのお勉強としてscratchをさわってみたプログラミングのお勉強としてscratchをさわってみた
プログラミングのお勉強としてscratchをさわってみたHirokiIwanaga
 
DevLove四国_LT_yohhatu
DevLove四国_LT_yohhatuDevLove四国_LT_yohhatu
DevLove四国_LT_yohhatuYoh Nakamura
 
モデリングの未来 〜~パネルディスカッション
モデリングの未来 〜~パネルディスカッションモデリングの未来 〜~パネルディスカッション
モデリングの未来 〜~パネルディスカッションTomoharu ASAMI
 
Sphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたSphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたTaku SHIMIZU
 
UXデザイン実践のために押さえておきたい大事なこと 先生:瀧 知恵美
UXデザイン実践のために押さえておきたい大事なこと 先生:瀧 知恵美UXデザイン実践のために押さえておきたい大事なこと 先生:瀧 知恵美
UXデザイン実践のために押さえておきたい大事なこと 先生:瀧 知恵美schoowebcampus
 
いいUIをつくるためにしている開発手法
いいUIをつくるためにしている開発手法いいUIをつくるためにしている開発手法
いいUIをつくるためにしている開発手法Nobuhiro Adachi
 

Similar to ユースケース駆動開発のワークショップやってみた! (20)

推し技術書「ユースケース駆動開発実践ガイド」
推し技術書「ユースケース駆動開発実践ガイド」推し技術書「ユースケース駆動開発実践ガイド」
推し技術書「ユースケース駆動開発実践ガイド」
 
Letsgo developer 2012 Continuous Delivery
Letsgo developer 2012 Continuous DeliveryLetsgo developer 2012 Continuous Delivery
Letsgo developer 2012 Continuous Delivery
 
EPIU
EPIUEPIU
EPIU
 
勉強会勉強会
勉強会勉強会勉強会勉強会
勉強会勉強会
 
Windowsアプリ開発の実務で使うUnitTest
Windowsアプリ開発の実務で使うUnitTestWindowsアプリ開発の実務で使うUnitTest
Windowsアプリ開発の実務で使うUnitTest
 
「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮) 「Agileごっこ」で終わらせないために(仮)
「Agileごっこ」で終わらせないために(仮)
 
How to inspect complete scenes with Unity?
How to inspect complete scenes with Unity?How to inspect complete scenes with Unity?
How to inspect complete scenes with Unity?
 
Openthology256pub
Openthology256pubOpenthology256pub
Openthology256pub
 
第0回徳島スマホアプリ開発勉強会
第0回徳島スマホアプリ開発勉強会第0回徳島スマホアプリ開発勉強会
第0回徳島スマホアプリ開発勉強会
 
スクラム開発に取り組んでみた
スクラム開発に取り組んでみたスクラム開発に取り組んでみた
スクラム開発に取り組んでみた
 
IT業界におけるコミュニティ活動とキャリア形成
IT業界におけるコミュニティ活動とキャリア形成IT業界におけるコミュニティ活動とキャリア形成
IT業界におけるコミュニティ活動とキャリア形成
 
jbug#10(ジョイゾー星野)
jbug#10(ジョイゾー星野)jbug#10(ジョイゾー星野)
jbug#10(ジョイゾー星野)
 
ヘルプサイトの制作プロセス
ヘルプサイトの制作プロセスヘルプサイトの制作プロセス
ヘルプサイトの制作プロセス
 
リモート開発導入
リモート開発導入リモート開発導入
リモート開発導入
 
プログラミングのお勉強としてscratchをさわってみた
プログラミングのお勉強としてscratchをさわってみたプログラミングのお勉強としてscratchをさわってみた
プログラミングのお勉強としてscratchをさわってみた
 
DevLove四国_LT_yohhatu
DevLove四国_LT_yohhatuDevLove四国_LT_yohhatu
DevLove四国_LT_yohhatu
 
モデリングの未来 〜~パネルディスカッション
モデリングの未来 〜~パネルディスカッションモデリングの未来 〜~パネルディスカッション
モデリングの未来 〜~パネルディスカッション
 
Sphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみたSphinxで社内勉強会(Git)の
資料を作ってみた
Sphinxで社内勉強会(Git)の
資料を作ってみた
 
UXデザイン実践のために押さえておきたい大事なこと 先生:瀧 知恵美
UXデザイン実践のために押さえておきたい大事なこと 先生:瀧 知恵美UXデザイン実践のために押さえておきたい大事なこと 先生:瀧 知恵美
UXデザイン実践のために押さえておきたい大事なこと 先生:瀧 知恵美
 
いいUIをつくるためにしている開発手法
いいUIをつくるためにしている開発手法いいUIをつくるためにしている開発手法
いいUIをつくるためにしている開発手法
 

More from Tomoe Sawai

エンタープライズ SaaS の初期成長戦略
エンタープライズ SaaS の初期成長戦略エンタープライズ SaaS の初期成長戦略
エンタープライズ SaaS の初期成長戦略Tomoe Sawai
 
Flexbox しか勝たん
Flexbox しか勝たんFlexbox しか勝たん
Flexbox しか勝たんTomoe Sawai
 
フルリモートチームで スクラム開発 やってみた!
フルリモートチームで スクラム開発 やってみた!フルリモートチームで スクラム開発 やってみた!
フルリモートチームで スクラム開発 やってみた!Tomoe Sawai
 
TypeScriptで辛麺を注文する(ライブコーディング)
TypeScriptで辛麺を注文する(ライブコーディング)TypeScriptで辛麺を注文する(ライブコーディング)
TypeScriptで辛麺を注文する(ライブコーディング)Tomoe Sawai
 
SkyWay で ビデオチャットサービス を構築してみた!
SkyWay で ビデオチャットサービス を構築してみた!SkyWay で ビデオチャットサービス を構築してみた!
SkyWay で ビデオチャットサービス を構築してみた!Tomoe Sawai
 
初めての公開Gem作り
初めての公開Gem作り初めての公開Gem作り
初めての公開Gem作りTomoe Sawai
 
地方フリーランスとして ゆるいチームで生き抜いてる話
地方フリーランスとして ゆるいチームで生き抜いてる話地方フリーランスとして ゆるいチームで生き抜いてる話
地方フリーランスとして ゆるいチームで生き抜いてる話Tomoe Sawai
 
田舎暮らし流エンジニアスキルアップ術
田舎暮らし流エンジニアスキルアップ術田舎暮らし流エンジニアスキルアップ術
田舎暮らし流エンジニアスキルアップ術Tomoe Sawai
 
在宅フリーランスで 失敗した話3選
在宅フリーランスで 失敗した話3選在宅フリーランスで 失敗した話3選
在宅フリーランスで 失敗した話3選Tomoe Sawai
 
Stripe Connect with Subscriptions で サブスクプラットフォーマー になろう
Stripe Connect with Subscriptions で サブスクプラットフォーマー になろうStripe Connect with Subscriptions で サブスクプラットフォーマー になろう
Stripe Connect with Subscriptions で サブスクプラットフォーマー になろうTomoe Sawai
 
Solidus + Stripe で爆速!?ECサイト構築
Solidus + Stripe で爆速!?ECサイト構築Solidus + Stripe で爆速!?ECサイト構築
Solidus + Stripe で爆速!?ECサイト構築Tomoe Sawai
 
宮崎移住して山の中でリモートワークしてみた(2019/6/26)
宮崎移住して山の中でリモートワークしてみた(2019/6/26)宮崎移住して山の中でリモートワークしてみた(2019/6/26)
宮崎移住して山の中でリモートワークしてみた(2019/6/26)Tomoe Sawai
 
宮崎の山の中でリモートワークしてみた
宮崎の山の中でリモートワークしてみた宮崎の山の中でリモートワークしてみた
宮崎の山の中でリモートワークしてみたTomoe Sawai
 
Firebase Authを Nuxt + Railsの自前サービス に導入してみた
Firebase Authを Nuxt + Railsの自前サービス に導入してみたFirebase Authを Nuxt + Railsの自前サービス に導入してみた
Firebase Authを Nuxt + Railsの自前サービス に導入してみたTomoe Sawai
 
センスゼロエンジニアが ノンデザイナーズ・デザインブック を読んでどこまでできるか試す
センスゼロエンジニアが ノンデザイナーズ・デザインブック を読んでどこまでできるか試すセンスゼロエンジニアが ノンデザイナーズ・デザインブック を読んでどこまでできるか試す
センスゼロエンジニアが ノンデザイナーズ・デザインブック を読んでどこまでできるか試すTomoe Sawai
 
5分で伝えるAWS
5分で伝えるAWS5分で伝えるAWS
5分で伝えるAWSTomoe Sawai
 
プラットフォームビジネスを手軽に始める!Stripe Connectを使ってみた
プラットフォームビジネスを手軽に始める!Stripe Connectを使ってみたプラットフォームビジネスを手軽に始める!Stripe Connectを使ってみた
プラットフォームビジネスを手軽に始める!Stripe Connectを使ってみたTomoe Sawai
 

More from Tomoe Sawai (17)

エンタープライズ SaaS の初期成長戦略
エンタープライズ SaaS の初期成長戦略エンタープライズ SaaS の初期成長戦略
エンタープライズ SaaS の初期成長戦略
 
Flexbox しか勝たん
Flexbox しか勝たんFlexbox しか勝たん
Flexbox しか勝たん
 
フルリモートチームで スクラム開発 やってみた!
フルリモートチームで スクラム開発 やってみた!フルリモートチームで スクラム開発 やってみた!
フルリモートチームで スクラム開発 やってみた!
 
TypeScriptで辛麺を注文する(ライブコーディング)
TypeScriptで辛麺を注文する(ライブコーディング)TypeScriptで辛麺を注文する(ライブコーディング)
TypeScriptで辛麺を注文する(ライブコーディング)
 
SkyWay で ビデオチャットサービス を構築してみた!
SkyWay で ビデオチャットサービス を構築してみた!SkyWay で ビデオチャットサービス を構築してみた!
SkyWay で ビデオチャットサービス を構築してみた!
 
初めての公開Gem作り
初めての公開Gem作り初めての公開Gem作り
初めての公開Gem作り
 
地方フリーランスとして ゆるいチームで生き抜いてる話
地方フリーランスとして ゆるいチームで生き抜いてる話地方フリーランスとして ゆるいチームで生き抜いてる話
地方フリーランスとして ゆるいチームで生き抜いてる話
 
田舎暮らし流エンジニアスキルアップ術
田舎暮らし流エンジニアスキルアップ術田舎暮らし流エンジニアスキルアップ術
田舎暮らし流エンジニアスキルアップ術
 
在宅フリーランスで 失敗した話3選
在宅フリーランスで 失敗した話3選在宅フリーランスで 失敗した話3選
在宅フリーランスで 失敗した話3選
 
Stripe Connect with Subscriptions で サブスクプラットフォーマー になろう
Stripe Connect with Subscriptions で サブスクプラットフォーマー になろうStripe Connect with Subscriptions で サブスクプラットフォーマー になろう
Stripe Connect with Subscriptions で サブスクプラットフォーマー になろう
 
Solidus + Stripe で爆速!?ECサイト構築
Solidus + Stripe で爆速!?ECサイト構築Solidus + Stripe で爆速!?ECサイト構築
Solidus + Stripe で爆速!?ECサイト構築
 
宮崎移住して山の中でリモートワークしてみた(2019/6/26)
宮崎移住して山の中でリモートワークしてみた(2019/6/26)宮崎移住して山の中でリモートワークしてみた(2019/6/26)
宮崎移住して山の中でリモートワークしてみた(2019/6/26)
 
宮崎の山の中でリモートワークしてみた
宮崎の山の中でリモートワークしてみた宮崎の山の中でリモートワークしてみた
宮崎の山の中でリモートワークしてみた
 
Firebase Authを Nuxt + Railsの自前サービス に導入してみた
Firebase Authを Nuxt + Railsの自前サービス に導入してみたFirebase Authを Nuxt + Railsの自前サービス に導入してみた
Firebase Authを Nuxt + Railsの自前サービス に導入してみた
 
センスゼロエンジニアが ノンデザイナーズ・デザインブック を読んでどこまでできるか試す
センスゼロエンジニアが ノンデザイナーズ・デザインブック を読んでどこまでできるか試すセンスゼロエンジニアが ノンデザイナーズ・デザインブック を読んでどこまでできるか試す
センスゼロエンジニアが ノンデザイナーズ・デザインブック を読んでどこまでできるか試す
 
5分で伝えるAWS
5分で伝えるAWS5分で伝えるAWS
5分で伝えるAWS
 
プラットフォームビジネスを手軽に始める!Stripe Connectを使ってみた
プラットフォームビジネスを手軽に始める!Stripe Connectを使ってみたプラットフォームビジネスを手軽に始める!Stripe Connectを使ってみた
プラットフォームビジネスを手軽に始める!Stripe Connectを使ってみた
 

ユースケース駆動開発のワークショップやってみた!