JP2017045237A - バージョン管理システム、バージョン管理装置、及びプログラム - Google Patents

バージョン管理システム、バージョン管理装置、及びプログラム Download PDF

Info

Publication number
JP2017045237A
JP2017045237A JP2015166704A JP2015166704A JP2017045237A JP 2017045237 A JP2017045237 A JP 2017045237A JP 2015166704 A JP2015166704 A JP 2015166704A JP 2015166704 A JP2015166704 A JP 2015166704A JP 2017045237 A JP2017045237 A JP 2017045237A
Authority
JP
Japan
Prior art keywords
content
package
version
record
management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015166704A
Other languages
English (en)
Inventor
陽介 平野
Yosuke Hirano
陽介 平野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2015166704A priority Critical patent/JP2017045237A/ja
Priority to US15/743,074 priority patent/US20190042608A1/en
Priority to PCT/JP2016/003794 priority patent/WO2017033447A1/en
Priority to EP16759888.7A priority patent/EP3341835A1/en
Publication of JP2017045237A publication Critical patent/JP2017045237A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06313Resource planning in a project environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Computational Linguistics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】パッケージのバージョン管理を支援する。【解決手段】1以上のコンテンツが含まれるパッケージのバージョンを管理するバージョン管理システムであって、前記パッケージ毎に定義された検索条件に基づいて、前記コンテンツを示すコンテンツレコードを管理するコンテンツデータベースを検索し、前記検索条件に対応するパッケージに含まれるコンテンツを示すコンテンツレコードを取得する取得手段と、前記取得手段により取得されたコンテンツレコード毎に、前記検索条件に対応するパッケージを識別する識別情報と、該パッケージのバージョンを示す第1のバージョン情報とを対応付けた構成管理レコードを構成管理データベースに格納する構成管理手段と、を有する。【選択図】図10

Description

