ソフトウェア工学(Software Engineering)
本科選択・必修開設時期単位数授業形態担 当
情報電子必修4年2講義奥本 幸・ 高山泰博
【授業の概要】
 授業は大きく前期と後期に分かれる。
 前期では、ソフトウェア開発において、ソフトウェアの品質や生産性を向上させるための基礎的な技法について学ぶ。ウォーターフォールモデルに従って、開発プロセスの基幹技術である要求分析、設計、プログラミング、テスト技法、品質保証を理解する。特に、上流工程の要求分析と外部設計工程では、演習を行う。
 後期は、新しいソフトウェア設計手法について学ぶ。特に、テストベース設計やモデルベース設計を学ぶために、研究者による講義を実施する。また、前期の演習の続きを行う。特に外部設計工程において、データベースの設計・作成を行う。
【授業の進め方】
 前期の初めに、企業で実際にシステムを開発する場合に行われる工程についてSEから話を伺う。その後、開発工程に沿って、要求分析、外部設計、内部設計、プログラミング、試験工程で行われる品質の作り込みについて学ぶ。授業は座学と小さな演習からなり、ここではプログラミングは行わない。
 後期は、研究者の講義を聞き、報告書等を作成する。また、データベースの設計・作成の演習を行う。
【授業計画】 【授業項目】 【内 容】
1 回 オリエンテーション
演習課題の説明
講義のねらい、演習の課題と進め方を説明する。
演習課題となる情報システムについて説明する。
2 回 システム開発におけるSEの講義 顧客の要求の分析、設計工程から運用テスト工程まで、実際に企業で行われていることについて講演を聞く。
3 回 [プロセス1]要求分析 要求分析について説明する。レビュとは何かを学ぶ。
4 回 演習
発注者への聞き取りを行う。
5 回 演習 システム提案書を作成する。
6 回 演習 システム提案書を自班でレビュする。 
7 回 演習 他班のシステム提案書をレビュする。自班のシステム提案書を修正する。
8 回 [プロセス2]外部設計 外部設計について説明する。
9 回 演習  外部設計書を作成する。(ユースケース図、システム構成図) 
10 回 演習 外部設計書を自班でレビュする。 
11 回 演習 外部設計書を修正する。 
12 回 [プロセス3]内部設計   内部設計の作業を確認する。
13 回 [プロセス4]プログラミング 
      テスト
ソースコードレビュ、テストについて学ぶ。
14 回 品質保証 バグ曲線や品質保証について学ぶ。
期末試験 開発工程、品質保証の理解度を問う。
15 回 答案返却など 試験の返却。後期授業のイントロダクション
16 回 テストベース設計  テストの重要性
17 回   〃 テストに重きを置くことの利点
18 回 モデルベース設計 モデル作成の重要性
19 回   〃 モデルベース設計の事例
20 回   〃 モデルベース設計の基礎
21 回   〃 モデルベース設計の演習
22 回 データベースの講義 サーバマシーン、DBMSの説明
23 回 データベースの講義   サンプルプログラム、SQLの説明
24 回 データベースの演習 データベースを設計する。
25 回   〃   〃
26 回   〃   〃
27 回   〃 データベースを作成する。
28 回   〃   〃
29 回   〃   〃
期末試験 実施しない
30 回 答案返却など アンケート実施
【到達目標】ソフトウェアのライフサイクルと開発プロセスの作業が言える。
テスト、モデル作成の重要性が言える。
【徳山高専学習・教育目標】A1【JABEE基準1(1)】d-1
【評価法】試験は、前期末試験のみ実施する。
前期は、前期末試験(60%)+演習点(40%)
後期は、講演の報告書と、演習の成果物で総合的に評価する。
学年末評価点は前期評価点と後期評価点の平均とする。
【テキスト】資料配布
【関連科目】データベース(4年)、創造演習(4年)、卒業研究(5年)