More Related Content
PDF
CloudSpiral 2013年度 UML講義 1日目 PDF
GraalVM Native Imageが見せた未来 PDF
CloudSpiral 2013年度 Webアプリ講義 PDF
CloudSpiral 2014年度 Webアプリ講義(1日目) PPTX
AWS & Google Cloudを使ったシステム開発/技術選定のはなし PDF
CloudSpiral 2014年度 Webアプリ講義(2日目) PPTX
PDF
CloudSpiral 2014年度 ビッグデータ講義 What's hot
PPTX
PPTX
【検証してみた】いま話題のVMware on IBM Cloud SoftLayer 配布版 PDF
ミッション : メガクラウドを安全にアップデートせよ! PDF
AWS SUMMIT TOKYO 2012 - BASCULE SESSION PDF
リクルートの利用事例から考える AWSの各サービスとセキュリティ PDF
5G時代のアプリケーション開発とは - 5G+MECを活用した低遅延アプリの実現へ PDF
GCPで実現するクラウドネイティブアプリケーション PDF
hbstudy#88 5G+MEC時代のシステム設計 PDF
PDF
PPTX
オートモーティブ領域における 位置情報関連アルゴリズムあれこれ PDF
[AWS DevDay] Cognito / Amplify で加速するエンタープライズのアプリケーション開発 PDF
Building a Flutter Development Environment with VSCode and Useful Extensions PDF
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~ PDF
第14回八子クラウド座談会資料 当日メモ付き 20141005 PDF
DevOpsに求められる様々な技術とその連携の学習方法 PPTX
クラウドネイティブが行なういまどきWebサービス開発 PPTX
大規模 Vue アプリケーションの TypeScript 移行 Similar to CloudSpiral 2013年度 UML講義 2日目
PDF
PBLのためのScrumとチケット駆動開発の融合 ~Scrum+PBL+TiDD~ PDF
PDF
要求モデル/BDD 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第43回】 PDF
PDF
UXD代表的10手法のご紹介 調査~仮説立案~設計~検証のアプローチ PDF
PDF
CloudSpiralの振り返りと今後~反転授業とポートフォリオ~ PDF
rePiT2015_アジャイルソフトウェア開発教育のためのチケットシステムを用いたプロジェクト定量評価手法 PDF
Immutable Infrastructureを利用したソフトウェア工学教育のためのサーバ運用手法の検討 PDF
実装(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第30回】 PDF
設計/コンポーネント設計(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第20回】 PDF
設計/UX/UI 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第29回】 PDF
設計/原理 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第28回】 PDF
ケーススタディ 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第40回】 PDF
分析/イベント駆動 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第17回】 PDF
クラウドアプリケーションのための オブジェクト指向分析設計講座 (1) PDF
分析/コンポーネント分析 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第16回】 PDF
設計/ドメイン設計(1) 【クラウドアプリケーションのためのオブジェクト指向分析設計講座 第23回】 PDF
行動計量シンポジウム20140321 http://lab.synergy-marketing.co.jp/activity/bsj_98th PDF
AJ2010_ws4B_emzero弟子入りゲーム CloudSpiral 2013年度 UML講義 2日目
- 1.
- 2.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
復習:ICONIXプロセスの流れ*
動的
*ユースケース駆動開発実践ガイド
2日目(来週)
夏合宿
Test 2
Test 1
紙芝居
ユースケース図
シーケンス図
1日目
(今日)
テスト計画
ロバストネス図
静的
ドメインモデル
ドメインモデル
(更新済)
分野・地域を越えた実践的情報教育協働ネットワーク
クラス図
© Cloud Spiral partners 2013
ソースコード
テストコード
2013/5/24
2
- 3.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
前回の復習
紙芝居
プロジェクト内でのwhatの共通認識形成
非UML,やり方は様々
ユースケース図
Whatを一定の粒度で整理する
ドメインモデル図
システム内で扱う「モノ」を整理する
用語集
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
3
- 4.
- 5.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
5
- 6.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
6
- 7.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
7
- 8.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
8
- 9.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
9
- 10.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ユースケース図
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
10
- 11.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ユースケース図
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
11
- 12.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
(参考) ユースケース図
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
12
- 13.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
(参考) ユースケース図
演習題材
説明題材
総合
演習題材
宿題
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
13
- 14.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
(参考) ドメインモデル図
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
14
- 15.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ICONIX 流れの確認
動的
Test 2
Test 1
紙芝居
ユースケース図
シーケンス図
テスト計画
ロバストネス図
静的
ドメインモデル
ドメインモデル
(更新済)
分野・地域を越えた実践的情報教育協働ネットワーク
クラス図
© Cloud Spiral partners 2013
ソースコード
テストコード
2013/5/24
15
- 16.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ユースケース記述
目的:各ユースケースの具体化・詳細化
ユーザとシステムの相互作用を記述する
ユースケース記述
ユースケース図
ログインする
一般ユーザ
分野・地域を越えた実践的情報教育協働ネットワーク
UC:ログインする
【基本コース】
・ユーザはログインリンクをクリックする.
・システムはログインページを表示する.
・ユーザはユーザIDとパスワードを入力し…
【代替コース】
ユーザIDが間違っている場合:
・システムは…
© Cloud Spiral partners 2013
2013/5/24
16
- 17.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
2つのシナリオ
【基本コース】
正常系のシナリオ
単一
【代替コース】
異常系・分岐系のシナリオ
複数
UC:ログインする
【基本コース】
・ ユーザはログインリンクをクリックする.
・ システムはログインページを表示する.
・ ユーザはユーザIDとパスワードを入力し…
…
【代替コース】
ユーザIDが間違っている場合:
・ システムはエラーメッセージを表示し,直前
のページを表示する
パスワードが間違っている場合:
・ システムは…
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
17
- 18.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
① ログインページ
例:「ログインする」のUC記述
cspiral2013
******
UC:ログインする
ログイン
UC名
画面操作
画面表示
入力
ログイン処理
画面表示
【基本コース】
• ユーザは任意のページからログインリンクをクリックする.
• システムはログインページを表示する.
• ユーザはユーザIDとパスワードを入力し,ログインボタンをクリックする.
• システムはアカウントリストから指定のユーザIDが存在するかを確認し,
一般ユーザアカウントを取り出す.
• システムは入力パスワードと一般ユーザアカウントのパスワードの一致を
確認する.
• システムは歓迎メッセージとともに,直前のページを表示する.
【代替コース】
ユーザIDが正しくない場合:
• システムは「ユーザ名またはパスワード」が間違っていることを示すメッ
セージとともに,直前のページを表示する.
パスワードが正しくない場合:
• システムは「ユーザ名またはパスワード」が間違っていることを示すメッ
セージとともに,直前のページを表示する.
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
18
- 19.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
UC記述作成時のポイント
SVOで記述する
「ユーザは~を~する」 「システムは~を~する」
「ユーザは~を~し,~を~する」
ユーザとシステムの対話を具体的に書く
ただしアルゴリズムの詳細を書かない
ドメインモデル(用語集)の言葉を使う
代替コースをよく考える
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
19
- 20.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
演習:UC記述の作成
20m
UC記述を作成してください
アカウント登録
ページ
題材:UC 「アカウントを登録する」
基本コース:
代替コース:
cspiral2013
******
******
UC「ログインする」
ユーザは任意のペー
ジからログインリンク
をクリックする
ユーザIDが間違っている場合
システムはログイン
ページを表示する
…
分野・地域を越えた実践的情報教育協働ネットワーク
登録
ユーザは「ユーザID
が間違っている」メッ
セージを表示する
…
パスワードが
間違っている場合
…
© Cloud Spiral partners 2013
2013/5/24
20
- 21.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ICONIX 流れの確認
動的
Test 2
Test 1
紙芝居
ユースケース図
シーケンス図
テスト計画
ロバストネス図
静的
ドメインモデル
ドメインモデル
(更新済)
分野・地域を越えた実践的情報教育協働ネットワーク
クラス図
© Cloud Spiral partners 2013
ソースコード
テストコード
2013/5/24
21
- 22.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ロバストネス図
目的:UC記述の洗練
UC記述を可視化,分析しその妥当性を確認する
WhatとHowの橋渡し
ロバストネス図
UC記述
UC:ログインする
【基本コース】
・ユーザは…
・システムは…
【代替コース】
~が間違っている場合:
・システムは…
ログインページを表示する
一般ユーザ
マスタ
アカウントリスト
ログイン
ページ
ユーザIDが
存在するか?
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
22
- 23.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
記法
ステレオタイプ
バウンダリ: システム内部と外部の境界=画面
エンティティ: ドメインモデル上のモノ=オブジェクト
コントローラ: 上2つの接着剤
ステレオタイプ間の関係
必ずコントローラと接続する
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
23
- 24.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のロバストネス図
ログインを
クリック
任意のページ ログインページを
表示する
マスタ
アカウントリスト
ユーザ
アカウント
ユーザIDとパスワードを
入力しログインを
クリック
一般ユーザ
ログイン
ページ
はい
いいえ
ユーザIDが
存在するか?
いいえ
「ユーザ名またはパスワードが無効」
メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
ユーザアカウントを
取得する
はい
パスワードが
一致するか?
歓迎メッセージを
表示する
© Cloud Spiral partners 2013
2013/5/24
24
- 25.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のロバストネス図
ログインを
クリック
任意のページ ログインページを
表示する
マスタ
アカウントリスト
ユーザ
アカウント
ユーザIDとパスワードを
入力しログインを
クリック
一般ユーザ
ログイン
ページ
はい
いいえ
ユーザIDが
存在するか?
いいえ
「ユーザ名またはパスワードが無効」
メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
基本コース
ユーザアカウントを
取得する
はい
パスワードが
一致するか?
歓迎メッセージを
表示する
© Cloud Spiral partners 2013
2013/5/24
25
- 26.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のロバストネス図
ログインを
クリック
任意のページ ログインページを
表示する
マスタ
アカウントリスト
ユーザ
アカウント
ユーザIDとパスワードを
入力しログインを
クリック
一般ユーザ
ログイン
ページ
はい
いいえ
ユーザIDが
存在するか?
いいえ
「ユーザ名またはパスワードが無効」
メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
ユーザアカウントを
取得する
はい
パスワードが
一致するか?
代替コース
歓迎メッセージを
表示する
© Cloud Spiral partners 2013
2013/5/24
26
- 27.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のロバストネス図
ログインを
クリック
任意のページ ログインページを
表示する
マスタ
アカウントリスト
ユーザ
アカウント
ユーザIDとパスワードを
入力しログインを
クリック
一般ユーザ
ログイン
ページ
はい
いいえ
ユーザIDが
存在するか?
いいえ
「ユーザ名またはパスワードが無効」
メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
ユーザアカウントを
取得する
処理フロー
はい
パスワードが
一致するか?
歓迎メッセージを
表示する
© Cloud Spiral partners 2013
2013/5/24
27
- 28.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のロバストネス図
ログインを
クリック
任意のページ ログインページを
表示する
マスタ
アカウントリスト
ユーザ
アカウント
ユーザIDとパスワードを
入力しログインを
クリック
一般ユーザ
ログイン
ページ
はい
画面
生成・遷移
いいえ
ユーザIDが
存在するか?
いいえ
「ユーザ名またはパスワードが無効」
メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
ユーザアカウントを
取得する
はい
パスワードが
一致するか?
歓迎メッセージを
表示する
© Cloud Spiral partners 2013
2013/5/24
28
- 29.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のロバストネス図
ログインを
クリック
任意のページ ログインページを
表示する
ユーザの
アクション
マスタ
アカウントリスト
ユーザ
アカウント
ユーザIDとパスワードを
入力しログインを
クリック
一般ユーザ
ログイン
ページ
はい
いいえ
ユーザIDが
存在するか?
いいえ
「ユーザ名またはパスワードが無効」
メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
ユーザアカウントを
取得する
はい
パスワードが
一致するか?
歓迎メッセージを
表示する
© Cloud Spiral partners 2013
2013/5/24
29
- 30.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のロバストネス図
ログインを
クリック
任意のページ ログインページを
表示する
マスタ
アカウントリスト
ユーザ
アカウント
ユーザIDとパスワードを
入力しログインを
クリック
一般ユーザ
ログイン
ページ
はい
いいえ
利用
ユーザIDが
存在するか?
いいえ
「ユーザ名またはパスワードが無効」
メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
ユーザアカウントを
取得する
はい
パスワードが
一致するか?
歓迎メッセージを
表示する
© Cloud Spiral partners 2013
2013/5/24
30
- 31.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ロバストネス図作成のポイント
まずUC記述をそのまま貼り付ける
UC記述をそのまま図に書き直す
基本コース・代替コースの両方を書き込む
UC記述も同時に修正する
ここが目的
矢印の意味を考えすぎない
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
31
- 32.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
演習:ロバストネス図の作成
50m
ロバストネス図を作成してください
題材:UC 「アカウントを登録する」
コントローラ:
バウンダリ・エンティティ:
ログインページ
を表示する
ログインペー
ジ
マスタアカウ
ントリスト
ユーザIDとパスワードを
入力し「ログイン」を
クリック
ユーザIDが
存在するか?
いいえ
分野・地域を越えた実践的情報教育協働ネットワーク
はい
ユーザアカウン
トを取得する
© Cloud Spiral partners 2013
2013/5/24
32
- 33.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ICONIX 流れの確認
動的
Test 2
Test 1
紙芝居
ユースケース図
シーケンス図
テスト計画
ロバストネス図
静的
ドメインモデル
ドメインモデル
(更新済)
分野・地域を越えた実践的情報教育協働ネットワーク
クラス図
© Cloud Spiral partners 2013
ソースコード
テストコード
2013/5/24
33
- 34.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
シーケンス図
目的:クラスの責務割り当て
クラス名
属性
目的は処理フローの記述ではない
クラスの責務=属性と振る舞い
振る舞い
シーケンス図
ロバストネス図
一般ユーザ
ログインページを表示する
自動化
可能
一般ユーザ
ログイン
ページ
ユーザIDが
存在するか?
分野・地域を越えた実践的情報教育協働ネットワーク
ログインページ
ログインボタンを
押下
マスタアカウントリスト
指定のユーザIDが
存在するか
ユーザアカウントの
取得
© Cloud Spiral partners 2013
2013/5/24
34
- 35.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のシーケンス図
一般ユーザ
ログインページ
ユーザIDとパスワードを
入力しログインボタンを
押下
マスタアカウントリスト
ユーザアカウント
指定のユーザIDが
存在するか
ユーザアカウントの
取得
歓迎メッセージを
表示する
パスワードが一致するか
「ユーザ名またはパスワード
が無効」メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
35
- 36.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のシーケンス図
一般ユーザ
ログインページ
ユーザIDとパスワードを
入力しログインボタンを
押下
マスタアカウントリスト
ユーザアカウント
ロバストネス中のバウンダリとエンティティ
指定のユーザIDが
存在するか
ユーザアカウントの
取得
歓迎メッセージを
表示する
パスワードが一致するか
「ユーザ名またはパスワード
が無効」メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
36
- 37.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のシーケンス図
一般ユーザ
ログインページ
ユーザIDとパスワードを
入力しログインボタンを
押下
マスタアカウントリスト
ユーザアカウント
ロバストネス中のバウンダリとエンティティ
指定のユーザIDが
存在するか
コントローラ
ユーザアカウントの
取得
歓迎メッセージを
表示する
パスワードが一致するか
「ユーザ名またはパスワード
が無効」メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
37
- 38.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
例:UC「ログインする」のシーケンス図
一般ユーザ
ログインページ
基本コース
ユーザIDとパスワードを
入力しログインボタンを
押下
ユーザアカウント
ロバストネス中のバウンダリとエンティティ
指定のユーザIDが
存在するか
コントローラ
ユーザアカウントの
取得
歓迎メッセージを
表示する
代替コース
マスタアカウントリスト
パスワードが一致するか
「ユーザ名またはパスワード
が無効」メッセージを表示する
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
38
- 39.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
シーケンス図作成のポイント
まずロバストネス図をそのまま貼り付ける
ロバストネス図のバウンダリとエンティティを書き込む
コントローラを矢印に書き換える
活性区間,返り値,分岐を書かない
あるいは無視する
ログインページ
マスタアカウントリスト
ユーザアカウント
アカウントの取得()
生成
アカウント
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
39
- 40.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
クラス図
クラスの責務(属性と振る舞い)を構造化する
クラス図
クラス名
シーケンス図
属性
振る舞い
一般ユーザ ログインページ
ボタン押下
マスタアカウントリスト
- アカウント: List
+ ユーザIDが存在するか(String): boolean
+ アカウントを取得する(String): Account
マスタアカウントリスト
指定のユーザIDが
存在するか
アカウントの
取得
自動化
可能
アカウント
- ユーザID: String
- パスワード: String
+ パスワードが正しいか(String): boolean
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
40
- 41.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
クラス図の作成
シーケンス図からほぼ自動的に作成できる
エンティティをクラスに
矢印を振る舞いに
クラス図
マスタアカウントリスト
シーケンス図
アカウント: List
ユーザIDが存在するか(String): boolean
アカウントを取得する(String): Account
一般ユーザ ログインページ マスタアカウントリスト
ボタン押下
指定のユーザIDが
存在するか
アカウントの
取得
アカウント
ユーザID: String
パスワード: String
パスワードが正しいか(String): boolean
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
41
- 42.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
演習:クラス図・シーケンス図の作成
40m
2つの図を作成してください
シーケンス図
一般ユーザ
ログインページ
クラス図
アカウントリスト
マスタアカウントリスト
-アカウント: List
ボタン押下
指定のユーザID
が存在するか
分野・地域を越えた実践的情報教育協働ネットワーク
+ ユーザIDが存在するか(String):boolean
+ アカウントを取得(String):Account
© Cloud Spiral partners 2013
2013/5/24
42
- 43.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
さらなるステップ
責務の割り当てを再検討する
UC「アカウントを登録する」の例
一般ユーザ
アカウント登録ページ
ユーザアカウント
ユーザIDとパスワード,
確認用パスワードを入力し
登録ボタンを押下
2つのパスワードが
一致しているか
ユーザIDの書式が
正しいか
バウンダリ(画面)の
責務として不適切
パスワードの書式が
正しいか
画面にやらせすぎ
生成
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
43
- 44.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
さらなるステップ
対処1:ドメインオブジェクトに責務を割り当てる
Domain Model
一般ユーザ
アカウント登録ページ
ユーザアカウント
ユーザIDとパスワード,
確認用パスワードを入力し
登録ボタンを押下
生成(uid, pass1, pass2)
2つのパスワードが
一致しているか
ユーザIDの書式が
正しいか
パスワードの書式が
正しいか
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
44
- 45.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
さらなるステップ
対処2:専用コントローラに責務を割り当てる
Transaction Script
一般ユーザ
アカウント登録ページ アカウント登録
ユーザアカウント
コントローラ
ユーザIDとパスワード,
確認用パスワードを入力し
登録ボタンを押下
実行
2つのパスワードが
一致しているか
ユーザIDの書式が
正しいか
パスワードの書式が
正しいか
生成
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
45
- 46.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
その後の流れ
詳細設計レビューの実施
責務を割り当ての再検討
使用フレームワークやパターンとの兼ね合い(Spring, Seaser, Struts, …)
全ての機能要求が満たされているか確認
…
テスト計画の作成
クラス図からコードのひな形生成
実装,レビュー,テスト,…
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
46
- 47.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
ICONIX おさらい
動的
Test 2
Test 1
紙芝居
ユースケース図
シーケンス図
テスト計画
ロバストネス図
静的
ドメインモデル
ドメインモデル
(更新済)
分野・地域を越えた実践的情報教育協働ネットワーク
クラス図
© Cloud Spiral partners 2013
ソースコード
テストコード
2013/5/24
47
- 48.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
総合演習
120m
UC記述~クラス図までの作成を実践してください
題材:UC「チケットを予約する」
動的
Test 2
Test 1
紙芝居
ユースケース図
シーケンス図
テスト計画
ロバストネス図
静的
ドメインモデル
分野・地域を越えた実践的情報教育協働ネットワーク
ドメインモデル
(更新済)
クラス図
ソースコード
テストコード
© Cloud Spiral partners 2013
2013/5/24
48
- 49.
- 50.
- 51.
Cloud Specialist ProgramInitiative for Reality-based Advanced Learning
参考図書
『はじめて学ぶUML』
『ユースケース駆動開発実践ガイド』
『ユースケース入門―ユーザマニュアルからプログラムを作る』
『オブジェクト指向でなぜつくるのか』
OMGによるUMLの仕様書
http://www.uml.org/
分野・地域を越えた実践的情報教育協働ネットワーク
© Cloud Spiral partners 2013
2013/5/24
51