...

オープンソース・ソフトウェア利用マニュアル管理

by user

on
Category: Documents
6

views

Report

Comments

Transcript

オープンソース・ソフトウェア利用マニュアル管理
平成 23 年度
修士学位論文
題
目
オープンソース・ソフトウェア利用マニュアル管理システム
の開発と大学院演習への適用
報
告
者
李
田
財
学籍番号:43422534
岡山大学大学院自然科学研究科電子情報システム工学専攻
(通信ネットワーク工学系)
平成 24 年 2 月 6 日提出
指導教員
舩曵 信生 教授
オープンソース・ソフトウェア利用マニュアル管理システム
の開発と大学院演習への適用
要約
オープンソースソフトウェア(以下 OSS)では,そのソースコードをインターネットなどを通
じて無償で公開し,一定のルールの下で,誰にでもソースコードの改良・再配布を可能としてい
る.そのため OSS は,設計の公開性,低い導入コスト,高いコード品質などの利点から,現在,
企業,官庁,大学を含む多くの組織・機関において,システム開発,研究・教育活動などを目的
に,広く利用されている.同時に,大学や高専などの高等教育機関において,学生への OSS 利用
教育の必要性が益々高まっている.
多くの OSS では,
“ 開発スピードが速く,短期間でマニュアルが陳腐化する ”,
“ 同じ OSS で
も Linux ディストリビューションの違いにより導入手順や利用方法が異なる ”といった問題点が
存在する.その対策として本グループでは,ログデータを用いた OSS 利用マニュアル自動生成法
を提案している.しかし,OSS では,そのバージョンや OS 環境毎にインストールコマンドや初
期設定が異なることから,全ての環境に対応したマニュアルを個人で整備することは非常に困難
である.
そこで本研究では,コミュニティベースでのマニュアル整備を目的として,コミュニティ管理
機能を有するコンテンツマネージメントシステム Joomla!を用いた,OSS 利用マニュアル管理シ
ステムを提案する.一般ユーザ,マニュアル作成者,コミュニティ管理者,システム管理者の 4 つ
の機能で構成される提案システムを実装し,アンケートによるユーザビリティ評価実験を通じて,
その有効性を示す.
岡山大学では,OSS 導入教育のための授業として大学院創成演習が行われている.これは OSS
を利用した各種サーバ構築演習であるが,授業準備の負担の問題から,テキストのマイナーバー
ジョンアップは毎年行われているものの,対象 OS のバージョンアップなどの大きな変更は,4∼5
年に一度のペースでしか行われていない.そのため,受講年度によっては“ 古いバージョンの OS,
OSS を利用した演習 ”が行われている.また,機材準備の関係より 2∼3 名 1 組で演習が行われて
いるが,
“ 実際に操作を行った学生以外は演習時の操作内容をよく把握できない ”などの問題も生
じている.そこで本研究では,これら問題点を解決するために,提案システムを本演習に適用し,
アンケートにより評価を行った.更に,演習結果の評価をスムーズに進めるために,学生が提出
した演習レポートを自動採点するためのエラーチェック機能についても提案した.
今後の課題として,エラーチェック機能の有用性の向上と Web システムとしての実装,コミュ
ニティ機能の活用,OSS 利用マニュアル生成システムの機能向上などが挙げられる.また,来年
度以降の大学院創成演習での利用を通じて,提案システムの有効性を検証すると共に,その適切
な提案方法を見極めていく必要がある.
i
A development of a Management System for Open Source
Software Usage Manuals Using Content Management System
Abstract
The open source software (henceforth, OSS), the source code is exhibited free through the
Internet etc., improvement and redistribution of the source code are enabled under the fixed
rule at anyone. Therefore, OSS is widely used for the purpose of systems development, research,
and educational activity, from advantages, such as the glasnost of a design, low introductory cost,
and high code quality, now in many organizations including company, government office, and
university. Simultaneously, in institution of higher education, such as university and technical
college, the necessity for the OSS use education to a student is increasing increasingly.
Unfortunately, many OSSes have drawbacks that their manuals have become easily outdated
due to rapid developments of their source codes, and their installation or using methods can be
different depending on Linux distributions. To solve these problems, we have proposed an OSS
usage manual automatic generation method by using log data in installing and using the OSS.
However, this method has another problem of requiring different manuals even for the same
OSS, because installation commands or configuration parameters can be different depending on
OS distributions and OS/OSS versions.
In this paper, we propose an OSS manual management system using a content management
system “ Joomla! ” so that the manuals can be consolidated in a community. We implement
the system composed of the four functions for general users, manual creators, community managers, and system managers, and show the effectiveness through usability evaluations using a
questionnaire.
In Okayama University, the graduate school creation exercise is performed as a lesson for
OSS introduction education. Although this is the various server construction exercises using
OSS, although minor version up of the text is performed every year, a big change of upgrade
of object OS, is made only at the pace once in 4-5 years from the problem of the burden of
lesson preparation. Therefore, depending on the attendance fiscal year,“ the exercise using OS
of an old version and OSS ” is performed. In addition, although the exercise is performed by
2-3 sets one group from the relation of equipment preparation, the problem of “ being unable
to grasp well the contents of operation at the time of an exercise other than the student who
actually operated it ” has also arisen. So, the proposal system was applied to this exercise and
this research estimated by the questionnaire in order to solve these problems. Furthermore, in
order to advance evaluation of an exercise result smoothly, it proposed also about error-checking
function for grading automatically the exercise report which the student submitted.
As a future subject, improvement in the usefulness of an error-checking function, mounting
as a Web system, practical use of a community function, the improvement in functional of an
OSS use manual generative system are mentioned. Furthermore, while verifying the validity of
a proposal system through use by the graduate school creation exercise after next year, it is
necessary to discern the suitable proposal method.
ii
関連発表論文リスト
• 李田財, 村上幸一, 舩曵信生, ”CMS を用いたオープンソースソフトウェア利用マニュアル
管理システムの提案,” 電子情報通信学会技術研究報告, ET2010-125, pp. 187-192, March
2011.
• 村上幸一, 李田財, 舩曵信生, 野上保之 ”オープンソース・ソフトウェア利用マニュアル管理
システムの開発と大学院演習への適用,” 電子情報通信学会技術研究報告, ET2011, March
2012(発表予定).
iii
目次
1
まえがき
1
2
先行研究
2.1 OSS インストール支援システム . . . .
2.2 OSS 利用マニュアル自動生成システム
2.2.1 OSS 利用マニュアル . . . . . .
2.2.2 マニュアル生成の流れ . . . . .
.
.
.
.
2
2
3
3
4
.
.
.
.
.
.
.
.
.
.
5
5
5
5
6
6
6
6
8
9
10
.
.
.
.
.
.
.
.
.
13
13
13
14
14
14
14
16
16
17
.
.
.
.
18
18
18
18
19
3
4
5
CMS を用いたマニュアル管理システム
3.1 システムの概要 . . . . . . . . . . .
3.1.1 システムの構成 . . . . . . .
3.1.2 利用した OSS の概要 . . . .
3.1.3 システムの機能 . . . . . . .
3.2 実装 . . . . . . . . . . . . . . . . .
3.2.1 一般ユーザ機能 . . . . . . .
3.2.2 マニュアル作成者機能 . . .
3.2.3 コミュニティ管理者機能 . .
3.2.4 システム管理者機能 . . . .
3.3 評価 . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
大学院演習への適用
4.1 大学院創成演習の概要 . . . . . . . . . . . .
4.2 提案システムの概要 . . . . . . . . . . . . .
4.3 大学院演習の準備 . . . . . . . . . . . . . . .
4.3.1 大学院演習の環境 . . . . . . . . . . .
4.3.2 Web テキストの作成 . . . . . . . . .
4.3.3 OSS マニュアル管理システムの準備
4.4 評価 . . . . . . . . . . . . . . . . . . . . . .
4.4.1 評価方法 . . . . . . . . . . . . . . . .
4.4.2 アンケート結果 . . . . . . . . . . . .
エラーチェック機能
5.1 機能の概要 . . . . . .
5.2 エラーチェックの方法 .
5.3 開発環境及び画面構成
5.4 実行結果 . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
関連研究
20
7
むすび
21
謝辞
22
参考文献
23
iv
1
まえがき
オープンソースソフトウェア(以下 OSS)では,そのソースコードをインターネットなどを通
じて無償で公開し,一定のルールの下で,誰にでもソースコードの改良・再配布を可能としてい
る.そのため OSS は,設計の公開性,低い導入コスト,高いコード品質などの利点から,現在,
企業,官庁,大学を含む多くの組織・機関において,システム開発,研究・教育活動などを目的
に,広く利用されている [1].同時に,大学や高専などの高等教育機関において,学生への OSS 利
用教育の必要性が益々高まっている.
多くの OSS では,
“ 開発スピードが速く,短期間で新しいバージョンがリリースされ,マニュ
アルや教材が陳腐化する ”,
“ 同じ OSS でも Linux ディストリビューションの違いにより,その
導入手順や利用方法が異なる ”といった問題点が存在する [2].特に,多くの OSS は,ボランティ
アベースで開発が進められるために,マニュアル作成のための時間が取れないと言った問題点が
ある.
本グループでは,先行研究として,OSS 利用における以上の問題点を解決するために,OSS 利
用マニュアル作成の省力化を目的とした OSS 利用マニュアル自動生成法を提案している [3][4].本
手法では,熟練者による OSS のインストール時や利用時のログを保存し,そのデータを加工する
ことで,Web ベースのマニュアルを自動生成する.ユーザが入力すべきコマンドを示すテキスト
マニュアルと,その際のシステムの変化を参照可能な動画マニュアルで構成されている.しかし,
OSS 環境の激しい変化に対応するには,OSS 利用マニュアルをコミュニティベースで生成・管理
する必要がある.
そこで本研究では,新たに,コンテンツマネジメントシステム(CMS)を用いたマニュアル管
理システムを提案する.本システムでは,CMS として,Joomla!1.5 [7] を採用している.Joomla!
はコミュニティー管理機能に特徴のある CMS であり,OSS 利用マニュアルをコミュニティー単位
で作成・管理することに適している.本システムの評価として,岡山大学大学院での OSS 導入演
習への適用結果を報告する.その際,演習結果の評価をスムーズに進めるために,学生からの演
習レポートを自動採点するためのエラーチェック機能についても提案する.
以下に本論文の構成を述べる.2 章において先行研究の概要を述べる.3 章において OSS 利用マ
ニュアル管理システムの概要について述べる.4 章において大学院演習への適用について述べる.
5 章においてエラーチェック機能について述べる.6 章において関連研究について述べる.最後に,
7 章において本論文をまとめる.
1
先行研究
2
2.1
OSS インストール支援システム
本システムは,マニュアル自動生成機能と,マニュアル管理のためのマニュアル管理 Web デー
タベース機能から構成される.マニュアル自動生成機能では,OSS 利用の熟練者による,OSS の
インストールや設定のための操作ログをログファイルに記録し,それを用いてマニュアルを自動
生成する.マニュアル管理 Web データベース機能では,生成された個別 OSS のインストールマ
ニュアル(以下,個別マニュアル)をデータベース上で管理し,複数の個別マニュアルを連携し
た上で表示することができる.図 1 に本システムの概要を示す.また,以下にマニュアル生成・管
理のための処理手順を示す.
①マニュアルのアップロード
② シナリオ情報の登録
⑤必要に応じて,マニュアル情
報削除,シナリオ情報の変更
システム
管理者
マニュアル
作成者
④指定マニュアルの表示
③マニュアル選択機能,
マニュアル検索機能により,
利用マニュアルを指定
XOOPS1.6 Vine4.2
一般ユーザ
図 1: マニュアル自動生成システムの概要
1 OSS インストールマニュアル作成者(以下,マニュアル作成者)が,マニュアル自動生成機
⃝
能により個別マニュアルの作成を行い,Web サーバへアップロードする.
2 マニュアル作成者が,複数 OSS 間連携のための,パッケージ間の依存関係を記載したシナ
⃝
リオ情報(以下,シナリオ情報)を,データベースに登録する.
3 マニュアル利用者が,ブラウザ上のフォーム画面において,インストールしたい OSS コア
⃝
パッケージの指定を行う.
4 マニュアル管理 Web データベースシステムが,Web サーバにおいて,OSS コアパッケージ
⃝
および,コアパッケージのインストールに必要な,関連する個別マニュアルを合成し,Web
ブラウザに表示する.
2
5 システム管理者は,必要に応じてマニュアル情報の削除や,シナリオ情報を変更することが
⃝
できる.
2.2
OSS 利用マニュアル自動生成システム
図 2 に OSS 設定マニュアル自動生成システムの概要を示す.本システムは基本マニュアル生成
機能,編集機能,表示機能の3つの機能から構成される.以下に各機能の概要を示す.
図 2: OSS 利用マニュアル自動生成システムの概要
• 基本マニュアル生成機能
初期状態の設定ファイルと,編集後の設定ファイルの差分情報 (行数情報,編集内容情報) を
抽出し,行数情報ファイル,編集内容ファイルにそれぞれ書き込む.また,編集箇所に対応
する説明文を,行数と説明文を対応させた上でテキストファイルに保存する.これら3つの
ファイルを元に基本マニュアルを自動生成する.
• 編集機能
ログファイルから取得することが難しい補足説明などの情報を,Web 上のフォーム画面より
入力し,基本マニュアルへ追記する.
• 表示機能
完成した設定マニュアルを,Web ブラウザ上で表示する.
2.2.1
OSS 利用マニュアル
本研究では,従来のインストールマニュアルと設定マニュアルを統合したマニュアルを,OSS 利
用マニュアルとして新たに定義する.図 3 に,OSS 利用マニュアルの例を示す.OSS 利用マニュ
アルは,操作手順表示部,入力コマンド表示部,操作内容提示部,入出力結果表示部,設定マニュ
アル表示部の5つの画面から構成され,入出力結果表示部分に従来の OSS インストールマニュア
ルの情報が,設定マニュアル表示部分に OSS 設定マニュアルの情報がそれぞれ表示される.
3
図 3: OSS 利用マニュアルの例
2.2.2
マニュアル生成の流れ
マニュアル生成の流れを図 4 に示す. 初めに,OSS 利用熟練者が OSS のインストール・設定
を行う.システムは操作ログ情報をテキスト及び動画の形で取得した上で,OSS インストールマ
ニュアル,OSS 設定マニュアルをそれぞれ生成する.次に,生成マニュアルの情報をテンプレー
トに埋め込んだ上で,Web ページレイアウト最適化法 [8] を用いてレイアウトの最適化処理を行
う.その際の優先順位は,1.入力コマンド表示部分,2.操作内容提示部分,3.入出力結果表
示部分,4.設定マニュアル表示部分,5.操作手順表示部分の順とした.また最後に Web サー
バにより,マニュアルを Web ページとして配信する.
ঐॽগ॔ঝ੿ਛ
ਈి৲૪৶
ঐॽগ॔ঝଦਦ
䝁䝬䞁䝗䠍
䝁䝬䞁䝗䠎
টॢभ਄੭
ঐॽগ॔ঝেਛ
েਛखञঐॽগ
॔ঝष‫؜‬ঞॖ॔
क़ॺਈి৲১॑
ి৷
HTML,CSS,AJAX䜢
WEB䝨䞊䝆䛸䛧䛶
㓄ಙ
図 4: マニュアル生成の流れ
4
CMS を用いたマニュアル管理システム
3
3.1
3.1.1
システムの概要
システムの構成
提案システムでは,その核となるソフトウェアプラットフォームとして,XAMPP Linux 1.7.3a[6],
および,Joomla!1.5[7] を使用する.図 5 に,提案システムのソフトウェア構成を示す.Joomla!は
バックエンドとフロントエンドの2つの管理画面から構成されており,バックエンドではシステ
ム設定,マニュアル作成や,エクステンション・テンプレートの追加などを行うことができる.ま
たフロントエンドは,サイト訪問者が閲覧するページである.
図 5: 提案システムのソフトウェア構成
3.1.2
利用した OSS の概要
本節では,システム開発に利用した OSS について説明する.
1. XAMPP
XAMPP(ザンプ)とは,Web アプリケーションの実行に必要な各種 OSS をまとめた OSS
パッケージである.本システムで採用した XAMPP Linux 1.7.3a では,Apache(Web サー
バ),MySQL(SQL データベースサーバ),PHP(Web プログラミング言語),Perl(Web プ
ログラミング言語)の4つの主要ソフトウェアと,phpMyAdmin などの管理ツール,さら
に SQLite などのいくつかの補助的なソフトウェア・ライブラリモジュールをパッケージ化
している.本来,これら OSS は個々にインストールする必要があり負担が大きい.しかし
XAMPP ではこれら各種 OSS をパッケージングすることにより,一括してインストールす
ることができる.そのため開発や運用を手軽に開始することができる.しかし XAMPP で
は,パッケージ化する特性上,個々の OSS のバージョンが必ずしも最新版で揃えられてい
るとは限らない.特にドライバモジュールに古いまま更新されていないものが含まれるケー
スもあるが,開発用・学習用としては十分な機能を有している.
2. Joomla!
Joomla!(ジュームラ)はサイト(コンテンツ)の構築を一元的に管理するためのコンテン
ツマネージメントシステムである.システムは PHP で記述されており,MySQL データベー
スを使ってコンテンツを管理している.Joomla!では複数人でブログなどのコンテンツの作
5
成や管理を行ったり,認証機能を用いた会員専用ページの作成,E コマース,投票,サイト
内検索,RSS フィードなど様々な機能を利用することができる.高機能,多言語対応から,
世界中にユーザが存在し,追加機能であるエクステンションの作成やデザインテンプレート
などを提供している.
3.1.3
システムの機能
本システムは,一般ユーザ機能,マニュアル作成者機能,コミュニティ管理者機能,システム
管理者機能の 4 つの機能から構成される.以下に,各機能の概要について述べる.
• 一般ユーザ機能
一般ユーザ機能は,マニュアル利用者を対象とした機能である.参照したいマニュアルをカ
テゴリーから選択できる「マニュアル選択機能」と,検索条件を直接指定する「マニュアル
検索機能」から構成される.
• マニュアル作成者機能
マニュアル作成者機能は,マニュアル作成者を対象とした機能である.
「メニュー管理」,
「セッ
ション管理」,
「カテゴリー管理」,
「記事管理(作成,編集)」の4つの管理画面から構成さ
れる.
• コミュニティ管理者機能
コミュニティ管理者機能は,マニュアル利用者,マニュアル作成者の所属するコミュニティ
を管理する機能である.マニュアル作成者機能に加え,
「記事管理(発行)」,
「ユーザ管理機
能(フロントエンド)」で構成される.
• システム管理者機能
システム管理者機能は,システム管理者を対象とした機能である.
「ユーザ管理機能(バック
エンド)」,
「モジュール管理機能」,
「拡張機能管理機能」の3つから構成される.
3.2
3.2.1
実装
一般ユーザ機能
一般ユーザ機能では,OSS を代表的な 6 つのカテゴリー [9] である,Web サーバ,Web アプリ
ケーション,ファイルサーバ,データベースサーバ,運用開発ソフト,オフィススイートに分類
し,このカテゴリーから目的のマニュアルを選択し,閲覧することを可能としている.また,マ
ニュアル詳細検索機能により OSS バージョン,OS ディストリビューションなどのキーワードで
検索を行い,目的のマニュアルを検索することも可能としている.
3.2.2
マニュアル作成者機能
1. メニュー管理
メニューの新規作成,既存メニューの編集,削除を行うことができる.本システムでは,一
般ユーザ向けメニューと,コミュニティ登録ユーザ(マニュアル作成者)向けの 2 種類のメ
ニューを実装した.図 6 に,メニュー管理画面を示す.一般ユーザ向けメニューでは,6 種
類(Web サーバ,Web アプリケーション,ファイルサーバ,運用開発ソフト,オフィスス
イート)にカテゴリー分けしたメニューを実装している.登録ユーザ向けメニューでは,一
6
般ユーザ向けメニューに加え,マニュアルアップロード,トップページ掲示板更新,マニュ
アル情報削除,マニュアル情報編集などの各機能がメニューに追加される.また外部リンク
を用いて,先行研究において開発した設定マニュアル自動生成システムと連携することも可
能としている.
図 6: メニュー管理画面
2. セッション管理
図 7 に,セッション管理画面の例を示す.本システムでは,一般ユーザとコミュニティ登録
ユーザを区別するために,2 つのセッションを用意し,それぞれのセッション情報を管理する.
図 7: セッション管理画面
3. カテゴリー管理
図 8 に,カテゴリー管理画面を示す.本システムでは,一般ユーザ向けに 6 種類のカテゴ
7
リー分けを行っているが,カテゴリー管理画面から,これらカテゴリーの追加,変更,削除
を行うことを可能としている.また,それぞれのカテゴリープロパティを管理することもで
きる.
図 8: カテゴリー管理画面
4. 記事管理(作成,編集)
図 9 に,記事管理画面を示す.Joomla!では管理対象のコンテンツを「記事」と呼び,追加,
編集,削除を行うことができる.本システムでは,マニュアルが記事にあたる.マニュアル
を作成する際にはセッションとカテゴリーを設定する必要があるが,これにより,マニュア
ルがどのカテゴリに所属するかを明確にすることができる.
3.2.3
コミュニティ管理者機能
1. 記事管理(発行)
コミュニティ管理者は,登録済みマニュアルの,公開開始日と公開終了日を設定することに
より,マニュアルの公開・発行を管理することができる.
2. ユーザ管理機能(フロントエンド)
図 10 に,ユーザ管理画面を示す.ユーザ管理機能は,本システムのユーザを対象とした機
能である.フロントエンドユーザ管理,バックエンドユーザ管理のために,2種類のユーザ
グループが設定される.フロントエンドユーザは,登録者,作者,エディタ,発行者の順に
権限を細分化することができる.登録者は,登録済みのコミュニティ内の情報のみ閲覧する
ことができる.作者は,コミュニティ内のマニュアルの閲覧に加え,マニュアルを投稿する
ことができる.但し,投稿したマニュアルの公開には,発行者による承認が必要である.エ
ディタは,コミュニティ内の他のマニュアル作成者が作成したマニュアルを編集することが
できる.発行者は,マニュアルの編集権限に加え,マニュアルの公開・発行権限を持つ.本研
究では,登録者,作者,エディタまでの権限をマニュアル作成者に,発行者の権限をコミュ
ニティ管理者に,それぞれ付与している.
8
図 9: 記事管理画面
図 10: ユーザ管理画面
3.2.4
システム管理者機能
1. ユーザ管理機能(バックエンド)
バックエンドユーザの権限として,管理,管理者,サイト管理者の権限に細分化することが
でき,必要に応じて各権限の管理者を設定することができる.管理の権限を持つユーザは,
バックエンド画面にログインでき,マニュアル管理を行うことができる.本システムではマ
ニュアル作成者に管理の権限を付与している.管理者の権限を持つユーザは,管理の権限に
加え,メニュー管理機能及びユーザ管理機能を持つ.コミュニティ管理者がこれにあたる.
9
サイト管理者は,システムのすべて権限を持つ.システム管理者がこれにあたる.
2. モジュール管理機能
図 11 に,モジュール管理画面を示す.モジュール管理機能は,Joomla!の標準モジュールを
利用するための機能である.本システムでは,メニュー管理,セッション管理,ログイン機
能などで構成されるモジュールの配置,表示,各コンテンツのリンク関係を管理している.
また,検索モジュールでは,OSS バージョン,OS ディストリビューションのキーワード検
索を行うことができる.
図 11: モジュール管理画面
3. 拡張機能管理
図 14 に,拡張機能管理画面を示す.拡張機能管理では,Joomla!の標準モジュールに存在し
ない拡張機能(エクステンション)の実装を可能とする.本システムでは,OSS 利用マニュ
アルを構成するテキスト情報と GUI 操作ログを保存した動画ファイルをアップロードする
ために,Jce[10] と呼ばれるエクステンションをインストールした.これにより,マニュアル
のカスタマイズを可能にしている.各種エクステンションを追加することにより,他の開発
者が開発した多様な機能を利用することができる.また,Joomla!の機能を用いてエクステ
ンションを開発することも可能である.
3.3
評価
本章では,提案システムの評価実験について述べる.被験者として,本学工学部4年生から修士
2年生までの7名に本システムを利用してもらい,本システムのアンケート機能を利用してユー
ザビリティ評価を行った.表 1 にアンケートでの設問を示す.各設問に対して,5 段階で解答して
貰った.評価の観点として,設問 1,2 では一般ユーザとしてシステムを使う場合の評価,設問 3
∼6 ではマニュアル作成者としてマニュアルを作成する際の利便性,有用性を確認した.アンケー
ト結果について表 2 に示す.
10
図 12: 拡張機能管理画面
設問 1
表 1: アンケートの設問
カテゴリーから容易にマニュアルを探せましたか.
設問 2
検索機能は使い易いですか.
設問 3
マニュアルの投稿は容易でしたか.
設問 4
マニュアルの編集機能は使い易いですか.
設問 5
マニュアルを容易に公開できましたか.
設問 6
本システムは使い易いと思いますか.
表 2: アンケート結果(5 段階評価)
設問 1
探せなかった
設問 2
非常に使いにくい
設問 3
非常に難しい
設問 4
非常に使いにくい
設問 5
公開できなかった
設問 6
非常に使いにくい
1
0
0
0
0
0
0
2
1
0
1
0
0
0
3
1
1
4
1
1
0
4
2
1
2
3
3
5
5
3
5
0
3
3
2
容易に探せた
非常に使い易い
非常に容易
非常に使い易い
容易に公開できた
非常に使い易い
設問 1 は,カテゴリー区分の有用性に関する設問である.良いと答えたユーザが過半数を超え
ており,カテゴリー区分に問題はないと言える.しかし,悪いと答えたユーザも散見され,今後,
カテゴリー区分の見直しも,一部必要と考えられる.設問 2 は,マニュアル検索機能の使い易さ
に関する設問である.非常に良いと答えたユーザが過半数を超えており,検索機能に問題ないと
言える.設問 3 は,マニュアル投稿の容易さに関する設問である.普通と答えたユーザが過半数
を超えており,今後,改善が必要と考えられる.設問 4 は,マニュアル編集の容易さに関する設問
である.良いと答えたユーザが過半数を超えており,編集機能に問題はないと言える.設問 5 は,
マニュアル公開の容易さに関する設問である.良いと答えたユーザが過半数を超えており,公開
11
機能に問題はないと言える.設問 6 は,本システムの使い易さに関する設問である.良いと答え
たユーザが過半数を超えており,本システムの使い勝手に問題はないと言える.
12
大学院演習への適用
4
4.1
大学院創成演習の概要
大学院創生演習(以下,大学院演習)では,大学院教育の実質化を目的として,UNIX 系 OS を
ベースとした種々のサービス(Web サーバ,メールサーバなど)や OSS の導入,設定についての
実習を行い,その仕組みを理解する.演習形態は 2 名∼3 名で班を組み,1 班につき 2 つ以上のサー
ビス・OSS について PC,LAN 環境を用いて構築する.図 13 に従来の大学院演習の概要を示す.
図 13: 従来教育の概要
従来教育では,TA(修士2年生が担当)が事前にOSや各種サーバ構築ためのテキストマニュ
アルを作成する.受講生(修士 1 年生)は班単位でそのテキストマニュアルを印刷し,演習時に参
照しながら 2 つ以上のサービス・OSS を立ち上げる.受講生は自身のグループで取り組んだサー
ビス・OSS を示し,困った点,工夫した点についてまとめレポートを提出する.
4.2
提案システムの概要
提案システムでは,TA がマニュアル自動生成システムを用いてWebマニュアル(以下,テキ
スト)を自動生成する.テキストはマニュアル管理システムを通じて公開する.受講生は Web ブ
ラウザ上でテキストを参照しながら演習を行う.加えて演習操作中にマニュアル自動生成システ
ムを動作させることにより,自身の演習時の操作履歴をマニュアルの形で残し,レポートを作成
時にその情報を確認できる.また,学生の演習時のトラブルシューティングや教員がレポートの
自動採点を行うためにエラーチェック機能を試作した.図 14 に提案システムの概要を示す.また,
以下に各プロセスの詳細を述べる.
1 TA はマニュアル自動生成システムを用いて OSS 導入のためのについてテキストを作成す
⃝
る.またマニュアル管理システムにアップロードする.
2 受講生は Web ブラウザ上でテキストを閲覧することができる.演習時には必要なテキスト
⃝
を参照しながら,OSS の導入を行う.
3 演習操作中にバックグランドでマニュアル自動生成システムを動作させる.このことにより
⃝
自身の演習時の操作履歴をマニュアルの形で残すことができる.また生成マニュアルをマ
ニュアル管理システムにアップロードすることにより,グループ内の他のメンバと情報共有
を行うことができる.
13
図 14: 提案システムの概要
4 学生の提出したレポートを教員側でエラーチェック機能を用いて自動採点することができる.
⃝
また,学生側でもエラーチェック機能により事前に不備箇所を見つけることができる.
4.3
4.3.1
大学院演習の準備
大学院演習の環境
本節では,大学院演習の演習環境及び提案システムの環境について説明する.提案システムを
用いた教育法(以下,提案法),従来型の教育手法(以下,従来法)ともに同一機種の PC(Intel
Celeron(R) 2GHz, メモリ 256MB)を用いた.今回は演習の一部に提案法を試験的に導入したこ
とから,提案法では OS として CentOS 5.6 を,従来法では,FreeBSD6.2 をそれぞれ用いた.
4.3.2
Web テキストの作成
OSS 導入のための市販テキスト [11] の内容を参考に,事前にテキストを作成した.図 15 にテキ
ストの例を示す.
4.3.3
OSS マニュアル管理システムの準備
OSS 利用マニュアル管理システムのマニュアル作成者向け機能のうち,メニュー管理機能,カ
テゴリ管理機能,記事管理機能の3つを利用した.まず,メニュー管理機能では「大学院創成演
習」メニューを作成した (図 16).
14
図 15: Web テキスト例
図 16: 大学院演習のメニュー例
次にカテゴリ管理機能を利用して「Webサーバ演習,FTPサーバ演習,SSHサーバ演習」
の3つのカテゴリを作成した (図 17).
最後に記事管理機能を利用して各マニュアルのアップロードを行った (図 18 に,Web サーバ演
習に所属する記事例を示す).
図 19 に,OSS 利用マニュアル管理システムでの Web テキスト公開例を示す.
15
図 17: 3つのサービスのカテゴリ例
図 18: Web サーバ演習に所属する記事例
4.4
4.4.1
評価
評価方法
提案システムによる Web マニュアルの評価として,利用した修士1年生6名へのアンケートを
行った.表 3 にアンケートの設問を示す.設問 1,2 では従来のテキストマニュアルと本 Web マ
ニュアルの比較,設問 3∼5 ではレポート作成のための支援機能,設問 6 ではグループの情報共有
16
図 19: マニュアルの公開例
の評価を狙いとした.各設問に対して 1∼4 の 4 段階で回答してもらった.
設問 1
設問 2
設問 3
設問 4
設問 5
設問 6
4.4.2
表 3: アンケート設問
Web マニュアルはわかりやすいと思いましたか.
従来のテキストマニュアルはわかりやすいと思いましたか.
操作マニュアルの作成は容易でしたか.
生成されたマニュアルは復習に利用できると思いますか.
生成マニュアルをレポート作成時に参考にしましたか.
グループでの情報共有が容易になると思いますか.
アンケート結果
アンケート回答結果の平均値を表 4 に示す.設問 1,2 より,従来マニュアルに比べ Web マニュ
アルの方がわかりやすいといった傾向が伺える.設問 3∼5 より,操作マニュアルの生成は容易で
あったことが伺える.また,生成した操作マニュアルをレポート作成の参考とした学生が多く見
られた反面,システム上の不備から文字化けした箇所も多く,復習への利用では低い評価に留まっ
たこともわかる.設問 6 では,多くの学生が班内での情報共有が容易になると回答している.
設問 1
表 4: アンケート集計結果
設問 2 設問 3 設問 4 設問 5
設問 6
3.2
2.7
3.0
2.7
2.8
3.5
4:思う,3:少し思う,2:あまり思わない,1:思わない
17
5
5.1
エラーチェック機能
機能の概要
学生による演習時のトラブルシューティングと,教員によるレポートの自動採点を目的として,
エラーチェック機能を試作した.図 20 に本機能の概要を示す.
図 20: エラーチェック機能の概要
5.2
エラーチェックの方法
本機能では,TA が作成した Web マニュアルの入力コマンドおよびその実行結果を正解として,
受講生が作成したマニュアルとの比較を行い,採点を行った.
5.3
開発環境及び画面構成
今回,開発期間の関係から,クライアント PC 上でのアプリケーションとして,本機能を実装
した.開発環境,画面構成例を図 21 に示す.また,6 つの機能の詳細を以下に示す.
図 21: エラーチェック機能の開発環境と画面例
18
1 正解(入力コマンド)の確認機能では,全ての正解入力コマンドを確認できる.
⃝
2 正解(実行結果)確認機能では,全て正解実行結果を確認できる.
⃝
3 受講生の入力コマンドの確認機能では,受講生が提出したレポート内の全ての入力コマンド
⃝
を確認することができる.
4 受講生の実行結果の確認機能では,受講生が提出したレポート内の全ての実行結果を確認で
⃝
きる.
5 コマンドの自動採点機能では,受講生が提出したレポート内の全ての入力コマンドと正解な
⃝
入力コマンドを比較し,正答コマンドの割合を表示する.
6 実行結果の自動採点機能では,受講生が提出したマニュアルの全ての実行結果と正解の実行
⃝
結果を比較し,一致する実行結果の割合を表示する.
5.4
実行結果
図 22 に入力コマンドと,本機能の実行結果の確認画面を示す.これらは別画面で表示されるが,
行番号の表示により,互いに参照することが可能である.図 23 に本機能による入力コマンドの自
動採点結果の例を示す.ここでは,正解したコマンド数を表示することができる.
図 22: 入力コマンドと実行結果の確認画面の例
図 23: 入力コマンド自動採点結果の例
19
6
関連研究
関連研究について,類似システムとの比較,オープンソース教育,レポート自動採点の3つの
観点からまとめる.
• 類似システムとの比較
汎用的なコンテンツ・マネージメントシステム(以下,CMS)と提案システムを比較する.
XOOPS[12] は,PHP 言語と MySQL を用いた CMS である.コミュニティサイト,企業・
学校のサイト,自治体や地域ポータルのサイト,社内グループウェアなどにおいて,広く活
用されている.また,XOOPS では「モジュール」と呼ばれるプラグイン型プログラムが数
多く配布されており,既存の「モジュール」を組み込むことにより,機能を自由に追加でき
る.Geeklog[13] は,XOOPS と同様に PHP 言語と MySQL を用いた CMS であり,一般的
なサイトから高機能なポータルサイトまで様々なサイト構築を行うことができる.システム
を簡単に拡張するプラグインシステムが採用されている.しかし,これらのシステムでは,
コミュニティ作成機能がサポートされておらず, OSS 利用マニュアルの共同管理・編集に
は不向きである.Wiki[14] は,Web ブラウザを利用して Web サーバ上のハイパーテキスト
文書を書き換えるシステムであり,共同での文書作成作業に適している.この特徴から,コ
ラボレーションツールやグループウェアとしても活用されることが多いが,文書管理が中心
であり,本システムのように動画を含むマニュアルを管理することは難しい.
• オープンソース教育
大崎 [15] らは,
「学びが組み込まれたコミュニティー」という観点に着目して,オープンソー
ス教育概念モデルの提案を行った.ここでは,コンピュータリテラシー及びコンピュータサ
イエンスの知識・スキルをベースとした創造,設計,運用などの共同作業を教育実践と位置
づけ,
「公開されている共有教材を利用して,世界中のコミュニティで再教育実践が行われ,
共有教材は共有財として再生産・再分配される」という一連の循環プロセスをオープンソー
ス教育と定義した.坊垣 [16] らは,オープンソース教育においては,利用技術,開発技術の
方法論だけではなく,オープンソースの力の源泉である開発モデルを理解することも重要で
あるとして,開発プロセスから見たオープンソースの優位性と社会的影響力について検討を
行っている.しかし,いずれの研究も教育モデルの提案や分析に留まり,教育実践報告は行
われていなかった.
• レポート自動採点
津森 [17] らは,自由記述形式レポートの自動採点について研究を行った.しかし津森らの研
究では主にレポートの体裁を整えさせることに主眼をおいていた.そのためレポートの主要
部分の評価は教員が直接採点している.また 渡邊 [18] らは,C プログラミング演習のレ
ポート自動採点システムを提案している.渡邊らの研究では,書式の不備や剽窃レポートの
検出を行っていた.いずれの研究でも学生演習時のトラブルシューティングの観点での研究
は行われていない.
20
7
むすび
本研究では,コミュニティベースでの OSS マニュアル整備を目的として,コンテンツマネージ
メントシステム Joomla!を用いた,OSS 利用マニュアル管理システムを提案した.一般ユーザ,マ
ニュアル作成者,コミュニティ管理者,システム管理者の 4 つの機能で構成される提案システム
を実装し,アンケートによるユーザビリティ評価実験を通じて,その有効性を示した.今後の課
題として,アンケート結果で得られた課題の改善,マニュアル自身に OS ディストリビューション
情報・OSS バージョン情報を埋め込むことによる検索性の向上,提案システムの一般公開による
評価,などが挙げられる.一方,コミュニティベースでの OSS マニュアル整備を目的として,コ
ンテンツマネージメントシステム Joomla!を用いた,OSS 利用マニュアル管理システムを開発し
た.また,提案システムを大学院演習に適用した教育実践事例について報告した.さらに,エラー
チェック機能について提案した.今後の課題として,提案システムの大学院演習への本格的な導
入,エラーチェック機能の実装などが挙げられる.
21
謝辞
本研究の遂行ならびに論文作成において,ご指導を賜りました舩曵信生教授に心から感謝致し
ます.
本研究を進める当たり,システムの開発や,論文の作成,創生演習の実験など数々の貴重なご
指導を頂きました,香川高等専門学校電気情報工学科の村上幸一助手に,心から感謝致します.
本研究を進める当たり,大学院院創生演習でご協力を頂きました,自然科学研究科の野上保之
准教授に,心から感謝致します.
本研究を進めるに当たり,数々のご指導を頂きました中西透准教授,渡邊寛助教に深謝致しま
す.
本研究に関する評価実験にご協力を頂きました,2011 年度「大学院創生演習」受講生の皆様に
心からお礼申し上げます.
最後に,種々ご協力と御助言頂いた研究室の皆様に感謝致します.
22
参考文献
[1] 株式会社三菱総合研究所, アジアオープンソースソフトウェア人材育成基盤整備事業報告書
「OSS 技術者のスキルセット調査, 2005.
[2] 独立行政法人情報処理推進機構,“ OSS 技術教育のためのモデルカリキュラムに関する調査
「調査 3:我が国の教育・研修機関が提供する OSS 技術教育の現状とギャップ分析」”, 2007.
[3] 村上幸一, 舩曵信生, 徳永秀和, 重田和弘, 中西透, “ 操作ログを用いたオープンソースソフト
ウェアのインストールマニュアル自動生成法の提案, ” 情処論, vol. 50, no. 3, pp. 926-939,
March 2009.
[4] 香川恵里奈, 村上幸一, 舩曵信生, “ Web によるオープンソースソフトウェア・設定マニュア
ル自動生成法の提案, ” 信学技報 NS2010-140, pp. 209-214, Dec. 2010.
[5] 李田財, 村上幸一, 舩曵信生, ”CMS を用いたオープンソースソフトウェア利用マニュアル管
理システムの提案,” 電子情報通信学会技術研究報告, ET2010-125, pp. 187-192, March 2011.
[6] XAMPP for Linux
http://www.apachefriends.org/jp/index.html
[7] Joomla!
http://www.joomla.org/
[8] Nobuo Funabiki, Junki Shimizu, Megumi Isogai, and Toru Nakanishi, ”An extension of the
web-page layout optimization method for multimodal browsing sizes,” Proc.NBiS 2010, pp.
139-146, Sep. 14 - 16, 2010.
[9] 濱野賢一朗, 鈴木友峰, “ オープンソースソフトウェアの本当の使い方, ”技評 SE 新書, 2007.
[10] JCE- Joomla Extensions Directory
http://extensions.joomla.org/extensions/edition/editors/88
[11] 田鍬 享, “ 実践 CentOS サーバルート養成講座 [単行本] ” 秀和システム, 2009.
[12] XOOPS Cube
http://jp.xoops.org/
[13] Geeklog
http://www.geeklog.jp/
[14] WikiIndex
http://www.wikiindex.org/
[15] 大崎雅也, 澤銀治, 國井利泰“ Cyberworld の基礎的研究:オープンソース教育モデルと社会進
化 ”情報処理学会研究報告 (コンピュータと教育研究会),vol.2005-15,pp.129-136, 2005.
[16] 坊垣貴夫, 國井利泰“ 開発プロセスから見たオープンソースの優位性と社会的影響力の検討:
オープンソース教育の知識領域として ”情報処理学会研究報告 (コンピュータと教育研究会),
vol2005-15,pp.105-111, 2005.
[17] 津森伸一, D. Alieu, 磯本征雄,“ 自由記述形式レポートの自動採点と教員評価による総合評
価 ”信学技法 ET2003-16,pp.37-42, 2003.
23
[18] 渡邊博之“ レポート自動採点支援システムによる C プログラミング演習の評価 ”工学教
育,vol.57,no,2,pp.33-39, 2009.
24
Fly UP