47070 オブジェクト指向モデリング [4] 2001年10月23日.

Slides:



Advertisements
Similar presentations
All Rights Reserved Copyright © 2004, Takashi Kobayashi 1 ロバストネス分析の演習問題 <問題1> 次の文をよんで問いに答えよ。 顧客は、 ATM により自分の口座から預金を払い出す。 顧客は、 ATM にキャッシュカードを挿入し、個人認証を行う。
Advertisements

CMU2005 海外エンジニアリングワークショップ参加報告書 1 「真の要求を見極めろ!」: teamB 要求定義をどう捉えるか ● 要求定義とは何か? 製品には、顧客の望むことを正しく反映させる必要がある。 そのために必要なものが要求仕様である。 すなわち、要求仕様とは、顧客と製品を結ぶものであり、これを作ることが要求定義である。
Chapter1 UML の概要とオブジェクト指向の基本概念 1 情報工学専攻 MFM10004 奥平 健太.
1 農学部図書館 図書館 農学部分館 利用案内 2011. 2 目次 1. 茨城大学図書館につい て 2. 農学部分館利用案内 3. 館内ツアー 農学部図書館.
メタモデル記述を用いた成果物間の依存関係追跡手法
東京工科大学 コンピュータサイエンス学部 亀田弘之
4 相互作用図 後半 FM13001 青野大樹.
相互作用図 FM11010 田中健太.
ソフトウェア工学特論III 第10回 その他の図 情報通信工学専攻 GM11013 堀江 真史
アルゴリズムとプログラミング (Algorithms and Programming)
東京工科大学 コンピュータサイエンス 亀田弘之
オブジェクト指向プログラミング(4) 静的分析(2)
OJT研修 「テスト実施、テスト設計の技術習得」 日時: 8月22日(月)  場所: 本社5階.
ソフトウェア工学特論Ⅲ ユースケース図 後半
ユースケース図 FM12012 比嘉久登.
シナリオ(インターネット入試の「選抜」)
練習問題4.
CHAPTER1 UMLとオブジェクト指向の基本概念(2)
3-3 クラス図の関係その2.
オブジェクト指向を使った設計: ソフトウェア開発プロセス
UMLの概要と オブジェクト指向の 基本概念
47070 オブジェクト指向モデリング [11] 2002年1月8日.
ソフトウェア設計における意思決定ガイドラインとしてのデザインパターンのモデル
セマンティクスを利用した 図書検索システム
変数のスコープの設計判断能力 を育成するプログラミング教育
Chapter 2 ユースケース図 FM12011 バユウユウ 山内研究室
ユースケース図2-4~ FM11012 中島拓也.
リファクタリングのための 変更波及解析を利用した テスト支援ツールの提案
UML入門 UML PRESS vol.1 より 時松誠治 2003年5月19日.
ユースケース オブジェクト指向の要求分析のためのモデル。 スウェーデンのイヴァー・ヤコブソンが1990年代前半に開発。
UMLとは           032234 田邊祐司.
47070 オブジェクト指向モデリング [12] 2002年1月15日.
47070 オブジェクト指向モデリング [13] 2003年 1月21日.
オブジェクト指向モデリング [3] 2003年10月14日.
47070 オブジェクト指向モデリング [1] 2001年10月2日.
シミュレーション論 Ⅱ 第15回 まとめ.
47070 オブジェクト指向モデリング [1] 2002年10月1日.
Chapter7 その他の図 FM13010  須崎研 村上 太一.
その他の図 Chapter 7.
UMLの概要とオブジ工クト指向の基本概念 第2回
47070 オブジェクト指向モデリング [7] 2001年11月 12日.
暗黙的に型付けされる構造体の Java言語への導入
3.資料(情報)の探し方 図書館キャラクター 「わらづと君」
3.資料(情報)の探し方 図書館キャラクター 「わらづと君」
社会シミュレーションのための モデル作成環境
オブジェクト指向モデリング [2] 2003年10月 7日.
UML関係のTIPS 2008年5月26日 2010年5月16日改訂 海谷 治彦.
UMLモデルを対象とした リファクタリング候補検出の試み
All Rights Reserved, Copyright © 2004, Kobayashi
シナリオのアニメーション表示による 妥当性確認支援
11.3 酒屋の在庫問題(8) ユースケース 仕入販売支援システム 11. モデリング 受注する 入庫を記録する 在庫を引き当てる 受付係
47070 オブジェクト指向モデリング [3] 2001年10月16日.
図書館ガイダンス ー院生編ー.
シナリオを用いたレビュー手法PBRの追証実験 - UMLで記述された設計仕様書を対象として -
1-3 UMLの図(ダイアグラム) コンポーネント図 システムの物理的な構成を表現 ソフトウェアコンポーネントの依存性を表現
UMLの概要とオブジェクト指向の基本概念
オブジェクトの協調動作を用いた オブジェクト指向プログラム実行履歴分割手法
ソフトウェア工学 知能情報学部 新田直也.
オブジェクト指向言語論 第十二回 知能情報学部 新田直也.
All Rights Reserved, Copyright © 2004, Kobayashi
47070 オブジェクト指向モデリング [8] 2002年12月 3日.
担当 兵庫県立大学大学院 応用情報科学研究科 神戸商科大学 商経学部管理化学科 教授 有馬 昌宏
オブジェクト指向モデリング [9] 2003年12月2日.
データ中心システム設計方法論“DATARUN” 
コンパイラ 2012年10月11日
47070 オブジェクト指向モデリング [3] 2001年10月15日.
ソフトウェア工学 知能情報学部 新田直也.
より分かりやすい ユースケースモデルを作る
47070 オブジェクト指向モデリング [10] 2001年12月18日.
オブジェクト指向モデリング [13] 2004年1月20日.
Presentation transcript:

