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
Livesense Inc.
PRO
April 21, 2014
Technology
45
0
Share
プロジェクトのすすめ vol.3 #TechLunch
プロジェクトのすすめ vol.3
2012/08/01 (水) @ Livesense TechLunch
発表者:島田 喜裕
Livesense Inc.
PRO
April 21, 2014
More Decks by Livesense Inc.
See All by Livesense Inc.
Rubyはただの⾔語に⾮ず
livesense
PRO
0
50
28新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
61
27新卒_総合職採用_会社説明資料
livesense
PRO
0
4.8k
27新卒_Webエンジニア職採用_会社説明資料
livesense
PRO
0
9.3k
株式会社リブセンス・転職会議 採用候補者様向け資料
livesense
PRO
0
380
株式会社リブセンス 会社説明資料(報道関係者様向け)
livesense
PRO
1
1.7k
データ基盤の負債解消のためのリプレイス
livesense
PRO
0
610
26新卒_総合職採用_会社説明資料
livesense
PRO
0
13k
株式会社リブセンス会社紹介資料 / Invent the next common.
livesense
PRO
2
64k
Other Decks in Technology
See All in Technology
生成AI時代に信頼性をどう保ち続けるか - Policy as Code の実践
akitok_
1
530
Swift Sequence の便利 API 再発見
treastrain
1
290
最新技術を"今は選ばない"という技術選定
leveragestech
PRO
0
350
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
170
TSKaigi 2026 - enumよ、さようなら
teamlab
PRO
2
270
キャリア25年目にしてTypeScript に出会うまで - 「型」を通じて振り返るプログラミング言語遍歴 / Meeting TypeScript After 25 Years in Tech - Looking Back at My Programming Language Journey Through "Types"
bitkey
PRO
2
130
Agent Development Kit (ADK)で学ぶ実践Context Engineeringと社内での応用例
lycorptech_jp
PRO
0
130
AI飲み会幹事エージェントを作っただけなのに
ykimi
0
250
JTCでRedmine利用者2700人を実現した手法 第二部
nobuonakamura
0
150
The Making of AI Chips
pfn
PRO
0
610
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
47k
自作エディターをOSSにして分かった、一人に刺さる開発が世界を動かす理由
shinyasaita
0
150
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.3k
Scaling GitHub
holman
464
140k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
260
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Why Our Code Smells
bkeepers
PRO
340
58k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
160
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
180
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
240
Transcript
プロジェクトのすすめ3 ユースケースについて
TDDのFAQ ▪テスト駆動開発 (TDD) を始めたばかりの、次のようなよくある 質問 どれくらい事前設計をするのでしょうか?どうすればいつやめる かわかるのでしょうか? ↓
TDDのFAQ ▪テスト駆動開発 (TDD) を始めたばかりの、次のようなよくある 質問 どれくらい事前設計をするのでしょうか?どうすればいつやめる かわかるのでしょうか? ↓ 何を構築すべきかわかるまでです。
TDDで補えない事 • 良いプログラムは開発できるが、良いシステム を開発できるわけではない • なんらかの開発プロセスは必要 ◦ アジャイルやウォーターフォールなど
プログラムの仕様と要件 • システム開発の目的は顧客の要件の実現 ◦ 仕様が要件を満たしていなければ本末転倒 • 要件から「何を構築するか」を設計する
「何を構築するか?」を決める • 顧客の言葉を使ったシステムの使い方 ◦ ユースケース ◦ ユーザストーリー • システムの外部的な振る舞い ◦
画面モックアップ
方向付けフェーズ ユースケースモデルは、予測されるほとんどのユースケースを リストするが、最初に詳述するのは10%ぐらい。 システムの範囲、目的、リスクをとらえた大まかなビジョンを作 成するために行われる。
• 文書資料はさほど多くなくて良い • プロジェクトにとって本当に価値のある成果物だけを作成 し、価値がはっきりしないものは作成しない。 • 完全な仕様を作成することは重要ではない。 ◦ プログラミングやテストから得られた貴重なフィードバッ クをもとに詳細化していく基礎となる、おおまかな文書を
作成。 多くの場合、成果物やモデルを作成する際に重要なことは文 書や図そのものではなく、考察し、分析し、先を見越した準備を 整えることにあります。 これは「モデリングの最も重要な価値は、信頼できる仕様をま とめることではなく、理解を深めることである」 とするアジャイル モデリングの考え方そのもの。
None
戦闘準備に入ると計画は役に立 たぬことを幾度も思い知った。 しかし、計画を立てぬわけにはい かなかった アイゼンハワー
定義 • アクタ:人(役割によって識別される)、コンピュータシステム、 組織。振る舞いを持つ何か。 ◦ 例)レジ係り • シナリオ:アクタと目的のシステムとの間で行われるアクショ ンおよび相互作用の特定シーケンス。システムの使い方の 特定のストーリー。
ユースケース:目標達成のためにシステムを使用するアクタを 記述した、正常なシナリオおよび失敗のシナリオの関連性のあ るまとまり。
ユースケースモデル • ユースケースは図ではなくテキスト文書のこと。 • ユースケースモデリングは主に、作図ではなくテ キストを書くという行為を指す。 新米のユースケースモデラはテキストでストーリー を書くという単純だけれども集中力を要する作業よ り、ユースケース図、ユースケース関係、ユース ケースパッケージなど二次的な作業にとらわれる
傾向がある
ユースケースを作成する理由 ユースケースはものごとを単純にする優れた方法 であり、問題領域の専門家や要件の提供者が自 分でユースケースを書いたり、書く作業に参加した りできるようになる。 • 単純で分かり易ければ、だれにとっても、特に 顧客にとっても、自分たちの目標を定義したりレ ビューしたりする際に利用しやすい。 •
重要なことを見落とすリスクも小さくなる
ユーザの側からみた目標と立場を協調できる。 「こ のシステムを使うのは誰か。彼らの典型的な使い 方のシナリオは何か。目標は何か」を問いかける。 単にシステムフィーチャーの リストを問うのに比べて、よりユーザを重視。 ユースケースの強みは、レベルは詳しさの程度を 高めたり低めたりできるところ。
アクタの種類 • 主要アクタ・・・システムを使うことによって達成 されるユーザ目標をもつ。例)レジ係り • 補助アクタ・・・システムに情報を提供する。コン ピュータシステムであることが多いが、人や組織 である場合もある。例)自動化された支払い承 認サービス •
舞台裏アクタ・・・ユースケースの振る舞いに関 心を持つが、主要アクタでも補助アクタでもない アクタ。例)政府税務機関
ユースケースの書式 ユースケースは書式や正式さの度合いを変えて書くことができ る • 簡素・・・短い1パラグラフの要約で、通常は主要な正常シナ リオを表す。 • 略装・・・非公式なパラグラフ形式。いくつかのパラグラフに 別れ、様々なシナリオを記述。 •
盛装・・・すべてのステップとバリエーションが詳細に書か れ、事前条件や正常時のような補助的なセクションもある。
盛装のユースケース テンプレートの例
指針 • 簡潔なユースケースを書く • ブラックボックスユースケース・・・システムの内 部動作も、システムのコンポーネントも、設計も 説明しない。「どのように」 を決めずに、システ ムが「何を」行わなければならないかを指定。
ユースケース駆動 反復型(イテレーション)開発手法におけるユースケースの扱い • 機能的要件が主としてユースケースに記録される。他の要 件テクニック(機能リストなど)は、使うにしても二次的。 • ユースケースが反復型計画の重要な部分を占める。反復の 作業は、部分的にはユースケースの一部のシナリオまたは ユースケース全体を選ぶことによって定まる。またユース ケースは見積りの重要な材料でもある。
• ユースケース実現化が設計を駆動。 • ユーザにマニュアルの編成にも影響を及ぼす。 • 機能テストまたはシステムテストはユースケースのシナリオ に対応。
最後に はじめから「すべてを正しく」しなければならないと思いつめると 分析麻痺に陥り、行き詰る。 反復しながら進化的に考える。 ユースケースは推敲を経るうちに少しの手間で反復的に進化し ていくイメージ。
次回 プロジェクトのすすめ?