JP2010092228A - System, method and program for controlling access to object model - Google Patents
System, method and program for controlling access to object model Download PDFInfo
- Publication number
- JP2010092228A JP2010092228A JP2008260923A JP2008260923A JP2010092228A JP 2010092228 A JP2010092228 A JP 2010092228A JP 2008260923 A JP2008260923 A JP 2008260923A JP 2008260923 A JP2008260923 A JP 2008260923A JP 2010092228 A JP2010092228 A JP 2010092228A
- Authority
- JP
- Japan
- Prior art keywords
- model
- model element
- extended metadata
- user
- local
- 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.)
- Granted
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
Description
本発明は、一般的にはコンピュータ上のオブジェクトのアクセス制御に関する。 本発明は特に、複数のモデル要素を備える、サーバ・コンピュータに記憶されたオブジェクト・モデルに対して、複数のユーザからのアクセスを各モデル要素ごとに制御することができるシステム、そのための方法、およびコンピュータ・プログラムに関する。 The present invention generally relates to access control of objects on a computer. In particular, the present invention is directed to a system capable of controlling access from a plurality of users for each model element to an object model stored in a server computer comprising a plurality of model elements, a method therefor, and It relates to computer programs.
近年、モデル駆動型の開発プロセスに注目が集まっている。 モデル駆動型の開発プロセスでは、設計フェーズにおいて、モデル編集ツール(例えば、RSA(Rational Software Architect)など)を用いて、これから作成しようとするソフトウェアやシステムを、UML(Unified Modeling Language)やSysML(Systems Modeling Language)等の、オブジェクト・モデリングのために標準化された仕様記述言語を用いてモデルの記述を行う。 その後、そのソフトウェアやシステムを、記述されたそのモデルに基づいて実装(Implement)したり、そのモデル上で検証したりする工程が行われていく。 In recent years, attention has been focused on model-driven development processes. In the model-driven development process, in the design phase, software or a system to be created using a model editing tool (for example, RSA (Rational Software Architect)) is used as UML (Unified Modeling Language) or SysML (Systems Systems). A model is described using a specification description language standardized for object modeling, such as Modeling Language. Thereafter, a process of implementing (implementing) the software or system based on the described model or verifying on the model is performed.
ここで、モデルをベースとした開発を行う場合、設計に必要な情報だけでなく、設計事由や検証のための制約式なども含めて、多くの情報がモデル内に記述されることになる。 このようなモデルの記述は、複数のモデル要素としてそのモデルを構成する。 通常、これらモデルの記述は、同一組織・企業内だけで共有されるだけではなく、例えば、後工程のエンジニア、あるいは、発注元のクライアントなどとも共有しなければならない。 しかしながら、モデルを構成する複数のモデル要素の内の1つにでも、機密情報となる情報が含まれていると、そのモデルをそのまま、納品したり共有したりすることができなくなる。 Here, when developing based on a model, not only information necessary for design but also a lot of information is described in the model including design reasons and constraint expressions for verification. Such a model description constitutes the model as a plurality of model elements. Normally, descriptions of these models are not only shared within the same organization / company, but also must be shared with, for example, an engineer at a later process or an ordering client. However, if even one of a plurality of model elements constituting a model includes confidential information, the model cannot be delivered or shared as it is.
このようなケースは、発注元のクライアントからOEMの供給要求を受け取ったサプライヤが、納品物としてのモデルを記述し、最終的にクライアントに対して納品物を提供するという実際のビジネス上のシナリオにおいてよく発生する問題である。 即ち、サプライヤはモデルを記述するだけでなく、記述したモデルを用いて検証などを行い、モデルの正しさを確認したり、パラメータを決めるための計算をモデルの記述を用いて行ったりしている。 しかしながら、これらの情報(制約条件などサプライヤにとって機密情報となるような情報)は、本来は、サプライヤ内に留めておきたい情報であり、発注元のクライアントには提供したくない情報であるため、これらの情報を隠して提供することが必要となる。 This is the case in an actual business scenario where a supplier who has received an OEM supply request from an ordering client describes a model as a delivery and finally provides the delivery to the client. This is a common problem. In other words, the supplier not only describes the model, but also verifies it using the described model, confirms the correctness of the model, and performs calculations for determining parameters using the model description. . However, these pieces of information (information that may be confidential to the supplier such as restrictions) are information that you want to keep in the supplier and that you do not want to provide to the client of the orderer. It is necessary to provide such information in a hidden manner.
通常、モデル編集ツールでは、モデルの管理単位として、1つのファイルに1つのモデルを記述するように実装されている。 即ち、モデルの管理は、ファイル単位でなされている。 そして、ファイルのバージョン管理ツール(例えば、CVS(Concurrent Version System)、CC(Rational ClearCase(商標))など)を用いて、ファイル単位で、複数のユーザ間での共有やバージョン管理がなされている。 したがって、ファイル単位でアクセス権を設定する通常のファイル・システムのアクセス制御を用いたのでは、モデル全体の単位でしかアクセスを制御できないことになる。 Normally, the model editing tool is implemented so that one model is described in one file as a model management unit. That is, the model is managed in units of files. A file version management tool (for example, CVS (Concurrent Version System), CC (Rational ClearCase (trademark)), etc.) is used for file sharing and version management among a plurality of users. Therefore, if the normal file system access control that sets the access right in units of files is used, the access can be controlled only in units of the entire model.
ここで、あるバージョンのモデルを発注元に納品または閲覧させるような場合に、そのモデルに含まれる機密情報の部分だけを削除して渡すことも可能である。 しかし、この場合には、納品を受けた発注元が、納品されたモデルを後で編集することは全く考慮されていない。 そのため、以後のモデル上で編集や修正を行わなければならない場合、本来必要な情報を削除してしまっていると、問題を引き起こす。 Here, when a model of a certain version is delivered or viewed by an ordering source, it is also possible to delete and pass only the confidential information part included in the model. However, in this case, it is not considered at all that the orderer who received the delivery edits the delivered model later. For this reason, when editing or correction has to be performed on a subsequent model, if necessary information is deleted, a problem occurs.
モデル全体の単位ではなく、モデルを構成するモデル要素等の単位でアクセスを制御する方法も試みられて来ている。
SPARX SYSTEMS社の製品、Enterprise Architectのマニュアル「アクセス権の活用」では、UMLのパッケージ単位、要素単位、およびダイアログ単位でアクセス権の設定やロックの設定ができる旨が開示されている。
また、ヨーロッパ特許EP1536309では、任意のビジネス・データ・オブジェクトに対してPermission Data Objectを適用してアクセスを管理する手法が提案されている。
更に、例えばRSAなどのモデル編集ツールでは、モデル本体を拡張子が .emx であるファイル名で管理し、モデルの一部を分割して、フラグメント・ファイルとして .efx という拡張子のファイル名で管理することが可能である。 即ち、モデルファイル内に、フラグメント・ファイルへの参照情報が記述されるため、モデル編集ツール上では、一つのモデルとして閲覧、編集することが可能となっている。 このように、モデルを分割しフラグメント・ファイルを作成することで、ファイルのバージョン管理ツールの機能を用いて、各フラグメント・ファイルに対してアクセス権を付与し、より小さい単位でアクセス制御をすることも可能ではある。
Attempts have also been made to control access not in units of the entire model but in units of model elements constituting the model.
The SPARX SYSTEMS product, Enterprise Architecture manual "Utilization of Access Rights" discloses that access rights and locks can be set in UML package units, element units, and dialog units.
European Patent EP 1536309 proposes a method for managing access by applying a permission data object to an arbitrary business data object.
For example, in a model editing tool such as RSA, the model body is managed with a file name with an extension of .emx, and a part of the model is divided and managed as a fragment file with a file name with an extension of .efx Is possible. That is, since reference information to the fragment file is described in the model file, it can be viewed and edited as one model on the model editing tool. In this way, by dividing the model and creating a fragment file, the access control is given to each fragment file by using the function of the file version management tool, and access control is performed in smaller units. Is also possible.
しかしながら、これらの方法をもってしても、例えば、モデルの構成要素である特定のモデル要素を1つのフラグメント・ファイルに割り当ててユーザ毎のアクセス制御をした場合、このフラグメント・ファイルへのアクセスが許可されないユーザは、この特定のモデル要素についての中身を見ることができないのは勿論のこと、この特定のモデル要素の存在を共有することもできない。 即ち、あるモデル要素について、複数のユーザ間でその存在は共有するが、そのうちの一部のユーザにはその中身は見せないようにすると言った、より有効的なアクセス管理をすることはできない。
更にまた、これらの方法では、あるモデル要素の一部の情報(例えば、検証に必要な寸法情報など)だけを複数のユーザ間で共有するといった、より詳細な情報へのアクセス管理を行うこともできない。
これらの結果、アクセスが許可されないモデル要素の存在を知り得ないあるユーザが、同じモデル要素を重複して設計をするといった好ましくない状況を誘発する。
However, even with these methods, for example, when a specific model element that is a component of a model is assigned to one fragment file and access control is performed for each user, access to the fragment file is not permitted. The user cannot see the contents of this particular model element, nor can he share the presence of this particular model element. That is, a certain model element cannot be managed more effectively by sharing the existence among a plurality of users but not showing the contents to some of them.
Furthermore, in these methods, it is possible to manage access to more detailed information such as sharing only a part of information of a certain model element (for example, dimension information necessary for verification) among a plurality of users. Can not.
As a result, an unfavorable situation in which a user who cannot know the existence of a model element that is not permitted to access the same model element is induced.
また、近年、モデルを用いて、プロトタイプを実装する前に、モデル上で検証やシミュレーションを実施する技術が、研究、開発されている。 例えば、あるモデル要素については、あるユーザからは、閲覧は禁止したいが、そのモデル要素に含まれる外部と関連を持つ要素、例えばそのモデル要素の中で定義された特定の数値のみ、を他のモデル要素から参照させて、検証に用いたいような場合がある。 このような場合も、そのモデル要素を1つのフラグメント・ファイルに割り当ててユーザ毎のアクセス制御を行うと、そのフラグメント・ファイルに対するアクセス権がないユーザは、そのモデル要素上で設定された数値に対してもアクセス権がないため、上記のような検証を実施することができない。 In recent years, techniques for performing verification and simulation on a model before implementing a prototype using the model have been researched and developed. For example, for a certain model element, a certain user wants to prohibit browsing, but the element related to the outside included in the model element, for example, only a specific numerical value defined in the model element is displayed. There are cases where you want to refer to model elements and use them for verification. Even in such a case, if the model element is assigned to one fragment file and access control is performed for each user, users who do not have access rights to the fragment file can use the numerical values set on the model element. However, since there is no access right, the above verification cannot be performed.
よって、従来からある方法によっては、昨今のモデル駆動型の開発プロセスにとって重要な、よりきめ細かで有効的な、モデル要素ごとのアクセス管理をすることはできない。 Therefore, the conventional method cannot perform access control for each model element, which is more detailed and effective, which is important for the current model-driven development process.
本発明の目的は、モデル駆動型の開発プロセスにおいて、複数のモデル要素を備えるオブジェクト・モデルに対して、複数のユーザからのアクセスを各モデル要素ごとに制御でき、かつその制御は、あるモデル要素について、複数のユーザ間でその存在は共有するが、そのうちの一部のユーザにはその中身は見せないようにすると言ったより細かい有効的なアクセス管理を行うことができるものであるシステム等を提供することである。 It is an object of the present invention to control access from a plurality of users for each model element with respect to an object model having a plurality of model elements in a model-driven development process. A system that can perform finer and more effective access management, such as sharing the existence among multiple users but not showing the contents to some of them. It is to be.
上記課題を解決するために、本発明では、それぞれが固有のIDを有する複数のモデル要素を備える、サーバ・コンピュータに記憶されたオブジェクト・モデルに対して、複数のユーザからのアクセスを制御するシステムを提供する。
本発明の第1の側面においては、このシステムは、(A)前記複数のモデル要素のそれぞれについて、前記複数のユーザの各々からの当該モデル要素に対するアクセス権限の種類を規定する第1拡張メタデータを当該モデル要素に関連付けて設定し、および、前記第1拡張メタデータおよび自身を修正する権限があるかどうかを示す第2拡張メタデータを当該モデル要素に関連付けて設定し、前記第2拡張メタデータには、各ユーザについて前記第1拡張メタデータを修正する権限があることが初期的に示される、初期設定部と、(B)第1ユーザからの第1拡張メタデータの編集要求に応じて、1以上のモデル要素のそれぞれについて、1以上のユーザの各々について、前記第2拡張メタデータが、前記第1拡張メタデータを編集する権限があることを示す場合に、前記第1拡張メタデータを編集する、第1拡張メタデータ編集部と、(C)第2ユーザからの第2拡張メタデータの編集要求に応じて、1以上のモデル要素のそれぞれについて、1以上のユーザの各々について、前記第1拡張メタデータを編集する権限がないことを示すように前記第2拡張メタデータを編集する、第2拡張メタデータ編集部と、(D)第3ユーザから、前記オブジェクト・モデルを前記第3ユーザのクライアント・コンピュータにローカルなオブジェクト・モデルとして取り込むためのチェックアウト要求があった場合に、前記複数のモデル要素の各々について、前記第3ユーザに関して、(D−1)読出し可能のアクセス権限または編集可能のアクセス権限があることを当該モデル要素の前記第1拡張メタデータが示す場合は、当該モデル要素をそのまま前記クライアント・コンピュータに提供し、(D−2)読出し可能のアクセス権限および編集可能権のアクセス権限のいずれも無いことを当該モデル要素の前記第1拡張メタデータが示す場合は、当該モデル要素の代わりに、その内容を取り除いて少なくとも同一のIDと第1拡張メタデータのみを付与した、代替モデル要素を前記クライアント・コンピュータに提供する、アクセス管理部と、を備える。
In order to solve the above-described problem, in the present invention, a system for controlling access from a plurality of users to an object model stored in a server computer, which includes a plurality of model elements each having a unique ID. I will provide a.
In the first aspect of the present invention, the system includes (A) first extended metadata that defines, for each of the plurality of model elements, a type of access authority to the model element from each of the plurality of users. Is set in association with the model element, and the second extended metadata indicating whether the first extended metadata and the right to modify itself are authorized is set in association with the model element, and the second extended metadata is set. The data initially indicates that each user has the authority to modify the first extended metadata, and (B) in response to a first extended metadata editing request from the first user For each of the one or more model elements, the second extended metadata has authority to edit the first extended metadata for each of the one or more users. A first extended metadata editing unit that edits the first extended metadata, and (C) one or more models in response to a request for editing the second extended metadata from a second user. For each of the elements, a second extended metadata editing unit that edits the second extended metadata to indicate that each of the one or more users is not authorized to edit the first extended metadata; D) When there is a checkout request from the third user to import the object model as a local object model into the third user's client computer, each of the plurality of model elements is For the three users, (D-1) that the read permission or the edit permission is available, When the extended metadata indicates, the model element is provided to the client computer as it is, and (D-2) that the model element indicates that neither the readable access authority nor the editable access authority exists. When one extended metadata indicates, instead of the model element, the content management is removed and at least the same ID and only the first extended metadata are provided, and an alternative model element is provided to the client computer, access management A section.
また、本発明の第2の側面においては、本発明の第1の側面におけるシステムにおいて、前記アクセス管理部が、さらに、(E)第4ユーザから、前記第4ユーザのクライアント・コンピュータにおけるローカルなオブジェクト・モデルを前記オブジェクト・モデルに書き戻すためのチェックイン要求があった場合に、前記ローカルなオブジェクト・モデルが備える複数のローカルなモデル要素の各々について、前記第4ユーザに関して、(E−1)編集可能のアクセス権限があることを当該ローカルなモデル要素の前記第1拡張メタデータが示す場合は、当該ローカルなモデル要素を前記オブジェクト・モデルに書き戻し、(E−2)読出し可能のアクセス権限があるが編集可能のアクセス権限が無いことを当該ローカルなモデル要素の前記第1拡張メタデータが示す場合は、当該ローカルなモデル要素の代わりに、当該ローカルなモデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の当該ローカルなモデル要素に対応するモデル要素を用い、(E−3)当該ローカルなモデル要素が代替モデル要素である場合、前記代替モデル要素の代わりに、前記代替モデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の前記代替モデル要素に対応するモデル要素を用いる、ことで前記チェックインを完遂する、システムを提供する。 According to a second aspect of the present invention, in the system according to the first aspect of the present invention, the access management unit further includes: (E) from the fourth user to a local computer computer of the fourth user. When there is a check-in request to write back an object model to the object model, for each of the plurality of local model elements included in the local object model, (E-1 ) If the first extended metadata of the local model element indicates that it has editable access authority, the local model element is written back to the object model, and (E-2) readable access Before the local model element that you have the right but no editable access rights When the first extended metadata indicates, instead of the local model element, a model element corresponding to the local model element in the object model having the same ID as the ID of the local model element is selected. (E-3) If the local model element is an alternative model element, the alternative model in the object model has the same ID as the ID of the alternative model element instead of the alternative model element A system is provided that uses the model element corresponding to the element to complete the check-in.
さらに、本発明の第3の側面においては、本発明の第2の側面におけるシステムにおいて、(E−2)当該ローカルなモデル要素の代わりに、当該ローカルなモデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の当該ローカルなモデル要素に対応するモデル要素を用いることは、(e−2)当該ローカルなモデル要素が前記第4ユーザによって編集されていた場合には、チェックインを拒否し、前記第4ユーザに対して、当該ローカルなモデル要素の編集を許容できない旨の通知をすることを含む、システムを提供する。 Further, according to a third aspect of the present invention, in the system according to the second aspect of the present invention, (E-2) has the same ID as the ID of the local model element instead of the local model element. , Using a model element corresponding to the local model element in the object model is (e-2) refusing check-in if the local model element has been edited by the fourth user And providing a notification to the fourth user that the local model element cannot be edited.
さらにまた、本発明の第4の側面においては、本発明の第2の側面におけるシステムにおいて、(E−3)前記代替モデル要素の代わりに、前記代替モデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の前記代替モデル要素に対応するモデル要素を用いることは、(e−3)前記代替モデル要素が前記第4ユーザによって編集されていた場合であって、その編集が、他のモデル要素との関係性を追加する変更であった場合に、前記代替モデル要素に対応するモデル要素に、前記他のモデル要素との関係性を追加する前記変更を反映させることを含む、システムを提供する。 Furthermore, in the fourth aspect of the present invention, in the system according to the second aspect of the present invention, (E-3) has the same ID as the ID of the alternative model element instead of the alternative model element. Using a model element corresponding to the substitute model element in the object model is (e-3) when the substitute model element has been edited by the fourth user, Reflecting a change that adds a relationship with the other model element in a model element corresponding to the alternative model element if the change is a change that adds a relationship with the model element. provide.
以上、本発明の概要を、複数のユーザからのアクセスを制御するシステムとして説明したが、本発明はまた、当該システムによってその機能を実施する方法としても捉えることができる。 また、当該システムにこれら方法を実行させるためのコンピュータ・プログラムとしても捉えることができる。 As mentioned above, although the outline | summary of this invention was demonstrated as a system which controls the access from a some user, this invention can also be grasped | ascertained also as the method of implementing the function with the said system. It can also be understood as a computer program for causing the system to execute these methods.
尚、上記発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの構成要素のコンビネーションまたはサブコンビネーションもまた発明となり得ることに留意されたい。 It should be noted that the above summary of the invention does not enumerate all the necessary features of the present invention, and that combinations or sub-combinations of these components can also be the invention.
以下、添付図面を参照して、本発明を実施するための最良の形態(以下、実施形態)について詳細に説明する。 なお、実施形態の説明の全体を通じて同じ要素には同じ番号を付している。 The best mode for carrying out the present invention (hereinafter referred to as an embodiment) will be described below in detail with reference to the accompanying drawings. Note that the same number is assigned to the same element throughout the description of the embodiment.
1.システム環境
はじめに、本発明の実施に係るモデル駆動型の開発におけるシステム環境について説明する。
図1は、モデル駆動型の開発におけるシステム環境の例100を表す。 モデル駆動型の開発においては、その開発対象に関する基準となるオブジェクト・モデルを先に構築し、そのオブジェクト・モデルを参照して開発対象のシステム等の実装(例えば、Java(商標)やC言語等によるソフトウェア構築による実装等)を行う。 また、必要に応じて、そのオブジェクト・モデルに対して随時修正をかけ、基準となるオブジェクト・モデルを常により適正なものに更新していくことも必要となる。
1. System Environment First, a system environment in model-driven development according to an embodiment of the present invention will be described.
FIG. 1 illustrates an
この基準となるオブジェクト・モデルは、サーバ・コンピュータ102の記憶装置内にモデル・リポジトリ106として記憶される。 サーバ・コンピュータ102には、ネットワーク108を介して、複数のクライアント・コンピュータ110、112が通信可能に接続され、各クライアント・コンピュータは、それぞれ、基準となるオブジェクト・モデルにアクセスしてこれを編集するためのモデル編集ツール114、116とローカルな作業領域130、132とを備える。 各クライアント・コンピュータはまた、そのそれぞれを複数のユーザ120、122、ユーザ124、126が利用することができる。
The reference object model is stored as a
各ユーザは、自己が利用することができるクライアント・コンピュータ、およびそのクライアント・コンピュータに備わったモデル編集ツールを介して、サーバ・コンピュータ102のモデル・リポジトリ106に記憶された基準となるオブジェクト・モデルに対して、様々な種類のアクセスを試みる。 これらユーザからの様々なアクセス要求を受けて、実際にサーバ・コンピュータ102において、モデル・リポジトリ106へのアクセスを制御するのが、本発明に係るモデル要素アクセス制御システム104である。
Each user can access a reference object model stored in the
2.オブジェクト・モデルおよびモデル要素の構成
図2は、モデル・リポジトリとしてサーバ・コンピュータ内に記憶される基準となるオブジェクト・モデルの例200を示す。 図2は、開発対象であるレーダ送受信システムをSysML(Systems Modeling Language)でモデリングしたものである。 SysMLとは、システム工学のためのモデリング言語であり、UML(Unified Modeling Language)にシステム工学向けの拡張を施したものである。 SysMLは、各種システムやサブシステムの仕様記述、分析、設計、検証、評価等に使用することができる。
2. Structure of Object Model and Model Elements FIG. 2 shows an example 200 object model that can be stored in a server computer as a model repository. FIG. 2 is a model of a radar transmission / reception system to be developed by using SysML (Systems Modeling Language). SysML is a modeling language for system engineering, and is an extension of UML (Unified Modeling Language) for system engineering. SysML can be used for specification description, analysis, design, verification, evaluation, etc. of various systems and subsystems.
オブジェクト・モデルは、複数のモデル要素から構成される。 モデル要素には、先ずは、開発対象システムの有する有形、無形の構成ブロックで表される情報がこれに該当する。 図2では、ブロック202、204、206、208で表されるハードウェア構成部品情報、ブロック212、214で表されるパワー(電源供給)情報、および、ブロック222、224で表される要件(Requirement)情報がこれに相当する。
The object model is composed of a plurality of model elements. The model element first corresponds to information represented by tangible and intangible constituent blocks of the development target system. In FIG. 2, hardware component information represented by
また、各ブロック間の関係を表す情報についても、モデル要素として扱うことが可能である。 図2では、ライン232〜252で表される、条件満足(Satisfy)を示す情報等がこれに該当する。 さらには、上記ブロック内で定義される属性や操作などの要素についても、モデル要素(即ち、これらブロックのモデル要素のサブ・モデル要素)として取り扱うことができる。
Information representing the relationship between each block can also be handled as a model element. In FIG. 2, information indicating satisfaction of conditions (Satisfy) represented by
図3は、本発明の実施に関して、オブジェクト・モデルの各モデル要素の内部構成の例を示す。
まず、各モデル要素には、その内部に、ID302が付与されていることが前提となる。 即ち、ユーザのクライアント・コンピュータに導入されたモデル編集ツールを用いて、基準となるオブジェクト・モデルのモデリングを行う場合、各モデル要素にはIDが付与される。 これにより、バージョンの異なるモデル間で、モデル要素名やプロパティ(属性)等が変更されたとしても、どのモデル要素が互いに対応するモデル要素であるかが特定可能となる。
IDの他にモデル要素を構成するものとしては、一般に、モデル要素名304、プロパティ306、およびそのモデル要素の主要部である動作記述(または、機能記述)308等がある。
なお、これらプロパティや動作記述等といったそれぞれの要素もまた、モデル要素(即ち、あるモデル要素の下位階層のモデル要素)として取り扱うことができる。
FIG. 3 shows an example of the internal configuration of each model element of the object model in the implementation of the present invention.
First, it is assumed that each model element is given an
What constitutes a model element in addition to the ID generally includes a
Each element such as the property and the behavior description can also be handled as a model element (that is, a model element in a lower hierarchy of a certain model element).
オブジェクト・モデルを表すUMLやSysML等のモデリング言語は、そのモデル要素の役割や用法上の違い等をそのモデル要素に修飾するための拡張機能を有する。 この拡張機能は、そのモデル要素を修飾する各種の拡張メタデータをそのモデル要素に付随して備えることによって可能となる。 これらの拡張機能としては、例えば、UMLやSysMLの場合には、「ステレオタイプ」と呼ばれるものがある。 ステレオタイプ自身については、既存技術であるので、その詳細の説明は省略する。
本発明の実施のためには、各モデル要素を構成するID302、モデル要素名304、プロパティ306、動作記述308等の他に、モデル要素の拡張機能として、所定のフォーマットを有する第1拡張メタデータ310および第2拡張メタデータ312を備えることが必要である。
A modeling language such as UML or SysML representing an object model has an extended function for modifying the role of the model element, a difference in usage, and the like to the model element. This extended function is made possible by providing various extended metadata for modifying the model element attached to the model element. As these extended functions, for example, in the case of UML or SysML, there is a function called “stereotype”. Since the stereotype itself is an existing technology, detailed description thereof is omitted.
In order to implement the present invention, in addition to the
第1拡張メタデータ310は、このオブジェクト・モデルにアクセスする複数のユーザの各々を示すユーザ識別子と、各ユーザからのこのモデル要素に対するアクセス権限の種類との対応付けを示したテーブル322を規定したものである。 アクセス権限の種類としては、最低限、編集(Edit)可能かどうか、読出し(Read)可能かどうか、実行(Exec)可能かどうか、の3種類を規定する。 テーブル322に現れていないユーザ識別子に係るユーザについては、省略時解釈(デフォルト)で、全ての種類のアクセスが可能であるものと規定することができる。
図3の例では、例えばユーザ1はこのモデル要素に対して実行、読出し、編集の全ての種類のアクセスが可能であることを示す。 また、ユーザ2は、このモデル要素に対する編集は不可だが、実行および読出しは可能であることを示す。 更に、ユーザ3は、このモデル要素に対する編集も読出しも不可だが、実行および読出しのアクセスは可能であることを示す。 原則は、最も強いアクセスである編集が可能であれば、他のアクセス(読出し、実行)も当然に可能となる。
The first
In the example of FIG. 3, for example, the
第2拡張メタデータ312は、このオブジェクト・モデルにアクセスする複数のユーザの各々を示すユーザ識別子と、各ユーザが第1拡張メタデータ310および第2拡張メタデータ312自身を修正する権限があるかどうかの情報との対応付けを示したテーブル324を規定したものである。 図3の例では、ユーザ1およびユーザ2は、それぞれ、このモデル要素についての第1拡張メタデータ310および第2拡張メタデータ312自身を修正する権限があることを示している。 また、ユーザ3は、このモデル要素についての第1拡張メタデータ310および第2拡張メタデータ312自身を修正する権限がないことを示している。 ユーザ1は、このモデル要素についての第1拡張メタデータ310にアクセスして、ユーザ2やユーザ3のアクセス権限はもちろんのこと、ユーザ1自身のアクセス権限も書き換えることができる。 ユーザ1はまた、このモデル要素についての第2拡張メタデータ312にアクセスして、ユーザ2が第1拡張メタデータ310および第2拡張メタデータ312を修正できないように書き換えることができる。 ユーザ1はまた、第2拡張メタデータ312にアクセスして、自分自身がこれ以降、第1拡張メタデータ310および第2拡張メタデータ312を修正できないように書き換えることも可能である。
The second
3.本発明の実施に係るシステムの構成と機能
図4は、本発明の実施に係る、サーバ・コンピュータ102等に備わるモデル要素アクセス制御システム104の構成とその機能を模式的に示す。
モデル要素アクセス制御システム104は、モデル・リポジトリ106に記憶されたオブジェクト・モデル420を構成する各モデル要素に対するユーザからのアクセス要求を受けて、当該モデル要素に対するアクセスを制御する。 モデル要素アクセス制御システム104は、初期設定部402、第1拡張メタデータ編集部404、第2拡張メタデータ編集部406、およびアクセス管理部408の4つの機能ブロックを備える。
3. System Configuration and Function According to the Implementation of the Present Invention FIG. 4 schematically shows the configuration and function of the model element
The model element
初期設定部402は、各モデル要素について、その第1拡張メタデータおよび第2拡張メタデータの値の初期設定を行う。 即ち、各モデル要素ごとに、図3のテーブル322のように、このオブジェクト・モデル420にアクセスする複数のユーザのそれぞれが、このモデル要素に対して行うことのできるアクセス権限の種類について、その初期値を設定する。
初期値としては、全てのユーザについて、全てのアクセス権限を付与するように定めることができる。
The
As an initial value, it can be determined that all access authorities are granted to all users.
第1拡張メタデータ編集部404は、このオブジェクト・モデル420にアクセスする複数のユーザのうちの1のユーザから、あるモデル要素について、その第1拡張メタデータを編集したいとの要求があった場合に、この編集要求に応答して、この第1拡張メタデータの編集をしたり、あるいは場合によっては編集を拒否したりする。
第1拡張メタデータ編集部404は、この1のユーザからのあるモデル要素の第1拡張メタデータに対する編集要求があった場合に、先ず、このモデル要素の第2拡張メタデータを参照する(図4の線422)。 この参照の結果、このユーザがこのモデル要素の第1拡張メタデータを編集できる旨を、第2拡張メタデータが示す場合は、この第1拡張メタデータの編集要求を許可し、この1のユーザの要求通りにこの第1拡張メタデータを編集する。
When the first extended
When there is an edit request for the first extended metadata of a certain model element from the one user, the first extended
第2拡張メタデータ編集部406は、このオブジェクト・モデル420にアクセスする複数のユーザのうちの1のユーザから、あるモデル要素について、その第2拡張メタデータを編集したいとの要求があった場合に、この編集要求に応答して、この第2拡張メタデータの編集をしたり、あるいは場合によっては編集を拒否したりする。
第2拡張メタデータ編集部406は、この1のユーザからのあるモデル要素の第2拡張メタデータに対する編集要求があった場合に、先ず、その第2拡張メタデータ自身を参照する(図4の線424)。 この参照の結果、このユーザがこのモデル要素の第2拡張メタデータ自身を編集できる旨を、第2拡張メタデータが示す場合は、この第2拡張メタデータの編集要求を許可し、この1のユーザの要求通りにこの第2拡張メタデータを編集する。
The second extended
When there is an edit request for the second extended metadata of a certain model element from the one user, the second extended
アクセス管理部408は、このオブジェクト・モデル420にアクセスする複数のユーザのうちの1のユーザから、オブジェクト・モデル420についてのチェックアウト要求、チェックイン要求、モデル検証要求等の、オブジェクト・モデル420全体に対するアクセス要求があった場合に、このアクセス要求に応答して、オブジェクト・モデル420に含まれる個々のモデル要素に対するアクセスを制御する。
The
4.チェックアウト要求
あるユーザから、オブジェクト・モデル420についてのチェックアウト要求があった場合の、アクセス管理部408の動作について説明する。
一般にチェックアウトとは、ユーザが、サーバ・コンピュータにおける基準となるオブジェクト・モデルに基づいて開発等の作業を行っている状態から離れて、自身のローカルな環境において作業を行うために、基準となるオブジェクト・モデルを自身のローカルな作業領域に取り込むことである。
4). Checkout Request An operation of the
In general, checkout is a standard for users to work in their own local environment away from the state of development and other work based on the standard object model in the server computer. To bring the object model into its own local work area.
例えば、図1の環境において、ユーザ120がクライアント・コンピュータ110のモデル編集ツール114を介して、サーバ・コンピュータ102のモデル・リポジトリ106に保管されたオブジェクト・モデルに対してチェックアウト要求を発した場合を考える。
この場合、このチェックアウト要求をサーバ・コンピュータ102のモデル要素アクセス制御システム104が、即ち、モデル要素アクセス制御システム104内のアクセス管理部408が受ける。 アクセス管理部408は、モデル・リポジトリ106内に保管されたオブジェクト・モデルの各モデル要素ごとに、クライアント・コンピュータ110にそのモデル要素を提供するかどうか、提供する場合はどのような形態で提供するかを判断し、それを実行する。
チェックアウトが完了すると、クライアント・コンピュータ110に提供されたオブジェクト・モデルの各モデル要素は、ローカルな作業領域130に保管され、ユーザ120はローカルな作業環境において提供されたオブジェクト・モデルに基づいて自己の開発等の作業を遂行することができる。
For example, in the environment of FIG. 1, when a
In this case, the model element
When the checkout is complete, each model element of the object model provided to the
図5は、あるユーザからのチェックアウト要求があった場合の、本発明の実施に係る処理の流れを模式的に示したものである。
ユーザがチェックアウト要求(処理502)を行うと、サーバ・コンピュータのモデル要素アクセス制御システムは、モデル・リポジトリからオブジェクト・モデルのファイル520を参照する。 オブジェクト・モデルのファイル520には実際に複数のモデル要素についての情報が含まれている。 よって、各モデル要素ごとにその情報が取得(処理504)される。
取得された各モデル要素ごとに、その第1拡張メタデータの情報を参照して、そのユーザについてのアクセス権の確認(処理506)がされる。
アクセス権を確認した結果、そのユーザからそのモデル要素に対するアクセス権限が、「読出し付加」かつ「編集不可」であった場合は、そのモデル要素はスタブに変換(処理508)される。
FIG. 5 schematically shows the flow of processing according to the embodiment of the present invention when there is a checkout request from a certain user.
When the user makes a checkout request (process 502), the model element access control system of the server computer refers to the object model file 520 from the model repository. The
For each acquired model element, the access right for the user is confirmed (process 506) with reference to the information of the first extended metadata.
As a result of confirming the access right, if the access right to the model element from the user is “add to read” and “cannot be edited”, the model element is converted into a stub (process 508).
スタブとは、そのモデル要素が有するIDのみを残し、それ以外の情報をそのモデル要素から全て取り除いて作成した代替モデル要素である。
図6は、モデル要素と、対応する代替モデル要素(スタブ)との間の構成例の比較を示したものである。 この図に示すように、代替モデル要素602では、原則は、オリジナルのモデル要素604のID606のみがその構成に反映され、その他の構成内容は、第1拡張メタデータ608、第2拡張メタデータ610も含め、一切代替モデル要素に反映されない。 モデル要素のモデル要素名612についても、代替名614に変換される。 しかし、後述するように、オリジナルのモデル要素の内容の一部を、代替モデル要素に残すことができる場合もある。
A stub is an alternative model element created by leaving only the ID of the model element and removing all other information from the model element.
FIG. 6 shows a comparison of configuration examples between model elements and corresponding alternative model elements (stubs). As shown in this figure, in the
確認されたアクセス権限が上記以外の場合は、そのモデル要素は代替モデル要素に変換されない。 即ち、図4のアクセス管理部408を通過する各モデル要素のデータは、代替モデル要素への変換410を経るものと経ないものがある。
If the confirmed access authority is other than the above, the model element is not converted to an alternative model element. That is, the data of each model element that passes through the
最後に、各モデル要素の情報がそのユーザのクライアント・コンピュータに提供(処理)される。 この際、上記の判断によって、モデル要素が代替モデル要素(スタブ)に変換されたものは、そのスタブがオリジナルのモデル要素に代わってクライアント・コンピュータに送られる。
クライアント・コンピュータに送られた各モデル要素のデータからなるオブジェクト・モデルは、ローカルなオブジェクト・モデルのファイル512としてクライアント・コンピュータでローカルに利用される。
Finally, information on each model element is provided (processed) to the user's client computer. At this time, if the model element is converted into the substitute model element (stub) by the above determination, the stub is sent to the client computer in place of the original model element.
The object model composed of the data of each model element sent to the client computer is used locally as a local
5.チェックイン要求
次に、あるユーザから、オブジェクト・モデル420についてのチェックイン要求があった場合の、アクセス管理部408の動作について説明する。
一般にチェックインとは、ユーザが、チェックアウトによって自身のローカルな作業環境に取り込んだローカルなオブジェクト・モデルに基づいて作業を行い、修正や更新が行われたそのローカルなオブジェクト・モデルを、もう一度、サーバ・コンピュータにおける基準となるオブジェクト・モデルに書き戻すことである。
5). Next, the operation of the
In general, check-in means that a user works on a local object model that has been brought into his or her local work environment by checkout, and that the modified or updated local object model is once again It is to write back to the standard object model in the server computer.
例えば、図1の環境において、ユーザ120がクライアント・コンピュータ110のモデル編集ツール114を介して、サーバ・コンピュータ102のモデル・リポジトリ106に保管されたオブジェクト・モデルに対して、自己のローカルな環境におけるオブジェクト・モデルのチェックイン要求を発した場合を考える。
この場合、このチェックイン要求を、サーバ・コンピュータ102のモデル要素アクセス制御システム104が、より詳しくは、モデル要素アクセス制御システム104内のアクセス管理部408が受ける。 アクセス管理部408は、モデル・リポジトリ106内に保管されたオブジェクト・モデルの各モデル要素ごとに、そのモデル要素に対してクライアント・コンピュータ110からのローカルなモデル要素を書き戻す(上書きする)かどうか等を判断し、それを実行する。
For example, in the environment of FIG. 1, a
In this case, this check-in request is received by the model element
図7は、あるユーザからのチェックイン要求があった場合の、本発明の実施に係る処理の流れを模式的に示したものである。
ユーザがチェックイン要求(処理502)を行うと、そのユーザのクライアント・コンピュータに記憶されたローカルなオブジェクト・モデルのファイル716がサーバ・コンピュータに送られ、サーバ・コンピュータのモデル要素アクセス制御システムは、このローカルなオブジェクト・モデルのファイル716を参照する。 このローカルなオブジェクト・モデルのファイル716には実際に複数のモデル要素および代替モデル要素(スタブ)についての情報が含まれている。 よって、各モデル要素および代替モデル要素ごとにその情報が取得(処理704)される。
FIG. 7 schematically shows the flow of processing according to the embodiment of the present invention when there is a check-in request from a certain user.
When a user makes a check-in request (operation 502), a local
ローカルなオブジェクト・モデルのファイル716から取得された代替モデル要素(スタブ)がある場合は、この代替モデル要素は、チェックアウトの際、オリジナルのモデル要素に対するこのユーザからのアクセス権限が「読出し不可」かつ「編集不可」であったために、代替モデル要素に置換されてチェックアウトされたものであることを意味する。 よって、この場合は、この代替モデル要素に含まれるIDと同一のIDを有する、即ち対応するモデル要素を、モデル・リポジトリ内の基準となるオブジェクト・モデルのファイル720の中から検索する。
この代替モデル要素は、この検索された対応するモデル要素で置換、即ち適正な内容に復元(処理706)される。
If there is an alternative model element (stub) obtained from the local
The substitute model element is replaced with the retrieved corresponding model element, that is, restored to an appropriate content (process 706).
ローカルなオブジェクト・モデルのファイル716から取得されたモデル要素の場合は、各モデル要素ごとに、その第1拡張メタデータの情報を参照して、そのユーザについてのアクセス権限の確認がされる。
確認されたアクセス権限が「編集可」である場合は、そのモデル要素はローカルな環境で編集が許可されていたものであるから、そのままモデル・リポジトリのオブジェクト・モデルに書き戻されることになる。
In the case of a model element acquired from the local
If the confirmed access right is “editable”, the model element has been permitted to be edited in the local environment, and is therefore written back to the object model of the model repository as it is.
そのユーザからそのモデル要素に対するアクセス権限が、「読出し可」かつ「編集不可」である場合は、ローカルな環境で編集が許可されていないので、通常はこのモデル要素に対する編集は行われていない。しかし、このユーザが故意に、あるいは、誤って、ローカルな環境でこのモデル要素に対する編集を行ってしまう場合が発生し得る。 この可能性は、クライアント・コンピュータに導入された現行のRSA等のモデル編集ツールを使用する限り、避けることができない。 よって、このような場合、このローカルなモデル要素をそのままモデル・リポジトリのオブジェクト・モデルに書き戻すことは行わない。 即ち、このローカルなモデル要素に含まれるIDと同一のIDを有する、即ち対応するモデル要素を、モデル・リポジトリ内の基準となるオブジェクト・モデルの中から検索し、このローカルなモデル要素をこの検索された対応するモデル要素で置換(処理708)する。 If the access authority for the model element from the user is “readable” and “not editable”, the editing is not permitted in the local environment, and thus the editing for the model element is not normally performed. However, this user may intentionally or mistakenly edit this model element in the local environment. This possibility cannot be avoided as long as a current model editing tool such as RSA installed in the client computer is used. Therefore, in such a case, the local model element is not directly written back to the object model of the model repository. That is, a model element having the same ID as that included in the local model element, that is, a corresponding model element is searched from the reference object model in the model repository, and the local model element is searched for. The corresponding model element is replaced (process 708).
このようにして、チェックイン要求に伴うローカルなオブジェクト・モデルに含まれるモデル要素の内容が、内容の置換等によって適宜修正された後、このローカルなオブジェクト・モデルのファイルは、モデル・リポジトリに書き戻されて、チェックインが完了(処理710)する。 即ち、モデル・リポジトリに記憶されていたオブジェクト・モデルのファイルは、修正後のローカルなオブジェクト・モデルのファイルで置き換えられる。
チェックインの完了は、モデル要素アクセス制御システムから、このユーザのクライアント・コンピュータ側に通知(処理712)される。
In this way, after the contents of the model elements included in the local object model accompanying the check-in request are appropriately modified by content replacement, etc., the local object model file is written to the model repository. Returned, the check-in is completed (process 710). That is, the object model file stored in the model repository is replaced with the corrected local object model file.
The completion of check-in is notified from the model element access control system to the client computer side of this user (process 712).
なお、上記では、ユーザからローカルなモデル要素に対するアクセス権限が、「読出し可」かつ「編集不可」である場合に、モデル・リポジトリ内の基準となるオブジェクト・モデルの中から対応するモデル要素を検索し、このローカルなモデル要素を、検索された対応するモデル要素で置換(処理708)する態様を示した。 しかし、このように、対応するモデル要素で無条件に置換してしまうのではなく、各モデル要素について先ずその整合性をチェック(処理714)して、不整合であった場合に、その旨をユーザのクライアント・コンピュータ側に通知し、チェックインを拒否(処理718)するという態様をとることも可能である。 In the above, when the access authority to the local model element from the user is “Readable” and “Editable”, the corresponding model element is searched from the reference object model in the model repository. Then, the mode in which this local model element is replaced with the searched corresponding model element (process 708) is shown. However, instead of unconditionally replacing with the corresponding model element in this way, the consistency of each model element is first checked (process 714). It is also possible to notify the user's client computer and reject the check-in (process 718).
ここで、整合性のチェックとは、各々のローカルなモデル要素について、その第1拡張メタデータの内容をチェックして、そのユーザからのアクセス権限が、「読出し可」かつ「編集不可」であった場合に、そのローカルなモデル要素の内容が、チェックアウト直後の内容と異なっているか、即ち、チェックアウト後に、ローカルな環境下で、そのユーザによって実際に編集されたかどうかを確認することである。 このためには、このユーザが以前チェックアウトしたときのオブジェクト・モデルのファイルのバックアップをサーバ・コンピュータ等が持っている必要があるのは言うまでもない。
確認の結果、実際にそのローカルなモデル要素が編集されていた場合は、そのモデル要素に関して、編集するべきではなかったのに編集がされたため不整合である旨の通知と、不整合を解消するためにそのローカルなモデル要素の中の修正が必要な箇所とをクライアントに提示し、チェックインを拒否する。
Here, the consistency check refers to checking the contents of the first extended metadata for each local model element, and the access authority from the user is “readable” and “not editable”. The content of the local model element is different from the content immediately after the checkout, that is, whether it was actually edited by the user in the local environment after the checkout. . For this purpose, it goes without saying that the server computer or the like needs to have a backup of the object model file when this user has previously checked out.
As a result of the confirmation, if the local model element was actually edited, the notification indicating that the model element was not edited but was inconsistent because it was edited and the inconsistency is resolved. In order to do so, it presents the client with the parts of the local model element that need to be modified, and rejects the check-in.
6.代替モデル要素のチェックアウト、チェックイン時の更なる実施態様
図6に示したように、チェックアウト時のあるモデル要素についての代替モデル要素への変換では、オリジナルのモデル要素のIDのみがその構成に反映され、その他の構成内容は、一切反映されないのが原則である。
しかし、代替モデル要素へ変換されるべきそのモデル要素が、他のモデル要素に対する関係性を示す情報を有している場合には、その関係性の情報は、代替モデル要素にも残しておかなければならない。
図8は、代替モデル要素へ変換しなければならないオリジナルのモデル要素に、他のモデル要素との関係性を示す情報を、拡張メタデータとして有している場合の、このオリジナルのモデル要素と、対応する代替モデル要素(スタブ)との間の構成例の比較を示したものである。 この図に示すように、代替モデル要素802においても、オリジナルのモデル要素804が有する他のモデル要素との関係性を示す拡張メタデータ806は、消去されずにそのまま反映される。
6). Further embodiment at the time of check-out and check-in of an alternative model element As shown in FIG. 6, in the conversion of a certain model element at the time of check-out to an alternative model element, only the ID of the original model element is the configuration In principle, the rest of the content is not reflected at all.
However, if the model element to be converted to an alternative model element has information indicating the relationship to other model elements, the information on the relationship must also remain in the alternative model element. I must.
FIG. 8 shows the original model element in the case where the original model element that must be converted into the alternative model element has information indicating the relationship with other model elements as extended metadata. The comparison of the structural example between corresponding alternative model elements (stub) is shown. As shown in this figure, also in the
図9は、図2に示したオブジェクト・モデルに対してチェックアウトがされた後の、ローカルな環境下でのSysMLによるオブジェクト・モデルの例900を示したものである。 この例では、図2のブロック206で表されるモデル要素についてこのユーザからのアクセス権限が、「読出し不可」かつ「編集不可」であったため、このモデル要素が代替モデル要素(スタブ)902に変換されている。 しかし、図2のブロック206とブロック222との間には、ブロック222で表される要求条件を、ブロック206で表されるコンポーネント(Radar Receiver)が満足する(Satisfy)という関係性を有している。
よって、図9に示される、図2のブロック222から置き換えられた代替モデル要素(スタブ)であるブロック902においては、ブロック222とのこの関係性を示す拡張メタデータ904が残される。
FIG. 9 shows an example 900 of an object model by SysML in a local environment after the object model shown in FIG. 2 is checked out. In this example, since the access authority from the user for the model element represented by
Thus, in
なお、チェックアウト時には、他のモデル要素との関係性の記述が存在しなかったモデル要素が、代替モデル要素に変換されてチェックアウトされ、チェックアウト後のローカルな環境下における作業で、この代替モデル要素について、他のモデル要素との関係性が新たに追加される場合がある。
例えば、図2のサーバ・コンピュータにおけるオブジェクト・モデルにおいては、ブロック222をブロック206が満足する(Satisfy)という関係は無かったが、このオブジェクト・モデルをチェックアウトして、ローカルな環境下でモデルの更新等を行った結果、図9のローカルなオブジェクト・モデル環境下で、ブロック206に対応する代替モデル要素であるブロック902において、ブロック222との関係性を示す拡張メタデータ904が追加される場合がある。
At the time of check-out, model elements for which there is no description of the relationship with other model elements are converted into alternative model elements and checked out. There may be a case where a relationship between the model element and another model element is newly added.
For example, in the object model in the server computer of FIG. 2, there is no relation that the
このようなローカルなオブジェクト・モデルをチェックインする際は、この代替モデル要素を、サーバ・コンピュータのモデル・リポジトリ内に記憶された、対応する(即ち、同じIDを持つ)モデル要素に置換した後、置換された代替モデル要素に対してローカルな環境下で追加していた拡張メタデータを、置換したそのモデル要素に対しても同様に追加する編集を行う。
これにより、ローカルな環境下で追加された他のモデル要素との関係性を、チェックイン後の、基準となるオブジェクト・モデルにおいても反映させることができる。
When checking in such a local object model, after replacing this alternative model element with the corresponding (ie, having the same ID) model element stored in the server computer's model repository The editing is performed so that the extended metadata that has been added to the replaced model element in the local environment is similarly added to the replaced model element.
Thereby, the relationship with other model elements added in the local environment can be reflected in the reference object model after check-in.
7.モデル検証要求
チェックアウトにより、ローカルな環境下に取り込まれたオブジェクト・モデルにおいて、全てのモデル要素の第1拡張メタデータが示すアクセス権限が(「読出し不可」かつ「編集不可」であったとしても)少なくとも「実行可」である場合がある。 この場合、そのローカルなオブジェクト・モデルのうちのいくつかのモデル要素が代替モデル要素(スタブ)に置換されたものであったとしても、そのオブジェクト・モデル全体のモデル検証を、本発明の実施態様として行うことができる。
7). Model verification request Even if the access authority indicated by the first extended metadata of all model elements is “unreadable” and “uneditable” in the object model imported in the local environment by checkout ) There may be at least “executable”. In this case, even if some model elements of the local object model are replaced with alternative model elements (stubs), model verification of the entire object model is performed according to the embodiment of the present invention. As can be done.
図10は、あるユーザからのモデル検証要求があった場合の、本発明の実施に係る処理の流れを模式的に示したものである。
ユーザが、チェックアウトによって自己のローカルな環境に取り込んだローカルなオブジェクト・モデルについて、モデル検証要求(処理502)を行うと、そのユーザのクライアント・コンピュータに記憶されたローカルなオブジェクト・モデルのファイル1016がサーバ・コンピュータに送られ、サーバ・コンピュータのモデル要素アクセス制御システムは、このローカルなオブジェクト・モデルのファイル1016を参照する。 このローカルなオブジェクト・モデルのファイル1016には実際に複数のモデル要素および代替モデル要素(スタブ)についての情報が含まれている。 よって、各モデル要素および代替モデル要素ごとにその情報が取得(処理1004)される。
FIG. 10 schematically shows the flow of processing according to the embodiment of the present invention when there is a model verification request from a certain user.
When a user makes a model verification request (process 502) for a local object model that has been imported into the user's local environment by checkout, a local
ローカルなオブジェクト・モデルのファイル1016から取得された代替モデル要素(スタブ)がある場合は、この代替モデル要素は、チェックアウトの際、オリジナルのモデル要素に対するこのユーザからのアクセス権限が「読出し不可」かつ「編集不可」であったために、代替モデル要素に置換されてチェックアウトされたものであることを意味する。
この代替モデル要素に含まれるIDと同一のIDを有する、対応するモデル要素を、モデル・リポジトリ内の基準となるオブジェクト・モデルのファイル1020の中から検索する。
検索されたその対応するモデル要素について、第1拡張メタデータを参照して、このユーザについて「実行可」の権限が付与されている場合は、この代替モデル要素を、この検索された対応するモデル要素で置換(処理1006)する。
If there is an alternative model element (stub) obtained from the local
A corresponding model element having the same ID as that included in the alternative model element is searched from the
With respect to the corresponding model element that has been searched, if the authority of “executable” is granted for this user with reference to the first extended metadata, the alternative model element is set as the corresponding model that has been searched. Replace with an element (process 1006).
検索されたその対応するモデル要素について、第1拡張メタデータを参照して、このユーザについて「実行不可」の権限が付与されている場合は、このローカルなオブジェクト・モデルは検証できない旨をこのユーザのクライアント・コンピュータに通知する。 For the corresponding model element that has been searched, if the user is granted the “not executable” right with reference to the first extended metadata, the user is informed that this local object model cannot be verified. To client computers.
このようにして、モデル検証要求に応答して、ローカルなオブジェクト・モデルに含まれる代替モデル要素が、モデル・リポジトリに記憶されたオリジナルのオブジェクト・モデルに含まれる対応するモデル要素で適宜置換された後、このローカルなオブジェクト・モデルのファイルは、サーバ・コンピュータの環境下でモデル要素アクセス制御システムによってモデル検証が実施(処理1008)される。 モデル検証の結果は、モデル要素アクセス制御システムから、このユーザのクライアント・コンピュータ側に通知(処理1010)される。 In this way, in response to the model validation request, the replacement model element contained in the local object model was appropriately replaced with the corresponding model element contained in the original object model stored in the model repository. Thereafter, the local object model file is subjected to model verification by the model element access control system in the environment of the server computer (process 1008). The result of model verification is notified from the model element access control system to the client computer side of this user (process 1010).
このように、ユーザが「読出し可」の権限を持たないため、代替モデル要素に置換されてチェックアウトされている場合でも、そのユーザにその代替モデル要素に対応するオリジナルのモデル要素の内容を見せることなく、チェックアウトしたローカルなオブジェクト・モデルのモデル検証をそのユーザからの要求に応じて実施することができる。 In this way, since the user does not have the authority to “read”, even if the user has been replaced with an alternative model element and checked out, the user can view the contents of the original model element corresponding to the alternative model element. Instead, model verification of the checked out local object model can be performed upon request from the user.
9.ハードウェア資源との関連性
以上、本発明の実施形態について、サーバ・コンピュータが備えるモデル要素アクセス制御システムとして説明し、そのモデル要素アクセス制御システムには構成要件としての複数の機能ブロックが備わることを説明した。
これらの機能ブロックは、このサーバ・コンピュータ(および、場合によっては他のコンピュータ)に記憶されたコンピュータ・プログラムによる情報処理が、このサーバ・コンピュータのCPU等のハードウェア資源(ハードウェア・コンポーネント)と協働した具体的手段によって実現される。
9. As described above, the embodiment of the present invention is described as a model element access control system provided in a server computer, and the model element access control system includes a plurality of functional blocks as configuration requirements. explained.
These functional blocks are processed by a computer program stored in the server computer (and possibly another computer), and hardware resources (hardware components) such as a CPU of the server computer. Realized by collaborative concrete means.
図11は、本発明の実施に係るサーバ・コンピュータ1100の詳細なハードウェア構成の典型的な例を示した図である。 この構成では、コンピュータ・システム1100の全体の制御をつかさどるプロセッサ1102(中央処理装置、CPU、メイン・プロセッサ等と称することもある。)の直近にメモリ・コントローラ・ブリッジ1104(メモリ・コントローラ、ホスト・コントローラ、メモリ・ブリッジ、第1のブリッジ、ノース・ブリッジ等と称することもある。)が接続される。
FIG. 11 is a diagram showing a typical example of a detailed hardware configuration of the
メモリ・コントローラ・ブリッジ1104にはメイン・メモリ1106(メモリ、主記憶等と称することもある。)およびグラフィックス・コントローラ1108が直接接続され、プロセッサ1002から主に高い転送レートでメイン・メモリ1106やグラフィックス・コントローラ1108をアクセスすることができる。
A main memory 1106 (also referred to as memory, main memory, etc.) and a
グラフィック・コントローラ1108は、プロセッサ1102等がメイン・メモリ1106内に設けたフレーム・バッファ上に生成する画像データを取得し、ディスプレイ1114(表示装置、ディスプレイ装置、モニタ装置等と称することもある。)上に表示させる。 これに代えて、グラフィック・コントローラ1108、プロセッサ1102等が生成する画像データを格納するフレーム・バッファ・メモリ1110を独自に備えることもできる。
The
メモリ・コントローラ・ブリッジ1004からはまた、PCIローカル・バス1180などのバスを介して、I/Oコントローラ・ブリッジ1118(I/Oコントローラ、I/Oブリッジ、第2のブリッジ、サウス・ブリッジ等と称することもある。)が接続される。
The
I/Oコントローラ・ブリッジ1118には、ストレージ・コントローラ1120(IDEコントローラ、SCSIコントローラ、等)を介してハードディスク・ドライブ1122(HDD、ハードディスク、ハードディスク・ストレージ、固定記憶装置等と称することもある。)等の大容量記憶装置が接続される。
I/Oコントローラ・ブリッジ1118にはまた、DVDドライブ1124、CDROMドライブ1126、MOドライブ1128、フレキシブル・ディスク・ドライブ等の外部記憶媒体用装置が接続される。
The I /
Also connected to the I /
大容量記憶装置または外部記憶媒体用装置には、本発明を実施させるのに必要なオペレーティング・システム1132や、オペレーティング・システム1132と協働してプロセッサ1102等に命令を与えて本発明を実施させるためのアプリケーション・ソフトウェア1130等のコンピュータ・プログラムを記憶する事ができる。 これらコンピュータ・プログラムはメイン・メモリ1106にロードされ、プロセッサ1102は、メイン・メモリ1006に格納されたコンピュータ・プログラムに基づいて動作し、各部の制御を行う。
コンピュータ・プログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。
ハードディスク・ドライブ1122にはさらに、本発明の実施に係るオブジェクト・モデルのファイル1134を含めることができる。
A mass storage device or an external storage medium device implements the present invention by giving an instruction to the
The computer program can be compressed or divided into a plurality of pieces and recorded on a plurality of media.
The
I/Oコントローラ・ブリッジ1118にはまた、キーボード/マウス・コントローラ1136が接続され、キーボード1138やマウス1140のような入力デバイスからの入力を受けつける。
I/Oコントローラ・ブリッジ1118にはこの他に、各種の外部バス・インターフェース1142、1144、1146が接続される。
外部バス・インターフェース1142は、USB等のシリアル・ポートまたはパラレル・ポートであり、ここを介して各種周辺装置を接続することができる。
A keyboard /
In addition to this, various
The
外部バス・インターフェース1146には、別のコンピュータ・システム1150を通信可能に接続することができ、コンピュータ・システム1150を構成するハードディスク・ドライブ1148に上記コンピュータ・プログラムの全部もしくは一部、または上記オブジェクト・モデルのファイル1134を保管させることも可能である。
Another
さらに、外部バス・インターフェース1144を介して外部のコンピュータ・ネットワーク1152に接続することができる。 このコンピュータ・ネットワーク1152を介して接続された別のコンピュータ・システムのハードディスク・ドライブにも、上記コンピュータ・プログラムの全部もしくは一部、または上記オブジェクト・モデルのファイル1134を保管させることも可能である。 これは即ち、本発明の実施は、スタンドアロンのサーバ・コンピュータ環境で行うこともでき、あるいは複数のサーバ・コンピュータの環境で行うこともできることを意味する。
なお、このコンピュータ・ネットワーク1152を介して、このサーバ・コンピュータにチェックアウトまたはチェックインをするユーザのクライアント・コンピュータを接続することができる。
Further, it can be connected to an
Note that a client computer of a user who performs check-out or check-in can be connected to the server computer via the
コンピュータ・システム1100の大容量記憶装置に記憶され、その全体的な動作を司るオペレーティング・システム1132としては、マイクロソフト・コーポレーションが提供するWindows(R)オペレーティング・システム、アップル・コンピュータ・インコーポレイテッドが提供するMacOS(R)、X Window Systemを備えるUNIX(R)系システムといった、GUI(Graphical User Interface)をサポートするオペレーティング・システムを採用することができる。
UNIX(R)系システムには、例えば、インターナショナル・ビジネス・マシーンズ・コーポレーションが提供するAIX(R)あるいはLinux(R)等がある。
The operating system 1132 stored in the mass storage device of the
The UNIX (R) system includes, for example, AIX (R) or Linux (R) provided by International Business Machines Corporation.
以上の説明により、本発明の実施に好適なコンピュータ・システム1100は、通常のパーソナル・コンピュータ、ワークステーション、メインフレーム等の情報処理装置、または、これらの組み合わせによって実現されることが容易に理解されるであろう。
From the above description, it can be easily understood that the
10.本発明の実施に係る方法
以上、本発明の実施形態を、複数のユーザからのアクセスを制御する、サーバ・コンピュータが備えるモデル要素アクセス制御システムとして説明したが、本発明はまた、当該システムによってその機能を実施するアクセス制御方法としての側面からも捉えることができる。
また、モデル要素アクセス制御システムがその機能を発揮するためには、サーバ・コンピュータ等に記憶されたコンピュータ・プログラムがサーバ・コンピュータのモデル要素アクセス制御システムに上記アクセス制御方法に係る各ステップを実行させることで行うので、本発明はまた、コンピュータ・プログラムとしての側面からも捉えることができる。
10. As described above, the embodiment of the present invention has been described as a model element access control system included in a server computer that controls access from a plurality of users. It can also be understood from the aspect as an access control method for implementing the function.
In order for the model element access control system to perform its function, a computer program stored in a server computer or the like causes the model element access control system of the server computer to execute each step related to the access control method. Therefore, the present invention can also be understood from the aspect of a computer program.
図12は、本発明をアクセス制御方法としての側面から捉えた場合の、実施形態に係る処理手順の流れを示す図である。
モデル要素アクセス制御システムは、まず、ステップ1202で、サーバ・コンピュータに記憶されたオブジェクト・モデルの各モデル要素について、そのモデル要素の第1拡張メタデータおよび第2拡張メタデータの初期設定を行う
FIG. 12 is a diagram illustrating a flow of a processing procedure according to the embodiment when the present invention is viewed from an aspect as an access control method.
In
これ以降、モデル要素アクセス制御システムは、イベント・ドリブンで処理を行う。
ステップ1204において、あるユーザから、いくつかのモデル要素についての第1拡張メタデータの内容の変更要求があった場合は、そのいくつかのモデル要素の各々について以下の処理を行う。
先ず、ステップ1206において、そのモデル要素の第2拡張メタデータを参照して、そのユーザが第1拡張メタデータを変更可能であるかどうかを調べる。 変更可能であれば、ステップ1208で、第1拡張メタデータの内容を、そのユーザの指示に基づいて変更する。
この処理を、このいくつかのモデル要素ごとに繰り返す。
Thereafter, the model element access control system performs event-driven processing.
In
First, in step 1206, it is checked whether or not the user can change the first extended metadata with reference to the second extended metadata of the model element. If it can be changed, in
This process is repeated for each of the several model elements.
ステップ1210において、あるユーザから、いくつかのモデル要素についての第2拡張メタデータの内容の変更要求があった場合は、そのいくつかのモデル要素の各々について以下の処理を行う。
先ず、ステップ1402において、そのモデル要素の第2拡張メタデータを参照して、そのユーザが第2拡張メタデータ自身を変更可能であるかどうかを調べる。 変更可能であれば、ステップ1202で、第2拡張メタデータの内容を、そのユーザの指示に基づいて変更する。
この処理を、このいくつかのモデル要素ごとに繰り返す。
In
First, in
This process is repeated for each of the several model elements.
ステップ1214において、あるユーザから、オブジェクト・モデルについてのチェックアウト要求があった場合は、全モデル要素の各々について以下の処理を行う。
先ず、ステップ1216において、対象のモデル要素についての第1拡張メタデータを参照して、そのユーザのそのモデル要素に対するアクセス権限が、「読出し可」または「編集可」であるかどうかを調べる。
アクセス権限が、「読出し可」または「編集可」である場合は、ステップ1218で、このモデル要素をそのままそのユーザのクライアント・コンピュータに提供する。
アクセス権限が、「読出し可」または「編集可」ではない場合、即ち「読出し不可」かつ「編集不可」ある場合は、ステップ1220で、このモデル要素を代替モデル要素(スタブ)で置き換えて、そのユーザのクライアント・コンピュータに提供する。
この処理を、このオブジェクト・モデルの全モデル要素ごとに繰り返す。
In
First, in
If the access authority is “readable” or “editable”, the model element is provided to the client computer of the user as it is in
If the access authority is not “Readable” or “Editable”, that is, “Readable” and “Editable”, the model element is replaced with an alternative model element (stub) in
This process is repeated for every model element of this object model.
ステップ1222において、あるユーザから、オブジェクト・モデルについてのチェックイン要求があった場合は、チェックインさせようとしているローカルなオブジェクト・モデルの全モデル要素および代替モデル要素の各々について以下の処理を行う。
先ず、ステップ1224において、対象のローカルなモデル要素等についての第1拡張メタデータを参照して、そのユーザのそのモデル要素に対するアクセス権限が、「編集可」であるかどうかを調べる。
アクセス権限が、「編集可」である場合は、ステップ1226で、このローカルなモデル要素をそのままサーバ・コンピュータのモデル・リポジトリに書き戻す。
アクセス権限が「編集可」ではない場合は、更にステップ1228において、アクセス権限が「読出し可」であるかどうか調べる。 「読出し可」である場合は、ステップ1230で、このローカルなモデル要素をサーバ・コンピュータのモデル・リポジトリに書き戻さず、モデル・リポジトリにある対応するモデル要素を利用する。 「読出し可」ではない場合とは、即ち、代替モデル要素である場合を意味する。 この場合は、ステップ1232で、この代替モデル要素をサーバ・コンピュータのモデル・リポジトリに書き戻さず、この代替モデル要素と同一のIDを持つ、モデル・リポジトリにある対応するモデル要素を利用する。
この処理を、このオブジェクト・モデルの全モデル要素ごとに繰り返す。
In
First, in
If the access right is “editable”, in
If the access authority is not “editable”, it is further checked in
This process is repeated for every model element of this object model.
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態の記載の範囲には限定されない。
上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。 またその様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。 さらに、上記実施の形態の中で説明されている特徴の組み合わせの全てが、発明の解決手段に必須とは限らないことにも留意されたい。
As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range of description of the said embodiment.
It will be apparent to those skilled in the art that various modifications or improvements can be added to the above-described embodiment. Further, it is apparent from the scope of the claims that the embodiments added with such changes or improvements can be included in the technical scope of the present invention. Furthermore, it should be noted that not all the combinations of features described in the above embodiments are essential for the solution of the invention.
Claims (11)
前記複数のモデル要素のそれぞれについて、前記複数のユーザの各々からの当該モデル要素に対するアクセス権限の種類を規定する第1拡張メタデータを当該モデル要素に関連付けて設定し、および、前記第1拡張メタデータおよび自身を修正する権限があるかどうかを示す第2拡張メタデータを当該モデル要素に関連付けて設定し、前記第2拡張メタデータには、各ユーザについて前記第1拡張メタデータを修正する権限があることが初期的に示される、初期設定部と、
第1ユーザからの第1拡張メタデータの編集要求に応じて、1以上のモデル要素のそれぞれについて、1以上のユーザの各々について、前記第2拡張メタデータが、前記第1拡張メタデータを編集する権限があることを示す場合に、前記第1拡張メタデータを編集する、第1拡張メタデータ編集部と、
第2ユーザからの第2拡張メタデータの編集要求に応じて、1以上のモデル要素のそれぞれについて、1以上のユーザの各々について、前記第1拡張メタデータを編集する権限がないことを示すように前記第2拡張メタデータを編集する、第2拡張メタデータ編集部と、
第3ユーザからの、前記オブジェクト・モデルを前記第3ユーザのクライアント・コンピュータにローカルなオブジェクト・モデルとして取り込むためのチェックアウト要求に応答してチェックアウトを行う、アクセス管理部であって、前記チェックアウトは、前記複数のモデル要素の各々について、前記第3ユーザに関して、
(1)読出し可能のアクセス権限または編集可能のアクセス権限があることを当該モデル要素の前記第1拡張メタデータが示す場合は、当該モデル要素をそのまま前記クライアント・コンピュータに提供し、
(2)読出し可能のアクセス権限および編集可能権のアクセス権限のいずれも無いことを当該モデル要素の前記第1拡張メタデータが示す場合は、当該モデル要素の代わりに、その内容を取り除いて少なくとも同一のIDと第1拡張メタデータのみを付与した、代替モデル要素を前記クライアント・コンピュータに提供する、
アクセス管理部と、
を備えるシステム。 A system for controlling access from a plurality of users to an object model stored in a server computer, each comprising a plurality of model elements each having a unique ID,
For each of the plurality of model elements, first extended metadata that defines the type of access authority for the model element from each of the plurality of users is set in association with the model element, and the first extended meta data Second extended metadata indicating whether or not there is an authority to modify data and itself is set in association with the model element, and the second extended metadata has an authority to modify the first extended metadata for each user. An initial setting section that is initially shown to have
In response to a request to edit the first extended metadata from the first user, the second extended metadata edits the first extended metadata for each of the one or more model elements and for each of the one or more users. A first extended metadata editing unit that edits the first extended metadata when indicating that the user has the right to
In response to a request for editing the second extended metadata from the second user, for each of the one or more model elements, each of the one or more users has no authority to edit the first extended metadata. A second extended metadata editing unit for editing the second extended metadata;
An access management unit that performs a checkout in response to a checkout request from a third user to import the object model as a local object model into the third user's client computer, the check Out for each of the plurality of model elements, for the third user,
(1) When the first extended metadata of the model element indicates that there is a readable access authority or an editable access authority, the model element is provided to the client computer as it is,
(2) If the first extended metadata of the model element indicates that there is neither a readable access authority nor an editable access authority, instead of the model element, the content is removed and at least the same Providing the client computer with an alternative model element assigned only the ID and the first extended metadata.
An access management department;
A system comprising:
(1)編集可能のアクセス権限があることを当該ローカルなモデル要素の前記第1拡張メタデータが示す場合は、当該ローカルなモデル要素を前記オブジェクト・モデルに書き戻し、
(2)読出し可能のアクセス権限があるが編集可能のアクセス権限が無いことを当該ローカルなモデル要素の前記第1拡張メタデータが示す場合は、当該ローカルなモデル要素の代わりに、当該ローカルなモデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の当該ローカルなモデル要素に対応するモデル要素を用い、
(3)当該ローカルなモデル要素が代替モデル要素である場合、前記代替モデル要素の代わりに、前記代替モデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の前記代替モデル要素に対応するモデル要素を用いる、
請求項1に記載のシステム。 The access management unit further performs a check-in in response to a check-in request from the fourth user for writing back a local object model in the client computer of the fourth user to the object model, The check-in is performed with respect to the fourth user for each of a plurality of local model elements included in the local object model.
(1) When the first extended metadata of the local model element indicates that there is an editable access right, the local model element is written back to the object model;
(2) When the first extended metadata of the local model element indicates that there is an access authority that can be read but no access authority that can be edited, the local model element is used instead of the local model element. Using a model element corresponding to the local model element in the object model having the same ID as the element's ID;
(3) If the local model element is an alternative model element, it corresponds to the alternative model element in the object model having the same ID as the ID of the alternative model element instead of the alternative model element Using model elements,
The system of claim 1.
当該ローカルなモデル要素が前記第4ユーザによって編集されていた場合には、チェックインを拒否し、前記第4ユーザに対して、当該ローカルなモデル要素の編集を許容できない旨の通知をすることを含む、
請求項2に記載のシステム。 Instead of the local model element, using a model element corresponding to the local model element in the object model having the same ID as the ID of the local model element,
If the local model element has been edited by the fourth user, check-in is rejected and the fourth user is notified that editing of the local model element is not allowed. Including,
The system according to claim 2.
前記代替モデル要素が前記第4ユーザによって編集されていた場合であって、その編集が、他のモデル要素との関係性を追加する変更であった場合に、前記代替モデル要素に対応するモデル要素に、前記他のモデル要素との関係性を追加する前記変更を反映させることを含む、
請求項3に記載のシステム。 Instead of the alternative model element, using a model element corresponding to the alternative model element in the object model having the same ID as the ID of the alternative model element,
The model element corresponding to the substitute model element when the substitute model element has been edited by the fourth user and the edit is a change that adds a relationship with another model element. Reflecting the change to add a relationship with the other model element,
The system according to claim 3.
当該ローカルなモデル要素が代替モデル要素であり、かつ、前記第5ユーザに関して、実行可能のアクセス権限があることを当該代替モデル要素の前記第1拡張メタデータが示す場合は、前記代替モデル要素の代わりに、前記代替モデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の前記代替モデル要素に対応するモデル要素を用いて、
前記ローカルなオブジェクト・モデルの前記モデル検証を完遂する、請求項3に記載のシステム。 The access management unit may further include a plurality of local object models included in the local object model when a request for model verification is received from the fifth user regarding the local object model in the client computer of the fifth user. For each local model element,
If the first extended metadata of the alternative model element indicates that the local model element is an alternative model element and that the user has executable access authority with respect to the fifth user, Instead, using a model element corresponding to the alternative model element in the object model having the same ID as the ID of the alternative model element,
The system of claim 3, wherein the system validation of the local object model is completed.
前記複数のモデル要素のそれぞれについて、前記複数のユーザの各々からの当該モデル要素に対するアクセス権限の種類を規定する第1拡張メタデータを当該モデル要素に関連付けて設定し、および、前記第1拡張メタデータおよび自身を修正する権限があるかどうかを示す第2拡張メタデータを当該モデル要素に関連付けて設定し、前記第2拡張メタデータには、各ユーザについて前記第1拡張メタデータを修正する権限があることを示すように初期設定するステップと、
第1ユーザからの第1拡張メタデータの編集要求に応じて、1以上のモデル要素のそれぞれについて、1以上のユーザの各々について、前記第2拡張メタデータが、前記第1拡張メタデータを編集する権限があることを示す場合に、前記第1拡張メタデータを編集するステップと、
第2ユーザからの第2拡張メタデータの編集要求に応じて、1以上のモデル要素のそれぞれについて、1以上のユーザの各々について、前記第1拡張メタデータを編集する権限がないことを示すように前記第2拡張メタデータを編集するステップと、
第3ユーザからの、前記オブジェクト・モデルを前記第3ユーザのクライアント・コンピュータにローカルなオブジェクト・モデルとして取り込むためのチェックアウト要求に応答してチェックアウトを行うステップであって、前記チェックアウトは、前記複数のモデル要素の各々について、前記第3ユーザに関して、
(1)読出し可能のアクセス権限または編集可能のアクセス権限があることを当該モデル要素の前記第1拡張メタデータが示す場合は、当該モデル要素をそのまま前記クライアント・コンピュータに提供し、
(2)読出し可能のアクセス権限および編集可能権のアクセス権限のいずれも無いことを当該モデル要素の前記第1拡張メタデータが示す場合は、当該モデル要素の代わりに、その内容を取り除いて少なくとも同一のIDと第1拡張メタデータのみを付与した、代替モデル要素を前記クライアント・コンピュータに提供する、
ステップと、
を備える方法。 A method for controlling access from a plurality of users to an object model stored in a server computer, each comprising a plurality of model elements each having a unique ID, comprising:
For each of the plurality of model elements, first extended metadata that defines the type of access authority for the model element from each of the plurality of users is set in association with the model element, and the first extended meta data Second extended metadata indicating whether or not there is an authority to modify data and itself is set in association with the model element, and the second extended metadata has an authority to modify the first extended metadata for each user. Initializing to indicate that there is
In response to a request to edit the first extended metadata from the first user, the second extended metadata edits the first extended metadata for each of the one or more model elements and for each of the one or more users. Editing the first extended metadata when indicating that the user has the right to
In response to a request for editing the second extended metadata from the second user, for each of the one or more model elements, each of the one or more users has no authority to edit the first extended metadata. Editing the second extended metadata;
Performing a checkout in response to a checkout request from a third user to import the object model as an object model local to the third user's client computer, the checkout comprising: For each of the plurality of model elements, for the third user,
(1) When the first extended metadata of the model element indicates that there is a readable access authority or an editable access authority, the model element is provided to the client computer as it is,
(2) If the first extended metadata of the model element indicates that there is neither a readable access authority nor an editable access authority, instead of the model element, the content is removed and at least the same Providing the client computer with an alternative model element assigned only the ID and the first extended metadata.
Steps,
A method comprising:
(1)編集可能のアクセス権限があることを当該ローカルなモデル要素の前記第1拡張メタデータが示す場合は、当該ローカルなモデル要素を前記オブジェクト・モデルに書き戻し、
(2)読出し可能のアクセス権限があるが編集可能のアクセス権限が無いことを当該ローカルなモデル要素の前記第1拡張メタデータが示す場合は、当該ローカルなモデル要素の代わりに、当該ローカルなモデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の当該ローカルなモデル要素に対応するモデル要素を用い、
(3)当該ローカルなモデル要素が代替モデル要素である場合、前記代替モデル要素の代わりに、前記代替モデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の前記代替モデル要素に対応するモデル要素を用いる、
ステップを更に備える、請求項8に記載の方法。 Check-in in response to a check-in request from a fourth user to write back a local object model on the client computer of the fourth user to the object model, the check-in , For each of a plurality of local model elements included in the local object model, with respect to the fourth user,
(1) When the first extended metadata of the local model element indicates that there is an editable access right, the local model element is written back to the object model;
(2) When the first extended metadata of the local model element indicates that there is an access authority that can be read but no access authority that can be edited, the local model element is used instead of the local model element. Using a model element corresponding to the local model element in the object model having the same ID as the element's ID;
(3) If the local model element is an alternative model element, it corresponds to the alternative model element in the object model having the same ID as the ID of the alternative model element instead of the alternative model element Using model elements,
The method of claim 8, further comprising a step.
前記複数のモデル要素のそれぞれについて、前記複数のユーザの各々からの当該モデル要素に対するアクセス権限の種類を規定する第1拡張メタデータを当該モデル要素に関連付けて設定し、および、前記第1拡張メタデータおよび自身を修正する権限があるかどうかを示す第2拡張メタデータを当該モデル要素に関連付けて設定し、前記第2拡張メタデータには、各ユーザについて前記第1拡張メタデータを修正する権限があるこを示すように初期設定するステップと、
第1ユーザからの第1拡張メタデータの編集要求に応じて、1以上のモデル要素のそれぞれについて、1以上のユーザの各々について、前記第2拡張メタデータが、前記第1拡張メタデータを編集する権限があることを示す場合に、前記第1拡張メタデータを編集するステップと、
第2ユーザからの第2拡張メタデータの編集要求に応じて、1以上のモデル要素のそれぞれについて、1以上のユーザの各々について、前記第1拡張メタデータを編集する権限がないことを示すように前記第2拡張メタデータを編集するステップと、
第3ユーザからの、前記オブジェクト・モデルを前記第3ユーザのクライアント・コンピュータにローカルなオブジェクト・モデルとして取り込むためのチェックアウト要求に応答してチェックアウトを行うステップであって、前記チェックアウトは、前記複数のモデル要素の各々について、前記第3ユーザに関して、
(1)読出し可能のアクセス権限または編集可能のアクセス権限があることを当該モデル要素の前記第1拡張メタデータが示す場合は、当該モデル要素をそのまま前記クライアント・コンピュータに提供し、
(2)読出し可能のアクセス権限および編集可能権のアクセス権限のいずれも無いことを当該モデル要素の前記第1拡張メタデータが示す場合は、当該モデル要素の代わりに、その内容を取り除いて少なくとも同一のIDと第1拡張メタデータのみを付与した、代替モデル要素を前記クライアント・コンピュータに提供する、
ステップと、
を実行させるための、コンピュータ・プログラム。 A computer program for controlling access from a plurality of users to an object model stored in a server computer, each comprising a plurality of model elements each having a unique ID, the server・ To computer
For each of the plurality of model elements, first extended metadata that defines the type of access authority for the model element from each of the plurality of users is set in association with the model element, and the first extended meta data Second extended metadata indicating whether or not there is an authority to modify data and itself is set in association with the model element, and the second extended metadata has an authority to modify the first extended metadata for each user. Initializing to indicate that there is,
In response to a request to edit the first extended metadata from the first user, the second extended metadata edits the first extended metadata for each of the one or more model elements and for each of the one or more users. Editing the first extended metadata when indicating that the user has the right to
In response to a request for editing the second extended metadata from the second user, for each of the one or more model elements, each of the one or more users has no authority to edit the first extended metadata. Editing the second extended metadata;
Performing a checkout in response to a checkout request from a third user to import the object model as an object model local to the third user's client computer, the checkout comprising: For each of the plurality of model elements, for the third user,
(1) When the first extended metadata of the model element indicates that there is a readable access authority or an editable access authority, the model element is provided to the client computer as it is,
(2) If the first extended metadata of the model element indicates that there is neither a readable access authority nor an editable access authority, instead of the model element, the content is removed and at least the same Providing the client computer with an alternative model element assigned only the ID and the first extended metadata.
Steps,
A computer program for executing
(1)編集可能のアクセス権限があることを当該ローカルなモデル要素の前記第1拡張メタデータが示す場合は、当該ローカルなモデル要素を前記オブジェクト・モデルに書き戻し、
(2)読出し可能のアクセス権限があるが編集可能のアクセス権限が無いことを当該ローカルなモデル要素の前記第1拡張メタデータが示す場合は、当該ローカルなモデル要素の代わりに、当該ローカルなモデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の当該ローカルなモデル要素に対応するモデル要素を用い、
(3)当該ローカルなモデル要素が代替モデル要素である場合、前記代替モデル要素の代わりに、前記代替モデル要素のIDと同一のIDを有する、前記オブジェクト・モデル内の前記代替モデル要素に対応するモデル要素を用いる、
ステップを更に前記サーバ・コンピュータに実行させるための、請求項10に記載のコンピュータ・プログラム。
Check-in in response to a check-in request from a fourth user to write back a local object model on the client computer of the fourth user to the object model, the check-in , For each of a plurality of local model elements included in the local object model, with respect to the fourth user,
(1) When the first extended metadata of the local model element indicates that there is an editable access right, the local model element is written back to the object model;
(2) When the first extended metadata of the local model element indicates that there is an access authority that can be read but no access authority that can be edited, the local model element is used instead of the local model element. Using a model element corresponding to the local model element in the object model having the same ID as the element's ID;
(3) If the local model element is an alternative model element, it corresponds to the alternative model element in the object model having the same ID as the ID of the alternative model element instead of the alternative model element Using model elements,
The computer program according to claim 10, further causing the server computer to execute a step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008260923A JP5172585B2 (en) | 2008-10-07 | 2008-10-07 | System, method, and program for controlling access to object model |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008260923A JP5172585B2 (en) | 2008-10-07 | 2008-10-07 | System, method, and program for controlling access to object model |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010092228A true JP2010092228A (en) | 2010-04-22 |
JP5172585B2 JP5172585B2 (en) | 2013-03-27 |
Family
ID=42254884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008260923A Expired - Fee Related JP5172585B2 (en) | 2008-10-07 | 2008-10-07 | System, method, and program for controlling access to object model |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5172585B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012510656A (en) * | 2008-11-28 | 2012-05-10 | インチロン ゲーエムベーハー | Data processing methods, systems, and simulation or analysis models |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017072969A1 (en) | 2015-10-30 | 2017-05-04 | 株式会社 東芝 | System design device and method |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250884A (en) * | 1993-03-01 | 1994-09-09 | Nippon Telegr & Teleph Corp <Ntt> | Device for supporting module test |
JPH0877051A (en) * | 1994-09-06 | 1996-03-22 | Hitachi Ltd | Common data management system |
JP2003067187A (en) * | 2001-08-27 | 2003-03-07 | Ricoh Co Ltd | Communication program generating method for image forming apparatus, stub object program and image forming apparatus |
JP2003150433A (en) * | 2001-11-13 | 2003-05-23 | Shinichiro Mori | Evaluation, management method for check information, management system, information management service by use of management system, evaluation by used of management system, check service, and access means |
EP1536309A1 (en) * | 2003-11-25 | 2005-06-01 | Sap Ag | Object-based access control |
JP2006277745A (en) * | 2005-03-25 | 2006-10-12 | Microsoft Corp | Work item rule for work item tracking system |
JP2006343926A (en) * | 2005-06-08 | 2006-12-21 | Ricoh Co Ltd | Application management device, method, and program |
JP2008226005A (en) * | 2007-03-14 | 2008-09-25 | Omron Corp | Distribution management system for control software component |
-
2008
- 2008-10-07 JP JP2008260923A patent/JP5172585B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06250884A (en) * | 1993-03-01 | 1994-09-09 | Nippon Telegr & Teleph Corp <Ntt> | Device for supporting module test |
JPH0877051A (en) * | 1994-09-06 | 1996-03-22 | Hitachi Ltd | Common data management system |
JP2003067187A (en) * | 2001-08-27 | 2003-03-07 | Ricoh Co Ltd | Communication program generating method for image forming apparatus, stub object program and image forming apparatus |
JP2003150433A (en) * | 2001-11-13 | 2003-05-23 | Shinichiro Mori | Evaluation, management method for check information, management system, information management service by use of management system, evaluation by used of management system, check service, and access means |
EP1536309A1 (en) * | 2003-11-25 | 2005-06-01 | Sap Ag | Object-based access control |
JP2006277745A (en) * | 2005-03-25 | 2006-10-12 | Microsoft Corp | Work item rule for work item tracking system |
JP2006343926A (en) * | 2005-06-08 | 2006-12-21 | Ricoh Co Ltd | Application management device, method, and program |
JP2008226005A (en) * | 2007-03-14 | 2008-09-25 | Omron Corp | Distribution management system for control software component |
Non-Patent Citations (1)
Title |
---|
徳田 弘昭, ソフトウェア構成管理ハンドブック, vol. 第1版, JPN6012064756, 25 November 2004 (2004-11-25), pages 320 - 322, ISSN: 0002407649 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012510656A (en) * | 2008-11-28 | 2012-05-10 | インチロン ゲーエムベーハー | Data processing methods, systems, and simulation or analysis models |
Also Published As
Publication number | Publication date |
---|---|
JP5172585B2 (en) | 2013-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6490633B2 (en) | Systems and methods for private cloud computing | |
JP5963957B2 (en) | Development environment system, development environment device, development environment providing method and program | |
US20080059214A1 (en) | Model-Based Policy Application | |
EP3252623B1 (en) | System and method for a networked document management system with reduced storage requirements | |
JP6052816B2 (en) | Method for supporting secondary use of contents of electronic work, server computer for supporting secondary use of contents of electronic work, and program for server computer | |
US20210286767A1 (en) | Architecture, method and apparatus for enforcing collection and display of computer file metadata | |
US10572247B2 (en) | Prototype management system | |
US20090164970A1 (en) | System for Managing Automated Report Versions | |
CN101847156B (en) | Method for installing web package within manufacturing executing system | |
JP5172585B2 (en) | System, method, and program for controlling access to object model | |
Annett | Working with Legacy Systems: A practical guide to looking after and maintaining the systems we inherit | |
US8601551B2 (en) | System and method for a business data provisioning for a pre-emptive security audit | |
US8359658B2 (en) | Secure authoring and execution of user-entered database programming | |
JP4838676B2 (en) | Hazardous substance warranty acquisition method and system, manufacturing method and program | |
JP5584548B2 (en) | Storage medium for program and license management, server and computer system | |
TWI466049B (en) | Configuration to order software deployment and management | |
JP7023807B2 (en) | Management system, information processing device, setting management method, and program | |
JP6813782B2 (en) | Information processing equipment, information processing system, its control method and program | |
JP6850162B2 (en) | Business data change check device, business data change check method, and business data change check program | |
US10484483B1 (en) | Method and system for providing software functionalities to users of multi-tenant applications via inheritance | |
US6782523B2 (en) | Parallel configurable IP design methodology | |
JP2004157883A (en) | Web site content management system and program | |
JP7445536B2 (en) | Order processing device, order processing method, and order processing program | |
JP2008033815A (en) | Project management device, method and program | |
JP2024008449A (en) | Malfunction information management system and malfunction information management method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110805 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121130 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121226 |
|
LAPS | Cancellation because of no payment of annual fees |