到達目標
(ア)大規模ソフトウェア開発の課題について説明できる。
(イ)開発を管理するための様々なプロセスモデルの特徴について説明できる。
(ウ)要求分析の目的と手法について説明できる。
(エ)構造化分析、オブジェクト指向分析における手法を用いて、ソフトウェアのモデル図が描ける。
(オ)モジュール設計の目的を理解し、構造化手法やオブジェクト設計による効率的なソフトウェア設計仕様が描ける。
(カ)オブジェクト指向の特徴を理解し、クラス図やシーケンス図などの技法を使って、ソフトウェア設計仕様が描ける。
(キ)プロジェクト管理やテストおよび検証で用いられる手法を理解し、説明できる。
ルーブリック
| 最低限の到達レベルの目安(優) | 最低限の到達レベルの目安(可) | 最低限の到達レベルの目安(不可) |
評価項目(ア) | 大規模ソフトウェア開発の課題について正確に説明できる。 | 大規模ソフトウェア開発の課題について説明できる。 | 大規模ソフトウェア開発の課題について説明できない。 |
評価項目(イ) | 開発を管理するための様々なプロセスモデルの特徴について正確に説明できる。 | 開発を管理するための様々なプロセスモデルの特徴について説明できる。 | 開発を管理するための様々なプロセスモデルの特徴について説明できない。 |
評価項目(ウ) | 要求分析の目的と手法について正確に説明できる。 | 要求分析の目的と手法について説明できる。 | 要求分析の目的と手法について説明できない。 |
学科の到達目標項目との関係
学習・教育到達度目標 A2 社会システムの技術的な検討や評価を行い、多角的視野からシステムや構造物の設計能力を身につける
JABEE a 地球的視点から多面的に物事を考える能力とその素養
JABEE e 種々の科学、技術及び情報を活用して社会の要求を解決するためのデザイン能力
JABEE h 与えられた制約の下で計画的に仕事を進め、まとめる能力
本校教育目標 ① ものづくり能力
教育方法等
概要:
現在,情報システムは社会生活にとって欠かせないものであり,人間による活動の写像であるといえる。このため社会生活の変更に対する情報システムの仕様変更が適切でなければ,円滑な社会生活を妨げるばかりかシステムを提供する企業に不利益を及ぼしかねない。そこで,将来技術者として情報システムを構築する際に,仕様変更が容易で高い品質を維持でき,かつ効率的なシステムの構築手法を学ぶことが重要である。本講義では,開発初期段階でシステムの要求仕様を誤りなく把握し,変更に対して頑健な情報システムの分析・設計手法を,UMLを用いたユースケース駆動のオブジェクト指向開発方式により学ぶ。
授業の進め方・方法:
授業中の演習および課外の課題を通して、オブジェクト指向分析・設計手法の習得を目指す。また、ユースケース駆動オブジェクト指向分析・設計手法により、簡単なシステムの分析・設計を課題として課す。
注意点:
C言語などのモジュール構造を有したプログラム開発について学んだことがあることを前提に進める。(自学自習内容)授業内容に該当する項目について必ず復習し,学習内容の理解を深めること。また与えられた自習課題は確実に解いておくこと。
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
大規模ソフトウェア開発の課題とソフトウェア工学の必要性 ソフトウェア開発ライフサイクルとシステムのモジュール化 |
大規模ソフトウェア開発の課題とソフトウェア工学による問題解決と、ソフトウェア開発ライフサイクルに応じたモジュール化の必要性を理解できる。
|
2週 |
オブジェクト指向分析によるシステム構造のモジュール化 オブジェクト指向の基本概念1:カプセル化とメッセージパッシング |
オブジェクト指向によるるモジュール化と、基本概念であるカプセル化およびメッセージパッシングを理解できる。
|
3週 |
オブジェクト指向の基本概念2:クラスとインスタンス、関連と継承 |
オブジェクト指向の基本概念であるクラスとインスタンス、および関連と継承を理解できる。
|
4週 |
システムの機能分析:ユースケース図とユースケース記述 |
ユースケース図とユースケース記述により、システムの基本機能を表現できる。
|
5週 |
システムの基本構造分析1:ユースケース記述とロバストネス分析図(頑健性分析) |
システムの頑健性(保守性)を考慮したロバストネス分析の必要性を説明でき、ユースケースからロバストネス分析図(オブジェクト図)を表現できる。
|
6週 |
システムの動的分析1:シーケンス図 |
シーケンス図を用いて、複数のオブジェクト間のメッセージパッシングによるシステムの動的分析を表現ができる。
|
7週 |
システムの動的分析2:シーケンス図とクラスの操作 |
シーケンス図による動的分析において、メッセージからクラスの操作を表すことができる。
|
8週 |
システムの基本構造分析2:クラス図の洗練 |
クラス間の関連における多重度、ロール、制約、集約、関連クラス等を理解し、クラス図によりシステムの基本構造を表現できる。
|
2ndQ |
9週 |
オブジェクト指向設計の基本:抽象クラスとインタフェースクラス |
オブジェクト指向設計における抽象クラスとインタフェースクラスの必要性を理解できる。
|
10週 |
デザインパターンを用いた保守性の高いシステム構造1:Stateパターン |
システムの保守性を考慮したデザインパターンの必要性を理解し、Stateパターンを用いた設計レベルのクラス図を理解できる。
|
11週 |
デザインパターンを用いた保守性の高いシステム構造2:Observer パターン |
システムの保守性を考慮したデザインパターンの必要性を理解し、Observerパターンを用いた設計レベルのクラス図を理解できる。
|
12週 |
ユースケース駆動オブジェクト指向ソフトウェア分析・設計演習 構造化分析設計1:DFDによるシステム動的分析 |
ユースケース駆動オブジェクト指向ソフトウェア分析・設計技法を用い、設計レベルのモジュール構成を表現できる。 また、構造化分析設計によるDFDによるシステムの動的分析を理解できる。
|
13週 |
構造化分析設計2:STS法およびTR法によるシステムのモジュール化 |
構造化分析設計における、DFDを用いたSTS法およびTR法によるシステムのモジュール化を理解できる。
|
14週 |
モジュール構造の評価尺度大規模 ソフトウェアテスト |
モジュール構造の評価のために用いられる強度と結合度を理解できる。 また、ソフトウェアテストに用いられる技法について理解できる。
|
15週 |
大規模ソフトウェア開発の問題点と、様々なソフトウェア開発プロセス プロジェクト管理 |
大規模ソフトウェア開発の問題点について理解し、様々なソフトウェア開発プロセスを理解できる。 また、プロジェクト管理で用いられる開発工数の見積もり手法(標準タスク法およびファンクションポイント法)を理解できる。
|
16週 |
|
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
評価割合
| 定期試験 | 課題 | 合計 |
総合評価割合 | 60 | 40 | 100 |
分野横断的能力 | 60 | 40 | 100 |