Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
プロジェクトのすすめ vol.3 #TechLunch
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Livesense Inc.
April 21, 2014
Technology
0
44
プロジェクトのすすめ vol.3 #TechLunch
プロジェクトのすすめ vol.3
2012/08/01 (水) @ Livesense TechLunch
発表者:島田 喜裕
Livesense Inc.
April 21, 2014
Tweet
Share
More Decks by Livesense Inc.
See All by Livesense Inc.
27新卒_総合職採用_会社説明資料
livesense
0
3.7k
27新卒_Webエンジニア職採用_会社説明資料
livesense
0
7.9k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
0
280
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
1
1.7k
データ基盤の負債解消のためのリプレイス
livesense
0
570
26新卒_総合職採用_会社説明資料
livesense
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
2
58k
26新卒_Webエンジニア職採用_会社説明資料
livesense
1
13k
中途セールス職_会社説明資料
livesense
0
300
Other Decks in Technology
See All in Technology
SSoT(Single Source of Truth)で「壊して再生」する設計
kawauso
2
400
OPENLOGI Company Profile for engineer
hr01
1
61k
Cursor Subagentsはいいぞ
yug1224
2
120
RGBに陥らないために -プロダクトの価値を届けるまで-
righttouch
PRO
0
130
タスク管理も1on1も、もう「管理」じゃない - KiroとBedrock AgentCoreで変わった“判断の仕事”
yusukeshimizu
0
140
TUNA Camp 2026 京都Stage ヒューリスティックアルゴリズム入門
terryu16
0
620
Oracle Cloud Infrastructure:2026年3月度サービス・アップデート
oracle4engineer
PRO
0
200
AIにより大幅に強化された AWS Transform Customを触ってみる
0air
0
190
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
kaomi_wombat
0
270
イベントで大活躍する電子ペーパー名札を作る(その2) 〜 M5PaperとM5PaperS3 〜 / IoTLT @ JLCPCB オープンハードカンファレンス
you
PRO
0
220
AgentCoreとLINEを使った飲食店おすすめアプリを作ってみた
yakumo
2
260
なぜarray_firstとarray_lastは採用、 array_value_firstとarray_value_lastは 見送りだったか / Why array_value_first and array_value_last was declined, then why array_first and array_last was accpeted?
cocoeyes02
0
290
Featured
See All Featured
The browser strikes back
jonoalderson
0
850
The Curse of the Amulet
leimatthew05
1
11k
Between Models and Reality
mayunak
2
250
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
260
Faster Mobile Websites
deanohume
310
31k
Speed Design
sergeychernyshev
33
1.6k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
420
Evolving SEO for Evolving Search Engines
ryanjones
0
170
Optimizing for Happiness
mojombo
378
71k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
470
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
100
Believing is Seeing
oripsolob
1
99
Transcript
プロジェクトのすすめ3 ユースケースについて
TDDのFAQ ▪テスト駆動開発 (TDD) を始めたばかりの、次のようなよくある 質問 どれくらい事前設計をするのでしょうか?どうすればいつやめる かわかるのでしょうか? ↓
TDDのFAQ ▪テスト駆動開発 (TDD) を始めたばかりの、次のようなよくある 質問 どれくらい事前設計をするのでしょうか?どうすればいつやめる かわかるのでしょうか? ↓ 何を構築すべきかわかるまでです。
TDDで補えない事 • 良いプログラムは開発できるが、良いシステム を開発できるわけではない • なんらかの開発プロセスは必要 ◦ アジャイルやウォーターフォールなど
プログラムの仕様と要件 • システム開発の目的は顧客の要件の実現 ◦ 仕様が要件を満たしていなければ本末転倒 • 要件から「何を構築するか」を設計する
「何を構築するか?」を決める • 顧客の言葉を使ったシステムの使い方 ◦ ユースケース ◦ ユーザストーリー • システムの外部的な振る舞い ◦
画面モックアップ
方向付けフェーズ ユースケースモデルは、予測されるほとんどのユースケースを リストするが、最初に詳述するのは10%ぐらい。 システムの範囲、目的、リスクをとらえた大まかなビジョンを作 成するために行われる。
• 文書資料はさほど多くなくて良い • プロジェクトにとって本当に価値のある成果物だけを作成 し、価値がはっきりしないものは作成しない。 • 完全な仕様を作成することは重要ではない。 ◦ プログラミングやテストから得られた貴重なフィードバッ クをもとに詳細化していく基礎となる、おおまかな文書を
作成。 多くの場合、成果物やモデルを作成する際に重要なことは文 書や図そのものではなく、考察し、分析し、先を見越した準備を 整えることにあります。 これは「モデリングの最も重要な価値は、信頼できる仕様をま とめることではなく、理解を深めることである」 とするアジャイル モデリングの考え方そのもの。
None
戦闘準備に入ると計画は役に立 たぬことを幾度も思い知った。 しかし、計画を立てぬわけにはい かなかった アイゼンハワー
定義 • アクタ:人(役割によって識別される)、コンピュータシステム、 組織。振る舞いを持つ何か。 ◦ 例)レジ係り • シナリオ:アクタと目的のシステムとの間で行われるアクショ ンおよび相互作用の特定シーケンス。システムの使い方の 特定のストーリー。
ユースケース:目標達成のためにシステムを使用するアクタを 記述した、正常なシナリオおよび失敗のシナリオの関連性のあ るまとまり。
ユースケースモデル • ユースケースは図ではなくテキスト文書のこと。 • ユースケースモデリングは主に、作図ではなくテ キストを書くという行為を指す。 新米のユースケースモデラはテキストでストーリー を書くという単純だけれども集中力を要する作業よ り、ユースケース図、ユースケース関係、ユース ケースパッケージなど二次的な作業にとらわれる
傾向がある
ユースケースを作成する理由 ユースケースはものごとを単純にする優れた方法 であり、問題領域の専門家や要件の提供者が自 分でユースケースを書いたり、書く作業に参加した りできるようになる。 • 単純で分かり易ければ、だれにとっても、特に 顧客にとっても、自分たちの目標を定義したりレ ビューしたりする際に利用しやすい。 •
重要なことを見落とすリスクも小さくなる
ユーザの側からみた目標と立場を協調できる。 「こ のシステムを使うのは誰か。彼らの典型的な使い 方のシナリオは何か。目標は何か」を問いかける。 単にシステムフィーチャーの リストを問うのに比べて、よりユーザを重視。 ユースケースの強みは、レベルは詳しさの程度を 高めたり低めたりできるところ。
アクタの種類 • 主要アクタ・・・システムを使うことによって達成 されるユーザ目標をもつ。例)レジ係り • 補助アクタ・・・システムに情報を提供する。コン ピュータシステムであることが多いが、人や組織 である場合もある。例)自動化された支払い承 認サービス •
舞台裏アクタ・・・ユースケースの振る舞いに関 心を持つが、主要アクタでも補助アクタでもない アクタ。例)政府税務機関
ユースケースの書式 ユースケースは書式や正式さの度合いを変えて書くことができ る • 簡素・・・短い1パラグラフの要約で、通常は主要な正常シナ リオを表す。 • 略装・・・非公式なパラグラフ形式。いくつかのパラグラフに 別れ、様々なシナリオを記述。 •
盛装・・・すべてのステップとバリエーションが詳細に書か れ、事前条件や正常時のような補助的なセクションもある。
盛装のユースケース テンプレートの例
指針 • 簡潔なユースケースを書く • ブラックボックスユースケース・・・システムの内 部動作も、システムのコンポーネントも、設計も 説明しない。「どのように」 を決めずに、システ ムが「何を」行わなければならないかを指定。
ユースケース駆動 反復型(イテレーション)開発手法におけるユースケースの扱い • 機能的要件が主としてユースケースに記録される。他の要 件テクニック(機能リストなど)は、使うにしても二次的。 • ユースケースが反復型計画の重要な部分を占める。反復の 作業は、部分的にはユースケースの一部のシナリオまたは ユースケース全体を選ぶことによって定まる。またユース ケースは見積りの重要な材料でもある。
• ユースケース実現化が設計を駆動。 • ユーザにマニュアルの編成にも影響を及ぼす。 • 機能テストまたはシステムテストはユースケースのシナリオ に対応。
最後に はじめから「すべてを正しく」しなければならないと思いつめると 分析麻痺に陥り、行き詰る。 反復しながら進化的に考える。 ユースケースは推敲を経るうちに少しの手間で反復的に進化し ていくイメージ。
次回 プロジェクトのすすめ?