本発明は、バージョン管理システム、バージョン管理装置、及びプログラムに関する。
設計書や報告書、プログラムソース等の各種コンテンツのバージョン(版)を管理するバージョン管理システムが従来から知られている。このようなバージョン管理システムでは、複数のコンテンツを構成要素としたパッケージやプロジェクトのバージョンを管理することができる。
また、任意のバージョンの構成要素からなる構成管理フォルダを作成する技術が知られている(例えば特許文献1参照)。
しかしながら、上記の従来技術では、パッケージやプロジェクト、構成管理フォルダ等に含まれる構成要素(コンテンツ)が頻繁に変化する場合、バージョン管理が煩雑になることがあった。
例えば、パッケージの構成要素であるコンテンツが追加された場合、当該コンテンツの変更履歴を記録するために当該コンテンツをリポジトリ等に登録する必要がある。このため、パッケージの構成要素であるコンテンツが頻繁に追加される場合、その都度、リポジトリ等にコンテンツを登録する必要があり煩雑であった。
本発明の一実施形態は、上記の点に鑑みてなされたもので、パッケージのバージョン管理を支援することを目的とする。
上記目的を達成するため、本発明の一実施形態は、1以上のコンテンツが含まれるパッケージのバージョンを管理するバージョン管理システムであって、前記パッケージ毎に定義された検索条件に基づいて、前記コンテンツを示すコンテンツレコードを管理するコンテンツデータベースを検索し、前記検索条件に対応するパッケージに含まれるコンテンツを示すコンテンツレコードを取得する取得手段と、前記取得手段により取得されたコンテンツレコード毎に、前記検索条件に対応するパッケージを識別する識別情報と、該パッケージのバージョンを示す第1のバージョン情報とを対応付けた構成管理レコードを構成管理データベースに格納する構成管理手段と、を有する。
本発明の一実施形態によれば、パッケージのバージョン管理を支援することができる。
第一の実施形態のバージョン管理システムのシステム構成の一例を示す図である。 第一の実施形態のコンピュータのハードウェア構成の一例を示す図である。 第一の実施形態のバージョン管理システムの機能構成の一例を示す図である。 第一の実施形態のコンテンツDBの一例を示す図である。 第一の実施形態のパッケージ定義DBの一例を示す図である。 第一の実施形態の構成管理DBの一例を示す図である。 第一の実施形態のコンテンツ登録処理の一例を示すシーケンス図である。 すべてのコンテンツの一覧を表示させる場合の一例を示す図である。 コンテンツを登録する場合の一例を示す図である。 第一の実施形態のパッケージの表示及びバージョンの登録処理の一例を示すシーケンス図である。 設計書パッケージに含まれるコンテンツの一覧を表示させる場合の一例を示す図である。 設計書パッケージのバージョンを登録する場合の一例を示す図である。 第一の実施形態のコンテンツレコードの検索処理の一例を示すフローチャートである。 コンテンツレコード取得の一例を示す図である。 第一の実施形態の特定バージョンのパッケージの表示処理の一例を示すシーケンス図である。 選択されたバージョンのパッケージに含まれるコンテンツの一覧を表示させる場合の一例を示す図である。 第二の実施形態のバージョン管理システムの機能構成の一例を示す図である。 第二の実施形態のコンテンツDBの一例を示す図である。 第二の実施形態のコンテンツ削除処理の一例を示すシーケンス図である。 コンテンツを削除する場合の一例を示す図である。 第二の実施形態のコンテンツレコードの検索処理の一例を示すフローチャートである。 第三の実施形態のバージョン管理システムの機能構成の一例を示す図である。 第三の実施形態の構成管理DBの一例を示す図である。 第三の実施形態のパッケージの表示及びバージョンの登録処理の一例を示すシーケンス図である。 期間設定の一例を示す図である。 第三の実施形態の特定日付で有効なパッケージの表示処理の一例を示すシーケンス図である。 特定日付で有効なパッケージに含まれるコンテンツ一覧の一例を示す図である。
次に、本発明の実施の形態について、図面を参照しながら詳細に説明する。
[第一の実施形態]
<システム構成>
まず、第一の実施形態のバージョン管理システム1について、図1を参照しながら説明する。図1は、第一の実施形態のバージョン管理システムのシステム構成の一例を示す図である。
図1に示すバージョン管理システム1は、端末装置10及び管理装置20を有し、LAN(Local Area Network)等のネットワークNを介して通信可能に接続されている。
端末装置10は、バージョン管理システム1の利用者(ユーザ)が用いるデスクトップ型PCやノート型PC等の電子機器である。端末装置10には、ユーザがドキュメントやプログラムソース等のコンテンツを管理装置20に登録等してバージョン管理するための端末プログラム30がインストールされている。
ユーザは、端末装置10を用いて、ドキュメントやプログラムソース等のコンテンツのバージョン管理を行うことができるとともに、1以上のコンテンツが含まれるパッケージのバージョン管理を行うことができる。
ここで、コンテンツとは、バージョン管理の管理対象となるキュメントやプログラムソース等であり、例えば、設計書や報告書、ある機能を実現するためのプログラムモジュール等である。また、パッケージとは、1以上のコンテンツの集合であり、例えば、ある開発工程の設計書一式やある部門の報告書一式、ある製品のプログラムソース及びマニュアル一式等である。
なお、パッケージは、プロジェクトとも称される。また、本実施形態では、パッケージには、1以上のコンテンツが含まれるものとして説明するが、パッケージにはコンテンツが含まれていない場合もあり得る。
ユーザは、端末装置10を用いて、コンテンツを管理装置20に登録して、コンテンツ自体のバージョン管理を行うことができるとともに、1以上のコンテンツが含まれるパッケージのバージョン管理も行うことができる。
なお、端末装置10は、端末プログラム30がインストールされていれば良く、例えば、携帯電話、スマートフォン、タブレット端末等の各種の電子機器であっても良い。
管理装置20は、コンテンツやパッケージのバージョンを管理する情報処理装置である。管理装置20には、コンテンツやパッケージのバージョンを管理するためのバージョン管理プログラム40がインストールされている。
本実施形態では、管理装置20にバージョン管理プログラム40がインストールされることにより、パッケージの構成要素であるコンテンツが頻繁に追加されるような場合等においても、当該パッケージのバージョンを容易に管理することができるようになる。
なお、図1に示す例では、管理装置20が1台の情報処理装置で構成されている場合を示しているが、管理装置20は、2台以上の情報処理装置で構成されていても良い。
<ハードウェア構成>
次に、第一の実施形態の端末装置10及び管理装置20のハードウェア構成について、図2を参照しながら説明する。図2は、第一の実施形態のコンピュータのハードウェア構成の一例を示す図である。
図2に示すコンピュータ300は、入力装置11、表示装置12、外部I/F13、及びRAM(Random Access Memory)14を有する。また、コンピュータ300は、ROM(Read Only Memory)15、CPU(Central Processing Unit)16、通信I/F17、及びHDD18を有する。これら各ハードウェア構成は、バスBにより相互に接続されている。
入力装置11は、キーボードやマウス、タッチパネル等を含み、コンピュータ300に各種信号を入力するのに用いられる。表示装置12は、ディスプレイ等を含み、各種の処理結果を表示する。なお、管理装置20は、入力装置11及び/又は表示装置12を、必要なときにバスBに接続して利用する形態であっても良い。
外部I/F13は、外部装置とのインタフェースである。外部装置には、例えば、CD(Compact Disk)やDVD(Digital Versatile Disk)、SDメモリカード(SD memory card)、USBメモリ(Universal Serial Bus memory)等の記録媒体がある。コンピュータ300は、外部I/F13を介して記録媒体の読み取り及び/又は書き込みを行うことができる。
RAM14は、プログラムやデータを一時保存する揮発性の半導体メモリ(記憶装置)である。ROM15は、電源を切ってもデータを保持することができる不揮発性の半導体メモリ(記憶装置)である。CPU16は、例えばHDD18やROM15等からプログラムやデータをRAM14上に読み出して、各種処理を実行する演算装置である。
通信I/F17は、コンピュータ300をネットワークNに接続するためのインタフェースである。
HDD18は、プログラムやデータを格納している不揮発性のメモリ(記憶装置)である。HDD18に格納されるプログラムやデータには、例えば、端末プログラム30やバージョン管理プログラム40、コンピュータ300の全体を制御する基本ソフトウェアであるOS(Operating System)、OS上で動作する各種プログラム等がある。なお、コンピュータ300は、HDD18の代わりに又はHDD18と併せて、SSD(Solid State Drive)等の不揮発性のメモリ(記憶装置)を用いても良い。
本実施形態の端末装置10及び管理装置20は、図2に示すようなコンピュータ300により後述する各種処理を実現することができる。
<機能構成>
次に、第一の実施形態のバージョン管理システム1の機能構成について、図3を参照しながら説明する。図3は、第一の実施形態のバージョン管理システムの機能構成の一例を示す図である。
図3に示す端末装置10は、入力受付部101、タグ付与部102、登録要求部103、取得要求部104、及び表示制御部105を有する。これら各部は、端末装置10にインストールされた端末プログラム30が、CPU16に実行させる処理により実現される。
入力受付部101は、ユーザからの各種の入力操作を受け付ける。例えば、入力受付部101は、管理装置20で管理されているコンテンツの一覧を表示させるための表示操作や、コンテンツを管理装置20に登録するための登録操作を受け付ける。
また、例えば、入力受付部101は、パッケージに含まれるコンテンツの一覧を表示するためにパッケージを選択する選択操作やパッケージにバージョンを付与して(パッケージをバージョニングして)登録するためパッケージバージョンの登録操作を受け付ける。
タグ付与部102は、入力受付部101がコンテンツを管理装置20に登録するための登録操作を受け付けた場合に、当該コンテンツを示すコンテンツデータに対して、当該コンテンツに応じたタグを対応付ける。
ここで、本実施形態において、タグとは、設計書、報告書、請求書等のコンテンツの種別を示す情報であるものとする。ただし、タグは、これらに限られず、例えば、コンテンツが属する開発工程を示す情報(「基本設計」、「詳細設計」等)や、コンテンツが作成された部署名(「営業部」、「開発部」等)、コンテンツの作成日時等であっても良い。すなわち、タグには、コンテンツの属性を示す各種の情報が用いられる。
登録要求部103は、入力受付部101が受け付けた入力操作に応じて、コンテンツの登録要求やパッケージバージョンの登録要求を管理装置20に送信する。
取得要求部104は、入力受付部101が受け付けた入力操作に応じて、コンテンツの取得要求やパッケージの取得要求を管理装置20に送信する。
表示制御部105は、表示装置12に各種画面を表示させる。例えば、表示制御部105は、管理装置20からの返信に応じて、管理装置20で管理されているコンテンツの一覧やパッケージに含まれるコンテンツの一覧を表示させる。
図3に示す管理装置20は、コンテンツ一覧処理部201、コンテンツ登録処理部202、パッケージ登録処理部203、及びパッケージ表示処理部204を有する。これら各部は、管理装置20にインストールされたバージョン管理プログラム40が、CPU16に実行させる処理により実現される。
また、図3に示す管理装置20は、コンテンツデータベース205、パッケージ定義データベース206、及び構成管理データベース207を有する。これら各データベース(以下、「DB」と表す)は、HDD18により実現可能である。なお、これら各DBは、管理装置20とネットワークNを介して接続される記憶装置等により実現されていても良い。
コンテンツ一覧処理部201は、管理装置20で管理されているコンテンツの一覧を表示させるためのコンテンツの取得要求に応じて、コンテンツDB205からコンテンツレコードを取得する。ここで、コンテンツレコードとは、コンテンツDB205で管理されるデータである。コンテンツレコードは、後述するように、コンテンツを示すコンテンツデータに対してタグやバージョン等の情報を対応付けたデータである。
コンテンツ登録処理部202は、管理装置20にコンテンツを登録するためのコンテンツの登録要求に応じて、コンテンツを管理装置20に登録する処理を行う。ここで、コンテンツ登録処理部202は、コンテンツレコード生成部211及びコンテンツ登録部212を有する。これら各部の詳細については、後述する。
パッケージ登録処理部203は、パッケージの取得要求やパッケージバージョンの登録要求に応じて、パッケージに含まれるコンテンツの一覧を表示させる処理及びパッケージのバージョンを登録する処理を行う。パッケージ登録処理部203は、検索条件取得部221、検索部222、構成管理レコード生成部223、及び構成管理登録部224を有する。これら各部の詳細については、後述する。
パッケージ表示処理部204は、パッケージ登録処理部203により登録されたバージョンのパッケージの取得要求に応じて、当該バージョンに含まれるコンテンツの一覧を表示させる処理を行う。パッケージ表示処理部204は、構成管理取得部231及びコンテンツ取得部232を有する。これら各部の詳細については、後述する。
コンテンツDB205は、コンテンツレコードを管理する。ここで、コンテンツDB205の詳細について、図4を参照しながら説明する。図4は、第一の実施形態のコンテンツDBの一例を示す図である。
図4に示すように、コンテンツDB205で管理されるコンテンツレコードは、データ項目として、コンテンツID、コンテンツバージョン、タグ、及びコンテンツデータを有する。また、コンテンツデータは、データ項目として、コンテンツ名及びコンテンツ内容を有する。
コンテンツデータは、例えば設計書や報告書、プログラムソース等のコンテンツを示すデータである。コンテンツ名は、コンテンツの名称であり、例えば、設計書ファイルのファイル名等である。コンテンツ内容は、ユーザにより作成又は変更されるコンテンツの内容であり、例えば、設計内容を示す図面データや報告内容を示す文書データ等である。
コンテンツIDは、バージョンの管理対象のコンテンツを一意に識別する識別情報である。タグは、コンテンツの種別を示す情報である。コンテンツバージョンは、コンテンツのバージョンを示す情報である。本実施形態では、同一のコンテンツにおいて、コンテンツバージョンが大きい程、新しいコンテンツであることを示すものとする。例えば、図4に示すコンテンツDB205において、コンテンツ名「××会社の請求書」のコンテンツデータは、コンテンツバージョンが「0.1」、「0.2」、「0.3」の順に新しいコンテンツであるものとする。
換言すれば、同一のコンテンツにおいて、コンテンツバージョン「0.1」のコンテンツデータに変更が加えられたものが、コンテンツバージョン「0.2」のコンテンツデータある。同様に、同一のコンテンツにおいて、コンテンツバージョン「0.2」のコンテンツデータに変更が加えられたものが、コンテンツバージョン「0.3」のコンテンツデータある。
図4に示すように、コンテンツDB205では、コンテンツを示すコンテンツデータを、コンテンツID、コンテンツバージョン、及びタグと対応付けたコンテンツレコードを管理している。これにより、本実施形態のバージョン管理システム1では、コンテンツのバージョンが管理される。
パッケージ定義DB206は、パッケージ定義レコードを管理する。ここで、パッケージ定義DB206の詳細について、図5を参照しながら説明する。図5は、第一の実施形態のパッケージ定義DBの一例を示す図である。
図5に示すように、パッケージ定義DB206で管理されるパッケージ定義レコードは、データ項目として、パッケージID及び検索条件を有する。
パッケージIDは、1以上のコンテンツを含むパッケージを一意に識別する識別情報である。検索条件は、パッケージに含まれるコンテンツをコンテンツDB205から検索するための条件である。例えば、パッケージID「P001」は、検索条件「タグ=設計書」と対応付けられている。これは、パッケージID「P001」のパッケージは、「タグ=設計書」の検索条件に基づいてコンテンツDB205から検索されたコンテンツレコードにより示されるコンテンツが含まれることを示している。このように、本実施形態のバージョン管理システム1では、パッケージの構成要素であるコンテンツを検索条件で定義する。
なお、検索条件は、コンテンツDB205からコンテンツレコードを検索するための任意の論理式や検索式を設定することができる。例えば、検索条件として「タグ=設計書or報告書」等と設定しても良い。また、例えば、タグがコンテンツの作成日時を示す場合には、検索条件として「2014/04/01≦タグ≦2014/04/10」等と設定しても良い。このように、検索条件には、パッケージの構成要素であるコンテンツを示すコンテンツレコードをコンテンツDB205から検索するための任意の論理式や検索式を設定することができる。
なお、パッケージ定義レコードは、例えば、バージョン管理システム1のユーザ等によりパッケージが新規作成された際に登録される。
構成管理DB207は、構成管理レコードを管理する。ここで、構成管理DB207の詳細について、図6を参照しながら説明する。図6は、第一の実施形態の構成管理DBの一例を示す図である。
図6に示すように、構成管理DB207で管理される構成管理レコードは、データ項目として、パッケージID、パッケージバージョン、コンテンツID、及びコンテンツバージョンを有する。
パッケージIDは、上述したように、パッケージを一意に識別する識別情報である。コンテンツID及びコンテンツバージョンは、それぞれ上述したように、コンテンツを一意に識別する情報及びコンテンツのバージョンを示す情報である。パッケージバージョンは、パッケージのバージョンを示す情報である。
このように、構成管理DB207では、パッケージID及びパッケージバージョンと、コンテンツID及びコンテンツバージョンとを対応付けた構成管理レコードが管理されている。これにより、パッケージバージョンで示されるバージョンのパッケージに含まれるコンテンツの構成を管理することができる。
コンテンツレコード生成部211は、コンテンツの登録要求に応じて、コンテンツレコードを生成する。より具体的には、コンテンツレコード生成部211は、当該登録要求に含まれるコンテンツデータのコンテンツ名に基づいてコンテンツID及びコンテンツバージョンを決定する。そして、コンテンツレコード生成部211は、当該登録要求に含まれるコンテンツデータ及びタグに、コンテンツID及びコンテンツバージョンを対応付けてコンテンツレコードを生成する。
コンテンツ登録部212は、コンテンツレコード生成部211により生成されたコンテンツレコードをコンテンツDB205に格納する。これにより、管理装置20にコンテンツが登録され、当該コンテンツが管理される。
検索条件取得部221は、パッケージの取得要求に応じて、当該取得要求に含まれるパッケージIDに対応するパッケージ定義レコードをパッケージ定義DB206から取得する。そして、検索条件取得部221は、取得したパッケージ定義レコードに含まれる検索条件を取得する。
検索部222は、検索条件取得部221により取得された検索条件に基づいて、コンテンツDB205を検索して、検索条件を満たすコンテンツレコードを取得する。
構成管理レコード生成部223は、パッケージバージョンの登録要求に応じて、構成管理レコードを生成する。より具体的には、構成管理レコード生成部223は、検索部222により取得されたコンテンツレコードのコンテンツID及びコンテンツバージョンを、当該登録要求に含まれるパッケージID及びパッケージバージョンと対応付けて構成管理レコードを生成する。
構成管理登録部224は、構成管理レコード生成部223により生成された構成管理レコードを構成管理DB207に格納する。これにより、管理装置20において、特定のバージョンのパッケージに含まれるコンテンツの構成が管理される。
構成管理取得部231は、パッケージ登録処理部203により登録されたバージョンのパッケージの取得要求に応じて、当該取得要求に含まれるパッケージID及びパッケージバージョンに対応する構成管理レコードを構成管理DB207から取得する。
コンテンツ取得部232は、構成管理取得部231により取得された構成管理レコードに含まれるコンテンツID及びコンテンツバージョンに対応するコンテンツレコードをコンテンツDB205から取得する。これにより、端末装置10において、特定のバージョンのパッケージに含まれるコンテンツのコンテンツデータが取得され、当該パッケージに含まれるコンテンツの一覧を表示させることができる。
<処理の詳細>
次に、第一の実施形態のバージョン管理システム1の処理の詳細について説明する。
まず、ユーザUが端末装置10を用いて、コンテンツを管理装置20に登録する処理について、図7を参照しながら説明する。図7は、第一の実施形態のコンテンツ登録処理の一例を示すシーケンス図である。
まず、ユーザUは、例えば端末プログラム30を起動させて、端末装置10の表示装置12に、当該端末プログラム30の初期画面を表示させるための表示操作を行う(ステップS701)。すると、端末装置10の表示制御部105は、例えば図8(a)に示すような画面1000を表示装置12に表示させる(ステップS702)。
ここで、図8(a)に示す画面1000は、端末プログラム30の初期画面であり、管理装置20で管理されたコンテンツを表示させるための各種ボタン1001と、コンテンツを表示するための表示領域1002とが含まれる。
各種ボタン1001は、管理装置20で管理されているすべてのコンテンツの一覧を表示領域1002に表示させるための「すべて」ボタン1010を含む。
また、各種ボタン1001は、パッケージID「P001」が対応付けられた「設計書」ボタン1011、パッケージID「P002」が対応付けられた「報告書」ボタン1012、及びパッケージID「P003」が対応付けられた「請求書」ボタン1013を含む。これらのボタン1011〜ボタン1013は、対応付けられたパッケージIDのパッケージに含まれるコンテンツの一覧を表示領域1002に表示させるために選択可能なアイコン等の表示部品である。なお、以降では、パッケージID「P001」により示されるパッケージを「設計書パッケージ」、パッケージID「P002」により示されるパッケージを「報告書パッケージ」、パッケージID「P003」により示されるパッケージを「請求書パッケージ」と表す。
さらに、各種ボタン1001には、パッケージバージョン「0.1」の設計書パッケージに含まれるコンテンツの一覧を表示領域1002に表示させるための「v0.1」ボタン1021を含む。
ユーザUは、画面1000において、「すべて」ボタン1010を押下して、管理装置20で管理されているすべてのコンテンツの一覧を表示領域1002に表示させるための表示操作を行う(ステップS703)。すると、端末装置10の入力受付部101は、当該表示操作を受け付ける。
端末装置10の取得要求部104は、入力受付部101により当該表示操作が受け付けられると、管理装置20で管理されているすべてのコンテンツを取得するためのコンテンツの取得要求を管理装置20に送信する(ステップS704)。
管理装置20のコンテンツ一覧処理部201は、当該取得要求を受信すると、コンテンツDB205からコンテンツレコードを全件取得する(ステップS705)。そして、管理装置20のコンテンツ一覧処理部201は、取得したコンテンツレコードを端末装置10に送信する(ステップS706)。
端末装置10の表示制御部105は、管理装置20からコンテンツレコードを受信すると、当該コンテンツレコードに基づいて、図8(b)に示すような画面1100を表示装置12に表示させる(ステップS707)。
ここで、図8(b)に示す画面1100の表示領域1101には、受信したコンテンツレコードに基づくコンテンツの一覧が表示されている。すなわち、表示領域1101には、管理装置20で管理されているコンテンツを示すアイコン等の表示部品が一覧で表示されている。また、当該表示部品には、受信したコンテンツレコードに含まれるコンテンツバージョン、タグ、及びコンテンツ名が表示されている。これにより、ユーザUは、管理装置20で管理されているコンテンツのコンテンツバージョン、タグ、及びコンテンツ名の一覧を取得することができる。
次に、ユーザUは、端末装置10で作成や編集したコンテンツを管理装置20に登録するためのコンテンツの登録操作を行う(ステップS708)。例えば、ユーザUは、図9(a)に示す画面1200において、管理装置20で管理されているすべてのコンテンツの一覧が表示された表示領域1201に、登録するコンテンツ1202をドラッグアンドドロップする。ここで、コンテンツ1202のコンテンツ名は「製品○×の設計書」であるものとする。すると、端末装置10の入力受付部101は、当該登録操作を受け付けて、登録対象のコンテンツ1202のコンテンツデータを取得する。
端末装置10のタグ付与部102は、入力受付部101により当該登録操作が受け付けられると、登録対象のコンテンツ1202のコンテンツデータに対して、当該コンテンツに応じたタグを対応付ける(ステップS709)。
例えば、タグ付与部102は、登録対象のコンテンツ1202が設計書である場合、タグとして「設計書」を対応付ける。同様に、例えば、タグ付与部102は、登録対象のコンテンツ1202が請求書である場合、タグとして「請求書」を対応付ける。このように、タグ付与部102は、登録対象のコンテンツに応じたタグを、当該コンテンツを示すコンテンツデータに対応付ける。
本実施形態では、タグ付与部102は、コンテンツ1202を示すコンテンツデータに対してタグ「設計書」を対応付けたものとして説明を続ける。
次に、端末装置10の登録要求部103は、登録対象のコンテンツ1202を管理装置20に登録するためのコンテンツの登録要求を管理装置20に送信する(ステップS710)。ここで、当該登録要求には、登録対象のコンテンツ1202のコンテンツデータと、タグ付与部102により当該コンテンツデータに対応付けられたタグとが含まれる。
次に、管理装置20のコンテンツレコード生成部211は、当該登録要求を受信すると、コンテンツデータに含まれるコンテンツ名に基づいて、コンテンツID及びコンテンツバージョンを決定(採番)する。そして、コンテンツレコード生成部211は、コンテンツデータ及びタグに、コンテンツID及びコンテンツバージョンを対応付けてコンテンツレコードを生成する(ステップS711)。
ここで、コンテンツレコード生成部211は、例えば、コンテンツデータに含まれるコンテンツ名に基づいてコンテンツID及びコンテンツバージョンを決定すれば良い。
より具体的には、コンテンツデータに含まれるコンテンツ名と同一のコンテンツ名を含むコンテンツレコードがコンテンツDB205に存在しない場合、コンテンツレコード生成部211は、コンテンツIDをバージョン管理システム1で一意となるように採番する。また、このとき、コンテンツレコード生成部211は、コンテンツバージョンを「0.1」と決定する。
一方、コンテンツデータに含まれるコンテンツ名と同一のコンテンツ名を含むコンテンツレコードがコンテンツDB205に存在する場合、コンテンツレコード生成部211は、当該コンテンツレコードと同一のコンテンツIDを採番する。また、このとき、コンテンツレコード生成部211は、当該コンテンツレコードに含まれるコンテンツバージョンに「0.1」を加えた値をコンテンツバージョンと決定する。
これにより、新たなコンテンツを管理装置20で管理する場合、当該コンテンツのコンテンツバージョンは「0.1」で管理される。一方、既に管理装置20で管理されているコンテンツに変更等を加えた場合、当該コンテンツのコンテンツバージョンは最新のコンテンツバージョンの値に「0.1」を加えた値で管理される。
本実施形態において、コンテンツ1202を示すコンテンツデータのコンテンツ名は「製品○×の設計書」であり、図4に示すコンテンツDB205には同一のコンテンツ名であるコンテンツID「C003」のコンテンツレコードが存在する。したがって、この場合、コンテンツレコード生成部211は、コンテンツID「C003」、コンテンツバージョン「0.2」、タグ「設計書」、コンテンツ1202を示すコンテンツデータが含まれるコンテンツレコードを生成する。
なお、既に管理装置20で管理されているコンテンツに変更等を加えた場合、コンテンツレコード生成部211は、1つ前のコンテンツバージョンから変更等が加えられた差分を示す差分データをコンテンツ内容に設定したコンテンツレコードを生成しても良い。例えば、コンテンツID「C003」のバージョン「0.2」のコンテンツレコードに含まれるコンテンツ内容には、コンテンツID「C003」のバージョン「0.1」のコンテンツレコードに含まれるコンテンツ内容から変更等が加えられた差分データを設定されても良い。このように、コンテンツレコードに含まれるコンテンツ内容に、1つ前のバージョンからの差分データを設定することで、コンテンツDB205のデータ量を抑えることができる。
次に、管理装置20のコンテンツ登録部212は、コンテンツレコード生成部211により生成されたコンテンツレコードをコンテンツDB205に格納する(ステップS712)。そして、管理装置20のコンテンツ登録処理部202は、格納されたコンテンツレコードを端末装置10に送信する(ステップS713)。
端末装置10の表示制御部105は、管理装置20からコンテンツレコードを受信すると、当該コンテンツレコードに基づいて、図9(b)に示すような画面1300を表示装置12に表示させる(ステップS714)。
ここで、図9(b)に示す画面1300の表示領域1301には、受信したコンテンツレコードに基づき、コンテンツ1202を示す表示部品1302が追加されている。このように、表示領域1301には、ユーザにより登録操作がなされたコンテンツ1202について、バージョンやタグ、コンテンツ名等が表示された表示部品1302が追加される。
以上のように、本実施形態のバージョン管理システム1では、ユーザUは、端末装置10を用いて、コンテンツを新規に作成した場合や既に管理されているコンテンツを修正した場合等に、当該作成又は修正したコンテンツを管理装置20に登録することができる。これにより、本実施形態のバージョン管理システム1では、登録されたコンテンツのバージョン管理を行うことができる。
次に、コンテンツを構成要素とするパッケージを端末装置10に表示させて、表示されたパッケージをバージョニングして登録する場合の処理について、図10を参照しながら説明する。図10は、第一の実施形態のパッケージの表示及びバージョンの登録処理の一例を示すシーケンス図である。以降では、設計書パッケージに含まれるコンテンツの一覧を表示して、当該表示された設計書パッケージをバージョニングして登録する場合について説明する。
まず、端末装置10の表示装置12には、表示制御部105により、図11(a)に示すような画面1400が表示されているものとする。
ユーザUは、図11(a)に示す画面1400において、パッケージID「P001」が対応付けられた「設計書」ボタン1401を押下して、表示するパッケージの選択操作を行う(ステップS1001)。すると、端末装置10の入力受付部101は、当該選択操作を受け付ける。
端末装置10の取得要求部104は、入力受付部101により当該選択操作が受け付けられると、選択されたパッケージに含まれるコンテンツを取得するためのパッケージの取得要求を管理装置20に送信する(ステップS1002)。ここで、当該取得要求には、パッケージの選択操作により選択されたパッケージのパッケージIDが含まれる。
管理装置20の検索条件取得部221は、パッケージの取得要求を受信すると、当該取得要求に含まれるパッケージIDに対応するパッケージ定義レコードをパッケージ定義DB206から取得する。そして。検索条件取得部221は、取得したパッケージ定義レコードに含まれる検索条件を取得する(ステップS1003)。
本実施形態では、検索条件取得部221は、パッケージの取得要求に含まれるパッケージID「P001」に対応するパッケージ定義レコードをパッケージ定義DB206から取得する。そして、検索条件取得部221は、取得したパッケージ定義レコードに含まれる検索条件「タグ=設計書」を取得する。
管理装置20の検索部222は、検索条件取得部221により取得された検索条件に基づいて、コンテンツレコードの検索処理を行い、コンテンツDB205からコンテンツレコードを取得する(ステップS1004)。すなわち、本実施形態では、検索部222は、検索条件「タグ=設計」に基づいて、コンテンツDB205を検索して、タグが「設計書」であるコンテンツレコードをコンテンツDB205から取得する。なお、本ステップにおける検索処理の詳細については、後述する。
管理装置20のパッケージ登録処理部203は、検索部222により取得されたコンテンツレコードを端末装置10に送信する(ステップS1005)。
端末装置10の表示制御部105は、管理装置20からコンテンツレコードを受信すると、当該コンテンツレコードに基づいて、図11(b)に示すような画面1500を表示装置12に表示させる(ステップS1006)。
ここで、図11(b)に示す画面1500の表示領域1501には、受信したコンテンツレコードに基づくコンテンツの一覧が表示されている。すなわち、表示領域1501には、ユーザUにより選択された設計書パッケージに含まれるコンテンツを示すアイコン等の表示部品が一覧で表示される。また、当該表示部品には、受信したコンテンツレコードに含まれるコンテンツバージョン、タグ、及びコンテンツ名が表示されている。これにより、ユーザUは、設計書パッケージに含まれるコンテンツのコンテンツバージョン、タグ、及びコンテンツ名の一覧を取得することができる。
以上のように、本実施形態のバージョン管理システム1では、コンテンツレコードに含まれるタグに対する検索条件によりパッケージを定義する。このため、ユーザUは、コンテンツを管理装置20に登録する際に、当該コンテンツが含まれるパッケージを明示的に指定する必要がない。換言すれば、本実施形態のバージョン管理システム1では、ユーザUがコンテンツを管理装置20に登録すると、当該コンテンツを示すコンテンツデータに対応付けられたタグに応じて、当該コンテンツが適切なパッケージに追加される。
一方で、パッケージの作成を所望するユーザは、パッケージIDと、当該パッケージIDで示されるパッケージを定義する検索条件とを指定したパッケージ定義レコードを作成すれば良い。すなわち、パッケージの作成を所望するユーザも、パッケージに含まれるコンテンツを明示的に指定する必要はない。
次に、端末装置10に表示された設計書パッケージをバージョニングして登録する場合について説明する。
ユーザUは、図12(a)に示すような設計パッケージに含まれるコンテンツの一覧が表示領域1601に表示されている画面1600において、バージョン入力欄1602にパッケージバージョンを入力する。そして、ユーザUは、「作成」ボタン1603を押下して、パッケージの登録操作を行う(ステップS1007)。すると、端末装置10の入力受付部101は、当該登録操作を受け付ける。ここで、ユーザUは、バージョン入力欄1602にパッケージバージョン「2.0」と入力したものとする。
端末装置10の登録要求部103は、入力受付部101により当該登録操作が受け付けられると、設計書パッケージのバージョンを登録するためのパッケージバージョンの登録要求を管理装置20に送信する(ステップS1008)。ここで、当該登録要求には、設計書パッケージのパッケージIDと、バージョン入力欄1602に入力されたパッケージバージョンとが含まれる。
管理装置20の構成管理レコード生成部223は、当該登録要求を受信すると、構成管理レコードを生成する(ステップS1009)。
より具体的には、構成管理レコード生成部223は、ステップS1004で検索部222により取得されたコンテンツレコードのコンテンツID及びコンテンツバージョンを、パッケージID及びパッケージバージョンと対応付けて構成管理レコードを生成する。
ここで、本実施形態では、ユーザUにより入力されたパッケージバージョンを用いて構成管理レコードを生成したが、これに限られない。すなわち、パッケージバージョンをユーザUに入力させずに、管理装置20がパッケージバージョンを採番しても良い。
次に、管理装置20の構成管理登録部224は、構成管理レコード生成部223により生成された構成管理レコードを構成管理DB207に格納する(ステップS1010)。そして、管理装置20のパッケージ登録処理部203は、登録された設計書パッケージのパッケージバージョンを端末装置10に送信する(ステップS1011)。
端末装置10の表示制御部105は、管理装置20からコンテンツバージョンを受信すると、当該コンテンツバージョンに基づいて、図12(b)に示すような画面1700を表示装置12に表示させる(ステップS1012)。
ここで、図12(b)に示す画面1700には、管理装置20に登録されたパッケージバージョン「2.0」の設計書パッケージに含まれるコンテンツの一覧を表示させるための「v2.0」ボタン1701が追加されている。これにより、ユーザUは、パッケージバージョン「2.0」の設計書パッケージに含まれるコンテンツの一覧を表示領域1702に表示させることができるようになる。
以上のように、本実施形態のバージョン管理システム1では、パッケージ定義レコードに含まれる検索条件に基づいて表示されたパッケージに対して、バージョンを付与して登録することができる。換言すれば、本実施形態のバージョン管理システム1では、ユーザの登録操作に応じて、表示されたパッケージのスナップショットを登録して、バージョン管理する。これにより、ユーザは、パッケージに含まれるコンテンツが頻繁に追加等されるような場合においても、パッケージのバージョン管理を容易に行うことができる。
次に、図10のステップS1004におけるコンテンツレコードの検索処理について、図13を参照しながら説明する。図13は、第一の実施形態のコンテンツレコードの検索処理の一例を示すフローチャートである。
まず、検索部222は、検索条件取得部221により取得された検索条件を満たすコンテンツレコードをコンテンツDB205から取得する(ステップS1301)。
より具体的には、例えば、検索条件取得部221により取得された検索条件が「タグ=設計書」である場合、検索部222は、図14(a)に示すコンテンツDB205から図14(b)に示すコンテンツレコードを取得する。すなわち、検索部222は、図14(a)に示すコンテンツDB205に含まれるコンテンツレコードのうち、タグが「設計書」であるコンテンツレコードを取得する。
次に、検索部222は、ステップS1301で取得されたコンテンツレコードのうち、コンテンツIDが同一であるコンテンツレコードが存在するか否かを判定する(ステップS1302)。
ステップS1302において、コンテンツIDが同一であるコンテンツレコードが存在しない場合、検索部222は、処理を終了する。すなわち、この場合、パッケージ登録処理部203は、ステップS1301で検索部222により取得されたコンテンツレコードを端末装置10に送信する。
ステップS1302において、コンテンツIDが同一であるコンテンツレコードが存在する場合、検索部222は、当該同一であるコンテンツレコードについて、コンテンツバージョンが最新のコンテンツレコード以外を削除する(ステップS1303)。そして、検索部222は、当該削除後のコンテンツレコードを取得する。
より具体的には、図14(b)に示すコンテンツレコードのコンテンツIDが「C003」であるコンテンツレコードについて、検索部222は、コンテンツバージョンが「0.2」(最新)のコンテンツレコード以外を削除する。すなわち、検索部222は、コンテンツバージョンが「0.1」であるコンテンツID「C003」のコンテンツレコードを削除する。これにより、検索部222は、図14(c)に示すコンテンツレコードを取得する。この場合、パッケージ登録処理部203は、図14(c)に示すコンテンツレコードを端末装置10に送信する。
以上のように、本実施形態のバージョン管理システム1では、検索条件に基づいてパッケージの構成要素となるコンテンツレコードを検索して取得する。このため、ユーザUは、パッケージに含まれるコンテンツを指定することなく、検索条件を設定することでパッケージを定義することができる。
次に、バージョニングして登録されたパッケージに含まれるコンテンツの一覧を表示させる場合の処理について、図15を参照しながら説明する。図15は、第一の実施形態の特定バージョンのパッケージの表示処理の一例を示すシーケンス図である。
まず、端末装置10の表示装置12には、表示制御部105により、図16(a)に示すような画面1800が表示されているものとする。以降では、パッケージバージョン「1.0」の設計書パッケージに含まれるコンテンツの一覧を表示領域1801に表示させる場合について説明する。
ユーザUは、図16(a)に示す画面1800において、パッケージバージョン「1.0」の設計書パッケージに含まれるコンテンツの一覧を表示させるための「v1.0」ボタン1802を押下して、パッケージバージョンの選択操作を行う(ステップS1501)。すると、端末装置10の入力受付部101は、当該選択操作を受け付ける。
ここで、当該「v0.1」ボタン1802には、設計書パッケージのパッケージID「P001」及びパッケージバージョン「0.1」が対応付けられている。なお、同様に、画面1800において、「v0.2」ボタン1803には、設計書パッケージのパッケージID「P001」及びパッケージバージョン「0.2」が対応付けられている。
端末装置10の取得要求部104は、入力受付部101により当該選択操作が受け付けられると、選択されパッケージバージョンのパッケージに含まれるコンテンツを取得するためのパッケージ取得要求を管理装置20に送信する(ステップS1502)。ここで、当該取得要求には、当該選択操作により選択されたパッケージのパッケージIDと、パッケージバージョンとが含まれる。
管理装置20の構成管理取得部231は、パッケージの取得要求を受信すると、当該取得要求に含まれるパッケージID及びパッケージバージョンに対応する構成管理レコードを構成管理DB207から取得する(ステップS1503)。すなわち、本実施形態では、構成管理取得部231は、パッケージID「P001」及びパッケージバージョン「0.1」である構成管理レコードを構成管理DB207から取得する。
次に、管理装置20のコンテンツ取得部232は、構成管理取得部231により取得された構成管理レコードに含まれるコンテンツID及びコンテンツバージョンに対応するコンテンツレコードをコンテンツDB205から取得する(ステップS1504)。すなわち、本実施形態では、コンテンツ取得部232は、パッケージバージョンが「0.1」である設計書パッケージ(パッケージID「P001」)に含まれるコンテンツのコンテンツレコードをコンテンツDB205から取得する。
そして、パッケージ表示処理部204は、コンテンツ取得部232により取得されたコンテンツレコードを端末装置10に送信する(ステップS1505)。
端末装置10の表示制御部105は、管理装置20からコンテンツレコードを受信すると、当該コンテンツレコードに基づいて、図16(b)に示すような画面1910を表示装置12に表示させる(ステップS1506)。すなわち、表示制御部105は、ユーザUにより選択されたパッケージバージョン「0.1」の設計書パッケージに含まれるコンテンツを示す表示部品の一覧を表示領域1911に表示させる。これにより、ユーザUは、登録されたパッケージバージョンのパッケージに含まれるコンテンツのコンテンツバージョン、タグ、及びコンテンツ名の一覧を取得することができる。
なお、ユーザUが画面1800において、「v0.2」ボタン1803を押下した場合、端末装置10の表示装置12には、図16(c)に示すような画面1920が表示される。画面1920には、ユーザUにより選択されたパッケージバージョン「0.2」の設計書パッケージに含まれるコンテンツを示す表示部品の一覧が表示領域1921に表示されている。
以上のように、本実施形態のバージョン管理システム1では、バージョニングされたパッケージに含まれるコンテンツの一覧を表示させることができる。
[第二の実施形態]
次に、第二の実施形態のバージョン管理システム1について説明する。第二の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有する箇所には第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
本実施形態は、端末装置10のユーザが、管理装置20で管理されているコンテンツの削除を行うことができるものである。
<機能構成>
次に、第二の実施形態のバージョン管理システム1の機能構成について、図17を参照しながら説明する。図17は、第二の実施形態のバージョン管理システムの機能構成の一例を示す図である。
図17に示す端末装置10は、削除要求部106を有する。削除要求部106は、端末装置10にインストールされた端末プログラム30が、CPU16に実行させる処理により実現される。
削除要求部106は、入力受付部101が受け付けた入力操作に応じて、コンテンツの削除要求を管理装置20に送信する。
図17に示す管理装置20は、コンテンツ一覧処理部201A、パッケージ登録処理部203A、及びコンテンツ削除処理部208を有する。これら各部は、管理装置20にインストールされたバージョン管理プログラム40が、CPU16に実行させる処理により実現される。
また、図17に示す管理装置20は、コンテンツDB205Aを有する。コンテンツDB205Aは、HDD18等により実現可能である。
コンテンツDB205Aは、コンテンツレコードを管理する。ここで、コンテンツDB205Aの詳細について、図18を参照しながら説明する。図18は、第二の実施形態のコンテンツDBの一例を示す図である。
図18に示すように、コンテンツDB205Aで管理されるコンテンツレコードは、データ項目として、さらに、削除区分を有する。削除区分は、コンテンツの削除要求がなされたか否かを示す区分である。すなわち、本実施形態の管理装置20は、端末装置10からコンテンツの削除要求を受信すると、当該削除要求に係るコンテンツレコードの削除区分を「済」に更新する。
このように、本実施形態の管理装置20は、削除要求に係るコンテンツレコードをすぐには削除せずに、削除区分を「済」に更新する。これにより、本実施形態のバージョン管理システム1では、例えば、コンテンツDB205Aのロールバック等を容易に行うことができる。なお、削除区分が「済」のコンテンツレコードは、例えば、定期的なコンテンツDB205Aのメンテナンス等において削除すれば良い。
コンテンツ一覧処理部201Aは、管理装置20で管理されているコンテンツの一覧を表示させるためのコンテンツの取得要求に応じて、コンテンツDB205Aからコンテンツレコードを取得する。ここで、コンテンツ一覧処理部201Aは、コンテンツDB205Aに格納されているコンテンツレコードのうち、削除区分に応じてコンテンツレコードを取得する。すなわち、コンテンツ一覧処理部201Aは、コンテンツDB205Aから削除区分が「未済」であるコンテンツレコードを取得する。
コンテンツ削除処理部208は、管理装置20からコンテンツを削除するためのコンテンツの削除要求に応じて、コンテンツを管理装置20から削除する処理を行う。より具体的には、コンテンツ削除処理部208は、コンテンツの削除要求に応じて、コンテンツDB205Aに格納されている削除要求に係るコンテンツデータの削除区分を「済」に更新する。
パッケージ登録処理部203Aは、検索部222Aを有する。検索部222Aは、検索条件取得部221により取得された検索条件に基づいて、コンテンツDB205を検索して、検索条件を満たすコンテンツレコードのうち、削除区分が「未済」であるコンテンツレコードを取得する。
<処理の詳細>
次に、第二の実施形態のバージョン管理システム1の処理の詳細について説明する。
まず、ユーザUが端末装置10を用いて、管理装置20で管理されているコンテンツを削除する処理について、図19を参照しながら説明する。図19は、第二の実施形態のコンテンツ削除処理の一例を示すシーケンス図である。
まず、端末装置10の表示装置12には、表示制御部105により、図20(a)に示すような画面2100が表示されているものとする。
ユーザUは、図20(a)に示す画面2100において、削除対象のコンテンツを示すアイコン等の表示部品2101を選択した上で、「削除」ボタン2102を押下して、コンテンツの削除操作を行う(ステップS1901)。すると、端末装置10の入力受付部101は、当該削除操作を受け付ける。
端末装置10の削除要求部106は、入力受付部101により当該削除操作が受け付けられると、選択されたコンテンツを削除するためのコンテンツの削除要求を管理装置20に送信する(ステップS1902)。ここで、当該削除要求には、選択されたコンテンツのコンテンツIDと、コンテンツバージョンとが含まれる。
管理装置20のコンテンツ削除処理部208は、コンテンツの削除要求を受信すると、コンテンツDB205Aにおいて、当該削除要求に含まれるコンテンツID及びコンテンツバージョンに対応するコンテンツレコードの削除区分を「済」に更新する(ステップS1903)。これにより、ユーザUにより選択されたコンテンツのコンテンツレコードの削除区分が「済」に更新される。
管理装置20のコンテンツ削除処理部208は、削除区分を「済」に更新したコンテンツレコードのコンテンツID及びコンテンツバージョンを端末装置10に送信する(ステップS1904)。
端末装置10の表示制御部105は、管理装置20からコンテンツID及びコンテンツバージョンを受信すると、図20(b)に示すような画面2200を表示装置12に表示させる(ステップS1905)。
ここで、図20(b)に示す画面2200では、表示領域2201において、ユーザUが削除対象として選択した表示部品2101が削除されている。このように、本実施形態では、表示領域2201において、削除区分が「済」であるコンテンツレコードにより示されるコンテンツは表示されない。
以上のように、本実施形態のバージョン管理システム1では、管理装置20で管理されているコンテンツレコードの削除区分を「済」に更新することで、コンテンツの削除を行うことができる。
次に、第二の実施形態のコンテンツレコードの検索処理について、図21を参照しながら説明する。図21は、第二の実施形態のコンテンツレコードの検索処理の一例を示すフローチャートである。
検索部222Aは、ステップS1303で取得されたコンテンツレコードのうち、削除区分が「未済」であるコンテンツレコードを取得する(ステップS2101)。すなわち、検索部222Aは、ステップS1303で取得されたコンテンツレコードのうち、削除区分が「済」であるコンテンツレコードは取得しない。このため、削除要求に係るコンテンツのコンテンツレコードは、ユーザUにより選択されたパッケージに含まれない。
以上のように、本実施形態のバージョン管理システム1では、削除区分が「済」であるコンテンツレコードを検索結果として取得しないことで、当該コンテンツレコードにより示されるコンテンツがパッケージに含まれないようにすることができる。
このため、ユーザUは、コンテンツの削除を行いたい場合には、当該コンテンツの削除操作を行えば良く、当該コンテンツをパッケージから明示的に削除する必要はない。したがって、ユーザは、パッケージに含まれるコンテンツが頻繁に削除等されるような場合にもおいても、パッケージのバージョン管理を容易に行うことができる。
[第三の実施形態]
次に、第三の実施形態のバージョン管理システム1について説明する。第三の実施形態の説明では、第一の実施形態との相違点について説明し、第一の実施形態と同様の機能構成を有する箇所には第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
本実施形態は、パッケージに対して、当該パッケージが有効な期間を示す有効期間を対応付けたものである。これにより、端末装置10では、日付を指定することにより、当該日付において有効なパッケージに含まれるコンテンツの一覧を表示させることができる。
<機能構成>
次に、第三の実施形態のバージョン管理システム1の機能構成について、図22を参照しながら説明する。図22は、第三の実施形態のバージョン管理システムの機能構成の一例を示す図である。
図22に示す管理装置20は、パッケージ登録処理部203B及びパッケージ表示処理部204Aを有する。これら各部は、管理装置20にインストールされたバージョン管理プログラム40が、CPU16に実行させる処理により実現される。
また、図22に示す管理装置20は、構成管理DB207Aを有する。構成管理DB207Aは、HDD18等により実現可能である。
構成管理DB207Aは、構成管理レコードを管理する。ここで、構成管理DB207Aの詳細について、図23を参照しながら説明する。図23は、第三の実施形態の構成管理DBの一例を示す図である。
図23に示すように、構成管理DB207Aで管理される構成管理レコードは、データ項目として、さらに、有効期間を有する。有効期間には、パッケージが有効となる日付を示す開始日付と、パッケージが有効でなくなる日付を示す終了日付とが含まれる。
これにより、開始日付が設定されている構成管理レコードにより示されるパッケージは、当該設定されている日付以降、有効なパッケージとなる。一方、終了日付が設定されている構成管理レコードにより示されるパッケージは、当該設定されている日付以降、無効なパッケージとなる。すなわち、構成管理レコードに含まれるパッケージIDにより示されるパッケージは、開始日付以降で、かつ、終了日付以前の期間において、有効なパッケージとなる。
ここで、有効なパッケージとは、当該パッケージの利用が可能なことを意味する。すなわち、例えば、当該パッケージに含まれるコンテンツの取得や削除、修正等が可能なことを意味する。一方、無効なパッケージとは、当該パッケージを利用できないことを意味する。
なお、開始日付が未設定(ブランク)である構成管理レコードに含まれるパッケージIDより示されるパッケージは、無効なパッケージとして扱えば良い。また、終了日付が未設定(ブランク)である構成管理レコードに含まるパッケージIDより示されるパッケージは、有効なパッケージとして扱えば良い。
パッケージ登録処理部203Bは、構成管理レコード生成部223Aを有する。構成管理レコード生成部223Aは、パッケージバージョンの登録要求に応じて、構成管理レコードを生成する。より具体的には、構成管理レコード生成部223Bは、コンテンツレコードのコンテンツID及びコンテンツバージョンを、当該登録要求に含まれるパッケージID、パッケージバージョン、及び有効期間と対応付けて構成管理レコードを生成する。
パッケージ表示処理部204Aは、構成管理取得部231Aを有する。構成管理取得部231Aは、パッケージの取得要求に応じて、当該取得要求に含まれるパッケージID及びパッケージバージョンに対応する構成管理レコードであって、有効なパッケージの構成管理レコードを構成管理DB207から取得する。
<処理の詳細>
次に、第三の実施形態のバージョン管理システム1の処理の詳細について説明する。
まず、コンテンツを構成要素とするパッケージを端末装置10に表示させて、表示されたパッケージをバージョニングして登録する場合の処理について、図24を参照しながら説明する。図24は、第三の実施形態のパッケージの表示及びバージョンの登録処理の一例を示すシーケンス図である。
ここで、端末装置10には、ステップS1006で表示された設計書パッケージをバージョンニングして登録する際に、当該バージョニングされたパッケージの有効期間を設定するための図25に示すような画面2300が表示されているものとする。
図25に示す画面2300には、パッケージバージョン「0.2」の設計書パッケージの有効期間の開始日付を入力するための開始入力欄2301と、当該設計書パッケージの有効期間の終了日付を入力するための終了入力欄2302とが含まれる。
ユーザUは、図25に示す画面2300において、開始入力欄2301及び終了入力欄2302に、それぞれ開始日付及び終了日付を入力した上で、「設定」ボタン2303を押下して、パッケージの登録操作を行う(ステップS2401)。すると、端末装置10の入力受付部101は、当該登録操作を受け付ける。
端末装置10の登録要求部103は、入力受付部101により当該登録操作が受け付けられると、設計書パッケージのバージョンを登録するためのパッケージバージョンの登録要求を管理装置20に送信する(ステップS2402)。ここで、当該登録要求には、設計書パッケージのパッケージIDと、入力されたパッケージバージョンと、開始入力欄2301に入力された開始日付と、終了入力欄2302に入力された終了日付とが含まれる。
管理装置20の構成管理レコード生成部223Aは、当該登録要求を受信すると、構成管理レコードを生成する(ステップS2403)。
より具体的には、構成管理レコード生成部223Aは、検索部222により取得されたコンテンツレコードのコンテンツID及びコンテンツバージョンを、パッケージID、パッケージバージョン、開始日付、及び終了日付と対応付けて構成管理レコードを生成する。なお、開始日付及び終了日付は、有効期間に含まれるデータ項目として、コンテンツID及びコンテンツバージョンに対応付けられる。
次に、管理装置20の構成管理登録部224は、構成管理レコード生成部223Aにより生成された構成管理レコードを構成管理DB207Aに格納する(ステップS2404)。そして、管理装置20のパッケージ登録処理部203Aは、登録された設計書パッケージのパッケージバージョンを端末装置10に送信する(ステップS2405)。
以上のように、本実施形態のバージョン管理システム1では、パッケージ定義レコードに含まれる検索条件に基づいて表示されたパッケージに対してバージョンを付与して登録する際に、当該登録されるバージョンのパッケージの有効期間を設定することができる。これにより、ユーザUは、登録したバージョンのパッケージが有効となる開始日付、及び当該パッケージが無効となる終了日付を設定することができる。
したがって、本実施形態のバージョン管理システム1では、例えば、ある特定の期間販売される製品の設計書パッケージを当該特定期間だけ有効とすることができる。また、例えば、パッケージの管理者が人事異動等により他部署に異動した場合や退職した場合等に終了日付を設定することで、当該パッケージを無効とすることもできる。このように、本実施形態のバージョン管理システム1では、パッケージの開始日付及び終了日付を設定することで、任意の期間においてパッケージを有効にすることができる。
次に、バージョニングして登録されたパッケージのうち、ユーザUにより指定された特定の日付において有効なパッケージに含まれるコンテンツの一覧を表示させる場合の処理について、図26を参照しながら説明する。図26は、第三の実施形態の特定日付で有効なパッケージの表示処理の一例を示すシーケンス図である。
ここで、端末装置10には、バージョニングして登録されたパッケージのうち、指定された日付で有効なバージョンのパッケージを表示させるための図27(a)に示すような画面2400が表示されているものとする。
ユーザUは、図27(a)に示す画面2400において、パッケージ一覧2401から所望のパッケージを選択し、日付入力欄2402に日付を入力した上で、「OK」ボタン2403を押下して、パッケージ及び日付の入力操作を行う(ステップS2601)。すると、端末装置10の入力受付部101は、当該登録操作を受け付ける。
端末装置10の取得要求部104は、入力受付部101により当該入力操作を受け付けると、選択されたパッケージで、入力された日付において有効なパッケージのバージョンを取得するためのパッケージの取得要求を管理装置20に送信する(ステップS2602)。ここで、当該取得要求には、ユーザにより選択されたパッケージのパッケージIDと、入力された日付とが含まれる。
管理装置20の構成管理取得部231Aは、当該取得要求に含まれるパッケージIDに対応する構成管理レコードであって、有効なパッケージの構成管理レコードを構成管理DB207Aから取得する(ステップS2603)。すなわち、構成管理取得部231Aは、当該取得要求に含まれるパッケージIDに対応する構成管理レコードであって、開始日付が入力された日付以前で、かつ、終了日付が入力された日付以降である構成管理レコードを取得する。
次に、管理装置20のコンテンツ取得部232は、構成管理取得部231Aにより取得された構成管理レコードに含まれるコンテンツID及びコンテンツバージョンに対応するコンテンツレコードをコンテンツDB205から取得する(ステップS2604)。
そして、パッケージ表示処理部204Aは、コンテンツ取得部232により取得されたコンテンツレコードを端末装置10に送信する(ステップS2605)。
端末装置10の表示制御部105は、管理装置20からコンテンツレコードを受信すると、当該コンテンツレコードに基づいて、図27(b)に示すような画面2500を表示装置12に表示させる(ステップS2606)。
ここで、図27(b)に示す画面2500の表示領域2501には、ユーザUにより入力された日付において有効なパッケージバージョン「0.1」の設計書パッケージに含まれるコンテンツの一覧2502が表示されている。また、同様に、表示領域2501には、ユーザUにより入力された日付において有効なパッケージバージョン「0.2」の設計書パッケージに含まれるコンテンツの一覧2503が表示されている。
このように、本実施形態では、ユーザUが入力した日付において有効なすべてのバージョンのパッケージに含まれるコンテンツの一覧が表示される。これにより、本実施形態では、ユーザUは、設定した日付において有効なすべてのバージョンのパッケージを得ることができる。
以上のように、本実施形態のバージョン管理システム1では、ユーザが設定した日付において有効なパッケージを表示することができる。これにより、例えば、過去のある期間に販売していた製品の設計書をユーザが得たい場合等に、ユーザは日付を設定することで、当該製品の設計書のパッケージを得ることができるようになる。
なお、本実施形態では、ユーザが選択した一のパッケージにおいて、ユーザが設定した日付で有効なすべてのバージョンのパッケージを表示させたが、これに限られない。例えば、ユーザが複数のパッケージを選択して、当該複数のパッケージにおいて、ユーザが設定した日付で有効なすべてのバージョンのパッケージを表示させても良い。
以上、本発明の実施形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1 バージョン管理システム
10 端末装置
20 管理装置
30 端末プログラム
40 バージョン管理プログラム
101 入力受付部
102 タグ付与部
103 登録要求部
104 取得要求部
105 表示制御部
201 コンテンツ一覧処理部
202 コンテンツ登録処理部
203 パッケージ登録処理部
204 パッケージ表示処理部
205 コンテンツデータベース
206 パッケージ定義データベース
207 構成管理データベース
211 コンテンツレコード生成部
212 コンテンツ登録部
221 検索条件取得部
222 検索部
223 構成管理レコード生成部
224 構成管理登録部
231 構成管理取得部
232 コンテンツ取得部
特許第3613504号公報

