2025年度前期オブジェクト指向設計論

曜日・時限 金曜日5時限 期別 前期 週時間数 2
ナンバリング HT430510
開講学科等 総合情報学部-情報学科
教員名 杉浦 英樹
杉浦 英樹
職務履歴

目的

大規模複雑化が進むソフトウェアの開発においては、プログラミングに着目してコーディングによる対応に早計に着手し、品質を作りこむために非効率に時間をかける傾向にあります。本講義では、ソフトウェア開発における要求を起点として、要求と要件を分析した後に、ソフトウェアシステムをどう作るかを設計し、設計結果を元にプログラムを作成することで、ソフトウェアシステムの品質が確保できることを理解します。
オブジェクト指向設計論は、開発対象を「オブジェクト(もの)」とし、オブジェクト間の関係を定義しモデル化することで、誰もがわかりやすく開発対象の構成や振る舞いを理解できるように工夫した、現代のソフトウェア開発の基本となる考え方です。また、オブジェクト指向で開発する際の「設計図」の書き方は、UML( Unified Modeling Language )という業界標準に従います。UMLを正しく使うことで、ソフトウェア設計者は設計の意図を正確に表現し、関係者に正しい設計情報を間違えることなく伝えることを目指します。
本科目の受講により、オブジェクト指向によるソフトウェア開発の基本的な知識と実践的なUMLの知識を得るとともに、設計演習を行うことでソフトウェア開発で利用する代表的なオブジェクト指向モデリング技術を獲得します。

授業計画

授業回 形式 学修内容 学修課題
1 遠隔授業:A,F オブジェクト指向技術の背景と経緯、必要性の確認~ソフト開発現場の変化と変化への対応
・マシーンコードから構造化設計までのパラダイムシフト・ビジネスモデルからのアーキテクチャの変化・構造化分析/設計の誕生・「オブジェクト指向設計論」の概要
企業におけるオブジェクト指向の必要性
・大規模複雑化の増大と構造化パラダイムの問題・オブジェクト指向パラダイムの提案と制約・組込みソフトウェア開発におけるオブジェクト指向の必要性・生成AI時代でも必要なオブジェクト指向の理解(ブレークアウトルームでのグループ討議)
事前学修 授業項目を読み、キーワードを自己調査し、第1回講義内容の事前理解を深める。(2時間)
事後学修 講義で詳細に紹介したキーワードの自己調査。(2時間)
2 遠隔授業:A,C,F オブジェクト指向の考え方の基本
・オブジェクトに着目する意味
・モデル事例確認
・オブジェクトとオブジェクトの関係
・オブジェクト指向で考える(グループ討議)
・オブジェクトズの変更解説
事前学修 サブテキスト第1章UMLとは何か~第2章02オUMLの基本を読み、内容を理解する。理解できることとできないことを明確にする。(2時間)
事後学修 講義テキストの復習および、サブテキストの復習。(2時間)
3 遠隔授業:A,C,F オブジェクト指向のメカニズム
・設計原理(メカニズム)の概観
・オブジェクト指向モデルのノーテーション
・関連と情報隠蔽を考える
・作った後のことを考える(グループ討議)
・対応メカニズム解説、ホットスポットとフローズンスポット
事前学修 サブテキスト第1章UMLとは何か~第2章02オUMLの基本を読み、内容を理解する。理解できることとできないことを明確にする。(2時間)
事後学修 講義テキストの復習および、サブテキストの復習。(2時間)
4 遠隔授業:A,C,F オブジェクト指向開発のプロセス
・開発プロセスの解説
・オブジェクト指向開発プロセスの特徴
・保守洗練のプロセス
・工数飛ばしについての討議(グループディスカッション)
・工程飛ばしの方法と再利用開発の実際
事前学修 サブテキスト第3章の理解と理解できることわからないことの確認(1時間)
事後学修 講義内容の復習(2時間)
5 遠隔授業:A,C,F オブジェクト指向要求分析
・分析ユースケースの作成
・実例による練習
・オブジェクト図、分析クラス図
・オブジェクト図とクラス図の違いを討議(グループ討議)
・分析シーケンス図の作成
事前学修 サブテキスト第4章ユースケース図 と第5章オブジェクト図の内容確認と理解できること、わからないことの整理(2時間)
事後学修 講義内容の復習。サブテキスト第4章、第5章の復習問題および練習問題の実施。ユースケースについての不明点は次回講義時に確認(2時間)
6 遠隔授業:A,C,F オブジェクト指向要件分析
・要件と要求の違い
・分析ユースケースのブラッシュアップ
・分析クラス図のブラッシュアップ
・分析シーケンス図のブラッシュアップと共有(グループ討議)
・分析モデル更新版の確認
事前学修 前回までに読めなかったサブテキスト第4章ユースケース図 と第5章オブジェクト図の内容確認と、理解できること、わからないことの整理(2時間)
事後学修 講義中に作成出来なかった内容について事後実施.不明点は次回講義時に確認(2時間)
7 遠隔授業:A,C,F オブジェクト指向分析の演習
・演習の進め方説明
・新規要求の追加
・分析ユースケースの検討
・分析ユースケースシナリオの変更内容検討(グループ討議)
・分析クラス図とシーケンス図の変更
事前学修 パワーポイントまたはお絵描きツールなどでユースケースの基本が描けるようにする。(2時間)
事後学修 作成したユースケース図およびユースケース記述のブラッシュアップ。(2時間)
8 遠隔授業:A,C,F オブジェクト指向分析から設計への変換
・分析から設計への変換
・クラス図の定義と関連
・継承と再利用
・親クラスと子クラスの関係による再利用の理解(グループ討議)
・デザインパターンの利用
事前学修 サブテキスト第6章クラス図の内容を確認する。ネット調査によるステートパターンの事前理解(2時間)
事後学修 講義内容の復習。分析で作成したオブジェクト図をクラス図に変換する。(2時間)
9 遠隔授業:A,C,F オブジェクト指向設計の理解1(設計ユースケース)
・ユースケースの洗練
・設計ユースケースの作成
・設計におけるクラス定義と関連
・ステートパターンの組込み検討(グループ討議)
・ステートパターンの組込み解説
事前学修 前回の講義を復習し、サブテキスト第6章クラス図を再度理解する。(2時間)
事後学修 講義中に作成できなかったクラス図の作成とクラス定義と関連を作成し見直す。不明点は次回講義時に確認(3時間)
10 遠隔授業:A,C,F オブジェクト指向設計の理解2(設計クラス)
・クラス図の詳細化
・制約の具体化と実現手段
・「危険を回避する」の検討(グループ討議)
・設計ユースケースの更新
・プログラムをどう動かすか
・クラス図の変化
事前学修 前回の講義を復習し、サブテキスト第7章シーケンス図を理解する。(2時間)
事後学修 講義中に作成出来なかったシーケンス図について事後作成.不明点は次回講義時に確認(3時間)
11 遠隔授業:A,C,F オブジェクト指向設計の理解3(設計シーケンス図によるクラス図の作りこみ)
・設計シーケンス図によるクラス図の作りこみ
・設計ユースケースの検討(グループ討議)
・設計シーケンス図の検討(グループ討議)
・ユースケースとシーケンス図の設計例
・システム設計のまとめ
事前学修 前回の講義を復習し、サブテキスト第7章シーケンス図を理解する。(2時間)
事後学修 講義中に作成出来なかったシーケンス図について事後作成.不明点は次回講義時に確認(3時間)
12 遠隔授業:A,C,F オブジェクト指向設計の演習
・設計シーケンス図によるクラス図の作りこみ
・設計ユースケースの作成(グループ討議)
・設計シーケンス図の作成(グループ討議)
・設計例の解説
・システム設計のまとめ
事前学修 作成したクラス図を吟味し、不明点を明らかにする。(2時間)
事後学修 講義中に作成出来なかった内容について事後実施.不明点は次回講義時に確認(3時間)
13 遠隔授業:A,C,F オブジェクト指向の代表的期待効果と今後の展望
・再利用型の開発
・理解性の確保
・DXとオブジェクト指向
・ETロボコンのモデル理解(グループ討議)
・今後のソフトウェア開発の潮流
事前学修 これまでの講義内容全体の復習(2時間)
事後学修 これまでの講義内容全体の復習(3時間)

