JP2021140260A - 情報処理装置及び情報処理プログラム - Google Patents
情報処理装置及び情報処理プログラム Download PDFInfo
- Publication number
- JP2021140260A JP2021140260A JP2020035186A JP2020035186A JP2021140260A JP 2021140260 A JP2021140260 A JP 2021140260A JP 2020035186 A JP2020035186 A JP 2020035186A JP 2020035186 A JP2020035186 A JP 2020035186A JP 2021140260 A JP2021140260 A JP 2021140260A
- Authority
- JP
- Japan
- Prior art keywords
- activity
- component
- flow
- displayed
- display device
- 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
- 230000010365 information processing Effects 0.000 title claims abstract description 71
- 238000012545 processing Methods 0.000 claims abstract description 132
- 230000006870 function Effects 0.000 claims abstract description 41
- 230000000694 effects Effects 0.000 description 777
- 238000010586 diagram Methods 0.000 description 73
- 238000000034 method Methods 0.000 description 54
- 230000008569 process Effects 0.000 description 52
- 238000004891 communication Methods 0.000 description 25
- 230000008859 change Effects 0.000 description 23
- 239000000284 extract Substances 0.000 description 20
- 238000006243 chemical reaction Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 230000004397 blinking Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 230000004888 barrier function Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 240000004050 Pentaglottis sempervirens Species 0.000 description 1
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 1
- 241000555745 Sciuridae Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
そこで、本発明は、フローを構成する機能に対応する部品を組み合わせて、ユーザーがフローを生成する場合に、ユーザーがフローを構成する部品を予め全て決定しなければならない構成と比べて、ユーザーは、フローを構成する部品の一部を選択することによって、フローを生成することができるようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
請求項1の発明は、メモリと一又は複数のプロセッサを備え、前記メモリは、フローを構成する機能に対応する部品の仕様を記憶しており、前記プロセッサは、ユーザーが選択した第1部品を基点として、前記部品の仕様を用いて、該第1部品の前又は後の処理を行う第2部品を抽出し、該第2部品と該第1部品を表示装置に表示するように制御する、情報処理装置である。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(「ソフトウェア」の解釈として、コンピュータ・プログラムを含む)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(例えば、コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(例えば、データの授受、指示、データ間の参照関係、ログイン等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態にしたがって、又はそれまでの状況・状態にしたがって定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(「2以上の値」には、もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。また、「A、B、C」等のように事物を列挙した場合は、断りがない限り例示列挙であり、その1つのみを選んでいる場合(例えば、Aのみ)を含む。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(「ネットワーク」には、一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(つまり、社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。
メモリ110は、主にプログラムを記憶するプログラムメモリ120と主にデータを記憶するデータメモリ115を有している。なお、プログラムメモリ120、データメモリ115には、図示しているモジュールのプログラムの他、本コンピュータを起動するためのOS等のプログラム、モジュールの実行において適宜変化するパラメータ等のデータが格納されていてもよい。
受付装置190は、キーボード、マウス、マイク、カメラ(視線検知カメラ等を含む)等に対する利用者の操作(動作、音声、視線等を含む)に基づいたデータ、又は、スキャナの読み取り動作等によって発生する画像データ等を受け付ける。
また、タッチスクリーンのように、表示装置187と受付装置190の両方の機能を備えているものがあってもよい。その場合、キーボードの機能の実現について、物理的なキーが存在しなくても、タッチスクリーン上にソフトウェアでキーボード(いわゆるソフトウェアキーボード、スクリーンキーボード等ともいわれる)を描画して、キーボードの機能を実現するようにしてもよい。
なお、ユーザーインタフェースとして、主に、表示装置187、受付装置190が用いられる。
通信装置195は、通信回線を介して他の装置と接続するためのネットワークカード等の通信回線インタフェースである。
なお、図1に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、図1に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、プロセッサ105として、GPU(Graphics Processing Unitの略、GPGPU(General−Purpose computing on Graphics Processing Unitsの略)を含む)を用いてもよいし、一部のモジュールの実行を専用のハードウェア(例えば特定用途向け集積回路(具体例として、ASIC(Application Specific Integrated Circuitの略)等がある)や再構成可能な集積回路(具体例として、FPGA(Field−Programmable Gate Arrayの略)等がある)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続している形態でもよく、さらに図1に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、携帯情報通信機器(携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む)、情報家電、ロボット、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)等に組み込まれていてもよい。
データメモリ115は、フロー部品仕様記憶モジュール125、フロー記憶モジュール130を記憶している。
フロー部品仕様記憶モジュール125は、フローを構成する機能に対応する部品の仕様を記憶している。
ここで「部品」とは、フローを構成するものであり、独立した処理を行う処理単位である。部品は、処理部品、機能、アクティビティ、プラグイン、コネクタ等と呼ばれることもある。以下、例示する場合は、アクティビティという場合がある。これら処理単位である部品を接続してフローを作成しておくことで、フローに文書等のデータが投入されると、そのフローに従って処理が行われる。
また、「フロー」とは、部品を組み合わせた順番で、その部品の処理を実行させ、処理結果を得るための定義である。この定義に従って入力されたデータを処理していく。
また、「部品の仕様」には、その部品による処理内容、部品と部品を接続するために必要な情報を少なくとも含む。部品の仕様として、例えば、(1)その部品で処理できるファイル種別、つまり入力ファイル種別、(2)その部品による処理内容、(3)その部品で出力され得るファイル種別、がある。なお、(4)その部品で出力され得る属性情報、を含めてもよい。さらに、(5)その部品で入力できるパラメータ、を含めてもよい。
操作受付モジュール137は、受付装置190が検知したユーザーの操作を受け付ける。そのユーザーの操作にしたがって、表示制御モジュール139又はフロー生成制御モジュール140に処理を行わせる。
ここで「基点」は、一般的にフローを生成しようとしているユーザーが最初に選択した部品である。例えば、フローの中で中心的な処理を行う部品であってもよいし、ユーザーがフローの中で含めたいと考えている部品等であってもよい。
また、「その第2部品とその第1部品を表示装置187に表示する」の形態として、基点として表示されている第1部品に対して、フローとして前又は後になる部品として第2部品があることがわかるように表示すればよい。例えば、「第2部品を第1部品に隣接して表示装置に表示する」、「第2部品を第1部品と接続して表示装置に表示する」等がある。前者の例として、フローの流れとして左から右に流れるように定義した場合、つまり、左側がフローとして前であり、右側がフローとして後であるとした場合は、第2部品が第1部品より前にある場合は、第1部品の左側に第2部品を表示すればよいし、第2部品が第1部品より後にある場合は、第1部品の右側に第2部品を表示すればよい。また、フローの流れとして上から下に流れるように定義した場合、つまり、上側がフローとして前であり、下側がフローとして後であるとした場合は、第2部品が第1部品より前にある場合は、第1部品の上側に第2部品を表示すればよいし、第2部品が第1部品より後にある場合は、第1部品の下側に第2部品を表示すればよい。後者の例として、前者の例にさらに部品間を線で接続するようにしてもよい。この線は、フローの経路を示すことになる。経路は、パス、ルートともよばれる。さらに、線に矢印を付すようにすれば、矢印の先がフローとしての後になる部品であればよく、第1部品と第2部品の位置関係を規定する必要はない。例えば、第2部品が第1部品より前にある場合は、第2部品から第1部品へ向かうように矢印の線で接続すればよいし、第2部品が第1部品より後にある場合は、第1部品から第2部品へ向かうように矢印の線で接続すればよい。以下にフローの表示例を示す場合は、左側がフローとして前であり、右側がフローとして後であると定義しており、部品間を接続する線を示すようにしている。もちろんのことながら、この表示は例示であって、前述したような表示例のほか、フローとしての流れがわかるような表示であればよい。この処理については、図5の例を用いて後述する。
そして、第2部品の前の処理を行う第3部品を抽出した後に、さらに、その第3部品の前の処理を行う第4部品を抽出し、その第4部品をその第3部品と接続して表示装置187に表示するように制御する、以下、このような処理を続けてもよい。そして、抽出した部品が入力元である場合になるまで続ける。
又は、表示制御モジュール139は、第1部品の後の処理を行う第2部品を抽出した後に、さらに、その第2部品の後の処理を行う第3部品を抽出し、その第3部品とその第2部品を表示装置187に表示するように制御する。
そして、第2部品の後の処理を行う第3部品を抽出した後に、さらに、その第3部品の後の処理を行う第4部品を抽出し、その第4部品をその第3部品と接続して表示装置187に表示するように制御する、以下、このような処理を続けてもよい。そして、抽出した部品が出力先である場合になるまで続ける。
表示形態として、第3部品をその第2部品と接続して表示装置187に表示するようにしてもよい。この処理については、図5の例を用いて後述する。
「経路上の部品と同じ階層にある部品を削除する」ことによって、経路以外の部品が削除されるので、選択された部品から基点となる第1部品までの経路が明確に表示されることになる。この処理については、図6Cの例を用いて後述する。
ここでの「階層」とは、基点となる第1部品から数えて同じ数となる部品群をいう。例えば、第1部品の直前に処理を行う部品群は同じ階層に属しており、第1部品の2つ前に処理を行う部品群は同じ階層に属しており、以下、同様に階層に分かれる。第1部品の後に処理を行う部品についても、第1部品の直後に処理を行う部品群は同じ階層に属しており、第1部品の2つ後に処理を行う部品群は同じ階層に属しており、以下、同様に階層に分かれる。
そして、表示制御モジュール139は、経路が選択された場合は、その経路に関する情報を表示装置187に表示するよう制御するようにしてもよい。これらの処理については、図7の例を用いて後述する。
ここで「部品の仕様に関する情報」とは、部品間の接続を変更させ得る情報である。例えば、前述した「部品の仕様」のうち、(1)その部品で処理できるファイル種別、(3)その部品で出力され得るファイル種別、(4)その部品で出力され得る属性情報、(5)その部品で入力できるパラメータ、が該当する。
「部品の仕様に関する情報が変更された」とは、ユーザーの操作に応じて変更された場合が該当する。例えば、元の仕様が複数のファイル種別を許容している場合に、いずれかのファイル種別に固定すること、パラメータを変更すること等が該当する。この処理については、図9の例を用いて後述する。
例えば、第1部品を中央に表示することによって、過去の利用回数が多い部品ほど中央に近くなるように表示することになる。
また、利用回数として、ユーザーによって過去に生成されたフローにおける第1利用回数と、過去に生成された全体のフローにおける第2利用回数を用いるようにしてもよい。
その場合、表示制御モジュール139は、第1利用回数と第2利用回数に分けて、部品を表示装置187に表示するよう制御するようにしてもよい。
ここで「第1利用回数」は、そのユーザーが過去に生成したフローを対象とする場合の利用回数であり、「第2利用回数」は、そのユーザーに限らず、他のユーザーも含めて過去に生成されたフローを対象とする場合の利用回数である。これらの処理については、図10の例を用いて後述する。
また、表示制御モジュール139は、第2利用回数が同じである場合は、第1利用回数が多い部品ほど、その部品の表示の大きさを大きくして、表示装置187に表示するよう制御するようにしてもよい。ここで比較対象とする部品は、同じ階層内にある部品としてもよい。つまり、表示制御モジュール139は、同じ階層に属している部品において第2利用回数が同じである場合は、第1利用回数が多い部品ほど、その部品の表示の大きさを大きくして、表示装置187に表示するよう制御するようにしてもよい。
また、表示制御モジュール139は、基点となる第1部品から数えて第n階層の部品の表示の大きさを、第n−1階層の部品の大きさよりも小さくして、表示装置187に表示するよう制御するようにしてもよい。なお、階層は、基点となる第1部品を第0階層とした場合、前述の第2部品が含まれている階層が第1階層であり、前述の第3部品が含まれている階層が第2階層である。この場合、第3部品の表示は、第2部品の表示よりも小さくなる。つまり、階層が深くなるほど(基点となる第1部品から遠ざかるほど)、その階層における部品の表示は小さくなる。また、このように階層が深くなるほど部品の大きさを小さく表示するのは、第1利用回数、第2利用回数、第1利用回数と第2利用回数の合計数のいずれかが、少ない部品について適用するようにしてもよい。なお、ここでの「少ない」とは、予め定められた回数未満又は以下としてもよいし、回数の多い順(降順)にソートした場合に予め定められた順位未満又は以下としてもよいし、回数の少ない順(昇順)にソートした場合に予め定められた順位より高位又は以上としてもよい。
また、表示制御モジュール139は、基点となる第1部品が出力先である場合は、その第1部品の前の処理を行う第2部品を抽出し、その第2部品をその第1部品を表示装置187に表示するよう制御するようにしてもよい。つまり、基点がフローの最後となる部品である場合の処理である。
また、表示制御モジュール139は、基点となる第1部品が入力元以外であって、かつ、出力先以外である場合は、その第1部品の前及び後の処理を行う第2部品を抽出し、その第2部品をその第1部品を表示装置187に表示するよう制御するようにしてもよい。つまり、基点がフローの先頭でもなく、最後でもない部品である場合の処理である。要するに、基点がフローの中間にある部品である場合の処理である。これらの処理については、図12の例を用いて後述する。
図2(a)の例は、スタンドアロン型のシステム構成を示しており、ユーザー端末200は、情報処理装置100を有している。ユーザーは、情報処理装置100を用いてフローの生成を行う。なお、情報処理装置100のフロー部品仕様記憶モジュール125には、そのユーザーによる部品毎の利用回数だけでなく、予め他のユーザーも含めて過去に生成されたフローに利用された部品毎の利用回数を記憶している。また、ユーザー端末200の通信機能を用いて、他の情報処理装置から他のユーザーによる利用回数を受信するようにしてもよい。
ユーザーは、ユーザー端末210を用いて、情報処理装置100にアクセスし、フローの生成を行う。また、情報処理装置100は複数、通信回線290に接続されていてもよい。その場合、各情報処理装置100は、フローデータ記憶装置250内のデータメモリ115を用いるようにしてもよい。これによって、他の情報処理装置100で生成されたフローに関する情報も用いることができるようになる。
アクティビティとして、例えば、以下のようなものがある。
−親展ボックス入力アクティビティ:アクティビティの設定ユーザーインタフェースにて、事前に「Jpegで取得する」が設定されている。
−フォーマット変換アクティビティ:アクティビティの設定ユーザーインタフェースにて、事前に「JpegをTiffに変換する」が設定されている。
−QRコード(登録商標)解析アクティビティ:アクティビティの設定ユーザーインタフェースにて、事前に「最初ページのQRコードを解析して、解析結果を後段プラグインで使用できるようパラメータと後段に渡す」が設定されている。
−文書名設定アクティビティ:アクティビティの設定ユーザーインタフェースにて、事前に「QRコードの解析結果を、ファイル名にセットする」が設定されている。
−フォルダ保存アクティビティ:アクティビティの設定ユーザーインタフェースにて、事前に「指定した共有フォルダに、ファイルを保存する」が設定されている。
そして、例えば、このアクティビティ群が上から順に実行されていくようなフローを生成したとする。スキャナ等にてスキャンされた文書は、“親展ボックス入力”アクティビティでJpegのイメージとして、フローマネジメントシステムに取り込まれ、“フォーマット変換”アクティビティでJpegからTiffに変換され、“QRコード解析”アクティビティで、Tiff上のQRコードを読み取り、QRコードに含まれる文字列を抽出し、“文書名設定”アクティビティで、QRコードより得られた文字列を、文書名(ファイル名)に設定し、“フォルダ保存”アクティビティで、所定されたフォルダに保存される。フローを実行することによって、これら一連の処理が自動的に行われることになる。
・データを取り込む「入力元」
・取り込んだデータに対する何らかの処理を行う「加工」
・加工したデータを出力する「出力先」
前述したWebサービスを連携させる実際のサービスでは、システムに登録されたアクティビティ数は少ないものでも100個以上、多いものでは400個以上存在している。
そのため、ユーザーは、数多くのアクティビティの中から、どのアクティビティを、どのように組み合わせて、目的を達成するフローを定義すればよいかについて、予めフローを設計し、各アクティビティを確認及び検討しながら作成していく必要がある。
つまり、このようなシステムでフローを構築する場合、機能を1つずつ組み合わせて、実際にフローを生成しながら、自分のやりたい事に合致しているか確認していくしかない。
また、予め用意されたテンプレートを使う方法も考えられる。しかし、そのテンプレートで何ができるか、予め知っておく必要がある。
また、ウィザード形式によるフロー作成では、あらかじめ組みたいフローがわかっていないと作成できない。
そこで、本実施の形態は、フローを構成する機能に対応する部品を組み合わせて、ユーザーがフローを生成する場合に、ユーザーが全ての部品の仕様を把握した上で生成しなければならない構成と比べて、ユーザーによるフロー生成の障壁を下げるようにしている。具体的には、フローとして処理したいことの一部しか決まっていない場合でも、フローを生成できるようにしており、フロー生成の利用開始の障壁が下がることになる。ひいては、フローマネジメントシステムの導入をしやすくなると考えられる。
ユーザーが利用したいアクティビティを1つ最初に指定すると、そのアクティビティの前後に接続できるアクティビティを、関連図で表示する。この関連図は、複数階層で表示する。そして、関連図上のいずれかのアクティビティが1つ選択されると、最初に指定したアクティビティに至るまでの、部分フローにおいて、
・入力可能なファイル形式
・その部分フローで実行可能な処理内容
・出力可能なファイル形式と属性データ
のうち、少なくとも1つ以上が一覧表示される。ユーザーは、それを参照しながら、部分フローを確定させていき、フローを生成していくことができることになる。
表示制御モジュール139は、フロー部品仕様記憶モジュール125に登録されているアクティビティを一覧表示する。例えば、アクティビティ一覧画面300に、アクティビティ登録位置指定欄310、新規追加ボタン320、アクティビティ一覧領域330を表示する。アクティビティ一覧領域330には、複数のアクティビティ340(アクティビティ340a〜アクティビティ340o)を表示する。そして、アクティビティ一覧領域330の各アクティビティ340の下側には、例えば、図4に示すアクティビティ属性登録画面400で登録した「名前」が表示されている。
アクティビティを新規に情報処理装置100に登録する場合には、新規追加ボタン320を選択して登録する。新規追加ボタン320が選択されたことを検知した場合は、図4の例に示すアクティビティ属性登録画面400を表示する。
表示制御モジュール139は、アクティビティを登録するための画面であるアクティビティ属性登録画面400を表示する。例えば、アクティビティ属性登録画面400に、アクティビティ登録位置指定欄410、アクティビティID欄415、アクティビティデータ欄420、登録ボタン425、属性情報設定欄430を表示する。アクティビティ登録位置指定欄410には、そのアクティビティが記憶されているURL(Uniform Resource Locatorの略)を表示する。アクティビティID欄415には、そのアクティビティを本実施の形態で一意に識別するための情報(アクティビティID:IDentificationの略)を表示する。アクティビティデータ欄420には、そのアクティビティが処理するデータを表示する。登録ボタン425が選択された場合は、アクティビティ属性登録画面400内で定義されたアクティビティをフロー部品仕様記憶モジュール125に登録する。
属性情報設定欄430には、属性情報となる名前欄432、説明欄434、入力可能ファイル種別欄436、出力可能ファイル種別欄438、出力可能属性データ欄440を入力可能に表示する。名前欄432には、そのアクティビティの名前を表示する。説明欄434には、そのアクティビティが有している機能、処理内容等を表示する。入力可能ファイル種別欄436には、そのアクティビティが入力可能なファイルの種別を表示する。出力可能ファイル種別欄438には、そのアクティビティが出力可能なファイルの種別を表示する。出力可能属性データ欄440には、そのアクティビティが出力可能なデータ属性を表示する。なお、そのアクティビティが入力可能なデータ属性を表示するようにしてもよい。
ユーザーのそれぞれの欄への入力によって、アクティビティが定義され、フロー部品仕様記憶モジュール125に登録されることによって、例えば、図3に示したアクティビティ一覧画面300にフローの構成候補であるアクティビティ340として選択可能に表示されることになる。
ユーザーが最初に指定したアクティビティに対し、そのアクティビティの前後に接続できるアクティビティを、階層に表現される関連図で表示する。ここで「最初に指定したアクティビティ」は、基点となるアクティビティとなる。
次に、ユーザーが関連図上の任意のアクティビティを選択すると、選択されたアクティビティと、基点となるアクティビティに至るまでの経路を抽出する。そして、その経路について、
・入力可能ファイル種別(例えば、ファイル拡張子のリスト等)
・実行される処理内容(例えば、アクティビティ名のリスト等)
・出力可能ファイル種別(例えば、ファイル拡張子のリスト等)
・出力可能属性データ(例えば、属性名と属性の型(string,list,numetricなど)のリスト)
のうち、少なくとも1つ以上が参照できるとする。ユーザーは、参照したデータが、自分のやりたい事と合致していると確認した場合は、その経路である部分フローを確定する。
これを繰り返すことで、全体のフローを生成していく。
(ステップ1)
図5(a)の例に示すように、アクティビティの一覧を内容とするアクティビティ一覧画面300を表示する。
(ステップ2)
ユーザーの操作によって、そのユーザーが使用したいアクティビティ(例えば、文字認識処理)が1つ選択されたことを検知すると、フロー生成制御モジュール140で、そのアクティビティを中心として、前後に接続可能なアクティビティを抽出する。
具体的には、図5(a)の例に示すように、アクティビティ340dが選択された場合、図5(b)の例に示すように、アクティビティ340dを中心のアクティビティ550として、アクティビティ550の前に接続できるアクティビティ群を抽出し、前第一階層540に配置する。図5(b)の例では、アクティビティ550の前に接続できるアクティビティとして5つ抽出し、前第一階層540に配置している。次に、前第一階層540内の各アクティビティの前に接続できるアクティビティ群を抽出し、前第二階層530に配置する。図5(b)の例では、前第一階層540内の各アクティビティの前に接続できるアクティビティとして7つ抽出し、前第二階層530に配置している。前第二階層530内の各アクティビティの前に接続できるアクティビティとして6つ抽出し、前第三階層520に配置している。これを繰り返し、入力元となるアクティビティが出現するまで、各アクティビティの前に接続できるアクティビティを抽出する。
アクティビティAの前に接続できるアクティビティBを抽出するのに、各アクティビティの属性情報を利用する。具体的には、アクティビティAの入力ファイル種別が、アクティビティBの出力ファイル種別内に含まれていることを条件として抽出すればよい。さらに、アクティビティAの入力できるパラメータが、アクティビティBで出力され得る属性情報に含まれていることを条件として付加して抽出してもよい。
逆方向に、図5(a)の例に示すように、アクティビティ340dが選択された場合、図5(b)の例に示すように、アクティビティ340dを中心のアクティビティ550として、アクティビティ550の後に接続できるアクティビティ群を抽出し、後第一階層560に配置する。図5(b)の例では、アクティビティ550の後に接続できるアクティビティとして4つ抽出し、後第一階層560に配置している。次に、後第一階層560内の各アクティビティの後に接続できるアクティビティ群を抽出し、後第二階層570に配置する。図5(b)の例では、後第一階層560内の各アクティビティの後に接続できるアクティビティとして5つ抽出し、後第二階層570に配置している。後第二階層570内の各アクティビティの後に接続できるアクティビティとして6つ抽出し、後第三階層580に配置している。これを繰り返し、出力先となるアクティビティが出現するまで、各アクティビティの後に接続できるアクティビティを抽出する。
アクティビティCの後に接続できるアクティビティDを抽出するのに、各アクティビティの属性情報を利用する。具体的には、アクティビティCの出力ファイル種別が、アクティビティDの入力ファイル種別内に含まれていることを条件として抽出すればよい。さらに、アクティビティCの出力され得る属性情報が、アクティビティDで入力できるパラメータに含まれていることの条件として付加して抽出してもよい。
そして、表示制御モジュール139は、その抽出したアクティビティを多階層で表した関連図を作成し、表示する。なお、表示の際、起点となるアクティビティから抽出した前後複数階層のアクティビティの関係性がわかるよう、接続できるアクティビティ間を、線で繋いで表示する。
例えば、上述の記述を使って説明する。
起点のアクティビティから抽出された(起点のアクティビティのすぐ前に配置できる)アクティビティA、更にアクティビティAのすぐ前に配置できるアクティビティBがあった場合、起点のアクティビティとアクティビティA、アクティビティAとアクティビティBを、それぞれ点線で繋いで表示する。
同様に、起点のアクティビティから抽出された(起点のアクティビティのすぐ後に配置できる)アクティビティC、更にアクティビティCのすぐ後に配置できるアクティビティDがあった場合、起点のアクティビティとアクティビティC、アクティビティCとアクティビティDを、それぞれ点線で繋いで表示する。
・基点となるアクティビティより左側は、そのアクティビティより前方に接続可能なアクティビティを階層的に表示する。
・基点となるアクティビティより右側は、そのアクティビティより後方に接続可能なアクティビティを階層的に表示する。
基点となるアクティビティにおいて、
・入力可能ファイル種別(例えば、ファイル拡張子のリスト等)
・実行される処理内容(例えば、アクティビティ名のリスト等)
・出力可能ファイル種別(例えば、ファイル拡張子のリスト等)
・出力可能属性データ(例えば、属性名と属性の型(string,list,numetric等)のリスト)
を表示する。
具体的には、図5(c)の例に示すように、フロー生成画面500の中央に、アクティビティ550を表示し、ステップ2で抽出した各層のアクティビティ群を表示する。具体的には、アクティビティ550の左側に前第一階層540の領域を設定し、その中に5つのアクティビティを表示し、前第一階層540の左側に前第二階層530の領域を設定し、その中に7つのアクティビティを表示し、前第二階層530の左側に前第三階層520の領域を設定し、その中に6つのアクティビティを表示する。
逆方向に、アクティビティ550の右側に後第一階層560の領域を設定し、その中に4つのアクティビティを表示し、後第一階層560の右側に後第二階層570の領域を設定し、その中に5つのアクティビティを表示し、後第二階層570の右側に後第三階層580の領域を設定し、その中に6つのアクティビティを表示する。
そして、アクティビティ550の近隣にアクティビティ属性情報表示領域552を表示する。アクティビティ属性情報表示領域552は、アクティビティ550の属性情報を表示する領域であり、例えば、アクティビティ属性情報表示領域552において、「入力可能ファイル種別」は「tiff,xdw」であり、「実行可能な処理」は「文字認識処理」であり、「出力可能ファイル種別」は「tiff,xdw」であり、「出力可能属性データ」は「文字認識処理結果(string)」であることを示している。アクティビティ属性情報表示領域552内の属性情報は、アクティビティ属性登録画面400によって定義されたものであり、フロー部品仕様記憶モジュール125に記憶されている。
(ステップ4)
選択した「基点となるアクティビティ」だけでは、
・やりたい事が出来ない場合、
又は、
・やりたい事はできるが、
・入力元、出力先を決めたり
・その他、補足的にやりたい機能を見つけたり
したい場合は、ユーザーは、前方又は後方にある別のアクティビティを選択する操作を行う。
前方のアクティビティを1つ選択すると、その選択したアクティビティから、基点となるアプティビティまでのパスをハイライト表示し、そのパスである部分フローにおける入力可能ファイル種別、実行可能な処理、出力可能ファイル種別、出力可能属性データを参照できるように表示する。
具体的には、図6A(a1)の例に示すように、アクティビティ550の前方にあるアクティビティ522がユーザーによって選択されたとする。アクティビティ522からアクティビティ550へのパスを抽出する。そのパスは、アクティビティ522、アクティビティ532、アクティビティ542、アクティビティ550となる。つまり、フロー生成画面500内のアクティビティ522がユーザーの操作によって選択された場合、アクティビティ522からアクティビティ550へのパスを生成するために、前第二階層530からアクティビティ532、前第一階層540からアクティビティ542が抽出されて、アクティビティ522、アクティビティ532、アクティビティ542、アクティビティ550のパスが形成されることになる。
そして、このパスを構成するアクティビティ群をハイライト表示する。ハイライト表示として、パスに含まれているアクティビティを、パスに含まれていないアクティビティと区別できるように表示できていればよい。区別する表示形態として、例えば、形状、模様、色彩、動的に変化させること、点滅、又は、これらの組み合わせであってもよい。
そして、図6A(a2)の例に示すように、アクティビティ522からアクティビティ550へのパス(部分フロー)についての属性情報を、部分フロー属性情報表示領域652に表示する。具体的には、部分フロー属性情報表示領域652において、「入力可能ファイル種別」は「ff,bmp,pngti,jpg」であり、「実行可能な処理」は「フォーマット変換→文書名変換→イメージ加工→文字認識処理」であり、「出力可能ファイル種別」は「tiff,xdw」であり、「出力可能属性データ」は「文書フォーマット名(string)、回転角度(string)、文字認識処理結果(string)」であることを示している。「入力可能ファイル種別」は、部分フローの先頭にあるアクティビティ522の「入力可能ファイル種別」を用いればよい。「実行可能な処理」は、部分フローを構成しているアクティビティ522、アクティビティ532、アクティビティ542、アクティビティ550の「実行可能な処理」を合成すればよい。「出力可能ファイル種別」は、部分フローの最後にあるアクティビティ550の「出力可能ファイル種別」を用いればよい。「出力可能属性データ」は、部分フローを構成しているアクティビティ522、アクティビティ532、アクティビティ542、アクティビティ550の「出力可能属性データ」を組み合わせればよい。
具体的には、図6B(b1)の例に示すように、アクティビティ550の後方にあるアクティビティ572がユーザーによって選択されたとする。アクティビティ550からアクティビティ572へのパスを抽出する。そのパスは、アクティビティ550、アクティビティ562、アクティビティ572となる。つまり、フロー生成画面500内のアクティビティ572がユーザーの操作によって選択された場合、アクティビティ550からアクティビティ572へのパスを生成するために、アクティビティ572からアクティビティ562、アクティビティ562からアクティビティ550が抽出されて、アクティビティ550、アクティビティ562、アクティビティ572のパスが形成されることになる。
そして、図6A(a2)と同様に、このパスを構成するアクティビティ群をハイライト表示する。
そして、図6B(b2)の例に示すように、アクティビティ550からアクティビティ572へのパス(部分フロー)についての属性情報を、部分フロー属性情報表示領域654に表示する。具体的には、部分フロー属性情報表示領域654において、「入力可能ファイル種別」は「png,jpg」であり、「実行可能な処理」は「文字認識解析→Barcode解析→フォルダ保存」であり、「出力可能ファイル種別」は「tiff,xdw」であり、「出力可能属性データ」は「文字認識処理結果(text)、Barcode解析結果(text)、出力ファイル名(text)、出力先(text)」であることを示している。「入力可能ファイル種別」は、部分フローの先頭にあるアクティビティ550の「入力可能ファイル種別」を用いればよい。「実行可能な処理」は、部分フローを構成しているアクティビティ550、アクティビティ562、アクティビティ572の「実行可能な処理」を合成すればよい。「出力可能ファイル種別」は、部分フローの最後にあるアクティビティ572の「出力可能ファイル種別」を用いればよい。「出力可能属性データ」は、部分フローを構成しているアクティビティ550、アクティビティ562、アクティビティ572の「出力可能属性データ」を組み合わせればよい。
フローに使用したいアクティビティを選択し、[確定]ボタンが選択されると、部分フローが作成されて、更に、その前後のアクティビティ候補を表示する。例えば、図6C(c1)の例に示すように、アクティビティ522からアクティビティ550へのパスを採用するために、ユーザーによって選択された場合、そのパスに属しているアクティビティだけを表示し、それらのアクティビティと同じ階層に属していたアクティビティをフロー生成画面500から削除する。これによって、アクティビティ522と同じ階層にあった他のアクティビティ、アクティビティ532と同じ階層にあった他のアクティビティ、アクティビティ542と同じ階層にあった他のアクティビティは、ユーザーにとって見えなくなり、そのパスを構成しているアクティビティだけが見えることになる。
これを繰り返し行っていくことで、フローを生成していく。例えば、図6C(c2)の例に示すように、アクティビティ550の後方にあるアクティビティ572がユーザーによって選択されたとする。アクティビティ550からアクティビティ572へのパスを抽出する。そのパスは、アクティビティ550、アクティビティ562、アクティビティ572となる。つまり、フロー生成画面500内のアクティビティ572がユーザーの操作によって選択された場合、アクティビティ550からアクティビティ572へのパスを生成するために、アクティビティ572からアクティビティ562、アクティビティ562からアクティビティ550が抽出されて、アクティビティ550、アクティビティ562、アクティビティ572のパスが形成されることになる。
そして、図6B(b2)と同様に、このパスを構成するアクティビティ群をハイライト表示する。
そして、アクティビティ522からアクティビティ572へのパス(部分フロー)についての属性情報を、部分フロー属性情報表示領域656に表示する。具体的には、部分フロー属性情報表示領域656において、「入力可能ファイル種別」は「tiff,bmp,png,jpg」であり、「実行可能な処理」は「フォーマット変換→文書名変換→イメージ加工→文字認識処理→フォーマット変換→フォルダ保存」であり、「出力可能ファイル種別」は「tiff,xdw,pdf,txt,docx」であり、「出力可能属性データ」は「文書フォーマット名(text)、文書名(text)、回転角度(text)、文字認識処理結果(text)」であることを示している。「入力可能ファイル種別」は、部分フローの先頭にあるアクティビティ522の「入力可能ファイル種別」を用いればよい。「実行可能な処理」は、部分フローを構成しているアクティビティ522、アクティビティ532、アクティビティ542、アクティビティ550、アクティビティ562、アクティビティ572の「実行可能な処理」を合成すればよい。「出力可能ファイル種別」は、部分フローの最後にあるアクティビティ572の「出力可能ファイル種別」を用いればよい。「出力可能属性データ」は、部分フローを構成しているアクティビティ522、アクティビティ532、アクティビティ542、アクティビティ550、アクティビティ562、アクティビティ572の「出力可能属性データ」を組み合わせればよい。
・ユーザーは、自分のやりたいことが、1つのアクティビティで実現できるのか、複数のアクティビティの組合せでないと実現できないのか、についてわかるようになる。つまり、1つのアクティビティで実現できる場合は、最初に選択したアクティビティは単独のままであり、前方及び後方に接続するアクティビティがない。複数のアクティビティの組合せでないと実現できない場合は、最初に選択したアクティビティの前方又は後方に接続するアクティビティが存在している。
・ユーザーは、やりたい機能の前後に、どの機能と連携してフローを作成していけばよいのか、についてわかるようになる。つまり、基点となるアクティビティに接続可能なアクティビティが表示されているので、それを選択することでフローを生成することができるようになる。
これにより、ユーザーは、自分のやりたい事を、フローとして生成することができるようになる。また、ユーザーは、全てのアクティビティの内容や、フローの作りの全体を把握しなくても、やりたい事からフローの生成を開始できるようになる。
基点となるアクティビティと、選択されたアクティビティに、至るまで、複数のパスが存在する場合は、それらパスをハイライト表示するとともに、パスのリストを表示する。パスの表示順序として、例えば、よく使用する順等で表示してもよい。パスリストからユーザーが選択したパスの部分フローは、選択ハイライト表示し、その部分フローにおける入力可能ファイル種別、実行可能な処理、出力可能ファイル種別、出力可能属性データを表示する。
図7(a)では、基点としてのアクティビティ550があり、アクティビティ526が選択された場合に、2つのパスがあることを示している例である。具体的には、アクティビティ526、アクティビティ532、アクティビティ542、アクティビティ550のパスと、アクティビティ526、アクティビティ536、アクティビティ548、アクティビティ550のパスの2つである。そして、選択したアクティビティ526の近辺に経路選択領域710を表示する。経路選択領域710は、アクティビティ526からアクティビティ550に行くには、「経路1」、「経路2」があり、いずれかを選択可能であることを示している。
図7(b)では、経路選択領域710内の「経路2」が選択された場合に、部分フロー属性情報表示領域752を表示する例を示している。部分フロー属性情報表示領域752において、「経路2」の属性情報として、「入力可能ファイル種別」は「ff,bmp,png,jpg」であり、「実行可能な処理」は「フォーマット変換→文書名変換→イメージ加工→文字認識処理」であり、「出力可能ファイル種別」は「tiff,xdw」であり、「出力可能属性データ」は「文書フォーマット名(string)、回転角度(string)、文字認識処理結果(string)」であることを示している。
選択されたパスを新たなアクティビティとして選択可能にし、一般的なアクティビティと中身がパスであるアクティビティは異なる表示形態で表示する。アクティビティとして選択可能にしたパスは、完成したフローであってもよいし、完成前の部分フローであってもよい。
(ステップ7)
図8(a)の例に示すように、前述の処理を繰り返して部分フローを組み上げて確定させ、全体のフローとなる完成フロー810を生成する。
図8(b)の例に示すように、部分フロー、および、完成フロー810は、フロー記憶モジュール130に登録され、アクティビティ一覧画面850に表示される。
アクティビティ一覧画面850内のアクティビティ一(パス)890fは、図8(a)の例で形成された、部分フロー、または、完成フロー810もアクティビティ一として選択可能としている。ただし、アクティビティ一(パス)890fの表示形態は、アクティビティ一890aのような他のアクティビティの表示形態とは異なるようにしている。具体的には、アクティビティ一(パス)890fは、押しボタンのような立体的な形状に見せるための模様を付している。なお、一般的なアクティビティ一890aは、単独のアクティビティであり、フローではない。アクティビティ一(パス)890fは、複数のアクティビティによって構成されているフローである。
アクティビティの仕様に関する属性情報が変更された場合は、その変更された属性情報にしたがって、アクティビティに接続される他のアクティビティを抽出し直して、表示し直す例を示している。
まず、図9(a)の例に示すように、ユーザーの操作にしたがって、アクティビティ950aの属性情報を変更する。例えば、アクティビティ950aが選択され、属性情報を変更するための操作を受け付けた場合に、アクティビティ950aの属性情報を表示するアクティビティ属性情報表示領域952を表示する。アクティビティ属性情報表示領域952は、図4の例に示したアクティビティ属性登録画面400と同等のものである。アクティビティ属性情報表示領域952内を操作して、属性情報の変更として、例えば、複数のパラメータがある場合に、パラメータの数を減少させること等がある。例えば、「入力可能ファイル種別」として「tiff,Jpeg」であったところを「tiff」に限定する等の変更が行われる。また、「出力可能属性データ」として「(a,string),(b,list),(c,numetric)」であったところを「(a,string)」に限定する等の変更が行われる。
アクティビティ950bは、図9(a)の例でアクティビティ950aのアクティビティ属性情報表示領域952内の処理パラメータをユーザーの操作にしたがって変更した結果、図9(b)の例に示すように、アクティビティ950bと接続可能なアクティビティBが変わり(具体的には、前第一階層940、後第一階層960内のアクティビティ)、さらにそのアクティビティBが変わることによって、そのアクティビティBと接続可能なアクティビティCが変わり(具体的には、前第二階層930、後第二階層970内のアクティビティ)、以下同様に接続可能なアクティビティが変わることになる。具体的には、属性情報の変更前では、アクティビティ950aの前方に接続可能なアクティビティとして前第一階層940内には5つあったが、図9(b)の例に示すように、属性情報の変更後では、アクティビティ950aに接続可能なアクティビティとして前第一階層940内では3つに減少している。さらに、それに伴って、前第二階層930内の7つのアクティビティが、属性情報の変更後では、前第二階層930内では5つのアクティビティに減少している。また、属性情報の変更前では、アクティビティ950aの後方に接続可能なアクティビティとして後第一階層960内には3つあったが、図9(b)の例に示すように、属性情報の変更後では、アクティビティ950aに接続可能なアクティビティとして後第一階層960内では2つに減少している。さらに、それに伴って、後第二階層970内の5つのアクティビティが、属性情報の変更後では、後第二階層970内では2つのアクティビティに減少している。同様に、後第三階層980についても減少している。逆に、各階層でアクティビティが増加する場合もあるし、各階層のアクティビティそのものが変わることもある。
このように、ユーザーが実際に使用するパラメータに限定した関係図から、部分フローを確認、確定できるようになる。ひいては、ユーザーがやりたいことに即したフローを作成できるようになる。
基点となるアクティビティA以外のアクティビティBについて、過去の利用回数が多いアクティビティBほどアクティビティAに近くなるように、アクティビティBを表示する例を示すものである。利用回数として、現在のユーザーによって過去に生成されたフローにおける利用回数Xと、過去に生成された全体のフローにおける利用回数Yがあり、利用回数Xと利用回数Yに分けて、アクティビティBを表示してもよい。
具体的には、ユーザー自身で登録したフローの登録履歴情報、他のユーザーも登録したフローの登録履歴情報を用いればよい。
図10の例に示すように、(1)登録されている全体のフローでよく連携されて使用されているアクティビティ(アクティビティ1033、アクティビティ1042)、(2)自分がよく連携して使用しているアクティビティ(アクティビティ1043、アクティビティ1063、アクティビティ1064)を合わせて、フロー生成画面1000内に表示する。そして、前者をピンク色、後者を肌色のように、両者を区別できるように表示している。また、何回連携して使用されているかも、数値で表示する。
図10に示す例では、前第一階層1040にあるアクティビティ1042はアクティビティ1050に連携して使用されたことが全体のフローで過去に2回あり、前第一階層1040にあるアクティビティ1043はアクティビティ1050に連携して使用されたことがユーザー自身のフローで過去に3回あり、前第二階層1030にあるアクティビティ1033はアクティビティ1050に連携して使用されたことが全体のフローで過去に1回あり、後第一階層1060にあるアクティビティ1063はアクティビティ1050に連携して使用されたことがユーザー自身のフローで過去に3回あり、後第一階層1060にあるアクティビティ1064はアクティビティ1050に連携して使用されたことがユーザー自身のフローで過去に2回あることを示している。
また、ユーザーがそれらのアクティビティに気付きやすく、また選択しやすくするために、何度も連携して使用されているアクティビティ(つまり、回数の大きいアクティビティ)は基点であるアクティビティ1050の近くに、連携回数が小さくなるにつれてアクティビティ1050から徐々に離れて表示させる。また、アクティビティ1050より上側に、全体のフローに含まれるアクティビティ、アクティビティ1050より下側に、ユーザー自身が作成したフローに含まれるアクティビティというように表示させている。更に、何度も連携して使用されているアクティビティほど、画面上に表示するそのアクティビティのアイコンを目立つデザインのもので表示したり、アイコンそのものの大きさを変えて表示したりしてもよい。例えば、何度も連携して使用されるアクティビティのアイコンは大きく、ほとんど使用されないアクティビティのアイコンは小さく表示する。
より詳細に説明する。例えば、まず、第一階層において、過去に生成された全体のフローにおける利用回数Yの高いものはアクティビティ1050の近くに、その利用回数Yの低いものはアクティビティ1050の遠くに配置するようにしてもよい。そのうえで、同じ回数のものがあれば、現在のユーザーによって過去に生成されたフローにおける利用回数Xの高いものは、大きなアイコンで、低いものは小さなアイコンで表示するようにしてもよい。
次に、第二階層において、第一階層のアイコンと接続するごとに、まずは、過去に生成された全体のフローにおける利用回数Yの高いものはアクティビティ1050の近くに、その利用回数Yの低いものは遠くに配置するようにしてもよい。そのうえで、同じ回数のものがあれば、現在のユーザーによって過去に生成されたフローにおける利用回数Xの高いものは、大きなアイコンで、低いものは小さなアイコンで表示するようにしてもよい。
なお、ここで「利用回数の高い」、又は、「利用回数の低い」の判断として、例えば、予め定められた閾値より高い、又は、低いとしてもよいし、利用回数順にソートし、予め定められた順位より高い、又は、低いとしてもよい。また、「大きなアイコン」、「小さなアイコン」とは、予め定められた大きさよりも大きい、又は、小さいとしてもよいし、予め定められたアクティビティのアイコン(例えば、アクティビティ1050、大きさを変更する前のアクティビティのアイコン等)と比較して大きい、又は、小さいとしてもよい。
さらに、アクティビティ1050から離れた階層ほど、アクティビティのアイコンの大きさを小さくするようにしてもよい。例えば、アクティビティ1050よりも後(図10では右側)のアクティビティにおいては、第n階層のアクティビティのアイコンの大きさは、第n−1階層のアクティビティアイコンの大きさの95%の大きさとしてもよい。このようにすることによって、階層が深く、あまり使用されないものは、小さいアイコンで表示されるため、より選択しやすくなる。
又は、逆に、上記の表示ルールを、利用頻度の低いものほど、近くに、かつ、大きく表示するように切り替えることができるようにしてもよい。これによって、これまで気付かなったアクティビティが選択できるようになる。
図8の例で示したように、パスをアクティビティとして選択可能にしている。図11の例では、そのアクティビティ(パス)を選択可能に表示した例を示している。
図11(a)に示す例では、既に登録済のフローも、他のアクティビティと同様、インプットとアウトプットを持つので、関連図に含めてフロー生成画面1100内に表示する。つまり、アクティビティ1150の前方に接続可能なアクティビティ(パス)1044aがあることを示している。
図11(b)に示す例では、アクティビティ一属性情報表示領域1149を表示することによって、アクティビティ1150の前方に接続可能なアクティビティ(パス)1044aとして、「フロー」で定義された内容を含む属性情報が確認できる。アクティビティ一属性情報表示領域1149では、例えば、アクティビティ(パス)1044aの属性情報として「入力可能ファイル種別」は「ff,bmp,png,jpg」であり、「実行可能な処理」は「フォーマット変換→文書名変換→イメージ加工→文字認識処理」であり、「出力可能ファイル種別」は「tiff,xdw」であり、「出力可能属性データ」は「文書フォーマット名(string)、回転角度(string)、文字認識処理結果(string)」であることを示している。
図11(c)に示す例では、もちろんのことながら、登録済のフローも、他のアクティビティと同様、基点となるアクティビティとして選択できる。つまり、アクティビティ(パス)1044bを基点として、アクティビティ(パス)1044bの前後に接続できるアクティビティをフロー生成画面1100内に表示している。
完成したフロー、部分フローも、アクティビティ同様、基点となるアクティビティとして指定できる。もちろんのことながら、他のアクティビティの前方又は後方に接続できるものとして関連図に含めることができる。アクティビティの種類を増やすことができ、より簡単にやりたい事を実現するフローを生成できるようにしている。
図12に示す例では、基点となるアクティビティがフローの中間にある場合、フローの先頭になる場合、フローの最後になる場合を示している。基点となるアクティビティがフローの先頭になる場合は、そのアクティビティの前方に接続するアクティビティがない状態であり、入力元のアクティビティという。基点となるアクティビティがフローの最後になる場合は、そのアクティビティの後方に接続するアクティビティがない状態であり、出力先のアクティビティという。
図12(a)の例では、基点となるアクティビティが入力元や出力先のいずれでもない場合、接続可能な入力先候補のリストである入力元アクティビティリスト1210、出力先候補のリストである出力先アクティビティリスト1290を表示していることを示している。入力元アクティビティリスト1210には、入力元アクティビティ1211、入力元アクティビティ1212、・・・、入力元アクティビティ121Nが表示されている。出力先アクティビティリスト1290には、出力先アクティビティ1291、出力先アクティビティ1292、・・・、出力先アクティビティ129Mが表示されている。
そのリストは、
・選択されたアクティビティとの組合せでよく使用される順
・使用回数の多い順
・選択されたアクティビティとの組合せで処理経路の短い順
・選択されたアクティビティとの組合せで処理経路の長い順
等でソートして表示する。ソート順は予め一意に決めておいてもよいし、ユーザーがUIで指定した順でソートして表示してもよい。
図12(b)の例では、基点となるアクティビティが入力元の場合、接続可能な出力先候補のリストである出力先アクティビティリスト1290を表示していることを示している。
そのリストは、
・選択された入力元のアクティビティとの組合せでよく使用される順
・使用回数の多い順
・選択されたアクティビティとの組合せで処理経路の短い順
・選択されたアクティビティとの組合せで処理経路の長い順
等でソートして表示する。ソート順は予め一意に決めておいてもよいし、ユーザーがUIで指定した順でソートして表示してもよい。
図12(c)の例では、基点となるアクティビティが出力先の場合、接続可能な入力候補のリストである出力先アクティビティリスト1290を表示していることを示している。
リストは、
・選択された出力先のアクティビティとの組合せでよく使用される順
・使用回数の多い順
・選択されたアクティビティとの組合せで処理経路の短い順
・選択されたアクティビティとの組合せで処理経路の長い順
等でソートして表示する。ソート順は予め一意に決めておいてもよいし、ユーザーがUIで指定した順でソートして表示してもよい。
UIモジュール1335は、図1の例に示したUIモジュール135の具体的例であり、アクティビティ登録モジュール1342、UIデータ生成モジュール1344、関連図生成モジュール1346、フロー情報生成モジュール1348、フロー生成モジュール1350は、図1の例に示したフロー生成制御モジュール140の具体的例であり、DB1315は、図1の例に示したデータメモリ115の具体的例である。
DB1315は、アクティビティに関する情報と、生成されたフローに関する情報を管理する。
アクティビティに関する情報には、例えば、下記情報を含む。
・アクティビティを本情報処理装置100で一意に識別するための識別情報(アクティビティID)
・アクティビティの名称
・アクティビティの入力可能なファイル種別
・アクティビティの出力可能なファイル種別
・アクティビティの出力可能なデータの属性情報
この他に、アクティビティの入力可能なパラメータを含めてもよい。
また、フローに関する情報には、例えば、下記情報を含む。
・フローを本情報処理装置100で一意に識別するための識別情報(フローID)
・フローを構成するアクティビティIDのリスト
UIモジュール1335は、ユーザーへの各種情報の表示と、ユーザーからの操作を受け付ける機能を有している。
アクティビティ登録モジュール1342は、アクティビティをDB1315(特にフロー部品仕様記憶モジュール125)に登録する機能を有している。登録されたアクティビティは、フローを構成する1コンポーネントとして利用できるようになる。
アクティビティの登録時、そのアクティビティと関連付けて、下記の属性情報も登録する。
a)アクティビティで処理できる(又は、入力できる)ファイル種別(例えば、ファイル拡張子のリスト)
b)処理内容(例えば、処理の説明文)
c)アクティビティで出力されうるファイル種別(例えば、ファイル拡張子のリスト)
d)アクティビティで出力されうる属性情報(例えば、属性名と、属性の型(string,numeric等))
このうち、a)、b)、c)の属性情報は必須である。さらに、a)〜d)の他に、アクティビティで入力できるパラメータを加えてもよい。
また、UIデータ生成モジュール1344は、アクティビティを登録するために必要な画面データを生成し、表示装置187に表示させる。
また、UIデータ生成モジュール1344は、関連図生成モジュール1346、フロー情報生成モジュール1348、フロー生成モジュール1350等で生成されたデータを表示装置187上に表示するデータとして生成し、表示装置187に表示させる。
フロー情報生成モジュール1348は、表示装置187に表示されている関連図において、基点となるアクティビティに関する情報をDB1315から取得し、属性情報である「フロー参照データ」として生成する機能とともに、関連図上で別のアクティビティが選択されると、基点となるアクティビティと、選択されたアクティビティ間を結ぶフローを、DB1315から抽出し、そのフローについての「フロー参照データ」を生成する機能を有する。
フロー生成モジュール1350は、表示装置187上の関連図において、基点となるアクティビティと、選択されたアクティビティを結んだフローを生成し、生成したフロー情報をDB1315に登録する。
ステップS1402では、アクティビティを登録する。
例えば、図3を用いて前述したアクティビティ一覧画面300にて、新規追加ボタン320が選択され、図4を用いて前述したアクティビティ属性登録画面400で、名前、説明文、入力可能ファイル種別、出力可能ファイル種別、出力可能属性データを設定する。例えば、下記のように設定する。
・名前欄432には、アクティビティの名前を、説明欄434には、アクティビティに関する説明を入力する。
・入力可能ファイル種別欄436には、以下のように設定する。
・tiff,jpeg,bmp,png,pdf,xdw等から、そのアクティビティが処理可能なファイルの拡張子をカンマ(,)で連結して、文字列で指定する。
・すべてのファイルが処理可能であれば、allという文字列で指定する。
・処理可能なファイルが存在しない場合は、空文字で指定する。
・出力可能ファイル種別欄438には、以下のように設定する。
・tiff,jpeg,bmp,png,pdf,xdw等から、そのアクティビティが出力可能なファイルの拡張子をカンマ(,)で連結して、文字列で指定する。
・入力されたファイルの種別と同じファイルの種別で出力するのであれば、allという文字列で指定する。
・出力可能なファイルが存在しない場合は、空文字で指定する。
・出力可能属性データ欄440には、([属性名]:[属性の型(string,numeric等)])を、カンマ(,)で連結して、文字列で指定する。
設定した属性情報は、例えば、登録ボタン425が選択されたタイミングで、アクティビティデータとともに、DB1315に登録する。
例えば、ユーザーの操作にしたがって、図3の例に示したアクティビティ一覧画面300にて、特定のアクティビティ(以降、「基点となるアクティビティ」と記載)を1つ選択する。このとき、例えば、リスト表示したアクティビティにカーソルを合わせると、カーソルの位置にあるアクティビティのID情報から、図4の例に示したアクティビティ属性登録画面400で登録した「説明文」を取得し、画面に表示してもよい。
基点となるアクティビティの情報から、例えば、下記いずれか1つ以上の項目からなる「フロー参照データ」を作成し、表示装置187上に表示する。
・基点となるアクティビティに入力できるファイル種別(例えば、ファイル拡張子のリスト)
・基点となるアクティビティでの処理内容(例えば、アクティビティの名前、又は、説明)
・基点となるアクティビティが出力するファイル種別(例えば、ファイル拡張子のリスト)
・基点となるアクティビティが出力する属性情報(例えば、属性名と、属性の型(string,numeric等))
表示装置187上に表示された関連図上で、基点となるアクティビティ以外のアクティビティが指定されると、基点となるアクティビティと、指定されたアクティビティ間のフローに関する属性情報である「フロー参照データ」を表示する。
例えば、下記処理を行って「フロー参照データ」を表示する。
<<パターン1>>
基点となるアクティビティより、左側(前方に配置可能な)のアクティビティが指定されると、指定されたアクティビティから、基点となるアクティビティに至るまでの、アクティビティ情報を、ステップS1406で生成した関係図を元に、DB1315から取得し、表示装置187上にハイライト表示する。
そして、
・指定されたアクティビティの入力可能なファイル種別(例えば、拡張子)のリスト
・指定されたアクティビティから、基点なるアクティビティまでの、処理内容(例えば、アクティビティの名前)のリスト
・基点となるアクティビティから出力され得るファイル種別(例えば、拡張子)のリスト
・指定されたアクティビティから、基点となるアクティビティに至る全てのアクティビティで出力可能な属性「属性名と、属性の型(例:string,numeric等)」のリスト
を「フロー参照データ」として、表示装置187上に表示する。
基点となるアクティビティより、右側(後方に配置可能な)のアクティビティが指定されると、基点となるアクティビティから、指定されたアクティビティに至るまでの、アクティビティ情報のフロー(部分フロー)を、ステップS1406で生成した関係図を元に、DB1315から取得し、表示装置187上にハイライト表示する。
そして、
・基点となるアクティビティの入力可能なファイル種別(例えば、拡張子)のリスト
・指定されたアクティビティから、指定されたアクティビティまでの、処理内容(例えば、アクティビティの名前)のリスト
・指定されたアクティビティから出力され得るファイル種別(例えば、拡張子)のリスト
・基点となるアクティビティから、指定されたアクティビティに至る全てのアクティビティで出力可能な属性「属性名と、属性の型(例えば、string,numeric等)」のリスト
を「フロー参照データ」として、表示装置187上に表示する。
そして、ユーザーが「経路リスト」で選択した“経路”に該当する部分フローを、ステップS1406で生成した関係図を元に、DB1315から取得し、選択ハイライト表示するとともに、「フロー参照データ」を表示装置187上に表示する。
ユーザーは、ステップS1410で表示される「フロー参照データ」を参照しながら、使用したい部分フローが見つかったら、ユーザーは、例えば、右クリックメニューで表示される[確定]を選択して、フローを作成していく。
なお、一旦確定した部分フローも、ユーザーは、例えば、右クリックメニューで表示される[確定解除]を選択して、確定解除できるように構成してもよい。
ステップS1412でフローを確定して、登録したいフローが定義できたら、ユーザーは、例えば、右クリックメニューで表示される[登録]を選択し、フローをDB1315に登録する。例えば、フロー登録画面にて、名前と説明が設定されてOKボタンが選択されると、フロー登録情報テーブル1600のようなデータをDB1315に登録する。図16は、フロー登録情報テーブル1600のデータ構造例を示す説明図である。フロー登録情報テーブル1600は、アクティビティID欄1605、名前欄1610、説明欄1615、フローデータ欄1620を有している。アクティビティID欄1605は、アクティビティIDを記憶している。名前欄1610は、そのアクティビティの名前を記憶している。説明欄1615は、そのアクティビティの説明を記憶している。フローデータ欄1620は、フローデータを記憶している。
フロー登録情報テーブル1600は、例えば、アクティビティID欄1605に「GUID X」、名前欄1610に「フロー1」、説明欄1615に「フォーマット変換→文書名変換→イメージ加工→文字認識処理→((フォーマット変換→フォルダ保存),(zip圧縮→→フォルダ保存))」、フローデータ欄1620に「GUID1,GUID3,GUID2,GUID4,((GUID1,GUID5),(GUID7,GUID5))」を記憶している。
ステップS1418では、フローは完成したか否かを判断し、完成した場合は処理を終了し(ステップS1499)、それ以外の場合はステップS1410へ戻る。
ステップS1702では、基点となるアクティビティとして選択されたアクティビティのIDと、入力可能ファイル種別、出力可能ファイル種別を、DB1315より抽出する。
ステップS1704では、基点となるアクティビティの入力可能ファイル種別を、出力可能ファイル種別として持つアクティビティのIDと、入力可能ファイル種別を、DB1315から検索して全て抽出する。
ステップS1706では、抽出したアクティビティの入力可能ファイル種別を、出力可能なファイル種別として持つアクティビティのIDと、入力可能ファイル種別を、DB1315から検索して全て抽出する。
ステップS1708では、全てのアクティビティを抽出したか否かを判断し、抽出した場合はステップS1710へ進み、それ以外の場合はステップS1706へ戻る。
ステップS1712では、抽出したアクティビティの出力可能ファイル種別を、入力可能なファイル種別として持つアクティビティのIDと、出力可能ファイル種別を、DB1315から検索して全て抽出する。
ステップS1714では、全てのアクティビティを抽出したか否かを判断し、抽出した場合はステップS1716へ進み、それ以外の場合はステップS1712へ戻る。
ステップS1802では、表示装置187のUI上で選択されたアクティビティのIDを抽出する。
ステップS1804では、抽出されたアクティビティIDから、基点となるアクティビティに至るアクティビティのIDリストを作成する。
ステップS1806では、リストが複数存在するか否かを判断し、存在する場合はステップS1808へ進み、それ以外の場合はステップS1814へ進む。
ステップS1810では、表示装置187の画面上に表示された経路の1つをユーザーが選択する。
ステップS1812では、ユーザーが選択した経路と関連付けられたリストを抽出する。
ステップS1816では、基点となるアクティビティの出力可能ファイル種別、出力可能属性データを、DB1315から抽出する(b)。
ステップS1820では、“入力可能なファイル種別”に、(c)のデータをセットし、“処理内容”に(a)で作成したデータをセットし、“出力可能ファイル種別”に(b)の出力可能ファイル種別のデータをセットし、“出力可能な属性”に(b)の出力可能属性データをセットし、フロー参照データを作成する。そして、表示装置187にフロー参照データを表示する。
UIモジュール1335は、図1の例に示したUIモジュール135の具体的例であり、アクティビティ登録モジュール1342、UIデータ生成モジュール1344、関連図生成モジュール1346、フロー情報生成モジュール1348、アクティビティ設定モジュール1952、フロー生成モジュール1350は、図1の例に示したフロー生成制御モジュール140の具体的例であり、DB1315は、図1の例に示したデータメモリ115の具体的例である。なお、図13の例で示した構成と同種の部位には同一符号を付し重複した説明を省略する。図19の例で示す構成は、図13の例で示した構成に、アクティビティ設定モジュール1952を付加したものである。
DB1315は、アクティビティ登録モジュール1342、UIデータ生成モジュール1344、関連図生成モジュール1346、フロー情報生成モジュール1348、アクティビティ設定モジュール1952、フロー生成モジュール1350と接続されている。
アクティビティ登録モジュール1342、UIデータ生成モジュール1344、関連図生成モジュール1346、フロー情報生成モジュール1348、アクティビティ設定モジュール1952、フロー生成モジュール1350は、それぞれDB1315、UIモジュール1335と接続されている。
UIモジュール1335は、アクティビティ登録モジュール1342、UIデータ生成モジュール1344、関連図生成モジュール1346、フロー情報生成モジュール1348、アクティビティ設定モジュール1952、フロー生成モジュール1350と接続されている。
図14の例に示したフローチャートのステップS1406で、表示装置187に表示されている各アクティビティにおいて、アクティビティ設定モジュール1952で、処理パラメータを変更すると、変更結果に基づいて、再度ステップS1406を実行し、関連図を作成し直して、表示装置187上に表示し直す。
例えば、前述の関連図を作成していた場合、「基本構成のフローチャート」の図14の例に示したフローチャートのステップS1406で、基点となるアクティビティが「フォルダ出力アクティビティ」だったすると、入力可能ファイル種別は“tiff,jpeg,bmp,png,pdf,xdw”であるため、前段に配置できるアクティビティは、出力可能ファイル種別が“tiff,jpeg,bmp,png,pdf,xdw”である「文書名設定アクティビティ」と「親展ボックス入力アクティビティ」が抽出されて、関連図上に表示される。アクティビティ設定モジュール1952を用いて、「フォルダ出力アクティビティ」に対して入力可能なファイル種別を“tiff,bmp”だけに限定すると、前段に配置できるアクティビティは、出力可能ファイル種別が“tiff,bmp”である「イメージ加工アクティビティ」のみが抽出される。そのため、前方に配置できるアクティビティが変わることになり、関連図を再度作成し直し、表示装置187上に表示し直す。もちろんのことながら、同様の変更は、出力可能ファイル種別、に対しても実施できる。
このとき、操作するアクティビティが関連図上から消えない範囲(つまり、基点となるアクティビティとの関係が無くならない範囲)内でのパラメータ変更のみ許可するよう構成してもよい。例えば、表示装置187に関連図を表示した状態において、「文書名設定アクティビティ」と「親展ボックス入力アクティビティ」は、属性情報である“入力可能ファイル種別”は変更できるが、基点となるアクティビティ「フォルダ出力アクティビティ」と接続できなくなるため、属性情報である”出力可能ファイル種別”は変更できないようにする。
また、アクティビティの属性情報を変更することによって、操作するアクティビティが関連図上から消えるような構成としてもよい。例えば、表示装置187に関連図を表示した状態において、「文書名設定アクティビティ」と「親展ボックス入力アクティビティ」は、変更できる属性情報は“入力可能ファイル種別”だけでなく、基点となるアクティビティである「フォルダ出力アクティビティ」と接続できなくなるが、属性情報である“出力可能ファイル種別”も変更できるようにしてもよい。
ハイライト表示する際、自身が作成したフローに含まれているものか、他のユーザーが作成したフローに含まれているものかを、区別してハイライト表示する。例えば、色を変える、★印や☆印をつけて区別する、フォントを変える、図の形状を変える、等がある。さらに、何回連携して使用されているかについても、数値で表示するようにしてもよい。
ユーザーがハイライトされている箇所に気付きやすく、また選択しやすくするために、例えば、何度も連携して使用されているもの(数値の大きいもの)を、基点となるアクティビティの近辺に、連携頻度が小さくなるにつれて徐々に、基点となるアクティビティから離れて表示させる。また、上半分に、他のユーザーが作成したフローに含まれるもの、下半分に、自身が作成したフローに含まれるものというように表示するようにしてもよい。
図14の例に示したフローチャートのステップS1406で、基点のアクティビティが
・「入力」であれば、関連図を生成する際、「出力」のアクティビティを抽出し、図12(b)の例に示すようなリストを表示する。
・「出力」であれば、関連図を生成する際、「入力」のアクティビティを抽出し、図12(c)の例に示すようなリストを表示する。
・「入力」でも「出力」でもなければ、関連図を生成する際、「入力」と「出力」のアクティビティを抽出し、図12(a)の例に示すようなリストを表示する。
また、リストを表示する際、リストを表示するリスクエストが、図14の例に示したフローチャートのステップS1416の表示すべき“フローデータ”に含まれていた場合、それが何回使用されているかを判定し、使用頻度の高いものからソートして表示してもよい。また、例えば、DB1315において、ユーザー自身が作成したフローに含まれているものか、他のユーザーが作成したフローに含まれているものかを判定し、それぞれ何回連携して使用されているかを判定し、使用頻度の高いものからソートして表示してもよい。
「入力」リスト、「出力」リストのそれぞれにおいて、ユーザーがリスト上の項目を1つ選択すると、「基本構成のフローチャート」の図14の例に示したフローチャートのステップS1410と同様の処理を行って経路を生成し、その経路の属性情報である「フロー参照データ」を表示する。
図22(a)に示す例では、フロー生成画面2200に、部分フロー2210、アクティビティ2212、アクティビティ2214、確定メニュー2220、アクティビティ一(パス)属性情報表示領域を表示している。ここで、確定メニュー2220内の[確定]が選択された場合、図22(b1)の例に示すフロー生成画面2200の状態に遷移する。
図22(b1)に示す例では、フロー生成画面2200に、完成フロー2230、登録メニュー2240を表示する。ここで、登録メニュー2240内の[登録]が選択された場合、図22(b2)の例に示すフロー登録画面2250の状態に遷移する。
図22(b2)に示す例では、フロー登録画面2250に、アクティビティID欄2252、名前欄2254、説明欄2256を表示する。ユーザーは、名前欄2254に名前、説明欄2256に説明を入力する。
そして、図22(c)に示す例のように、登録したフロー(つまり、完成フロー2230)は、アクティビティと同様、アクティビティ一覧画面2260のアクティビティ一覧領域2270内のアクティビティ(フロー)2272として表示され、アクティビティと同じように操作可能となっている。
図23(a)に示す例は、選択しているアクティビティ2350を中心に、接続可能な多階層のアクティビティを参照できるように表示している。この例では、アクティビティ2350の前方に前第一階層2340、前第二階層2330のアクティビティ、後方に後第一階層2360、後第二階層2370のアクティビティを表示している。これらは接続関係がわかるよう、線で結んで表示する。
フロー生成画面2300のウィンドウ内の表示領域は窓のようなもので、ユーザーによるズーム操作を検知すれば、図23(b)に示す例のように、アクティビティ2350の前後1階層(前第一階層2340と後第一階層2360)のみを表示する。また、ユーザーによる俯瞰操作を検知すれば、図23(c)に示す例のように、更に複数の階層を表示する。この例では、アクティビティ2350の前方に前第一階層2340、前第二階層2330、前第三階層2320のアクティビティ、後方に後第一階層2360、後第二階層2370、後第三階層2380のアクティビティを表示している。また、ユーザーの表示領域をずらす操作を検知すれば、図23(d)に示す例のように、アクティビティ2350のより左側の階層のアクティビティが参照できるように表示する。この例では、アクティビティ2350の前方に前第一階層2340、前第二階層2330、前第三階層2320のアクティビティを表示し、その分、後方の後第一階層2360、後第二階層2370が隠れている。もちろんのことながら、ユーザーの表示領域をずらす操作に応じて、左側だけでなく、右側、上側、下側のアクティビティを表示できる。
表示装置187に表示されている関連図上で、基点となるアクティビティと別のアクティビティを指定した場合、指定したアクティビティを含めて基点となるアクティビティとし、関連図を作成しなおして、表示装置187に表示する。例えば、別のアクティビティの指定操作として、ダブルクリック等がある。
表示装置187上で、このように基点となるアクティビティ接続済のアクティビティを指定すると、その指定されたアクティビティに接続可能な前後のアクティビティが表示され、指定されたアクティビティに接続すべきアクティビティを指定できるようにする。
つまり、アクティビティ2450とアクティビティ2455を接続させたことを前提として、アクティビティ2450に接続可能なアクティビティに限った表示にしている。具体的には、図24(a)の例では、前第一階層2440には、7つ以上のアクティビティがあったが、図24(b)の例では、3つのアクティビティに減っている。そして、図24(a)の例では、後第一階層2460には4つのアクティビティがあったが、図24(b)の例では、2つのアクティビティに減っていることを示している。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray(登録商標) Disc)、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digitalの略)メモリーカード等が含まれる。
そして、前記のプログラムの全体又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分若しくは全部であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
105…プロセッサ
110…メモリ
115…データメモリ
120…プログラムメモリ
125…フロー部品仕様記憶モジュール
130…フロー記憶モジュール
135…UIモジュール
137…操作受付モジュール
139…表示制御モジュール
140…フロー生成制御モジュール
185…出力装置
187…表示装置
189…印刷装置
190…受付装置
195…通信装置
198…バス
200…ユーザー端末
210…ユーザー端末
250…フローデータ記憶装置
290…通信回線
Claims (14)
- メモリと一又は複数のプロセッサを備え、
前記メモリは、フローを構成する機能に対応する部品の仕様を記憶しており、
前記プロセッサは、
ユーザーが選択した第1部品を基点として、前記部品の仕様を用いて、該第1部品の前又は後の処理を行う第2部品を抽出し、該第2部品と該第1部品を表示装置に表示するように制御する、
情報処理装置。 - 前記プロセッサは、
第1部品の前の処理を行う第2部品を抽出した後に、さらに、該第2部品の前の処理を行う第3部品を抽出し、該第3部品と該第2部品を前記表示装置に表示するように制御する、
又は、
第1部品の後の処理を行う第2部品を抽出した後に、さらに、該第2部品の後の処理を行う第3部品を抽出し、該第3部品と該第2部品を前記表示装置に表示するように制御する、
請求項1に記載の情報処理装置。 - 前記プロセッサは、
前記基点となる第1部品以外の部品が選択された場合は、該選択された部品から該第1部品までの経路を抽出し、該経路を前記表示装置に表示するように制御する、
請求項2に記載の情報処理装置。 - 前記プロセッサは、
前記経路が選択された場合は、該経路上の部品と同じ階層にある部品を前記表示装置から削除するように制御する、
請求項3に記載の情報処理装置。 - 前記プロセッサは、
前記経路が複数ある場合は、経路を選択できるように、経路リストを前記表示装置に表示するように制御する、
請求項3に記載の情報処理装置。 - 前記プロセッサは、
経路が選択された場合は、該経路に関する情報を前記表示装置に表示するように制御する、
請求項5に記載の情報処理装置。 - 前記プロセッサは、
選択された経路を部品として選択可能にし、部品と該経路は異なる形態で前記表示装置に表示するように制御する、
請求項5に記載の情報処理装置。 - 前記プロセッサは、
前記表示装置に表示された前記部品の仕様に関する情報が変更された場合は、該変更された情報にしたがって、該部品に接続される部品を抽出し直して、該表示装置に表示するように制御する、
請求項1に記載の情報処理装置。 - 前記プロセッサは、
前記基点となる第1部品以外の部品について、過去の利用回数が多い部品ほど該第1部品に近くなるように、該部品を前記表示装置に表示するように制御する、
請求項1に記載の情報処理装置。 - 前記利用回数として、ユーザーによって過去に生成されたフローにおける第1利用回数と、過去に生成された全体のフローにおける第2利用回数があり、
前記プロセッサは、
前記第1利用回数と前記第2利用回数に分けて、前記部品を前記表示装置に表示するように制御する、
請求項9に記載の情報処理装置。 - 前記第2利用回数が同じである場合は、前記第1利用回数が多い部品ほど該部品の表示の大きさを大きくする、
請求項10に記載の情報処理装置。 - 前記基点となる第1部品から数えて第n階層の部品の表示の大きさを、第n−1階層の部品の大きさよりも小さくする、
請求項9から11のいずれか1項に記載の情報処理装置。 - 前記プロセッサは、
基点となる前記第1部品が入力元である場合は、該第1部品の後の処理を行う第2部品を抽出し、該第2部品と該第1部品を表示装置に表示するように制御し、
基点となる前記第1部品が出力先である場合は、該第1部品の前の処理を行う第2部品を抽出し、該第2部品と該第1部品を表示装置に表示するように制御し、
基点となる前記第1部品が入力元以外であって、かつ、出力先以外である場合は、該第1部品の前及び後の処理を行う第2部品を抽出し、該第2部品と該第1部品を表示装置に表示するように制御する、
請求項1に記載の情報処理装置。 - メモリと一又は複数のプロセッサを備えたコンピュータの前記メモリは、フローを構成する機能に対応する部品の仕様を記憶しており、
前記プロセッサに、
ユーザーが選択した第1部品を基点として、前記部品の仕様を用いて、該第1部品の前又は後の処理を行う第2部品を抽出し、該第2部品と該第1部品を表示装置に表示するように制御する、
処理を実行させるための情報処理プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020035186A JP7487494B2 (ja) | 2020-03-02 | 2020-03-02 | 情報処理装置及び情報処理プログラム |
US17/027,718 US11320964B2 (en) | 2020-03-02 | 2020-09-22 | Information processing apparatus and non-transitory computer readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020035186A JP7487494B2 (ja) | 2020-03-02 | 2020-03-02 | 情報処理装置及び情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021140260A true JP2021140260A (ja) | 2021-09-16 |
JP7487494B2 JP7487494B2 (ja) | 2024-05-21 |
Family
ID=77463842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020035186A Active JP7487494B2 (ja) | 2020-03-02 | 2020-03-02 | 情報処理装置及び情報処理プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US11320964B2 (ja) |
JP (1) | JP7487494B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022189282A (ja) * | 2021-06-11 | 2022-12-22 | キヤノン株式会社 | プログラム、情報処理装置、及び情報処理装置の制御方法 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69523423T2 (de) * | 1994-12-16 | 2002-06-27 | Canon Kk | Anzeigeverfahren von hierarchischen Daten und Informationssystem zur Durchführung |
US6462762B1 (en) * | 1999-08-05 | 2002-10-08 | International Business Machines Corporation | Apparatus, method, and program product for facilitating navigation among tree nodes in a tree structure |
US7437676B1 (en) * | 2003-09-30 | 2008-10-14 | Emc Corporation | Methods and apparatus for managing network resources via use of a relationship view |
US7650349B2 (en) * | 2005-01-05 | 2010-01-19 | Microsoft Corporation | Prescribed navigation using topology metadata and navigation path |
JP2006309429A (ja) * | 2005-04-27 | 2006-11-09 | Funai Electric Co Ltd | メニュー項目表示方法 |
US9557887B2 (en) * | 2005-12-27 | 2017-01-31 | International Business Machines Corporation | Integrated multidimensional view of hierarchical objects |
US8103968B2 (en) * | 2006-05-11 | 2012-01-24 | Mediatek Inc. | Apparatus, method, and system for representing a multimedia display |
US8374636B2 (en) * | 2007-05-18 | 2013-02-12 | Shorthand Mobile, Inc. | System and method for enhanced communications via small data rate communication systems |
US8447181B2 (en) * | 2008-08-15 | 2013-05-21 | Tellabs Operations, Inc. | Method and apparatus for displaying and identifying available wavelength paths across a network |
US20110289119A1 (en) * | 2010-05-20 | 2011-11-24 | Sybase, Inc. | Methods and systems for monitoring server cloud topology and resources |
US9323250B2 (en) * | 2011-01-28 | 2016-04-26 | Intouch Technologies, Inc. | Time-dependent navigation of telepresence robots |
JP2013080351A (ja) | 2011-10-03 | 2013-05-02 | Fujitsu Ltd | 図形作成支援プログラムおよび図形作成支援装置 |
JP5962755B2 (ja) | 2012-05-31 | 2016-08-03 | 富士通株式会社 | 運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置 |
US20140372956A1 (en) * | 2013-03-04 | 2014-12-18 | Atigeo Llc | Method and system for searching and analyzing large numbers of electronic documents |
JP6257254B2 (ja) | 2013-10-08 | 2018-01-10 | キヤノン株式会社 | 設計支援装置、設計支援方法、及びプログラム |
US20150106748A1 (en) * | 2013-10-16 | 2015-04-16 | Charles Monte | Document exploration, analysis, and collaboration techniques |
DE102014006700A1 (de) * | 2013-12-23 | 2015-06-25 | Sew-Eurodrive Gmbh & Co Kg | Navigationsvorrichtung und Verfahren zur Darstellung eines Navigationsbaums an einem Anzeigegerät |
US20160224569A1 (en) | 2015-02-03 | 2016-08-04 | General Electric Company | System and method for automatically publishing a web form from a semantic query |
US20180173385A1 (en) * | 2016-12-21 | 2018-06-21 | Siemens Product Lifecycle Management Software Inc. | System and Method for Incremental Diagram Node Expansion |
US11182382B2 (en) * | 2017-04-19 | 2021-11-23 | American International Group, Inc. | Integrated object environment system and method |
US10884598B2 (en) * | 2017-09-29 | 2021-01-05 | Oracle International Corporation | Analytics for a bot system |
US10726052B2 (en) * | 2018-07-03 | 2020-07-28 | Sap Se | Path generation and selection tool for database objects |
US10936163B2 (en) * | 2018-07-17 | 2021-03-02 | Methodical Mind, Llc. | Graphical user interface system |
US11016648B2 (en) * | 2018-10-30 | 2021-05-25 | Johnson Controls Technology Company | Systems and methods for entity visualization and management with an entity node editor |
US20200379786A1 (en) * | 2019-06-03 | 2020-12-03 | Salesforce.Com, Inc. | Keyboard interaction model for software builder canvas nodes |
-
2020
- 2020-03-02 JP JP2020035186A patent/JP7487494B2/ja active Active
- 2020-09-22 US US17/027,718 patent/US11320964B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20210271350A1 (en) | 2021-09-02 |
JP7487494B2 (ja) | 2024-05-21 |
US11320964B2 (en) | 2022-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11178096B1 (en) | Digital processing systems and methods for smart email duplication and filing in collaborative work systems | |
CN108292206B (zh) | 具有易于使用特征的工作流开发系统 | |
CN105706080B (zh) | 扩增并呈现捕获的数据 | |
US8676913B1 (en) | Discussion-topic, social network systems | |
CN101986292B (zh) | 根据图像处理表单的方法和系统 | |
US20180020076A1 (en) | Electronic and mobile platform to create, store and exchange business cards | |
US10255253B2 (en) | Augmenting and presenting captured data | |
US20110178981A1 (en) | Collecting community feedback for collaborative document development | |
US20110055264A1 (en) | Data mining organization communications | |
US20090293059A1 (en) | Automatically connecting items of workflow in a computer program | |
CN106068521A (zh) | 关于合规策略更新的应用的通信状态 | |
CN1806241A (zh) | 数据库查询用户界面 | |
CN1808377A (zh) | 由非专属语言驱动的通用序列图生成器 | |
EP3552376B1 (en) | Card-based information management method and system | |
EP2909739A1 (en) | Methods and systems for managing spreadsheet models | |
US20230010119A1 (en) | Information processing apparatus, information processing system, and information processing method | |
CN114594927A (zh) | 低代码开发方法、装置、系统、服务器及存储介质 | |
CN108027825B (zh) | 在企业中暴露外部内容 | |
US20230186018A1 (en) | Method for generating online report using form structure definition db, and computer program for same | |
JP2021140260A (ja) | 情報処理装置及び情報処理プログラム | |
CN113468117A (zh) | 信息处理装置、其控制方法和存储介质 | |
US20140237446A1 (en) | Systems and methods for organizing, classifying, and discovering automatically generated computer software | |
JP2021163447A (ja) | 情報処理装置、およびその制御方法とプログラム | |
US20090300001A1 (en) | Server apparatus, catalog processing method, and computer-readable storage medium | |
JP5187113B2 (ja) | 情報処理装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230220 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240109 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240213 |
|
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: 20240409 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240422 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7487494 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |