[go: up one dir, main page]

JP2018156596A - Information processing device, information processing program and information processing system - Google Patents

Information processing device, information processing program and information processing system Download PDF

Info

Publication number
JP2018156596A
JP2018156596A JP2017054981A JP2017054981A JP2018156596A JP 2018156596 A JP2018156596 A JP 2018156596A JP 2017054981 A JP2017054981 A JP 2017054981A JP 2017054981 A JP2017054981 A JP 2017054981A JP 2018156596 A JP2018156596 A JP 2018156596A
Authority
JP
Japan
Prior art keywords
workflow
execution
unit
information processing
load
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017054981A
Other languages
Japanese (ja)
Inventor
亜翔 畑中
Tsuguya Hatanaka
亜翔 畑中
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2017054981A priority Critical patent/JP2018156596A/en
Publication of JP2018156596A publication Critical patent/JP2018156596A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

PROBLEM TO BE SOLVED: To efficiently enable the execution of workflow in the case of being able to use a plurality of services to execute the workflow.SOLUTION: An information processing device includes: a first execution part for executing workflow showing a process procedure of one or more processes; a creation part for creating first workflow in which the first execution part executes all processes, and second workflow including external workflow and corresponding to process contents of the first workflow in the case that the first workflow includes a process compatible with the external workflow to be executed by an external second execution part; an acquisition part for acquiring at least a load of the first execution part between a load of the first execution part and the load of the second execution part; and a control part for controlling the execution of the workflow by the execution part. The control part uses the load of the first execution part acquired by the acquisition part to select which is to be executed between the first workflow and the second workflow.SELECTED DRAWING: Figure 6

Description

本発明は、情報処理装置、情報処理プログラムおよび情報処理システムに関する。   The present invention relates to an information processing apparatus, an information processing program, and an information processing system.

従来から、1以上の処理による処理手順を定義したワークフローを用いて業務などを実施することが行われている。例えば、組織体内などで完結するオンプレミスのシステムにおいてワークフローを実行する技術が知られている。また、特許文献1には、インターネット上で提供されるクラウドサービスにおいてワークフローを実行する技術が開示されている。   2. Description of the Related Art Conventionally, operations and the like are performed using a workflow that defines a processing procedure using one or more processes. For example, a technique for executing a workflow in an on-premises system completed within an organization or the like is known. Patent Document 1 discloses a technique for executing a workflow in a cloud service provided on the Internet.

さらに、特許文献2には、オンプレミスのシステムと、クラウドサービスとを併用してワークフローを実行する技術が開示されている。特許文献2では、ワークフローに含まれる処理のうち、クラウドサービスで実行する処理と、オンプレミスのシステムで実行する処理とを識別し、処理の順序を並べ替え、クラウドサービスで実行する処理を纏めるようにしている。特許文献2の技術によれば、クラウドサービスと、オンプレミスのシステム内のデバイスとの間の通信処理を抑制できる。   Furthermore, Patent Document 2 discloses a technique for executing a workflow by using an on-premises system and a cloud service together. In Patent Document 2, among the processes included in the workflow, the processes executed by the cloud service and the processes executed by the on-premises system are identified, the order of the processes is rearranged, and the processes executed by the cloud service are summarized. ing. According to the technique of Patent Document 2, communication processing between a cloud service and a device in an on-premises system can be suppressed.

ところで、例えばオンプレミスのシステムによる第1のサービスと、クラウドサービスといった第2のサービスとで機能が同等のワークフローが提供されている場合がある。従来の技術では、このような場合であっても、第1のサービスと第2のサービスとで、ユーザがワークフローを定義した際に選択したサービスにより提供されるワークフローしか実行できなかった。   By the way, for example, a workflow having the same function may be provided by a first service based on an on-premises system and a second service such as a cloud service. In the conventional technology, even in such a case, only the workflow provided by the service selected when the user defines the workflow can be executed between the first service and the second service.

例えば、ユーザが第1のサービスにより提供されるワークフローを選択し、第1のサービスのシステムにおいてワークフローの処理を実行するサーバで高負荷の処理が実行されている一方で、第2のサービスではワークフローの処理が行われておらず、低負荷状態である場合を考える。従来の技術では、このような場合であっても、ワークフローは、ユーザの選択に従い、第1のサービスのシステムにおけるサーバにおいて実行されていた。そのため、ワークフローによる処理の終了まで長時間を要する、メモリ不足などを引き起こしてシステム全体を停止させてしまう、などの問題が生じるおそれがあった。この問題は、上述した特許文献3においても、解消できていない。   For example, a user selects a workflow provided by a first service, and a high-load process is executed on a server that executes the workflow process in the system of the first service, while a workflow is executed in the second service. Consider the case where the above process is not performed and the load is low. In the conventional technique, even in such a case, the workflow is executed on the server in the first service system according to the user's selection. For this reason, there is a possibility that problems such as a long time required for completion of the processing by the workflow and a stop of the entire system due to a memory shortage may occur. This problem cannot be solved even in Patent Document 3 described above.

本発明は、上記に鑑みてなされたものであって、ワークフローの実行に複数のサービスを利用可能である場合に、ワークフローを効率的に実行可能とすることを目的とする。   The present invention has been made in view of the above, and an object of the present invention is to enable efficient execution of a workflow when a plurality of services can be used for execution of the workflow.

上述した課題を解決し、目的を達成するために、本発明は、1以上の処理の処理手順を示すワークフローを実行する第1の実行部と、全ての処理が第1の実行部で実行される第1のワークフローと、第1のワークフローが外部の第2の実行部で実行される外部ワークフローと互換可能な処理を含む場合に、外部ワークフローを含み、第1のワークフローと処理内容が対応する第2のワークフローと、を作成する作成部と、第1の実行部の負荷および第2の実行部の負荷のうち少なくとも第1の実行部の負荷を取得する取得部と、実行部によるワークフローの実行を制御する制御部と、を備え、制御部は、取得部により取得された第1の実行部の負荷を用いて、第1のワークフローおよび第2のワークフローのうち何れを実行するかを選択する。   In order to solve the above-described problems and achieve the object, the present invention executes a first execution unit that executes a workflow indicating a processing procedure of one or more processes, and all the processes are executed by the first execution unit. The first workflow, and the first workflow includes a process compatible with the external workflow executed by the external second execution unit, the external workflow is included, and the first workflow corresponds to the processing content A creation unit that creates a second workflow, an acquisition unit that acquires at least a load of the first execution unit among a load of the first execution unit and a load of the second execution unit, and a workflow of the execution unit A control unit that controls execution, and the control unit selects which of the first workflow and the second workflow to execute using the load of the first execution unit acquired by the acquisition unit Do

本発明によれば、ワークフローの実行に複数のサービスを利用可能である場合に、ワークフローを効率的に実行可能にできるという効果を奏する。   According to the present invention, when a plurality of services can be used for executing a workflow, the workflow can be efficiently executed.

図1は、実施形態に係る情報処理システムの一例の構成を示すブロック図である。FIG. 1 is a block diagram illustrating a configuration of an example of an information processing system according to the embodiment. 図2は、実施形態に適用可能なサーバの一例のハードウェア構成を示すブロック図である。FIG. 2 is a block diagram illustrating a hardware configuration of an example of a server applicable to the embodiment. 図3は、実施形態に係るオンプレミス用およびクラウド用の各サーバの機能を説明するための一例の機能ブロック図である。FIG. 3 is a functional block diagram illustrating an example of functions of the on-premises and cloud servers according to the embodiment. 図4は、実施形態に係るワークフローの作成処理を示す一例のフローチャートである。FIG. 4 is a flowchart illustrating an example of workflow creation processing according to the embodiment. 図5は、実施形態に係る、互換ワークフローの有無確認の処理を示す一例のフローチャートである。FIG. 5 is a flowchart illustrating an example of a process for confirming the existence of a compatible workflow according to the embodiment. 図6は、実施形態に係る、オンプレミス用のサーバがワークフローを実行する処理を示す一例のフローチャートである。FIG. 6 is a flowchart illustrating an example of processing for executing a workflow by the on-premises server according to the embodiment.