授業形式記号

  • A:一斉授業(通常の講義)
  • B:問題発見・解決学習、プロジェクト学習
  • C:体験、実験、実習、演習など
  • D:調査 分析、解析など
  • E:ものづくり、作品制作
  • F:グループワーク(ディスカッション・ディベートを含む)
  • G:プレゼンテーション
  • H:地域・企業 連携型学習
  • I:その他

到達目標

<修得する資質・能力(ディプロマポリシー)>
- 知識・理解力,応用力【DP-T-1-1】

1.オブジェクト指向設計の基礎概念と基本手法が理解できる.
2.UMLの基本的な表記法について理解できる.
3.組込み制御システムの基礎的なモデル記述について理解できる.
4.UMLで記述された設計内容の意味を理解することができる.
5.自分自身でUMLを用いたソフトウェア設計ができる.

評価方法と評価観点

評価方法 配点合計知識・理解力応用力コミュニケーション力態度・志向性創造力 合計
定期試験またはレポート試験 30% 50% 20% 10% 10% 10% 100%
小テスト、小論文 20% 70% 30% 100%
グループワーク 20% 20% 20% 30% 20% 10% 100%
プレゼンテーション 0%
レポート、宿題 30% 30% 20% 20% 10% 20% 100%
授業での姿勢(ノート、質疑など) 10% 80% 10% 100%
作品、パフォーマンス(実技、実演) 0%
その他1(具体的に: 0%
その他2(具体的に: 0%
100% 42% 16% 15% 16% 11% 100%

教科書・参考書

教科書・参考書: 『プログラミングの教科書 かんたん UML入門[改訂2版]』(ISBN978-4-7741-9039-6)定価(本体2960円+税)

授業日毎,必要となる講義プリント(PDF)を配布する.

オフィスアワー

質問等がある場合は、moodleカンファレンスへの投稿を基本とします. 但し、出欠などの申告や相談についてはメールを受け付けます.状況によっては、授業で質問に回答します。
欠席回数が3回以上※の者は、最終課題レポートを提出してもE評価とします. 但し、就職活動や講義重複などによる場合は配慮するので、必ず講師へ直接相談すること.
講義では毎回グループ討議を行うため、各自のPCからGoogle Meetでの 会話ができる環境 から出席すること. 
PCのスペックについてはオンライン授業に対応できることをあらかじめ確認すること.

その他

全回オンライン授業を予定.

実務経験のある教員による授業科目

民間企業(メーカー)で製品組込みソフトウェア開発を実践しオブジェクト指向を組込みソフト分野に適用した講師がその経験を生かし、製品ソフトウェア開発におけるオブジェクト指向設計の基本知識・思考法と、ソフトウェア開発のポイントやコツを紹介しながら開発技術を解説する。