Claims (7)

  1. 1以上のコンテンツが含まれるパッケージのバージョンを管理するバージョン管理システムであって、
    前記パッケージ毎に定義された検索条件に基づいて、前記コンテンツを示すコンテンツレコードを管理するコンテンツデータベースを検索し、前記検索条件に対応するパッケージに含まれるコンテンツを示すコンテンツレコードを取得する取得手段と、
    前記取得手段により取得されたコンテンツレコード毎に、前記検索条件に対応するパッケージを識別する識別情報と、該パッケージのバージョンを示す第1のバージョン情報とを対応付けた構成管理レコードを構成管理データベースに格納する構成管理手段と、
    を有するバージョン管理システム。
  2. 前記検索条件は、前記コンテンツレコードに含まれるタグ情報に関する条件であり、
    前記取得手段は、
    前記コンテンツデータベースで管理されるコンテンツレコードのうち、前記検索条件を満たすタグ情報が含まれるコンテンツレコードを取得する、請求項1に記載のバージョン管理システム。
  3. 前記コンテンツレコードは、該コンテンツレコードにより示されるコンテンツを識別するコンテンツIDと、該コンテンツのバージョンを示す第2のバージョン情報を含み、
    前記取得手段は、
    前記検索条件を満たすタグ情報が含まれるコンテンツレコードのうち、前記コンテンツIDが同じコンテンツレコードが存在する場合は、前記第2のバージョン情報が最新であるコンテンツレコードを取得する、請求項2記載のバージョン管理システム。
  4. 前記コンテンツレコードは、該コンテンツレコードにより示されるコンテンツに対して削除要求がなされたか否かを示す削除区分情報を含み、
    前記取得手段は、
    さらに、前記コンテンツレコードに含まれる削除区分情報が、削除要求がなされていないことを示す情報であるコンテンツレコードを取得する、請求項2又は3記載のバージョン管理システム。
  5. 前記取得手段により取得されたコンテンツレコードを、前記バージョン管理システムにネットワークを介して接続される端末装置に送信して、前記コンテンツレコードにより示されるコンテンツを含むパッケージを表示させる表示手段を有し、
    前記構成管理手段は、
    前記コンテンツレコード毎に、前記識別情報と、前記端末装置において表示された前記パッケージに設定された第1のバージョン情報とを対応付けた構成管理レコードを構成管理データベースに格納する、請求項1ないし4のいずれか1項に記載のバージョン管理システム。
  6. 1以上のコンテンツが含まれるパッケージのバージョンを管理するバージョン管理装置であって、
    前記パッケージ毎に定義された検索条件に基づいて、前記コンテンツを示すコンテンツレコードを管理するコンテンツデータベースを検索し、前記検索条件に対応するパッケージに含まれるコンテンツを示すコンテンツレコードを取得する取得手段と、
    前記取得手段により取得されたコンテンツレコード毎に、前記検索条件に対応するパッケージを識別する識別情報と、該パッケージのバージョンを示す第1のバージョン情報とを対応付けた構成管理レコードを構成管理データベースに格納する構成管理手段と、
    を有するバージョン管理装置。
  7. 1以上のコンテンツが含まれるパッケージのバージョンを管理するバージョン管理装置を、
    前記パッケージ毎に定義された検索条件に基づいて、前記コンテンツを示すコンテンツレコードを管理するコンテンツデータベースを検索し、前記検索条件に対応するパッケージに含まれるコンテンツを示すコンテンツレコードを取得する取得手段、
    前記取得手段により取得されたコンテンツレコード毎に、前記検索条件に対応するパッケージを識別する識別情報と、該パッケージのバージョンを示す第1のバージョン情報とを対応付けた構成管理レコードを構成管理データベースに格納する構成管理手段、
    として機能させるためのプログラム。
