1 / 92

基礎情報技術 ー第 3 日目ー

基礎情報技術 ー第 3 日目ー. 平成 26 年 4 月 25 日(金) 担当:亀田. ウォームアップ問題. “オブジェクト指向”という言葉を見ると何が思い浮かびますか? 思い浮かんだものを順に5つ書き下しなさい。 _____________ _____________ _____________ _____________ _____________. それでは始めましょう. これまでのポイント ( 確認 ). IT のプロ になるためには何が必要か? これを考えるための素材をお話しました。. ちょっとしつこくて 御免なさい!.

lani
Download Presentation

基礎情報技術 ー第 3 日目ー

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 基礎情報技術ー第3日目ー 平成26年4月25日(金) 担当:亀田

  2. ウォームアップ問題 • “オブジェクト指向”という言葉を見ると何が思い浮かびますか? 思い浮かんだものを順に5つ書き下しなさい。 • _____________ • _____________ • _____________ • _____________ • _____________

  3. それでは始めましょう

  4. これまでのポイント(確認) • ITのプロになるためには何が必要か?これを考えるための素材をお話しました。 ちょっとしつこくて 御免なさい!

  5. これまでのポイント(確認2) • SEの仕事はプログラミングだけではない • ソフトウェアのライフサイクル • オブジェクト指向 • モデリング言語 UML など

  6. 今日の内容 • UMLの概説 • Javaプログラミング など • 今日の課題(課題番号No1)

  7. UMLの歴史 • (前回資料参照) • とにかく、いいプログラムはいい設計が大切、という観点から、さまざまな開発手法が考えられてきた。

  8. それでわかったこと • 要求仕様の明確化 • それに基づくきちんとした設計 • プラットフォームに依存しない「機能やサービス」のレベル • プラットフォームに依存する「実装」レベル • 設計にきちんと基づく「実装」 • 要求仕様に対応した検証  が大切

  9. これらのレベルごとに、当該システムをモデル化することが大切。これらのレベルごとに、当該システムをモデル化することが大切。 • その際、モデルを記述する表現(言語)が必要。  => UMLの登場! UMLはモデル記述のための言語(図で標記)

  10. UML各種ダイアグラムの紹介 • ユースケース図 • クラス図 • その他のUML図

  11. UMLとは(ソフトウェア工学的観点から) • UML(UnifiedModelingLanguage) • システム開発の分野で現在最も注目されているツール(仕様等の記述言語)の1つ。 • システムの構想をビジュアルに表現できる。(visual language) • 誰とでも誤解なく意思疎通できる。(communication tool) 何を作るのかは、明確にしておかなければ…

  12. UMLとは(言語論的観点から) • UMLは言語 の1つ • 言語 • 音声言語 (Spoken Language): • 所謂話し言葉 • 若者語 etc. • 文字言語 (Written Language) : • 書き言葉 • 法律文 etc. • 視覚言語 (Visual Language): • 手話(sign language) • ダイヤグラム(Flowchart, UML etc.) etc.

  13. ちょっと雑談(1) • 言語とは • 思考のための道具 • 知識を記述し蓄えるための道具 • 意思疎通のための道具 上記のことを意識しておくことが大切!

  14. ちょっと雑談(2) UMLも1つの言語 • UMLとは • 思考のための道具 • 知識を記述し蓄えるための道具 • 意思疎通のための道具 通常はこの点のみが強調されている

  15. ちょっと雑談(3) • Syntax v.s. Semantics (統語論 v.s. 意味論) • 表現形式 v.s. 意味内容

  16. ちょっと雑談(4) • Syntax v.s. Semantics (統語論 v.s. 意味論) • 表現形式 v.s. 意味内容 今日はこちらに重点を置く こちらの理解が本質

  17. 参考情報 • 思考と言語について • ヴィゴツキー:“思考と言語,” 柴田義松(訳),新読書社(2001). • 柴田義松:“ヴィゴツキー入門,”寺小屋新書(2006). • 思考と言語研究会(電子情報通信学会)( http://www.ieice.org/~tl/what.html ) • 意味への取り組みについて • Semantic Web(http://www.w3.org/2001/sw/) • Semantic Computing(http://www.instsec.org/) • Web2.0,Web3.0

  18. 推薦図書 • Sterling & Taveter,The Art of Agent-Oriented Modeling,MIT Press (2009).

  19. Contents of the book • Models • Introduction • Concepts • Models • Quality • Agent Programming Platforms and Languages • Viewpoint Framework • Applications • Agent-Oriented Management Systems • Industry-Related Applications • Intelligent Lifestyle Applications • An E-Learning Application

  20. 要求分析の練習 • As_is分析 • 現状業務はどうなっているのか? • 人・モノ・お金・情報などの流れ • 業務手順 • サービスの現状 など • 改善点,問題点の洗い出し • To_be分析 • 理想の業務形態はこれだ!

  21. さて、…

  22. UMLとは • これから作ろうとしているシステム(ソフトウェア)の概念をさまざまな側面から切り出し、表現する図(ダイアグラム)群のこと。作りたいと思っているもの  → 概念  → 仕様  → 実装完成したシステム(ソフトウェア)

  23. ユースケース図 クラス図 オブジェクト図 シーケンス図 ステートマシン図(ステートチャート図) アクティビティ図 コンポーネント図 コミュニケーション図(コラボレーション図) 配置図 合成構成図 タイミング図 相互作用概念図 パッケージ図 UML2.0で使用する図

  24. 各図の概要 • クラス図 • 分析、設計領域の静的な構造を明確化 • オブジェクト図 • 複数のオブジェクトの状態を表現 • パッケージ図 • 複数のパッケージ間の関係を表現 • 合成構造図 • クラスなどの内部構造を表現

  25. 各図の概要(2) • コンポーネント図 • ソフトウェアコンポーネントの構成を表現 • 配置図 • システムのハードウェア構成を表現 • ユースケース図 • 外部から見たときのシステムの機能を表現 • アクティビティ図 • 処理の流れを汎用的に表現

  26. 各図の概要(3) • シーケンス図 • ライフライン相互のメッセージのやり取りを時間の流れに着目して表現 • コミュニケーション図 • ライフライン相互のメッセージのやり取りを、オブジェクトに着目しつつ表現 • 相互作用概念図 • 複数の相互作用の関係を一段上の目線で表現

  27. 各図の概要(4) • タイミング図 • ライフラインの状態変化を時間の経過順に表現 • ステートマシン図 • 時間の経過とともに変化するオブジェクトの状態を表現

  28. 以下、重要なものを取り上げ一つずつ説明します。以下、重要なものを取り上げ一つずつ説明します。

  29. ユースケース図 • 定義: • システムの機能・要件(ユースケース)をユーザ等(アクター )の視点で示した図 • システムの使われ方(要求・機能)を記述するための図 要件(ユースケース)やアクターを具体例で示す。

  30. (参考) ユースケース • ユースケースを図示する方法がユースケース図である。 • ユースケース(システム要求機能)の記述方法は、場合によってはテキストでも良い。 • ユースケースシナリオ • ユースケース記述

  31. ユースケースの参考図書 ・Alistair Cockburn: Writing Effective Use Cases, Addison-Wesley, ISBN 0201702258 (2000) ・ユースケース実践ガイドー効果的なユースケースの書き方:アリスターコーバーン,翔泳社, ISBN 4798101273(2001) 講義では飛ばしました。By KAMEDA

  32. システムの具体例 • 例: • 講習会予約システム • 缶ジュースの自動販売機 • トランプゲーム(BlackJack) • お風呂温度・水量設定システム • スケジュール閲覧システム • チャットシステム

  33. 講習会予約システム

  34. 講習会予約システム タンジブルソフトウェア入門と人工知能特論コースを取ろうかなぁ… • 申込みをしている風景   講習受講希望者 Model: Chiaki KUBOMURA 協力:山野美容芸術短期大学

  35. 講習会予約システム • 事務処理をしている風景 タンジブルソフトウェアは空いているけど、人工知能特論はどうかなぁ… 受講登録事務員 Model: Chiaki KUBOMURA 協力:山野美容芸術短期大学

  36. 講習会予約システム • 要件(要求される機能): • 申込み • キャンセル • 領収書発行 など • アクター: • 受講者 • 経理担当 • 顧客管理システム

  37. 缶ジュースの自動販売機 • 要件: • コイン投入待ち • 金額計算 • 販売可能商品の表示 • 購入希望商品の選定 • 商品の出力 • 釣銭の出力 • アクター: • 購入者

  38. トランプゲーム(BlackJack) • 要件: • カードシャッフル • カード要求 • 持ち札の把握 • 勝敗の判定 • 勝敗結果の表示 • アクター: • プレイヤ

  39. 講習会予約システム(再) • 要件(要求される機能): • 申込み • キャンセル • 領収書発行 など • アクター: • 受講者 • 経理担当 • 顧客管理システム

  40. 講習会予約システムー ユースケース図 ー

  41. 講習会予約システム ユースケース アクター 関連 システム境界

  42. ユースケース図の用語(1) • アクター: • システムと相互作用する利用者や外部システムの役割 • ユースケースを駆動する。 • 人間(利用者)、外部システム、ハードウェア Stickman とも言う

  43. ユースケース図の用語(2) • ユースケース: • システムが提供する機能(振る舞い) • アクターとシステムとの対話をモデル化 • ユースケースにより、システムの用途が網羅 ユースケース名

  44. ユースケース図の用語(3) • 関連: • アクターとユースケースとの関係 • 関係があれば線で結ぶ • システム境界: • システムの外部と内部とを区別する。 関連名 内部 外部

  45. トランプゲームー ユースケース図 ー (練習:各自で描いてみよう!) • アクター:___ • ユースケース:___

  46. クラス図 • とても重要な図です。 • 特に、programmerにとっては。 プログラマにとっては、ソースコードの方も とても大切です。

  47. クラス図 • 定義: • システムの静的な構造を表したもの • 問題領域やシステムの構造を、論理的・静的に捉えるためのもの

  48. クラス図の例 • 学生と学部 0..* 1 学生 学部 • 学生番号 • 氏名 • 住所 - 学部名 • 所在地 • 電話番号 +学生情報取得() + 入学手続き + 休学手続き + 転学部手続き

  49. クラス図の例 クラス名 • 学生と学部 関係 0..* 1 学生 学部 • 学生番号 • 氏名 • 住所 - 氏名 • 住所 • 電話番号 属性 +学生情報取得() + 入学手続き + 休学手続き + 転学部手続き 操作

  50. クラス図の例 クラス名 多重度 • 学生と学部 0..* 1 学生 学部 • 学生番号 • 氏名 • 住所 - 氏名 • 住所 • 電話番号 属性 +学生情報取得() + 入学手続き + 休学手続き + 転学部手続き 操作

More Related