Software Engineering

Course Information

College Tokuyama College Year 2022
Course Title Software Engineering
Course Code 0086 Course Category Specialized / Compulsory
Class Format Lecture Credits Academic Credit: 2
Department Department of Computer Science and Electronic Engineering Student Grade 4th
Term Second Semester Classes per Week 2
Textbook and/or Teaching Materials ずっと受けたかったソフトウェアエンジニアリングの新人研修 川添雄彦監修、飯村他著
Instructor Ogihara Hiroyuki

Course Objectives

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

Rubric

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

Assigned Department Objectives

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

Teaching Method

Outline:
1年生の基礎プログラミングに始まり、これまではプログラミング技術や基礎的なアルゴリズム、データ構造を修得してきた。本授業では、情報システム開発においてはプログラミング工程以外に、重要な工程があることを学ぶ。ソフトウェアを工業製品ととらえ、その品質向上や生産性向上のために有効な基本的な知識・技法を修得する。
 ウォータフォールモデルを例にシステム開発プロセスにおける基本的知識・技法を学ぶ。その後、アジャイル開発、データベースを構築する演習を行う。
Style:
資料を使って、基本的なソフトウェア開発工程である要求分析、外部設計、内部設計、プログラミング、テスト工程での作業・技法について学ぶ。ここまでの理解度を後期中間試験ではかる。
次に、数人からなるチームを組み、アジャイル開発手法を体験する。まだ、前期に学んだデータベースを構築する演習を行う。後期末試験は実施しない。
この科目は学修単位科目のため、自学自習を必要とする以下のような演習課題(課題プリント)を課す。課題プリントの結果は最終評価に含める。
基本設計工程、詳細設計工程: 復習用プリント(12時間)
テスト工程: 復習用プリント(8時間)
アジャイル開発: e-learning教材による事前学習(4時間)
データベース:  データベースへアクセスするためのクライアントプログラムの作成(20時間)、レポート作成(8時間)
Notice:
最終成績評価式=後期中間試験60%+課題プリント20%+データベース演習20%
データベース(4年)、創造演習(4年)、創造製作(5年)、卒業研究(5年)

Characteristics of Class / Division in Learning

Active Learning
Aided by ICT
Applicable to Remote Class
Instructor Professionally Experienced

Course Plan

Theme Goals
2nd Semester
3rd Quarter
1st オリエンテーション、ソフトウェアの開発プロセス
【事後学習】開発工程に関するプリントを解く
授業の進め方、内容を理解する。標準的なシステム開発プロセスが言える。
2nd 要求分析、要件定義
【事後学習】要件定義に関するプリントを解く
要求分析工程の作業、その成果物の必要性、用途、作成方法が説明できる。   
3rd 外部設計
【事後学習】外部設計に関するプリントを解く
外部設計工程と成果物について必要性、用途、作成方法を説明できる。
4th 内部設計
【事後学習】内部設計工程に関するプリントを解く
外部設計と内部設計の違いが説明できる。モジュール、モジュール分割の方法が説明できる。
5th デザインレビュー 成果物のレビューの目的、方法を説明できる。
6th プログラミング、テストと検証
【事後学習】テスト工程に関するプリントを解く
計算モデル、プログラミング言語、ソースプログラムの作成方法が説明できる。各テストの目的が説明できる。
7th プロジェクト管理
【事後学習】プロジェクト管理に関するプリントを解く
古典的及び近代的なプロジェクト管理が説明できる。
8th 中間試験 学んだことについて理解度を問う。
4th Quarter
9th データベース構築演習(1)
【事後学習】環境設定を行う。
DBMSを理解し、SQL文が使える。
10th データベース構築演習(2)
【事後学習】MySQL実習を行う。
DBMSを理解し、SQL文が使える。
11th データベース構築演習(3)
【事後学習】基本的なプログラムを作成する。
Javaプログラムを組み、サーバ上に構築したDBをクライアントから検索するプログラムを実装できる。
12th データベース構築演習(4)
【事後学習】応用課題のDBを設計する。
より複雑なDBを設計できる。
13th データベース構築演習(5)
【事後学習】プログラムを完成させる。
Javaプログラムを組み、テストする。
14th レポートにまとめる。
15th アジャイル開発(1)
【事前学習】e-learning教材による事前学習
 スクラムの開発プロセスを説明できる。
16th アジャイル開発(2)  与えられた演習課題に対して、スクラムを用いた開発が行える。アンケートを実施する。

Evaluation Method and Weight (%)

後期中間試験課題プリントデータベース演習Total
Subtotal602020100
基礎的能力0000
専門的能力602020100
分野横断的能力0000