JP2009282777A - アプリケーションプログラムの提供システム及びアプリケーションプログラム - Google Patents

アプリケーションプログラムの提供システム及びアプリケーションプログラム Download PDF

Info

Publication number
JP2009282777A
JP2009282777A JP2008134573A JP2008134573A JP2009282777A JP 2009282777 A JP2009282777 A JP 2009282777A JP 2008134573 A JP2008134573 A JP 2008134573A JP 2008134573 A JP2008134573 A JP 2008134573A JP 2009282777 A JP2009282777 A JP 2009282777A
Authority
JP
Japan
Prior art keywords
application
definition
user
definition information
web page
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
JP2008134573A
Other languages
English (en)
Inventor
Takaaki Sakata
孝昭 坂田
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.)
Hitachi Information Systems Ltd
Original Assignee
Hitachi Information Systems 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 Hitachi Information Systems Ltd filed Critical Hitachi Information Systems Ltd
Priority to JP2008134573A priority Critical patent/JP2009282777A/ja
Publication of JP2009282777A publication Critical patent/JP2009282777A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】マルチテナント型アプリケーションのカスタマイズ機能に拡張性を持たせると共にメンテナンス時の対応が容易なアプリケーションプログラムの提供システムを提供すること。
【解決手段】リポジトリ管理システム101は、商談管理アプリケーション125をカスタマイズする利用者カスタマイズ機能部102と、商談管理アプリケーションの標準アプリケーション定義を保持する標準アプリケーション定義領域106と、作成されたアプリケーション定義を保持するアプリケーション定義領域110と、ユーザ名とパスワードによるリポジトリ管理システム101への認証と、ユーザ名から、利用者毎の定義領域を取得するための振り分けとを行う認証エンジン117と、アプリケーション定義情報を解析し、商談管理アプリケーションに提供する定義情報解析エンジン118と、を備えて構成されている。
【選択図】図1

Description

本発明はアプリケーションプログラムの提供システム及びアプリケーションプログラムに係り、特に、マルチテナント型アプリケーションを容易に実現するためのリポジトリ(カスタマイズ情報管理領域)を備え、カスタマイズ性およびメンテナンス性を維持・向上させたアプリケーションプログラムの提供システム及びアプリケーションプログラムに関する。
近年、多くの企業がネットワーク経由で利用可能なアプリケーションを提供している。Google社による、ワープロ、表計算ソフトや、カレンダーといったアプリケーションプログラム(以下、「アプリケーション」と略称する)や、SalesForce.com社による、顧客管理アプリケーションなどがその代表例である。これらの何れのアプリケーションも、複数の利用者によって同一のアプリケーションおよびハードウェア環境が共有される。また、データベースやウェブページなどの設定を利用者毎にカスタマイズすることが可能であるという特徴を有しており、マルチテナント型アプリケーションと呼ばれている。
このようなマルチテナント型アプリケーションでは、利用者毎に専用の環境を構築する必要がないことから、アプリケーションの迅速な導入と、TOC(total Cost of Ownership)の削減が可能である。また、複数の利用者で同一の環境を利用することで、バージョンアップなどのメンテナンス時の対応が共通化されるため、アプリケーションのメンテナンスを容易に実行することが可能である。
尚、このようなマルチテナント型アプリケーションでは、複数の全ての利用者に対して、同一バージョンのアプリケーションを提供することになるが、利用者毎に微妙に異なる仕様要求を満たすために、利用者の仕様要求に応じて、利用者自身がアプリケーションのカスタマイズや機能の新規追加を行う機能(即ち、利用者カスタマイズ機能)を持たせることが一般的となっている。
このような利用者カスタマイズ機能として、例えば特開2001−312400公報では、利用者毎にパラメータを保持してアプリケーションをカスタマイズする技術を開示している(特許文献1参照)。また、特表2007−531941号公報に見られるように、利用者毎にデータベースをカスタマイズする技術を利用してマルチテナント型アプリケーションの利用者カスタマイズ機能を実現する技術が開示されている(特許文献2参照)。
特開2001−312400号公報 特表2007−531941号公報
ところで、前述のマルチテナント型アプリケーションでは、利用者カスタマイズ機能が重要となるため、アプリケーション定義(ここではデータベース定義、ビジネスロジック定義、及びウェブページ定義、の三要素で構成されるものとする)は、利用者の要件に応じてカスタマイズされる必要がある。しかしながら、上記背景技術で述べた従来のアプリケーションプログラムの提供システム及びアプリケーションプログラムにあっては、利用者毎のカスタマイズ要求に対応するために、アプリケーション定義を利用者毎に変更した場合には下記の問題点が生じる可能性がある。
即ち、例えば、ビジネスロジック定義を利用者毎に変更する場合、この変更により、ビジネスロジック(即ちアプリケーションのプログラム自体)が利用者毎に異なるものとなってしまうため、アプリケーションのバージョンアップや、バグ対応に伴うメンテナンス用バッチの実行時などで弊害が生じる可能性があり、本来のマルチテナント型アプリケーションの特徴(即ちアプリケーションメンテナンス時の対応の容易性)が失われてしまうことがある。
そこで、メンテナンスの容易性を保持しつつ、利用者カスタマイズを実現するために、提供するアプリケーションには、利用者毎のカスタマイズ情報を保持するリポジトリ(カスタマイズ情報を格納して管理する領域)を構成し、このリポジトリの情報を元に、カスタマイズ部分を動的に切り替える仕組みが開発されている。尚、このリポジトリは、当該アプリケーションのプログラム中に、if文等の分岐命令として、予め組み込んでおく方法が確立している。
しかしながら、このようなリポジトリの組み込み方法では、提供するアプリケーションに、カスタマイズ可能な処理の全てを、分岐命令で網羅するようなコードを動的に組み込むことができる機能が必要となり、マルチテナント型アプリケーション開発時における生産性、およびメンテナンス性を悪化させてしまう。
また、カスタマイズ可能な処理の全てを、分岐命令で網羅したアプリケーションが予め定義されることから、想定外のカスタマイズ要求には対応できないという欠点がある。
さらに、マルチテナント型のアプリケーションを開発する際に必要な条件として、利用者毎のカスタマイズ情報を管理することが要求される。このため、前述のとおり、アプリケーションには、カスタマイズ情報を管理するリポジトリと呼ばれる管理領域(単純なファイルシステムやデータベースの場合)を備えさせる必要があり、開発者は、このリポジトリからカスタマイズ情報を拾い上げて、アプリケーションと関連付けて開発を行う必要がある。しかしながら、このような構成では、利用者による様々な種類のアプリケーションのカスタマイズや追加が行われた際に、例えば、それらの変更を理解するための仕組みを全てアプリケーション側で保持する必要があり、このため、アプリケーション自体が大きく複雑になってしまうという問題点がある。
本発明は、上記従来の問題点に鑑みてなされたものであって、マルチテナント型アプリケーションのカスタマイズ機能に拡張性を持たせると共にメンテナンス時の対応が容易なアプリケーションプログラムの提供システムを提供することを目的としている。
本発明の他の目的は、マルチテナント型アプリケーションのカスタマイズ機能に拡張性を持たせると共にメンテナンス時の対応が容易なアプリケーションプログラムを提供することにある。
上記課題に鑑みて鋭意研究の結果、本発明者は、アプリケーションとマルチテナント対応用のリポジトリとを分離させることにより、アプリケーション開発者がマルチテナントへの対応を意識することなくマルチテナント型アプリケーションを開発することが可能となることに想到し本発明をなすに至った。
すなわち、本発明は、同一のサーバ環境を使用する複数の利用者の各々が任意の仕様にカスタマイズして使用することができるマルチテナント型アプリケーションを提供するアプリケーションプログラムの提供システムであって、標準仕様を定義した標準アプリケーション定義情報と、前記標準アプリケーション定義情報よりも拡張された仕様を定義した拡張アプリケーション定義情報と、前記利用者が定義した利用者アプリケーション定義情報とを格納しているリポジトリ管理領域と、前記利用者とのインタフェース手段を備え、前記リポジトリ管理領域に格納されている前記拡張アプリケーション定義情報及び前記利用者アプリケーション定義情報を、前記利用者の各々が前記インタフェース手段を通じて要求する仕様にカスタマイズさせて更新する手段と、前記リポジトリ管理領域に格納されている標準アプリケーション定義情報、前記拡張アプリケーション定義情報及び前記利用者アプリケーション定義情報に基づいて、前記利用者の各々に提供されるプログラム構成を変更するレンダリング手段を有するアプリケーションプログラム本体とを有することを特徴とするアプリケーションプログラムの提供システムを提供するものである。
また、前記アプリケーションプログラムの提供システムにおいて、前記アプリケーション定義情報は、データベースの仕様を定義するデータベース定義と、ウェブページの仕様を定義するウェブページ定義と、前記アプリケーションプログラムのロジックを定義するロジック定義とを含むことを特徴とする。
さらに、前記アプリケーションプログラムの提供システムにおいて、前記リポジトリ管理領域内に、前記利用者の各々に対応してカスタマイズされた定義情報を、前記利用者ごとに格納するキャッシュメモリ領域を設け、前記レンダリング手段は、前記キャッシュメモリ領域に格納された最新の更新日付の定義情報を参照することを特徴とする。
前記利用者毎のキャッシュメモリ領域の使用により、アプリケーション定義の参照に要する時間を短縮することができる。
また、本発明は、同一のサーバ環境を使用する複数の利用者の各々が任意の仕様にカスタマイズして使用することができるマルチテナント型アプリケーションを提供するアプリケーションプログラムの提供用プログラムであって、標準仕様を定義した標準アプリケーション定義情報と、前記標準アプリケーション定義情報よりも拡張された仕様を定義した拡張アプリケーション定義情報と、前記利用者が定義した利用者アプリケーション定義情報とを格納している、前記サーバの記憶装置に設けられたリポジトリ管理領域に対してデータの読み書きを行う機能と、前記利用者とのインタフェース手段を提供する機能と、前記リポジトリ管理領域に格納されている前記拡張アプリケーション定義情報及び前記利用者アプリケーション定義情報を、前記利用者の各々が前記インタフェース手段を通じて要求する仕様にカスタマイズさせて更新する機能と、前記リポジトリ管理領域に格納されている標準アプリケーション定義情報、前記拡張アプリケーション定義情報及び前記利用者アプリケーション定義情報に基づいて、前記利用者の各々に提供されるアプリケーションプログラム本体のプログラム構成を変更するレンダリング機能とを前記サーバに実行させることを特徴とするアプリケーションプログラムの提供用プログラムを提供するものである。
また、前記アプリケーションプログラムの提供用プログラムにおいて、前記アプリケーション定義情報は、データベースの仕様を定義するデータベース定義と、ウェブページの仕様を定義するウェブページ定義と、前記アプリケーションプログラムのロジックを定義するロジック定義とを含むことを特徴とする。
また、前記アプリケーションプログラムの提供用プログラムにおいて、前記リポジトリ管理領域内に、前記利用者の各々に対応してカスタマイズされた定義情報を、前記利用者ごとに格納するキャッシュメモリ領域が設けられており、前記レンダリング機能は、前記キャッシュメモリ領域に格納された最新の更新日付の定義情報を参照することを特徴とする。
即ち、本発明に係るアプリケーションプログラムの提供システム及びアプリケーションプログラムは、マルチテナント型アプリケーションが標準で提供するアプリケーション定義を標準アプリケーション定義とし、リポジトリ管理システムで管理する。
また、利用者カスタマイズ機能によって標準アプリケーション定義を拡張した場合に作成されるアプリケーション定義を拡張アプリケーション定義とする。さらに、利用者カスタマイズ機能で利用者が独自に定義したアプリケーション定義を利用者アプリケーション定義とし、リポジトリ管理システムで管理する。これら3種類のアプリケーション定義はリポジトリ管理システムに専用の領域を準備し、ファイルもしくはデータベースで管理することとする。
利用者がアプリケーションを利用するタイミングで、リポジトリ管理システムは、利用者ごとに管理している標準アプリケーション定義、拡張アプリケーション定義をマージして適切な形式のアプリケーション定義を作成し、アプリケーションに対して提供するが、ここで、利用者アプリケーション定義は利用者特有のアプリケーションであるため、そのままの形でアプリケーションに対して提供することができるようにしている。
さらに、本発明に係るアプリケーションプログラムの提供システム及びアプリケーションプログラムは、これらの定義情報を基に、レンダリング(定義情報から、HTML、データベース、或いはプログラムといった実体を生成すること)を行い、アプリケーションを構築し、これにより、アプリケーションを、利用者毎に最適にカスタマイズされた状態で提供することを可能にしている。
尚、このような構成により、アプリケーションから、マルチテナント用のリポジトリ管理システムを分離することができる(アプリケーションとリポジトリとの関連性はリポジトリ管理ステムから提供される定義ファイルに限定される)ため、アプリケーション側は、標準アプリケーション定義、拡張アプリケーション定義、利用者アプリケーション定義が分離されていることを意識せずに、リポジトリ管理システムから提供される統合された単一の形式のアプリケーション定義のみを受け取れば良いことになる。その結果、この単一のアプリケーション定義を基に、通常のアプリケーションを構築するだけでよいため、アプリケーション開発者は、マルチテナント対応を意識することなく、定義情報からアプリケーション実体へのレンダリングを行うだけで、利用者カスタマイズに対応したマルチテナント型アプリケーションを開発することを可能にしている。
また、リポジトリ管理システム上で、標準アプリケーション定義と拡張アプリケーション定義および利用者アプリケーション定義が分離されているため、アプリケーションのメンテナンスは、利用者によるカスタマイズ結果に影響されることなく、標準アプリケーション定義のみを対象としても構わないのである。このため、アプリケーションに対してメンテナンスの簡易性を維持させることが可能となる。
尚、利用者カスタマイズ機能は、利用者用のインタフェースを作成し、拡張アプリケーション定義と利用者アプリケーション定義のみを操作させることで、標準アプリケーション定義に影響を与えることなく実現可能である。ここで作成する利用者用のインタフェースは、アプリケーション定義が複数存在することを意識させない設計とすることで、利用者の操作性を向上させている。
以上説明したように、本発明のアプリケーションプログラムの提供システム及びアプリケーションプログラムによれば、アプリケーションとマルチテナント対応用のリポジトリが分離されているため、アプリケーション開発者は、マルチテナントへの対応を意識することなく、マルチテナント型アプリケーションを開発することが可能となる効果がある。
また、標準アプリケーション定義と利用者のカスタマイズ定義との2つのアプリケーション定義を分離することで、マルチテナント型アプリケーションのメリット、即ち、メンテナンス時の対応の容易性と利用者カスタマイズ機能とを同時に実現可能となる効果がある。
この結果、アプリケーションとマルチテナント対応用のリポジトリがやり取りするのは定義ファイルのみとなり、アプリケーションは、リポジトリから提供される定義情報のみを基に、単純に、データベース、ウェブページ、或いはビジネスロジックを構築するだけでよいので、開発者は、マルチテナント対応であることを意識する必要がなくなるといった効果もある。
以下、本発明のアプリケーションプログラムの提供システムの最良の実施形態について、図面を参照して詳細に説明する。尚、本発明に係るアプリケーションプログラムについては、本発明に係るアプリケーションプログラムの提供システムを組み込んで動作するプログラムであることから、当該プログラムに関する説明は以下の説明に含まれるものとする。
以下、簡易的なマルチテナント型商談管理アプリケーションを例に、本発明を詳細に説明する。
図1は、本発明の実施形態に係るアプリケーションプログラムの提供システムを採用したマルチテナント型商談管理アプリケーションの全体構成を示す構成図である。
同図において、本実施形態のアプリケーションプログラムの提供システムを採用したマルチテナント型商談管理アプリケーションは、商談管理アプリケーション125(アプリケーションプログラムの本体)と、リポジトリ管理システム101と、を備えて構成される。
リポジトリ管理システム101は、利用者が商談管理アプリケーション125をカスタマイズするために利用する利用者カスタマイズ機能部102と、商談管理アプリケーションの標準機能を実現するための標準アプリケーション定義を保持する標準アプリケーション定義領域106(リポジトリ管理領域)と、利用者(ここでは「ユーザA」とする)のカスタマイズ機能を利用して作成されたアプリケーション定義を保持するアプリケーション定義領域110(リポジトリ管理領域)と、ユーザ名とパスワードによるリポジトリ管理システム101への認証と、ユーザ名から、利用者毎の定義領域を取得するための振り分けとを行う認証エンジン117と、リポジトリ内のアプリケーション定義情報を解析し、商談管理アプリケーションに提供する定義情報解析エンジン118と、を備える。
利用者カスタマイズ機能部102は、後述するカスタマイズUI(ユーザインタフェース)104によって変更されたアプリケーション定義を利用者アプリケーション定義領域に反映するための定義更新部103と、アプリケーション定義を変更するためのユーザインタフェースを与えるカスタマイズUI104と、アプリケーション定義を解析するための解析部105と、を備える。
標準アプリケーション定義領域106は、商談管理アプリケーション125が標準仕様で利用するデータベース定義107と、ウェブページ定義108と、ビジネスロジック定義109(ロジック定義)と、を備える(ここで、いずれの定義も複数とすることができる)。
アプリケーション定義領域110は、利用者カスタマイズ機能により、標準仕様のアプリケーション定義に対する拡張や追加を行う拡張データベース定義111と、拡張ウェブページ定義112と、拡張ビジネスロジック定義113と、を備え、さらに、利用者カスタマイズ機能により、利用者専用に作成されるアプリケーションの定義を与える利用者データベース定義114と、利用者ウェブページ定義115と、利用者ビジネスロジック定義116と、を備える。
定義情報解析エンジン118は、アプリケーション定義を解析するための解析部119と、解析部によって得られたユーザ(ここではユーザA)用の定義情報を格納しているメモリ空間であるユーザAメモリ領域120と、を備える。ここで、ユーザAメモリ領域120とは、それぞれユーザAに対応した一種のキャッシュメモリ領域であり、商談アプリケーション125の使用直前に、アプリケーション定義領域110の情報(ウェブページ定義122、ビジネスロジック定義123、及びデータベース定義124)の、常に最新更新日のものと置き換えられて参照されるメモリ領域である。
商談管理アプリケーション125は、レンダリング部121(レンダリング手段)と、業務用に使用する業務用データベース126と、データベースアクセスを実行するためのルーチン127と、ビジネスロジックを実行するためのルーチン128と、HTML形式のウェブページ129と、を備える。尚、ユーザAは符号130で示す。
以下、本実施形態のアプリケーションプログラムの提供システムを採用したマルチテナント型商談管理アプリケーションが有する各構成要素の動作について説明する。
まず、利用者カスタマイズ機能部102の処理について説明する。
利用者カスタマイズ機能部102における利用者カスタマイズ機能とは、提供するアプリケーション(例えば、商談管理アプリケーション125)を利用者のニーズに沿ってカスタマイズする機能である。利用者カスタマイズ機能部102によって、2種類のアプリケーション定義が新たに作成される。即ち、所定のデータベース定義に対して新たに定義列を追加するといった機能を有する拡張アプリケーション定義(ここでは商談管理アプリケーションの定義を拡張する)と、新機能(例えば顧客管理機能)を新たに実装するといった、商談管理アプリケーションに新たにアプリケーション定義を追加する利用者アプリケーション定義との、計2つである。
利用者カスタマイズ機能部102が、ユーザAに関するデータベース定義のカスタマイズを行う際には、最初に、ユーザAの認証エンジンを介したログインの実行を処理する。ユーザAによるログインは、ユーザIDおよびパスワードにて行われ、例えば、ユーザAと正しく認証されることで、標準アプリケーション定義領域106へのアクセス許可と、利用者アプリケーション定義領域110(ここではユーザA対応の領域)へのアクセス許可が付与される。正しく認証が行われない場合は、これらの定義領域へのアクセスは許可されない(否認)。このログインを実行させることで、解析部105が、標準アプリケーション定義領域106から商談管理アプリケーションのデータベース定義107を取得する。
図3は、データベース定義の1例を示す説明図である。
同図に示すように、必要なデータベース定義はファイル名で取得される。同図の2行目がデータベースの名称定義である。ここでは、namespace(所有者情報)に『アプリケーション』、name(テーブル名)に『account』が設定されており、nameはファイル名と同一である。以上により、図3に示すデータベース定義は、標準のデータベース定義107のaccountテーブルであることが分かる。同図の3行目以降はテーブルに固有のプロパティー情報であり、name(名称)、type(データ型)などが定義されている。アプリケーション定義や標準ビジネスロジック定義についても同様にXML形式のデータで格納されているものとする。
次に、解析部105は、利用者アプリケーション定義領域110(ここではユーザA対応の領域)から、拡張データベース定義111を取得する。拡張データベース定義111は、利用者アプリケーション定義領域110(即ち、ユーザA対応の領域)から、標準のデータベース定義と同一のファイル名で取得される。
図4は、拡張データベース定義の1例を示す説明図である。
同図に示す拡張データベース定義には、標準のデータベース定義107を上書きするためのMain Table Propertyと、利用者が拡張した項目であるPropertyとがある。同図の2行目がデータベースの名称定義である。図3に示す標準のデータベース定義107とほぼ同じ名称定義であるが、拡張データベース定義であることを示すために、nameが『account_ユーザA』となっている。同図の3行目以降はプロパティー情報である。拡張データベース定義は2種類のプロパティー情報を保持する。1つ目がMain Table Propertyである。Main Table Propertyは標準のデータベース定義107のプロパティー情報を上書きするためのプロパティー情報である。また、2つ目がPropertyである。Propertyは利用者が追加したプロパティー情報であり、標準のデータベース定義107とは全く関連性がない。
マージする際は、同じファイル名を有する前記2つのデータベース定義をマージ(併合処理)する。具体的には拡張データベース定義の持つ2つのプロパティー情報で標準のデータベース定義107を上書きする。上書きする項目がない場合は、標準のデータベース定義107をそのまま使用する。マージした後、accountテーブルの定義情報として利用者毎に提供する。そのため、利用者は定義情報が分割されていることを意識することはない。
以上に述べたように、解析部105は標準のデータベース定義107と、拡張データベース定義111とをマージし、その結果をカスタマイズ用のアプリケーション定義(ここではデータベース定義)として内部メモリ(一時的な作業用メモリ)に格納する。
また、解析部105は、利用者アプリケーション定義領域110(ユーザA対応)から、利用者データベース定義114も取得する。
図5は、利用者データベース定義114の1例を示す説明図である。
同図に示すように、利用者データベース定義114は標準のデータベース定義107と同じ構成であるが、特定の利用者(ここではユーザA)のみが利用可能な専用のデータベースである。このため、2行目のnamespaceが「アプリケーション」ではなく「ユーザA」となっている。利用者カスタマイズ機能部102は、この利用者データベース定義114も、カスタマイズ用に内部メモリへと格納する。内部メモリに格納されるデータベース定義の形式は、図3もしくは図5で示されるデータベース定義と同一の形式である。
ユーザAが利用可能な全てのデータベース定義が内部メモリに格納された後、ユーザAは、これらのデータベース定義に対してカスタマイズを行う。このカスタマイズは専用のカスタマイズユーザUI104を介して、若しくは定義情報の直接的な更新によって行うものとする。カスタマイズが終わった後、定義更新部103によって、アプリケーション定義領域110の拡張アプリケーション定義(ここでは拡張データベース定義111)と、利用者アプリケーション定義(ここでは利用者データベース定義114)が更新される(当然ながら、標準のデータベース定義107は更新されない)。
以上がカスタマイズツールを利用した、カスタマイズと、リポジトリへの反映とを行う機能であり、利用者はユーザインタフェースを利用して、利用者のニーズに応じたカスタマイズが可能となる。
図2は、利用者カスタマイズ機能部102の処理の流れを示すフローチャート図である。
以下、図1を参照し、利用者カスタマイズ機能部102の処理の流れについて、アプリケーション定義のデータベース定義をカスタマイズする場合を例に、図2に示すフローチャート図を使用して詳細に説明する。
(ステップS200)
ステップS200では、ユーザA(符号130)が、カスタマイズUI104にアクセスする。
(ステップS201)
ステップS201では、認証エンジン117が、上記アクセスを許可するために、ユーザAの認証を行い、認証が得られない場合は処理を終了し、認証が得られた場合はステップS202に進む。
(ステップS202)
ステップS202では、解析部105が、標準アプリケーション定義領域106から、データベース定義107を取得する。
(ステップS203)
ステップS203では、解析部105が、利用者アプリケーション定義領域110に、拡張データベース定義111が存在するか否かを検証し、拡張データベース定義111が存在する場合はステップS204に移り、拡張データベース定義111が存在しない場合はステップS208に進む。
(ステップS204)
ステップS204では、解析部105が、以下のステップS205からステップS207までの処理を、拡張データベース定義111の定義数だけ反復できるように細工する。
(ステップS205)
ステップS205では、解析部105が、利用者アプリケーション定義領域110(ユーザA対応)から、拡張データベース定義111を取得する。
(ステップS206)
ステップS206では、解析部105が、拡張データベース定義111と対応する標準のデータベース定義107をマージ処理する。
(ステップS207)
ステップS207では、解析部105が、前記マージしたデータベース定義の各々を内部メモリに格納する。この後、ステップS205からの拡張データベース定義111の定義数だけの反復処理が完了している場合はステップS208に進む。
(ステップS208)
ステップS208では、解析部105が、利用者アプリケーション定義領域110に、利用者データベース定義114が存在するか否かを検証し、利用者データベース定義114が存在する場合はステップS209に移り、利用者データベース定義114が存在しない場合はステップS212に進む。
(ステップS209)
ステップS209では、解析部105が、以下のステップS210からステップS211までの処理を、利用者データベース定義114の定義数だけ反復できるように細工する。
(ステップS210)
ステップS210では、解析部105が、利用者アプリケーション定義領域110(ユーザA対応)から、利用者データベース定義114を取得する。
(ステップS211)
ステップS211では、解析部105が、前記取得したデータベース定義の各々を内部メモリに格納する。この後、ステップS210からの利用者データベース定義114の定義数だけの反復処理が完了している場合はステップS212に進む。
(ステップS212)
ステップS212では、ユーザAが、内部メモリに格納されたデータベース定義の各々をカスタマイズする。
(ステップS213)
ステップS213では、定義更新部103が、カスタマイズ情報(ユーザAによってカスタマイズされた情報)に基づいて、アプリケーション定義領域110の拡張アプリケーション定義(ここでは拡張データベース定義111)を更新する。
(ステップS214)
ステップS214では、定義更新部103が、カスタマイズ情報(ユーザAによってカスタマイズされた情報)に基づいて、アプリケーション定義領域110の利用者アプリケーション定義(ここでは利用者データベース定義114)を更新し、処理を終了する。
次に、商談管理アプリケーション125側から見たリポジトリ管理システム101の使用方法について説明する。
ここでは、ユーザAが、リポジトリ管理システム101から専用のウェブページ定義122を取得し、商談管理アプリケーション125上のユーザA専用のウェブページ129として利用する方法を例に説明する。ユーザAが、アプリケーション125上のユーザA専用のウェブページ129にアクセスする際は、常に定義情報解析エンジン118を介するものとする。
認証エンジン117は、アプリケーションのログインIDと連携しており、ログインは、ユーザIDおよびパスワードの入力によって行われ、例えば、ユーザAと正しく認証されることで、定義解析エンジン117に対して標準アプリケーション定義領域106へのアクセス許可と、ユーザAアプリケーション定義領域110と、ユーザAに対応するユーザAメモリ領域120と、に対するアクセス許可が付与される。正しく認証が行われない場合は、このようなアクセスは許可されない(否認)。
アクセス許可が付与された後、定義情報解析エンジンの解析部119は、商談管理システム(ここでは商談管理アプリケーション125が必要とするページID(商談管理ページなどの一意な名称や、一意なID)を基に、ユーザAメモリ領域120の検索を行う。ユーザAメモリ領域120は、利用者A用に用意されたキャッシュメモリ空間である、ユーザAメモリ領域120に対象のウェブページ定義が存在する場合は、ユーザAメモリ領域120のウェブページ定義122をそのまま使用する。但し、ユーザAメモリ領域120に対象のウェブページ定義122が存在しない場合や、ユーザAメモリ領域120に格納されるウェブページ定義122の情報が古いと判断される場合、解析部119は、ユーザAメモリ領域120のウェブページ定義122は使用しないで、標準アプリケーション定義領域106中のウェブページ定義108を取得しに行く。ユーザAメモリ領域120に格納されるウェブページ定義122の情報が古いとの判断は、ユーザAメモリ領域120に格納されているウェブページ定義122の更新日付と、標準アプリケーション定義領域106、及び利用者アプリケーション定義領域110に格納されているウェブページ定義の更新日付を比較することで行い、即ち、ユーザAメモリ領域120に格納されている更新日付の方が古いと判断される場合は、ユーザAメモリ領域120に格納されているウェブページ定義122の情報も古いと判断する。
標準アプリケーション定義領域106中に古くはない標準アプリケーション定義が見つかった場合は、解析部119は、引き続き利用者アプリケーション定義領域111(ユーザA対応)を参照する。ここで、拡張ウェブページ定義112が存在する場合は、マージした結果を内部メモリに格納する。尚、この場合のマージの具体的な処理は、DBの場合と同様に、Main Page〜となっていて存在する情報は上書きし、それ以外の場合は標準のウェブページ定義108を使用するものとする。
また、拡張ウェブページ定義112が無い場合は、カスタマイズされていないものと見なし、標準ウェブページ定義108をそのまま内部メモリに維持する。標準のアプリケーション定義106自体が見つからない場合は、利用者が独自に作成した利用者ウェブページ定義115である可能性が高いので、利用者アプリケーション定義領域110(ユーザA対応)から利用者ウェブページ定義115を取得し、内部メモリに格納する。何れの場合にも、ウェブページ定義が無い場合は何も行わない。
上記の方法で利用者が要求するウェブページ定義が取得できるので、解析部119は、この取得したウェブページ定義で、ユーザAメモリ領域を更新する。
図7は、標準のウェブページ定義の1構成例を示す説明図である。同図では、標準のウェブページ定義108の一部を示している。また、図8は、拡張ウェブページ定義の1構成例を示す説明図である。同図では拡張ウェブページ定義112の一部を示している。さらに、図9は、マージ後のウェブページ定義の1構成例を示す説明図である。同図ではマージ後にユーザAメモリ領域120に格納されるウェブページ定義の一部を示している。
尚、利用者ウェブページ定義115については、標準のウェブページ定義108とほぼ同じであるため、図示は省略する。また、ビジネスロジック定義(109,113,116)、及びデータベース定義(107,111,114)についても、それぞれ同様の構成をとる(マージ前のデータベース定義については図3〜図5を参照)。
更新(即ちカスタマイズ)が行われた後、商談管理アプリケーション125のレンダリング部121は、ユーザAメモリ領域120から、ウェブページ定義122を取得し、HTML形式に変換して参照可能にする。同様に、レンダリング部121は、ビジネスロジック定義123の場合はプログラムコード、また、データベース定義124の場合はデータベーススキーマへと変換し、商談管理アプリケーション125に対して提供する。これらの変換機能の実現には、O-Rマッピングツール(データベースを定義ファイルと関連付け、プログラムからアクセスする方法)や、レンダリングエンジンといった既存の機能を利用することも可能である。
図6は、商談管理アプリケーション125側から見たリポジトリ管理システム101使用時の処理の流れを示すフローチャート図である。
以下、図1を参照し、図6に示すフローチャート図を使用して、商談管理アプリケーション125側から見たリポジトリ管理システム101使用時の処理の流れを説明する。
(ステップS600)
ステップS600では、ユーザA(符号130)が、ウェブページ129にアクセスする。
(ステップS601)
ステップS601では、認証エンジン117が、上記アクセスを許可するために、ユーザAの認証を行い、認証が得られない場合は処理を終了し、認証が得られた場合はステップS602に進む。
(ステップS602)
ステップS602では、解析部105が、ユーザAメモリ領域120のウェブページ定義122に、対象のウェブページ定義が存在するか否かを検証し、対象のウェブページ定義が存在する場合はステップS603に移り、対象のウェブページ定義が存在しない場合はステップS605に進む。
(ステップS603)
ステップS603では、解析部119が、ユーザAメモリ領域120の更新後にウェブページ定義122を更新すべき場合か否か(即ち、ウェブページ定義122の情報が古い場合か否か)を検証し、ウェブページ定義122を更新すべきでない場合はステップS604に進み、ウェブページ定義122を更新すべき場合はステップS605に移る。
(ステップS604)
ステップS604では、解析部119が、ユーザAメモリ領域120のウェブページ定義122をそのまま使用することとし、ステップS616に移る。
(ステップS605)
ステップS605では、解析部119が、対象のウェブページ定義は標準のウェブページか否かを検証し、対象のウェブページ定義が標準のウェブページである場合はステップS606に移り、対象のウェブページ定義が標準のウェブページでない場合はステップS607に進む。
(ステップS606)
ステップS606では、解析部119が、標準アプリケーション定義領域106(ユーザA対応)中に拡張ウェブページ定義112が存在するか否かを検証し、前記領域に拡張ウェブページ定義112が存在する場合はステップS612に移り、前記領域に拡張ウェブページ定義112が存在しない場合はステップS610に進む。
(ステップS607)
ステップS607では、解析部119が、対象のウェブページ定義は利用者のウェブページか否かを検証し、対象のウェブページ定義が利用者のウェブページである場合はステップS608に進み、対象のウェブページ定義が利用者のウェブページでない場合は処理を終了する。
(ステップS608)
ステップS608では、解析部119が、利用者アプリケーション定義領域110(ユーザA対応)の利用者ウェブページ定義115を取得する。
(ステップS609)
ステップS609では、解析部119が、前記取得した利用者ウェブページ定義115を内部メモリに格納し、ステップS615に移る。
(ステップS610)
ステップS610では、解析部119が、標準アプリケーション定義領域106から標準のウェブページ定義108を取得する。
(ステップS611)
ステップS611では、解析部119が、前記取得した標準のウェブページ定義108を内部メモリに格納し、ステップS615に移る。
(ステップS612)
ステップS612では、解析部119が、利用者アプリケーション定義領域110(ユーザA対応)から、拡張ウェブページ定義112を取得する。
(ステップS613)
ステップS613では、解析部119が、前記取得した拡張ウェブページ定義112と、標準のウェブページ定義108とをマージする。
(ステップS614)
ステップS614では、解析部119が、前記マージしたウェブページ定義の各々を内部メモリに格納し、ステップS615に移る。
(ステップS615)
ステップS615では、解析部119が、内部メモリに格納されている情報でもって、ユーザAメモリ領域120を更新する。
(ステップS616)
ステップS616では、商談管理アプリケーション125のレンダリング部121が、ユーザAメモリ領域120内のウェブページ定義を基にHTML形式のウェブページ129(実体ページ)を作成する。
尚、上記のフローチャート図では、ウェブページ定義をレンダリングするまでの動作を示したが、データベース定義及びビジネスロジック定義をレンダリングする場合も同様である。
本実施形態によれば、標準のアプリケーション定義、拡張されたアプリケーション定義、利用者用のアプリケーション定義の相違箇所は、リポジトリ管理システム101において吸収処理されるため、商談管理アプリケーション125側では、単一の形式のアプリケーション定義のみを意識したレンダリング部121を作成するだけでよい。ユーザAメモリ領域120に存在する単純なアプリケーション定義を基に、アプリケーションを構築するだけで、それぞれの利用者に適合した商談管理アプリケーションが構築され、利用者に提供することができる効果がある。
また、アプリケーションがメンテナンスされる場合、リポジトリ管理システム101における標準のアプリケーション定義は、利用者毎のアプリケーション定義から切り離された構成であるため、標準のアプリケーション定義を変更するだけでメンテナンスが可能となる効果がある。即ち、本実施形態によれば、アプリケーションのメンテナンス処理の存在が、利用者カスタマイズに対して影響を与えることもなく、逆に、アプリケーションのメンテナンス処理が、利用者カスタマイズから影響を受けることもない。
本発明は、マルチテナント型として提供されるアプリケーションプログラム全般に適用することが可能であり、とりわけ、利用者毎のカスタマイズ要求が発生するウェブサービス・アプリケーションや、定義情報を基に、データベース、ウェブページ、及びビジネスロジック等が更新されるアプリケーション全般の構築に好適である。
本発明の実施形態に係るアプリケーションプログラムの提供システムを採用したマルチテナント型商談管理アプリケーションの全体構成を示す構成図である。 利用者カスタマイズ機能部102の処理の流れを示すフローチャート図である。 データベース定義の1例を示す説明図である。 拡張データベース定義の1例を示す説明図である。 利用者データベース定義114の1例を示す説明図である。 商談管理アプリケーション125側から見たリポジトリ管理システム101使用時の処理の流れを示すフローチャート図である。 標準のウェブページ定義の1構成例を示す説明図である。 拡張ウェブページ定義の1構成例を示す説明図である。 マージ後のウェブページ定義の1構成例を示す説明図である。
符号の説明
101…リポジトリ管理システム
102…利用者カスタマイズ機能部
103…定義更新部
104…カスタマイズUI(ユーザインタフェース)
105…解析部(利用者カスタマイズ機能部102に付属)
106…標準アプリケーション定義領域
107…データベース定義(標準の定義)
108…ウェブページ定義(標準の定義)
109…ビジネスロジック定義(標準の定義)
110…利用者アプリケーション定義領域(ユーザA対応)
111…拡張データベース定義
112…拡張ウェブページ定義
113…拡張ビジネスロジック定義
114…利用者データベース定義
115…利用者ウェブページ定義
116…利用者ビジネスロジック定義
117…認証エンジン
118…定義情報解析エンジン
119…解析部(定義情報解析エンジン118に付属)
120…ユーザAメモリ領域
121…レンダリング部
122…ウェブページ定義(ユーザAメモリ領域に付属)
123…ビジネスロジック定義(ユーザAメモリ領域に付属)
124…データベース定義(ユーザAメモリ領域に付属)
125…商談管理アプリケーション
126…業務用データベース
127…データベースアクセス用ルーチン(プログラム)
128…ビジネスロジック用ルーチン(プログラム)
129…ウェブページ(HTML形式)

Claims (6)

  1. 同一のサーバ環境を使用する複数の利用者の各々が任意の仕様にカスタマイズして使用することができるマルチテナント型アプリケーションを提供するアプリケーションプログラムの提供システムであって、
    標準仕様を定義した標準アプリケーション定義情報と、前記標準アプリケーション定義情報よりも拡張された仕様を定義した拡張アプリケーション定義情報と、前記利用者が定義した利用者アプリケーション定義情報とを格納しているリポジトリ管理領域と、
    前記利用者とのインタフェース手段を備え、前記リポジトリ管理領域に格納されている前記拡張アプリケーション定義情報及び前記利用者アプリケーション定義情報を、前記利用者の各々が前記インタフェース手段を通じて要求する仕様にカスタマイズさせて更新する手段と、
    前記リポジトリ管理領域に格納されている標準アプリケーション定義情報、前記拡張アプリケーション定義情報及び前記利用者アプリケーション定義情報に基づいて、前記利用者の各々に提供されるプログラム構成を変更するレンダリング手段を有するアプリケーションプログラム本体と、
    を有することを特徴とするアプリケーションプログラムの提供システム。
  2. 前記アプリケーション定義情報は、データベースの仕様を定義するデータベース定義と、ウェブページの仕様を定義するウェブページ定義と、前記アプリケーションプログラムのロジックを定義するロジック定義とを含むことを特徴とする請求項1記載のアプリケーションプログラムの提供システム。
  3. 前記リポジトリ管理領域内に、前記利用者の各々に対応してカスタマイズされた定義情報を、前記利用者ごとに格納するキャッシュメモリ領域を設け、前記レンダリング手段は、前記キャッシュメモリ領域に格納された最新の更新日付の定義情報を参照することを特徴とする請求項1または請求項2記載のアプリケーションプログラムの提供システム。
  4. 同一のサーバ環境を使用する複数の利用者の各々が任意の仕様にカスタマイズして使用することができるマルチテナント型アプリケーションを提供するアプリケーションプログラムの提供用プログラムであって、
    標準仕様を定義した標準アプリケーション定義情報と、前記標準アプリケーション定義情報よりも拡張された仕様を定義した拡張アプリケーション定義情報と、前記利用者が定義した利用者アプリケーション定義情報とを格納している、前記サーバの記憶装置に設けられたリポジトリ管理領域に対してデータの読み書きを行う機能と、
    前記利用者とのインタフェース手段を提供する機能と、
    前記リポジトリ管理領域に格納されている前記拡張アプリケーション定義情報及び前記利用者アプリケーション定義情報を、前記利用者の各々が前記インタフェース手段を通じて要求する仕様にカスタマイズさせて更新する機能と、
    前記リポジトリ管理領域に格納されている標準アプリケーション定義情報、前記拡張アプリケーション定義情報及び前記利用者アプリケーション定義情報に基づいて、前記利用者の各々に提供されるアプリケーションプログラム本体のプログラム構成を変更するレンダリング機能と
    を前記サーバに実行させることを特徴とするアプリケーションプログラムの提供用プログラム。
  5. 前記アプリケーション定義情報は、データベースの仕様を定義するデータベース定義と、ウェブページの仕様を定義するウェブページ定義と、前記アプリケーションプログラムのロジックを定義するロジック定義とを含むことを特徴とする請求項4記載のアプリケーションプログラムの提供用プログラム。
  6. 前記リポジトリ管理領域内に、前記利用者の各々に対応してカスタマイズされた定義情報を、前記利用者ごとに格納するキャッシュメモリ領域が設けられており、前記レンダリング機能は、前記キャッシュメモリ領域に格納された最新の更新日付の定義情報を参照することを特徴とする請求項4または請求項5記載のアプリケーションプログラムの提供用プログラム。
JP2008134573A 2008-05-22 2008-05-22 アプリケーションプログラムの提供システム及びアプリケーションプログラム Pending JP2009282777A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008134573A JP2009282777A (ja) 2008-05-22 2008-05-22 アプリケーションプログラムの提供システム及びアプリケーションプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008134573A JP2009282777A (ja) 2008-05-22 2008-05-22 アプリケーションプログラムの提供システム及びアプリケーションプログラム

Publications (1)

Publication Number Publication Date
JP2009282777A true JP2009282777A (ja) 2009-12-03

Family

ID=41453164

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008134573A Pending JP2009282777A (ja) 2008-05-22 2008-05-22 アプリケーションプログラムの提供システム及びアプリケーションプログラム

Country Status (1)

Country Link
JP (1) JP2009282777A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101195943B1 (ko) 2010-11-19 2012-10-29 (주)공영디비엠 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법
JP5626333B2 (ja) * 2010-03-05 2014-11-19 日本電気株式会社 プログラム作成支援装置、プログラム、および、情報システム
US9535662B2 (en) 2012-09-18 2017-01-03 Ricoh Company, Ltd. Data processing apparatus and data processing method
KR20170059449A (ko) * 2014-09-25 2017-05-30 오라클 인터내셔날 코포레이션 멀티테넌트 어플리케이션 서버 환경에서 단대단 라이프사이클을 제공하기 위한 시스템 및 방법
US10742568B2 (en) 2014-01-21 2020-08-11 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US11075799B2 (en) 2017-08-24 2021-07-27 Oracle International Corporation System and method for provisioning in a multi-tenant application server environment
US11423083B2 (en) 2017-10-27 2022-08-23 Ab Initio Technology Llc Transforming a specification into a persistent computer program
WO2022196629A1 (ja) * 2021-03-19 2022-09-22 日本電気株式会社 管理装置、通信システム、管理方法、及び非一時的なコンピュータ可読媒体

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11212775A (ja) * 1998-01-30 1999-08-06 Matsushita Electric Works Ltd 情報処理システム
JP2001312400A (ja) * 2000-04-28 2001-11-09 Nippon System Science Kk カスタマイズドプログラム自動生成サービス方法
JP2003202990A (ja) * 2002-01-08 2003-07-18 Hitachi Information Systems Ltd プログラム管理起動システムとプログラム管理起動方法およびプログラムと記録媒体
JP2004185553A (ja) * 2002-12-06 2004-07-02 Fujitsu Ltd Webユーザインターフェースのコンポーネント化方法及び装置
JP2004310279A (ja) * 2003-04-03 2004-11-04 Sumisho Computer Systems Corp 業務処理システムおよびその構築支援装置、業務処理システム用プログラム、業務処理システムの構築支援用プログラム
JP2007531941A (ja) * 2004-04-02 2007-11-08 セールスフォース ドット コム インコーポレイティッド マルチテナント・データベース・システムにおけるカスタム・エンティティおよびフィールド
JP2007299233A (ja) * 2006-04-28 2007-11-15 Nec Corp カスタマイズ装置、カスタマイズ方法、カスタマイズプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11212775A (ja) * 1998-01-30 1999-08-06 Matsushita Electric Works Ltd 情報処理システム
JP2001312400A (ja) * 2000-04-28 2001-11-09 Nippon System Science Kk カスタマイズドプログラム自動生成サービス方法
JP2003202990A (ja) * 2002-01-08 2003-07-18 Hitachi Information Systems Ltd プログラム管理起動システムとプログラム管理起動方法およびプログラムと記録媒体
JP2004185553A (ja) * 2002-12-06 2004-07-02 Fujitsu Ltd Webユーザインターフェースのコンポーネント化方法及び装置
JP2004310279A (ja) * 2003-04-03 2004-11-04 Sumisho Computer Systems Corp 業務処理システムおよびその構築支援装置、業務処理システム用プログラム、業務処理システムの構築支援用プログラム
JP2007531941A (ja) * 2004-04-02 2007-11-08 セールスフォース ドット コム インコーポレイティッド マルチテナント・データベース・システムにおけるカスタム・エンティティおよびフィールド
JP2007299233A (ja) * 2006-04-28 2007-11-15 Nec Corp カスタマイズ装置、カスタマイズ方法、カスタマイズプログラム

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5626333B2 (ja) * 2010-03-05 2014-11-19 日本電気株式会社 プログラム作成支援装置、プログラム、および、情報システム
KR101195943B1 (ko) 2010-11-19 2012-10-29 (주)공영디비엠 멀티테넌트 기반의 서비스로서의 데이터베이스 서비스 방법
US9535662B2 (en) 2012-09-18 2017-01-03 Ricoh Company, Ltd. Data processing apparatus and data processing method
US11343200B2 (en) 2014-01-21 2022-05-24 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US11683274B2 (en) 2014-01-21 2023-06-20 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
US10742568B2 (en) 2014-01-21 2020-08-11 Oracle International Corporation System and method for supporting multi-tenancy in an application server, cloud, or other environment
KR20170059449A (ko) * 2014-09-25 2017-05-30 오라클 인터내셔날 코포레이션 멀티테넌트 어플리케이션 서버 환경에서 단대단 라이프사이클을 제공하기 위한 시스템 및 방법
KR102313476B1 (ko) * 2014-09-25 2021-10-18 오라클 인터내셔날 코포레이션 멀티테넌트 어플리케이션 서버 환경에서 단대단 라이프사이클을 제공하기 위한 시스템 및 방법
US10855620B2 (en) 2014-09-25 2020-12-01 Oracle International Corporation System and method for providing an end-to-end lifecycle in a multitenant application server environment
JP2017532678A (ja) * 2014-09-25 2017-11-02 オラクル・インターナショナル・コーポレイション マルチテナントアプリケーションサーバ環境においてエンドツーエンドライフサイクルを提供するためのシステムおよび方法
US11075799B2 (en) 2017-08-24 2021-07-27 Oracle International Corporation System and method for provisioning in a multi-tenant application server environment
US11423083B2 (en) 2017-10-27 2022-08-23 Ab Initio Technology Llc Transforming a specification into a persistent computer program
WO2022196629A1 (ja) * 2021-03-19 2022-09-22 日本電気株式会社 管理装置、通信システム、管理方法、及び非一時的なコンピュータ可読媒体

Similar Documents

Publication Publication Date Title
JP2009282777A (ja) アプリケーションプログラムの提供システム及びアプリケーションプログラム
US7886041B2 (en) Design time validation of systems
US8307058B2 (en) Apparatus, method, and computer program product for processing information
US7607126B2 (en) System and method for external override of annotations
US8244798B2 (en) Techniques for sharing content between portals
RU2412474C2 (ru) Способ и система для создания, хранения, управления и потребления специфичных культуре данных
US20170118268A1 (en) Self describing configuration
US20200301940A1 (en) Systems and methods for data visualization, dashboard creation and management
US20070143339A1 (en) Architecture for a smart enterprise framework and methods thereof
US7765464B2 (en) Method and system for dynamically assembling presentations of web pages
US20050091346A1 (en) Settings management infrastructure
US10133875B2 (en) Digital rights management system implementing version control
US20200301939A1 (en) Systems and methods for data visualization, dashboard creation and management
US20170116436A1 (en) Automatic operation detection on protected field
US20170116428A1 (en) Support sharing the same table for protected and non-protected data columns
US9560121B2 (en) Provisioning a web hosting resource using a cloud service
MX2007011028A (es) Ontologia de incorporacion de autorizacion de recursos.
US20130167110A1 (en) Modeled user interface controllers
JP2019501438A (ja) データテーブルを共有するためのサポートを有する構成の自己記述
US9158932B2 (en) Modeled authorization check implemented with UI framework
WO2010095226A1 (ja) アプリケーション開発支援装置、プログラム及び記録媒体
JP5555550B2 (ja) データ変換方法、その装置およびそのプログラム
JP5387015B2 (ja) 情報処理装置、および情報処理装置の情報処理方法
JP2007034933A (ja) 文書管理システムにおける文書更新方法
KR101108534B1 (ko) 도메인 규칙에 기반한 웹 애플리케이션 입력 값 유효성 검증 및 변환, 데이터베이스 출력 값 변환 관리 자동화 시스템 및 그 제어방법

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20091205

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110131

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110601

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111101

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111221

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20111227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120124

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120529