JP2007213233A - 複数のアプリケーションの参照関係を管理する管理システム - Google Patents

複数のアプリケーションの参照関係を管理する管理システム Download PDF

Info

Publication number
JP2007213233A
JP2007213233A JP2006031347A JP2006031347A JP2007213233A JP 2007213233 A JP2007213233 A JP 2007213233A JP 2006031347 A JP2006031347 A JP 2006031347A JP 2006031347 A JP2006031347 A JP 2006031347A JP 2007213233 A JP2007213233 A JP 2007213233A
Authority
JP
Japan
Prior art keywords
application
system control
control unit
window
execution
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
Application number
JP2006031347A
Other languages
English (en)
Other versions
JP4863449B2 (ja
JP2007213233A5 (ja
Inventor
Masaki Sato
正貴 佐藤
Yasuo Kitamura
康夫 北村
Ryoichi Mikami
陵一 三上
Tadashi Kikuchi
正 菊地
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2006031347A priority Critical patent/JP4863449B2/ja
Publication of JP2007213233A publication Critical patent/JP2007213233A/ja
Publication of JP2007213233A5 publication Critical patent/JP2007213233A5/ja
Application granted granted Critical
Publication of JP4863449B2 publication Critical patent/JP4863449B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】複数のアプリケーションの連携を考慮したシステム開発において、開発者の負荷を軽減し、保守管理を容易にする。
【解決手段】複数のアプリケーションの参照関係を管理する管理システム100は、参照先のアプリケーション名が対応づけられている参照関係テーブル103、104を記憶するための記憶手段108と、複数のアプリケーション101、102を実行するためのシステム制御部105と、を備える。システム制御部105は、複数のアプリケーション101、102のそれぞれの参照関係テーブル103、104を取得し、これらに基づいて全アプリケーション被参照関係テーブル403を作成し、実行するアプリケーションのアプリケーション名に基づいて全アプリケーション被参照関係テーブル403を検索して対応する参照元のアプリケーションを抽出し、抽出された前記参照元のアプリケーションの実行必要性フラグをイネーブルにする。
【選択図】図1

Description

本発明は、複数のアプリケーションの参照関係を管理する管理システムに関する。
従来、ソフトウェア開発においてはオブジェクト指向を用いたプログラミング(C++、JAVA(登録商標)等を用いたプログラミング)によりソフトウェアを機能毎に部品化をし、それらを組み合わせて開発する事が主流になってきている。このようにソフトウェアを機能毎に部品化することにより、一部を修正した場合に、ソフトウェア全体を再度コンパイルすることなく、修正した箇所のみを再度コンパイルすればよいというメリットがある。また、ソフトウェアの一部分をバージョンアップする場合、その部分のみを交換するだけでよく、保守の面で非常に優れている。
しかしながら、ソフトウェアが部品化されたことにより、そのソフトウェアを効率よく利用するためには、各プログラム間の相互連携や情報共有の手法をソフトウェアが判断する事が必須となった。その手法としてアプリケーション間の関係をテーブルデータとしてもつ方法が提案されている。
特許文献1は、クラスごとに参照先のアプリケーションプログラムを定めた定義テーブルを利用する技術を開示している。特許文献1では、定義テーブルを用いることによって、アプリケーションプログラムを起動させたときに、このアプリケーションプログラムのユーザーインターフェース上で他のアプリケーションを直接起動させることができる。
特開2004−102453号公報
しかしながら、特許文献1では、各アプリケーションプログラムがどのアプリケーションプログラムを参照先としているかは分からない。そのため、ユーザは、アプリケーションプログラムを修正・追加等する必要がある場合には、各アプリケーションプログラムの参照関係を全て把握しなければならず、システム開発や保守に過大な負荷がかかっていた。そこで、複数のアプリケーションの連携を考慮したシステム開発において、開発者の負荷が少なく、保守管理が容易なシステムが望まれていた。
本発明は、上記の問題点に鑑みてなされたものであり、開発者の開発・保守の負荷を軽減することができるシステムを提供することを目的とする。
本発明は、複数のアプリケーションの参照関係を管理する管理システムに係り、複数のアプリケーションのそれぞれのアプリケーション名に対してその参照先のアプリケーション名が対応づけられている参照関係テーブルを記憶するための記憶手段と、前記複数のアプリケーションを実行するためのシステム制御部と、を備え、前記システム制御部は、前記記憶手段から前記複数のアプリケーションのそれぞれの前記参照関係テーブルを取得し、取得した前記参照関係テーブルに基づいて前記複数のアプリケーションのそれぞれのアプリケーション名とその参照元のアプリケーション名とが対応づけられている全アプリケーション被参照関係テーブルを作成し、実行するアプリケーションのアプリケーション名に基づいて前記全アプリケーション被参照関係テーブルを検索して対応する参照元のアプリケーションを抽出し、抽出された前記参照元のアプリケーションの実行必要性フラグをイネーブルにする手段を有することを特徴とする管理システム。
本発明によれば、開発者の開発・保守の負荷を軽減することができるシステムを提供することができる。
以下に、本発明の好適な実施の形態に係る管理システムについて添付の図面に基づいて詳細に説明する。
[第1の実施形態]
図1は、本発明の好適な実施の形態に係る管理システム及びそのハードウェアの構成を示す図である。図1(a)は、本発明の好適な実施の形態に係る管理システムの構成を示し、図1(b)は、この管理システムを実現するためのハードウェアの構成を示す。各アプリケーション101、102は、そのアプリケーション名とデータを更新する際に参照する参照先のアプリケーション名とが対応づけられたアプリケーション参照関係テーブル103、104をそれぞれ有する。アプリケーションが参照関係にある場合には、あるアプリ−ションは他のアプリケーションのデータを使って自身のデータを作成する。各アプリケーション101、102は、記憶手段108に記憶される。システム制御部105は、ユーザからの入出力を受け取る入出力インターフェース部107と全アプリケーション参照関係テーブル402を制御することができる。また、システム制御部105は、アプリケーション101、102の実行やその必要性の制御、アプリケーション101、102からのデータ更新通知受信を行うことができる。また、システム制御部105は、アプリケーション参照関係テーブル103、104を各アプリケーション101、102から受信し、全アプリケーション参照関係テーブル402を作成し、参照関係にあるアプリケーションを検索する機能を有する。記憶手段108は、例えば、2次記憶装置116の記憶領域に割り当てることが好ましいが、他の記憶手段に割り当ててもよい。記憶手段106は、例えば、主記憶装置115の記憶領域に割り当てることが好ましいが、他の記憶手段に割り当ててもよい。
各アプリケーションは、アプリケーション参照関係テーブルを例えば図2(a)に示すような配列データ201として持つことができる。配列データ201の中には、自分自身の実行に必要な直接参照するアプリケーション名が登録されている。図2(b)は、これを模式的に表した図である。図2(b)を例に挙げると、アプリケーション「2」は、アプリケーション「1」とアプリケーション「3」を参照先としていることが分かる。したがって、図2(a)は、“application1”と“application3”のデータを使って“application2”のデータの更新を行うことを意味する。
図3は、ソフトウェアがコンピュータ上で起動された時の処理の流れをUML2.0シーケンスで示す図である。ユーザによってソフトウェアが起動されたとき(図3−1)、システム制御部105は、2次記憶装置116内に記憶されたアプリケーション101、102を主記憶装置115内にロードする(図3−2)。ロードされたアプリケーション101、102は、それぞれ自身がもつアプリケーション参照関係テーブル103、104をシステム制御部105に送信する(図3−2)。システム制御部105は、全てのアプリケーションのロード及びテーブル103、104の送信が終了すると、ロードしたアプリケーション101、102の全ての参照関係を記した全アプリケーション参照関係テーブル402を構築する(図3−4)。
システム制御部105は、アプリケーション参照関係テーブルを構築する際、図4に示すように2種類のテーブルを構築することができる。一つは、各アプリケーションから渡されたアプリケーション参照関係テーブル情報401を一つにまとめた全アプリケーション参照関係テーブル402である。もう一つは、各アプリケーションから渡されたアプリケーション参照関係テーブル情報401より構築したアプリケーション被参照関係テーブル403である。
アプリケーション被参照関係テーブル403とは、あるアプリケーションがどのアプリケーションから参照されているかを示すテーブルである。図4を参照してアプリケーション被参照関係テーブル403を説明する。アプリケーション参照関係テーブル情報401において、アプリケーション「1」はアプリケーション「2」、「3」から参照されている。従って、アプリケーション「1」は、全アプリケーション被参照関係テーブル403では、アプリケーション「2」、「3」をテーブルとして持つ。以上の二種類のテーブルは、システム制御部105がソフトウェアを起動する時に構築されることが望ましい。
図5は、図4のアプリケーション参照関係テーブル情報401の全アプリケーションの参照関係をTree構造で表した図である。図5よりシステム制御部105ではアプリケーション「4」が直接参照するアプリケーションは「3」であるが、「3」は「1」を参照しているため、「4」のデータを更新するためには「1」、「3」を更新する必要があることが分かる。なお、参照先のアプリケーションには、直接参照するアプリケーションだけではなく、他のアプリケーションを介して間接的に参照するアプリケーションも含まれる。したがって、例えば図4の場合では、アプリケーション「4」の参照先のアプリケーションには、アプリケーション「1」及びアプリケーション「3」が含まれる。
図6は、システム制御部105がアプリケーションの参照関係を検索するときの流れをアプリケーション「4」の参照関係を検索する場合を例として示す図である。まず、アプリケーション「4」が直接参照するアプリケーションを調べ、その結果アプリケーション「3」が検索にヒットするので、更に検索を行い、アプリケーション「3」が直接参照しているアプリケーションを検索する。その結果、アプリケーション「3」において「1」が検索にヒットするので、更に検索を行い、アプリケーション「1」は参照するアプリケーションがないので、この時点で検索が終了する。このように再帰的に検索する事により間接的に参照するアプリケーションを調べる事が出来る。その結果アプリケーション「4」の直接的及び間接的に参照するアプリケーションは「1」、「3」となる。
ユーザがアプリケーションを実行するときのパターンとしては、参照される側のアプリケーションが実行される場合と参照する側のアプリケーションが実行される場合の二通りがある。
図7は、ユーザがソフトウェア上で参照される側のアプリケーションを実行したときのフローをUML2.0シーケンスで示す図である。図7では、アプリケーション「1」を実行したときを例示的に示す。ここで、アプリケーション「1」は、図5に示すようにアプリケーション「2」、「3」、「4」から直接的又は間接的に参照されている場合を例に挙げる。
ユーザがアプリケーション「1」を実行するときは、まずユーザーインターフェース(ウィンドウ、コマンド入力)を介してシステム制御部105にアプリケーション「1」の実行命令を送信する(図7−1)。システム制御部105は、アプリケーション「1」に対して実行命令を出す(図7−2)。アプリケーション「1」は処理終了後、データ変更の通知をシステム制御部105に送信する(図7−3)。システム制御部105はデータ更新通知が送られたら全アプリケーション被参照関係テーブル403から、実行命令のあったアプリケーション「1」と参照関係にあるアプリケーションを検索する(図7−4)。そして検索されたアプリケーション「2」、「3」、「4」の実行必要性フラグをTRUE(イネーブル)に変更する(図7−5)。図8に示すように、アプリケーション「1」実行後の各アプリケーションの実行必要性フラグは、アプリケーション「1」の実行が完了しているのでFALSE(ディセーブル)となっており、「2」、「3」、「4」のフラグは未実行のためTRUEとなっている。
図9は、ユーザが参照する側のアプリケーションを実行した場合のフローをUML2.0シーケンスを示す図である。図9ではアプリケーション「1」の実行完了後にアプリケーション「4」を実行した場合を例に挙げる。ユーザはアプリケーション「4」の実行命令をシステム制御部105に送信する(図9−1)。システム制御部105はアプリケーション「4」が参照するアプリケーションを全アプリケーション参照関係テーブル402から検索する(図9−2)。アプリケーション「4」の場合は図5よりアプリケーション「1」、「3」が検索される。次にシステム制御部105はアプリケーション「1」、「3」の実行必要性フラグを確認する(図9−3)。この場合は図8よりアプリケーション「3」がTRUEになっているので、システム制御部105はアプリケーション「4」を実行する前にアプリケーション「3」を実行する必要があると判断する。システム制御部105は、アプリケーション「1」の実行必要性フラグがFALSEなので、アプリケーション「4」と参照関係にはあるが、実行の必要はないと判断し、アプリケーション「1」の実行は行わない。よって、システム制御部105は、まずアプリケーション「4」の実行前にアプリケーション「3」に実行命令を出す(図9−4)。アプリケーション「3」は、アプリケーション「1」からデータを取得し、処理を実行する(図9−5)。アプリケーション「3」は、処理が完了したらシステム制御部105にデータ変更の通知を送信する(図9−6)。システム制御部105はアプリケーション「3」の実行が完了したので、アプリケーション「3」の実行必要性フラグをFALSEに変更する(図9−7)。次に、システム制御部105は、アプリケーション「3」の実行が完了したので、アプリケーション「4」に実行命令を出す(図9−8)。アプリケーション「4」は、アプリケーション「3」からデータを取得し、処理を実行する(図9−9)。アプリケーション「4」は、処理が完了したら、システム制御部105にデータ変更の通知を送信する(図9−10)。システム制御部105は、アプリケーション「4」の実行が完了したので、アプリケーション「4」の実行必要性フラグをFALSEに変更する(図9−11)。アプリケーション「4」は処理結果をシステム制御部105に送信し(図9−12)、ユーザは結果を確認することになる(図9−13)。
アプリケーション「4」の実行後の各アプリケーションの実行必要性フラグは、図10に示すようにアプリケーション「1」、「3」、「4」実行が完了しているのでFALSEとなっているが、「2」のフラグは未実行のためTRUEとなっている。
以上により、ユーザは実行するアプリケーションのみを意識すればよく、その参照関係や計算の必要性などは全てシステム制御部で管理するため、ユーザービリティーの高いシステムとして利用することが可能である。
[第2の実施形態]
本発明の好適な第2の実施形態は、システム制御部105に、アプリケーションの実行時刻を記録する機能と、アプリケーションの処理結果をウィンドウに表示する際にアプリケーション種別情報及びその表示時刻を記録する機能と、を持たせたものである。これによって、アプリケーション実行後の処理結果が表示されているウィンドウ(他のアプリケーションでの実行も含む)を、全て最新の情報に自動的に更新することができる。
システム制御部105は、アプリケーション参照関係に基づく処理の他、ソフトウェアのメニュー、ツールバー及び表示ウィンドウの制御を行う。システム制御部105は、ユーザからアプリケーションの実行命令を受け取り、アプリケーションにこれを通知して処理を行わせ、アプリケーションの処理結果を受け取る。そして、システム制御部105は、表示用ウィンドウを作成してその処理結果を表示する。ユーザは、表示用ウィンドウを通して、この処理結果を確認することができる。また、本実施形態に係る管理システムは、マルチウィンドウシステムとして構成することができる。これによって、本実施形態に係る管理システムは、複数のウィンドウに情報を分けて表示したり、異なるアプリケーションの実行結果を別々のウィンドウに表示したりすることができる。
また、システム制御部105は、ウィンドウへ表示を行う際に、そのウィンドウがどのアプリケーションからデータ転送されたのかを示すアプリケーション種別情報及びその表示が実行された時刻を、ウィンドウ毎に主記憶装置115に記録する。これと同時に、システム制御部105は、そのアプリケーションが実行された時刻を主記憶装置115に記録する。アプリケーション種別情報としては、例えば、システム制御部105が、ソフトウェアの起動時に各アプリケーションに割り振った固有の値を用いることができる。
図11は、ユーザがアプリケーションを実行してからウィンドウに結果が表示されるまでのフローをUML2.0シーケンスで示す図である。図11では、ユーザがアプリケーションの実行命令を出したときに(図11−1)、本発明の好適な実施の形態に係るシステム制御部105が、該当するアプリケーション及び参照関係にあるアプリケーションに実行命令を出す(図11−2)。システム制御部105は、アプリケーションの実行時刻を主記憶装置115に記録する(図11−3)。アプリケーションの実行が完了すると、アプリケーションからシステム制御部105に処理結果情報が渡される(図11−4)。そして、システム制御部105は、表示用のウィンドウを作成する(図11−5)。その際、システム制御部105は、表示用のウィンドウに処理結果が表示されるアプリケーションの種別情報と、アプリケーションがそのウィンドウに処理結果を表示する時刻と、を主記憶装置115に記録する(図11−6,7)。システム制御部105は、表示用のウィンドウに処理結果を表示し(図11−8)、ユーザは、その処理結果を確認する(図11−9)。
表示用のウィンドウは複数個作成が可能であり、一つのアプリケーションから二つ以上のウィンドウを作成することも可能である。図11−10〜11−24は、アプリケーションが二つのウィンドウを作成した場合の例を示す。二つのウィンドウを作成した場合の処理は、上述の処理と同様であり、必要なウィンドウの数だけ処理がループされる。
このように、システム制御部105に、アプリケーションの実行時刻を記録する機能と、アプリケーションの処理結果をウィンドウに表示する際にアプリケーション種別情報及びその表示時刻を記録する機能と、を持たせる。これにより、ウィンドウの表示を自動的に更新する機能(ウィンドウ表示自動更新機能)を実現することができる。
以下、図5を用いてこの機能について説明する。ここでは、アプリケーション「1」を“レンズ構成データ変更アプリケーション”とし、アプリケーション「3」を“光線追跡図表示アプリケーション”とする。また、1番目のウィンドウを“ズーム番号1の光線追跡図表示”とし、2番目のウィンドウを“ズーム番号2の光線追跡図表示”とする。また、アプリケーション「1」でデータ入力を行い、そのデータを参照してアプリケーション「3」でウィンドウに光線追跡図を表示するものとする。
図12に示すように、ユーザ1201の操作により、上述の管理システムを実行すると、「光学CADシステム」とタイトル表示されたソフトウェアメインウィンドウ1204が表示される。ソフトウェアメインウィンドウ1204のメニューバーには、「レンズデータ構成」と「光線追跡」とが表示されている。ユーザ1201は、「レンズデータ構成」をマウス等で選択すると、アプリケーション「1」が実行されて、レンズデータ構成ウィンドウ1205が表示される。同様に、ユーザ1201は、「光線追跡」をマウス等で選択すると、アプリケーション「3」が実行されて、光線追跡図ウィンドウ1206が表示される。ここでは、レンズデータ構成ウィンドウ1205が既に表示されているものとする。そして、ユーザ1201が、レンズデータ構成ウィンドウ1205でデータを入力し、メニューバーに表示された「光線追跡」を選択すると(1202)、アプリケーション「1」の処理結果を利用してアプリケーション「3」が実行される。システム制御部105は、アプリケーション「3」の実行結果を表示するための光線追跡図ウィンドウ1206を作成し、そのウィンドウ内に図形を表示する。図12では、システム制御部105は、2つの光線追跡図ウィンドウ1206を作成したが、これに限定されない。この場合、システム制御部105は、アプリケーションの実行時刻と、作成されたウィンドウに表示を行ったアプリケーションの種別情報及びその表示時刻と、を記録する。
図13は、ウィンドウ表示自動更新機能を例示的に示す図である。図13に示すように、ユーザ1301の操作により上述の管理システムを実行すると、ソフトウェアメインウィンドウ1303が表示される。ユーザ1301がソフトウェアメインウィンドウ1303で「光線追跡」を選択すると、アプリケーション「3」が実行される。そして、ソフトウェアメインウィンドウ1303に光線追跡図ウィンドウ1305が表示される。光線追跡図ウィンドウ1305が表示されているときに、ユーザが「レンズデータ構成」を選択してアプリケーション「1」を実行させると、レンズデータ構成ウィンドウ1304が表示される。ユーザ1301が、レンズデータ構成ウィンドウ1304からデータを入力し(1302)、アプリケーション「1」を実行させると、アプリケーション「1」のデータが更新される。このとき、ユーザ1301がアプリケーション「3」を明示的に実行させなくても、アプリケーション「1」に新しく入力されたデータ(1302)に基づいて、光線追跡図ウィンドウ1306が自動的に作成され、新たな図形が表示される。
図14は、図13に示す自動更新機能の仕組みをUML2.0シーケンスで示す図である。ユーザ1301は、アプリケーション「3」により光線追跡図ウィンドウ1306が表示されているときに、「レンズデータ構成」を選択して、アプリケーション「1」の実行命令をシステム制御部105に出す(図14−1)。システム制御部105は、ユーザ1301から実行命令が出されたアプリケーション「1」を実行する(図14−2)。アプリケーション「1」は、アプリケーション「1」の処理が終了すると、データ変更の通知をシステム制御部105に渡す(図14−3)。システム制御部105は、図4の全アプリケーション被参照関係テーブル403を用いて、アプリケーション「1」の参照元のアプリケーションを検索する(図14−4)。そして、システム制御部105は、検索されたアプリケーションの実行必要性フラグをTRUE(イネーブル)に変更する。例えば、図5に示す参照関係の場合には、アプリケーション「2」、「3」及び「4」が参照元のアプリケーションとして検索される。そして、アプリケーション「1」は、その処理結果をシステム制御部105に渡す(図14−6)。ここまでは、上述の管理システムと同様である。次いで、システム制御部105は、現在表示が行われているウィンドウの属性を確認する。具体的には、先頭のウィンドウ(1番目のウィンドウ)の属性を確認し、表示が実行されているアプリケーションの情報を取得する(図14−7)。この場合、上述のように、アプリケーション「3」が既に実行されているため、1番目のウィンドウはアプリケーション「3」により表示されたという情報を持っている。そこで、システム制御部105は、アプリケーション「3」で実行された表示であると判断する。次いで、システム制御部105は、アプリケーション「3」の実行必要性フラグを確認する(図14−8)。システム制御部105は、アプリケーション「3」の実行必要性フラグがFALSEであれば実行しないが、TRUEであればアプリケーション「3」に実行命令を出す。ここでは、アプリケーション「3」の実行必要性フラグは、図14−5によりTRUEに変更されているので、システム制御部105は、アプリケーション「3」に実行命令を出す(図14−9)。アプリケーション「3」は、既に最新のデータに変更されているデータをアプリケーション「1」から取得し、その処理を実行する(図14−10)。アプリケーション「3」は、その処理が終了すると、システム制御部105にデータ変更の通知を行う(図14−11)。システム制御部105は、アプリケーション「3」の実行必要性フラグをFALSEにする(図14−12)。アプリケーション「3」は、その処理結果をシステム制御部105に転送する(図14−13)。システム制御部105は、更新された最新のデータを1番目のウィンドウに表示する(図14−14)。ウィンドウ表示後は、上記のウィンドウ属性記録の仕組みに従って、ウィンドウ表示を行っているアプリケーションの情報、ウィンドウ表示を行った時刻、及びアプリケーションの実行時刻を記録する(図14−15)。
以上の仕組みにより、アプリケーション「1」のデータ変更後に、アプリケーション「3」によって表示されている先頭のウィンドウ(第1番目のウィンドウ)の自動更新が可能である。2番目以降のウィンドウも、アプリケーション「3」によって表示されているウィンドウであるため、更新するにはアプリケーション「3」の再実行が必要となる。しかしながら、図14−12により、既にアプリケーション「3」の実行必要性フラグがFALSEになっている。そのため、システム制御部105は、2番目以降のウィンドウについては、図14−8のアプリケーション実行必要性の確認により、アプリケーション「3」に実行命令を出すことが出来ない。そこで、同一アプリケーションにより複数ウィンドウが表示される場合、2番目以降のウィンドウについては、先頭のウィンドウが更新されたときのそのアプリケーションの実行時刻(図14−15の時刻)と、ウィンドウ表示が行われた時刻とを比較する。そして、時刻に差があった場合は、以下のようにそのアプリケーションの実行命令を出すものとする。
図14を参照すると、まずシステム制御部105は、2番目のウィンドウの属性を確認する(図14−16)。2番目のウィンドウに表示を行っているアプリケーションは「3」である。システム制御部105は、2番目のウィンドウに表示が行われた時刻と、図14−15でシステム制御部105が記録したアプリケーションの実行時刻とを比較する(図14−17)。システム制御部105は、比較した時刻に差があると、アプリケーション「3」に実行命令を出す(図14−18)。そして、アプリケーション「3」は、アプリケーション「1」のデータを取得する(図14−19)。アプリケーション「3」は、その処理が終了すると、データ変更通知をシステム制御部に送る(図14−20)。システム制御部105は、アプリケーション「3」の実行必要性フラグをFALSEにする(図14−21)。アプリケーション「3」は、その処理結果情報をシステム制御部105に転送する(図14−22)。そして、システム制御部105は、2番目のウィンドウに結果を表示し(図14−23)、その後、ウィンドウ属性を変更する(図14−24)。このようにして、ユーザは、アプリケーション「1」を実行するだけで、最新のデータによるアプリケーション「3」の表示結果を確認することができる。(図14−25)。
[第3の実施形態]
本発明の好適な第3の実施形態は、システム制御部105に、ウィンドウ表示自動更新判定フラグと、そのフラグをユーザが変更することができるユーザーインターフェースと、を持たせたものである。これによって、ユーザが、ウィンドウ表示更新機能を自由なタイミングで実行することができ、利便性の向上につながる。
上記のウィンドウ自動更新の仕組みにおいて、システム制御部105は、ウィンドウ毎にウィンドウ表示自動更新判定フラグを持つ。ユーザは、このフラグの設定を変更することによって、ウィンドウ表示の更新を自動で行うか手動で行うかを選択することができる。ユーザは、メニューやGUIウィンドウなどのユーザーインターフェースを用いて、このフラグの設定変更をシステム制御部105に要求することができる。
図14−7、図14−16に示すように、システム制御部105は、ウィンドウ属性を確認する前に、このウィンドウ表示自動更新判定フラグを確認する。ウィンドウ表示自動更新判定フラグがTRUEであれば、上記の仕組みによって、ウィンドウ表示が自動更新される。ウィンドウ表示自動更新判定がFALSEの場合は、図14を例に挙げると、1番目のウィンドウが自動更新オフの設定である場合には、図14−7〜15までは実行はされない。また、2番目のウィンドウが自動更新オフの設定である場合には、図14−16〜24は実行されない。
システム制御部105は、ウィンドウ表示の更新を行うユーザーインターフェース(メニューやツールバーボタン)を提供する。ユーザは、このユーザーインターフェースを利用することによって、図14−7〜15、図14−16〜24の処理を自由なタイミングで実行することができる。
図15は、ウィンドウ表示手動更新処理をUML2.0シーケンスで示す図である。ユーザは、システム制御部105に対して、更新したいウィンドウを指定し、ウィンドウ更新命令を出す(図15−1)。システム制御部105は、指定されたウィンドウの属性を確認し、そのウィンドウ表示を行った時刻とシステムが記録している現在のアプリケーションの実行時刻とを比較する。両者に差があった場合には、システム制御部105は、アプリケーションに対して実行命令を出す(図15−2〜4)。処理終了後に、アプリケーションは、システム制御部105にデータ変更通知をする。システム制御部105は、このアプリケーションの実行フラグをFALSEにする(図15−5,6)。アプリケーションは、処理結果情報をシステム制御部105に転送し、システム制御部105は、結果をウィンドウに表示する(図15−7,8)。その後、ウィンドウ属性の変更をシステム制御部105が行い(図15−9)、ユーザは、更新した結果を確認することができる(図15−10)。
[第4の実施形態]
本発明の好適な第4の実施形態は、データ変更前のデータを主記憶装置115の別の記憶領域に退避させるものである。これによって、ユーザがデータ変更後の値を一度確認して求める解でなかった場合に、変更前のデータを回復することができ、ユーザービリティーの向上につながる。
ユーザは、アプリケーション実行時に、ユーザーインターフェースとして図16に示すようなGUIウィンドウ1601を利用する。GUIウィンドウ1601は、例えば、「OK」、「キャンセル」及び「試行」の3つのボタンを備える。ユーザがGUIウィンドウ1601でデータを変更した後に、「OK」ボタンを押すことによりデータ更新が行われ、上述したウィンドウ表示自動更新機能により参照関係にあるアプリケーションが全て実行される。その結果、最新のデータによってウィンドウ表示が自動的に更新される。ユーザがGUIウィンドウ1601で「キャンセル」ボタンを押すと、データ変更の値は破棄されて処理が終了する。ユーザがGUIウィンドウ1601で「試行」ボタンを押すと、データ変更後の値で一度実行して確認することができ、また再度ウィンドウでのデータ入力が可能になる。
その後、ユーザがGUIウィンドウ1601で「OK」ボタン又は「キャンセル」ボタンを押すことにより、データ変更を適用するのかしないのかを選択することができる。試行ボタンは何回も押すことが可能である。
図17を参照して上記の試行機能の処理フローを示す。まず、ユーザからの操作によりウィンドウがオープンされると(S001)、アプリケーションは、現在の主記憶装置115上のデータを一時的に別の記憶領域にコピー(バックアップ)する(S002)。ユーザは、このウィンドウ上のデータ入力欄にデータを入力することによって、入力データを変更する(S003)。データ入力後に、ユーザが「OK」、「キャンセル」及び「試行」の3つのボタンのいずれかを押すことにより、処理を選択することができる(S004)。
ユーザが「OK」ボタンを押した場合には、ウィンドウで入力した値によりアプリケーションが実行され(S005)、主記憶装置115上のデータが更新され(S006)、ウィンドウがクローズされる(S007)。アプリケーションの実行によりデータが更新されたので、そのアプリケーションと参照関係にあるアプリケーションも再実行される。そして、表示ウィンドウが最新の状態に自動的に更新され(S008)、処理が終了する(S100)。
ユーザが「キャンセル」を押した場合には、ウィンドウで変更した値は主記憶装置115にセットされず、そのままウィンドウがクローズして(S009)、処理が終了する(S100)。
ユーザが「試行」ボタンが押した場合には、変更後のデータでアプリケーションが実行される(S010)。その結果を最初にコピーした一時的な記憶領域にセットし、実行したアプリケーションと参照関係にあるアプリケーションを実行し、表示ウィンドウを更新する(S012)。S012の処理を終了した後、再度S003に戻り、再度入力ウィンドウ上でデータ更新が可能となる。再度ウィンドウ上でボタンを選択することができ、ユーザが「OK」ボタンを押した場合には、変更後の値を主記憶装置115にセットする。ユーザが「キャンセル」ボタンを押した場合には、バックアップでコピーしておいた変更前の値に戻して、ウィンドウが開く前の状態に戻す。このとき、再度データを変更し、試行ボタンを押すことも可能である。なお、主記憶装置115としてはメモリやファイルが利用可能である。
以上のように、第1〜第4の実施形態に係るシステムによれば、多数のアプリケーションを定義した場合でも、そのアプリケーション自身の参照関係を定義するだけで、ソフトウェア全体の参照関係テーブルを自動的に構築できる。そのため、開発者はアプリケーションの参照関係を意識しなくてもよい。
また、システム制御部は、予め定められた場所にアプリケーションを全てロードする機能をもつ。そのため、ユーザは利用可能なアプリケーションの数を気にせず、新規にアプリケーションを追加する場合には、統一のテーブルデータ構造をもたせて、その場所に置くだけでよい。したがって、システムに修正を加える必要がなく、ソフトウェアの拡張を行うことができる。
その結果、開発者にとって、システムの拡張が容易になり、開発・保守の負荷が軽減される。また、アプリケーションの実行の際に、そのアプリケーションを実行するのに必要な処理を、全てシステム制御部が自動的に判断する。そのため、利用者は、数多くの操作手順を覚える必要がない。また、アプリケーションの実行の必要性をシステム制御部が自動的に判断することによって、少ない操作で無駄のない最適な処理を行うことができ、ユーザービリティーの向上につながる。
ソフトウェア及びハードウェア構成を示す図である。 アプリケーション参照関係テーブルを示す図である。 ソフトウェア起動時の処理シーケンスを示す図である。 システム制御部テーブルを示す図である。 アプリケーション参照関係Tree構造を示す図である。 アプリケーション参照関係検索フローを示す図である。 アプリケーション実行処理シーケンスを示す図である(参照されるアプリケーション実行時)。 アプリケーション「1」実行後の実行必要性フラグ結果を示す図である。 アプリケーション実行処理シーケンスを示す図である(参照するアプリケーション実行時)。 アプリケーション「4」実行後の実行必要性フラグ結果を示す図である。 アプリケーションの処理結果をウィンドウ表示するシーケンスを示す図である。 ユーザによりアプリケーションを実行する様子を示す図である。 表示ウィンドウ自動更新処理を示す図である。 表示ウィンドウ自動更新処理シーケンスを示す図である。 表示ウィンドウ手動更新処理シーケンスを示す図である。 アプリケーションウィンドウを示す図である。 試行機能処理フローチャートを示す図である。
符号の説明
100 管理システム
101、102 アプリケーション
103、104 参照関係テーブル
105 システム制御部
106、108 記憶手段
403 全アプリケーション被参照関係テーブル

Claims (10)

  1. 複数のアプリケーションの参照関係を管理する管理システムであって、
    複数のアプリケーションのそれぞれのアプリケーション名に対してその参照先のアプリケーション名が対応づけられている参照関係テーブルを記憶するための記憶手段と、
    前記複数のアプリケーションを実行するためのシステム制御部と、
    を備え、
    前記システム制御部は、前記記憶手段から前記複数のアプリケーションのそれぞれの前記参照関係テーブルを取得し、取得した前記参照関係テーブルに基づいて前記複数のアプリケーションのそれぞれのアプリケーション名とその参照元のアプリケーション名とが対応づけられている全アプリケーション被参照関係テーブルを作成し、実行するアプリケーションのアプリケーション名に基づいて前記全アプリケーション被参照関係テーブルを検索して対応する参照元のアプリケーションを抽出し、抽出された前記参照元のアプリケーションの実行必要性フラグをイネーブルにする手段を有することを特徴とする管理システム。
  2. 前記システム制御部は、前記取得された参照関係テーブルに基づいて前記複数のアプリケーションのそれぞれのアプリケーション名とその参照先のアプリケーション名とが対応づけられている全アプリケーション参照関係テーブルを作成し、前記実行するアプリケーションのアプリケーション名に基づいて前記全アプリケーション参照関係テーブルを検索して対応する参照先のアプリケーションを抽出し、抽出された前記参照先のアプリケーションのうち前記実行必要性フラグがイネーブルであるアプリケーションに実行命令を送信する手段を有することを特徴とする請求項1に記載の管理システム。
  3. 前記システム制御部は、前記実行命令を送信するアプリケーションに更に参照先となるアプリケーションが存在する場合には、更に参照先となる前記アプリケーションに優先的に前記実行命令を送信する手段を有することを特徴とする請求項2に記載の管理システム。
  4. 前記システム制御部は、前記更に参照先となるアプリケーションの実行が完了した場合には、そのアプリケーションの前記実行必要性フラグをディセーブルとし、その実行結果をその参照元のアプリケーションに送信する手段を有することを特徴とする請求項3に記載の管理システム。
  5. 前記システム制御部は、実行した前記アプリケーションの実行時刻を前記記憶手段に記憶し、その処理結果をウィンドウに表示する手段を備えることを特徴とする請求項1乃至請求項4のいずれか1項に記載の管理システム。
  6. 前記システム制御部は、表示した前記ウィンドウに対応するアプリケーションの種別情報とその処理結果の表示時刻とをそのウィンドウと対応づけて前記記憶手段に記憶する手段を備えることを特徴とする請求項5に記載の管理システム。
  7. 前記システム制御部は、現在表示されている前記ウィンドウを確認し、そのウィンドウに対応づけられた前記アプリケーションの種別情報に基づいて前記実行必要性フラグがイネーブルであるか否かを判断し、前記実行必要性フラグがイネーブルである場合には、そのアプリケーションを自動的に実行する手段を有することを特徴とする請求項6に記載の管理システム。
  8. 前記システム制御部は、前記ウィンドウが複数表示されている場合には、各ウィンドウに対応づけられた前記アプリケーションの種別情報に基づいて同一アプリケーションの処理結果が表示されているか否かを判断し、同一のアプリケーションの処理結果が表示されている場合には、そのアプリケーションの前記実行必要性フラグをイネーブルにすることを特徴とする請求項7に記載の管理システム。
  9. 前記システム制御部は、前記自動的に実行する処理を行う否かを示すウィンドウ表示自動更新判定フラグを前記ウィンドウ毎に設定する手段を備えることを特徴とする請求項7に記載の管理システム。
  10. 前記システム制御部は、入力された第1のデータに従って前記アプリケーションを実行してその処理結果を前記記憶手段の第1の記憶領域に記憶し、入力された第2のデータに従って前記アプリケーションを実行してその処理結果を前記記憶手段の第2の記憶領域に記憶し、前記アプリケーションからの処理命令に応じて、利用する記憶領域を前記第1、第2の記憶領域の間で切り換える手段を備えることを特徴とする請求項1乃至請求項9のいずれか1項に記載の管理システム。
JP2006031347A 2006-02-08 2006-02-08 複数のアプリケーションの参照関係を管理する管理システム Expired - Fee Related JP4863449B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006031347A JP4863449B2 (ja) 2006-02-08 2006-02-08 複数のアプリケーションの参照関係を管理する管理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006031347A JP4863449B2 (ja) 2006-02-08 2006-02-08 複数のアプリケーションの参照関係を管理する管理システム

Publications (3)

Publication Number Publication Date
JP2007213233A true JP2007213233A (ja) 2007-08-23
JP2007213233A5 JP2007213233A5 (ja) 2009-05-07
JP4863449B2 JP4863449B2 (ja) 2012-01-25

Family

ID=38491624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006031347A Expired - Fee Related JP4863449B2 (ja) 2006-02-08 2006-02-08 複数のアプリケーションの参照関係を管理する管理システム

Country Status (1)

Country Link
JP (1) JP4863449B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013140573A (ja) * 2011-12-08 2013-07-18 Fujitsu Ltd 関連推定プログラム,関連推定装置および関連推定方法
US20200103844A1 (en) * 2018-09-28 2020-04-02 Fisher-Rosemount Systems, Inc Bulk commissioning of field devices within a process plant

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7031569B2 (ja) 2018-11-29 2022-03-08 日本電信電話株式会社 情報作成装置、情報作成方法、および、情報作成プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06161790A (ja) * 1992-11-24 1994-06-10 Nippon Telegr & Teleph Corp <Ntt> プログラム間データ連動方法
JP2001056766A (ja) * 1999-08-18 2001-02-27 Denso Corp マルチモジュールシステム及び対話システム
JP2004157676A (ja) * 2002-11-05 2004-06-03 Mitsubishi Electric Corp 業務統合装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06161790A (ja) * 1992-11-24 1994-06-10 Nippon Telegr & Teleph Corp <Ntt> プログラム間データ連動方法
JP2001056766A (ja) * 1999-08-18 2001-02-27 Denso Corp マルチモジュールシステム及び対話システム
JP2004157676A (ja) * 2002-11-05 2004-06-03 Mitsubishi Electric Corp 業務統合装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013140573A (ja) * 2011-12-08 2013-07-18 Fujitsu Ltd 関連推定プログラム,関連推定装置および関連推定方法
US20200103844A1 (en) * 2018-09-28 2020-04-02 Fisher-Rosemount Systems, Inc Bulk commissioning of field devices within a process plant
US11714394B2 (en) * 2018-09-28 2023-08-01 Fisher-Rosemount Systems, Inc Bulk commissioning of field devices within a process plant

Also Published As

Publication number Publication date
JP4863449B2 (ja) 2012-01-25

Similar Documents

Publication Publication Date Title
US7406577B2 (en) Data migration method
JPH096582A (ja) アプリケーション・グルーピング方法及び装置
JP2013529810A (ja) 共有データコレクション
JP5766378B2 (ja) システム開発装置、方法およびプログラム
CN110188114A (zh) 一种数据操作的优化方法、装置、系统、设备和存储介质
US9105222B2 (en) Display control apparatus and display control method
US7831921B2 (en) Navigation connection points
JP4863449B2 (ja) 複数のアプリケーションの参照関係を管理する管理システム
JP6801086B2 (ja) プログラム開発支援装置、プログラム開発支援方法、及びプログラム開発支援プログラム
JPH10322331A (ja) 会議支援システム及び記録媒体
JP5426938B2 (ja) 情報処理装置、情報処理方法
CN114327601A (zh) 一种业务流程控制方法、装置、系统及相关设备
JP2014063472A (ja) 情報処理装置、その方法及びプログラム
JP3942877B2 (ja) Cadデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびcadデータを管理するためのプログラム
JP4784754B2 (ja) 制御システム設定装置
JP2009266149A (ja) ジョブ管理プログラム及びジョブ管理装置
WO2006085578A1 (ja) 分散情報統合方法及び分散情報統合システム
JP4825120B2 (ja) サービス管理システム、サービス管理装置およびサービス管理方法
JP4731928B2 (ja) データ管理装置、データ管理システム、データ処理装置、データ管理方法、プログラム、及び記憶媒体
JP2013191003A (ja) ブランチリポジトリ管理システム
JP6169485B2 (ja) 分散処理システム
JP6529680B1 (ja) データ管理システム、データ管理方法およびデータ管理プログラム
JP2015095035A (ja) パラメータ設定支援システムおよびパラメータ設定支援方法ならびにパラメータ設定支援プログラム
JP7183092B2 (ja) ソース情報管理装置およびソース情報管理方法
JP6519180B2 (ja) 管理システム、制御方法、および制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090209

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090318

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110829

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110831

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111019

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111104

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111107

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141118

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees