| 科 目 | ソフトウェア工学 ( Software Engineering ) | |||
|---|---|---|---|---|
| 担当教員 | 若林 茂 教授 | |||
| 対象学年等 | 電子工学科・4年・通年・必修・2単位 ( 学修単位III ) | |||
| 学習・ 教育目標 |
A3(50%) A4-D4(50%) | |||
| JABEE 基準1(1) |
(c),(d)1,(d)2-a,(d)2-d,(g) | |||
| 授業の概要 と方針 |
「プログラミングI」,「プログラミングII」で身につけたアルゴリズム・データ構造の基礎の上に,ソフトウェア設計方法論やプログラミング方法論を学習する.また,総合情報センターのコンピュータシステムを利用して演習を行う.特に,後期はグループでのプログラム共同開発に取り組む. | |||
| 到 達 目 標 |
1 | 【A3】 ソフトウェアの基礎概念(モジュラリティ・段階的詳細化・情報隠蔽・抽象化など)が理解できる. | 2 | 【A4-D4】 設計仕様書からプログラムを作成することができる. | 3 | 【A4-D4】 自分の実現したいことを設計仕様書にまとめることができる. | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 評 価 方 法 と 基 準 |
到 達 目 標 毎 |
1 | レポート(設計仕様書・テスト結果報告書など),演習で評価する. | |
| 2 | レポート(設計仕様書・テスト結果報告書など),演習およびプレゼンテーションで評価する. | |||
| 3 | レポート(設計仕様書・テスト結果報告書など),演習で評価する. | |||
| 4 | ||||
| 5 | ||||
| 6 | ||||
| 7 | ||||
| 8 | ||||
| 9 | ||||
| 10 | ||||
| 総 合 評 価 |
成績は,レポート70% プレゼンテーション10% 演習20% として評価する.100点満点で60点以上を合格とする. | |||
| テキスト | プリント(参考書から重要部分を抜粋) |
|||
| 参考書 | 「Pascalプログラミングの基礎」:真野芳久(サイエンス社) 「新訂新C言語入門シニア編」:林晴比古(ソフトバンク) 「プログラミング言語 C 第2版」:カーニハン,リッチー(共立出版) 「ソフトウェア工学実践の基礎」:落水浩一郎(日科技連) 「はじめて学ぶプログラム設計」:林雄二(森北出版) |
|||
| 関連科目 | プログラミング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年間のまとめを行う. | |
| 備 考 |
中間試験および定期試験は実施しない. |