| 科 目 | ソフトウェア工学 ( Software Engineering ) | |||
|---|---|---|---|---|
| 担当教員 | 若林 茂 | |||
| 対象学年等 | 電子工学科・4年・通年・必修・2単位 ( 学修単位III ) | |||
| 学習・教育 目標 |
工学系複合プログラム | JABEE基準1(1) | ||
| A-3(50%) A-4-4(50%) | (c),(d)1,(d)2-a,(d)2-d,(g) | |||
| 授業の概要 と方針 |
「プログラミングI」,「プログラミングII」で身につけたアルゴリズム・データ構造の基礎の上に,ソフトウェア設計方法論やプログラミング方法論を学習する。また,総合情報センターのコンピュータシステムを利用して演習を行う。特に,後期はグループでのプログラム共同開発に取り組む。 | |||
| 到 達 目 標 |
1 | 【A-3】 ソフトウェアの基礎概念(モジュラリティ・段階的詳細化・情報隠蔽・抽象化など)が理解できる。 | 2 | 【A-4-4】 設計仕様書からプログラムを作成することができる。 | 3 | 【A-4-4】 自分の実現したいことを設計仕様書にまとめることができる。 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 評 価 方 法 と 基 準 |
到 達 目 標 毎 |
1 | レポート(設計仕様書・テスト結果報告書など),演習で評価する。 | |
| 2 | レポート(設計仕様書・テスト結果報告書など),演習およびプレゼンテーションで評価する。 | |||
| 3 | レポート(設計仕様書・テスト結果報告書など),演習で評価する。 | |||
| 4 | ||||
| 5 | ||||
| 6 | ||||
| 7 | ||||
| 8 | ||||
| 9 | ||||
| 10 | ||||
| 総 合 評 価 |
成績は,レポート70% プレゼンテーション10% 演習20% として評価する。100点満点で60点以上を合格とする。 | |||
| テキスト | 「ソフトウェア工学実践の基礎」:落水浩一郎(日科技連) |
|||
| 参考書 | 「Pascalプログラミングの基礎」:真野芳久(サイエンス社) 「プログラミングの方法」:川合慧(岩波書店) 「プログラミング言語 C 第2版」:カーニハン,リッチー(共立出版) 「新訂新C言語入門シニア編」:林晴比古(ソフトバンク) |
|||
| 関連科目 | プログラミングI,プログラミングII | |||
| 履修上の 注意事項 |
||||
| 回 | 上段:テーマ/下段:内容(目標、準備など) |
|---|---|
| 1 | ソフトウェア工学の基礎概念 |
| ソフトウェア工学の基礎概念について概説する。また,演習環境について説明する。 | |
| 2 | 構造と動作の抽象 |
| 「車のハンドル」,「素数一覧表」の問題を題材にして構造と動作の抽象について説明する。 | |
| 3 | 構造化プログラミング,および,課題1の説明 |
| 「曲線の印刷」の問題を題材にして構造化プログラミングの考え方を説明する。また,課題1について説明する。 | |
| 4 | 段階的詳細化,および,課題1の演習1回目 |
| 「曲線の印刷」の問題を題材にして段階的詳細化の考え方を説明する。また,課題1の演習を行う。 | |
| 5 | 段階的詳細化,および,課題1の演習2回目 |
| 「曲線の印刷」の問題を題材にして段階的詳細化の考え方を説明する。また,課題1の演習を行う。 | |
| 6 | プログラミング技法,および,課題1の演習3回目 |
| プログラミング技法について解説する。また,課題1の演習を行う。 | |
| 7 | プログラム設計技法,および,課題1の演習4回目 |
| プログラム設計技法について解説する。また,課題1の演習を行う。 | |
| 8 | 課題1のレポート検討 |
| 課題1のレポートについて検討する。 | |
| 9 | 構造化プログラミング,および,課題2の説明 |
| 「製本プログラム」の問題を題材にして構造化プログラミングの考え方を説明する。また,課題2について説明する。 | |
| 10 | 段階的詳細化,および,課題2の演習1回目 |
| 「製本プログラム」の問題を題材にして段階的詳細化の考え方を説明する。また,課題2の演習を行う。 | |
| 11 | 段階的詳細化,および,課題2の演習2回目 |
| 「製本プログラム」の問題を題材にして段階的詳細化の考え方を説明する。また,課題2の演習を行う。 | |
| 12 | プログラム設計技法,および,課題2の演習3回目 |
| プログラム設計技法について解説する。また,課題2の演習を行う。 | |
| 13 | システム設計技法,および,課題2の演習4回目 |
| システム設計技法について解説する。また,課題2の演習を行う。 | |
| 14 | 課題2のレポート検討 |
| 課題2のレポートについて検討する。 | |
| 15 | 前期のまとめ |
| 前期のまとめを行う。 | |
| 16 | 課題3(グループ課題)の説明と班分け |
| 課題3(グループ課題)の説明を行う。班分け後,班ごとの打合せを行う。 | |
| 17 | 抽象データ型とクラス,および,課題3の演習1回目 |
| 「製本プログラム」の問題を題材にして抽象データ型とクラスの考え方を説明する。また,課題3の演習を行う。 | |
| 18 | 抽象データ型とクラス,および,課題3の演習2回目 |
| 「製本プログラム」の問題を題材にして抽象データ型とクラスの考え方を説明する。また,課題3の演習を行う。 | |
| 19 | テスト技法,および,課題3の演習3回目 |
| テスト技法について解説する。また,課題3の演習を行う。 | |
| 20 | テスト技法,および,課題3の演習4回目 |
| テスト技法について解説する。また,課題3の演習を行う。 | |
| 21 | 課題3のプレゼンテーション1回目 |
| 前半4班のプレゼンテーションを行う。作品・発表について学生が相互評価する。 | |
| 22 | 課題3のプレゼンテーション2回目 |
| 後半4班のプレゼンテーションを行う。作品・発表について学生が相互評価する。 | |
| 23 | 課題4(グループ課題)の説明と班分け |
| 課題4(グループ課題)の説明を行う。班分け後,班ごとの打合せを行う。 | |
| 24 | モデリング,および,課題4の演習1回目 |
| 「家計シミュレーションシステム」の問題を題材にしてモデリングの考え方を説明する。また,課題4の演習を行う。 | |
| 25 | モデリング,および,課題4の演習2回目 |
| 「家計シミュレーションシステム」の問題を題材にしてモデリングの考え方を説明する。また,課題4の演習を行う。 | |
| 26 | 要求定義技法,および,課題4の演習3回目 |
| 要求定義技法について解説する。また,課題4の演習を行う。 | |
| 27 | 保守技法,および,課題4の演習4回目 |
| 保守技法について解説する。また,課題4の演習を行う。 | |
| 28 | 課題4のプレゼンテーション1回目 |
| 前半4班のプレゼンテーションを行う。作品・発表について学生が相互評価する。 | |
| 29 | 課題4のプレゼンテーション2回目 |
| 後半4班のプレゼンテーションを行う。作品・発表について学生が相互評価する。 | |
| 30 | 後期のまとめ |
| 1年間のまとめを行う。 | |
| 備 考 |
中間試験および定期試験は実施しない。 |