47070 オブジェクト指向モデリング [4] 2001年10月23日

前回 オブジェクトの概念とUML 3.1 オブジェクトとは何か 3.2 オブジェクトは良いシステム作りに役立つか 3.3 継承 オブジェクト指向モデリング 前回 オブジェクトの概念とUML 3.1 オブジェクトとは何か 3.2 オブジェクトは良いシステム作りに役立つか 3.3 継承 3.4 ポリモーフィズムと動的束縛 3.5 UML

3.1 オブジェクトとは何か オブジェクト指向パラダイム オブジェクト オブジェクトをまとめる 3.オブジェクトの概念 3.1 オブジェクトとは何か オブジェクト指向パラダイム 世界は「オブジェクト」の相互作用で成立しているという想定に基づいてソフトウェアを作成する オブジェクト メッセージを受け取って反応する(behavior) 反応の結果はオブジェクトの内部状態(state)に依存する 何らかの属性値を持つ 個々のオブジェクトは区別される(identity) オブジェクトをまとめる クラス 型 resetTimeTo(newTime) reportTime() myClock resetTimeTo(07:43)

第4回 初歩のケーススタディ 4.1 図書館問題 4.2 ユースケース 4.3 ソフトウェアプロセス 4.4 型の認識 オブジェクト指向モデリング 第4回 初歩のケーススタディ 4.1 図書館問題 4.2 ユースケース 4.3 ソフトウェアプロセス 4.4 型の認識 4.5 振る舞いのモデル 4.6 概念モデルから実装モデルへ

4.1 図書館問題 最初の要求 要求は明確に語られない 大学の図書館の情報システムを開発する そもそも「要求」が一つひとつ取り出されていない 初歩のケーススタディ 4.1 図書館問題 最初の要求 大学の図書館の情報システムを開発する 旧システム(1960年代)がある 索引カードによる閲覧サービス 蔵書の管理 対話型のシステムにする 要求は明確に語られない 要求の優先順位 要求間の矛盾 現行システムとあるべきシステムが区別されない ソフトウェアの仕様と情報システムの仕様は別 システム開発の窓口担当者の能力 そもそも「要求」が一つひとつ取り出されていない その「要求」が妥当なのかどうかもわからない

4.1 図書館問題 人間活動システムとしての図書館システム 基本定義(Root Definition) CATWOE分析 基本定義の改訂 初歩のケーススタディ 4.1 図書館問題 人間活動システムとしての図書館システム 基本定義(Root Definition) 「利用者に保有図書の貸出を行うシステム」 CATWOE分析 Customer:利用者 Agent:図書館職員 Transformation:図書を貸す Weltanschauung:目的にふさわしい図書を貸し出すことで,効率的な教育および研究を促す Owner:大学 Environment:大学内の図書館および他大学の図書館 基本定義の改訂 「大学が保有する図書を利用者に貸出して,教育および研究を促進するシステム」 課題:目的にふさわしい図書を取りそろえること(他大学との協力も) 課題:それによってどの程度効率化したかを計測する方法を考えること

4.1 図書館問題 Accommodation もう一度CATWOE分析 基本定義の再改訂 初歩のケーススタディ 4.1 図書館問題 Accommodation もう一度CATWOE分析 Customer:利用者 Agent:図書館職員 Transformation:図書を貸す Weltanschauung:図書館職員の作業量を減らし,コストを削減する Owner:大学 Environment:大学内の図書館および他大学の図書館 基本定義の再改訂 「大学が保有する図書を利用者に貸出して,返却までを追跡するシステム」 課題:タイミング良く貸し出すためには? 課題:確実に返却できるためには?

4.1 図書館問題 基本定義 システムが備えるべき機能は, 「大学が保有する図書を利用者に貸出して,返却までを追跡するシステム」 本と雑誌 初歩のケーススタディ 4.1 図書館問題 基本定義 「大学が保有する図書を利用者に貸出して,返却までを追跡するシステム」 システムが備えるべき機能は, 本と雑誌 貸出し 検索  この図書館は本と雑誌を所蔵している。1つの著書(タイトル)に対してその本が何冊かある。本によっては短期貸出しのみのものもある。その他の本は図書館の会員ならば3週間までの貸出しが可能である。雑誌は職員の会員だけが借りられる。図書館の会員は通常6冊までを一度に借りられるが,職員の会員は一度に12冊まで借りられる。新刊本と雑誌は定期的に届き,古くなった本は廃棄されることもある。当年分の雑誌は,年度の終わりに業者に委託して1巻にまとめられる。  本や雑誌がいつ借りられ,いつ返却されたかを記録するのは,現システムがすでに行っていることなので,これは必須である。新システムが行うことは,本の返却期限が過ぎてしまったときに督促状を作ることである。また将来的には,もしその本が予約されていなければ,利用者が貸出しを延長できるようにする要求も出てくるだろう。  システムは,ユーザがキーワードや著者名などによって本を検索したり,本が貸出し可能かを確認したり,貸出し可能でなければその本を予約できるようにする必要がある。図書館の中で本の検索は誰でもできるものとする。 演習問題17

4.2 ユースケース ユーザと仕事 成功ケース アクタ ユースケース ある役割を持ったシステムの使用者 役割の名前を持つ 初歩のケーススタディ 4.2 ユースケース ユーザと仕事 アクタ ある役割を持ったシステムの使用者 役割の名前を持つ ユースケース システムの助けを借りてアクタが実行する仕事 成功ケース 本の借り手 本を返す 本を借りる 何のために。何がうれしいのか。 それは課題を解決するのか。 本を借りる  (1) アクタ 「本の借り手」は本を提示する。 (2) システムは,借りようとする者が図書館の会員であること,およびその人の借り   ている本がすでに貸出し可能な冊数の上限に達していないかを確認する。 (3) 確認されれば,システムはこの本が借りられていることを記録する。 (4) 確認されなければ,貸出しを拒否する。 備考  貸出し可能な冊数の上限は,職員の場合は12冊,職員以外は6冊。

4.2 ユースケース ユースケースのポイント ユーザインタフェース システムの外部を述べる ユースケース図とユースケース記述 要求を書く 初歩のケーススタディ 4.2 ユースケース ユースケースのポイント システムの外部を述べる ユースケース図とユースケース記述 名称: アクタ: 目的: 事前条件: 基本系列: 事後条件: 代替系列: 備考: 要求を書く 変換 アクタの目的とシステムの目的 「でっち上げない」と「漏れをなくす」 ユーザインタフェース 本の借り手 本を返す 本を借りる

