- 学部・研究科
Faculty/Graduate School - 総情
- 時間割コード
Course Code - 70660
- 科目名
Course title
サブテーマ
Subtitle - システムプログラミング実習
- 授業形態/単位
Term/Credits - クラス
Class -
- 春/1
- 担任者名
Instructor - 小林 孝史
- 曜限
Day/Period - 火5
- 授業概要
Course Description
到達目標
Course Objectives -
授業種別 / Teaching Types
実験・実習・製図(対面型)
言語 / Language
日本語(Japanese)
授業概要 / Course Description
情報システムを駆動する元になっているシステムサービス(OSを含む)を動かすためには,システム全体を見据えたプログラミング能力が必要である.この実習では,プログラミング言語をある程度習得した学生を対象として,スクリプト言語を使用したシステムの自動処理や,正規表現等の知識表現手法に基づいた自動処理の設計,多言語混在環境での開発手法,ネットワークサービス等の開発に必要な技術,並列プログラミング,分散プログラミング,ハイパフォーマンスコンピューティング技術など,実用的なシステムサービス,問題解決システムの構築に役立つ技術の取得を目標としている.また,本実習は単独のプログラミング実習という位置づけではなく,専門演習,卒業研究での円滑な研究活動のサポート実習となることを目指す.
実習はすべてLinux環境(コマンド:100%,GUI:0%)で実施する.UNIXの基本(ファイル,ディレクトリ管理,エディタ,コンパイラ,ブラウザ利用等)を理解している前提で実習を行う.Sojo QWERTY(タイピング練習ツール)のUnit21で,30wpmが前提条件とする(初回に確認する).実習中にキーボード操作の補助は行わない.到達目標 / Course Objectives
①知識・技能の観点
コンピューティング系の専門演習・卒業研究で活用できる技術について習得する.
②思考力・判断力・表現力等の能力の観点
各回のテーマを理解し,必要なレポートを執筆することができる.
③主体的な態度の観点
課題について,例題に倣うだけでなく,オリジナリティを含んだプログラム等に仕上げることができる.実習に取り組む態度も重視する.授業手法 / Teaching Methods
・教員による資料等を用いた説明や課題等へのフィードバック
- 授業計画
Course Content -
授業計画 / Course Content
以下の計画で実習を行う.講義形式の事前学習動画(20〜30分)の視聴を前提として実習を行う場合がある.
コンピュータを利用した実習ではあるが,筆記用具を持参し,適宜メモを取ること.
第1回 実習計画,課題の提出方法,成績評価の方法の確認
第2回 スクリプト・プログラミング
第3回 システムサービスの起動プロセス
第4回 コンピューティングシステムの実行
第5回 分散開発手法
第6回 多言語混在開発手法
第7回 システム構築の自動化
第8回 TCP/IPサービスの基礎
第9回 ネットワークサービスの構築・実行
第10回 プログラムの並列実行
第11回 PVMによるプログラムの分散実行
第12回 MPIによるプログラムの分散実行
第13回 最終課題への取り組み(1)
第14回 最終課題への取り組み(2),まとめ
オンデマンド配信授業:「実習環境へのリモートアクセス」,授業動画60分+課題演習30分授業時間外学習 / Expected work outside of class
実習資料は事前に配布するので,実習前に目を通している前提で実習をすすめる.配布方法は第1回で説明する.
実習課題は実習時間内に完了するものはほとんどないので,空き時間を使って取り組むこと.
キーボード入力による実習であるので,タイピング速度の下限を設けている(備考欄参照のこと).タイピングに不安があるなら練習を怠らないこと.
- 成績評価の方法・基準・評価
Grading Policies /
Evaluation Criteria -
方法 / Grading Policies
定期試験を行わず、平常試験(小テスト・レポート等)で総合評価する。
受講状況の確認(チェックシート方式.チェックシートは実習時に配布する),課題の成績から総合的に判定する.配分はそれぞれ50%,50%とする.4回以上の欠席,または未提出の課題がある者は単位認定を行わないものとする.
毎回の受講状況の確認(チェックシート方式.欠席回はゼロ),課題レポートは,それぞれ100点満点(最終課題は300点満点)で採点し,それぞれの配分で集計し,成績評価を行う.採点結果は,実習終了後・課題採点後,速やかにLMS上で通知するので,受講生自身で結果を確認して,状況を把握しておくこと.基準・評価 / Evaluation Criteria・Assessment Policy
①知識・技能の観点
実習テキストの内容を理解して課題に取り組むことができているかどうか(チェックシート使用).
②思考力・判断力・表現力等の能力の観点
報告すべき事項が備わったレポートを提出できるかどうか.
③主体性の観点
①にも関わるが,時間内にチェックシートをどの程度埋められるかどうか.
- 教科書
Textbooks
配布資料により実習を行う.配布方法については第1回で説明する.
-
参考書
References 三宅英明 『新しいシェルプログラミングの教科書』 (SBクリエイティブ) 978-4797393101
アンドリュー・S・タネンバウム 他 『コンピュータネットワーク 第6版』 (日経BP) 978-4296070428
西村めぐみ 他 『macOSコマンド入門』 (技術評論社) 978-4774194035
W. Richard Stevens 他 『詳解UNIXプログラミング 第3版』 (翔泳社) 978-4798134888
Brian W. Kernighan 他 『UNIXプログラミング環境』 (KADOKAWA) 978-4048930574
片桐孝洋 『並列プログラミング入門』 (東京大学出版会) 978-4130624565
実習時に追加で指示する.
- フィードバックの方法
Feedback Method 受講状況の確認(チェックシート),課題レポートはできるだけ早く採点し,その結果を関大LMS上で通知する.疑義等がある場合は,対面で受け付ける.
- 担任者への問合せ方法
Instructor Contact 実習の前後および関大LMSで対応する.
- 備考
Other Comments Sojo QuickQWERTY(タイピング練習ツール)のUnit21で,30wpmが前提条件とする(初回に確認する).実習中にキーボード操作の補助は行わない.
プログラミング基礎実習・プログラミング実習・ネットワーク実習の受講を強く勧める(少なくとも,いずれか一つを並行履修,単位取得済みが望ましい).
実習はすべてコマンドベース内容となる.ファイル,ディレクトリ管理,エディタ,コンパイラ,ブラウザ利用等を理解している前提で実習を行う.
【オンデマンド配信授業回について】
① 配信元:授業開始後に対面または関大LMSで通知
② 配信時期/期限:授業開始後に対面または関大LMSで通知
③ 質問対応:質問は対面または関大LMSメッセージで受け付けます