以下に添付図面を参照して、情報処理装置、情報処理プログラムおよび情報処理システムの実施形態を詳細に説明する。図1は、実施形態に係る情報処理システムの一例の構成を示す。図1において、情報処理システム1は、例えばLAN(Local Area Network)によるネットワーク2に接続されるサーバ20と、ネットワーク2からインターネット3を介して接続されるサーバ30とを含む。情報処理システム1は、さらに、ネットワーク2に接続されるMFP(Multi Function Printer)10とパーソナルコンピュータ(PC)40とを含んでもよい。   Exemplary embodiments of an information processing apparatus, an information processing program, and an information processing system will be described below in detail with reference to the accompanying drawings. FIG. 1 illustrates an exemplary configuration of an information processing system according to an embodiment. In FIG. 1, the information processing system 1 includes a server 20 connected to a network 2 by, for example, a LAN (Local Area Network), and a server 30 connected from the network 2 via the Internet 3. The information processing system 1 may further include an MFP (Multi Function Printer) 10 and a personal computer (PC) 40 connected to the network 2.

ネットワーク2は、例えば1つの組織体内で閉じた、所謂オンプレミスのネットワークであり、サーバ20は、オンプレミスのシステムにおけるサービスを提供する。MFP10は、プリンタ機能、スキャナ機能、複写機能、FAX機能など複数の機能を1の筐体で実現した複合機である。PC40は、一般的なパーソナルコンピュータであって、サーバ20にログインしてサーバ20の機能を利用することができる。また、PC40は、MFP10に対して印刷ジョブを送信することもできる。サーバ30は、クラウドネットワーク上のサーバである。   The network 2 is a so-called on-premises network closed in, for example, one organization, and the server 20 provides services in the on-premises system. The MFP 10 is a multifunction machine that realizes a plurality of functions such as a printer function, a scanner function, a copying function, and a FAX function in a single casing. The PC 40 is a general personal computer, and can log in to the server 20 and use the functions of the server 20. The PC 40 can also transmit a print job to the MFP 10. The server 30 is a server on the cloud network.

ここで、サーバ20は、オンプレミスのシステムに対して、その組織の業務のための処理など、その組織に特有の処理を提供する。一方、サーバ30は、クラウドネットワークに接続される、複数の異なるオンプレミスのシステム(組織)が利用するための汎用的な処理を提供する。   Here, the server 20 provides processing unique to the organization, such as processing for the business of the organization, to the on-premises system. On the other hand, the server 30 provides general-purpose processing for use by a plurality of different on-premises systems (organizations) connected to the cloud network.

このような構成において、情報処理システム1は、1以上の処理による処理手順を定義したワークフローによるサービスを提供できる。ワークフロー(WF)は、処理を実行するコンポーネントと、コンポーネントの順序とが定義される。例えば、画像データをPDF(Portable Document Format)データに変換し、変換されたPDFデータを電子メールを用いて所定の宛先に転送する処理が定義されたワークフローを考える。この場合、例えば、当該ワークフローには、PDF変換を行うPDF変換コンポーネントと、データを電子メールで所定の宛先に送信する電子メール送信コンポーネントが定義される。   In such a configuration, the information processing system 1 can provide a service based on a workflow that defines a processing procedure based on one or more processes. In the workflow (WF), components for executing processing and the order of components are defined. For example, consider a workflow in which processing for converting image data into PDF (Portable Document Format) data and transferring the converted PDF data to a predetermined destination using an electronic mail is considered. In this case, for example, a PDF conversion component that performs PDF conversion and an e-mail transmission component that transmits data to a predetermined destination by e-mail are defined in the workflow.

ワークフローの定義およびコンポーネントは、サーバ20および30に保存される。ワークフローは、サーバ20に保存されるコンポーネントのみを用いて定義してもよいし、サーバ30に保存されるコンポーネントのみを用いて定義してもよい。さらに、ワークフローは、サーバ20に保存されるコンポーネントと、サーバ30に保存されるコンポーネントとを混在して定義してもよい。   Workflow definitions and components are stored on servers 20 and 30. The workflow may be defined using only components stored in the server 20 or may be defined using only components stored in the server 30. Furthermore, the workflow may be defined by mixing components stored in the server 20 and components stored in the server 30.

例えば、MFP10は、サーバ20あるいはサーバ30に対してワークフローの実行を要求することができる。例えば、MFP10のスキャナ機能により取得した画像データに対して、上述した、画像データをPDFデータに変換して電子メールにより所定の宛先に転送する処理が定義されたワークフローを適用するものとする。この場合、MFP10においてスキャン機能により画像データを取得し、サーバ20にアクセスして当該ワークフローの実行を要求する。サーバ20は、この要求に応じて当該ワークフローを呼び出して、ワークフローの定義に従い、PDF変換コンポーネントを実行してスキャン機能により取得した画像データをPDFデータに変換し、次に電子メール送信コンポーネントを実行して、PDF変換コンポーネントにより変換されたPDFデータを、電子メールにより、指定された宛先に送信する。   For example, the MFP 10 can request the server 20 or the server 30 to execute a workflow. For example, the above-described workflow in which processing for converting image data into PDF data and transferring it to a predetermined destination by e-mail is applied to the image data acquired by the scanner function of the MFP 10. In this case, the MFP 10 acquires image data by the scan function, accesses the server 20 and requests execution of the workflow. In response to this request, the server 20 calls the workflow, executes the PDF conversion component according to the workflow definition, converts the image data acquired by the scan function into PDF data, and then executes the email transmission component. Then, the PDF data converted by the PDF conversion component is transmitted to a designated destination by electronic mail.

このように、ワークフローを用いることで、様々な機能を容易に実行することが可能である。   As described above, various functions can be easily executed by using the workflow.

また、実施形態に係る情報処理システム1では、オンプレミスのサーバ20においてワークフローを作成する際に、サーバ20が保存するコンポーネントのみを用いたワークフロー(第1のワークフローとする)を作成する。それと共に、実施形態に係る情報処理システム1では、サーバ20においてワークフローを作成する際に、ワークフローに含まれるコンポーネントのうち、クラウドネットワーク上のサーバ30が保存するワークフローまたはコンポーネントと互換性のあるコンポーネントを、サーバ30が保持する当該ワークフローまたはコンポーネントと置き換えたワークフロー(第2のワークフローとする)も作成する。ワークフローの要求元、例えばMFP10には、第1のワークフローが提示される。   In the information processing system 1 according to the embodiment, when a workflow is created in the on-premises server 20, a workflow using only the components stored in the server 20 (referred to as a first workflow) is created. At the same time, in the information processing system 1 according to the embodiment, when creating a workflow in the server 20, components that are compatible with the workflow or components stored in the server 30 on the cloud network among the components included in the workflow. A workflow (referred to as a second workflow) that replaces the workflow or component held by the server 30 is also created. The first workflow is presented to the workflow request source, for example, the MFP 10.

