ユースケース駆動開発実践ガイド
https://gyazo.com/225b8a5bd6370d98c670a4efa21b3273
第1章 ICONIXプロセス
第1部 要求定義
https://gyazo.com/b2b2e36b857d1cdb22d3550500cba698
88˜†
第2章 ドメインモデリング
2.1 上空3,000メートルからの眺め
2.2 ドメインモデリングの理論
2.3 ドメインモデリングの実践
2.4 さらなる練習
2.5 まとめ
第3章 ユースケースモデリング
3.1 上空3,000メートルからの眺め
機能要求に加えてユースケースを記述することでメイン動作に関して認識を揃えたり、エラーケースに対して考慮する
ユースケース分析の前のドメインモデリングは2h程度で十分
ICONIXでは、最初のドメインモデルは正確ではなくユースケース分析を行いながら反復的に改良されていく
ユースケースを書いていけば更新したくなる
ロバストネス分析に繋げていくことで単体テストで振る舞い要求を検証するのは簡単になる→5章
3.2 ユースケースモデリングの理論
アクターとユースケース図でシュッと表現する
アクター:人間だけではなくて、外部システムでも良い
ユースケースは叙述的に書く
指示的に書くと、その裏に隠れた前提条件や、ソフトウェアの振る舞いがわかりにくい
誰が、何をするのかを明確にする
ユースケースに対する手順を具体的に示す。
ユーザーとシステムの両方を記述する。
ユースケースにはユーザーとシステムとの対話が記述されています。(中略)
最終的にはソフトウェアを規定する必要があり、しかもソフトウェアはシステムの振る舞いから構成されていますから、ユーザーが何を行うのかだけを記述するのでは不十分です。そのため、個々のユースケースにおいて、ユーザーとシステムの対話の両側を記述することは極めて重要です。
ダグ・ローゼンバーグ,マット・ステファン. ユースケース駆動開発実践ガイド (Japanese Edition) (Kindle の位置No.1932-1935). Kindle 版.
言葉は重要。ドメインクラスの名前を使うように意識したいし、バウンダリクラスの名前を使う
バウンダリクラスって、UIを指し示す言葉という理解でいいのかなmactkg.icon
ユースケースはユーザーガイドと考えても良い
ユーザーガイドを書いて、それからコードを書いていると言ってもよい。
レガシーシステムをアップデートする場合も同様で、まず(既存の機能を分析して)ユーザーガイドを書いて、そこから変更していけば良い。
ユースケースの関係を頑張って描こうとするより、ユースケースのモデリングに集中しちゃった方が良い、時間の無駄
includeやinvokeあたりに絞って、それを使い続けた方が良い
ユースケースにバリデーションをきちんと含めておくのは大事で、コントローラを見つけるための手がかりになる
コントローラって何?mactkg.icon
3.3 ユースケースモデリングの実践
練習問題
3.4 さらなる練習
3.5 まとめ
感想
ユースケースを書くときのコツがまとまっていてよかった
特に関係は頑張らなくて良く、とにかくユースケースをブラッシュアップしろ。というのは良い
ここから一気通貫でテストまで行けるのは楽しみな感じ
レガシーシステムの話は目から鱗
こんなユースケースよくない、という練習問題がわかりやすい
第4章 要求レビュー
4.1 要求レビューの理論
4.2 要求レビューの実践
4.3 まとめ
第2部 分析/概念設計/テクニカルアーキテクチャ
第5章 ロバストネス分析
5.1 上空3,000メートルからの眺め
5.2 ロバストネス分析の理論
5.3 ロバストネス分析の実践
5.4 さらなる練習
5.5 まとめ
第6章 予備設計レビュー
6.1 予備設計レビューの理論
6.2 予備設計レビューの実践
6.3 まとめ
第7章 テクニカルアーキテクチャ
7.1 上空3,000メートルからの眺め
7.2 テクニカルアーキテクチャの理論
7.3 テクニカルアーキテクチャの実践
7.4 インターネット書店のアーキテクチャ
7.5 テクニカルアーキテクチャにおける失敗のトップ10(「やってはいけない」)
7.6 まとめ
第3部 設計/コーディング
第8章 シーケンス図
8.1 上空3,000メートルからの眺め
8.2 シーケンス図作成の理論
8.3 シーケンス図作成の実践
8.4 さらなる練習
8.5 まとめ
第9章 詳細設計レビュー
9.1 上空3,000メートルからの眺め
9.2 詳細設計レビューの理論
9.3 詳細設計レビューの実践
9.4 まとめ
第10章 実装:詳細設計からコードへ
10.1 上空3,000メートルからの眺め
10.2 実装の理論:設計からコードへ
10.3 実装の実践
10.4 さらなる練習
10.5 まとめ
第11章 コードレビューとモデルの更新
11.1 上空3,000メートルからの眺め
11.2 コードレビューとモデルの更新の理論
11.3 コードレビューとモデルの更新の実践
11.4 まとめ
第4部 テスト/要求の追跡
第12章 設計駆動テスト
12.1 設計駆動テストの理論
12.2 設計駆動テストの実践
12.3 さらなる練習
12.4 まとめ
第13章 要求の収集
13.1 要求収集の理論
13.2 要求収集の実践
13.3 さらなる練習
13.4 まとめ