オブジェクト指向開発論

オブジェクト指向開発論
2015年5月14日
海谷 治彦
1
目次
• ロバストネス図作成例
• 書籍詳細を表示する
• 顧客レビューを書く
• ドメインモデルの詳細化
• 演習1のレビュー (匿名にて)
2
ICONIXの全体手順
3
復習
ロバストネス分析
• 最終的にはクラス図,そしてコードを得なければな
らない.
• ユースケースを眺めていても,なかなかクラス図に
はならない.
• 下記のようなギャップを埋めるために試験的な設
計をするための図がロバストネス図.
p.106 図 5.1
4
復習
ロバストネス図の構成要素
• バウンダリ オブジェクト Boundary
• アクターとのインタフェースに相当,名詞で表現
• 画面,Webページ,通信回線
• ボタンやメニュー等はダメっぽい.
<<boundary>>
バウンダリ
バウンダリ
• エンティティ オブジェクト Entity
• データや情報に相当,名詞で表現
• ドメインモデルの要素
<<entity>>
エンティティ
エンティティ
• コントローラー Controller
• 処理や機能に相当,動詞で表現
• 表示する,登録する,○□をチェックする
• CRUD+I が参考になるかも
<<control>>
コントローラー
コントローラー
• Create, Read, Update, Delete, Index
5
例題1
• 書籍詳細を表示する
• ファイルは dotcampusから得てください
• ユースケース記述 p131ucd.xlsx
• ロバストネス図 p131rbst.asta
6
書籍詳細を表示する V.1
• B: 書籍詳細を表示する
• B: 書籍詳細を見る, B: 書籍詳細
• 動詞で書いてあるB
ホームページを表示する
ホームページ
URLを入力する
顧客
リンクをクリックする
書籍
書籍詳細を見る
書籍詳細を取得する
見つかりませんを表示する
「書籍詳細」
書籍詳細を表示する
「書籍詳細が見つかりません」
7
書籍詳細を表示する V.2
• 動詞表現のバウンダリが無くなった.
• 同じ意味っぽいバウンダリが統合された.
顧客
URLを入力する
ホームページ
リンクを表示する
書籍一覧を取得する
リンクをクリックする
カタログ
「書籍詳細」ページ
書籍一覧
「書籍詳細」ページを表示する
「書籍詳細が見つかりません」ページ
書籍詳細を取得する
見つかりませんを表示する
書籍
8
例題2
• 顧客レビューを書く
• ファイルは dotcampusから得てください
• ユースケース記述 p133ucd.xlsx
• ロバストネス図 p133rbst.asta
9
顧客レビューを書く V.1
• ボタン,ラベル,リストボックス等をバウンダリにす
るのは好ましくない.
• あまりに詳細すぎる.
• なんとか画面くらいの粒度にしておくべき.
顧客
クリック
「レビューを書く」ボタン
10
顧客レビューを書く V.2
• レビューと「レビュー記入」ページ間の関連(メッ
セージ)がおかしい.
• 「レビューを書く」ボタンは1個前の画面でクリックじゃな
い?
• レビューは短すぎたり長すぎたりしないか?はちと
長い.
「レビューを書く」ボタンをクリック
「レビュー記入」ページ
顧客
レビューを記入して「送信」をクリックする
書籍評価は範囲内か?
レビューは短すぎたり長すぎたりしないか?
11
顧客レビュー V.3
• 例外コースをフォロウしてない.
顧客
「レビューを書く」ボタンをクリックする
「書籍詳細」ページ
「送信」をクリックする
顧客レビュー
を審査する
確認ページを表示する
レビュー記入ページを表示する
「レビュー記入」ページ
書籍レビューの長さはOKか?
Yes
<<include>>
Yes 書籍評価は範囲内か?
確認ページ
12
顧客レビュー V.4
顧客セッション
No
ログインしてるか?
ログインする
Yes
顧客
「レビューを書く」ボタンをクリックする
「書籍詳細」ページ
レビュー記入ページを表示する
「送信」をクリックする
顧客レビュー
を審査する
確認ページを表示する
「レビュー記入」ページ
書籍レビューの長さはOKか?
Yes
<<include>>
Yes 書籍評価は範囲内か?
確認ページ
No
No
「レビュー拒否」ページ
拒否ページを表示する
13
ドメインモデルの拡充
推奨品リスト
関連書籍
顧客セッション
- ログイン済 : boolean
顧客アカウント
マスターアカウントリスト
発送
注文履歴
検索結果
購入予定リスト
カテゴリー
倉庫
書籍一覧
在庫
書籍
注文
精算
書籍レビュー
顧客評価
顧客
著者
- タイトル : String
- 概要 : String
- 顧客評価 : int
- レビュー : String
支払方法
取扱品目
書籍カタログ
発注書
編集者レビュー
ショッピングカート
提携者サイト
クレジットカード
配送システム
読者レビュー
データベース
ミニカタログ
マスター書籍カタログ
検索方法
販売者
14
演習1のレビュー
• 提出されたastahファイルを見ながら講評します.
• 無論,非公開.
15
本日は以上
16