その上で、サーバ20は、当該第1のワークフローの実行時に、少なくともサーバ20におけるワークフロー実行に関する負荷を取得し、取得した負荷に基づき、当該第1のワークフローを実行するか、サーバ30が保存するワークフローまたはコンポーネントを含む第2のワークフローを実行するかを決定する。これにより、実施形態に係る情報処理システム1では、ワークフローの実行に複数のサービスを利用可能な場合に、ワークフローによる処理を効率的に実行可能となる。   In addition, when the first workflow is executed, the server 20 acquires at least a load related to the workflow execution in the server 20 and executes the first workflow based on the acquired load, or the server 30 stores the load. Decide whether to execute a second workflow that includes the workflow or component. Thereby, in the information processing system 1 according to the embodiment, when a plurality of services can be used for execution of the workflow, the processing by the workflow can be efficiently executed.

図2は、実施形態に適用可能なサーバ20の一例のハードウェア構成を示す。図2において、サーバ20は、CPU(Central Processing Unit)2000と、ROM(Read Only Memory)2001と、RAM(Random Access Memory)2002と、ストレージ2003と、通信I/F2004とを含み、これら各部がバス2010により互いに通信可能に接続される。ストレージ2003は、ハードディスクドライブや不揮発性半導体メモリにより構成される保存媒体である。ストレージ2003は、CPU2000が動作するための各種プログラムやデータが格納される。   FIG. 2 shows an exemplary hardware configuration of the server 20 applicable to the embodiment. 2, the server 20 includes a CPU (Central Processing Unit) 2000, a ROM (Read Only Memory) 2001, a RAM (Random Access Memory) 2002, a storage 2003, and a communication I / F 2004. The buses 2010 are communicably connected to each other. The storage 2003 is a storage medium configured by a hard disk drive or a nonvolatile semiconductor memory. The storage 2003 stores various programs and data for the CPU 2000 to operate.

CPU2000は、ストレージ2003やROM2001に予め格納されるプログラムに従い、RAM2002をワークエリアとして用いて動作し、サーバ20の全体の動作を制御する。通信I/F2004は、CPU2000の指示に従い、ネットワーク2を介した通信を制御する。   The CPU 2000 operates using the RAM 2002 as a work area according to a program stored in advance in the storage 2003 or the ROM 2001, and controls the overall operation of the server 20. A communication I / F 2004 controls communication via the network 2 in accordance with an instruction from the CPU 2000.

図2の例では、ストレージ2003がサーバ20に内蔵されているように示されているが、これはこの例に限定されない。例えば、ストレージ2003は、サーバ20に対して直接的、あるいは、ネットワーク2を介して接続される外部保存装置であってもよい。また、図1および図2の例では、サーバ20が1台のコンピュータにより構成されているように示しているが、これはこの例に限定されず、サーバ20は、複数台のコンピュータが分散して動作することで構成してもよい。   In the example of FIG. 2, the storage 2003 is shown as being built in the server 20, but this is not limited to this example. For example, the storage 2003 may be an external storage device connected directly to the server 20 or via the network 2. 1 and 2 show that the server 20 is configured by one computer, this is not limited to this example, and the server 20 includes a plurality of computers distributed. You may comprise by operating.

また、クラウドネットワーク上のサーバ30も、図2に示すサーバ20と同等の構成にて実現可能であるので、ここでの詳細な説明を省略する。   Further, the server 30 on the cloud network can also be realized with the same configuration as the server 20 shown in FIG. 2, and thus detailed description thereof is omitted here.

図3は、実施形態に係るサーバ20および30の機能を説明するための一例の機能ブロック図である。図3において、オンプレミスのサーバ20は、通信部200と、取得部201と、作成部202と、管理部203と、実行部204と、WF(ワークフロー)定義保存部210と、コンポーネント保存部220と、を含む。   FIG. 3 is a functional block diagram illustrating an example of the functions of the servers 20 and 30 according to the embodiment. 3, the on-premises server 20 includes a communication unit 200, an acquisition unit 201, a creation unit 202, a management unit 203, an execution unit 204, a WF (workflow) definition storage unit 210, and a component storage unit 220. ,including.

これらのうち、WF定義保存部210およびコンポーネント保存部220は、例えばストレージ2003の所定領域を用いて構成される。また、通信部200、取得部201、作成部202、管理部203および実行部204は、CPU2000上で実施形態に係る情報処理プログラムが実行されることで形成される。これに限らず、通信部200、取得部201、作成部202、管理部203および実行部204の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。   Among these, the WF definition storage unit 210 and the component storage unit 220 are configured using a predetermined area of the storage 2003, for example. In addition, the communication unit 200, the acquisition unit 201, the creation unit 202, the management unit 203, and the execution unit 204 are formed by executing the information processing program according to the embodiment on the CPU 2000. Not limited to this, a part or all of the communication unit 200, the acquisition unit 201, the creation unit 202, the management unit 203, and the execution unit 204 may be configured by hardware circuits that operate in cooperation with each other.

サーバ20における各機能を実現するための情報処理プログラムは、インストール可能な形式または実行可能な形式のファイルでCD(Compact Disk)、フレキシブルディスク(FD)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、当該操作プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供してもよい。また、当該操作プログラムをインターネットなどのネットワークを経由して提供または配布するように構成してもよい。   An information processing program for realizing each function in the server 20 is a file in an installable format or an executable format, and is read by a computer such as a CD (Compact Disk), a flexible disk (FD), and a DVD (Digital Versatile Disk). It is provided by being recorded on a possible recording medium. However, the present invention is not limited thereto, and the operation program may be provided by being stored on a computer connected to a network such as the Internet and downloaded via the network. Further, the operation program may be provided or distributed via a network such as the Internet.

当該操作プログラムは、上述した各部(通信部200、取得部201、作成部202、管理部203および実行部204)を含むモジュール構成となっている。実際のハードウェアとしては、CPU2000がストレージ2003などの保存媒体から当該操作プログラムを読み出して実行することにより、上述した各部がRAM2002などの主記憶装置上にロードされ、通信部200、取得部201、作成部202、管理部203および実行部204が主記憶装置上に生成されるようになっている。   The operation program has a module configuration including the above-described units (communication unit 200, acquisition unit 201, creation unit 202, management unit 203, and execution unit 204). As actual hardware, the CPU 2000 reads the operation program from a storage medium such as the storage 2003 and executes the operation program, whereby the above-described units are loaded onto the main storage device such as the RAM 2002, and the communication unit 200, the acquisition unit 201, A creation unit 202, a management unit 203, and an execution unit 204 are generated on the main storage device.

図3において、WF定義保存部210は、WF(ワークフロー)定義211a、211b、…が保存される。WF定義保存部210に含まれる各WF定義211a、211b、…は、それぞれ、1以上のコンポーネントの組み合わせと、各コンポーネントによる処理の順序を示す情報と、プリセットされた情報と、ワークフローを識別するためのワークフローIDと、が関連付けられて含まれる。   In FIG. 3, the WF definition storage unit 210 stores WF (workflow) definitions 211a, 211b,. Each of the WF definitions 211a, 211b,... Included in the WF definition storage unit 210 identifies a combination of one or more components, information indicating the order of processing by each component, preset information, and a workflow. Are included in association with each other.

コンポーネント保存部220は、各WF定義211a、211b、…で用いるための各コンポーネント221a、221b、…が保存される。各コンポーネント221a、221b、…は、コンポーネントを識別するためのコンポーネントIDと、コンポーネントのバージョン情報と、が関連付けられて含まれる。   The component storage unit 220 stores the components 221a, 221b,... For use in the WF definitions 211a, 211b,. Each component 221a, 221b,... Includes a component ID for identifying the component and component version information in association with each other.

