ソフトウェアデザイン演習Ⅲ

科目基礎情報

学校 苫小牧工業高等専門学校 開講年度 令和02年度 (2020年度)
授業科目 ソフトウェアデザイン演習Ⅲ
科目番号 0032 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 履修単位: 1
開設学科 創造工学科(情報科学・工学系共通科目) 対象学年 4
開設期 後期 週時間数 2
教科書/教材 教科書:無し/参考書: 柴田 望洋 他「新・明解 C言語によるアルゴリズムとデータ構造」ソフトバンククリエイティブ,竹政 昭利 他「かんたん UML入門 [改訂2版] (プログラミングの教科書)」技術評論社,J.L.アントナコス他 「C/C++アルゴリズム入門」 ピアソンエデュケーション, R.L.クルーズ「C++データ構造とプログラム設計」ピアソンエデュケーション, 浅野他「計算とアルゴリズム」 オーム社, 石畑「岩波講座ソフトウェア科学3 アルゴリズムとデータ構造」岩波書店, 疋田「Cで書くアルゴリズム」サイエンス社, 野崎「アルゴリズムと計算量」共立出版, 河西「Javaによるはじめてのアルゴリズム入門」技術評論社, 他多数.
担当教員 中村 庸郎

到達目標

1) 要求仕様を満たすプログラムの作成・実行・デバッグを遂行できる.
2) クラス,オブジェクト(インスタンス),スレッド(プロセス)間の関係について,実装を通して理解できる.
3) オブジェクト指向プログラミング(OOP)により,確率や状態遷移に関する問題を解決できる.
4) オブジェクト指向プログラミング(OOP)により,木の概念に基づく問題を解決できる.

ルーブリック

理想的な到達レベルの目安(優)標準的な到達レベルの目安(良)未到達レベルの目安(不可)
評価項目1要求仕様を満たすプログラムの作成・実行・デバッグを自力で正しく遂行できる.要求仕様を満たすプログラムの作成・実行・デバッグを標準的なレベルで遂行できる.要求仕様を満たすプログラムの作成・実行・デバッグを正しく遂行できない.
評価項目2クラス,オブジェクト,スレッド間の関係について,自力で正しく実装し理解できる.クラス,オブジェクト,スレッド間の関係について,標準的なレベルで実装し理解できる.クラス,オブジェクト,スレッド間の関係について,実装・理解できない.
評価項目3オブジェクト指向プログラミング(OOP)により,確率や状態遷移に関する問題を自力で正しく実装し解決できる.オブジェクト指向プログラミング(OOP)により,確率や状態遷移に関する問題を標準的なレベルで実装し理解できる.オブジェクト指向プログラミング(OOP)により,確率や状態遷移に関する問題を実装・理解できない.
評価項目4オブジェクト指向プログラミング(OOP)により,木の概念に基づく問題を自力で正しく解くことができる.オブジェクト指向プログラミング(OOP)により,木の概念に基づく問題を標準的なレベルで解くことができる.オブジェクト指向プログラミング(OOP)により,木の概念に基づく問題を正しく解くことができない.

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

教育方法等

概要:
「ソフトウェアデザイン演習Ⅲ」では,「プログラミングⅠ・Ⅱ」および「ソフトウェアデザイン演習Ⅰ・Ⅱ」を通じて修得したプログラミングスキルを活用し,オブジェクト指向プログラミング(OOP)によるシンプルかつ具体的な問題解決を図る.
また,情報科学・工学分野で必要な情報理論の基本となる概念・理論を題材とした演習を取り入れ,これらを効率的に理解することも本科目の副次的効果として見込んでいる.
授業の進め方・方法:
通常はH301室において演習形式で実施し,資料等はすべてBlackboardから参照可能とする.
授業項目に対する達成目標に関する問題を授業中に出題し,提出を要する課題については提出方法・期限をその都度指示する.
演習科目であるため評価時の重み付けは提出課題100%であり,合格点は60点以上である.
再試験による評価の変更ができないので,すべての課題にしっかりと取り組み,要求された内容の成果物を期限内に提出しなければ合格は望めない.
提出された課題の得点が40点未満であった場合に限り,救済措置として再提出用の課題が用意されることがある.ただし,この再提出用の課題を評価に使用した場合,科目の評価点は60点を超えないものとする.
注意点:
授業もしくは授業項目毎に学習項目の演習問題を提示する.
これらを活用して自学自習に取り組み,提出の指示があった場合にはそれに従うこと.
情報処理実習室(H301)および情報システム実習室(H302)は,予習・復習・レポートの作成等のために,昼休み・放課後に開放している.
利用規則を遵守したうえで,自主的・積極的に利用し授業内容を理解するよう心がけること.

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 オブジェクト指向プログラミング(OOP)の基礎と実践 クラス,オブジェクト,スレッドの概念を理解し,プログラミングに反映させることができる.
2週 オブジェクト指向プログラミング(OOP)の基礎と実践 クラス,オブジェクト,スレッドの概念を理解し,プログラミングに反映させることができる.
3週 オブジェクト指向プログラミング(OOP)の基礎と実践 クラス,オブジェクト,スレッドの概念を理解し,プログラミングに反映させることができる.
4週 OOPによる情報源の実装(1) 指定された無記憶情報源を実現し,情報源記号の生起確率について考察できる.
5週 OOPによる情報源の実装(1) 指定された無記憶情報源を実現し,情報源記号の生起確率について考察できる.
6週 OOPによる情報源の実装(2) 指定されたマルコフ情報源を実現し,情報源記号の生起確率について考察できる.
7週 OOPによる情報源の実装(2) 指定されたマルコフ情報源を実現し,情報源記号の生起確率について考察できる.
8週 問題演習(1) 修得したスキルを活用し,要求された問題を解決できる.
4thQ
9週 OOPによる符号木の実装 ノードをオブジェクトと捉えて符号木を構成し,符号化および復号を実現できる.
10週 OOPによる符号木の実装 ノードをオブジェクトと捉えて符号木を構成し,符号化および復号を実現できる.
11週 OOPによる符号木の実装 ノードをオブジェクトと捉えて符号木を構成し,符号化および復号を実現できる.
12週 問題演習(2) 修得したスキルを活用し,要求された問題を解決できる.
13週 OOPによる符号木の実装 ノードをオブジェクトと捉えて符号木を構成し,符号化および復号を実現できる.
14週 OOPによる符号木の実装 ノードをオブジェクトと捉えて符号木を構成し,符号化および復号を実現できる.
15週 OOPによる符号木の実装 ノードをオブジェクトと捉えて符号木を構成し,符号化および復号を実現できる.
16週 問題演習(3) 修得したスキルを活用し,要求された問題を解決できる.

評価割合

提出課題合計
総合評価割合100100
基礎的能力00
専門的能力100100
分野横断的能力00