(57)【要約】【課題】使用環境への依存性を極小化したアプリケーションを開発し、それを運用するシステムを提供する。【解決手段】このシステムは、クライアントマシン12と、サーバマシン14と、開発用クライアントマシン52と、ロジック処理を実行してクライアントマシン12に返す文字等データ114を作成し、文字等データ114および画面定義情報100を共通出力文字データ104として出力するミドルウェア42と、共通出力文字データ104に基づいて画面出力するとともに、入力操作Xを共通入力文字データ106に変換してサーバマシン14に出力する画面表示クライアントソフト30と、共通演算命令C1'等と、これらを演算命令C1等に変換するための変換プログラム70とを備え、変換プログラム70を用いて共通演算命令C1'等を含む共通アプリケーション68をアプリケーション44に変換するアプリケーション開発ソフト66とを備えている。【選択図】図１
2011028406.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ操作用の画面を表示するモニタ、およびユーザに操作される入力装置を備えており、画面表示クライアントソフトを有するクライアントマシンと、
前記クライアントマシンの前記モニタに表示する画面における、数値等の入出力がされる入出力欄の位置および種類を定義した画面定義情報、処理ロジックが記載されたアプリケーション、ミドルウェア、アプリケーション開発ソフト、および開発用画面情報を有するサーバマシンと、
前記サーバマシンからの要求に応じて、前記ロジック処理で使用するデータの入出力を行うデータベースと、
前記クライアントマシンと前記サーバマシンとの間、および前記サーバマシンと前記データベースとの間において相互通信をそれぞれ行う通信回線と、
共通アプリケーションを開発するための画面を表示する開発用モニタ、および当該開発のためにユーザが入力作業を行う開発用入力装置を備えており、前記画面定義情報を作成する画面デザインソフト、および開発用画面表示クライアントソフトを有する開発用クライアントマシンと、
前記開発用クライアントマシンと前記サーバマシンとの間において相互通信を行う前記開発用通信回線とを備えており、
前記ミドルウェアは、前記サーバマシンの使用環境に応じて作成され、前記アプリケーションに記述されたロジック処理を実行して前記クライアントマシンに返す文字等データを作成し、当該文字等データおよび前記画面定義情報を前記クライアントマシンの種類に依存しない共通出力文字データとして前記クライアントマシンに出力し、
アプリケーション開発ソフトは、前記サーバマシンの使用環境に応じて作成され、前記アプリケーションを開発するために前記開発用クライアントマシンに出力する開発用文字等データを作成し、当該開発用文字等データおよび前記開発用画面情報を前記開発用クライアントマシンの種類に依存しない開発用共通出力文字データとして前記開発用クライアントマシンに出力するとともに、予め設定・定義された共通演算命令および共通条件式と、前記共通演算命令および共通条件式のそれぞれを前記サーバマシンの使用環境に対応した演算命令および条件式に変換するための変換プログラムとを備えており、ユーザが作成した前記共通演算命令および共通条件式を含む共通アプリケーションを、前記変換プログラムを用いて前記サーバマシンの使用環境に応じてコンバートしてアプリケーションを作成し、
前記画面表示クライアントソフトは、前記クライアントマシンの種類に応じて作成され、前記サーバマシンから前記通信回線を介して送られてきた前記共通出力文字データに基づいて前記モニタに画面出力するとともに、前記入力装置を介して行われたユーザによる入力操作を前記クライアントマシンの種類に依存しない共通入力文字データに変換し、前記通信回線を介して前記共通入力文字データを前記サーバマシンに出力し、
前記開発用画面表示クライアントソフトは、前記開発用クライアントマシンの種類に応じて作成され、前記サーバマシンから前記開発用通信回線を介して送られてきた前記開発用共通出力文字データに基づいて前記開発用モニタに画面出力するとともに、前記開発用入力装置を介して行われたユーザによる入力操作を前記開発用クライアントマシンの種類に依存しない開発用共通入力文字データに変換し、前記開発用通信回線を介して前記開発用共通入力文字データを前記サーバマシンに出力することを特徴とするアプリケーション開発運用システム。
【請求項２】
ユーザ操作用の画面を表示するモニタ、およびユーザに操作される入力装置を備えており、画面表示クライアントソフトおよび前記モニタに表示する画面における、数値等の入出力がされる入出力欄の位置および種類を定義した画面定義情報を作成する画面デザインソフトを有するクライアントマシンと、
前記画面定義情報、処理ロジックが記載されたアプリケーション、ミドルウェア、アプリケーション開発ソフト、および開発用画面情報を有するサーバマシンと、
前記サーバマシンからの要求に応じて、前記ロジック処理で使用するデータの入出力を行うデータベースと、
前記クライアントマシンと前記サーバマシンとの間、および前記サーバマシンと前記データベースとの間において相互通信をそれぞれ行う通信回線とを備えており、
前記ミドルウェアは、前記サーバマシンの使用環境に応じて作成され、前記アプリケーションに記述されたロジック処理を実行して前記クライアントマシンに返す文字等データを作成し、当該文字等データおよび前記画面定義情報を前記クライアントマシンの種類に依存しない共通出力文字データとして前記クライアントマシンに出力し、
アプリケーション開発ソフトは、前記サーバマシンの使用環境に応じて作成され、前記アプリケーションを開発するために前記クライアントマシンに出力する開発用文字等データを作成し、当該開発用文字等データおよび前記開発用画面情報を前記クライアントマシンの種類に依存しない開発用共通出力文字データとして前記クライアントマシンに出力するとともに、予め設定・定義された共通演算命令および共通条件式と、前記共通演算命令および共通条件式のそれぞれを前記サーバマシンの使用環境に対応した演算命令および条件式に変換するための変換プログラムとを備えており、ユーザが作成した前記共通演算命令および共通条件式を含む共通アプリケーションを、前記変換プログラムを用いて前記サーバマシンの使用環境に応じてコンバートしてアプリケーションを作成し、
前記画面表示クライアントソフトは、前記アプリケーションを運用する際には、前記クライアントマシンの種類に応じて作成され、前記サーバマシンから前記通信回線を介して送られてきた前記共通出力文字データに基づいて前記モニタに画面出力するとともに、前記入力装置を介して行われたユーザによる入力操作を前記クライアントマシンの種類に依存しない共通入力文字データに変換し、前記通信回線を介して前記共通入力文字データを前記サーバマシンに出力し、また、前記アプリケーションを開発する際には、前記サーバマシンからの前記開発用共通出力文字データに基づいて前記モニタに画面出力するとともに、前記入力装置を介して行われたユーザによる入力操作を前記クライアントマシンの種類に依存しない開発用共通入力文字データに変換し、前記通信回線を介して前記開発用共通入力文字データを前記サーバマシンに出力することを特徴とするアプリケーション開発運用システム。
【請求項３】
クライアントマシンのモニタに表示する画面における、数値等の入出力がされる入出力欄の位置および種類を定義した画面定義情報、および処理ロジックが記載されたアプリケーションを有するサーバマシンに組み込まれるようになっており、前記アプリケーションに記述されたロジック処理を実行して前記クライアントマシンに返す文字等データを作成し、当該文字等データおよび前記画面定義情報を前記クライアントマシンの種類に依存しない共通出力文字データとして前記クライアントマシンに出力するためのミドルウェア、
ユーザ操作用の画面を表示する前記モニタ、およびユーザに操作される入力装置を備える前記クライアントマシンに組み込まれるようになっており、前記サーバマシンから通信回線を介して送られてきた前記共通出力文字データに基づいて前記モニタに画面出力するとともに、前記入力装置を介して行われたユーザによる入力操作を前記クライアントマシンの種類に依存しない共通入力文字データに変換し、前記通信回線を介して前記共通入力文字データを前記サーバマシンに出力するための画面表示クライアントソフト、
共通アプリケーションを開発するための画面を表示する開発用モニタ、および当該開発のためにユーザが入力作業を行う開発用入力装置を有する開発用クライアントマシンに組み込まれるようになっており、前記画面定義情報を作成するための画面デザインソフト、
前記サーバマシンに組み込まれるようになっており、前記アプリケーションを開発するために前記開発用クライアントマシンに出力する開発用文字等データを作成し、当該開発用文字等データおよび前記開発用画面情報を前記開発用クライアントマシンの種類に依存しない開発用共通出力文字データとして前記開発用クライアントマシンに出力するとともに、予め設定・定義された共通演算命令および共通条件式と、前記共通演算命令および共通条件式のそれぞれを前記サーバマシンの使用環境に対応した演算命令および条件式に変換するための変換プログラムとを備えており、ユーザが作成した前記共通演算命令および共通条件式を含む共通アプリケーションを、前記変換プログラムを用いて前記サーバマシンの使用環境に応じてコンバートしてアプリケーションを作成するためのアプリケーション開発ソフト、および
前記開発用クライアントマシンに組み込まれるようになっており、前記サーバマシンから開発用通信回線を介して送られてきた前記開発用共通出力文字データに基づいて前記開発用モニタに画面出力するとともに、前記開発用入力装置を介して行われたユーザによる入力操作を前記開発用クライアントマシンの種類に依存しない開発用共通入力文字データに変換し、前記開発用通信回線を介して前記開発用共通入力文字データを前記サーバマシンに出力するための開発用画面表示クライアントソフトを備えるアプリケーション開発運用ソフト。
【請求項４】
クライアントマシンのモニタに表示する画面における、数値等の入出力がされる入出力欄の位置および種類を定義した画面定義情報、および処理ロジックが記載されたアプリケーションを有するサーバマシンに組み込まれるようになっており、前記アプリケーションに記述されたロジック処理を実行して前記クライアントマシンに返す文字等データを作成し、当該文字等データおよび前記画面定義情報を前記クライアントマシンの種類に依存しない共通出力文字データとして前記クライアントマシンに出力するためのミドルウェア、
ユーザ操作用の画面を表示する前記モニタ、およびユーザに操作される入力装置を備える前記クライアントマシンに組み込まれるようになっており、前記アプリケーションを運用する際には、前記サーバマシンから通信回線を介して送られてきた前記共通出力文字データに基づいて前記モニタに画面出力するとともに、前記入力装置を介して行われたユーザによる入力操作を前記クライアントマシンの種類に依存しない共通入力文字データに変換し、前記通信回線を介して前記共通入力文字データを前記サーバマシンに出力し、前記アプリケーションを開発する際には、前記サーバマシンからの前記開発用共通出力文字データに基づいて前記モニタに画面出力するとともに、前記入力装置を介して行われたユーザによる入力操作を前記クライアントマシンの種類に依存しない開発用共通入力文字データに変換し、前記通信回線を介して前記開発用共通入力文字データを前記サーバマシンに出力するための画面表示クライアントソフト、
前記クライアントマシンに組み込まれるようになっており、前記画面定義情報を作成するための画面デザインソフト、および
前記サーバマシンに組み込まれるようになっており、前記アプリケーションを開発するために前記クライアントマシンに出力する開発用文字等データを作成し、当該開発用文字等データおよび前記開発用画面情報を前記クライアントマシンの種類に依存しない開発用共通出力文字データとして前記クライアントマシンに出力するとともに、予め設定・定義された共通演算命令および共通条件式と、前記共通演算命令および共通条件式のそれぞれを前記サーバマシンの使用環境に対応した演算命令および条件式に変換するための変換プログラムとを備えており、ユーザが作成した前記共通演算命令および共通条件式を含む共通アプリケーションを、前記変換プログラムを用いて前記サーバマシンの使用環境に応じてコンバートしてアプリケーションを作成するためのアプリケーション開発ソフトを備えるアプリケーション開発運用ソフト。
【請求項５】
前記画面表示クライアントソフトでは、処理ロジックの内容に依存することなく頻繁に行われる汎用性の高い入力操作が、予め汎用入力操作として設定・定義されており、前記汎用入力操作については、前記画面表示クライアントソフト内で処理を行い、前記共通入力文字データとして前記サーバマシンに出力しないようにしたことを特徴とする請求項１または２に記載のアプリケーション開発運用システム。
【請求項６】
前記画面表示クライアントソフトでは、処理ロジックの内容に依存することなく頻繁に行われる汎用性の高い入力操作が、予め汎用入力操作として設定・定義されており、前記汎用入力操作については、前記画面表示クライアントソフト内で処理を行い、前記共通入力文字データとして前記サーバマシンに出力しないようにしたことを特徴とする請求項３または４に記載のアプリケーション開発運用ソフト。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーション開発技術の習得が容易で、かつ、サーバマシンに使用するデータベース、言語、あるいはプラットフォーム等といった使用環境やクライアントマシンの種類が異なるシステムに極めて容易に対応することのできる、使用環境への依存性を極小化した共通アプリケーションを開発し、それを適用するシステムに応じてコンバートして運用することのできるシステムおよびソフトに関する。
【背景技術】
【０００２】
分散型コンピュータシステムの一つであり、プリンタ等のハードウェア資源や、データベース等の情報資源を集中管理するサーバマシンと、このサーバマシンが管理する資源（ハードウェア資源およびデータベース等の情報資源）を利用する、アプリケーションが実行されるクライアントマシンとで構成されたクライアントサーバシステムが従来から広く使用されている。
【０００３】
近年、このクライアントサーバシステムをさらに発展させ、図６に示すように、サーバマシン１とデータベース２とを分離して、システム全体を「プレゼンテーション層」（ユーザインターフェイス）、「アプリケーション層」（ロジック処理）、「データ層」（データベース）の３階層に分け、クライアントマシン３側にはユーザインターフェイス部分のみを残し、アプリケーション４はサーバマシン１側に実装するようにした３階層のシンクライアントシステム５が開発されている。
【０００４】
このようにアプリケーション４をクライアントマシン３から分離してサーバマシン１で実行することにより、アプリケーション４により処理ロジック、サーバマシン１の種類、あるいはクライアントマシン３の種類を変更する場合でも、サーバマシン１のアプリケーション４を変更するだけでよくなり、以前のクライアントサーバシステムのように、システム全体を更新する必要が無くなるという利点がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−１０５４９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、サーバマシン１のアプリケーション４を変更するだけでよいとはいえ、アプリケーション４の作り替えには多大な労力が必要であった。
【０００７】
なぜならば、従来のシンクライアントシステム５のサーバマシン１で実行されるアプリケーション４は、サーバマシン１で使用されるデータベース、言語、およびプラットフォーム（オペレーションシステムやＣＰＵ等）の種類（以下、「使用環境」という。）、およびクライアントマシン３の種類（以下、これらを合わせて「使用環境等」という。）に応じて個別に作成しなければならず、使用環境等に対する依存性が高すぎるという問題があったからである。
【０００８】
具体的に説明すると、アプリケーション４は、一般的に、図７に示すように、大略、演算命令Ｃ１と、条件式Ｃ２と、制御命令Ｃ３とで構成されている。
【０００９】
演算命令Ｃ１および条件式Ｃ２は、サーバマシン１で実行する処理ロジックを記述するためのものであり、例えば、入力された数値Ａ１をデータベースにストックされていた数値Ａ２に加算して数値Ａ３とし（演算命令Ｃ１）、この数値Ａ３が１以下であればＡ３＝Ａ３＋１とし、１以上であれば何もしない（条件式Ｃ２）等といった処理が記載される。もちろん、これら演算命令Ｃ１および条件式Ｃ２は、サーバマシン１の使用環境に対応したものを使用する必要がある。
【００１０】
制御命令Ｃ３は、クライアントマシン３のモニタ６における画面表示（上述の例であれば、条件式Ｃ２の処理を受けた後の数値Ａ３を埋め込んだ画面をモニタに表示すること。）や、入力装置からの入力を受け付ける（上述の例であれば、クライアントマシン３におけるキーボードからの数値Ａ１の入力を受け付ける。）役割を有している。
【００１１】
ところで、クライアントマシン３としてサーバマシン１との間でやりとりを行うマシンには、ウィンドウズ（登録商標）ＯＳが使用されているパソコン３ａや、独自ＯＳが使用され、モニタの大きさや入力キーの数がパソコンとは全く異なるハンディターミナル３ｂ等の様々なハードウェア仕様を有するものが用いられることから、アプリケーション４の制御命令Ｃ３は、パソコン３ａやハンディターミナル３ｂ等の仕様に応じたものでなければならない（例えば、パソコン３ａの表示画面に対し、ハンディターミナル３ｂの表示画面は、非常に狭く、かつ、限定された文字種類や文字色しか表示できない等といった制約条件がある。）。このため、制御命令Ｃ３は、クライアントマシン３ａ、３ｂに応じて全く異なるものとなる（また、サーバマシン１とクライアントマシン３ａ、３ｂとの間で通信回線７を介してやり取りされる通信伝文８ａ、８ｂも全く異なるものとなる。）。
【００１２】
このように、この制御命令Ｃ３は、サーバマシン１の使用環境のみならず、クライアントマシン３の種類にも対応するようにして作成する必要があることから、演算命令Ｃ１や条件式Ｃ２よりも作成に注意と手間とを要し、かつ、ある使用環境等に応じて作成された制御命令Ｃ３を他の使用環境等の下で実行される制御命令Ｃ３として流用することが全く不可能な原因となっている。
【００１３】
以上のように、ある使用環境等に合わせて作成されたアプリケーション４は、異なる使用環境等の下では動作させることができず、使用環境等に変更が生じる度に、個々の使用環境等に対応したアプリケーション４を初めから作成しなければならず、アプリケーションの開発効率が非常に悪いという問題があった。
【００１４】
とりわけ、アプリケーション４の開発者は、アプリケーション４が適用される使用環境等毎に、固有の各命令の内容を理解した上でアプリケーション４を開発しなければならないことから、大きな負担を強いられる（使用環境毎における各命令の使い方を修得する必要があるだけでなく、頻繁に行われる言語やＯＳのアップグレードによる命令の変化にも日々対応する必要があった。）ばかりでなく、アプリケーションの開発技術の習得にも多大な時間を要していた。
【００１５】
本発明は、このような従来技術の問題点に鑑みて開発されたものである。それゆえに本発明の主たる課題は、アプリケーション開発技術の習得が容易で、かつ、使用環境等が異なる各システムに極めて容易に対応することのできる、使用環境への依存性を極小化したアプリケーションを開発し、それを運用するシステムおよびソフトを提供することにある。
【課題を解決するための手段】
【００１６】
請求項１に記載した発明は、「ユーザ操作用の画面を表示するモニタ２２、およびユーザに操作される入力装置２４を備えており、画面表示クライアントソフト３０を有するクライアントマシン１２と、
前記クライアントマシン１２の前記モニタ２２に表示する画面における、数値等の入出力がされる入出力欄１１０の位置および種類を定義した画面定義情報１００、処理ロジックが記載されたアプリケーション４４、ミドルウェア４２、アプリケーション開発ソフト６６、および開発用画面情報１５０を有するサーバマシン１４と、
前記サーバマシン１４からの要求に応じて、前記ロジック処理で使用するデータの入出力を行うデータベース１６と、
前記クライアントマシン１２と前記サーバマシン１４との間、および前記サーバマシン１４と前記データベース１６との間において相互通信をそれぞれ行う通信回線１８、１９と、
共通アプリケーション６８を開発するための画面を表示する開発用モニタ５６、および当該開発のためにユーザが入力作業を行う開発用入力装置５８を備えており、前記画面定義情報１００を作成する画面デザインソフト６４、および開発用画面表示クライアントソフト６７を有する開発用クライアントマシン５２と、
前記開発用クライアントマシン５２と前記サーバマシン１４との間において相互通信を行う前記開発用通信回線５４とを備えており、
前記ミドルウェア４２は、前記サーバマシン１４の使用環境に応じて作成され、前記アプリケーション４４に記述されたロジック処理を実行して前記クライアントマシン１２に返す文字等データ１１４を作成し、当該文字等データ１１４および前記画面定義情報１００を前記クライアントマシン１２の種類に依存しない共通出力文字データ１０４として前記クライアントマシン１２に出力し、
アプリケーション開発ソフト６６は、前記サーバマシン１４の使用環境に応じて作成され、前記アプリケーション４４を開発するために前記開発用クライアントマシン５２に出力する開発用文字等データ１５２を作成し、当該開発用文字等データ１５２および前記開発用画面情報１５０を前記開発用クライアントマシン５２の種類に依存しない開発用共通出力文字データ１５４として前記開発用クライアントマシン５２に出力するとともに、予め設定・定義された共通演算命令Ｃ１’および共通条件式Ｃ２’と、前記共通演算命令Ｃ１’および共通条件式Ｃ２’のそれぞれを前記サーバマシン１４の使用環境に対応した演算命令Ｃ１および条件式Ｃ２に変換するための変換プログラム７０とを備えており、ユーザが作成した前記共通演算命令Ｃ１’および共通条件式Ｃ２’を含む共通アプリケーション６８を、前記変換プログラム７０を用いて前記サーバマシン１４の使用環境に応じてコンバートしてアプリケーション４４を作成し、
前記画面表示クライアントソフト３０は、前記クライアントマシン１２の種類に応じて作成され、前記サーバマシン１４から前記通信回線１８を介して送られてきた前記共通出力文字データ１０４に基づいて前記モニタ２２に画面出力するとともに、前記入力装置２４を介して行われたユーザによる入力操作Ｘを前記クライアントマシン１２の種類に依存しない共通入力文字データ１０６に変換し、前記通信回線１８を介して前記共通入力文字データ１０６を前記サーバマシン１４に出力し、
前記開発用画面表示クライアントソフト６７は、前記開発用クライアントマシン５２の種類に応じて作成され、前記サーバマシン１４から前記開発用通信回線５４を介して送られてきた前記開発用共通出力文字データ１５４に基づいて前記開発用モニタ５６に画面出力するとともに、前記開発用入力装置５８を介して行われたユーザによる入力操作Ｙを前記開発用クライアントマシン５２の種類に依存しない開発用共通入力文字データ１５６に変換し、前記開発用通信回線５４を介して前記開発用共通入力文字データ１５６を前記サーバマシン１４に出力することを特徴とするアプリケーション開発運用システム１０」である。
【００１７】
本発明のアプリケーション開発運用システム１０におけるアプリケーション４４の運用に際し、画面出力は、入出力欄１１０の位置および種類を定義した画面定義情報１００がアプリケーション４４とは別に作成された上でサーバマシン１４に格納されており、サーバマシン１４に組み込まれたミドルウェア４２が、文字等データ１１４および画面定義情報１００をクライアントマシン１２の種類に依存しない共通出力文字データ１０４としてクライアントマシン１２に出力することによって行われる。そして、この共通出力文字データ１０４を受けたクライアントマシン１２における、クライアントマシン１２の種類に応じて作成された画面表示クライアントソフト３０が当該共通出力文字データ１０４に基づいてモニタ２２に画面出力を行うようになっている。
【００１８】
一方、ユーザによるクライアントマシン１２に対する入力操作は、画面表示クライアントソフト３０によってクライアントマシン１２の種類に依存しない共通入力文字データ１０６に変換された後でサーバマシン１４に出力され、サーバマシン１４のミドルウェア４２が当該共通入力文字データ１０６およびアプリケーション４４に基づいてロジック処理を行うようになっている。
【００１９】
したがって、このアプリケーション開発運用システム１０によれば、使用環境等に応じた画面表示や入力処理は、サーバマシン１４のミドルウェア４２と、クライアントマシン１２の画面表示クライアントソフト３０とが受け持つことになるので、使用環境等への依存性が最も高い制御命令Ｃ３をアプリケーション４４に記述する必要が無くなり、アプリケーション４４を演算命令Ｃ１および条件式Ｃ２のみで記述することができるようになる。
【００２０】
また、ミドルウェア４２および画面表示クライアントソフト３０は、それぞれサーバマシン１４の使用環境およびクライアントマシン１２の種類に応じて作成されていることから、ミドルウェア４２と画面表示クライアントソフト３０との間における通信伝文には、クライアントマシン１２の種類に依存しない共通出力文字データ１０４および共通入力文字データ１０６を用いることが可能となる。このため、１台のサーバマシン１４に対して、種類の異なる複数のクライアントマシン１２が接続されている場合であっても、ミドルウェア４２から出力された共通出力文字データ１０４は、各クライアントマシン１２における各画面表示クライアントソフト３０によってそれぞれのクライアントマシン１２に適した形式で画面表示されることとなる。なお、入力操作Ｘについても同様である。
【００２１】
本発明のアプリケーション開発運用システム１０におけるアプリケーション４４の開発に関して言えば、サーバマシン１４に組み込まれたアプリケーション開発ソフト６６には、ユーザが共通アプリケーション６８を開発する際に使用する共通演算命令Ｃ１’および共通条件式Ｃ２’が予め設定・定義されており、さらに、これら共通演算命令Ｃ１’および共通条件式Ｃ２’のそれぞれをサーバマシン１４の使用環境に対応した演算命令Ｃ１および条件式Ｃ２に変換するための変換プログラム７０が用意されている（一般に、演算命令Ｃ１および条件式Ｃ２は、サーバマシン１４の各使用環境間で互いに共通するものが多く［単に命令の名称や引数の記載順序が異なるだけの場合が多い。］、また、そのように共通化できる演算命令Ｃ１および条件式Ｃ２のみを設定・定義することにより、確実に「変換プログラム７０」を作成することができる。）。
【００２２】
また、サーバマシン１４と、アプリケーション４４を開発する際にユーザが操作する開発用クライアントマシン５２との間では、サーバマシン１４およびクライアントマシン１２の間と同様に、開発用クライアントマシン５２に依存しない開発用共通出力文字データ１５４および開発用共通入力文字データ１５６により、開発に必要な開発用画面情報１５０や開発用文字等データ１５２がやりとりされるようになっており、開発用クライアントマシン５２の種類に応じて作成された開発用画面表示クライアントソフト６７が当該開発用共通出力文字データ１５４に基づいて開発用モニタ５６に画面出力を行うとともに、開発用入力装置５８を介して行われたユーザによる入力操作Ｙを開発用共通入力文字データ１５６に変換するようになっている。
【００２３】
このため、ユーザが開発用クライアントマシン５２を用いて共通演算命令Ｃ１’および共通条件式Ｃ２’を使用した１つの共通アプリケーション６８を作成することにより、後はアプリケーション開発ソフト６６が変換プログラム７０を用いて当該共通アプリケーション６８を自動的に個々のサーバマシン１４の使用環境に対応したアプリケーション４４にコンバートすることができる。また、開発用画面表示クライアントソフト６７が組み込まれているのであれば、開発用クライアントマシン５２の種類に関係なく、サーバマシン１４のアプリケーション開発ソフト６６を用いてアプリケーション４４の開発を行うことができるようになる。
【００２４】
請求項２に記載した発明は、請求項１に記載したアプリケーション開発運用システム１０のクライアントマシン１２が開発用クライアントマシン５２を兼ねる場合に関するものであり、「ユーザ操作用の画面を表示するモニタ２２、およびユーザに操作される入力装置２４を備えており、画面表示クライアントソフト３０および前記モニタ２２に表示する画面における、数値等の入出力がされる入出力欄１１０の位置および種類を定義した画面定義情報１００を作成する画面デザインソフト６４を有するクライアントマシン１２と、
前記画面定義情報１００、処理ロジックが記載されたアプリケーション４４、ミドルウェア４２、アプリケーション開発ソフト６６、および開発用画面情報１５０を有するサーバマシン１４と、
前記サーバマシン１４からの要求に応じて、前記ロジック処理で使用するデータの入出力を行うデータベース１６と、
前記クライアントマシン１２と前記サーバマシン１４との間、および前記サーバマシン１４と前記データベース１６との間において相互通信をそれぞれ行う通信回線１８、１９とを備えており、
前記ミドルウェア４２は、前記サーバマシン１４の使用環境に応じて作成され、前記アプリケーション４４に記述されたロジック処理を実行して前記クライアントマシン１２に返す文字等データ１１４を作成し、当該文字等データ１１４および前記画面定義情報１００を前記クライアントマシン１２の種類に依存しない共通出力文字データ１０４として前記クライアントマシン１２に出力し、
アプリケーション開発ソフト６６は、前記サーバマシン１４の使用環境に応じて作成され、前記アプリケーション４４を開発するために前記クライアントマシン１２に出力する開発用文字等データ１５２を作成し、当該開発用文字等データ１５２および前記開発用画面情報１５０を前記クライアントマシン１２の種類に依存しない開発用共通出力文字データ１５４として前記クライアントマシン１２に出力するとともに、予め設定・定義された共通演算命令Ｃ１’および共通条件式Ｃ２’と、前記共通演算命令Ｃ１’および共通条件式Ｃ２’のそれぞれを前記サーバマシン１４の使用環境に対応した演算命令Ｃ１および条件式Ｃ２に変換するための変換プログラム７０とを備えており、ユーザが作成した前記共通演算命令Ｃ１’および共通条件式Ｃ２’を含む共通アプリケーション６８を、前記変換プログラム７０を用いて前記サーバマシン１４の使用環境に応じてコンバートしてアプリケーション４４を作成し、
前記画面表示クライアントソフト３０は、前記アプリケーション４４を運用する際には、前記クライアントマシン１２の種類に応じて作成され、前記サーバマシン１４から前記通信回線１８を介して送られてきた前記共通出力文字データ１０４に基づいて前記モニタ２２に画面出力するとともに、前記入力装置２４を介して行われたユーザによる入力操作Ｘを前記クライアントマシン１２の種類に依存しない共通入力文字データ１０６に変換し、前記通信回線１８を介して前記共通入力文字データ１０６を前記サーバマシン１４に出力し、また、前記アプリケーション４４を開発する際には、前記サーバマシン１４からの前記開発用共通出力文字データ１５４に基づいて前記モニタ２２に画面出力するとともに、前記入力装置２４を介して行われたユーザによる入力操作Ｙを前記クライアントマシン１２の種類に依存しない開発用共通入力文字データ１５６に変換し、前記通信回線１８を介して前記開発用共通入力文字データ１５６を前記サーバマシン１４に出力することを特徴とするアプリケーション開発運用システム１０」である。
【００２５】
また、請求項３に記載した発明は、請求項１に記載したアプリケーション開発運用システム１０を構築するためのアプリケーション開発運用ソフト７２に関し、「クライアントマシン１２のモニタ２２に表示する画面における、数値等の入出力がされる入出力欄１１０の位置および種類を定義した画面定義情報１００、および処理ロジックが記載されたアプリケーション４４を有するサーバマシン１４に組み込まれるようになっており、前記アプリケーション４４に記述されたロジック処理を実行して前記クライアントマシン１２に返す文字等データ１１４を作成し、当該文字等データ１１４および前記画面定義情報１００を前記クライアントマシン１２の種類に依存しない共通出力文字データ１０４として前記クライアントマシン１２に出力するためのミドルウェア４２、
ユーザ操作用の画面を表示する前記モニタ２２、およびユーザに操作される入力装置２４を備える前記クライアントマシン１２に組み込まれるようになっており、前記サーバマシン１４から通信回線１８を介して送られてきた前記共通出力文字データ１０４に基づいて前記モニタ２２に画面出力するとともに、前記入力装置２４を介して行われたユーザによる入力操作Ｘを前記クライアントマシン１２の種類に依存しない共通入力文字データ１０６に変換し、前記通信回線１８を介して前記共通入力文字データ１０６を前記サーバマシン１４に出力するための画面表示クライアントソフト３０、
共通アプリケーション６８を開発するための画面を表示する開発用モニタ５６、および当該開発のためにユーザが入力作業を行う開発用入力装置５８を有する開発用クライアントマシン５２に組み込まれるようになっており、前記画面定義情報１００を作成するための画面デザインソフト６４、
前記サーバマシン１４に組み込まれるようになっており、前記アプリケーション４４を開発するために前記開発用クライアントマシン５２に出力する開発用文字等データ１５２を作成し、当該開発用文字等データ１５２および前記開発用画面情報１５０を前記開発用クライアントマシン５２の種類に依存しない開発用共通出力文字データ１５４として前記開発用クライアントマシン５２に出力するとともに、予め設定・定義された共通演算命令Ｃ１’および共通条件式Ｃ２’と、前記共通演算命令Ｃ１’および共通条件式Ｃ２’のそれぞれを前記サーバマシン１４の使用環境に対応した演算命令Ｃ１および条件式Ｃ２に変換するための変換プログラム７０とを備えており、ユーザが作成した前記共通演算命令Ｃ１’および共通条件式Ｃ２’を含む共通アプリケーション６８を、前記変換プログラム７０を用いて前記サーバマシン１４の使用環境に応じてコンバートしてアプリケーション４４を作成するためのアプリケーション開発ソフト６６、および
前記開発用クライアントマシン５２に組み込まれるようになっており、前記サーバマシン１４から開発用通信回線５４を介して送られてきた前記開発用共通出力文字データ１５４に基づいて前記開発用モニタ５６に画面出力するとともに、前記開発用入力装置５８を介して行われたユーザによる入力操作Ｙを前記開発用クライアントマシン５２の種類に依存しない開発用共通入力文字データ１５６に変換し、前記開発用通信回線５４を介して前記開発用共通入力文字データ１５６を前記サーバマシン１４に出力するための開発用画面表示クライアントソフト６７を備えるアプリケーション開発運用ソフト７２」である。
【００２６】
さらに、請求項４に記載した発明は、請求項２に記載したアプリケーション開発運用システム１０を構築するためのアプリケーション開発運用ソフト７２に関し、「クライアントマシン１２のモニタ２２に表示する画面における、数値等の入出力がされる入出力欄１１０の位置および種類を定義した画面定義情報１００、および処理ロジックが記載されたアプリケーション４４を有するサーバマシン１４に組み込まれるようになっており、前記アプリケーション４４に記述されたロジック処理を実行して前記クライアントマシン１２に返す文字等データ１１４を作成し、当該文字等データ１１４および前記画面定義情報１００を前記クライアントマシン１２の種類に依存しない共通出力文字データ１０４として前記クライアントマシン１２に出力するためのミドルウェア４２、
ユーザ操作用の画面を表示する前記モニタ２２、およびユーザに操作される入力装置２４を備える前記クライアントマシン１２に組み込まれるようになっており、前記アプリケーション４４を運用する際には、前記サーバマシン１４から通信回線１８を介して送られてきた前記共通出力文字データ１０４に基づいて前記モニタ２２に画面出力するとともに、前記入力装置２４を介して行われたユーザによる入力操作を前記クライアントマシン１２の種類に依存しない共通入力文字データ１０６に変換し、前記通信回線１８を介して前記共通入力文字データ１０６を前記サーバマシン１４に出力し、前記アプリケーション４４を開発する際には、前記サーバマシン１４からの前記開発用共通出力文字データ１５４に基づいて前記モニタ２２に画面出力するとともに、前記入力装置２４を介して行われたユーザによる入力操作Ｙを前記クライアントマシン１２の種類に依存しない開発用共通入力文字データ１５６に変換し、前記通信回線１８を介して前記開発用共通入力文字データ１５６を前記サーバマシン１４に出力するための画面表示クライアントソフト３０、
前記クライアントマシン１２に組み込まれるようになっており、前記画面定義情報１００を作成するための画面デザインソフト６４、および
前記サーバマシン１４に組み込まれるようになっており、前記アプリケーション４４を開発するために前記クライアントマシン１２に出力する開発用文字等データ１５２を作成し、当該開発用文字等データ１５２および前記開発用画面情報１５０を前記クライアントマシン１２の種類に依存しない開発用共通出力文字データ１５４として前記クライアントマシン１２に出力するとともに、予め設定・定義された共通演算命令Ｃ１’および共通条件式Ｃ２’と、前記共通演算命令Ｃ１’および共通条件式Ｃ２’のそれぞれを前記サーバマシン１４の使用環境に対応した演算命令Ｃ１および条件式Ｃ２に変換するための変換プログラム７０とを備えており、ユーザが作成した前記共通演算命令Ｃ１’および共通条件式Ｃ２’を含む共通アプリケーション６８を、前記変換プログラム７０を用いて前記サーバマシン１４の使用環境に応じてコンバートしてアプリケーション４４を作成するためのアプリケーション開発ソフト６６を備えるアプリケーション開発運用ソフト７２」である。
【００２７】
請求項５に記載した発明は、請求項１または２に記載した発明に対応し、請求項６に記載した発明は、請求項３または４に記載した発明に対応しており、それぞれ「前記画面表示クライアントソフト３０では、処理ロジックの内容に依存することなく頻繁に行われる汎用性の高い入力操作Ｘが予め汎用入力操作Ｘ’として設定・定義されており、前記汎用入力操作Ｘ’については、前記画面表示クライアントソフト３０内で処理を行い、前記共通入力文字データ１０６として前記サーバマシン１４に出力しないようにした」ことを特徴とする。
【００２８】
この発明によれば、各アプリケーション４４独自の処理ロジックについてはサーバマシン１４でその処理を行い、予め設定・定義された汎用入力操作Ｘ’については各クライアントマシン１２で行うこととなり、サーバマシン１４の負担を軽減できることから、より多くのクライアントマシン１２を接続しつつ、各クライアントマシン１２に対して快適なロジック処理を提供することができるようになる。
【発明の効果】
【００２９】
本発明に係るアプリケーション開発運用システムによれば、使用環境等の影響を最も大きく受けることから他の使用環境等への流量・再利用が不可能であり、かつ、その開発に要する労力および技術習得時間がかかる「制御命令」を記述することなく、演算命令および条件式のみで記述されたアプリケーションを運用することが可能となる。
【００３０】
そして、アプリケーションを演算命令および条件式のみで記述することができるようになったことから、各共通演算命令および共通条件式ごとに使用環境に対応した演算命令および条件式に変換する文を記述した「変換プログラム」を用意することにより、ユーザが共通演算命令および共通条件式を使用した１つの共通アプリケーションを作成すれば、後はアプリケーション開発ソフトが当該「変換プログラム」を用いて共通アプリケーションを個々のサーバマシンの使用環境に対応するようにコンバートして自動的にアプリケーションを作成することができる。
【００３１】
このようなアプリケーション運用開発システムによれば、アプリケーション開発技術の習得が容易で、かつ、サーバマシンの使用環境を異なる使用環境に変更する際にも、アプリケーション開発ソフトによる共通アプリケーションのコンバート先を新しい使用環境に対応させるだけで、共通アプリケーションを再利用しつつ、極めて容易に対応することができる。
【図面の簡単な説明】
【００３２】
【図１】本発明のアプリケーション開発運用システムを示す図である。
【図２】クライアントマシンのモニタに表示される画面の一例を示す図である。
【図３】文字等データの一例を示す図である。
【図４】画面デザインソフトの操作画面の一例を示す図である。
【図５】変換プログラムによる、使用環境に対応した演算命令および条件式への変換方法の一例を示す図である。
【図６】従来技術を示す図である。
【図７】従来技術を示す図である。
【発明を実施するための形態】
【００３３】
以下、本発明が適用されたアプリケーション開発運用システム１０について、図面を用いて説明する。
【００３４】
アプリケーション開発運用システム１０は、例えば、販売・売上管理、在庫管理、あるいは受発注業務等に使用される処理ロジックを実施するための業務用のアプリケーション４４を開発するとともに、その開発したアプリケーションを運用するシステムであり、図１に示すように、大略、１台あるいは複数台のクライアントマシン１２（図中では１台の場合を示す）、サーバマシン１４、データベース１６、クライアントマシン１２とサーバマシン１４との間で相互通信を可能にする第１通信回線１８、およびサーバマシン１４とデータベース１６との間で相互通信を可能にする第２通信回線１９を備えるアプリケーション運用システム１１と、開発環境５０とで構成されている。
【００３５】
クライアントマシン１２は、ハードディスクドライブやメモリ等の記憶装置２０と、液晶や陰極管等を用いたモニタ２２と、マウス、キーボード、あるいはタッチパネル等の入力装置２４と、第１通信回線１８を介してサーバマシン１４との間で通信を行うための通信装置２６と、クライアントマシン１２全体を制御する制御装置２８とを備えており、記憶装置２０には画面表示クライアントソフト３０が組み込まれている。なお、図１ではクライアントマシン１２をＰＣ（パーソナルコンピュータ）的に描いているが、クライアントマシン１２はＰＣに限られず、スマートフォンに代表されるような、画素数の少ないタッチパネルを備えたハンディターミナル等であってもよい。また、クライアントマシン１２の台数は、図示するように１台でもよいし、複数台（同一種類であっても異なる種類であってもよい。）でもよい。
【００３６】
画面表示クライアントソフト３０は、クライアントマシン１２の種類に応じて、その仕様に合わせて適当な開発手段で作成されたソフトウェアであり、サーバマシン１４から第１通信回線１８および通信装置２６を介して送られてきた、後述する画面定義情報１００および文字等データ１１４を含む、クライアントマシン１２の種類に依存しない共通出力文字データ１０４に基づいてモニタ２２に画面出力するとともに、入力装置２４を介して行われたユーザによる入力操作Ｘをクライアントマシン１２の種類に依存しない共通入力文字データ１０６に変換し、然る後、通信装置２６および第１通信回線１８を介してこの共通入力文字データ１０６をサーバマシン１４に出力するようにプログラミングされている。
【００３７】
ここで、画面定義情報１００、共通出力文字データ１０４、および共通入力文字データ１０６について説明する。クライアントマシン１２のモニタ２２に表示される操作画面は、図２に示すように、背景画像１０８と、この背景画像１０８における所定の位置に配置され、ユーザによる数値や文字等の入力およびクリック等の入力操作の受け付け、あるいはロジック処理の結果としての数値等の出力を行う複数の入出力欄１１０と、各入出力欄１１０に入力あるいは出力される文字・数字・その他の記号（以下、これらの総称として「文字等１１２」という。）とで構成されている。なお、入出力欄１１０の種類としては、１語（ワード）の入出力を受け付ける「フィールド１１０ａ」、複数の升目で構成されており、升目毎に１語の入出力を受け付ける「グリッド１１０ｂ」、所定の動作のトリガーとなる「ボタン１１０ｃ」、「チェックボックス１１０ｄ」、および「ラジオボタン１１０ｅ」等が考えられる（もちろん、これらに限定されるものではない）。
【００３８】
このような画面構成において、画面定義情報１００は、背景画像１０８の情報、当該背景画像１０８に配置される各入出力欄１１０の位置情報、および該入出力欄１１０の種類情報を備えた、クライアントマシン１２の種類に依存しない、表示画面の骨格を定義するデータである。また、画面定義情報１００の数は、１画面分に限られることはなく、アプリケーション４４で行う処理ロジックの内容に応じて複数の画面分の画面定義情報１００を用意することができる。なお、後述するように、画面定義情報１００は、開発用クライアントマシン５２（なお、クライアントマシン１２が開発用クライアントマシン５２を兼ねることもできる。）に組み込まれた画面デザインソフト６４で作成される。
【００３９】
共通出力文字データ１０４は、画面定義情報１００、および入出力欄１１０に入出力される文字等１１２の情報である文字等データ１１４のうち、すくなくとも一方を含むデータである。文字等データ１１４は、例えば図３に示すように、「入出力欄の回転番号」、「入出力欄の種類」、および当該入出力欄に入力あるいは出力される「文字等」を１セットとして、このセットを１つの画面定義情報１００でその位置が定義された全ての入出力欄１１０に対して準備し、それらをカンマでつなげることで構成されている。もちろん、文字等データ１１４は、このような形式に限定されるものではなく、クライアントマシン１２の種類に依存しない形式であれば他の形式を採用することができる。
【００４０】
共通入力文字データ１０６は、クライアントマシン１２の種類に依存しない形式のデータであり、共通出力文字データ１０４の文字等データ１１４と同一形式の入力文字等データで構成されている。
【００４１】
なお、本実施例の画面表示クライアントソフト３０では、全ての入力操作Ｘを共通入力文字データ１０６に変換してサーバマシン１４に出力するようになっているが、処理ロジックの内容に依存することなく頻繁に行われる汎用性の高い入力操作Ｘ（例えば、グリッド１１０ｂにおけるデータの並び替え［昇順、降順、５０音順など］等）を予め設定・定義し（以下、「汎用入力操作Ｘ’」という。）については、画面表示クライアントソフト３０内で処理を行い、共通入力文字データ１０６としてサーバマシン１４に出力しないようにしてもよい。こうすることにより、各アプリケーション４４独自の処理ロジックについてはサーバマシン１４でその処理を行い、予め設定・定義された汎用入力操作Ｘ’については各クライアントマシン１２で行うこととなり、サーバマシン１４の負担を軽減できることから、より多くのクライアントマシン１２を接続しつつ、各クライアントマシン１２に対して快適なロジック処理を提供することができるようになる。
【００４２】
サーバマシン１４は、図１に示すように、ハードディスクドライブやメモリ等の記憶装置３２と、第１通信回線１８を介してクライアントマシン１２との間で通信を行うための第１通信装置３４と、第２通信回線１９を介してデータベース１６との間で通信を行うための第２通信装置３６と、記憶装置３２に組み込まれたソフトに基づいてサーバマシン１４全体を制御する制御装置３８とを備えており、記憶装置３２には、上述した画面定義情報１００（複数画面分の画面定義情報１００が必要であればその全て）が格納されているほか、ミドルウェア４２、当該アプリケーション運用システム１１で使用されるアプリケーション４４、およびアプリケーション４４の開発に用いられるアプリケーション開発ソフト６６が組み込まれている。
【００４３】
ミドルウェア４２は、サーバマシン１４の使用環境に応じて適当な開発手段で開発されたソフトであり、クライアントマシン１２からの共通入力文字データ１０６およびアプリケーション４４に基づいてロジック処理を行い、その結果に基づいてクライアントマシン１２に返す文字等データ１１４を作成し、然る後、この文字等データ１１４と記憶装置３２に格納された画面定義情報１００（画面定義情報１００が複数画面分存在する場合は、その内から適宜選択された１画面分の画面定義情報１００）とを共通出力文字データ１０４として、第１通信回線１８を介してクライアントマシン１２の画面表示クライアントソフト３０に出力する。
【００４４】
アプリケーション４４は、開発環境５０を用いて、サーバマシン１４の使用環境に適応するようにして開発されたものであって、演算命令Ｃ１と条件式Ｃ２とで処理ロジックが記述されており、従来のアプリケーション４４に不可欠であった、クライアントマシン１２における画面表示や入力装置からの入力を受け付ける役割を有する「制御命令」が記述されていない点に特徴を有している。
【００４５】
アプリケーション開発ソフト６６については、後の「開発環境５０」の説明の際に詳述する。
【００４６】
データベース１６は、サーバマシン１４からの要求（より具体的には、アプリケーション４４の内容に基づいて作動するサーバマシン１４の制御装置３８による、第２通信装置３６を介したデータの入出力要求）に応じて、サーバマシン１４におけるロジック処理で使用される各種データの入出力を行う。このデータベース１６は、図示するようにサーバマシン１４と別体となるように配設してもよいし、サーバマシン１４の筐体内に配設してもよい。
【００４７】
以上のような本実施例のアプリケーション運用システム１１を用いて、予め開発済みのアプリケーション４４でユーザが必要な作業を行う際の当該アプリケーション運用システム１１の動きについて説明する。
【００４８】
アプリケーション運用システム１１（クライアントマシン１２、サーバマシン１４およびデータベース１６）を立ち上げて画面表示クライアントソフト３０を起動すると、サーバマシン１４のミドルウェア４２は、クライアントマシン１２の種類に依存しない定型動作として、予めサーバマシン１４の記憶装置３２に格納された画面定義情報１００（これが複数画面分ある場合には、初期画面となる１画面分の情報）を共通出力文字データ１０４として第１通信装置３４を介してクライアントマシン１２に出力する。
【００４９】
クライアントマシン１２の制御装置２８は、受け取った共通出力文字データ１０４を記憶装置２０に一時的に記憶させる。当該共通出力文字データ１０４が記憶されると、画面表示クライアントソフト３０は、制御装置２８を作動させ、当該共通出力文字データ１０４に含まれる画面定義情報１００に基づいて操作画面をモニタ２２に表示させる。
【００５０】
モニタ２２に表示された操作画面には、上述したように背景画像１０８と複数の入出力欄１１０とが描かれており、例えば、いずれかの入出力欄１１０にユーザが入力装置２４を介して数値や文字等の入力操作Ｘをすると、画面表示クライアントソフト３０は、これをクライアントマシン１２の種類に依存しない共通入力文字データ１０６に変換し、制御装置２８を作動させて、当該共通入力文字データ１０６を通信装置２６および第１通信回線１８を介してサーバマシン１４に出力する。
【００５１】
共通入力文字データ１０６を受けたサーバマシン１４のミドルウェア４２は、当該共通入力文字データ１０６の内容とアプリケーション４４の内容とに基づき、必要に応じてデータベース１６との間で各種データの入出力を行いつつロジック処理を行い、その結果に基づいてクライアントマシン１２に返す文字等データ１１４を作成する。このとき、ミドルウェア４２は、アプリケーション４４および画面定義情報１００の内容を確認し、当該文字等データ１１４の出力先となる入出力欄１１０が現在クライアントマシン１２のモニタ２２に表示されておらず、当該入出力欄１１０が別の画面定義情報１００に存在する場合、文字等データ１１４に別の画面定義情報１００を付加したものを共通出力文字データ１０４として、第１通信回線１８を介してクライアントマシン１２の画面表示クライアントソフト３０に出力する。
【００５２】
共通出力文字データ１０４を受けたクライアントマシン１２の画面表示クライアントソフト３０は、制御装置２８を作動させ、当該共通出力文字データ１０４に含まれる文字等データ１１４（共通出力文字データ１０４に別の画面定義情報１００が含まれていれば、当該別の画面定義情報１００および文字等データ１１４）に基づいて画面をモニタ２２に表示する。文字等データ１１４には、文字等を出力表示させる入出力欄１１０の名称およびその文字等が記述されているので（図３参照）、ユーザは、然るべき入出力欄１１０に必要な文字等が表示された状態の画面を見ることができる。
【００５３】
その後、ユーザは所望の入力操作Ｘを継続し、その入力操作Ｘの内容が共通入力文字データ１０６としてサーバマシン１４に出力され、サーバマシン１４でロジック処理された後、共通出力文字データ１０４がクライアントマシン１２に返されて、その結果画面がモニタに表示されるといった動作が繰り返される。
【００５４】
以上のように、本実施例のアプリケーション運用システム１１によれば、サーバマシン１４の使用環境、およびクライアントマシン１２の種類に応じた画面表示や入力処理は、サーバマシン１４のミドルウェア４２と、クライアントマシン１２の画面表示クライアントソフト３０とが受け持つこととなり、これら使用環境等への依存性が最も高い制御命令Ｃ３をアプリケーション４４に記述する必要が無くなることから、アプリケーション４４を演算命令Ｃ１および条件式Ｃ２のみで記述することができるようになる。
【００５５】
次に、上述のようなアプリケーション運用システム１１で使用されるアプリケーション４４を開発するための開発環境５０について説明する（図１）。
【００５６】
開発環境５０は、開発用クライアントマシン５２と開発用通信回線５４とサーバマシン１４に組み込まれたアプリケーション開発ソフト６６とで構成されており、開発用クライアントマシン５２は、開発用画面を表示する開発用モニタ５６と、ユーザが設計情報を入力するためのマウスやキーボード等の開発用入力装置５８と、ハードディスクやメモリ等の記憶装置６０と、開発用通信回線５４を介してサーバマシン１４との間で通信を行うための通信装置６２と、記憶装置６０に組み込まれたソフトに基づいて開発用クライアントマシン５２全体を制御する制御装置６３とを備えており、記憶装置６０には、画面デザインソフト６４および開発用画面表示クライアントソフト６７が組み込まれている。以下、これらのソフトウェアについて説明する。また、サーバマシン１４に組み込まれるアプリケーション開発ソフト６６についても、以下に説明する。
【００５７】
画面デザインソフト６４は、サーバマシン１４の記憶装置３２に格納される画面定義情報１００を作成するためのソフトである。この画面デザインソフト６４を起動すると、例えば、図４に示すように、「フィールド」や「グリッド」等、使用可能な全種類の入出力欄１１０が並べられたオブジェクトパレット１２０と、所定の大きさを有する無地の背景画像１０８とが表示され、ユーザは、開発するアプリケーション４４の内容に応じて、必要な種類の入出力欄１１０を必要な数だけ、オブジェクトパレット１２０から背景画像１０８における所望の位置にドラッグドロップして画面定義情報１００を作成するようになっている。アプリケーション４４の内容によって複数の画面定義情報１００が必要となる場合は、上記作業を複数回繰り返すことになる。
【００５８】
開発用画面表示クライアントソフト６７は、上述した画面表示クライアントソフト３０と基本的に同じ機能を有しており、開発用クライアントマシン５２の種類に応じて、その使用に合わせて適当な開発手段で作成されたソフトウェアである。また、開発用画面表示クライアントソフト６７は、開発用共通出力文字データ１５４に基づいて開発用モニタ５６に画面出力するとともに、開発用入力装置５８を介して行われたユーザによる開発入力操作Ｙを開発用クライアントマシン５２の種類に依存しない開発用共通入力文字データ１５６に変換し、然る後、通信装置６２および開発用通信回線５４を介してこの開発用共通入力文字データ１５６をサーバマシン１４に出力するようにプログラミングされている。
【００５９】
ここで、開発用共通出力文字データ１５４は、サーバマシン１４から開発用通信回線５４および通信装置６２を介して送られてきた、開発用画面情報１５０、画面デザインソフト６４で作成された画面定義情報１００、および開発用文字等データ１５２の少なくとも何れか一つを含む、開発用クライアントマシン５２の種類に依存しないデータである。
【００６０】
開発用画面情報１５０は、ユーザが後述する共通アプリケーション６８を開発する際に用いられる画面の情報で、画面定義情報１００と同様に、開発用背景画面１５８の情報、ユーザがプログラムコードを打ち込んだり、開発に必要な情報が表示される各開発用入出力欄１６０の位置情報、および該開発用入出力欄１６０の種類情報とを備えている。
【００６１】
開発用文字等データ１５２は、文字等データ１１４と同じく、「開発用入出力欄の回転番号」、「開発用入出力欄の種類」、および当該開発用入出力欄１６０に入力あるいは出力される「文字等」を１セットとして、このセットを１つの開発用画面情報１５０でその位置が定義された全ての開発用入出力欄１６０に対して準備し、それらをカンマでつなげることで構成されている。もちろん、開発用文字等データ１５２は、このような形式に限定されるものではなく、開発用クライアントマシン５２の種類に依存しない形式であれば他の形式を採用することができる。
【００６２】
開発用共通入力文字データ１５６は、開発用クライアントマシン５２の種類に依存しない形式のデータであり、上記開発用共通出力文字データ１５４の開発用文字等データ１５２と同一形式のデータで構成されている。
【００６３】
アプリケーション開発ソフト６６は、上述のように、サーバマシン１４に組み込まれたソフトであり、予め設定・定義された複数の共通演算命令Ｃ１’および共通条件式Ｃ２’を備えており、ユーザが開発用クライアントマシン５２の開発用画面表示クライアントソフト６７を介してサーバマシン１４と情報（開発用共通出力文字データ１５４および開発用共通入力文字データ１５６）のやり取りを行いつつ、当該共通演算命令Ｃ１’と共通条件式Ｃ２’とを用いて共通アプリケーション６８を開発できるようになっている。なお、これら「共通演算命令Ｃ１’」および「共通条件式Ｃ２’」には、ユーザがプログラミングする際に用いる個々の「命令語」だけに限られず、例えば、業務用アプリケーション等で頻繁に使用されるロジック（例えば、日付と当該日付毎の売上高とが数年分まとめられたデータベースから、特定期間中の売上高の合計値を算出するようなロジック）を共通の「命令語」を用いて予めプログラミングしておいたものを「雛形」として提供する場合も含まれる。このように、頻繁に使用されるロジックを「雛形」として提供することで、ユーザを当該「雛形」を組み合わせるだけで簡単に目的のアプリケーション４４を開発することが可能となり、開発工数の低減が可能となり、かつ、ユーザ毎の経験やクセの違いに起因して、完成したアプリケーション４４の品質がばらつくおそれを極小化することができる。
【００６４】
また、このアプリケーション開発ソフト６６は、上述した複数の共通演算命令Ｃ１’および共通条件式Ｃ２’を、サーバマシン１４の使用環境に対応した個別の演算命令Ｃ１および個別の条件式Ｃ２に変換するための変換プログラム７０を備えており、共通演算命令Ｃ１’および共通条件式Ｃ２’を含む共通アプリケーション６８をコンバートしてサーバマシン１４の使用環境に適したアプリケーション４４を作成することができるようになっている。
【００６５】
一般に、演算命令Ｃ１や条件式Ｃ２は、制御命令Ｃ３に比べて、各サーバマシン１４の使用環境の間で共通する場合が多く［単に命令の名称や引数の記載順序が異なるだけの場合が多い。］、また、そのように共通化できる命令および条件式のみを予め選択して設定・定義することにより、変換プログラム７０を比較的容易に作成することができる
この変換プログラム７０について、図５に基づき、具体例を挙げて説明する（なお、当該内容は一例であり、変換プログラム７０の内容を当該具体例に限定する意図はない。）。アプリケーション開発ソフト６６を用いてユーザが記述した共通アプリケーション６８には、＃ＩＦ、＃ＭＯＶＥ、＃ＣＡＬＬ、＃ＥＮＤＩＦ、および「＜＞」といった共通演算命令Ｃ１’および共通条件式Ｃ２’と、「Ａ」、「Ｂ」、「Ｃ」、および「ＳＭＰ００１０」といった項目（変数）名称とが用いられている。
【００６６】
共通アプリケーション６８は、アプリケーション開発ソフト６６によって図中のテーブルフォーマット１２２に示すように、それぞれ「命令記号」、「命令比較（演算）記号」、処理項目１、処理項目２、および結果項目に分類される。
【００６７】
変換プログラム７０には、各共通演算命令Ｃ１’および共通条件式Ｃ２’を各使用環境に対応した演算命令Ｃ１および条件式Ｃ２に置き換える文が、コンバート先の使用環境の数だけ準備されており（図示の例では、コンバート先の使用環境が３種類（イ、ロ、ハ）あるので、一つの共通演算命令Ｃ１’に対応する演算命令Ｃ１の文も３つ用意されることになる。）、変換プログラム７０は、上記テーブルフォーマット１２２で分類された「命令記号」や「命令比較（演算）信号」毎にコンバート先の使用環境に対応した命令に置き換えるとともに、変数等の各項目を各演算命令Ｃ１や条件式Ｃ２で定められた位置に記述し直す動作を行う。
【００６８】
例えば、「命令記号」＝＃ＩＦ＋「命令比較（演算）記号」＝＜＞＋「処理項目１」＝Ａ＋「処理項目２」＝Ｂの組み合わせは、使用環境イにコンバートする場合には「Ａ  ＩＦＮＥ  Ｂ」と変換され、使用環境ロにコンバートする場合には「ＩＦ  Ａ  ＮＯＴ＝Ｂ  ＴＨＥＮ」と変換される。同様に、「命令記号」＝＃ＭＯＶＥ＋「処理項目２」＝Ｂ＋「結果項目」＝Ｃの組み合わせは、使用環境ロにコンバートする場合には「ＭＯＶＥ  Ｂ  ＴＯ  Ｃ」と変換され、使用環境ハにコンバートする場合には「ｍｅｍｃｐｙ（Ｃ，Ｂ，ｓｉｚｅｏｆ（Ｃ））」と変換される。
【００６９】
このような変換動作をテーブルフォーマット１２２における全ての共通演算命令Ｃ１’および共通条件式Ｃ２’に対して実施することにより、各使用環境に対応したアプリケーション４４に変換することができる。
【００７０】
なお、本実施例では、上述のように、各共通演算命令Ｃ１’および共通条件式Ｃ２’を各使用環境に対応した演算命令Ｃ１および条件式Ｃ２に置き換える文がコンバート先の使用環境の数だけ準備されているが、各共通演算命令Ｃ１’および共通条件式Ｃ２’ごとに、各使用環境に対応する演算命令Ｃ１および条件式Ｃ２を記載した変換テーブルを使用してもよい。
【００７１】
本実施例の開発環境５０を用いて、既に説明したアプリケーション運用システム１１で用いるアプリケーション４４を開発する手順について説明する（図１）。
【００７２】
まず、ユーザは、開発用クライアントマシン５２を立ち上げて画面デザインソフト６４を起動し、開発したいアプリケーション４４の内容に応じて画面定義情報１００を作成する。完成した画面定義情報１００は、開発用クライアントマシン５２の通信装置６２および開発用通信回線５４を介してサーバマシン１４の記憶装置３２に格納される。
【００７３】
次に、ユーザは、サーバマシン１４に組み込まれたアプリケーション開発ソフト６６を立ち上げて画面定義情報１００と関連させつつ開発用画面情報１５０等を用いて共通アプリケーション６８を作成し、然る後、当該共通アプリケーション６８をサーバマシン１４の環境に合わせてコンバートすることによってアプリケーション４４を完成させる。完成したアプリケーション４４はサーバマシン１４への記憶装置３２に格納される。
【００７４】
このように、本実施例の開発環境５０によれば、ユーザが共通演算命令および共通条件式を使用した１つの共通アプリケーション６８を作成することにより、後はアプリケーション開発ソフト６６が変換プログラム７０を用いて当該共通アプリケーション６８を自動的に個々のサーバマシン１４の使用環境に対応したアプリケーション４４にコンバートすることができる。
【００７５】
以上より、本実施例に係るアプリケーション開発運用システム１０（＝アプリケーション運用システム１１＋開発環境５０）によれば、使用環境等の影響を最も大きく受けることから他の使用環境等への流量・再利用が不可能であり、かつ、その開発に要する労力および技術習得時間がかかる「制御命令Ｃ３」を記述することなく、演算命令Ｃ１および条件式Ｃ２のみでアプリケーション４４を作成することができるようになる。
【００７６】
これら演算命令Ｃ１および条件式Ｃ２は、制御命令Ｃ３に比べて各サーバマシン１４の使用環境の間で共通する場合が多いことから、共通演算命令Ｃ１’および共通条件式Ｃ２’を設定・定義し、これら共通演算命令Ｃ１’および共通条件式Ｃ２’を各サーバマシン１４の使用環境に対応した個別の演算命令Ｃ１および個別の条件式Ｃ２に変換するための変換プログラム７０を作成することが可能となる。
【００７７】
したがって、ユーザが共通演算命令Ｃ１’および共通条件式Ｃ２’を使用した１つの共通アプリケーション６８を作成することにより、後はアプリケーション開発ソフト６６が「変換プログラム７０」を用いて当該共通アプリケーション６８を個々の使用環境に対応するようにコンバートしてアプリケーション４４を作成することができる。
【００７８】
これにより、アプリケーション開発技術の習得が容易で、かつ、使用環境等が異なる各システムに極めて容易に対応することのできるアプリケーション開発運用システムを提供することができた。また、現在のサーバマシン１４の使用環境を異なる使用環境に変更する際にも、アプリケーション開発ソフト６６による共通アプリケーション６８のコンバート先を新しい使用環境に対応させるだけでよく、共通アプリケーション６８の再利用は極めて容易である。
【００７９】
なお、上述したアプリケーション開発運用システム１０は、クライアントマシン１２やサーバマシン１４等のハードウェアと、画面表示クライアントソフト３０やミドルウェア４２等のソフトウェアとをセットにして販売することもできるし、画面表示クライアントソフト３０と、ミドルウェア４２と、画面デザインソフト６４と、アプリケーション開発ソフト６６と開発用画面表示クライアントソフト６７とで構成されるアプリケーション開発運用ソフト７２のみを販売することも考えられる。
【００８０】
また、上記実施例では、アプリケーション４４を運用するクライアントマシン１２と、アプリケーション４４を開発する開発用クライアントマシン５２とが別体の場合について説明したが、クライアントマシン１２と開発用クライアントマシン５２とが同一であってもよい（つまり、クライアントマシン１２が開発用クライアントマシン５２を兼ねてもよい。）。この場合、クライアントマシン１２（開発用クライアントマシン５２を兼ねる）には、画面表示クライアントソフト３０の他に画面デザインソフト６４が組み込まれることになり、ユーザがクライアントマシン１２を用いてアプリケーション４４を開発する際には、画面表示クライアントソフト３０を介してサーバマシン１４のアプリケーション開発ソフト６６を使用することになる。一方、画面表示クライアントソフト３０は開発用画面表示クライアントソフト６７の機能を兼ねるように設計する（すなわち、アプリケーション４４を開発する際には、サーバマシン１４からの開発用共通出力文字データ１５４に基づいてモニタ２２に画面出力するとともに、入力装置２４を介して行われたユーザによる入力操作Ｙをクライアントマシン１２の種類に依存しない開発用共通入力文字データ１５６に変換し、第１通信回線１８を介して開発用共通入力文字データ１５６をサーバマシン１４に出力するようにプログラムする。）ことにより、クライアントマシン１２に開発用画面表示クライアントソフト６７を組み込む必要はない。
【符号の説明】
【００８１】
１０…アプリケーション開発運用システム
１１…アプリケーション運用システム
１２…クライアントマシン
１４…サーバマシン
１６…データベース
１８…第１通信回線（通信回線）
１９…第２通信回線（通信回線）
２０…記憶装置
２２…モニタ
２４…入力装置
２６…通信装置
２８…制御装置
３０…画面表示クライアントソフト
３２…記憶装置
３４…第１通信装置
３６…第２通信装置
３８…制御装置
４２…ミドルウェア
４４…アプリケーション
５０…開発環境
５２…開発用クライアントマシン
５４…開発用通信回線
５６…開発用モニタ
５８…開発用入力装置
６０…記憶装置
６２…通信装置
６３…制御装置
６４…画面デザインソフト
６６…アプリケーション開発ソフト
６７…開発用画面表示クライアントソフト
６８…共通アプリケーション
７０…変換プログラム
７２…アプリケーション開発運用ソフト
１００…画面定義情報
１０４…共通出力文字データ
１０６…共通入力文字データ
１０８…背景画像
１１０…入出力欄
１１２…文字等
１１４…文字等データ
１２０…オブジェクトパレット
１２２…テーブルフォーマット
１５０…開発用画面情報
１５２…開発用文字等データ
１５４…開発用共通出力文字データ
１５６…開発用共通入力文字データ
１５８…開発用背景画面
１６０…開発用入出力欄
【図１】
2011028406.tif 000003
【図２】
2011028406.tif 000004
【図３】
2011028406.tif 000005
【図４】
2011028406.tif 000006
【図５】
2011028406.tif 000007
【図６】
2011028406.tif 000008
【図７】
2011028406.tif 000009