データベースとWebアプリケーション

科目基礎情報

学校 奈良工業高等専門学校 開講年度 2019
授業科目 データベースとWebアプリケーション
科目番号 0047 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 1
開設学科 情報工学科 対象学年 3
開設期 前期 週時間数 2
教科書/教材 なし(教材を適宜配布する)/「Web を支える技術-HTTP,URI,HTML,そしてREST」技術評論社 山本陽平 著 「6 時間でできるLAMP サーバ構築ガイド 」ソシム 清水正人 著 「いきなりはじめるPHP~ワクワク・ドキドキの入門教室~」リックテレコム 谷藤賢一 著
担当教員 岩田 大志

到達目標

1. 仮想マシンやファイアウォールの設定を行い,セキュリティリスクを軽減できる。
2. Web サーバのインストール,設定,Web プログラミングができる。
3. 簡単なデータベースの作成,SQL を用いたデータベースの操作ができる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1仮想マシンやファイアウォールの設定を行い,セキュリティリスクを高いレベルで軽減できる。仮想マシンやファイアウォールの設定を行い,セキュリティリスクを軽減できる。仮想マシンやファイアウォールの設定を行い,セキュリティリスクを軽減できない。
評価項目2Web サーバのインストール,設定,Web プログラミングが高いレベルでできる。Web サーバのインストール,設定,Web プログラミングができる。Web サーバのインストール,設定,Web プログラミングができない。
評価項目3高度なデータベースの作成,SQL を用いたデータベースの操作ができる。簡単なデータベースの作成,SQL を用いたデータベースの操作ができる。簡単なデータベースの作成,SQL を用いたデータベースの操作ができない。

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

準学士課程(本科1〜5年)学習教育目標 (2) 説明 閉じる

教育方法等

概要:
Web はインターネット活用の最も基本的な使い方の1 つであり,広く利用されている。本講義ではLAMP(Linux Apache MySQL PHP)を用いて動的なWeb コンテンツを提供するための基礎知識を身につけることを目的とする。
Web アプリケーションを実現するWeb サーバの構築,セキュリティ対策,Web プログラミング,データベース連携を経験し,それらを運用する能力を身につける。
授業の進め方・方法:
基本的にLinux ベースの講義となるため,CUI による操作に慣れておき,演習をスムーズに行えるよう,仮想マシンなどを有効に利用すること。また,HTML の基礎やプログラミング言語の基礎と思われる内容については解説しないので,各自で自習しておくこと。
注意点:
関連科目
1 年情報リテラシ,2 年IT 活用、プログラミングの修得を前提とする。
自己学習
目標を達成するためには,授業以外にも予習復習を怠らないこと。
授業中に終わらなかった演習については自己学習により遅れを取り戻すこと。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス 講義の目的,進め方,評価方法などについて説明し,REST の考え方について説明する。
2週 環境構築1 Linux OS のインストール,SSH サーバの設定,ファイアウォールの設定ができるようになる。
3週 環境構築2 HTTP サーバのインストール,Web ページ作成ができるようになる。
4週 Web ページ作成 HTML5/CSS/JavaScript を用いた動的Web ページ作成ができるようになる。
5週 PHPプログラミング1 PHP とHTTP サーバの連携,PHP ベースのWiki が設置できるようになる。
6週 PHPプログラミング2 PHP を利用した文献検索エンジン作成を通じて,Web プログラミングを学ぶ。
7週 Web APIプログラミング1 WebAPI を利用したWeb プログラミングを学ぶ。
8週 Web APIプログラミング2 WebAPI を利用したWeb プログラミングを学ぶ。
2ndQ
9週 データベース 関係データベース、SQL、NoSQL、JSONについて学ぶ。
10週 データベース連携プログラミング1 PHPからDBを操作する方法について学ぶ。
11週 データベース連携プログラミング2 PHP を利用したWebプログラミングを学ぶ。
12週 データベース連携プログラミング3 PHP を利用したWebプログラミングを学ぶ。
13週 データベース連携プログラミング4 PHP を利用したWebプログラミングを学ぶ。
14週 データベース連携プログラミング5 PHP を利用したWebプログラミングを学ぶ。
15週 設計レビュー 今まで学んできたWebアプリケーションの内容を使った、自分の作りたい、あったら便利なWebアプリケーションについて発表する。
16週 期末試験は実施しない

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

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。4前15
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。4前15
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。4前15
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。4前15
ソフトウェアソフトウェアを中心としたシステム開発のプロセスを説明できる。4前1,前15
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。4前15
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。4前15
コンピュータシステムシステム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを説明できる。4前15
ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。4前15
プロジェクト管理の必要性について説明できる。4前15
システムプログラムコンピュータシステムにおけるオペレーティングシステムの位置づけを説明できる。4前2
プロセス管理やスケジューリングなどCPUの仮想化について説明できる。4前2
排他制御の基本的な考え方について説明できる。4前2
記憶管理の基本的な考え方について説明できる。4前2
情報通信ネットワークプロトコルの概念を説明できる。4前2
プロトコルの階層化の概念や利点を説明できる。4前2
ローカルエリアネットワークの概念を説明できる。4前2
インターネットの概念を説明できる。4前2
TCP/IPの4階層について、各層の役割を説明でき、各層に関係する具体的かつ標準的な規約や技術を説明できる。4前2
主要なサーバの構築方法を説明できる。4前3
情報通信ネットワークを利用したアプリケーションの作成方法を説明できる。4前3
ネットワークを構成するコンポーネントの基本的な設定内容について説明できる。4前3
無線通信の仕組みと規格について説明できる。2前2
有線通信の仕組みと規格について説明できる。2前2
SSH等のリモートアクセスの接続形態と仕組みについて説明できる。4前2
基本的なルーティング技術について説明できる。2前2
基本的なフィルタリング技術について説明できる。4前2
その他の学習内容コンピュータウィルスやフィッシングなど、コンピュータを扱っている際に遭遇しうる代表的な脅威について説明できる。4前2,前10
コンピュータを扱っている際に遭遇しうる脅威に対する対策例について説明できる。4前2,前10
データモデル、データベース設計法に関する基本的な概念を説明できる。4前9,前10
データベース言語を用いて基本的なデータ問合わせを記述できる。4前9,前10

評価割合

レポート成果発表課題合計
総合評価割合402040100
基礎的能力402040100