(57)【要約】【課題】電子文書の更新の際、より確実に更新の競合を防ぐことを目的とする。【解決手段】電子文書を新規に登録する登録要求２０１を取得すると、電子文書の中に電子文書のバージョンを表すバージョンデータを付与し、バージョンデータを付与した電子文書をバージョン付文書３１として文書記憶部１４１に登録する文書登録部１１０を備える。また、バージョン付文書３１を、バージョン付文書３１においてバージョンデータ以外の部分が編集された編集文書に更新する更新要求２０２を取得すると、文書記憶部１４１に記憶されたバージョン付文書３１のバージョンデータと編集文書のバージョンデータとに基づいて、更新の可否を判定する更新判定部１２０を備える。【選択図】図５
2018060287.tif 000002
【特許請求の範囲】
【請求項１】
電子文書を新規に登録する登録要求を取得すると、前記電子文書の中に前記電子文書のバージョンを表すバージョンデータを付与し、前記バージョンデータを付与した前記電子文書をバージョン付文書として文書記憶部に登録する文書登録部と、
前記バージョン付文書を、前記バージョン付文書において前記バージョンデータ以外の部分が編集された編集文書に更新する更新要求を取得すると、前記文書記憶部に記憶された前記バージョン付文書の前記バージョンデータと前記編集文書の前記バージョンデータとに基づいて、更新の可否を判定する更新判定部と
を備えた文書管理装置。
【請求項２】
前記文書管理装置は、
前記文書記憶部に登録されている前記バージョン付文書のバージョンをバージョン情報として記憶するバージョン記憶部を備え、
前記文書登録部は、
前記バージョン記憶部に記憶されている前記バージョン情報における前記電子文書のバージョンの位置情報を前記バージョンデータとして付与する請求項１に記載の文書管理装置。
【請求項３】
前記文書登録部は、
前記更新判定部により更新可であると判定された場合に、前記バージョン付文書を前記編集文書に置き換え、前記編集文書の前記バージョンデータを更新する請求項１または２に記載の文書管理装置。
【請求項４】
前記更新判定部は、
前記更新判定部により更新不可であると判定された場合に、更新が不可であることを表す更新不可通知を前記更新要求の送信元に送信する請求項１から請求項３のいずれか１項に記載の文書管理装置。
【請求項５】
前記更新判定部は、
前記文書記憶部に記憶された前記バージョン付文書の前記バージョンデータが表すバージョンと前記編集文書の前記バージョンデータが表すバージョンとが等しい場合に、更新可と判定する請求項１から４のいずれか１項に記載の文書管理装置。
【請求項６】
前記文書登録部は、
前記電子文書のファイル形式に基づいて、前記電子文書の中に前記バージョンデータを付与する請求項１から５のいずれか１項に記載の文書管理装置。
【請求項７】
電子文書を新規に登録する登録要求を取得すると、前記電子文書の中に前記電子文書のバージョンを表すバージョンデータを付与し、前記バージョンデータを付与した前記電子文書をバージョン付文書として文書記憶部に登録する文書登録部を備えた文書管理装置と、
前記文書記憶部から前記バージョン付文書を取得する文書取得部と、取得した前記バージョン付文書の前記バージョンデータ以外の部分が編集された編集文書を生成する文書編集部とを備えた端末装置と
を備え、
前記端末装置の前記文書取得部は、
前記文書管理装置の前記文書記憶部から前記バージョンデータが更新された前記バージョン付文書を更新バージョン付文書として取得し、
前記端末装置の前記文書編集部は、
前記文書取得部により取得された前記更新バージョン付文書を前記編集文書で上書きし、
前記端末装置は、さらに、
前記更新バージョン付文書を前記編集文書に更新する更新要求を送信する更新要求部を備え、
前記文書管理装置は、
前記更新要求を取得すると、前記文書記憶部に記憶された前記更新バージョン付文書の前記バージョンデータと前記編集文書の前記バージョンデータとに基づいて、更新の可否を判定する更新判定部を備えた文書管理システム。
【請求項８】
文書登録部が、電子文書を新規に登録する登録要求を取得すると、前記電子文書の中に前記電子文書のバージョンを表すバージョンデータを付与し、前記バージョンデータを付与した前記電子文書をバージョン付文書として文書記憶部に登録し、
更新判定部が、前記バージョン付文書を、前記バージョン付文書において前記バージョンデータ以外の部分が編集された編集文書に更新する更新要求を取得すると、前記文書記憶部に記憶された前記バージョン付文書の前記バージョンデータと前記編集文書の前記バージョンデータとに基づいて、更新の可否を判定する文書管理方法。
【請求項９】
電子文書を新規に登録する登録要求を取得すると、前記電子文書の中に前記電子文書のバージョンを表すバージョンデータを付与し、前記バージョンデータを付与した前記電子文書をバージョン付文書として文書記憶部に登録する文書登録処理と、
前記バージョン付文書を、前記バージョン付文書において前記バージョンデータ以外の部分が編集された編集文書に更新する更新要求を取得すると、前記文書記憶部に記憶された前記バージョン付文書の前記バージョンデータと前記編集文書の前記バージョンデータとに基づいて、更新の可否を判定する更新判定処理と
をコンピュータに実行させる文書管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル競合時の誤登録を防止する文書管理装置、文書管理システム、文書管理方法および文書管理プログラムに関する。
【背景技術】
【０００２】
構成管理システムは、電子文書を格納および管理するコンピュータシステムである。構成管理システムは、利用者装置からの登録要求、取得要求および更新要求を受信し、電子文書に対して処理を行う。電子文書の登録要求があった場合、登録要求対象の電子文書を構成管理システム内に格納する。電子文書の取得要求があった場合、保管している電子文書を利用者装置に送信する。電子文書の更新要求があった場合、更新要求対象の電子文書の内容を更新する。
構成管理システムを利用する際、利用者は、まず構成管理システムに電子文書の登録を行う。必要に応じて構成管理システムから電子文書を取得したあと、編集し、編集した電子文書を更新する。
構成管理システムでは、複数の利用者が同一の電子文書の更新を行う場合、先に電子文書の更新を行った利用者の編集内容を、後に更新を行った利用者が上書きしてしまい、先に更新した利用者の編集内容が失われるといった更新の競合が起こるおそれがある。
【０００３】
このような更新の競合を防止するため、特許文献１では、構成管理システムがバージョン情報を記憶し、記憶したバージョン情報を基に競合を防止することのできる技術が開示されている。複数の利用者が構成管理システムから同じバージョンの電子文書を取得したあと、その内の誰かが電子文書を更新したとする。更新を行った際、構成管理システムにあるバージョン情報が更新され、更新を行っていない利用者のバージョン情報とは異なるバージョン情報となる。そのため、更新を行っていない他の利用者が更新しようとした際、競合を検出できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２７６６５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術では、古いバーションの電子文書が最新のバージョン情報を持つ状態において、このような電子文書を用いて更新すると、更新の競合を防ぐことができないという課題がある。
【０００６】
本発明は、より確実に更新の競合を防ぐことを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る文書管理装置は、
電子文書を新規に登録する登録要求を取得すると、前記電子文書の中に前記電子文書のバージョンを表すバージョンデータを付与し、前記バージョンデータを付与した前記電子文書をバージョン付文書として文書記憶部に登録する文書登録部と、
前記バージョン付文書を、前記バージョン付文書において前記バージョンデータ以外の部分が編集された編集文書に更新する更新要求を取得すると、前記文書記憶部に記憶された前記バージョン付文書の前記バージョンデータと前記編集文書の前記バージョンデータとに基づいて、更新の可否を判定する更新判定部とを備えた。
【発明の効果】
【０００８】
本発明に係る文書管理装置では、文書登録部が、電子文書の中にバージョンを表すバージョンデータを付与し、バージョン付文書として文書記憶部に登録する。また、更新判定部が、バージョン付文書を、バージョン付文書においてバージョンデータ以外の部分が編集された編集文書に更新する更新要求を取得すると、文書記憶部に記憶されたバージョン付文書のバージョンデータと編集文書のバージョンデータとに基づいて、更新の可否を判定する。よって、本発明に係る文書管理装置によれば、より確実に更新の競合を防ぐことができる。
【図面の簡単な説明】
【０００９】
【図１】比較例である文書管理システム５０ｘの構成模式図。
【図２】バージョン管理情報１６の構成図。
【図３】比較例の文書管理システム５０ｘにおける電子文書の更新手順。
【図４】実施の形態１に係る文書管理システム５００の構成模式図。
【図５】実施の形態１に係る文書管理装置１００の構成図。
【図６】実施の形態１に係る端末装置２００の構成図。
【図７】実施の形態１に係る文書管理装置１００の文書管理方法５１０および文書管理プログラム５２０の文書管理処理Ｓ１００を示すフローチャート。
【図８】実施の形態１に係る電子文書３０の中にバージョンデータを付加したバージョン付文書３１あるいは編集文書３２の形式の一例を示す図。
【図９】実施の形態１に係る文書管理システム５００における電子文書の更新手順。
【図１０】実施の形態１の変形例に係る文書管理装置１００の構成図。
【図１１】実施の形態１の変形例に係る端末装置２００の構成図。
【図１２】実施の形態２に係る文書管理装置１００ａの構成図。
【図１３】実施の形態２に係る文書管理装置１００ａの動作を示すフローチャート。
【図１４】実施の形態２に係る文書管理システム５００ａの構成模式図。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態について、図を用いて説明する。なお、各図中、同一または相当する部分には、同一符号を付している。実施の形態の説明において、同一または相当する部分については、説明を適宜省略または簡略化する。
【００１１】
実施の形態１．
まず、図１および図２を用いて、本実施の形態と比較する比較例である文書管理システム５０ｘについて説明する。
図１に示すように、比較例の文書管理システム５０ｘでは、文書管理装置１０ｘ、利用者端末２０ａおよび利用者端末２０ｂがネットワーク４００を介して接続されている。比較例の文書管理システム５０ｘにおいて、各装置が取り扱う情報は、電子文書１５ｘ、電子文書１５ａ、および電子文書１５ｂと、これらの電子文書１５の各々に対応するバージョン管理情報１６ｘ、バージョン管理情報１６ａおよびバージョン管理情報１６ｂである。バージョン管理情報１６ｘ，１６ａ，１６ｂの一例を図２に示す。電子文書１５ｘ，１５ａ，１５ｂを単に電子文書１５ともいう。バージョン管理情報１６ｘ，１６ａ，１６ｂを単にバージョン管理情報１６ともいう。
比較例の文書管理システム５０ｘでは、電子文書１５とバージョン管理情報１６とは別ファイルである。
【００１２】
図３を用いて、比較例の文書管理システム５０ｘにおける電子文書の更新手順について説明する。比較例の文書管理システム５０ｘにおいて「最新のバージョン管理情報を持ち、古いバージョンの電子文書を持つ」状態が発生する手順を説明する。
まず、図３の（１），（２）において、利用者端末２０ａ，２０ｂのそれぞれが、同じ電子文書とバージョン管理情報とを取得する。
次に、図３の（３），（４）において、利用者端末２０ａ，２０ｂのそれぞれが、取得した電子文書に編集を加える。
次に、図３の（５）において、利用者端末２０ａが、編集後の電子文書Ａの更新要求を文書管理装置１０ｘに出す。この時、文書管理装置１０ｘのバージョン管理情報と更新要求した電子文書Ａのバージョン管理情報とは同一なため、競合は検出されず、文書管理装置１０ｘの電子文書とバージョン管理情報とが電子文書Ａとバージョン管理情報２．０とに更新される。この後、図３の（５．１）において、利用者端末２０ｂから文書管理装置１０ｘに電子文書Ｂの更新要求を出す。すると、文書管理装置１０ｘの電子文書Ａのバージョン管理情報２．０と、利用者端末２０ｂから更新要求された電子文書Ｂのバージョン管理情報１．０とが異なるため、更新が拒否される。
これに対して、図３の（６）において、利用者端末２０ｂは、文書管理装置１０ｘにあるバーション管理情報２．０の電子文書Ａを新たに取得する。
そして、図３の（７）において、取得した電子文書Ａに、利用者端末２０ｂにて編集した電子文書Ｂを上書きする。これにより、最新のバージョン管理情報２．０を持ち、古いバージョン、すなわち利用者端末２０ａにおける電子文書Ａの編集内容が上書きにより失われた電子文書Ｂを持つ状態となる。
このとき、図３の（８）において、利用者端末２０ｂから電子文書Ｂの更新要求を出す。すると、文書管理装置１０ｘは、文書管理装置１０ｘにある電子文書Ａのバージョン管理情報２．０と、利用者端末２０ｂから更新要求された電子文書Ｂのバージョン管理情報２．０とが同じと判断する。よって、文書管理装置１０ｘは、競合を検出できず、利用者端末２０ａにおける編集内容が失われた電子文書Ｂで更新を行ってしまう。
【００１３】
本実施の形態では、比較例の文書管理システム５０ｘでは検出できない競合も検出できる文書管理システム５００および文書管理装置１００について説明する。
【００１４】
＊＊＊構成の説明＊＊＊
図４を用いて、本実施の形態に係る文書管理システム５００の構成について説明する。また、図５を用いて、本実施の形態に係る文書管理装置１００の構成について説明する。また、図６を用いて、本実施の形態に係る端末装置２００の構成について説明する。
図４に示すように、文書管理システム５００は、文書管理装置１００と、端末装置２００とがネットワーク４００を介して接続されている。端末装置２００は、文書管理システム５００の利用者が利用する利用者端末である。図４では、端末装置２００として、端末装置２００ａと端末装置２００ｂとが接続されているものとする。文書管理システム５００では、文書管理装置１００と端末装置２００との間で電子文書３０が送受信される。
【００１５】
図５および図６に示すように、文書管理装置１００と端末装置２００との各々は、コンピュータである。文書管理装置１００と端末装置２００との各々は、プロセッサ９１０、記憶装置９２０、入力インタフェース９３０、出力インタフェース９４０および通信装置９５０といったハードウェアを備える。記憶装置９２０は、メモリと補助記憶装置とを含むものとする。これらのハードウェアは、文書管理装置１００と端末装置２００との各々に個別に備えられているが、同様の機能を有するため、同一の符号を付して説明する。
【００１６】
文書管理装置１００は、機能構成として、文書登録部１１０と、更新判定部１２０と、取得部１３０と、記憶部１４０とを備える。記憶部１４０は、文書記憶部１４１を備える。以下の説明では、文書登録部１１０と、更新判定部１２０と、取得部１３０との機能を、文書管理装置１００の「部」の機能という。
また、端末装置２００は、機能構成として、文書取得部２１０と、文書編集部２２０と、更新要求部２３０と、記憶部２４０とを備える。以下の説明では、文書取得部２１０と、文書編集部２２０と、更新要求部２３０との機能を、端末装置２００の「部」の機能という。以下において、文書管理装置１００と端末装置２００との各々を、各装置ともいう。各装置の「部」の機能は、ソフトウェアで実現される。
【００１７】
記憶部１４０，２４０は、メモリにより実現されるが、メモリおよび補助記憶装置、あるいは、補助記憶装置のみで実現されてもよい。記憶部１４０，２４０の実現方法は任意である。
【００１８】
プロセッサ９１０は、信号線を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
プロセッサ９１０は、演算処理を行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）である。プロセッサ９１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
【００１９】
補助記憶装置は、具体的には、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュメモリ、または、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）である。メモリは、具体的には、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。
【００２０】
入力インタフェース９３０は、マウス、キーボード、タッチパネルといった入力装置と接続されるポートである。入力インタフェース９３０は、具体的には、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）端子である。なお、入力インタフェース９３０は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）と接続されるポートであってもよい。
【００２１】
出力インタフェース９４０は、ディスプレイといった表示機器のケーブルが接続されるポートである。出力インタフェース９４０は、具体的には、ＵＳＢ端子またはＨＤＭＩ（登録商標）（Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）端子である。ディスプレイは、具体的には、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）である。
【００２２】
通信装置９５０はレシーバとトランスミッタとを備える。具体的には、通信装置９５０は通信チップまたはＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。通信装置９５０はデータを通信する通信部として機能する。レシーバはデータを受信する受信部として機能し、トランスミッタはデータを送信する送信部として機能する。
【００２３】
各装置の補助記憶装置には、各装置の「部」の機能を実現するプログラムが記憶されている。各装置の「部」の機能を実現するプログラムを文書管理プログラム５２０ともいう。このプログラムは、メモリにロードされ、プロセッサ９１０に読み込まれ、プロセッサ９１０によって実行される。また、各装置の補助記憶装置には、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）も記憶されている。ＯＳの少なくとも一部がメモリにロードされ、プロセッサ９１０はＯＳを実行しながら、「部」の機能を実現するプログラムを実行する。
【００２４】
各装置は、１つのプロセッサ９１０のみを備えていてもよいし、複数のプロセッサ９１０を備えていてもよい。複数のプロセッサ９１０が「部」の機能を実現するプログラムを連携して実行してもよい。
【００２５】
各装置の「部」の処理の結果を示す情報、データ、信号値、および、変数値は、各装置の補助記憶装置、メモリ、または、プロセッサ９１０内のレジスタまたはキャッシュメモリに記憶される。
なお、図５および図６において、各部と記憶部１４０，２４０とを結ぶ矢印は、各部が処理の結果を記憶部１４０，２４０に記憶すること、あるいは、各部が記憶部１４０，２４０から情報を読み出すことを表している。また、各部を結ぶ矢印は、制御の流れを表している。
【００２６】
「部」の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ（登録商標）ディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）といった可搬記録媒体に記憶されてもよい。
なお、文書管理プログラムプロダクトと称されるものは、「部」として説明している機能を実現するプログラムが記録された記憶媒体および記憶装置であり、見た目の形式に関わらず、コンピュータ読み取り可能なプログラムをロードしているものである。
【００２７】
＊＊＊動作の説明＊＊＊
図７は、本実施の形態に係る文書管理装置１００の文書管理方法５１０および文書管理プログラム５２０の文書管理処理Ｓ１００を示すフローチャートである。文書管理プログラム５２０は、以下に示す各処理をコンピュータである文書管理装置１００に実行させる。
【００２８】
ステップＳ１０１において、文書登録部１１０は、電子文書３０を新規に登録する登録要求２０１を取得すると、電子文書３０の中に電子文書３０のバージョンを表すバージョンデータを付与し、バージョン付文書３１として文書記憶部１４１に登録する。具体的には、文書登録部１１０は、通信装置９５０を介して、端末装置２００から電子文書３０が付加された登録要求２０１を受信する。文書登録部１１０は、電子文書３０のファイル形式に基づいて、電子文書３０の中にバージョンデータを付与する。バージョンデータの付与の具体例については後述する。ステップＳ１０１は、文書登録処理Ｓ１０ともいう。
【００２９】
ステップＳ１０２において、更新判定部１２０は、バージョン付文書３１を、バージョン付文書３１においてバージョンデータ以外の部分が編集された編集文書３２に更新する更新要求２０２を取得する。具体的には、更新判定部１２０は、通信装置９５０を介して、端末装置２００から編集文書３２が付加された更新要求２０２を受信する。編集文書３２は、端末装置２００により、バージョン付文書３１のバージョンデータ以外の部分が編集された電子文書である。
ステップＳ１０３において、更新判定部１２０は、文書記憶部１４１に記憶されたバージョン付文書３１のバージョンデータと編集文書３２のバージョンデータとに基づいて、更新の可否を判定する。具体的には、更新判定部１２０は、文書記憶部１４１に記憶されたバージョン付文書３１のバージョンデータが表すバージョンと、編集文書３２のバージョンデータが表すバージョンとが等しい場合に、更新可と判定する。また、更新判定部１２０は、文書記憶部１４１に記憶されたバージョン付文書３１のバージョンデータが表すバージョンと、編集文書３２のバージョンデータが表すバージョンとが異なる場合に、更新不可と判定する。
ステップＳ１０４において、更新判定部１２０により更新可であると判定された場合、ステップＳ１０５に進む。ステップＳ１０４において、更新判定部１２０により更新不可であると判定された場合、ステップＳ１０６に進む。
ステップＳ１０６において、更新判定部１２０は、更新が不可であることを表す更新不可通知２０４を、更新要求の送信元である端末装置２００に通信装置９５０を介して送信する。なお、端末装置２００では、更新不可通知２０４を受信し、出力インタフェース９４０を介して表示機器等に更新不可通知２０４を表示し、端末装置２００の利用者に更新不可を伝えてもよい。
ステップＳ１０３およびステップＳ１０４は、更新判定処理Ｓ２０ともいう。
【００３０】
ステップＳ１０５において、文書登録部１１０は、バージョン付文書３１を編集文書３２に置き換える。具体的には、文書登録部１１０は、文書記憶部１４１に記憶されているバージョン付文書３１を、利用者により指定された編集文書３２、すなわち更新要求に付加されていた編集文書３２に置き換える。
ステップＳ１０７において、文書登録部１１０は、編集文書３２のバージョンデータを更新する。
【００３１】
なお、文書管理装置１００において電子文書３０の中に付与するバージョンデータの形式は、電子文書３０の更新の際に変化がある情報であれば形式は問わないものとする。具体例としては、図２で説明したバージョン管理情報１６と同一形式の情報を電子文書３０の中に付与する場合、更新を行う度に編集記録が追加され、更新のたびに異なる情報になるので本実施の形態に係るバージョンデータとして使用可能である。
【００３２】
図８を用いて、本実施の形態に係る電子文書３０のなかにバージョンデータ３０１を付加したバージョン付文書３１あるいは編集文書３２の形式の一例を示す図である。
電子文書３０にバージョンデータを付与する際、バージョンデータの付与の仕方は登録する電子文書３０のファイル形式に依存するものとする。具体例としては、テキストファイル、すなわち拡張子ｔｘｔの場合、文書の先頭にバージョンデータを付与する。Ｃ言語のソースコード、すなわち拡張子ｃの場合、コードの先頭にバージョンデータをコメントアウトした上で付与する。図８では、Ｃ言語のソースコードにバージョンデータ３０１を付与した例を示している。図８のコメントアウト部分のＩｎｆｏｒｍａｔｉｏｎ以下がバージョンデータ３０１となる。
【００３３】
図９を用いて、本実施の形態に係る文書管理システム５００の更新手順について説明する。
まず、図９の（１），（２）において、端末装置２００ａ，２００ｂの各々の文書取得部２１０が、文書管理装置１００にバージョン付文書３１の取得要求２０３を送信する。端末装置２００ａ，２００ｂの各々の文書取得部２１０は、文書管理装置１００の文書記憶部１４１から、バージョン付文書３１を取得する。端末装置２００ａ，２００ｂの各々の文書取得部２１０は、電子文書３０にバージョンデータ１．０が埋め込まれたバージョン付文書３１を取得する。
次に、図９の（３），（４）において、端末装置２００ａ，２００ｂの各々の文書編集部２２０は、取得したバージョン付文書３１のバージョンデータ以外の部分が編集された編集文書３２を生成する。図８に示すように、端末装置２００ａは、取得したバージョン付文書３１を編集し、電子文書Ａにバージョンデータ１．０が埋め込まれた編集文書３２を生成する。また、端末装置２００ｂは、取得したバージョン付文書３１を編集し、電子文書Ｂにバージョンデータ１．０が埋め込まれた編集文書３２を生成する。
【００３４】
次に、図９の（５）において、端末装置２００ａが、編集後のバージョン付文書３１を編集文書３２として更新要求に付加し、編集文書３２が付加された更新要求を文書管理装置１００に送信する。文書管理装置１００では、文書記憶部１４１に記憶されているバージョン付文書３１のバージョンデータ１．０と、更新要求に付加されているバージョン付文書３１、すなわち編集文書３２のバージョンデータ１．０とを比較判定する。このとき、両者のバージョンデータはともにバージョンデータ１．０で同一なため、更新可であると判定される。よって、文書記憶部１４１に記憶されているバージョン付文書３１は、電子文書Ａにバージョンデータ１．０が埋め込まれた編集文書３２に置き換えられる。そして、編集文書３２に置き換えられたバージョン付文書３１のバージョンデータ１．０はバージョンデータ２．０に更新される。
【００３５】
その後、図９の（５．１）において、端末装置２００ｂの更新要求部２３０が、編集後のバージョン付文書３１を編集文書３２の更新要求を文書管理装置１００に送信する。文書管理装置１００では、文書記憶部１４１に記憶されているバージョン付文書３１、すなわち編集文書３２に置き換えられたバージョン付文書３１のバージョンデータ２．０と、更新要求した編集文書３２のバージョンデータ１．０とを比較判定する。このとき、一方はバージョンデータ２．０、他方はバージョンデータ１．０であり、両者のバージョンデータが異なるため、更新不可と判定される。
【００３６】
更新不可とされたため、図９の（６）において、端末装置２００ｂの文書取得部２１０は、文書管理装置１００の文書記憶部１４１からバージョンデータがバージョンデータ２．０に更新されたバージョン付文書３１を更新バージョン付文書３１ａとして取得する。
次に、図９の（７）において、端末装置２００ｂの文書編集部２２０は、文書取得部２１０により取得された更新バージョン付文書３１ａを編集文書３２で上書きする。このときの編集文書３２は、電子文書Ｂにバージョンデータ１．０が埋め込まれたバージョン付文書３１である。本実施の形態では、電子文書の中にバージョンデータが付与されているので、更新バージョン付文書３１ａに編集文書３２を上書きするとバージョンデータも上書きされる。この時点で、更新バージョン付文書３１ａのバージョンデータ２．０が、編集文書３２のバージョンデータ１．０に上書きされてしまう。バージョンデータを含む更新バージョン付文書３１ａの内容は、電子文書Ｂに置き換わる。このとき、更新バージョン付文書３１ａの内容は電子文書Ａの中にバージョンデータ２．０が付与された内容であるが、図９の（７）の上書きにより、編集文書３２の内容、すなわち電子文書Ｂの中にバージョンデータ１．０が付与されたものとなる。
【００３７】
次に、図９の（８）において、端末装置２００ｂの更新要求部２３０は、文書管理装置１００の文書記憶部１４１に記憶されているバージョン付文書３１、すなわち更新バージョン付文書３１ａを、編集文書３２、すなわち電子文書Ｂにバージョンデータ１．０が埋め込まれたバージョン付文書３１に更新する更新要求を送信する。そして、文書管理装置１００の更新判定部１２０は、更新要求を取得すると、文書記憶部１４１に記憶された更新バージョン付文書３１ａのバージョンデータ２．０と、更新要求に付加されていた編集文書３２のバージョンデータ１．０とに基づいて、更新の可否を判定する。このとき、一方はバージョンデータ２．０、他方はバージョンデータ１．０であり、両者のバージョンデータが異なるため、更新不可と判定される。このように、本実施の形態に係る文書管理システム５００によれば、古いバーションの電子文書が最新のバージョンデータを持つ状態において、確実に競合を防ぐことができる。
【００３８】
＊＊＊他の構成＊＊＊
本実施の形態では、登録要求には登録を要求する電子文書が付加され、更新要求には更新に用いる新たなバージョン付文書が付加されているものとした。しかし、これらの要求に電子文書を直接付加しなくてもよい。具体例としては、文書管理システムは電子文書が蓄積されるファイルサーバを備え、ファイルサーバから電子文書を取得するための識別子といった情報を登録要求あるいは更新要求に付加してもよい。
【００３９】
また、本実施の形態では、文書管理装置１００の「部」の機能がソフトウェアで実現されるが、変形例として、文書管理装置１００の「部」の機能がハードウェアで実現されてもよい。
図１０および図１１を用いて、本実施の形態の変形例に係る文書管理装置１００および端末装置２００の構成について説明する。
図１０および図１１に示すように、文書管理装置１００と端末装置２００との各装置は、処理回路９０９、入力インタフェース９３０、出力インタフェース９４０および通信装置９５０といったハードウェアを備える。
【００４０】
処理回路９０９は、上述した「部」の機能および記憶部１４０，２４０を実現する専用の電子回路である。処理回路９０９は、上述した「部」の機能および記憶部１４０，２４０を実現する専用の電子回路である。処理回路９０９は、具体的には、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ、ＡＳＩＣ、または、ＦＰＧＡである。ＧＡは、Ｇａｔｅ  Ａｒｒａｙの略語である。ＡＳＩＣは、Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略語である。ＦＰＧＡは、Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略語である。
【００４１】
各装置の「部」の機能は、１つの処理回路９０９で実現されてもよいし、複数の処理回路９０９に分散して実現されてもよい。
【００４２】
別の変形例として、各装置の機能がソフトウェアとハードウェアとの組合せで実現されてもよい。すなわち、各装置の一部の機能が専用のハードウェアで実現され、残りの機能がソフトウェアで実現されてもよい。
【００４３】
各装置のプロセッサ９１０、記憶装置９２０、および、処理回路９０９を、総称して「プロセッシングサーキットリ」という。つまり、各装置の構成が図５、図６、図１０および図１１のいずれに示した構成であっても、各装置の「部」の機能および記憶部１４０，２４０は、プロセッシングサーキットリにより実現される。
【００４４】
「部」を「工程」または「手順」または「処理」に読み替えてもよい。また、「部」の機能をファームウェアで実現してもよい。
【００４５】
＊＊＊本実施の形態の効果の説明＊＊＊
本実施の形態に係る文書管理装置１００は、利用者が電子文書を新規に登録する際、電子文書内にバージョンを表すバージョンデータを付与するバージョン付与機能を有する。また、文書管理装置１００は、電子文書を更新する際、電子文書内に付与したバージョンデータを基に更新の可否を判定する更新判定機能を有する。また、文書管理装置１００は、先の更新判定機能で更新可と判定されたときに電子文書内のバージョンデータを更新するバージョン更新機能を有する。よって、本実施の形態に係る文書管理装置１００によれば、バージョンを表す情報を保存する場所を電子文書とは別の文書管理装置１００内ではなく、電子文書の内部に保存することができ、より確実に更新の競合を防止することができる。
【００４６】
また、本実施の形態に係る文書管理装置１００は、バージョン付与機能でバージョンデータを付与する際、ファイル形式によって付与する方法を変更するファイル形式依存型のバージョン付与機能を備える。よって、特別な機能を追加することなく、低コストでバージョン付与機能を実現することができる。
【００４７】
また、本実施の形態に係る文書管理装置１００は、更新不可と判定された場合に、更新不可通知を更新要求の送信元に送信する。よって、誤操作の有無を利用者に知らせることで、誤操作の防止を行うことができる。また、複数の利用者が電子文書を更新する場合に、利用者の端末装置上での誤操作による電子文書の編集結果の消失を防止することができる。
【００４８】
実施の形態２．
本実施の形態では、主に、実施の形態１との差異について説明する。
本実施の形態において、実施の形態１で説明した構成と同様の構成については同一の符号を付し、その説明を省略する場合がある。
【００４９】
実施の形態１に係る文書管理装置１００では、バージョンデータとしてバージョンを表す情報そのものを電子文書内に付与しているので、利用者による電子文書の編集が増大すると、電子文書内に付与するバージョンデータの情報量も増大する。
本実施の形態では、電子文書を登録する際、バージョンを表す情報そのものであるバージョン情報を文書管理装置１００ａの記憶部１４０内に保管し、電子文書内のバージョンデータにはバージョン情報における位置情報を付与する形態について説明する。電子文書を更新する際には、記憶部内に保管したバージョン情報を更新し、電子文書内に付与したバージョンデータである位置情報も更新する。なお、位置情報の付与方法は実施の形態１の課題解決のために付随する機能を採用するものとする。
【００５０】
＊＊＊構成の説明＊＊＊
図１２は、本実施の形態に係る文書管理装置１００ａの構成を示す図である。
文書管理装置１００ａは、図１の構成に加えて、記憶部１４０にバージョン記憶部１４２を備える。また、バージョン記憶部１４２には、バージョン情報４２が記憶される。
バージョン記憶部１４２は、文書記憶部１４１に登録されているバージョン付文書３１のバージョンをバージョン情報４２として記憶する。文書登録部１１０は、バージョン記憶部１４２に記憶されているバージョン情報４２におけるバージョン付文書３１のバージョンの位置情報をバージョンデータとして付与する。
その他の構成については、実施の形態１の文書管理装置１００の構成と同様である。
【００５１】
＊＊＊動作の説明＊＊＊
図１２を用いて、本実施の形態に係る文書管理装置１００ａの動作について説明する。
本実施の形態に係る文書管理装置１００ａでは、バージョン記憶部１４２にバージョン情報４２を保管し、バージョン情報４２における位置情報のみを電子文書内に付与することで、電子文書に付与する情報量を減らす。
【００５２】
ステップＳ２０１において、文書登録部１１０は、通信装置９５０を介して、端末装置２００から電子文書３０が付加された登録要求２０１を受信する。文書登録部１１０は、電子文書３０のバージョンを表す情報をバージョン情報４２としてバージョン記憶部１４２に記憶する。また、文書登録部１１０は、バージョン情報４２において電子文書３０のバージョンを示す位置情報をバージョンデータとして、電子文書３０の中に付与する。位置情報とは、バージョン情報４２において電子文書３０のバージョンの位置を示す情報である。
ステップＳ２０２において、更新判定部１２０は、バージョン付文書３１を、バージョン付文書３１においてバージョンデータ以外の部分が編集された編集文書３２に更新する更新要求２０２を取得する。具体的には、更新判定部は、通信装置９５０を介して、端末装置２００から編集文書３２が付加された更新要求２０２を受信する。ステップＳ２０２の処理は、図７のステップＳ１０２の処理と同様である。
【００５３】
ステップＳ２０３において、更新判定部１２０は、更新要求のあった編集文書３２内のバージョンデータである位置情報と、文書記憶部１４１に記憶されているバージョン付文書３１内のバージョンデータである位置情報とを比較する。更新判定部１２０は、文書記憶部１４１に記憶されたバージョン付文書３１の位置情報と、編集文書３２の位置情報とが等しい場合に、更新可と判定する。また、更新判定部１２０は、文書記憶部１４１に記憶されたバージョン付文書３１の位置情報と、編集文書３２の位置情報とが異なる場合に、更新不可と判定する。
ステップＳ２０４において、更新判定部１２０により更新可であると判定された場合、ステップＳ２０５に進む。ステップＳ２０４において、更新判定部１２０により更新不可であると判定された場合、ステップＳ２０６に進む。
なお、ステップＳ２０５とステップＳ２０６の処理は、図７のステップＳ１０５とステップＳ１０６の処理と同様である。
【００５４】
ステップＳ２０７において、文書登録部１１０は、編集文書３２のバージョンデータである位置情報を更新するとともに、バージョン記憶部１４２のバージョン情報４２を更新する。
【００５５】
図１４は、本実施の形態に係る文書管理システム５００ａのシステム構成を表す模式図である。
図２と図１４とを用いて、本実施の形態に係る文書管理システム５００ａのバージョンデータおよびバージョン情報の構成について説明する。
図２のバージョン管理情報１６と同一の構成の情報そのものをバージョンデータとした場合、図２の情報をすべて電子文書内に付与することになる。また、電子文書の更新があるごとにバージョンデータに情報が追加されるため、バージョンデータが増大していく。
本実施の形態に係る文書管理システム５００ａによれば、図２の情報はバージョン記憶部１４２にバージョン情報４２として記憶し、バージョン付文書３１内のバージョンデータとして最新の位置情報３０１ａのみを設定する。図２の例では、最新の位置情報は編集番号列の最新番号３のみであり、それ以外の情報はバージョン記憶部１４２のバージョン情報４２に保存されている。更新する度に、バージョン記憶部１４２のバージョン情報４２に登録情報を追加し、文書記憶部１４１に保管してあるバージョン付文書３１のバージョンデータである位置情報３０１ａ、すなわち編集番号を更新する。更新の度に変化する位置情報３０１ａにより、更新判定部１２０は、文書記憶部に保管してあるバージョン付文書と更新要求のあった編集文書である電子文書との比較要素を持つことができる。
【００５６】
＊＊＊本実施の形態の効果の説明＊＊＊
以上のように、本実施の形態に係る文書管理システム５００ａによれば、実施の形態１の文書管理システム５００と同様に競合を解決しつつ、より電子文書内の情報量を削減できる。
【００５７】
本実施の形態に係る文書管理装置１００ａは、バージョン付与機能で付与するバージョン情報を記憶部で保管し、電子文章内に記憶部に保管されたバージョン情報の位置情報を付与するバージョン保管機能を有する。また、電子文書を更新する際、記憶部に保管されたバージョン情報を更新し、電子文書内に保管したバージョン情報の位置情報を示す情報を更新するバージョン更新機能を有する。よって、本実施の形態に係る文書管理システム５００ａによれば、位置情報のみを電子文書に付与することで、電子文書内に付与する情報量をより軽減することができる。また、本実施の形態に係る文書管理システム５００ａによれば、電子文書内の位置情報を更新のたびに変えることで、実施の形態１の競合防止機能を維持できる。
【００５８】
上述した実施の形態では、「部」の各々が独立した機能ブロックとして文書管理システムを構成している。しかし、上述した実施の形態のような構成でなくてもよく、文書管理システムの構成は任意である。文書管理システムの機能ブロックは、上述した実施の形態で説明した機能を実現することができれば、任意である。これらの機能ブロックを、他のどのような組み合わせ、あるいは任意のブロック構成で、文書管理システムを構成しても構わない。
また、文書管理装置および端末装置の各々は、１つの装置でなく、複数の装置から構成されたシステムでもよい。
【００５９】
実施の形態１から２について説明したが、これらの実施の形態のうち、複数の部分を組み合わせて実施しても構わない。あるいは、これらの実施の形態のうち、１つの部分を実施しても構わない。その他、これらの実施の形態を、全体としてあるいは部分的に、どのように組み合わせて実施しても構わない。
なお、上述した実施の形態は、本質的に好ましい例示であって、本発明、その適用物および用途の範囲を制限することを意図するものではなく、必要に応じて種々の変更が可能である。
【符号の説明】
【００６０】
１０ｘ，１００，１００ａ  文書管理装置、１５，１５ｘ，１５ａ，１５ｂ，３０  電子文書、１６，１６ｘ，１６ａ，１６ｂ  バージョン管理情報、１１０  文書登録部、１２０  更新判定部、１３０  取得部、１４０，２４０  記憶部、１４１  文書記憶部、１４２  バージョン記憶部、４２  バージョン情報、２０１  登録要求、２０２  更新要求、２０３  取得要求、２０４  更新不可通知、２１０  文書取得部、２２０  文書編集部、２３０  更新要求部、２０，２０ａ，２０ｂ  利用者端末、２００，２００ａ，２００ｂ  端末装置、５０ｘ，５００，５００ａ  文書管理システム、３１  バージョン付文書、３１ａ  更新バージョン付文書、３２  編集文書、３０１  バージョンデータ、３０１ａ  位置情報、４００  ネットワーク、５１０  文書管理方法、５２０  文書管理プログラム、９０９  処理回路、９１０  プロセッサ、９２０  記憶装置、９３０  入力インタフェース、９４０  出力インタフェース、９５０  通信装置、Ｓ１００  文書管理処理、Ｓ１０  文書登録処理、Ｓ２０  更新判定処理。
【図１】
2018060287.tif 000003
【図２】
2018060287.tif 000004
【図３】
2018060287.tif 000005
【図４】
2018060287.tif 000006
【図５】
2018060287.tif 000007
【図６】
2018060287.tif 000008
【図７】
2018060287.tif 000009
【図８】
2018060287.tif 000010
【図９】
2018060287.tif 000011
【図１０】
2018060287.tif 000012
【図１１】
2018060287.tif 000013
【図１２】
2018060287.tif 000014
【図１３】
2018060287.tif 000015
【図１４】
2018060287.tif 000016