通信部200は、通信I/F2004を制御して、ネットワーク2に対する通信を行う。通信部200は、これにより、ネットワーク2を介してインターネット3に接続し、ネットワーク2およびインターネット3を介してサーバ30と通信を行うことができる。取得部201は、サーバ20におけるワークフローの実行に関する負荷を取得する。取得部201は、サーバ30におけるワークフローの実行に関する負荷をさらに取得することもできる。   The communication unit 200 controls the communication I / F 2004 to perform communication with the network 2. Thus, the communication unit 200 can connect to the Internet 3 via the network 2 and communicate with the server 30 via the network 2 and the Internet 3. The acquisition unit 201 acquires a load related to execution of a workflow in the server 20. The acquisition unit 201 can further acquire a load related to the execution of the workflow in the server 30.

作成部202は、コンポーネント保存部220に保存される各コンポーネント221a、221b、…を用いてWF定義211a、211b、…を作成する。作成部202は、作成したWF定義211a、211b、…を、WF定義保存部210に保存させる。管理部203は、WF定義保存部210に保存される各WF定義211a、211b、…を、例えばワークフローIDに基づき管理する。また、管理部203は、コンポーネント保存部220に保存される各コンポーネント221a、221b、…を、コンポーネントIDおよびバージョン情報に基づき管理する。   The creation unit 202 creates the WF definitions 211a, 211b,... Using the components 221a, 221b,. The creation unit 202 causes the WF definition storage unit 210 to store the created WF definitions 211a, 211b,. The management unit 203 manages each WF definition 211a, 211b,... Stored in the WF definition storage unit 210 based on, for example, a workflow ID. Further, the management unit 203 manages each component 221a, 221b,... Stored in the component storage unit 220 based on the component ID and version information.

実行部204は、利用者の操作や特定のイベントに基づき、指定されたワークフローを実行させる。例えば、実行部204は、MFP10からの指示に応じて、管理部203に管理されるWF定義211a、211b、…から指定されたWF定義を取得して、取得したWF定義に含まれる各コンポーネントを実行する。   The execution unit 204 executes a specified workflow based on a user operation or a specific event. For example, the execution unit 204 acquires the WF definition specified from the WF definitions 211a, 211b,... Managed by the management unit 203 in accordance with an instruction from the MFP 10, and acquires each component included in the acquired WF definition. Run.

図3において、クラウドネットワーク上のサーバ30は、通信部300と、管理部301と、実行部302と、WF定義保存部310と、コンポーネント保存部320と、を含む。これらのうち、通信部300、管理部301および実行部302は、サーバ30が備えるCPU上で所定のプログラムが動作されることで実現される。また、WF定義保存部310およびコンポーネント保存部320は、サーバ30が備えるストレージの所定の保存領域が用いられる。   In FIG. 3, the server 30 on the cloud network includes a communication unit 300, a management unit 301, an execution unit 302, a WF definition storage unit 310, and a component storage unit 320. Among these, the communication unit 300, the management unit 301, and the execution unit 302 are realized by operating predetermined programs on the CPU included in the server 30. The WF definition storage unit 310 and the component storage unit 320 use a predetermined storage area of the storage provided in the server 30.

WF定義保存部310は、WF定義311a、311b、…が保存される。各WF定義311a、311b、…の構成は、上述したWF定義211a、211b、…と同様である。コンポーネント保存部320は、各WF定義311a、311b、…で用いるための各コンポーネント321a、321b、…が保存される。管理部301は、WF定義保存部310に保存される各WF定義311a、311b、…と、コンポーネント保存部320に保存される各コンポーネント321a、321b、…とを管理する。   The WF definition storage unit 310 stores WF definitions 311a, 311b,. The configuration of each WF definition 311a, 311b,... Is the same as that of the WF definition 211a, 211b,. The component storage unit 320 stores the components 321a, 321b,... For use in the WF definitions 311a, 311b,. The management unit 301 manages the WF definitions 311a, 311b,... Stored in the WF definition storage unit 310, and the components 321a, 321b,.

通信部300は、サーバ30が備える通信I/Fを制御して、インターネット3に対する通信を行う。通信部300は、これにより、インターネット3を介してネットワーク2に接続し、インターネット3およびネットワーク2を介してサーバ20と通信を行うことができる。   The communication unit 300 controls the communication I / F included in the server 30 and performs communication with the Internet 3. Thus, the communication unit 300 can connect to the network 2 via the Internet 3 and communicate with the server 20 via the Internet 3 and the network 2.

実行部302は、特定のイベントに基づき、指定されたワークフローを実行させる。例えば、実行部302は、サーバ20からの指示に応じて、管理部301に管理されるWF定義311a、311b、…から指定されたWF定義を取得して、取得したWF定義に含まれる各コンポーネントを実行する。   The execution unit 302 executes a specified workflow based on a specific event. For example, the execution unit 302 acquires the WF definition specified from the WF definitions 311a, 311b,... Managed by the management unit 301 in accordance with an instruction from the server 20, and each component included in the acquired WF definition Execute.

ここで、サーバ20のコンポーネント保存部220に保存されるコンポーネント221’は、サーバ30の実行部302に対して、WF定義保存部310に保存される各WF定義311a、311b、…に定義されるワークフローの実行を指示することができる。また、サーバ30においてWF定義保存部310に保存される各WF定義311a、311b、…に定義される各ワークフローは、例えばサーバ20のコンポーネント221’からの指示に応じて、サーバ20のWF定義211a、211b、…に含まれるコンポーネントとして実行させることができる。   Here, the component 221 ′ stored in the component storage unit 220 of the server 20 is defined in each WF definition 311a, 311b,... Stored in the WF definition storage unit 310 with respect to the execution unit 302 of the server 30. The execution of the workflow can be instructed. Further, each workflow defined in each WF definition 311a, 311b,... Stored in the WF definition storage unit 310 in the server 30 is, for example, in accordance with an instruction from the component 221 ′ of the server 20, for example, the WF definition 211a of the server 20. , 211b,... Can be executed as components.

なお、上述したサーバ20に含まれる各コンポーネント211a、211b、…、および、サーバ30に含まれる各コンポーネント311a、311b、…は、実行する処理を、外部の連携サーバや連携サービスに転送することができるようになっている。   The components 211a, 211b,... Included in the server 20 and the components 311a, 311b,. It can be done.

(実施形態に係る処理)
次に、実施形態に係る処理について説明する。図4は、実施形態に係るワークフローの作成処理を示す一例のフローチャートである。この図4に示すフローチャートによる処理は、オンプレミスのサーバ20において、例えば作成部202により実行される。
(Processing according to the embodiment)
Next, processing according to the embodiment will be described. FIG. 4 is a flowchart illustrating an example of workflow creation processing according to the embodiment. The process according to the flowchart shown in FIG. 4 is executed by, for example, the creation unit 202 in the on-premises server 20.

ステップS100で、作成部202は、例えばPC40からの指示に応じて、オンプレミス用のワークフロー(WF)のワークフロー定義を作成する。オンプレミス用のワークフローは、オンプレミスのネットワーク2に接続されるサーバ20において実行されるワークフローである。作成部202は、例えば、サーバ20のコンポーネント保存部220に保存される各コンポーネント221a、221b、…を用いて、オンプレミス用のワークフローのワークフロー定義を作成する。   In step S100, the creation unit 202 creates a workflow definition of an on-premises workflow (WF) in response to an instruction from the PC 40, for example. The on-premises workflow is a workflow executed in the server 20 connected to the on-premises network 2. The creation unit 202 creates a workflow definition of an on-premises workflow using, for example, the components 221a, 221b,... Stored in the component storage unit 220 of the server 20.

