ソフトウェア工学

科目基礎情報

学校 熊本高等専門学校 開講年度 2018
授業科目 ソフトウェア工学
科目番号 HI412 科目区分 専門 / 選択
授業形態 授業 単位の種別と単位数 学修単位: 2
開設学科 人間情報システム工学科 対象学年 4
開設期 通年 週時間数 1
教科書/教材 結城浩 著「Java言語プログラミングレッスン 第3版 (下)」 ソフトバンククリエイティブ
担当教員 神﨑 雄一郎

到達目標

(1) オブジェクト指向プログラミングの基礎について学び,クラス,カプセル化,継承,多態性といったオブジェクト指向プログラミングの特徴を生かしたソフトウェアをJava言語によって実装できる.
(2) 主要なソフトウェア開発プロセス,および,ソフトウェアの要求分析,設計,実装,テストを実施するための具体的な方法を理解し,説明できる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
オブジェクト指向プログラミングの基礎オブジェクト,クラス,継承,カプセル化,多態性などについて理解し,複数のオブジェクト指向言語で具体例を説明できる.オブジェクト,クラス,継承,カプセル化,多態性などについて理解し,Java言語で具体例を説明できる.オブジェクト,クラス,継承,カプセル化,多態性などについて説明できない.
Java言語による実装と単体テスト「標準的な到達レベルの目安」に加え,創造力を生かした応用課題を解くことができる.クラス,インスタンス,メソッド,フィールド,オーバーロード,オーバーライドなどを含めたJava言語の基礎について理解し,基礎課題を解くことができる. また,ソフトウェアテストの技法について理解し,Java言語を対象にした単体テストを実施できる.Java言語に関する基礎的な演習課題を解くことができない.
UMLを用いた分析・設計ユースケース図,クラス図,オブジェクト図などの記述ルールについて理解し,自ら考えた要求仕様等をダイアグラムで表現できる.ユースケース図,クラス図,オブジェクト図などの記述ルールについて理解し,与えられた課題をダイアグラムで記述できる.ユースケース図,クラス図,オブジェクト図などを記述できない.
ソフトウェア開発プロセスソフトウェア開発プロセスについて理解し,最近の動向を含めて説明できる.よく知られたソフトウェア開発プロセスについて理解し,説明できる.ソフトウェア開発プロセスについて説明できない.

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

教育方法等

概要:
ソフトウェア開発に関する幅広い技術の基礎を身に付けることを目的とした講義である.オブジェクト指向を基盤としたソフトウェアの分析,設計,実装,テストの技法などの学習をとおして,高品質なソフトウェアを効率的に開発するための方法を体得することを目指す.
授業の進め方・方法:
講義と演習を交互に行う形で進める.
定期試験(60%)および演習課題レポート(40%)で評価する.総合評価(100点満点)が60点以上の場合,目標達成とみなす.
注意点:
規定授業時数(単位時間)は60である.
この科目では,レポート作成などで年間に30時間の自学自習を課す.

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ソフトウェア工学概説 ソフトウェア工学の役割や,関連技術のアウトラインについて理解する.
2週 プログラミング言語(1) ソフトウェアの実装に用いる種々のプログラミング言語と設計思想について理解する.
3週 プログラミング言語(2) 同上
4週 オブジェクト指向プログラミングの基礎(1) オブジェクト指向プログラミングの特徴や実装作法について理解する.
5週 オブジェクト指向プログラミングの基礎(2) 同上
6週 オブジェクト指向プログラミングの基礎(3) 同上
7週 オブジェクト指向プログラミングの基礎(4) 同上
8週 中間試験
2ndQ
9週 Javaによるオブジェクト指向プログラミングの実践演習(1) Javaを用いたプログラミング演習を通して,オブジェクト指向プログラミングの特長を生かした実装方法を体得する.
10週 Javaによるオブジェクト指向プログラミングの実践演習(2) 同上
11週 Javaによるオブジェクト指向プログラミングの実践演習(3) 同上
12週 Javaによるオブジェクト指向プログラミングの実践演習(4) 同上
13週 Javaによるオブジェクト指向プログラミングの実践演習(5) 同上
14週 Javaによるオブジェクト指向プログラミングの実践演習(6) 同上
15週 前期期末試験
16週 定期試験答案返却
後期
3rdQ
1週 ソフトウェア開発プロセス(1) ソフトウェア開発の各工程の目的と作業内容について理解する.また,代表的なソフトウェア開発プロセスモデルについて理解する.
2週 ソフトウェア開発プロセス(2) 同上
3週 分析・設計(1) 構造化手法やオブジェクト指向に基づく要求分析・設計の技法について理解し,UML等によってソフトウェアの要求分析や設計の仕様を記述できるようになる.
4週 分析・設計(2) 同上
5週 分析・設計ト(3) 同上
6週 ソフトウェアテスト(1) ソフトウェアテストの技法について理解し,Java言語を対象にした単体テストが実施できるようになる.
7週 ソフトウェアテスト(2) 同上
8週 中間試験
4thQ
9週 ソフトウェア開発総合演習(1) よく知られた開発プロセスに従ってソフトウェアの分析・設計・実装の演習を行うことで,効率的なソフトウェアの開発方法を体得する.
10週 ソフトウェア開発総合演習(2) 同上
11週 ソフトウェア開発総合演習(3) 同上
12週 ソフトウェア開発総合演習(4) 同上
13週 ソフトウェア開発総合演習(5) 同上
14週 ソフトウェア開発総合演習(6) 同上
15週 後期期末試験
16週 定期試験答案返却

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15,後9,後10,後11,後12,後13,後14,後15
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4前4,前5,前6,前7,前9,前10,前11,前12,前13,前14,前15,後9,後10,後11,後12,後13,後14,後15
主要な言語処理プロセッサの種類と特徴を説明できる。2前2,前3
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。2
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。4後1,後2,後3,後4,後5,後6,後7
ソフトウェアソフトウェアを中心としたシステム開発のプロセスを説明できる。4前1,後1,後2,後3,後4,後5,後6,後7
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。2後4,後5,後6,後7
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。2後4,後5,後6,後7

評価割合

試験レポート合計
総合評価割合6040100
基礎的能力000
専門的能力6040100
分野横断的能力000