OSSリテラシ 3

科目基礎情報

学校 松江工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 OSSリテラシ 3
科目番号 0039 科目区分 専門 / 選択
授業形態 実験・実習 単位の種別と単位数 履修単位: 2
開設学科 情報工学科 対象学年 4
開設期 後期 週時間数 4
教科書/教材 授業で用意するスライドなど
担当教員 杉山 耕一朗

到達目標

(1)Linux 管理・サーバ構築の基礎の習得
(2)スクリプト型言語 Ruby によるテキスト処理・数値データ処理の習得
(3)ソフトウェアのバージョン管理システムの習得

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1Linux 管理・サーバ構築の基礎を良く理解しているLinux 管理・サーバ構築の基礎を理解しているLinux 管理・サーバ構築の基礎が理解できていない
評価項目2スクリプト型言語を用いたデータ処理が良くできるスクリプト型言語を用いたデータ処理ができるスクリプト型言語を用いたデータ処理ができない
評価項目3バージョン管理システムを使いこなせるバージョン管理システムを使えるバージョン管理システムを使えない

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

学習・教育到達度目標 2 説明 閉じる

教育方法等

概要:
ソフトウェアなものづくりにおいて,OSS (オープンソースソフトウェア; Open Source Software) の利用は欠かせない.本演習では IoT (Internet of Things) を題材に, OSS を最大限に利用する経験やデータ処理プログラミングを自製する経験を積むことを目標とする.Raspberry Pi を用いた温度センサーの構築から始めて, サーバの構築,ネットワーク経由でのセンサー制御やデータ収集, 収集した大量のデータを解析・可視化するためのプログラミング, git, github などを使った自作プログラムの公開, を行う. 本演習を通して Linux 管理・サーバ構築, スクリプト型言語 Ruby によるテキスト処理・数値データ処理, およびソフトウェアのバージョン管理システムを学習する.
授業の進め方・方法:
授業は演習形式で行い, 毎回課題を課す. 毎回の課題レポートと期末試験の結果を総合して評価する.期末試験を40%,課題レポートを60%で評価し,60%以上を合格とする. なお, 最終成績が36点以上で不合格だった学生に限り再評価試験を実施する.また, 地域の OSS 関連イベントへ参加しレポートや作品を作成した場合は適宜加点する.
注意点:
授業中に不明な点があれば,疑問を後まで残さず,教員に質問するよう心がけること.

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 特別講演:OSS のライセンスと共同研究 OSS への理解を深める
2週 バージョン管理 (1)
git, github
バージョン管理システムを説明できる
3週 バージョン管理 (2)
git, github
バージョン管理システムを説明できる
4週 Linux 管理 (1)
LAMP 環境
Linux 管理・サーバ構築の基礎を説明できる
5週 Linux 管理 (2)
LAMP 環境
Linux 管理・サーバ構築の基礎を説明できる
6週 Ruby World Conference OSS への理解を深める
7週 Linux 管理 (3)
ラズパイでセンサー
Linux 管理・サーバ構築の基礎を説明できる
8週 Linux 管理 (4)
ラズパイでセンサー
Linux 管理・サーバ構築の基礎を説明できる
4thQ
9週 Linux 管理 (5)
ラズパイでセンサー
Linux 管理・サーバ構築の基礎を説明できる
10週 Linux 管理 (6)
サーバとセンサーの連携
スクリプト型言語を用いたデータ処理を説明できる
11週 Linux 管理 (7)
サーバとセンサーの連携
スクリプト型言語を用いたデータ処理を説明できる
12週 データ処理入門 (1)
テキスト処理・数値データ処理
スクリプト型言語を用いたデータ処理を説明できる
13週 データ処理入門 (2)
テキスト処理・数値データ処理
スクリプト型言語を用いたデータ処理を説明できる
14週 データ処理入門 (3)
テキスト処理・数値データ処理
スクリプト型言語を用いたデータ処理を説明できる
15週 期末試験 試験により習熟度を計る
16週 mruby/c ハンズオン OSS への理解を深める

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。3
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。3
変数の概念を説明できる。3
データ型の概念を説明できる。3
制御構造の概念を理解し、条件分岐を記述できる。3
制御構造の概念を理解し、反復処理を記述できる。3
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。3
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。3
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。3
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。3
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。3
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。3
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。3
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。3
ソフトウェアソフトウェアを中心としたシステム開発のプロセスを説明できる。3
システムプログラムコンピュータシステムにおけるオペレーティングシステムの位置づけを説明できる。3
プロセス管理やスケジューリングなどCPUの仮想化について説明できる。1
情報通信ネットワークプロトコルの概念を説明できる。2
プロトコルの階層化の概念や利点を説明できる。2
ローカルエリアネットワークの概念を説明できる。2
インターネットの概念を説明できる。2
TCP/IPの4階層について、各層の役割を説明でき、各層に関係する具体的かつ標準的な規約や技術を説明できる。2
主要なサーバの構築方法を説明できる。3
情報通信ネットワークを利用したアプリケーションの作成方法を説明できる。3
ネットワークを構成するコンポーネントの基本的な設定内容について説明できる。2
無線通信の仕組みと規格について説明できる。2
有線通信の仕組みと規格について説明できる。2
SSH等のリモートアクセスの接続形態と仕組みについて説明できる。3
基本的なルーティング技術について説明できる。1
基本的なフィルタリング技術について説明できる。2
その他の学習内容少なくとも一つの具体的なコンピュータシステムについて、起動・終了やファイル操作など、基本的操作が行える。3
少なくとも一つの具体的なオフィススイート等を使って、文書作成や図表作成ができ、報告書やプレゼンテーション資料を作成できる。3
少なくとも一つのメールツールとWebブラウザを使って、メールの送受信とWebブラウジングを行うことができる。3
コンピュータウィルスやフィッシングなど、コンピュータを扱っている際に遭遇しうる代表的な脅威について説明できる。2
コンピュータを扱っている際に遭遇しうる脅威に対する対策例について説明できる。2
基本的な暗号化技術について説明できる。2
基本的なアクセス制御技術について説明できる。3
マルウェアやフィッシングなど、コンピュータを扱っている際に遭遇しうる代表的な脅威について説明できる。2
データモデル、データベース設計法に関する基本的な概念を説明できる。3
データベース言語を用いて基本的なデータ問合わせを記述できる。3

評価割合

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