このとき、作成部202は、作成したワークフローの、オンプレミス用のネットワーク2外、例えばクラウドネットワーク上のサーバ30における実行を禁止する設定を行うことができる。例えば、作成するワークフローが機密情報を扱う処理を含む場合に、当該ワークフローのサーバ30における実行を禁止すると言った適用が考えられる。作成部202は、例えば、オンプレミス用のネットワーク2外での実行を禁止することを示す禁止フラグを、作成したワークフローのWF定義に設定する。   At this time, the creation unit 202 can perform a setting for prohibiting execution of the created workflow in the server 30 on the cloud network outside the on-premises network 2. For example, when a workflow to be created includes processing for handling confidential information, an application that prohibits execution of the workflow in the server 30 can be considered. For example, the creation unit 202 sets a prohibition flag indicating prohibition of execution outside the on-premises network 2 in the WF definition of the created workflow.

次のステップS101で、作成部202は、ステップS100で作成したオンプレミス用のワークフロー(WF定義)をWF定義保存部210に保存する。次のステップS102で、作成部202は、ステップS101で保存したオンプレミス用のワークフロー(以下、対象ワークフロー)を解析する。   In the next step S101, the creation unit 202 saves the on-premises workflow (WF definition) created in step S100 in the WF definition storage unit 210. In the next step S102, the creation unit 202 analyzes the on-premises workflow (hereinafter, target workflow) saved in step S101.

次のステップS103で、作成部202は、ステップS102の解析結果に基づき、対象ワークフローがクラウドネットワーク上のサーバ30にて実行可能か否かを判定する。例えば、作成部202は、対象ワークフローに禁止フラグが含まれる場合、対象ワークフローがサーバ30にて実行不可であると判定し(ステップS103、「No」)、図4のフローチャートによる一連の処理を終了させる。一方、作成部202は、ステップS103で対象ワークフローがサーバ30にて実行可能であると判定した場合(ステップS103、「Yes」)、処理をステップS104に移行させる。   In the next step S103, the creation unit 202 determines whether the target workflow can be executed by the server 30 on the cloud network based on the analysis result in step S102. For example, when the prohibition flag is included in the target workflow, the creation unit 202 determines that the target workflow is not executable in the server 30 (step S103, “No”), and ends the series of processes according to the flowchart of FIG. Let On the other hand, if the creation unit 202 determines in step S103 that the target workflow can be executed by the server 30 (step S103, “Yes”), the process proceeds to step S104.

ステップS104で、作成部202は、対象ワークフローに含まれるコンポーネントから1つを対象コンポーネントとして取得して、取得した対象コンポーネントを解析する。次のステップS105で、作成部202は、対象コンポーネントの解析結果に基づき、クラウドネットワーク上のサーバ30のWF定義保存部310における対象コンポーネントと互換性のあるワークフローの有無が確認される。このステップS105の処理の詳細については、後述する。   In step S104, the creation unit 202 acquires one of the components included in the target workflow as the target component, and analyzes the acquired target component. In the next step S105, the creation unit 202 confirms whether there is a workflow compatible with the target component in the WF definition storage unit 310 of the server 30 on the cloud network based on the analysis result of the target component. Details of the processing in step S105 will be described later.

次のステップS106で、作成部202は、ステップS105での確認の結果、サーバ30のWF定義保存部310に、対象コンポーネントと互換性のあるワークフロー(以下、互換ワークフロー)のワークフロー定義が保存されているか否かを判定する。保存されていないと判定した場合(ステップS106、「No」)、処理がステップS108に移行される。一方、作成部202は、ステップS106で、保存されていると判定した場合(ステップS106、「Yes」)、処理をステップS107に移行させる。   In the next step S106, as a result of the confirmation in step S105, the creation unit 202 stores the workflow definition of the workflow compatible with the target component (hereinafter, compatible workflow) in the WF definition storage unit 310 of the server 30. It is determined whether or not. If it is determined that it has not been saved (step S106, “No”), the process proceeds to step S108. On the other hand, if the creation unit 202 determines in step S106 that the data has been saved (step S106, "Yes"), the process proceeds to step S107.

ステップS107で、作成部202は、対象ワークフローにおいて、対象コンポーネントを、当該対象ワークフローと互換性のある、サーバ30上の互換ワークフローと置き換えた置換ワークフローを作成し、作成した置換ワークフローのワークフロー定義を、WF定義保存部210に保存する。すなわち、WF定義保存部210には、対象ワークフローのWF定義と、当該対象ワークフローに対応する置換ワークフローのWF定義とが保存されていることになる。   In step S107, the creation unit 202 creates a replacement workflow in which the target component is replaced with a compatible workflow on the server 30 that is compatible with the target workflow in the target workflow, and the workflow definition of the created replacement workflow is Save in the WF definition storage unit 210. That is, the WF definition storage unit 210 stores the WF definition of the target workflow and the WF definition of the replacement workflow corresponding to the target workflow.

なお、ステップS107において、既に対象ワークフローに対応する置換ワークフローが存在する場合は、当該置換ワークフローのワークフロー定義が互換ワークフローのワークフロー定義により更新される。   In step S107, if a replacement workflow corresponding to the target workflow already exists, the workflow definition of the replacement workflow is updated with the workflow definition of the compatible workflow.

次のステップS108で、作成部202は、対象ワークフローに含まれる全てのコンポーネントについてステップS104〜ステップS107の処理が完了したか否かを判定する。完了していないと判定した場合(ステップS108、「No」)、作成部202は、処理をステップS104に戻し、対象ワークフローに含まれる次のコンポーネントについて、ステップS104以降の処理を実行する。   In the next step S108, the creation unit 202 determines whether or not the processing in steps S104 to S107 has been completed for all components included in the target workflow. When it determines with not having completed (step S108, "No"), the preparation part 202 returns a process to step S104, and performs the process after step S104 about the next component contained in an object workflow.

一方、作成部202は、対象ワークフローに含まれる全てのコンポーネントについてステップS104〜ステップS107の処理が完了したと判定した場合(ステップS108、「Yes」)、図4のフローチャートにおける一連の処理を終了させる。   On the other hand, when the creation unit 202 determines that the processing in steps S104 to S107 has been completed for all components included in the target workflow (step S108, “Yes”), the series of processing in the flowchart of FIG. .

図5は、実施形態に係る、互換ワークフローの有無確認の処理を示す一例のフローチャートである。この図5のフローチャートによる処理は、上述した図4のフローチャートのステップS105において実行される処理である。   FIG. 5 is a flowchart illustrating an example of a process for confirming the existence of a compatible workflow according to the embodiment. The process according to the flowchart of FIG. 5 is a process executed in step S105 of the flowchart of FIG. 4 described above.

ステップS200およびステップS201で、作成部202は、対象コンポーネントのコンポーネントIDおよびバージョン情報を取得する。次のステップS202で作成部202は、取得したコンポーネントIDおよびバージョン情報に基づき互換コンポーネントチェックテーブルを参照する。   In step S200 and step S201, the creation unit 202 acquires the component ID and version information of the target component. In step S202, the creation unit 202 refers to the compatible component check table based on the acquired component ID and version information.

互換コンポーネントチェックテーブルは、オンプレミスのサーバ20のコンポーネント保存部220に保存される各コンポーネント221a、221b、…と、クラウドネットワーク上のサーバ30のWF保存部310に保存される各WF定義311a、311b、…による各ワークフローとにおいて、互換性のあるコンポーネントとワークフローとの組を示すエントリが格納される。   The compatible component check table includes components 221a, 221b,... Stored in the component storage unit 220 of the on-premises server 20, and WF definitions 311a, 311b, stored in the WF storage unit 310 of the server 30 on the cloud network. In each workflow by..., An entry indicating a pair of compatible component and workflow is stored.

