ソフトウェア工学

科目基礎情報

学校 徳山工業高等専門学校 開講年度 平成30年度 (2018年度)
授業科目 ソフトウェア工学
科目番号 0108 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 学修単位: 2
開設学科 情報電子工学科 対象学年 4
開設期 通年 週時間数 1
教科書/教材 ソフトウェア工学 高橋直久他著(森北出版)
担当教員 奥本 幸

到達目標

ソフトウェア開発のプロセスを理解し、作業の目的、成果物が言える。
プロジェクト管理の必要性について説明することができる。
要求仕様に従って、データベースおよび検索プログラムが設計・実装できる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
開発プロセスソフトウェア開発手法プロセスが説明できる。開発プロセス名をあげることができるが、順番や成果物が言えない。開発プロセスが説明できない。
プロジェクト管理プロジェクト管理の必要性について理解し、活用できる。プロジェクト管理が何かを説明することができるが、活用できない。プロジェクト管理が何かを説明することができない。
要求仕様に従う設計・実装要求仕様に従ったデータベース、プログラムを設計・実装できる。設計・実装したデータベール・プログラムの一部が正しく動く。要求仕様に従って設計・実装できない。

学科の到達目標項目との関係

到達目標 C 1 説明 閉じる
JABEE d-1 説明 閉じる
JABEE e 説明 閉じる

教育方法等

概要:
1年生の基礎プログラミングに始まり、これまではプログラミング技術や基礎的なアルゴリズム、データ構造を修得してきた。本授業では、情報システム開発においてはプログラミング工程以外に、重要な工程があることを学ぶ。ソフトウェアを工業製品ととらえ、その品質向上や生産性向上のために有効な基本的な知識・技法を修得する。
 前期は、教科書を中心にして、ウォータフォールモデルを例にシステム開発プロセスにおける基本的知識・技法を学ぶ。
 後期は、アジャイル開発手法の体験、UMLおよびデータベースを構築する演習を行う。
授業の進め方・方法:
前期では、要求分析、外部設計、内部設計、プログラミング、テスト工程での作業・技法について教科書をもとに講義する。授業内容を確実に身につけるために、予習復習が必須である。
後期は、与えられた課題に対して、チームを組み、アジャイル開発手法を体験する。さらに、UML,データベース構築の演習を行う。授業時間内で演習が終わらない場合は、放課後等を利用して完成させなければならない。後期末試験は実施しない。
注意点:
データベース(4年)、創造演習(4年)、創造製作(5年)、卒業研究(5年)

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 オリエンテーション
ソフトウェアの開発プロセス
授業の進め方、内容を理解する。標準的なシステム開発プロセスが言える。
2週 要求分析 要求分析工程の作業、その成果物の必要性、用途、作成方法が説明できる。
3週 構造化分析 DFDが書ける。
4週 外部設計,デザインレビュ 外部設計工程と作成するドキュメントについて必要性、用途、作成方法が説明できる。レビューの目的、方法が説明できる。
5週 内部設計          内部設計工程と成果物について必要性、用途、作成方法を説明できる。
6週 モジュール分割        モジュール、モジュール分割の方法が説明できる。
7週 プロジェクト管理(プロジェクト管理の概要、開発工数の見積もり、品質管理について学ぶ。) プロジェクト管理の必要性について説明できる。
8週 プロジェクト管理の演習 与えられた課題の解決において、プロジェクト管理ができる。
2ndQ
9週 中間試験 ソフトウェア開発工程、特に、要求分析、外部設計、デザインレビュについて理解度を問う。
10週 答案返却・解説 答案を返却し、解説を行う。
11週 プログラミング 計算モデル、プログラミング言語、ソースプログラムの作成方法が説明できる。
12週 テストと検証、保守 各テストの目的、ソフトウェア保守とその技法が説明できる。
13週 アジャイル開発(1) ウォータフォールモデルとアジャイル開発手法の違いが説明できる。
14週 アジャイル開発(2) 与えられた簡単な演習課題に対して、チームを組み、アジャイル開発が行える。
15週 期末試験 前期中間試験以降、これまでに学んだ事について理解度を問う。
16週 答案返却など 期末試験の返却を行う。
後期
3rdQ
1週 アジャイル開発(3) 与えられた演習課題に対して、スクラムを用いた開発が行える。
2週 アジャイル開発(4)       〃
3週 アジャイル開発(5)       〃
4週 アジャイル開発(6)       〃
5週 UML(1) UMLによるモデリングを理解し、ユースケース図、オブジェクト図が書ける。
6週 UML(2) クラス図が書ける。
7週 UML(3) シーケンス図が書ける。
8週 中間試験 前期末試験以降学んだことについて理解度を問う。
4thQ
9週 データベースの復習  DBMSを理解し、SQL文が使える。
10週 データベース構築演習(1) Javaプログラムを組み、クライアントからサーバ上にDBを設計、検索プログラムを実装できる。
11週 データベース構築演習(2)   〃
12週 データベース構築演習(3)   〃
13週 データベース構築演習(4)     〃
14週 レポート提出 実験結果をレポートにまとめ、提出する。
15週 期末試験 実施しない。
16週 答案返却など 授業アンケートを実施する。

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミングプログラミング言語は計算モデルによって分類されることを説明できる。4前11
主要な計算モデルを説明できる。4前11
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4前4,前5
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4前11
ソフトウェアソフトウェアを中心としたシステム開発のプロセスを説明できる。4前1,前13
コンピュータシステムシステム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを説明できる。4前2
ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。4前2
プロジェクト管理の必要性について説明できる。4前7
WBSやPERT図など、プロジェクト管理手法の少なくとも一つについて説明できる。4前7
ER図やDFD、待ち行列モデルなど、ビジネスフロー分析手法の少なくとも一つについて説明できる。4前3

評価割合

試験アジャイル開発DBレポート合計
総合評価割合701020100
基礎的能力0000
専門的能力701020100
分野横断的能力0000