Software Engineering

Course Information

College Tokuyama College Year 2018
Course Title Software Engineering
Course Code 0108 Course Category Specialized / Compulsory
Class Format Lecture Credits Academic Credit: 2
Department Department of Computer Science and Electronic Engineering Student Grade 4th
Term Year-round Classes per Week 1
Textbook and/or Teaching Materials ソフトウェア工学 高橋直久他著(森北出版)
Instructor Okumoto Miyuki

Course Objectives

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

Rubric

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

Assigned Department Objectives

到達目標 C 1 See Hide
JABEE d-1 See Hide
JABEE e See Hide

Teaching Method

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

Course Plan

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

Evaluation Method and Weight (%)

試験アジャイル開発DBレポートTotal
Subtotal701020100
基礎的能力0000
専門的能力701020100
分野横断的能力0000