より具体的には、互換コンポーネントチェックテーブルは、オンプレミスのコンポーネントのコンポーネントIDおよびバージョン情報をキーとして、当該コンポーネントと互換性のある、クラウドネットワーク上のワークフローのワークフローIDが関連付けられたエントリが格納される。この互換コンポーネントチェックテーブルは、予め作成され、例えばクラウドネットワーク上のサーバ30において保存される。   More specifically, the compatible component check table stores an entry associated with the workflow ID of the workflow on the cloud network that is compatible with the component, using the component ID and version information of the on-premises component as a key. . This compatible component check table is created in advance and stored in the server 30 on the cloud network, for example.

次のステップS203で、作成部202は、互換コンポーネントチェックテーブルに、ステップS200およびステップS201で取得したコンポーネントIDおよびバージョン情報に対応するエントリが存在するか否かを判定する。存在すると判定した場合(ステップS203、「Yes」)、作成部202は、処理をステップS205に移行させる。   In the next step S203, the creation unit 202 determines whether or not an entry corresponding to the component ID and version information acquired in steps S200 and S201 exists in the compatible component check table. When it determines with existing (step S203, "Yes"), the preparation part 202 makes a process transfer to step S205.

ステップS205で、作成部202は、存在すると判定したエントリに格納されるクラウドネットワーク上のワークフローのワークフローIDを、互換ワークフローのワークフローIDであるとして取得する。作成部202は、互換ワークフローのワークフローIDを取得すると、図5のフローチャートによる処理を終了させて、処理を、図4のフローチャートにおけるステップS106に移行させる。   In step S205, the creation unit 202 acquires the workflow ID of the workflow on the cloud network stored in the entry determined to exist as the workflow ID of the compatible workflow. When the creation unit 202 acquires the workflow ID of the compatible workflow, the creation unit 202 ends the process according to the flowchart of FIG. 5 and shifts the process to step S106 in the flowchart of FIG.

一方、作成部202は、ステップS203で、対応するエントリが存在しないと判定した場合(ステップS203、「No」)、処理をステップS204に移行させる。   On the other hand, when it is determined in step S203 that the corresponding entry does not exist (step S203, “No”), the creation unit 202 shifts the process to step S204.

ステップS204で、作成部202は、ステップS200およびステップS201で取得したコンポーネントIDおよびバージョン情報に基づき、オンプレミス用互換コンポーネントチェックテーブルを参照する。オンプレミス用互換コンポーネントチェックテーブルは、上述した互換コンポーネントチェックテーブルと同様の構成を有するテーブルであって、オンプレミスのサーバ20において保存される。   In step S204, the creation unit 202 refers to the on-premises compatible component check table based on the component ID and version information acquired in steps S200 and S201. The on-premises compatible component check table is a table having the same configuration as the above-described compatible component check table, and is stored in the on-premises server 20.

例えば、オンプレミスのワークフローサービスにおいて、オンプレミスで特注のコンポーネントなどがある場合、この特注コンポーネントに対応する、クラウドネットワーク上のワークフローの組み合わせを、このオンプレミス用互換コンポーネントチェックテーブルに登録しておく。特注コンポーネントは、例えばMFP10に機能を追加するための特注のプラグインを適用することができる。これにより、この特注プラグインの処理も、オンプレミスで実行できる可能性がある。   For example, in the on-premises workflow service, when there is a custom-made component on-premises, a combination of workflows on the cloud network corresponding to the custom-made component is registered in the on-premises compatible component check table. For the custom component, for example, a custom plug-in for adding a function to the MFP 10 can be applied. As a result, this custom plug-in process may also be executed on-premises.

ステップS204で、オンプレミス用互換コンポーネントチェックテーブルの参照が完了すると、作成部202は、処理を、上述したステップS205に移行させる。   When the reference to the on-premises compatible component check table is completed in step S204, the creating unit 202 shifts the processing to step S205 described above.

図6は、実施形態に係る、サーバ20において実行部204がワークフローを実行する処理を示す一例のフローチャートである。ここで実行されるワークフローは、上述した図4のフローチャートにおいて対象ワークフローとして作成されたワークフローであって、対応する置換ワークフローも作成、保存されているものとする。   FIG. 6 is a flowchart illustrating an example of processing executed by the execution unit 204 in the server 20 according to the embodiment. The workflow executed here is a workflow created as a target workflow in the flowchart of FIG. 4 described above, and a corresponding replacement workflow is also created and saved.

ステップS300で、実行部204は、オンプレミス用のワークフローである対象ワークフローに基づく処理(例えば置換ワークフローによる処理)を、クラウドネットワーク上のサーバ30において実行可能であるか否かを判定する。実行部204は、対象ワークフローのワークフロー定義に禁止フラグが含まれている場合に、対象ワークフローに基づく処理のサーバ30における実行が不可であると判定し(ステップS300、「No」)、処理をステップS307に移行させる。   In step S300, the execution unit 204 determines whether the server 30 on the cloud network can execute a process based on the target workflow that is an on-premises workflow (for example, a process based on a replacement workflow). If the prohibition flag is included in the workflow definition of the target workflow, the execution unit 204 determines that the server 30 cannot execute the process based on the target workflow (step S300, “No”), and the process is stepped. The process proceeds to S307.

実行部204は、ステップS307で、オンプレミス用のワークフローすなわち対象ワークフローを実行させて、図6のフローチャートによる一連の処理を終了させる。   In step S307, the execution unit 204 executes an on-premises workflow, that is, a target workflow, and ends a series of processes according to the flowchart of FIG.

一方、実行部204は、対象ワークフローに基づく処理がサーバ30において実行可能であると判定した場合(ステップS300、「Yes」)、処理をステップS301に移行させる。ステップS301で、実行部204は、取得部201に対して、サーバ20のワークフロー実行に関する負荷を取得するよう依頼する。次のステップS302で、取得部201は、この依頼に応じて、負荷の比較対象がクラウドネットワーク上のサーバ30であるか否かを判定する。取得部201は、負荷の比較対象がサーバ30ではないと判定すると(ステップS302、「No」)、処理をステップS304に移行させる。   On the other hand, when the execution unit 204 determines that the process based on the target workflow is executable in the server 30 (step S300, “Yes”), the execution unit 204 shifts the process to step S301. In step S301, the execution unit 204 requests the acquisition unit 201 to acquire a load related to the workflow execution of the server 20. In the next step S302, the acquisition unit 201 determines whether or not the load comparison target is the server 30 on the cloud network in response to the request. If the acquisition unit 201 determines that the load comparison target is not the server 30 (step S302, “No”), the process proceeds to step S304.

一方、取得部201は、比較対象がサーバ30であると判定した場合(ステップS302、「Yes」)、処理をステップS303に移行させ、サーバ30のワークフロー実行に関する負荷を取得する。取得部201は、サーバ30のワークフロー実行に関する負荷を取得すると、処理をステップS304に移行させる。   On the other hand, if the acquisition unit 201 determines that the comparison target is the server 30 (step S302, “Yes”), the acquisition unit 201 moves the process to step S303, and acquires the load related to the workflow execution of the server 30. When acquiring the load related to the workflow execution of the server 30, the acquiring unit 201 shifts the processing to step S304.

なお、ステップS302の処理において、負荷の比較対象がクラウドネットワーク上のサーバ30であるか否かは、予め決められているものとする。   In the process of step S302, it is assumed that whether the load comparison target is the server 30 on the cloud network is determined in advance.

ステップS304で、取得部201は、取得したサーバ20、あるいは、サーバ20および30の、ワークフロー実行に関する負荷を比較する。次のステップS305で、取得部201は、ステップS304での取得部201による負荷の比較結果に応じて、ワークフローをクラウドネットワーク上のサーバ30で実行させるか否かを判定する。   In step S304, the acquisition unit 201 compares the acquired server 20 or the load related to workflow execution of the servers 20 and 30. In the next step S305, the acquisition unit 201 determines whether to execute the workflow on the server 30 on the cloud network according to the load comparison result by the acquisition unit 201 in step S304.