JP2015166704A 2015-08-26 2015-08-26 バージョン管理システム、バージョン管理装置、及びプログラム Pending JP2017045237A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2015166704A JP2017045237A (ja) 2015-08-26 2015-08-26 バージョン管理システム、バージョン管理装置、及びプログラム
US15/743,074 US20190042608A1 (en) 2015-08-26 2016-08-19 Version management system, version management apparatus, and non-transitory recording medium
PCT/JP2016/003794 WO2017033447A1 (en) 2015-08-26 2016-08-19 Version management system, version management apparatus, program, and non-transitory recording medium
EP16759888.7A EP3341835A1 (en) 2015-08-26 2016-08-19 Version management system, version management apparatus, program, and non-transitory recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015166704A JP2017045237A (ja) 2015-08-26 2015-08-26 バージョン管理システム、バージョン管理装置、及びプログラム

Publications (1)

Publication Number Publication Date
JP2017045237A true JP2017045237A (ja) 2017-03-02

Family

ID=56852318

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015166704A Pending JP2017045237A (ja) 2015-08-26 2015-08-26 バージョン管理システム、バージョン管理装置、及びプログラム

Country Status (4)

Country Link
US (1) US20190042608A1 (ja)
EP (1) EP3341835A1 (ja)
JP (1) JP2017045237A (ja)
WO (1) WO2017033447A1 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805889A (en) * 1995-10-20 1998-09-08 Sun Microsystems, Inc. System and method for integrating editing and versioning in data repositories
JP3613504B2 (ja) 1997-11-05 2005-01-26 株式会社日立製作所 版管理・構成管理方法および装置および版管理・構成管理プログラムを記録したコンピュータ読み取り可能な記録媒体
US7526483B2 (en) * 2003-03-27 2009-04-28 Microsoft Corporation System and method for virtual folder sharing including utilization of static and dynamic lists