4.2 ユースケース ユースケース記述 「本を返却する」のユースケース記述を書いてください。 初歩のケーススタディ 名称:本を返却する アクタ: 目的: 事前条件:本の借り手がその本を借りている。 基本系列:  ①アクタはシステムに返却の旨を告げる。  ②システムは本の借り手,返却しようとする本の識別を要求する。  ③アクタはそれらの識別を提示する。  ④システムは本が当日返却されたことを記録する。 事後条件:その本が返却されている。 代替系列:  A.基本系列④で,本の借り手が妥当でない場合,… 備考:  本の識別には,本に付けられたバーコードを使う。  返却された現物の本は,...

4.3 ソフトウェアプロセス 反復プロセス 少しずつ建て増ししていく 範囲(スコープ)を決める アーキテクチャ 優先順位づけ リスク最小化 初歩のケーススタディ 4.3 ソフトウェアプロセス 反復プロセス 少しずつ建て増ししていく 範囲(スコープ)を決める アーキテクチャ 優先順位づけ リスク最小化 演習問題19 方向づけ 遂行 構築 移行 分析 設計 制作 検査

4.4 型(クラス)の認識 ドメイン 名詞抽出法 もの-こと 型間の構造 UoD 注目しているアプリケーションの領域 型の認識 名詞・名詞句 初歩のケーススタディ 4.4 型(クラス)の認識 UoD ドメイン 注目しているアプリケーションの領域 型の認識 名詞抽出法 名詞・名詞句 候補の選択 責任(インタフェース)の割付・・・・・CRCカード もの-こと 型間の構造 型図 型と関連 ロールと多重度 ナビゲーション可能性,可視性 用語集(データ辞書) ユースケース記述 インタビュー記録など から

本が借りられたことを誰が知っているべきか 初歩のケーススタディ 4.4 型(クラス)の認識 概念 本 著書(書誌情報) 会員  : 概念の名前 初期モデル モデルの改訂 冗長性のチェック 似た概念の整理 責任の配置 結合度 凝集度 よい抽象 拡張する  本が借りられたことを誰が知っているべきか 著書 会員 1..* 1 0..* 0..1 職員の会員 の印刷物である 借りる/返却する 本 雑誌

4.4 型(クラス)の認識 改訂版(1) 初歩のケーススタディ 著書 会員 本 職員の会員 雑誌 の印刷物である 借りる/返却する 1..* 会員 借りる/返却する 本 0..1 0..* 職員の会員 借りる/返却する 雑誌 0..1 0..*

4.4 型(クラス)の認識 改訂版(2) 初歩のケーススタディ 著書 会員 本 職員の会員 雑誌 制約: 雑誌は職員の会 員だけが借りられる 1 1 の印刷物である 1..* 制約: 会員 借りる/返却する 本  雑誌は職員の会 0..1 0..1 0..* 0..* 員だけが借りられる 職員の会員 雑誌

4.4 型(クラス)の認識 拡張版 他のユースケース 「本を予約する」 初歩のケーススタディ 著書 会員 本 職員の会員 雑誌 予約する 0..* 1 予約する の印刷物である 0..1 1..* 会員 借りる/返却する 本 0..1 0..* 職員の会員 雑誌

4.5 振る舞いのモデル 相互作用図 シーケンス図 コラボレーション図 オブジェクト間 メッセージ 順序(制御構造) アクティベーション 初歩のケーススタディ 4.5 振る舞いのモデル 相互作用図 シーケンス図 オブジェクト間 メッセージ 順序(制御構造) アクティベーション コラボレーション図

4.5 振る舞いのモデル 状態図 ステートチャート アクティビティ図 オブジェクトの状態 事象 初歩のケーススタディ 「著書」の状態 貸出不可 貸出可 returned() borrowed()[最後の本] borrowed()[最後の本でない] 貸出を申し出る 貸出を記録する 本を帯出する

4.6 概念モデルから実装モデルへ 概念モデル 実装モデル 重要な型と構造 重要な属性と操作 重要なインタフェース 実装の都合 初歩のケーススタディ 4.6 概念モデルから実装モデルへ 概念モデル 重要な型と構造 重要な属性と操作 重要なインタフェース 実装モデル 実装の都合 クラス,データ,メソッド オブジェクトの生成と消滅 コレクションの表現 ナビゲーションの方法 ユーザインタフェース 永続化