取得部201は、ワークフローをサーバ30で実行させると判定した場合(ステップS305、「Yes」)、処理をステップS306に移行させる。ステップS306で、実行部204は、クラウド用ワークフローすなわち置換ワークフローを実行する。一方、取得部201は、ワークフローをサーバ30で実行させないと判定した場合(ステップS305、「No」)、処理をステップS307に移行させる。ステップS307で、実行部204は、オンプレミス用ワークフローすなわち対象ワークフローを実行する。   If the acquisition unit 201 determines that the workflow is to be executed by the server 30 (step S305, “Yes”), the acquisition unit 201 shifts the processing to step S306. In step S306, the execution unit 204 executes a cloud workflow, that is, a replacement workflow. On the other hand, when determining that the workflow is not executed on the server 30 (step S305, “No”), the acquisition unit 201 shifts the processing to step S307. In step S307, the execution unit 204 executes the on-premises workflow, that is, the target workflow.

ステップS304の比較処理、および、ステップS305の判定処理について、より具体的に説明する。取得部201は、ステップS302で負荷の比較対象がサーバ30ではないと判定され、処理がステップS302から直接的にステップS304に移行した場合、サーバ20におけるワークフロー実行に関する負荷を閾値と比較する。例えば、取得部201は、サーバ20において、ワークフローの実行に関して処理待ちのジョブが閾値以上(例えば100個以上)ある場合に、ステップS305で、クラウド用ワークフローを実行すると判定し、処理をステップS306に移行させる。   The comparison process in step S304 and the determination process in step S305 will be described more specifically. When the acquisition unit 201 determines in step S302 that the load comparison target is not the server 30, and the process directly proceeds from step S302 to step S304, the acquisition unit 201 compares the load related to workflow execution in the server 20 with a threshold value. For example, the acquisition unit 201 determines in step S305 that the cloud workflow is to be executed in step S305 when the number of jobs waiting to be processed in the server 20 is greater than or equal to a threshold (for example, 100 or more), and the process proceeds to step S306. Transition.

また、取得部201は、ステップS302で負荷の比較対象がサーバ30であるとしてステップS303でサーバ30の負荷を取得した場合、ステップS304において、ステップS301で取得したサーバ20の負荷と、ステップS303で取得したサーバ30の負荷と、を比較する。取得部201は、ステップS304の比較の結果、ステップS305で、サーバ20とサーバ30とのうち、負荷の小さい方のサーバで、当該サーバに対応するワークフローを実行させる。   Further, if the load comparison target is the server 30 in step S302 and the load of the server 30 is acquired in step S303, the acquisition unit 201 acquires the load of the server 20 acquired in step S301 and the load of the server 20 in step S303. The acquired load of the server 30 is compared. As a result of the comparison in step S304, the acquisition unit 201 causes the server 20 and the server 30 having the smaller load to execute the workflow corresponding to the server in step S305.

すなわち、取得部201は、ステップS304で、サーバ20よりもサーバ30の方が負荷が小さいことを示す比較結果を得た場合、ステップS305で、クラウド用ワークフローを実行すると判定し、処理をステップS306に移行させる。一方、取得部201は、ステップS304で、サーバ30よりもサーバ20の方が負荷が小さいことを示す比較結果を得た場合、ステップS305で、オンプレミス用ワークフローを実行すると判定し、処理をステップS307に移行させる。   That is, if the acquisition unit 201 obtains a comparison result indicating that the load on the server 30 is smaller than that on the server 20 in step S304, the acquisition unit 201 determines in step S305 that the cloud workflow is to be executed, and the process is performed in step S306. To migrate. On the other hand, if the acquisition unit 201 obtains a comparison result indicating that the load on the server 20 is smaller than that on the server 30 in step S304, the acquisition unit 201 determines in step S305 that the on-premises workflow is executed, and the process is performed in step S307. To migrate.

このように、実施形態に係る情報処理システム1では、ワークフロー定義の作成時に、コンポーネントとしてオンプレミス用のコンポーネントのみを用いた対象ワークフローと、コンポーネントの一部をクラウド用のワークフローで置換した置換ワークフローとを作成する。その上で、情報処理システム1は、オンプレミス用のサーバ20におけるワークフロー実行に関する負荷、あるいは、サーバ20およびクラウド用のサーバ30それぞれにおけるワークフロー実行に関する負荷に基づき、対象ワークフローを実行するか、置換ワークフローを実行するかを選択する。そのため、実施形態に係る情報処理システム1では、ワークフローの実行に複数のサービス(例えば、オンプレミス用のサーバ20、および、クラウド用のサーバ30)を利用可能な場合に、ワークフローによる処理を効率的に実行可能となる。   As described above, in the information processing system 1 according to the embodiment, when creating a workflow definition, a target workflow using only an on-premises component as a component and a replacement workflow in which a part of the component is replaced with a cloud workflow. create. Then, the information processing system 1 executes the target workflow based on the load related to the workflow execution in the on-premises server 20 or the load related to the workflow execution in each of the server 20 and the cloud server 30 or executes a replacement workflow. Select whether to execute. Therefore, in the information processing system 1 according to the embodiment, when a plurality of services (for example, the on-premises server 20 and the cloud server 30) can be used to execute the workflow, the processing by the workflow is efficiently performed. It becomes executable.

なお、上述の各実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。   Each of the above-described embodiments is a preferred embodiment of the present invention, but is not limited thereto, and various modifications can be made without departing from the gist of the present invention.

1 情報処理システム
2 ネットワーク
3 インターネット
10 MFP
20,30 サーバ
40 PC
200,300 通信部
201 取得部
202 作成部
203,301 管理部
204,302 実行部
210,310 WF定義保存部
220,320 コンポーネント保存部
1 Information processing system 2 Network 3 Internet 10 MFP
20, 30 Server 40 PC
200, 300 Communication unit 201 Acquisition unit 202 Creation unit 203, 301 Management unit 204, 302 Execution unit 210, 310 WF definition storage unit 220, 320 Component storage unit

特開2015−032043号公報Japanese Patent Laying-Open No. 2015-032043 特開2014−056488号公報JP 2014-056488 A

Claims (8)

