2.1 本システムで導入するデータベース

 クライアントサーバシステムを構築する場合,構築する規模によってデータを格納する方法について考える必要がある.

 小規模なシステムを構築する場合,データはプログラムの中に組み込めばよい.しかし,本システムのような,比較的中規模なシステムを構築する場合は,データはプログラムから隔離させ,データの独立性を保つように設計する必要がある.すなわち,各モジュール間の結合はデータの授受のみに留めておくことが望まれる.

 データを管理するためには,MySQLや,PostgreSQLのような,RDBMSを導入し,それを本システムと連携させれば,高速で堅牢なデータベースを構築できる.

 しかし,RDBMSを導入するためには,利用者には,ある程度の技術的スキルが要請される.また,システムに何らかの障害が発生した場合,データを復旧するためには,SQL言語の習得を必要とする.従って,RDBMSを導入する方法は,現在の教員の平均的な技術的スキルを考えると現実的ではない.

 以上のことより,RDBMSが本来行うべき,CRUD2.1を,本システムのプログラム側で実装する必要がある.

 本システムのプログラムの内部でデータベースを管理する以上,データの形式は全く自由に設計することができる.そこで,本システムでは,PHPでライブラリが豊富にあるini,$ {\bf CSV}$ ,$ {\bf XML}$ の3つの方法を利用してデータベースを運用する.

 これらのファイル形式は,それぞれ特性があり,状況に応じて,どの方法が一番適切であるかを,比較する必要がある.次章では,これらのファイル形式について特性を検討する.

MURAYAMA Yoshiyuki
平成19年7月8日