科目コード | AN117 | ||||
科目名 | 情報工学基礎論(Basic Information Technologies) | 単位数 | 2単位 | ||
対象学科 | 電子情報システム工学専攻 | 対象学年 | 1年 | 開講期間 | 後期 |
科目区分 | 専門基盤科目 | 必修・選択 | 選択 | 履修/学修 | 学修 |
授業形式 | 講義 | 規定授業時数 | 15 |   | |
教員名(所属) | 孫 寧平(人間情報システム工学科) | 教員室 | 3号棟2階 | ||
使用教科書 | Brian W. Kernighan, Rob Pike, The Practice of Programming, ADDISON-WESLEY, 1999 | ||||
参考書 | Brian W. Kernighan, Rob Pike著/福崎 俊博訳,『プログラミング作法』,アスキー C.Jones著,富野壽 監訳, 『ソフトウェア品質のガイドライン』,共立出版 | ||||
科目の位置付けと 関連科目 | 関連科目は情報処理,プログラミング通論,データ構造とアルゴリズム,オペレーティングシステムとする. | ||||
科目の概要 | より良いプログラムを作ることは情報工学(IT)技術者としては欠かせない重要なことである.明瞭で,簡潔で,エレガントで,どんな状況でも正しく機能し,リソースを効率よく経済的に使用し,ニーズの変化に柔軟に対応でき,どんな環境にも難なく移植できるプログラムやソフトウェア作成のための考え方と技法を学ぶ.演習も行う. | ||||
授業方針 | 1.優れたソフトウェアを生み出す素地となる基本原則(簡潔性, 明瞭性,一般性,自動化)などを理解し応用できる.2.アルゴリズムやデータ構造を自分のプログラム中に活かせる方法をマスターできる.3.デバッグ,テスト,性能改善技術を理解し応用できる.4.実際のプログラミング作業における重要なテーマを個別に取り上げて演習などを通して効率の良いプログラムの設計と実装できる.また,開発現場でのユーザーの要求分析,ソフトウェア品質の管理方法を理解する. |
授業項目 | 時数 | 達成目標(習得すべき内容) |
概説 | 本授業の概要,授業方針,評価方法について説明する.プログラミング技法について紹介する. | |
プログラミングのスタイル | 良きプログラミングには良いスタイルが不可欠である.プログラミングスタイルの重要性を理解し応用できる. | |
アルゴリズムとデータ構造 | 探索やソート,ハッシュ法などのアルゴリズム及びデータ構造について理解しプログラミングができる. | |
プログラムの設計と実装 | アルゴリズムとデータ構造の設計及び構成について理解し,実例としてのマルコフ連鎖による文章生成プログラムを設計と実装できる. | |
インターフェイス | インターフェイスの設計と実装に関する抽象化,情報の隠蔽,リソース管理,エラー処理などの問題について理解し説明できる. | |
デバッグ・テスト | デバッグする戦略と戦術を理解し応用できる.よくあるバグの症状などを覚えるほか,デバッグ・テスト方法を適用できる. | |
性能改善 | プログラムが効率よくリソースを利用できるようにしつつ,効率が向上しても正しく安定した動作が保たれるようにする秩序立った方法を理解し応用できる.プログラムの性能を解析や計測する方法を適用できる. | |
ソフトウェア品質の管理 | 開発現場でのユーザーの要求分析,ソフトウェア品質の管理方法を理解し応用できる.グループによるワークショップを行う. |
ルーブリック | |||
評価項目 | 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
プログラミングのスタイルについての理解を演習課題で評価する. | プログラミングスタイルの重要性をよく理解し応用できる. | プログラミングスタイルの重要性を理解し応用できる. | プログラミングスタイルの重要性を理解し応用できない. |
アルゴリズムとデータ構造とプログラムの設計と実装技法について演習で評価する. | 探索やソート,ハッシュ法などのアルゴリズム及びデータ構造についてよく理解し,自力でプログラミングができる. アルゴリズムとデータ構造の設計及び構成についてよく理解し,実例としてのマルコフ連鎖による文章生成プログラムを設計と実装できる. | 探索やソート,ハッシュ法などのアルゴリズム及びデータ構造について理解し,プログラミングができる. アルゴリズムとデータ構造の設計及び構成について理解し,実例としてのマルコフ連鎖による文章生成プログラムを設計と実装できる. | 探索やソート,ハッシュ法などのアルゴリズム及びデータ構造について理解できない.プログラミングができない. アルゴリズムとデータ構造の設計及び構成について理解できない.実例としてのマルコフ連鎖による文章生成プログラムを設計と実装できない. |
デバッグ・テスト手法の理解について実技試験で評価する. | デバッグする戦略と戦術をよく理解し応用もできる.課題に要求されたデバッグとテストについて独創性ある考え方があり,学んだ方法を適用できる. | デバッグする戦略と戦術をよく理解し応用もできる.課題に要求されたデバッグとテストについて学んだ方法を適用できる. | デバッグする戦略と戦術を理解していない.課題に要求されたデバッグとテストについて学んだ方法を適用できない. |
評価方法及び 総合評価 | 【評価方法】定期試験,演習レポート評価を総合し,情報工学(IT)技術者が果たす役割の理解およびプログラミングを通じてデータ構造・アルゴリズムをデザイン及び作成し,それぞれのアルゴリズム用いて課題を解決する能力を評価する.演習レポートの提出期限は課題提示と同時に示し,期限に遅れて提出されたレポートに対し評価点は減点する.出席状況を考慮し欠課1時間に1点を減点する.【総合評価】定期試験(60%),演習レポート(40%)で評価する.60%以上の得点率で目標達成とみなす. |
学習方法 | C/C++/Javaなどのプログラミング言語を用いた実際のプログラミング例を解析しながらプログラムの設計,デバッグ,テスト,性能改善などのプログラミング技術を身につけること,優れたアルゴリズムとデータ構造を自分のプログラムの中に活かせることを望まれる. |
学生への メッセージ | |
学修単位への対応 | 学修科目とは,自学学習を含む科目を指す.本科目は1単位あたり30時間程度の自学自習が求められます. |
本校教育目標との対応 | JABEE学習教育目標との対応 |