1以上の処理の処理手順を示すワークフローを実行する第1の実行部と、
全ての処理が前記第1の実行部で実行される第1のワークフローと、
前記第1のワークフローが外部の第2の実行部で実行される外部ワークフローと互換可能な処理を含む場合に、該外部ワークフローを含み、該第1のワークフローと処理内容が対応する第2のワークフローと、
を作成する作成部と、
前記第1の実行部の負荷および前記第2の実行部の負荷のうち少なくとも前記第1の実行部の負荷を取得する取得部と、
前記実行部によるワークフローの実行を制御する制御部と、
を備え、
前記制御部は、
前記取得部により取得された前記第1の実行部の前記負荷を用いて、前記第1のワークフローおよび前記第2のワークフローのうち何れを実行するかを選択する
情報処理装置。
A first execution unit that executes a workflow indicating a processing procedure of one or more processes;
A first workflow in which all processing is executed by the first execution unit;
When the first workflow includes a process compatible with an external workflow executed by an external second execution unit, the second workflow includes the external workflow and corresponds to the processing content of the first workflow When,
A creation section for creating
An acquisition unit that acquires at least the load of the first execution unit among the load of the first execution unit and the load of the second execution unit;
A control unit that controls execution of the workflow by the execution unit;
With
The controller is
An information processing apparatus that selects which of the first workflow and the second workflow to execute using the load of the first execution unit acquired by the acquisition unit.
前記制御部は、
前記第1の実行部の前記負荷が閾値以上の場合に、前記第2のワークフローを選択する
請求項1に記載の情報処理装置。
The controller is
The information processing apparatus according to claim 1, wherein the second workflow is selected when the load of the first execution unit is equal to or greater than a threshold value.
前記制御部は、
前記第2の実行部の負荷が前記第1の実行部の負荷よりも小さい場合に、前記第2のワークフローを選択する
請求項1に記載の情報処理装置。
The controller is
The information processing apparatus according to claim 1, wherein the second workflow is selected when a load on the second execution unit is smaller than a load on the first execution unit.
前記作成部は、
前記第1のワークフローに含まれる1の前記処理に、1以上の前記外部ワークフローを対応付ける
請求項1乃至請求項3の何れか1項に記載の情報処理装置。
The creating unit
4. The information processing apparatus according to claim 1, wherein one or more external workflows are associated with one of the processes included in the first workflow. 5.
前記作成部は、
前記第1のワークフローに含まれる1以上の前記処理に、1の前記外部ワークフローを対応付ける
請求項1乃至請求項4の何れか1項に記載の情報処理装置。
The creating unit
The information processing apparatus according to any one of claims 1 to 4, wherein one external workflow is associated with one or more processes included in the first workflow.
前記作成部は、
前記第1のワークフローが含む前記処理の設定値と、該処理と互換可能な前記外部ワークフローの設定値との対応付けを行う
請求項1乃至請求項5の何れか1項に記載の情報処理装置。
The creating unit
The information processing apparatus according to claim 1, wherein the processing setting value included in the first workflow is associated with the setting value of the external workflow compatible with the processing. .
1以上の処理の処理手順を示すワークフローを実行する実行ステップと、
1以上の処理を含み、全ての該処理が前記実行ステップにより実行される第1のワークフローと、
前記第1のワークフローが外部の実行部で実行される外部ワークフローと互換可能な処理を含む場合に、該外部ワークフローを含み、該第1のワークフローと処理内容が対応する第2のワークフローと、
を作成する作成ステップと、
前記第1の実行ステップによる負荷および前記外部の実行部の負荷のうち、少なくとも前記第1の実行ステップによる負荷を取得する取得ステップと、
前記実行ステップによるワークフローの実行を制御する制御ステップと、
をコンピュータに実行させるための情報処理プログラムであって、
前記制御ステップは、
前記取得ステップにより取得された前記第1の実行ステップの前記負荷を用いて、前記第1のワークフローおよび前記第2のワークフローのうち何れを実行するかを選択する
情報処理プログラム。
An execution step for executing a workflow indicating a processing procedure of one or more processes;
A first workflow including one or more processes, wherein all the processes are executed by the execution step;
When the first workflow includes a process compatible with an external workflow executed by an external execution unit, the second workflow including the external workflow and corresponding to the processing content of the first workflow;
A creation step to create a
An acquisition step of acquiring at least a load due to the first execution step among the load due to the first execution step and the load of the external execution unit;
A control step for controlling execution of the workflow by the execution step;
An information processing program for causing a computer to execute
The control step includes
An information processing program that selects which of the first workflow and the second workflow to execute using the load of the first execution step acquired in the acquisition step.
第1の情報処理装置と第2の情報処理装置とを含む情報処理システムであって、
前記第1の情報処理装置は、
1以上の処理の処理手順を示すワークフローを実行する第1の実行部を備え、
前記第2の情報処理装置は、
前記ワークフローを実行する第2の実行部と、
全ての処理が前記第2の実行部で実行される第1のワークフローと、
前記第1のワークフローが前記第1の実行部で実行される外部ワークフローと互換可能な処理を含む場合に、該外部ワークフローを含み、該第1のワークフローと処理内容が対応する第2のワークフローと、
を作成する作成部と、
前記第1の実行部の負荷および前記第2の実行部の負荷のうち少なくとも前記第1の実行部の負荷を取得する取得部と、
前記実行部によるワークフローの実行を制御する制御部と、
を備え、
前記制御部は、
前記取得部により取得された前記第1の実行部の前記負荷を用いて、前記第1のワークフローおよび前記第2のワークフローのうち何れを実行するかを選択する
情報処理システム。
An information processing system including a first information processing device and a second information processing device,
The first information processing apparatus includes:
A first execution unit that executes a workflow indicating a processing procedure of one or more processes;
The second information processing apparatus
A second execution unit for executing the workflow;
A first workflow in which all processes are executed by the second execution unit;
When the first workflow includes a process compatible with the external workflow executed by the first execution unit, the second workflow includes the external workflow, and the first workflow corresponds to the processing content. ,
A creation section for creating
An acquisition unit that acquires at least the load of the first execution unit among the load of the first execution unit and the load of the second execution unit;
A control unit that controls execution of the workflow by the execution unit;
With
The controller is
An information processing system that selects which of the first workflow and the second workflow to execute using the load of the first execution unit acquired by the acquisition unit.
JP2017054981A 2017-03-21 2017-03-21 Information processing device, information processing program and information processing system Pending JP2018156596A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017054981A JP2018156596A (en) 2017-03-21 2017-03-21 Information processing device, information processing program and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017054981A JP2018156596A (en) 2017-03-21 2017-03-21 Information processing device, information processing program and information processing system

Publications (1)

Publication Number Publication Date
JP2018156596A true JP2018156596A (en) 2018-10-04

Family

ID=63716766

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017054981A Pending JP2018156596A (en) 2017-03-21 2017-03-21 Information processing device, information processing program and information processing system

Country Status (1)

Country Link
JP (1) JP2018156596A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021180346A (en) * 2020-05-11 2021-11-18 コニカミノルタ株式会社 Information processing device and control method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021180346A (en) * 2020-05-11 2021-11-18 コニカミノルタ株式会社 Information processing device and control method
JP7494553B2 (en) 2020-05-11 2024-06-04 コニカミノルタ株式会社 Information processing device and control method

Similar Documents

Publication Publication Date Title
US8848213B2 (en) Object-based network scanning
US9383950B2 (en) Information processing system, information processing apparatus, and process execution method
JP5906594B2 (en) Cooperation system, image processing apparatus, cooperation control method, cooperation control program, and recording medium
JP6248493B2 (en) Data processing apparatus, data processing method, and data processing program
US20140055809A1 (en) Apparatus and system for controlling output of data
US9692927B2 (en) Device, information processing system, and information processing method
EP3557403B1 (en) Image forming system and image forming method
US20180375929A1 (en) Cooperation system
JP6303505B2 (en) Information processing system, information processing method, device, and program
JP2010219625A (en) Data distribution system, image processing apparatus, image forming apparatus, data distribution method, distribution management program and recording medium
US9524453B2 (en) Image forming device, method of switching modes, and computer-readable recording medium
JP4474440B2 (en) Provision of services using multifunction peripherals (MFPs)
JP5371611B2 (en) Data processing system, server, server control method, and program
JP5104122B2 (en) Image forming apparatus and program
JP2018156596A (en) Information processing device, information processing program and information processing system
US9922296B2 (en) Distribution apparatus, distribution method, and recording medium
US20160006891A1 (en) Image reading apparatus, image reading method, image processing system, and storage medium
JP5083124B2 (en) Control device, workflow control program, and workflow control method
JP5504691B2 (en) Information processing apparatus, program, recording medium, and method
JP2010204960A (en) Data distribution system, image processing device, image forming device, data distribution method, distribution managing program, and recording medium
JP2016100634A (en) Image processing apparatus and control method therefor, information processing device and control method therefor, and program
US11200088B2 (en) Information processing system, information processing method, and information processing apparatus
CN115705170A (en) Information processing apparatus, information processing method, and computer readable medium
JP2006154894A (en) Mail transmitting device
JP2016058827A (en) Information processing system, information processor, information processing method, and information processing program