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

科目基礎情報

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

到達目標

1) 与えられたプログラムの読解,要求仕様を満たすプログラムの作成ができる.
2) 再帰的アルゴリズムについて,実装を通して理解できる.
3) 代表的な探索アルゴリズムについて,実装を通して理解できる.
4) ソートアルゴリズム,データ構造について,計算量,安定性等の面から性能を評価できる.
5) スタックとキューについて,実装を通して理解できる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1与えられたプログラムの読解,要求仕様を満たすプログラムの作成ができる.与えられたプログラムの読解,要求仕様を満たすプログラムの基本的な作成ができる.与えられたプログラムの読解,要求仕様を満たすプログラムの作成ができない.
評価項目2再帰的アルゴリズムについて,実装を通して理解できる.再帰的アルゴリズムについて,実装を通して基本的な理解できる.再帰的アルゴリズムについて,実装を通して理解できない.
評価項目3探索アルゴリズムについて,実装を通して理解できる.探索アルゴリズムについて,実装を通して基本的な理解できる.探索アルゴリズムについて,実装を通して理解できない.
評価項目4ソートアルゴリズムについて,実装を通して理解できる.ソートアルゴリズムについて,実装を通して基本的な理解できる.ソートアルゴリズムについて,実装を通して理解できない.
評価項目5計算量について,理解と計算ができる.計算量について,基本的な理解と基本的な計算ができる.計算量について,理解と計算ができない.
評価項目6スタックとキューについて,実装を通して理解できる.スタックとキューについて,実装を通して基本的な理解できる.スタックとキューについて,実装を通して理解できない.

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

Ⅰ 人間性
Ⅱ 実践性
Ⅲ 国際性

教育方法等

概要:
この授業では,2年で学んできたプログラミングの基礎知識を要する.
第2学年で開講されている「プログラミングⅠ」は,情報処理技術者としてソフトウェア開発を行うために必要なプログラミング技法を修得することが目的であり,第3学年の「プログラミングⅡ」もそれのより高度なものである。しかし,「ソフトウェアデザイン演習Ⅰ」では,データ構造とアルゴリズムに焦点を充てる。
授業の進め方・方法:
授業は各単元において,教科書と配布資料に基づき口頭説明した上,各自プログラムを実装する.適宜参考コードを示し,各自が書いたプログラムと比較し,理解を深める。関連文書はオンラインで閲覧可とする.不定期に提出が必要な課題を課すが,授業時間内に完成しない場合は自習時間を使って完成させること.
授業内容としては,各種アルゴリズムとその計算量などの評価方法である。
また,授業態度を測る指標のひとつとして,ノート(予習・授業・復習)を確認する。
注意点:
プログラミング技術向上のためには,日頃の努力が必要である.したがって,不定期に出題される課題については,提出の要・不要を問わず,必ずすべて完成させるよう努力すること.
また,オンライン教材を活用することも望ましい.
原則,実習室で授業を行うものとするが,場合によっては遠隔でも対応可能とする.その場合の環境構築は各自行うこと.
基本的にプログラムは一人で組むが,相当考えても問題が解決しない場合は周囲の学生や教員と相談することが望ましい.当たり前のことだが,そこで教わったことは理解してかつ他の問題にも適用できるようにする努力が必要である.
提出が必要な課題において,不正コピーが見つかった場合は当該課題点を0にするなどのペナルティを与える.

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 計算量 計算量について,理解と計算ができる.
2週 計算量 計算量について,理解と計算ができる.
3週 再帰的アルゴリズム 再帰的アルゴリズムについて,実装を通して理解できる.
4週 再帰的アルゴリズム 再帰的アルゴリズムについて,実装を通して理解できる.
5週 探索アルゴリズム 探索アルゴリズムについて,実装を通して理解できる.
6週 ソートアルゴリズム ソートアルゴリズムについて,実装を通して理解できる.
7週 ソートアルゴリズム ソートアルゴリズムについて,実装を通して理解できる.
8週 ソートアルゴリズム ソートアルゴリズムについて,実装を通して理解できる.
4thQ
9週 ソートアルゴリズム ソートアルゴリズムについて,実装を通して理解できる.
10週 ソートアルゴリズム ソートアルゴリズムについて,実装を通して理解できる.
11週 ソートアルゴリズム ソートアルゴリズムについて,実装を通して理解できる.
12週 ソートアルゴリズム ソートアルゴリズムについて,実装を通して理解できる.
13週 スタックとキュー スタックとキューについて,実装を通して理解できる.
14週 スタックとキュー スタックとキューについて,実装を通して理解できる.
15週 スタックとキュー スタックとキューについて,実装を通して理解できる.
16週

評価割合

課題の体裁・内容授業態度合計
総合評価割合7030100
基礎的能力201030
専門的能力501060
分野横断的能力01010