情報工学Ⅲ・演習

科目基礎情報

学校 福島工業高等専門学校 開講年度 平成30年度 (2018年度)
授業科目 情報工学Ⅲ・演習
科目番号 0121 科目区分 専門 / 選択
授業形態 講義・演習 単位の種別と単位数 学修単位: 2
開設学科 電気工学科(R2年度開講分まで) 対象学年 4
開設期 後期 週時間数 2
教科書/教材 はじめてのAndroidプログラミング改訂版,金田浩明,SBクリエイティブ
担当教員 大槻 正伸,小泉 康一

到達目標

①連立一次方程式を解くことのできるアルゴリズムを理解し,プログラミングができる.
②Android Studioを用いてAndroid上で動くプログラミングの作成方法を理解する.
③簡単なAndroidアプリケーションソフトを作成することができる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
連立1次方程式の数値解法、Android Studio各授業項目の内容を理解し、応用できる。各授業項目の内容を理解している。各授業項目の内容を理解していない。
様々なアプリケーションプログラム授業項目の内容を理解し、応用できる。各授業項目の内容を理解している各授業項目の内容を理解していない。

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

教育方法等

概要:
前半は連立一次方程式を解くアルゴリズムを講義し,その演習を行う.さらに,最新のAndroid Studio環境を利用してAndroidアプリケーションを作成していくことにより初歩的なスマートフォンソフトウェアプログラミング技術を学ぶ.じゃんけんアプリケーションや玉ころがしアプリケーションソフトを作成していく.
授業の進め方・方法:
中間試験、期末試験をそれぞれ実施する。
定期試験の成績を70%、課題の成績を30%として総合的に評価し60点以上を合格とする。すべての課題を既定の締切時間までに正当な形で提出している者のみ再試験を受験できる。課題提出の遅れはいかなる理由によっても認めない。
注意点:
今までに学んできたコンピュータプログラミングの知識を応用することにより,スマートフォンやタブレットPC上で動作するアプリケーションソフトを自由に作成できるようになることが必要である。
したがって,今までの未収得知識が必要になった場合は自学自習により補完すること.参考書として以下を用いる:エンジニアのためのプログラミング入門 -VB.NETによるプログラミングの基礎-,大槻,小泉他編著,電気書院. 自学自習の確認方法:適切な回数分の演習課題を出題する。

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 連立一次方程式(1) ガウスジョルダンの消去法、アルゴリズム
2週 連立一次方程式(2) ガウスジョルダン法を用いたプログラミング
3週 連立一次方程式(3) さまざまな連立一次方程式を解くことのできるプログラムの作成
4週 Android Studioについて Android Studioの使い方
5週 メッセージ表示アプリケーションの作成(1) メッセージ表示をさせる プログラムの作成
6週 メッセージ表示アプリケーションの作成(2) メッセージ表示をエミュレータで表示させる
7週 中間試験  
8週 じゃんけんゲームアプリケーションの作成(1) じゃんけんゲームプログラミングの概要
4thQ
9週 じゃんけんゲームアプリケーションの作成(2) じゃんけんゲームプログラムの作成
10週 じゃんけんゲームアプリケーションの作成(3) じゃんけんゲームプログラムの実行
11週 加速度センサを用いた玉ころがしゲームアプリケーションの作成(1) 玉ころがしゲームプログラミングの概要
12週 加速度センサを用いた玉ころがしゲームアプリケーションの作成(2) 玉ころがしゲームプログラムの作成
13週 加速度センサを用いた玉ころがしゲームアプリケーションの作成(3) 玉ころがしゲームプログラムの実行
14週 プログラミング総合演習1 今までの知識を応用しプログラムを設計する
15週 プログラミング総合演習2 今までの知識を応用しプログラムを設計する
16週

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。4
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。4
変数の概念を説明できる。4
データ型の概念を説明できる。4
制御構造の概念を理解し、条件分岐を記述できる。4
制御構造の概念を理解し、反復処理を記述できる。4
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。4
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。4
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。4
主要な言語処理プロセッサの種類と特徴を説明できる。4
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。4
プログラミング言語は計算モデルによって分類されることを説明できる。4
主要な計算モデルを説明できる。4
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。4
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。4
ソフトウェアアルゴリズムの概念を説明できる。4
与えられたアルゴリズムが問題を解決していく過程を説明できる。4
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。4
整列、探索など、基本的なアルゴリズムについて説明できる。4
時間計算量によってアルゴリズムを比較・評価できることを説明できる。4
領域計算量などによってアルゴリズムを比較・評価できることを説明できる。4
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。4
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。4
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。4
リスト構造、スタック、キュー、木構造などの基本的なデータ構造を実装することができる。4
ソフトウェアを中心としたシステム開発のプロセスを説明できる。4
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。4
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。4
計算機工学整数・小数をコンピュータのメモリ上でディジタル表現する方法を説明できる。4
基数が異なる数の間で相互に変換できる。4
整数を2進数、10進数、16進数で表現できる。4
小数を2進数、10進数、16進数で表現できる。4
基本的な論理演算を行うことができる。4
基本的な論理演算を組合わせて、論理関数を論理式として表現できる。4
論理式の簡単化の概念を説明できる。4
簡単化の手法を用いて、与えられた論理関数を簡単化することができる。4
論理ゲートを用いて論理式を組合せ論理回路として表現することができる。4
与えられた組合せ論理回路の機能を説明することができる。4
組合せ論理回路を設計することができる。4
フリップフロップなどの順序回路の基本素子について、その動作と特性を説明することができる。4
レジスタやカウンタなどの基本的な順序回路の動作について説明できる。4
与えられた順序回路の機能を説明することができる。4
順序回路を設計することができる。4
コンピュータを構成する基本的な要素の役割とこれらの間でのデータの流れを説明できる。4
プロセッサを実現するために考案された主要な技術を説明できる。4
メモリシステムを実現するために考案された主要な技術を説明できる。4
入出力を実現するために考案された主要な技術を説明できる。4
コンピュータアーキテクチャにおけるトレードオフについて説明できる。4
ハードウェア記述言語など標準的な手法を用いてハードウェアの設計、検証を行うことができる。4
要求仕様に従って、標準的なプログラマブルデバイスやマイコンを用いたシステムを構成することができる。4
コンピュータシステムネットワークコンピューティングや組込みシステムなど、実用に供せられているコンピュータシステムの利用形態について説明できる。4
デュアルシステムやマルチプロセッサシステムなど、コンピュータシステムの信頼性や機能を向上させるための代表的なシステム構成について説明できる。4
集中処理システムについて、それぞれの特徴と代表的な例を説明できる。4
分散処理システムについて、特徴と代表的な例を説明できる。4
システム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを説明できる。4
ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。4
プロジェクト管理の必要性について説明できる。4
WBSやPERT図など、プロジェクト管理手法の少なくとも一つについて説明できる。4
ER図やDFD、待ち行列モデルなど、ビジネスフロー分析手法の少なくとも一つについて説明できる。4
システムプログラムコンピュータシステムにおけるオペレーティングシステムの位置づけを説明できる。4
プロセス管理やスケジューリングなどCPUの仮想化について説明できる。4
排他制御の基本的な考え方について説明できる。4
記憶管理の基本的な考え方について説明できる。4
形式言語の概念について説明できる。4
オートマトンの概念について説明できる。4
コンパイラの役割と仕組みについて説明できる。4
形式言語が制限の多さにしたがって分類されることを説明できる。4
正規表現と有限オートマトンの関係を説明できる。4
情報数学・情報理論集合に関する基本的な概念を理解し、集合演算を実行できる。4
集合の間の関係(関数)に関する基本的な概念を説明できる。4
ブール代数に関する基本的な概念を説明できる。4
論理代数と述語論理に関する基本的な概念を説明できる。4
離散数学に関する知識をアルゴリズムの設計、解析に利用することができる。4
コンピュータ上での数値の表現方法が誤差に関係することを説明できる。4
コンピュータ上で数値計算を行う際に発生する誤差の影響を説明できる。4
コンピュータ向けの主要な数値計算アルゴリズムの概要や特徴を説明できる。4
情報量の概念・定義を理解し、実際に計算することができる。4
情報源のモデルと情報源符号化について説明できる。4
通信路のモデルと通信路符号化について説明できる。4
その他の学習内容オームの法則、キルヒホッフの法則を利用し、直流回路の計算を行うことができる。4
トランジスタなど、ディジタルシステムで利用される半導体素子の基本的な特徴について説明できる。4
少なくとも一つの具体的なコンピュータシステムについて、起動・終了やファイル操作など、基本的操作が行える。4
少なくとも一つの具体的なオフィススイート等を使って、文書作成や図表作成ができ、報告書やプレゼンテーション資料を作成できる。4
少なくとも一つのメールツールとWebブラウザを使って、メールの送受信とWebブラウジングを行うことができる。4
コンピュータウィルスやフィッシングなど、コンピュータを扱っている際に遭遇しうる代表的な脅威について説明できる。4
コンピュータを扱っている際に遭遇しうる脅威に対する対策例について説明できる。4
基本的な暗号化技術について説明できる。4
基本的なアクセス制御技術について説明できる。4
マルウェアやフィッシングなど、コンピュータを扱っている際に遭遇しうる代表的な脅威について説明できる。4
データモデル、データベース設計法に関する基本的な概念を説明できる。4
データベース言語を用いて基本的なデータ問合わせを記述できる。4
メディア情報の主要な表現形式や処理技法について説明できる。4
ディジタル信号とアナログ信号の特性について説明できる。4
情報を離散化する際に必要な技術ならびに生じる現象について説明できる。4

評価割合

試験課題等相互評価態度ポートフォリオその他合計
総合評価割合70300000100
基礎的能力70300000100
専門的能力0000000
分野横断的能力0000000