科 目 | ソフトウェア工学 ( Software Engineering ) | |||
---|---|---|---|---|
担当教員 | 若林 茂 教授 | |||
対象学年等 | 電子工学科・4年・通年・必修・2単位 ( 学修単位III ) | |||
学習・教育 目標 |
A3(50%), A4-D4(50%) | |||
授業の概要 と方針 |
「プログラミング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年間のまとめを行う. | |
備 考 |
本科目の修得には,60 時間の授業の受講と 30 時間の自己学習が必要である. 中間試験および定期試験は実施しない. |