(57)【要約】【課題】履歴を適切に管理することのできるオンライン・オフライン併用型学習システムを提供する。【解決手段】データベース１２は、学習者の学習の履歴を格納するためのユーザ履歴情報テーブルと、コースコンテンツの各ページの履歴を格納するか否か判定するための判定条件を定める履歴項目識別情報を含むページ情報を格納するページ情報テーブルとを記憶する。学習管理部は、オンライン型学習の要求を受けると、対象ページの履歴項目識別情報により定まる判定条件に基づいて履歴の格納の要否を判定し、格納を要すると判定されれば履歴情報を作成してユーザ履歴情報テーブルに格納する。また、学習管理部は、オフライン型学習の履歴更新要求を受けると、履歴の格納の要否を対象ページの履歴項目識別情報により定まる判定条件に基づいて判定し、格納を要すると判定されれば履歴情報をユーザ履歴情報テーブルに格納する。【選択図】図１
2007264027.tif 000002
【特許請求の範囲】
【請求項１】
学習者が、複数のページを含む学習のコースコンテンツをオンライン型学習とオフライン型学習を併用して学習することのできる学習システムであって、
学習者の学習の履歴を格納するためのユーザ履歴情報テーブルと、前記コースコンテンツの各ページの履歴を格納するか否か判定するための判定条件を定める履歴項目識別情報を含むページ情報を格納するページ情報テーブルとを記憶するデータベースと、
オンライン型学習を行う対象ページを要求するページ要求を受けると、前記ページ情報テーブルに格納されている前記対象ページの履歴項目識別情報により定まる判定条件に基づいて、履歴の格納の要否を判定し、格納を要すると判定されれば履歴情報を作成して前記ユーザ履歴情報テーブルに格納し、オフライン型学習の結果である対象ページの履歴情報を前記データベースに反映させるための履歴更新要求を受けると、前記履歴更新要求に含まれている前記履歴情報の履歴の格納の要否を、前記ページ情報テーブルに格納されている前記対象ページの履歴項目識別情報により定まる判定条件に基づいて判定し、格納を要すると判定されれば前記履歴情報を前記ユーザ履歴情報テーブルに格納する学習管理部と、を有する学習システム。
【請求項２】
前記履歴更新要求が複数の履歴情報を含んでおり、
前記学習管理部は、前記履歴更新要求を受けると、該履歴更新要求から１つずつ履歴情報を取り出して前記ページ情報に基づいて格納の要否を判定する、請求項１に記載の学習システム。
【請求項３】
前記学習管理部および前記データベースは学習管理サーバに備えられ、
オフライン型学習に用いる前記コースコンテンツのデータをオフライン学習端末から要求されると、要求された前記コースコンテンツのデータを該オフライン学習端末に送るコンテンツ配信サーバを更に有する、請求項１または２に記載の学習システム。
【請求項４】
前記コンテンツ配信サーバは、オフライン学習の結果である履歴情報を前記データベースに反映させるための履歴更新要求をオフライン学習端末から受けると、該履歴更新要求を前記学習管理部に転送し、該履歴更新要求に基づく処理の結果を前記学習管理部から受けると、前記処理の結果を前記オフライン学習端末に転送する、請求項３に記載の学習システム。
【請求項５】
前記履歴情報には該履歴情報が発生した履歴時刻が関連付けられており、
前記学習判定部は、履歴格納の要否判定に時刻の情報が必要であれば、前記履歴情報に関連付けられた履歴時刻を参照して要否判定を行う、請求項１から４のいずれか１項に記載の学習システム。
【請求項６】
学習者が、複数のページを含む学習のコースコンテンツをオンライン型学習とオフライン型学習を併用して学習することのできる学習システムの履歴情報管理方法であって、
学習者の学習の履歴を格納するためのユーザ履歴情報テーブルと、前記コースコンテンツの各ページの履歴を格納するか否か判定するための判定条件を定める履歴項目識別情報を含むページ情報を格納するページ情報テーブルとを記憶するデータベースとを予め準備し、
オンライン型学習を行う対象ページを要求するページ要求を受けると、前記ページ情報テーブルに格納されている前記対象ページの履歴項目識別情報により定まる判定条件に基づいて、履歴の格納の要否を判定し、
格納を要すると判定されれば履歴情報を作成して前記ユーザ履歴情報テーブルに格納し、
オフライン型学習の結果である対象ページの履歴情報を前記データベースに反映させるための履歴更新要求を受けると、前記履歴更新要求に含まれている前記履歴情報の履歴の格納の要否を、前記ページ情報テーブルに格納されている前記対象ページの履歴項目識別情報により定まる判定条件に基づいて判定し、
格納を要すると判定されれば前記履歴情報を前記ユーザ履歴情報テーブルに格納する、履歴情報管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンラインおよびオフラインでの学習が可能な学習システムに関し、特に、そのような学習システムにおける履歴の管理に関する。
【背景技術】
【０００２】
学習者が都合のよいときに学習を行うができるようにコンピュータを利用した学習システムの利用が進んでいる。このような学習システムには、サーバ上のコンテンツにオンラインでアクセスしながら学習を進めるオンライン型学習を行うものと、サーバからコンテンツデータを端末にダウンロードし、オフラインで学習を行うオフライン型学習を行うものとがある。オフライン型学習では、学習の結果の履歴は端末からサーバに事後的に通知され、サーバに記録される。
【０００３】
また、従来、上述したオンライン型学習とオフライン型学習を併用することのできる併用型学習システムがある（例えば、特許文献１参照）。これによれば、１つの学習コースコンテンツをオンライン型で学習したり、オフライン型で学習したりできる。そのため、学習者はオンライン環境のある場所でも、その環境の無い場所でも学習を行うことができ、利便性が高い。例えば、職場や自宅ではパーソナルコンピュータでオンライン型学習を行い、外出先では携帯端末でオフライン型学習を行うといった利用が可能である。
【０００４】
しかし、このような従来の併用型学習システムでは、オンライン型学習とオフライン型学習が併用され、それら双方による履歴が発生する。そして、それら双方を統合するようにして履歴を更新する必要があるため、履歴の管理が複雑になるという問題があった。例えば、オフライン型学習の結果をサーバに通知せずにオンライン型学習を行い、オンライン型学習の後に以前に行ったオフライン型学習の結果をサーバに通知してしまうと、新しいオンライン型学習の履歴がそれより古いオフライン型学習の履歴で上書きされて消滅してしまうといった問題があった。
【０００５】
従来、版数のあるようなデータを適切に管理するために、生成したデータを格納するか否か判定し、格納すると判定したときのみ、そのデータを古いデータに上書きして格納するという技術があった（例えば、特許文献２参照）。これにより、ソフトウェアの変更のように、版数のあるデータの変更の際に、新しいデータを古いデータで上書きしてしまうということが防止される。
【特許文献１】特開２００４−６９７２８号公報
【特許文献２】特開２０００−１９４５４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
併用型学習システムでは、１つのコンテンツが、教材、テスト、アンケートなどといった複数の種別のデータを含み、それぞれ毎に履歴管理が必要である。例えば、教材の全ページが閲覧済になり、テストが合格点に達し、アンケートの提出が完了したら、そのコンテンツの学習を済とすることが考えられる。
【０００７】
また、併用型学習システムでは、学習を行っても履歴の上書きが不要な場合と上書きが必要な場合がある。例えば、教材のページを１回閲覧したことでそのページの学習が済となり、その後に同じページを閲覧しても済であることに変わりが無いというコースコンテンツを想定すれば、コースコンテンツの教材のページは履歴の上書きが不要といえる。
【０００８】
また、併用型学習システムでは、所定条件を満たしたときに上書きが必要な履歴がある。例えば、テストのページであれば、採点結果が合格点に達したことを条件として、そのテストのページの学習を済とすることが考えられる。
【０００９】
また、併用型学習システムでは、無条件に上書きしてよい場合がある。例えば、アンケートのページについて、最新の入力内容を有効とすることが考えられる。その場合、入力されたアンケートは無条件で上書きしてよいと考えられる。
【００１０】
また、それらのようなコンテンツに含まれるデータの種別に対して、コンテンツの提供者がどのような履歴更新の方法を採用するかは絶対的に固定されるようなものでなく、提供者のポリシやコンテンツ内容によって異なる場合がある。例えば、上述したテストのページであっても、最後の採点結果を有効とするというポリシを採用すれば、無条件で上書きしてよいことになる。
【００１１】
特許文献２に開示されたような方法によれば、ソフトウェアのようなデータそのものの変更を適切に管理することはできる。しかし、上書き回数で変更履歴を管理し、その一致でデータを上書きするか否かを判定するという固定的な判定方法を用いているので、併用型学習システムのように、オンライン型学習とオフライン型学習が混在し、それらで学習を進めることにより様々な履歴情報が発生し、それを上書き格納するか否かに複雑な判定を要するようなシステムに適用するのは困難であった。
【００１２】
本発明の目的は、履歴を適切に管理することのできるオンライン・オフライン併用型学習システムを提供することである。
【課題を解決するための手段】
【００１３】
上記目的を達成するために、本発明の学習システムは、
学習者が、複数のページを含む学習のコースコンテンツをオンライン型学習とオフライン型学習を併用して学習することのできる学習システムであって、
学習者の学習の履歴を格納するためのユーザ履歴情報テーブルと、前記コースコンテンツの各ページの履歴を格納するか否か判定するための判定条件を定める履歴項目識別情報を含むページ情報を格納するページ情報テーブルとを記憶するデータベースと、
オンライン型学習を行う対象ページを要求するページ要求を受けると、前記ページ情報テーブルに格納されている前記対象ページの履歴項目識別情報により定まる判定条件に基づいて、履歴の格納の要否を判定し、格納を要すると判定されれば履歴情報を作成して前記ユーザ履歴情報テーブルに格納し、オフライン型学習の結果である対象ページの履歴情報を前記データベースに反映させるための履歴更新要求を受けると、前記履歴更新要求に含まれている前記履歴情報の履歴の格納の要否を、前記ページ情報テーブルに格納されている前記対象ページの履歴項目識別情報により定まる判定条件に基づいて判定し、格納を要すると判定されれば前記履歴情報を前記ユーザ履歴情報テーブルに格納する学習管理部とを有している。
【００１４】
本発明によれば、データベースが、コースコンテンツの各ページの履歴を格納するか否か判定するための履歴項目識別情報をページ情報テーブルに記憶しており、学習管理部は、オンライン型学習の要求を受けたとき、あるいはオフライン型学習の履歴更新要求を受けたとき、対象ページの履歴項目識別情報に基づいて履歴の格納の要否を判定するので、ページの履歴項目が分かれており、それ毎に履歴の格納の要否が異なるような複雑な履歴管理を必要とする学習システムにおいて履歴を適切に管理することができる。
【００１５】
また、前記履歴更新要求が複数の履歴情報を含んでおり、
前記学習管理部は、前記履歴更新要求を受けると、該履歴更新要求から１つずつ履歴情報を取り出して前記ページ情報に基づいて格納の要否を判定することにしてもよい。
【００１６】
これによれば、オフライン型学習による複数の履歴を１つずつ格納の要否を判定するので、オフライン型学習で蓄積された複数の履歴をまとめて履歴管理に反映させるとき、履歴を適切に管理することができる。
【００１７】
また、前記学習管理部および前記データベースは学習管理サーバに備えられ、
オフライン型学習に用いる前記コースコンテンツのデータを保持しており、オフライン学習端末から要求されると、要求された前記コースコンテンツのデータを該オフライン学習端末に送るコンテンツ配信サーバを更に有することにしてもよい。
【００１８】
また、前記コンテンツ配信サーバは、オフライン学習の結果である履歴情報を前記データベースに反映させるための履歴更新要求をオフライン学習端末から受けると、該履歴更新要求を前記学習管理部に転送し、該履歴更新要求に基づく処理の結果を前記学習管理部から受けると、前記処理の結果を前記オフライン学習端末に転送することにしてもよい。
【００１９】
また、前記履歴情報には該履歴情報が発生した履歴時刻が関連付けられており、
前記学習判定部は、履歴格納の要否判定に時刻の情報が必要であれば、前記履歴情報に関連付けられた履歴時刻を参照して要否判定を行うことにしてもよい。
【発明の効果】
【００２０】
本発明によれば、データベースが、コースコンテンツの各ページの履歴を格納するか否か判定するための履歴項目識別情報をページ情報テーブルとして記憶しており、学習管理部は、オンライン型学習の要求を受けたとき、あるいはオフライン型学習の履歴更新要求を受けたとき、対象ページの履歴項目識別情報に基づいて履歴の格納の要否を判定するので、履歴項目が分かれており、それ毎に履歴の格納の要否が異なるような複雑な履歴管理を必要とする学習システムにおいて履歴を適切に管理することができる。
【発明を実施するための最良の形態】
【００２１】
本発明を実施するための形態について図面を参照して詳細に説明する。
【００２２】
（第１の実施形態）
図１は、第１の実施形態による学習システムの構成を示すブロック図である。図１を参照すると、第１の実施形態による学習システムは、学習管理サーバ１、オンライン学習端末２、およびオフライン学習端末３を有している。これら学習管理サーバ１、オンライン学習端末２、およびオフライン学習端末３はインターネット４を介して相互に接続される。学習のコースコンテンツは、複数のページと目次で構成されており、複数のページを含むコンテンツファイルと目次ファイルに収容されている。それら複数のページには、教材、テスト、およびアンケートのページがある。
【００２３】
オンライン学習端末２は、インターネット４に接続することができるパーソナルコンピュータ等のコンピュータであり、オンラインコンテンツ表示部２１を有している。オンラインコンテンツ表示部２１は、例えばＷｅｂブラウザを実行し、学習コンテンツなどのオンラインコンテンツを表示することができる。
【００２４】
オフライン学習端末３は、パケット通信などの通信機能でインターネット４に接続することができる。例えば、オフライン学習端末３はインターネット４に接続する機能を有する携帯電話機である。そして、オフライン学習端末３は、オフラインコンテンツ表示部３１およびストレージ３２を有している。ストレージ３２は、オフラインコンテンツ表示部３１が利用することのできる記憶領域である。
【００２５】
図２は、第１の実施形態による学習管理サーバ１の構成を示すブロック図である。図２を参照すると、学習管理サーバ１は、学習管理部１１、データベース１２、およびコースコンテンツ１３を有している。
【００２６】
学習管理部１１は、オンライン学習要求処理部１１１、コースコンテンツ開始部１１２、オンラインコンテンツデータ配信部１１３、オフライン学習要求処理部１１４、オフラインコンテンツデータ配信部１１５、オフライン学習履歴処理部１１６、および履歴情報格納判定部１１７を有している。
【００２７】
データベース１２は、ユーザ情報テーブル１２１、ユーザ履歴情報テーブル１２２、コースコンテンツ情報テーブル１２３、およびコースコンテンツページ情報テーブル１２４を含む。
【００２８】
ユーザ情報テーブル１２１は、学習者毎に、ユーザＩＤおよびパスワード等のユーザ属性情報を管理している。
【００２９】
ユーザ履歴情報テーブル１２２は、学習者およびコースコンテンツ毎に履歴時刻おおび履歴情報を管理する。履歴情報は、学習者がコースコンテンツを利用した履歴を示す情報である。例えば、複数のページからなるコースコンテンツのどのページの学習が完了したかを示す情報などがある。履歴時刻は、その履歴情報の発生した時刻である。
【００３０】
コースコンテンツ情報テーブル１２３は、コースコンテンツ毎に、コンテンツファイルが格納されている位置を示すファイル格納ＵＲＬと、そのコンテンツの目次を提供する目次ファイルのファイル名を含むコースコンテンツ情報を管理する。
【００３１】
コースコンテンツページ情報テーブル１２４は、コースコンテンツおよびページ毎に、履歴種別、履歴項目ＩＤ、および履歴格納条件を管理する。履歴種別とは、そのページについて履歴を格納する必要があるか否か、そのページが教材、テスト、アンケートのどれに該当するかというページの種別を示す情報である。履歴項目ＩＤとは、履歴項目を識別するための情報である。履歴項目は、１回でも閲覧をすれば済としてよいページか、１回でも入力をすれば済としてよいページか、判定の結果として所定条件を満足すれば済としてよいページかなど、そのページの性質を示す情報である。履歴格納条件とは、そのページの履歴を格納するか否かを判定するための条件情報である。
【００３２】
例えば、履歴種別が“教材”であり、履歴項目が“１回でも閲覧をすれば済としてよい”であるという組み合わせが考えられる。また、履歴種別が“アンケート”であり、履歴項目が“１回でも入力をすれば済としてよい”であるという組み合わせも考えられる。その場合、最新の入力内容だけを有効とすることが考えられる。また、履歴種別が“テスト”であり、履歴項目が“判定の結果として所定条件を満足すれば済としてよい”であるという組み合わせも考えられる。その場合、最高得点だけを有効とすることにしてもよく、また最後の得点だけを有効とすることにしてもよい。最高得点だけを有効とする場合、履歴時刻の前後に関係なく最高得点か否かが判断される。最後の得点だけを有効とする場合、履歴時刻が最後の履歴情報を有効にする。
【００３３】
コースコンテンツ１３は、上述したように複数のページと目次を有し、それらのデータがコンテンツファイルと目次ファイルとして学習管理サーバ１に格納されている。
【００３４】
図３は、第１の実施形態によるオンライン学習端末２の構成を示すブロック図である。上述したようにオンライン学習端末２はオンラインコンテンツ表示部２１を有している。図３を参照すると、オンラインコンテンツ表示部２１は、コンテンツデータ実行部２１１とサーバ通信部２１２を有している。
【００３５】
図４は、第１の実施形態によるオフライン学習端末３の構成を示すブロック図である。上述したようにオフライン学習端末３はオフラインコンテンツ表示部３１およびストレージ３２を有している。図４を参照すると、オフラインコンテンツ表示部３１は、コンテンツデータ実行部３１１、サーバ通信部３１２、コンテンツデータダウンロード部３１３、およびストレージアクセス部３１４を有している。
【００３６】
ストレージ３２は、ユーザ情報３２１、コースコンテンツ３２２、および履歴情報３２３を格納する。
【００３７】
ユーザ情報３２１は、上述した学習者のユーザＩＤおよびパスワードを含むユーザ属性情報である。
【００３８】
コースコンテンツ３２２は、オンラインコンテンツ表示部２１が解釈して実行することのできる仕様で記述されたメディアデータ（イメージ／音声／動画）のファイルである。
【００３９】
履歴情報３２３は、学習者がコースコンテンツを利用した履歴を示す情報であり、コースコンテンツＩＤと、そのコースコンテンツについての履歴情報の各々を識別する履歴項目ＩＤと、履歴項目ＩＤの履歴情報が発生した時刻を示す履歴時刻と、その履歴情報とをセットにして格納する。
【００４０】
図２に示した学習管理サーバ１において、オンライン学習要求処理部１１１は、オンライン学習端末２のオンラインコンテンツ表示部２１から処理要求を受けると、その処理要求がコースコンテンツの開始を要求するもの（コースコンテンツ開始要求）か、コースコンテンツのページのデータを要求するもの（コースコンテンツページ要求）かを判定する。
【００４１】
コースコンテンツ開始要求であれば、オンライン学習要求処理部１１１は、それをコースコンテンツ開始部１１２に送る。一方、コースコンテンツページ要求であれば、オンライン学習要求処理部１１１は、それをオンラインコンテンツデータ配信部１１３に送る。なお、それ以外の本発明と直接に関係しない要求であった場合、オンライン学習要求処理部１１１は、その要求の内容に基づいて不図示の各部に振り分ける。
【００４２】
また、オンライン学習要求処理部１１１は、学習者のユーザＩＤ、学習者が利用しているコースコンテンツを示すコースコンテンツＩＤ等の各学習者に関する情報をセッション情報として保持する。セッション情報を管理する方法については任意であり、例えば、一般的なアプリケーションサーバの提供する機能を利用してもよく、また独自のソフトウェアを実装してもよい。
【００４３】
コースコンテンツ開始部１１２は、オンライン学習要求処理部１１１からコースコンテンツ開始要求を受けると、その要求に含まれているコースコンテンツＩＤでコースコンテンツ情報テーブル１２３を検索して目次のファイル名を取得する。そして、
コースコンテンツ開始部１１２は、その目次ファイルを読み込んでそのデータをオンライン学習端末２のオンラインコンテンツ表示部２１に送る。
【００４４】
オンラインコンテンツデータ配信部１１３は、オンライン学習要求処理部１１１からコースコンテンツページ要求を受けると、コースコンテンツＩＤと要求されたページ名をキーとしてコースコンテンツ情報テーブル１２３を検索し、そのページの履歴項目ＩＤと履歴種別を取得する。
【００４５】
そして、オンラインコンテンツデータ配信部１１３は、その履歴種別に対応する前処理を行って履歴情報を生成し、履歴項目ＩＤと履歴時刻および履歴情報をセットにして履歴情報格納判定部１１７に送る。ここで前処理は履歴情報を生成する処理である。履歴種別が教材であれば、前処理は、例えば、そのページが閲覧済である旨の履歴情報を生成する処理である。また、履歴種別がテストであれば、前処理は、例えば、テストの採点結果や合否判定の結果を履歴情報とする処理である。
【００４６】
さらに、オンラインコンテンツデータ配信部１１３は、履歴情報格納判定部１１７による処理が終わると、要求されたページのデータをコースコンテンツ１３から読み込んでオンライン学習端末２のオンラインコンテンツ表示部２１に送る。
【００４７】
オフライン学習要求処理部１１４は、オフライン学習端末３のオフラインコンテンツ表示部３１から処理要求を受けると、その処理要求がコースコンテンツのダウンロードを要求するもの（コースコンテンツダウンロード要求）か、コースコンテンツの履歴の更新を要求するもの（履歴更新要求）かを判定する。
【００４８】
コースコンテンツダウンロード要求であれば、オフライン学習要求処理部１１４は、それをオフラインコンテンツデータ配信部１１５に送る。一方、履歴更新要求であれば、オフライン学習要求処理部１１４は、それをオフライン学習履歴処理部１１６に送る。なお、それ以外の本発明と直接に関係しない要求であった場合、オフライン学習要求処理部１１４は、その要求の内容に基づいて不図示の各部に振り分ける。
【００４９】
オフラインコンテンツデータ配信部１１５は、オフライン学習要求処理部１１４から受けたコースコンテンツダウンロード要求に含まれているコースコンテンツＩＤをキーとしてコースコンテンツ情報テーブル１２３を検索し、要求されたコンテンツのファイル格納ＵＲＬを取得する。そして、オフラインコンテンツデータ配信部１１５は、そのファイル格納ＵＲＬを用いてコースコンテンツ１３からデータを取得し、履歴情報初期化データを付加してオフライン学習端末３のオフラインコンテンツ表示部３１に送る。
【００５０】
オフライン学習履歴処理部１１６は、オフライン学習要求処理部１１４から受けた履歴更新要求の中から、履歴項目ＩＤとデータ（履歴時刻および履歴情報）とを１セットずつ順次取り出して履歴情報格納判定部１１７に送る。
【００５１】
履歴項目ＩＤ毎の１セットずつの処理を進めて最終的に全ての履歴項目ＩＤの処理が終了すると、オフライン学習履歴処理手段１１６は、履歴を更新した結果をオフライン学習端末３のオフラインコンテンツ表示部３１に返す。
【００５２】
履歴情報格納判定部１１７は、オンラインコンテンツデータ配信部１１３あるいはオフライン学習履歴処理部１１６から履歴項目ＩＤと履歴時刻および履歴情報のセットを受けると、その履歴項目ＩＤをキーとしてコースコンテンツページ情報テーブル１２４を検索し、履歴種別および履歴格納判定条件を取得する。そして、履歴情報格納判定部１１７は、取得した履歴種別および履歴格納判定条件に基づき、履歴情報の格納の要否を判定する。その条件の判定に履歴の内容が必要であれば履歴情報が参照される。また、その条件の判定に履歴の発生時刻が必要であれば履歴時刻が参照される。格納要と判定されれば、履歴情報格納判定部１１７は、履歴情報をユーザ履歴情報テーブル１２２に格納する。
【００５３】
図３に示したオンライン学習端末２において、コンテンツデータ実行部２１１は、学習者によるキーの押下などで発生した操作イベントに従って学習管理サーバ１の学習管理部１１へ処理要求を送信し、その結果として学習管理サーバ１から受信したデータの記述に基づいてコンテンツのページ画面を表示する。コンテンツデータ実行部２１１は、画面表示中に操作イベントを受けると、表示中の画面の記述データに従って表示を変更したり、学習管理サーバ１へ処理を要求したりする。
【００５４】
サーバ通信部２１２は、コンテンツデータ実行部２１１からの処理要求をインターネット４経由で学習管理サーバ１の学習管理部１１に送信し、その結果として学習管理サーバ１から受信したデータをコンテンツデータ実行部２１１に送る。
【００５５】
図４に示したオフライン学習端末３において、コンテンツデータ実行部３１１は、ストレージ３２に格納されているコースコンテンツ３２２のデータの記述に基づいて画面を表示する。
【００５６】
また、コンテンツデータ実行部３１１は、学習者によるキーの押下などで発生した操作イベントを受けると、表示中の画面の記述データに従って表示を変更したり、他の各部に対して処理を要求したりする。
【００５７】
サーバ通信部３１２は、コンテンツデータ実行部３１１またはコンテンツデータダウンロード部３１３など他の各部からの処理要求に基づいて学習管理サーバ１の学習管理部１１に処理要求を送信し、その結果として学習管理サーバ１から受信した処理結果またはデータを要求元の各部に送る。
【００５８】
コンテンツダウンロード部３１３は、学習管理サーバ１の学習管理部１１に対してコンテンツのダウンロード処理を要求し、その結果として学習管理サーバ１から受信したコースコンテンツ３２２のデータをストレージ３２に格納する。
【００５９】
ストレージアクセス部３１４は、コンテンツデータ実行部３１１またはコンテンツデータダウンロード部３１３など他の各部からの処理要求に基づいて、ストレージ３２に格納されている各データの読み込みまたは更新を行う。
【００６０】
以下、第１の実施形態による学習システムの動作について説明する。
【００６１】
まず、学習を開始する前の準備段階について説明する。
【００６２】
学習管理サーバ１は、コンテンツを利用して学習することを許可する学習者のユーザＩＤおよびパスワードを含むユーザ属性情報をユーザ情報テーブル１２１に予め登録しておく。
【００６３】
また、学習管理サーバ１は、コースコンテンツの教材やテストなど学習に必要なデータをコースコンテンツ１３として格納し、さらに、そのコースコンテンツのコースコンテンツＩＤと対応するファイル格納ＵＲＬおよび目次ファイル名を含むコースコンテンツ情報をコースコンテンツ情報テーブル１２３に登録しておく。
【００６４】
また、学習管理サーバ１は、登録したコースコンテンツのコースコンテンツＩＤと、そのコースコンテンツに含まれる各ページのページ名をコースコンテンツページ情報テーブル１２４に登録しておく。さらに、学習管理サーバ１は、各ページを履歴格納の対象とする場合、履歴種別、履歴項目ＩＤ、更新モード、比較条件、および比較データをコースコンテンツページ情報テーブル１２４にページ毎に設定する。
【００６５】
更新モードは、そのページの履歴の更新方法を規定する情報であり、例として“上書きなし”、“最新上書き”、“データ比較”などである。ここで“上書きなし”は、履歴の上書きをしないことを意味する。“最新上書き”は、最新の履歴で古いデータを上書きすることを意味する。“データ比較”は、履歴情報と所定の比較データを比較し、所定の比較条件を満たしていた場合に、履歴の上書きをすることを意味する。
【００６６】
また、学習管理サーバ１は、学習者およびコースコンテンツ毎に履歴時刻および履歴情報を管理するためのユーザ履歴情報テーブル１２２として、ユーザＩＤとコースコンテンツＩＤとコースコンテンツに含まれる全ての履歴項目ＩＤとをキーとして履歴時刻および履歴情報を検索できるようなテーブルを作成し、履歴時刻および履歴情報が登録されていない初期の状態で格納する。
【００６７】
例えばコンピュータで構成されたオンライン学習端末２にはオンラインコンテンツ表示部２１の機能を実現するオンラインコンテンツ表示ソフトウェアを予めインストールしておく。一般的には、オンラインコンテンツ表示ソフトウェアとしてＷｅｂブラウザが用いられる。ただし、オンラインコンテンツ表示ソフトウェアを専用のアプリケーションとしてもよい。また、オンライン学習端末２の利用者には学習管理サーバ１の学習管理ソフトウェア１１にアクセスするためのＵＲＬを予め通知しておく。
【００６８】
例えば携帯電話機で構成されたオフライン学習端末３にはオフラインコンテンツ表示部３１の機能を実現するオフラインコンテンツ表示ソフトウェアを予めインストールしておく。オフラインコンテンツ表示ソフトウェアは、例えばインターネット４経由で学習管理サーバ１からダウンロードするものとしてもよい。また、他の例として、オフラインコンテンツ表示ソフトウェアを記録媒体に格納しておき、その記録媒体をオフライン学習端末３に装着してインストールをすることとしてもよい。
【００６９】
さらに、図４に示されていない、ログインの初期表示画面や、コースコンテンツをダウンロードするのに必要な画面データについても同様にしてストレージ３２にインストールしておく。
【００７０】
また、オフラインコンテンツ表示部３１の動作による初期起動時には、ログイン画面を表示し、学習者により入力されたデータを用いて既知の方法でユーザ認証を行い、そのユーザ認証で入力されたユーザＩＤおよびパスワードをユーザ情報３２１としてストレージ３２に保持しておく。
【００７１】
以上のように事前準備が完了すると、学習システムを用いてオンライン型学習およびオフライン型学習が可能となる。
【００７２】
図５は、第１の実施形態による学習システムにおけるオンライン型学習時の動作を示すフローチャートである。
【００７３】
学習者がオンライン学習端末２のオンラインコンテンツ表示部２１を起動して学習管理サーバ１にアクセスするためのＵＲＬを入力する（ステップＡ１）。そして、オンライン学習端末２のオンラインコンテンツ表示部２１と学習管理サーバ１の学習管理部１１は、学習管理システムでは既知かつ必須の機能である学習者のユーザ認証の処理を行う。さらに、オンライン学習端末２のオンラインコンテンツ表示部２１と学習管理サーバ１の学習管理部１１は、その学習者が受講することのできるコースコンテンツ一覧表示に必要な処理を行う。
【００７４】
そのとき、学習管理部１１はユーザ認証に使用したユーザＩＤをセッション情報として保持する。オンラインコンテンツ表示部２１はコースコンテンツ一覧表示の画面を表示する。
【００７５】
次に、学習者がコースコンテンツ一覧表示から受講するコースコンテンツを選択すると、コンテンツデータ実行部２１１は、選択されたコースコンテンツのコンテンツＩＤを設定してコースコンテンツ開始要求を、サーバ通信部２１２を介して学習管理サーバ２の学習管理部２１へ送信する（ステップＡ２）。
【００７６】
次に、学習管理部１１のオンライン学習要求処理部１１１は、受信したコースコンテンツ開始要求をコースコンテンツ開始部１１２に送る。コースコンテンツ開始部１１２は、そのコースコンテンツ開始要求に含まれているコースコンテンツＩＤを取得する（ステップＡ３）。
【００７７】
さらに、オンライン学習要求処理部１１１は、そのＩＤをキーとしてコースコンテンツ情報テーブル１２３を検索し、ファイル格納ＵＲＬと目次画面ファイル名を取得する。そして、コースコンテンツ開始部１１２は、取得したファイル格納ＵＲＬと目次画面ファイル名を用いて目次画面のデータのファイルを読み込み、そのデータをオンライン学習要求処理部１１１に送る（ステップＡ４）。
【００７８】
続いて、オンライン学習要求処理部１１１は、コースコンテンツＩＤとファイル格納ＵＲＬをセッション情報として保持し、コースコンテンツ開始要求の処理結果として目次画面のデータを、オンライン学習端末２のオンラインコンテンツ表示部２１に送る（ステップＡ５）。
【００７９】
オンライン学習端末２のオンラインコンテンツ表示部２１では、コンテンツデータ実行部２１１が、学習管理サーバ１からサーバ通信部２１２を介してコースコンテンツ開始要求の処理結果のデータを受信し、そのデータに基づいてコースコンテンツの目次画面を表示する（ステップＡ６）。
【００８０】
図６は、第１の実施形態による学習システムにおけるオンライン型学習による履歴情報を格納するときの動作を示すフローチャートである。
【００８１】
学習者がオンライン学習端末２に表示されたコースコンテンツの目次画面を見て、目次の中から１つの項目を選択すると、ページ変更の操作イベントが発生する（ステップＢ１）。その操作イベントを受けたコンテンツデータ実行部２１１は、サーバ通信部２１２を介して、選択された項目に対応するページ名を付加したコースコンテンツページ要求を学習管理サーバ１の学習管理部１１に送信する（ステップＢ２）。
【００８２】
コースコンテンツページ要求を受信した学習管理端末１のオンライン学習要求処理部１１１は、予め保持しておいたセッション情報からユーザＩＤとコースコンテンツＩＤを取り出し、受信したコースコンテンツページ要求と共にオンラインコンテンツデータ配信部１１３に送る。
【００８３】
オンラインコンテンツデータ配信部１１３は、受信したコースコンテンツＩＤとコースコンテンツページ要求内のページ名とをキーとしてコースコンテンツページ情報テーブル１２４を検索する（ステップＢ３）。
【００８４】
そして、オンラインコンテンツデータ配信部１１３は、検索の結果が“格納不要”を示すものか否か判定する（ステップＢ４）。“格納不要”であれば、学習管理サーバ１は、ステップＢ１１の処理に移行する。そうでなければ、オンラインコンテンツデータ配信部１１３は、検索結果の履歴種別に対応する前処理を行って履歴情報を生成する。例えば、履歴種別が“教材”であれば、履歴情報に“閲覧済”の旨を設定する。また、履歴種別が“テスト”であれば、テストの採点および合否判定を行い、履歴情報に点数および合否結果を設定する。さらに、オンラインコンテンツデータ配信部１１３は、履歴時刻として現在の時刻を設定し、ユーザＩＤ、コースコンテンツＩＤ、履歴項目ＩＤ、履歴時刻、および履歴情報を履歴情報格納判定部１１７に送る（ステップＢ５）。
【００８５】
各種の情報を受けた履歴情報格納判定部１１７は、ユーザＩＤ、コースコンテンツＩＤ、および履歴項目ＩＤをキーとしてユーザ履歴情報テーブル１２２を検索する。そして、それらのキーと一致するレコードが存在しているか否か判定する（ステップＢ６）。
【００８６】
一致するレコードが存在していない場合、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２に、ユーザＩＤ、コースコンテンツＩＤ、履歴項目ＩＤをキーとしてそれらに対応するように履歴時刻および履歴情報を追加格納する（ステップＢ７）。
【００８７】
一方、一致するレコードが存在している場合、履歴情報格納判定部１１７は、コースコンテンツページ情報テーブル１２４を検索して更新モードを取得し、得られた更新モードに応じた処理を行う（ステップＢ８）。本実施形態の例では、更新モードには“上書きなし”、“最新上書き”、“データ比較”があるとする。
【００８８】
更新モードが“上書きなし”であれば、履歴を格納する必要が無いので、学習管理サーバ１はステップＢ１１の処理に移行する。更新モードが“最新上書き”であれば、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２から検索の結果として得られたレコードの履歴時刻と履歴情報に、呼び元であるオンラインコンテンツデータ配信部１１３から受けたデータを上書きすることでユーザ履歴情報テーブル１２２を更新する（ステップＢ９）。
【００８９】
更新モードが“データ比較”であれば、履歴情報格納判定部１１７は、オンラインコンテンツデータ配信部１１３から受けた履歴情報と、検索結果レコード内の履歴情報のうち比較対象データ名と一致するものとを比較し、比較条件を満たすか否か判定する。そして、比較条件を満たす場合のみ、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２の検索結果レコード内の履歴時刻と履歴情報を上書き更新する（ステップＢ１０）。
【００９０】
そして、処理を終了した履歴情報格納判定部１１７は、履歴更新の結果をオンラインコンテンツデータ配信部１１３に返す。
【００９１】
履歴更新の結果を受けたオンラインコンテンツデータ配信部１１３は、セッション情報のファイル格納ＵＲＬとコースコンテンツページ要求に含まれているページ名とを取得し、そのファイルを読み込んで画面のデータをオンライン学習要求処理部１１１に送る。
【００９２】
オンライン学習要求処理部１１１は、受信した画面のデータをオンラインコンテンツ表示部２１に送る（ステップＢ１１）。
【００９３】
次に、オンラインコンテンツ表示部２１のコンテンツデータ実行部２１１は、サーバ通信部２１２を介してコースコンテンツページ要求の処理結果を受信すると、その処理結果のデータに従ってコースコンテンツの画面を表示する（ステップＢ１２）。
【００９４】
学習者がオンラインコンテンツ表示部２１の画面を操作してページ変更を要求すると、その操作イベントが発生し（ステップＢ１３）、オンライン学習端末２はステップＢ２の処理に戻る（ステップＢ１３）。
【００９５】
図７は、第１の実施形態による学習システムにおいて、オフライン型学習時にコースコンテンツをダウンロードする動作を示すフローチャートである。
【００９６】
まず、学習者がオフライン学習端末３のオフラインコンテンツ表示部３１のソフトウェアを起動してコースコンテンツをダウンロードする画面を表示する（ステップＣ１）。
【００９７】
そして、学習者がコースコンテンツのダウンロードと関連付けられている画面部品をクリック操作すると操作イベントが発生する（ステップＣ２）。その操作イベントを受けたコンテンツデータ実行部３１１は、コンテンツデータダウンロード部３１３に対して処理要求を送る。
【００９８】
コンテンツデータダウンロード部３１３は、予め格納されているユーザ情報３１１からユーザＩＤとパスワードを取得する。続いて、コンテンツデータダウンロード部３１３は、そのユーザＩＤおよびパスワードと学習者の指定したコースコンテンツＩＤとを含むコースコンテンツダウンロード要求を、サーバ通信部３１２を介して学習管理サーバ１の学習管理部１１へ送信する（ステップＣ３）。
【００９９】
コースコンテンツダウンロード要求を受けた学習管理部１１のオフライン学習要求処理部１１４は、そのコースコンテンツダウンロード要求内のユーザＩＤとパスワードを取得し、それら用いてユーザ認証を行う（ステップＣ４）。ユーザ認証が成功したことを条件に、オフライン学習要求処理部１１４は、コースコンテンツダウンロード要求をオフラインコンテンツデータ配信部１１５に送る。
【０１００】
オフラインコンテンツデータ配信部１１５は、受信したコースコンテンツダウンロード要求に含まれているコースコンテンツＩＤをキーとしてコースコンテンツ情報テーブル１２３を検索してファイル格納ＵＲＬを取得する（ステップＣ５）。
【０１０１】
続いて、オフラインコンテンツデータ配信部１１５は、そのファイル格納ＵＲＬからコースコンテンツ１３のデータを読み込み、オフラインコンテンツ表示部３１による実行が可能な履歴情報初期化データを付加し、オフライン学習要求処理部１１４に送る（ステップＣ６）。
【０１０２】
オフライン学習要求処理部１１４は、オフラインコンテンツデータ配信部１１５からのコースコンテンツのデータをオフライン学習端末３のオフラインコンテンツ表示部３１に送る（ステップＣ７）。
【０１０３】
オフライン学習端末３では、オフラインコンテンツ表示部３１のコンテンツデータダウンロード部３１３が、オフライン学習要求処理部１１４からのコースコンテンツのデータを、サーバ通信部３１２を介して受信する。続いて、コンテンツデータダウンロード部３１３は、受信したコースコンテンツのデータをコースコンテンツ３２２として、ストレージアクセス部３１４を介してストレージ３２に格納し、その処理の結果をコンテンツデータ実行部３１１に返す。
【０１０４】
そして、コンテンツデータ実行部３１１は、コースコンテンツ３２２に含まれている履歴情報初期化データを用いて初期の状態の履歴情報３２３を生成し、ストレージアクセス部３１４を介してストレージ３２に格納する（ステップＣ８）。この初期状態の履歴情報にはデータが無いので、ストレージ３２内の履歴情報３２３は、履歴項目ＩＤに対応する履歴時刻と履歴情報が共にデータの無い状態となる。
【０１０５】
図８は、第１の実施形態による学習システムにおけるオフライン型学習による履歴情報を格納するときの動作を示すフローチャートである。
【０１０６】
学習者がオフライン学習端末３のオフラインコンテンツ表示部３１のソフトウェアを起動し、コースコンテンツ３２２を実行して学習を行うと、コンテンツデータ実行部３１１は、コースコンテンツ３２２の記述内容に従って、ページを表示するとともに、ストレージアクセス部３１４を介して履歴情報３２２内の履歴項目ＩＤに対応する履歴時刻と履歴情報を蓄積する。学習者は任意のタイミングでかつ任意のページから学習を開始することができ、また任意のタイミングで学習を終了することができる。オフライン型学習の履歴情報を格納することは、オフライン学習端末３に蓄積された履歴情報を履歴項目ＩＤ毎に学習管理サーバ１に反映させることである。
【０１０７】
図８を参照すると、オフライン型学習の履歴を格納する動作において、まずオフラインコンテンツ表示部３１が履歴更新機能の画面を表示する（ステップＤ１）。
【０１０８】
学習者がオフライン学習端末３に対して履歴更新の操作をすると、それにより操作イベントが発生するので、その操作イベントを受けたコンテンツデータ実行部３１１は、ストレージ３２内のユーザ情報３１１からユーザＩＤとパスワードを取得し、そのユーザＩＤおよびパスワードと履歴情報３２３とを含む履歴更新要求を生成し、サーバ通信部３１２を介して学習管理サーバ１に送る（ステップＤ２）。この履歴更新要求には、オフライン学習端末３で行われた学習に関する複数の履歴項目ＩＤとそれに対応する履歴時刻および履歴情報が含まれている。
【０１０９】
履歴更新要求を受けた学習管理サーバの学習管理部１１では、オフライン学習要求処理部１１４が、その履歴更新要求に含まれているユーザＩＤとパスワードを用いてユーザ認証を行う。そして、ユーザ認証が成功したことを条件として、オフライン学習要求処理部１１４は、その履歴更新要求をオフライン学習履歴処理部１１６に送る。履歴更新要求を受けたオフライン学習履歴処理部１１６は、その履歴更新要求に含まれているユーザＩＤとコースコンテンツＩＤを取得する。
【０１１０】
さらに、オフライン学習要求処理部１１４は、履歴更新要求の先頭から順番に履歴項目ＩＤと履歴時刻と履歴情報をセットで取り出す。続いて、オフライン学習要求処理部１１４は、ユーザＩＤ、コースコンテンツＩＤ、履歴項目ＩＤ、履歴時刻、および履歴情報を履歴情報格納判定部１１７に送る（ステップＤ３）。
【０１１１】
各種の情報を受けた履歴情報格納判定部１１７は、ユーザＩＤ、コースコンテンツＩＤ、および履歴項目ＩＤをキーとしてユーザ履歴情報テーブル１２２を検索する。そして、それらのキーと一致するレコードが存在しているか否か判定する（ステップＤ４）。
【０１１２】
一致するレコードが存在していない場合、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２に、ユーザＩＤ、コースコンテンツＩＤ、履歴項目ＩＤをキーとしてそれらに対応するように履歴時刻および履歴情報を追加格納する（ステップＤ５）。
【０１１３】
一方、一致するレコードが存在している場合、履歴情報格納判定部１１７は、コースコンテンツページ情報テーブル１２４を検索して更新モードを取得し、得られた更新モードに応じた処理を行う（ステップＤ６）。本実施形態の例では、更新モードには“上書きなし”、“最新上書き”、“データ比較”があるとする。
【０１１４】
更新モードが“上書きなし”であれば、履歴を格納する必要が無いので、学習管理サーバ１はステップＤ９の処理に移行する。更新モードが“最新上書き”であれば、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２から検索の結果として得られたレコードの履歴時刻と履歴情報に、呼び元であるオンラインコンテンツデータ配信部１１３から受けたデータを上書きすることでユーザ履歴情報テーブル１２２を更新する（ステップＤ７）。
【０１１５】
更新モードが“データ比較”であれば、履歴情報格納判定部１１７は、オンラインコンテンツデータ配信部１１３から受けた履歴情報と、検索結果レコード内の履歴情報のうち比較対象データ名と一致するものとを比較し、比較条件を満たすか否か判定する。そして、比較条件を満たす場合のみ、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２の検索結果レコード内の履歴時刻と履歴情報を上書き更新する（ステップＤ８）。
【０１１６】
次に、オフライン学習履歴処理部１１６は、履歴更新要求に未だ処理していない履歴項目ＩＤが存在するか否か、すなわち処理した履歴項目ＩＤが最後のものか否か判定する（ステップＤ９）。処理したのが最後の履歴項目ＩＤでなければ、オフライン学習履歴処理部１１６は、ステップＤ３に戻って次の履歴項目ＩＤを処理する。
【０１１７】
最後の履歴項目ＩＤであれば、オフライン学習履歴処理部１１６は、履歴更新の結果をオフライン学習要求処理部１１４に返す。履歴更新の結果を受けたオフライン学習要求処理部１１４は、その履歴更新結果をオフライン学習端末３のオフラインコンテンツ表示部３１に返す（ステップＤ１０）。
【０１１８】
次に、履歴更新の結果を受けたオフライン学習端末３のオフラインコンテンツ表示部３１において、コンテンツデータ実行部３１１がその履歴更新の結果を表示する（ステップＤ１１）。
【０１１９】
以上説明したように、本実施形態によれば、学習管理サーバ１は、データベース１２にコースコンテンツの各ページの履歴を格納するか否か判定するための履歴項目ＩＤをページ情報テーブルに記憶しており、学習管理部１１が、オンライン型学習の要求を受けたとき、あるいはオフライン型学習の履歴更新要求を受けたとき、対象ページの履歴項目ＩＤに基づいて履歴の格納の要否を判定する。それゆえ、ページの履歴項目が分かれており、それ毎に履歴の格納の要否が異なるような複雑な履歴管理を必要とする学習システムにおいて履歴を管理者の意図する通り適切に管理することができる。例えば、コースコンテンツの中で教材は最初の閲覧時の履歴、テストは最高点数の履歴、アンケートは最新の回答内容というように学習履歴を適切に管理することができる。
【０１２０】
また、本実施形態によれば、学習管理サーバ１は、オフライン型学習による複数の履歴を１つずつ格納の要否を判定するので、オフライン型学習で蓄積された複数の履歴をまとめて履歴管理に反映させるときにも、履歴を適切に更新することができる。
【０１２１】
なお、本実施形態では、オフライン学習端末３として携帯電話機を使用する例をしめしたが、本発明はこれに限定されるものではない。他の例として、ＰＤＡ等の携帯可能で、かつインターネット３に接続する通信機能を備えた情報処理装置をオフライン学習端末３として用いても良い。
【０１２２】
また、本実施形態では、オフライン学習端末３におけるコースコンテンツをダウンロードする機能を持った画面は、オフラインコンテンツ表示ソフトウェアのインストールと同様にストレージ３２にインストールとしたが、本発明はこれに限定されるものではない。他の例として、コースコンテンツダウンロード画面を表示する毎に、学習管理サーバ１の学習管理部１１のソフトウェアからオフライン学習端末３に画面データをダウンロードすることとしてもよい。
【０１２３】
また、本実施形態では、オフライン学習端末３にダウンロードするコースコンテンツ３２１が１つである例を示したが、本発明はこれに限定されるものではない。オフライン学習端末３のオフラインコンテンツ表示部３１が使用することのできるストレージ３２に十分な容量があれば、複数のコースコンテンツ３２１をダウンロードして学習することも可能である。その場合、学習システムでは、それぞれのコースコンテンツ３２１の各々について個別に、学習者が学習し、オフライン学習端末３が履歴情報を記録し、オフライン学習端末３から学習管理サーバ１にその履歴情報を送信することができる。学習管理サーバ１の学習管理部１１では、各コースコンテンツの履歴項目毎に履歴格納判定条件を設定し、その判定条件を用いた判定と履歴の格納を行うことができる。
【０１２４】
また、本実施形態では、学習管理サーバ１のコースコンテンツ１３にファイルシステムを用い、コースコンテンツのデータをファイルで管理する例を示したが、本発明はこれに限定されるものではない。他の例として、データベース１２を利用してコースコンテンツを管理する構成を採用してもよい。
【０１２５】
（第２の実施形態）
図９は、第２の実施形態による学習システムの構成を示すブロック図である。図９を参照すると、第２の実施形態による学習システムは、学習管理サーバ１、オンライン学習端末２、およびオフライン学習端末３、およびコンテンツ配信サーバ５を有している。コンテンツ配信サーバ５はインターネット４に接続されている。学習管理サーバ１およびオンライン学習端末２は、ファイヤーウォール６を介してインターネット４に接続されているイントラネット７に接続されている。オフライン学習端末３はインターネット４に接続することができる。
【０１２６】
学習のコースコンテンツは、第１の実施形態と同様に、複数のページと目次で構成されており、複数のページを含むコンテンツファイルと目次ファイルに収容されている。それら複数のページには、教材、テスト、およびアンケートのページがある。
【０１２７】
学習管理サーバ１は、第１の実施形態のものと同じ構成である。第１の実施形態ではオフライン学習端末３から学習管理サーバ１に送られていた処理要求はコンテンツ配信サーバ５から送られる点が異なる。
【０１２８】
オンライン学習端末２およびオフライン学習端末３は、第１の実施形態のものと同じ構成である。
【０１２９】
コンテンツ配信サーバ５は、コンテンツ配信部５１、データベース５２、およびコースコンテンツ５３を有している。
【０１３０】
図１０は、第２の実施形態によるコンテンツ配信サーバ５の構成を示すブロック図である。図１０を参照すると、コンテンツ配信サーバ５のコンテンツ配信部５１は、オフライン学習要求処理部５１１、オフラインコンテンツデータ配信部５１２、およびオフライン学習履歴転送部５１３を有している。
【０１３１】
また、データベース５２は、ユーザ情報テーブル５２１およびコースコンテンツ情報テーブル５２２を格納している。ユーザ情報テーブル５２１は、学習者毎のユーザＩＤおよびパスワード等のユーザ属性情報を管理する。コースコンテンツ情報テーブル５２２は、コースコンテンツ毎に、ファイル格納ＵＲＬと、そのコンテンツの目次ファイル名を含むコースコンテンツ情報を管理する。
【０１３２】
図１０に示したコンテンツ配信サーバ５のコンテンツ配信部５１において、オフライン学習要求処理部５１１は、オフライン学習端末３のオフラインコンテンツ表示部３１からコースコンテンツダウンロード要求を受信すると、その要求をオフラインコンテンツデータ配信部５１２に送る。また、オフライン学習要求処理部５１１は、オフライン学習端末３のオフラインコンテンツ表示部３１から履歴更新要求を受けると、オフライン学習履歴転送部５１３に送る。なお、それ以外の本発明と直接に関係しない要求であった場合、オフライン学習要求処理部５１１は、その要求の内容に基づいて不図示の各部に振り分ける。
【０１３３】
オフラインコンテンツデータ配信部５１２は、オフライン学習要求処理部５１１からコースコンテンツダウンロード要求を受けると、その要求に含まれているコースコンテンツＩＤをキーとしてコースコンテンツ情報テーブル５２２を検索し、ファイル格納ＵＲＬを取得する。そして、オフラインコンテンツデータ配信部５１２は、そのＵＲＬからコースコンテンツ５３を読み込み、そのデータに履歴情報初期化データを付加してオフライン学習端末３のオフラインコンテンツ表示部３１に送る。
【０１３４】
オフライン学習履歴転送部５１３は、オフライン学習要求処理部５１１から受けた履歴更新要求を学習管理サーバ１の学習管理部１１に転送する。さらに、オフライン学習履歴転送部５１３は、その要求の処理結果を学習管理部１１から受信すると、その処理結果をオフライン学習端末３のオフラインコンテンツ表示部３１へ送る。
【０１３５】
図１１は、第２の実施形態の学習管理サーバ１の構成を示すブロック図である。図１１を参照して分かるように、第２の実施形態の学習管理サーバ１は第１の実施形態のものと同じ構成を有している。第２の実施形態の学習管理サーバ１は、オフライン学習要求処理１１４の接続先がオフライン学習端末３ではなく、コンテンツ配信サーバ５である点で第１の実施形態のものと異なっている。
【０１３６】
以下、第２の実施形態による学習システムの動作について説明する。
【０１３７】
まず、学習を開始する前の準備段階について説明する。学習管理サーバ１、オンライン学習端末２、およびオフライン学習端末３の準備段階の動作については第１の実施形態と同じである。
【０１３８】
コンテンツ配信サーバ５のユーザ情報テーブル５２１には学習管理サーバ１に格納されているユーザ情報テーブル１２１と同じ内容を予め格納しておく。また、コンテンツ配信サーバ５のコースコンテンツ情報テーブル５２２には学習管理サーバ１に格納されているコースコンテンツ情報テーブル１２３と同じ内容を予め格納しておく。
さらに、コンテンツ配信サーバ５のコースコンテンツ５３には学習管理サーバ１のコースコンテンツ１３と同じデータを予め格納しておく。
【０１３９】
これらのデータは、学習管理サーバ１内のデータが更新されたときに、学習管理サーバ１からコンテンツ配信サーバ５にコピーすることとしてもよく、また学習管理サーバ１の内容とコンテンツ配信サーバ５の内容を定期的に同期させることとしてもよい。また、そのコピーについては特に手段を問わず、汎用的なツールにより提供されている機能を利用して実現してもよく、また本システム専用のソフトウェアを実装してもよい。
【０１４０】
以上のように事前準備が完了すると、学習システムを用いてオンライン型学習およびオフライン型学習が可能となる。
【０１４１】
第２の実施形態による学習システムにおけるオンライン型学習のとき、およびその履歴情報を格納するときの動作は第１の実施形態と同じである。
【０１４２】
図１２は、第２の実施形態による学習システムにおいて、オフライン型学習時にコースコンテンツをダウンロードする動作を示すフローチャートである。
【０１４３】
まず、学習者がオフライン学習端末３のオフラインコンテンツ表示部３１のソフトウェアを起動してコースコンテンツをダウンロードする画面を表示する（ステップＥ１）。
【０１４４】
そして、学習者がコースコンテンツのダウンロードと関連付けられている画面部品をクリック操作すると操作イベントが発生する（ステップＥ２）。その操作イベントを受けたコンテンツデータ実行部３１１は、コンテンツデータダウンロード部３１３に対して処理要求を送る。
【０１４５】
コンテンツデータダウンロード部３１３は、予め格納されているユーザ情報３１１からユーザＩＤとパスワードを取得する。続いて、コンテンツデータダウンロード部３１３は、そのユーザＩＤおよびパスワードと学習者の指定したコースコンテンツＩＤとを含むコースコンテンツダウンロード要求を、サーバ通信部３１２を介してコンテンツ配信サーバ５のコンテンツ配信部５１へ送信する（ステップＥ３）。
【０１４６】
コースコンテンツダウンロード要求を受けたコンテンツ配信サーバ５１のオフライン学習要求処理部５１１は、そのコースコンテンツダウンロード要求内のユーザＩＤとパスワードを取得し、それらを用いてユーザ認証を行う（ステップＥ４）。ユーザ認証が成功したことを条件に、オフライン学習要求処理部５１１は、コースコンテンツダウンロード要求をオフラインコンテンツデータ配信部５１２に送る。
【０１４７】
オフラインコンテンツデータ配信部５１２は、受信したコースコンテンツダウンロード要求に含まれているコースコンテンツＩＤをキーとしてコースコンテンツ情報テーブル５２２を検索してファイル格納ＵＲＬを取得する（ステップＥ５）。
【０１４８】
続いて、オフラインコンテンツデータ配信部５１２は、そのファイル格納ＵＲＬからコースコンテンツ５３のデータを読み込み、オフラインコンテンツ表示部３１による実行が可能な履歴情報初期化データを付加し、オフライン学習要求処理部５１１に送る（ステップＥ６）。
【０１４９】
オフライン学習要求処理部５１１は、オフラインコンテンツデータ配信部５１２からのコースコンテンツのデータをオフライン学習端末３のオフラインコンテンツ表示部３１に送る（ステップＥ７）。
【０１５０】
オフライン学習端末３では、オフラインコンテンツ表示部３１のコンテンツデータダウンロード部３１３が、オフライン学習要求処理部１１４からのコースコンテンツのデータを、サーバ通信部３１２を介して受信する。続いて、コンテンツデータダウンロード部３１３は、受信したコースコンテンツのデータをコースコンテンツ３２２として、ストレージアクセス部３１４を介してストレージ３２に格納し、その処理の結果をコンテンツデータ実行部３１１に返す。
【０１５１】
そして、コンテンツデータ実行部３１１は、コースコンテンツ３２２に含まれている履歴情報初期化データを用いて初期の状態の履歴情報３２３を生成し、ストレージアクセス部３１４を介してストレージ３２に格納する（ステップＥ８）。この初期状態の履歴情報にはデータが無いので、ストレージ３２内の履歴情報３２３は、履歴項目ＩＤに対応する履歴時刻と履歴情報が共にデータの無い状態となる。
【０１５２】
図１３は、第２の実施形態による学習システムにおけるオフライン型学習による履歴情報を格納するときの動作を示すフローチャートである。
【０１５３】
学習者がオフライン学習端末３のオフラインコンテンツ表示部３１のソフトウェアを起動し、コースコンテンツ３２２を実行して学習を行うと、コンテンツデータ実行部３１１は、コースコンテンツ３２２の記述内容に従って、ページ画面を表示するとともに、ストレージアクセス部３１４を介して履歴情報３２２内の履歴項目ＩＤに対応する履歴時刻と履歴情報を蓄積する。学習者は任意のタイミングでかつ任意のページから学習を開始することができ、また任意のタイミングで学習を終了することができる。
【０１５４】
オフライン型学習の履歴情報を格納すること、すなわちオフライン型学習の履歴更新は、オフライン学習端末３に蓄積された履歴情報を学習管理サーバ１のデータベース１２に反映させることである。
【０１５５】
図１３を参照すると、オフライン型学習の履歴を格納する動作において、まずオフラインコンテンツ表示部３１が履歴更新機能の画面を表示する（ステップＦ１）。
【０１５６】
学習者がオフライン学習端末３に対して履歴更新の操作をすると、それにより操作イベントが発生するので、その操作イベントを受けたコンテンツデータ実行部３１１は、ストレージ３２内のユーザ情報３１１からユーザＩＤとパスワードを取得し、そのユーザＩＤおよびパスワードと履歴情報３２３とを含む履歴更新要求を生成し、サーバ通信部３１２を介してコンテンツ配信サーバ５に送る（ステップＦ２）。この履歴更新要求には、オフライン学習端末３で行われた学習に関する複数の履歴項目ＩＤとそれに対応する履歴時刻および履歴情報が含まれている。
【０１５７】
履歴更新要求を受けたオフライン配信サーバ５のオフライン学習要求処理部５１１は、その履歴更新要求に含まれているユーザＩＤとパスワードを用いてユーザ認証を行う。続いて、ユーザ認証が成功したことを条件として、オフライン学習要求処理部５１１は、その履歴更新要求をオフライン学習履歴転送部５１３に送る。オフライン学習履歴転送部５１３は、オフライン学習要求処理部５１１からの履歴更新要求を学習管理サーバ１の学習管理部１１へ転送する（ステップＦ３）。
【０１５８】
履歴更新要求を受けた学習管理サーバ１の学習管理部１１では、オフライン学習要求処理部１１４が、その履歴更新要求に含まれているユーザＩＤとパスワードを用いてユーザ認証を行う。そして、ユーザ認証が成功したことを条件として、オフライン学習要求処理部１１４は、その履歴更新要求をオフライン学習履歴処理部１１６に送る。履歴更新要求を受けたオフライン学習履歴処理部１１６は、その履歴更新要求に含まれているユーザＩＤとコースコンテンツＩＤを取得する。
【０１５９】
さらに、オフライン学習要求処理部１１４は、履歴更新要求の先頭から順番に履歴項目ＩＤと履歴時刻と履歴情報をセットで取り出す。続いて、オフライン学習要求処理部１１４は、ユーザＩＤ、コースコンテンツＩＤ、履歴項目ＩＤ、履歴時刻、および履歴情報を履歴情報格納判定部１１７に送る（ステップＦ４）。
【０１６０】
各種の情報を受けた履歴情報格納判定部１１７は、ユーザＩＤ、コースコンテンツＩＤ、および履歴項目ＩＤをキーとしてユーザ履歴情報テーブル１２２を検索する。そして、それらのキーと一致するレコードが存在しているか否か判定する（ステップＦ５）。
【０１６１】
一致するレコードが存在していない場合、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２に、ユーザＩＤ、コースコンテンツＩＤ、履歴項目ＩＤをキーとしてそれらに対応するように履歴時刻および履歴情報を追加格納する（ステップＦ６）。
【０１６２】
一方、一致するレコードが存在している場合、履歴情報格納判定部１１７は、コースコンテンツページ情報テーブル１２４を検索して更新モードを取得し、得られた更新モードに応じた処理を行う（ステップＦ７）。本実施形態の例では、更新モードには“上書きなし”、“最新上書き”、“データ比較”があるとする。
【０１６３】
更新モードが“上書きなし”であれば、履歴を格納する必要が無いので、学習管理サーバ１はステップＦ１０の処理に移行する。更新モードが“最新上書き”であれば、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２から検索の結果として得られたレコードの履歴時刻と履歴情報に、呼び元であるオンラインコンテンツデータ配信部１１３から受けたデータを上書きすることでユーザ履歴情報テーブル１２２を更新する（ステップＦ８）。
【０１６４】
更新モードが“データ比較”であれば、履歴情報格納判定部１１７は、オンラインコンテンツデータ配信部１１３から受けた履歴情報と、検索結果レコード内の履歴情報のうち比較対象データ名と一致するものとを比較し、比較条件を満たすか否か判定する。そして、比較条件を満たす場合のみ、履歴情報格納判定部１１７は、ユーザ履歴情報テーブル１２２の検索結果レコード内の履歴時刻と履歴情報を上書き更新する（ステップＦ９）。
【０１６５】
次に、オフライン学習履歴処理部１１６は、履歴更新要求に未だ処理していない履歴項目ＩＤが存在するか否か、すなわち処理した履歴項目ＩＤが最後のものか否か判定する（ステップＦ１０）。処理したのが最後の履歴項目ＩＤでなければ、オフライン学習履歴処理部１１６は、ステップＦ４に戻って次の履歴項目ＩＤを処理する。
【０１６６】
最後の履歴項目ＩＤであれば、オフライン学習履歴処理部１１６は、履歴更新の結果をオフライン学習要求処理部１１４に返す。履歴更新の結果を受けたオフライン学習要求処理部１１４は、その履歴更新結果を、コンテンツ配信サーバ５のコンテンツ配信部５１に返す（ステップＦ１１）。
【０１６７】
履歴更新結果を受信したコンテンツ配信サーバ５では、コンテンツ配信部５１のオフライン学習履歴転送部５１３が、その履歴更新結果を、オフライン学習要求処理部５１１を介してオフライン学習端末３のオフラインコンテンツ表示部３１に返す（ステップＦ１２）。
【０１６８】
次に、履歴更新の結果を受けたオフライン学習端末３のオフラインコンテンツ表示部３１において、コンテンツデータ実行部３１１がその履歴更新の結果を表示する（ステップＦ１３）。
【０１６９】
なお、本実施形態では、学習管理サーバ１の他にオフライン学習用のコースコンテンツを配信するコンテンツ配信サーバ５を配置し、学習管理サーバ１をイントラネット７に接続し、コンテンツ配信サーバ５をインターネット４に接続している。そして、イントラネット７はファイヤーウォール６を介してインターネット４に接続されている。しかし、本発明はここに例示した接続構成に限定されるものではない。他の例として、ファイヤーウォール６の管理するＤＭＺ（ＤｅＭｉｌｉｔａｒｉｚｅｄ  Ｚｏｎｅ）にコンテンツ配信サーバ５を配置することとしてもよい。
【０１７０】
また、本実施形態では、コンテンツ配信サーバ５は、自身でデータベース５２を備え、そのデータベース５２内のユーザ情報テーブル５２１およびコースコンテンツ情報テーブル５２２を処理に用いている。しかし、本発明はこの構成に限定されるものではない。他の例として、コンテンツ配信サーバ５は、自身でデータベースを備えず、学習管理サーバ１の学習管理部１１との通信によって処理に必要なデータを取得することにしてもよい。
【０１７１】
また、本実施形態では、第１の実施形態と同様に、オフライン学習端末３として携帯電話機を使用する例をしめしたが、本発明はこれに限定されるものではない。
【０１７２】
また、本実施形態では、第１の実施形態と同様に、オフライン学習端末３におけるコースコンテンツをダウンロードする機能を持った画面は、オフラインコンテンツ表示ソフトウェアのインストールと同様にストレージ３２にインストールとしたが、本発明はこれに限定されるものではない。
【０１７３】
また、本実施形態では、第１の実施形態と同様に、オフライン学習端末３にダウンロードするコースコンテンツ３２１が１つである例を示したが、本発明はこれに限定されるものではない。
【０１７４】
また、本実施形態では、第１の実施形態と同様に、学習管理サーバ１のコースコンテンツ１３にファイルシステムを用い、コースコンテンツのデータをファイルで管理する例を示したが、本発明はこれに限定されるものではない。
【図面の簡単な説明】
【０１７５】
【図１】第１の実施形態による学習システムの構成を示すブロック図である。
【図２】第１の実施形態による学習管理サーバ１の構成を示すブロック図である。
【図３】第１の実施形態によるオンライン学習端末２の構成を示すブロック図である。
【図４】第１の実施形態によるオフライン学習端末３の構成を示すブロック図である。
【図５】第１の実施形態による学習システムにおけるオンライン型学習時の動作を示すフローチャートである。
【図６】第１の実施形態による学習システムにおけるオンライン型学習による履歴情報を格納するときの動作を示すフローチャートである。
【図７】第１の実施形態による学習システムにおいて、オフライン型学習時にコースコンテンツをダウンロードする動作を示すフローチャートである。
【図８】第１の実施形態による学習システムにおけるオフライン型学習による履歴情報を格納するときの動作を示すフローチャートである。
【図９】第２の実施形態による学習システムの構成を示すブロック図である。
【図１０】第２の実施形態によるコンテンツ配信サーバ５の構成を示すブロック図である。
【図１１】第２の実施形態の学習管理サーバ１の構成を示すブロック図である。
【図１２】第２の実施形態による学習システムにおいて、オフライン型学習時にコースコンテンツをダウンロードする動作を示すフローチャートである。
【図１３】第２の実施形態による学習システムにおけるオフライン型学習による履歴情報を格納するときの動作を示すフローチャートである。
【符号の説明】
【０１７６】
１    学習管理サーバ
２    オンライン学習端末
３    オフライン学習端末
４    インターネット
５    コンテンツ配信サーバ
７    イントラネット
１１    学習管理部
１２    データベース
１３    コースコンテンツ
２１    オンラインコンテンツ表示部
３１    オフラインコンテンツ表示部
３２    ストレージ
５１    コンテンツ配信部
５２    データベース
５３    コースコンテンツ
１１１    オンライン学習要求処理部
１１２    コースコンテンツ開始部
１１３    オンラインコンテンツデータ配信部
１１４    オフライン学習要求処理部
１１５    オフラインコンテンツデータ配信部
１１６    オフライン学習履歴処理部
１１７    履歴情報格納判定部
１２１    ユーザ情報テーブル
１２２    ユーザ履歴情報テーブル
１２３    コースコンテンツ情報テーブル
１２４    コースコンテンツページ情報テーブル
２１１    コンテンツデータ実行部
２１２    サーバ通信部
３１１    コンテンツデータ実行部
３１２    サーバ通信部
３１３    コンテンツデータダウンロード部
３１４    ストレージアクセス部
３２１    ユーザ情報
３２２    コースコンテンツ
３２３    履歴情報
５１１    オフライン学習要求処理部
５１２    オフラインコンテンツデータ配信部
５１３    オフライン学習履歴転送部
５２１    ユーザ情報テーブル
５２２    コースコンテンツ情報テーブル
Ａ１〜Ａ６、Ｂ１〜Ｂ１３、Ｃ１〜Ｃ８、Ｄ１〜Ｄ１１、Ｅ１〜Ｅ８、Ｆ１〜Ｆ１３    ステップ
【図１】
2007264027.tif 000003
【図２】
2007264027.tif 000004
【図３】
2007264027.tif 000005
【図４】
2007264027.tif 000006
【図５】
2007264027.tif 000007
【図６】
2007264027.tif 000008
【図７】
2007264027.tif 000009
【図８】
2007264027.tif 000010
【図９】
2007264027.tif 000011
【図１０】
2007264027.tif 000012
【図１１】
2007264027.tif 000013
【図１２】
2007264027.tif 000014
【図１３】
2007264027.tif 000015