Also Published As

Publication number Publication date
US20190042608A1 (en) 2019-02-07
EP3341835A1 (en) 2018-07-04
WO2017033447A1 (en) 2017-03-02

Similar Documents

Publication Publication Date Title
US11423359B2 (en) Managing tasks in a content management system
US11989694B2 (en) Managing projects in a content management system
US20140324873A1 (en) Method, device and recording medium for managing application icon
US11019156B1 (en) Automatic discovery and registration of service applications for files introduced to a user interface
EP3252592A1 (en) Method and device for storing and reading data
CN112464625B (zh) 单据生成方法、装置、计算机设备和存储介质
US20180144038A1 (en) Propagating Computable Dependencies within Synchronized Content Items Between First and Third-Party Applications
JP4959501B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP7381290B2 (ja) 計算機システム及びデータの管理方法
JP2017045237A (ja) バージョン管理システム、バージョン管理装置、及びプログラム
US10204106B2 (en) Management method, management device, and management system
CN113434585A (zh) 资源保存方法及设备
JP6270263B2 (ja) 情報管理システムおよび情報処理装置
US20190005077A1 (en) Retrieval system and retrieval apparatus
US12003591B2 (en) Automatic discovery and registration of service applications for files introduced to a user interface
CN113515504B (zh) 数据管理方法、装置、电子设备以及存储介质
US20210103385A1 (en) Information processing device and non-transitory computer readable medium
JP2010067233A (ja) ワークフロー管理システム、ワークフロー管理方法、及びワークフロー管理プログラム
CN116841961A (zh) 一种多领域仿真数据管理方法、装置及存储介质
Munro et al. Working with Tables
JP2019032796A (ja) ファイル管理装置、ファイル管理システム、ファイル管理方法、及びプログラム
JP2017146923A (ja) 設計書の入出力装置、設計書の入出力システム及び設計書の入出力方法