JPWO2014136210A1 - 実行フロー作成支援プログラム - Google Patents
実行フロー作成支援プログラム Download PDFInfo
- Publication number
- JPWO2014136210A1 JPWO2014136210A1 JP2015504045A JP2015504045A JPWO2014136210A1 JP WO2014136210 A1 JPWO2014136210 A1 JP WO2014136210A1 JP 2015504045 A JP2015504045 A JP 2015504045A JP 2015504045 A JP2015504045 A JP 2015504045A JP WO2014136210 A1 JPWO2014136210 A1 JP WO2014136210A1
- Authority
- JP
- Japan
- Prior art keywords
- name
- component
- execution flow
- creation support
- flow creation
- 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
Images
Classifications
-
- 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/43—Checking; Contextual analysis
- G06F8/433—Dependency analysis; Data or control flow analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
-
- 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/445—Program loading or initiating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
実行フロー作成支援装置(101)は、運用作業にかかる一連の操作の操作手順を表す運用手順書(110)を取得する。実行フロー作成支援装置(101)は、部品情報(120)を参照して、運用作業にかかる一連の操作に含まれる操作の操作名と部品の部品名とを比較した比較結果に基づいて、操作と部品とを対応付ける。実行フロー作成支援装置(101)は、一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択する。実行フロー作成支援装置(101)は、部品情報(120)を参照して、選択した第2の操作の操作名と所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、所定の部品に第2の操作を対応付ける。
Description
本発明は、実行フロー作成支援プログラム、実行フロー作成支援装置および実行フロー作成支援方法に関する。
近年、システムの運用作業の品質向上やオペレータの工数削減のために、自動化ツールで運用作業を自動的に行えるようになってきている。また、オペレータが手作業で行う操作を記述した運用手順書から、自動実行部品の実行順序を表す実行フローを作成し、自動化ツールで自動実行できるようにすることが求められている。
関連する先行技術としては、例えば、入力された指示に対応する操作手順のデータを示す操作手順書を解析して、指示に対応した操作手順を自動実行する技術がある。また、仕様書からデータアクセス関数プログラムを生成するための技術がある。また、画面と処理とが記述される形式の画面遷移図に相当する仕様書データを解釈して、ユーザインタフェースアプリケーションプログラムを生成する技術がある。
しかしながら、従来技術によれば、運用手順書内のオペレータの操作を自動化ツールの自動実行部品に変換して実行フローを作成する際に、オペレータの操作と自動化ツールの自動実行部品との対応付けを行うことが難しい。例えば、操作名と部品名とを比較して操作と自動実行部品とを対応付ける場合、運用手順書では複数の操作を必要とする作業が一つの自動実行部品で実行される場合のような多対1に対応することができない。
一側面では、本発明は、運用作業を自動化する実行フローの作成を支援する実行フロー作成支援プログラム、実行フロー作成支援装置および実行フロー作成支援方法を提供することを目的とする。
本発明の一側面によれば、運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付け、前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択し、前記部品情報を参照して、選択した前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける実行フロー作成支援プログラム、実行フロー作成支援装置および実行フロー作成支援方法が提案される。
本発明の一態様によれば、運用作業を自動化する実行フローの作成を支援することができるという効果を奏する。
以下に図面を参照して、本発明にかかる実行フロー作成支援プログラム、実行フロー作成支援装置および実行フロー作成支援方法の実施の形態を詳細に説明する。
(実行フロー作成支援方法の一実施例)
図1は、実施の形態にかかる実行フロー作成支援方法の一実施例を示す説明図である。図1において、実行フロー作成支援装置101は、運用手順書から運用作業を自動化する実行フローを作成する作業を支援するコンピュータである。
図1は、実施の形態にかかる実行フロー作成支援方法の一実施例を示す説明図である。図1において、実行フロー作成支援装置101は、運用手順書から運用作業を自動化する実行フローを作成する作業を支援するコンピュータである。
ここで、運用手順書とは、運用作業にかかる一連の操作の操作手順を表す情報である。具体的には、例えば、運用手順書は、運用作業にかかる一連の操作の操作手順が自然言語により記述されたテキストデータである。操作とは、オペレータが行う操作である。操作としては、例えば、サーバに接続する操作やユーザ名、パスワード等を入力する操作がある。
また、運用作業とは、システムの保守運用や障害対応などのシステム運用にかかる作業である。実行フローとは、自動化ツールと呼ばれるソフトウェアにより運用作業を自動実行する場合の部品の実行順序を表すものである。部品とは、運用作業にかかるオペレータの一連の操作の一部または全部を自動実行するための自動実行部品である。具体的には、例えば、部品は、自動化ツールから呼び出されるプログラムであり、このプログラムにはオペレータが行う操作と同等の機能を実行するための関数や関数に与える値などが記述されている。
本実施の形態では、実行フロー作成支援装置101は、運用手順書内の操作の操作名と自動化ツールの部品の部品名との一致判定だけでなく、部品の実行時に与える変数の変数名と操作名との一致判定も行って操作と部品とを対応付ける。これにより、部品の実行時の変数の値を入力、設定するような操作を部品に対応付けでき、複数の操作が一つの部品で実行されるような場合でも操作/部品間の対応付けを行えるようにする。以下、実行フロー作成支援装置101の実行フロー作成支援処理例について説明する。
(1)実行フロー作成支援装置101は、運用作業にかかる一連の操作の操作手順を表す運用手順書110を取得する。図1の例では、運用手順書110には、運用作業にかかる一連の操作OP1〜OP5が記述されている。
(2)実行フロー作成支援装置101は、部品情報120を参照して、運用作業にかかる一連の操作に含まれる操作の操作名と部品の部品名とを比較した比較結果に基づいて、操作と部品とを対応付ける。ここで、部品情報120は、運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、部品の部品名と部品の実行時に与える変数の変数名とを対応付けて表す情報である。変数とは、例えば、部品の実行時に入力、設定されるサーバ名、ユーザ名、パスワード、ファイル名などである。
図1の例では、部品情報120には、部品P1〜P3が含まれている。また、部品情報120には、部品P1の実行時に与える変数a,b,cが含まれている。一例として、部品P1が「ファイル転送」を自動実行する部品の場合、変数a,b,cは、例えば、「転送先サーバ名」、「ユーザ名」、「転送ファイル名」などである。なお、図示は省略するが、部品情報120には、部品P2,P3の実行時に与える変数も含まれている。
具体的には、例えば、実行フロー作成支援装置101は、部品情報120に含まれる部品P1〜P3のうち、操作の操作名と部品の部品名との類似度が閾値以上かつ当該類似度が最大の部品を、操作と対応付ける。図1の例では、操作OP1と部品P1とが対応付けられ、操作OP4と部品P2とが対応付けられ、操作OP5と部品P3とが対応付けられている。
(3)実行フロー作成支援装置101は、一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択する。図1の例では、一連の操作OP1〜OP5のうち部品P1に対応する操作OP1の直後の操作であって、部品に未対応の操作OP2が選択される。
(4)実行フロー作成支援装置101は、部品情報120を参照して、選択した第2の操作の操作名と所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、所定の部品に第2の操作を対応付ける。ここで、操作の操作名と部品の実行時に与える変数の変数名とが類似する場合、その操作が、変数の値を入力、設定するような操作あるいは変数の値を引数とするような操作である可能性が高い。
このため、実行フロー作成支援装置101は、例えば、操作OP2の操作名と部品P1の実行時に与える変数の変数名との類似度が閾値以上の場合に、部品P1に操作OP2を対応付ける。これにより、部品の実行時に与える変数の値を入力、設定するような操作あるいは変数の値を引数とするような操作を、その部品と対応付けることができる。
ここで、操作OP2の操作名と部品P1の実行時に与える変数aの変数名との類似度が閾値以上の場合を想定する。この場合、実行フロー作成支援装置101は、部品P1に操作OP2を対応付ける。以降、実行フロー作成支援装置101は、例えば、一連の操作のうち部品に未対応の選択されていない操作がなくなるまで、上記(3)および上記(4)の処理を繰り返す。
図1の例では、部品P1に操作OP2が対応付けられた結果、上記(3)において、一連の操作OP1〜OP5のうち部品P1に対応する操作OP2の直後の操作であって、部品に対応付けられていない操作OP3が選択される。そして、上記(4)において、操作OP3の操作名と部品P1の実行時に与える変数の変数名との類似度が閾値以上の場合に、部品P1に操作OP3が対応付けられる。
このように、実行フロー作成支援装置101によれば、運用手順書110内のオペレータの操作と自動化ツールの部品とが多対1で対応する場合であっても、操作/部品間の対応付けを行うことができる。これにより、運用手順書110から運用作業を自動化する実行フローを作成する際の作業負荷を軽減させることができる。
(実行フロー作成支援装置101のハードウェア構成例)
図2は、実行フロー作成支援装置101のハードウェア構成例を示すブロック図である。図2において、実行フロー作成支援装置101は、CPU201(Central Processing Unit)と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、磁気ディスクドライブ204と、磁気ディスク205と、I/F(Interface)206と、ディスプレイ207と、キーボード208と、マウス209と、を有する。また、各構成部はバス200によってそれぞれ接続される。
図2は、実行フロー作成支援装置101のハードウェア構成例を示すブロック図である。図2において、実行フロー作成支援装置101は、CPU201(Central Processing Unit)と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、磁気ディスクドライブ204と、磁気ディスク205と、I/F(Interface)206と、ディスプレイ207と、キーボード208と、マウス209と、を有する。また、各構成部はバス200によってそれぞれ接続される。
ここで、CPU201は、実行フロー作成支援装置101の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。磁気ディスクドライブ204は、CPU201の制御にしたがって磁気ディスク205に対するデータのリード/ライトを制御する。磁気ディスク205は、磁気ディスクドライブ204の制御で書き込まれたデータを記憶する。
I/F206は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク210に接続され、ネットワーク210を介して他の装置に接続される。そして、I/F206は、ネットワーク210と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F206には、例えば、モデムやLANアダプタなどを採用することができる。
ディスプレイ207は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ207は、例えば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
キーボード208は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス209は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。なお、実行フロー作成支援装置101は、上述した構成部のうち、例えば、ディスプレイ207、キーボード208、マウス209等を有さないことにしてもよい。
(運用手順書Mの具体例)
つぎに、運用手順書Mの具体例について説明する。なお、運用手順書Mは、例えば、図1に示した運用手順書110に相当する。
つぎに、運用手順書Mの具体例について説明する。なお、運用手順書Mは、例えば、図1に示した運用手順書110に相当する。
図3は、運用手順書Mの具体例を示す説明図である。図3において、運用手順書Mは、手順名「Cファイル転送手順」の運用作業にかかる一連の操作の操作手順を表す情報である。具体的には、運用手順書Mには、運用作業にかかる操作の操作内容を表す本文300−1〜300−7が操作順に記述されている。
例えば、本文300−1は、「Aサーバに接続する」というオペレータの操作内容を表している。また、本文300−2は、「ユーザ名を入力」というオペレータの操作内容を表している。また、本文300−3は、「パスワードを入力」というオペレータの操作内容を表している。
(自動実行部品DB400の記憶内容)
つぎに、実行フロー作成支援装置101が用いる自動実行部品DB(データベース)400の記憶内容について説明する。自動実行部品DB400は、例えば、図2に示したROM202、RAM203、磁気ディスク205などの記憶装置に記憶される。なお、自動実行部品DB400は、例えば、図1に示した部品情報120に相当する。
つぎに、実行フロー作成支援装置101が用いる自動実行部品DB(データベース)400の記憶内容について説明する。自動実行部品DB400は、例えば、図2に示したROM202、RAM203、磁気ディスク205などの記憶装置に記憶される。なお、自動実行部品DB400は、例えば、図1に示した部品情報120に相当する。
図4は、自動実行部品DB400の記憶内容の一例を示す説明図である。図4において、自動実行部品DB400は、部品名およびパラメータ名のフィールドを有し、各フィールドに情報を設定することにより、自動化ツールの部品ごとの部品情報(例えば、部品情報400−1〜400−3)を記憶している。
ここで、部品名は、運用作業にかかる一連の操作の一部または全部を自動実行するための部品の名称である。パラメータ名は、部品の実行時に与えるパラメータの名称である。例えば、部品情報400−1は、部品名「ファイル転送」の部品のパラメータ名「転送先サーバ名」、「ユーザ名」、「パスワード」および「転送ファイル名」を示している。
(操作名テーブル500の記憶内容)
つぎに、実行フロー作成支援装置101が用いる操作名テーブル500の記憶内容について説明する。操作名テーブル500は、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置により実現される。
つぎに、実行フロー作成支援装置101が用いる操作名テーブル500の記憶内容について説明する。操作名テーブル500は、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置により実現される。
図5は、操作名テーブル500の記憶内容の一例を示す説明図である。図5において、操作名テーブル500は、本文および操作名のフィールドを有し、各フィールドに情報を設定することで、抽出結果500−1〜500−7をレコードとして記憶する。
ここで、本文は、運用手順書Mに含まれる本文である。ここでは、手順名「Cファイル転送手順」の運用手順書Mに含まれる本文(図3に示した本文300−1〜300−7)が示されている。また、操作名は、運用手順書Mに含まれる操作の名称である。ここでは、操作名が対象と行為に分けられている。
操作名の対象は、操作の対象を表す文字列である。また、操作名の行為は、操作の操作内容を表す文字列である。例えば、抽出結果500−1は、手順名「Cファイル転送手順」の運用手順書Mに含まれる本文「Aサーバに接続する」から抽出された操作名「(対象)Aサーバ(行為)接続」を示している。
(対応付けリストLTの記憶内容)
つぎに、実行フロー作成支援装置101が用いる対応付けリストLTの記憶内容について説明する。対応付けリストLTは、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置により実現される。
つぎに、実行フロー作成支援装置101が用いる対応付けリストLTの記憶内容について説明する。対応付けリストLTは、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置により実現される。
図6は、対応付けリストLTの記憶内容の一例を示す説明図である。図6において、対応付けリストLTは、本文、操作名および対応部品名のフィールドを有し、各フィールドに情報を設定することで、対応付け結果(例えば、対応付け結果600−1〜600−4)を記憶する。
ここで、本文は、運用手順書Mに含まれる本文である。本文フィールドには、運用手順書Mに含まれる本文が出現順に設定される。また、操作名は、運用手順書Mに含まれる操作の名称である。ここでは、操作名が対象と行為に分けられている。対応部品名は、操作名に対応する部品の名称である。
例えば、対応付け結果600−1は、手順名「Cファイル転送手順」の運用手順書Mに含まれる本文「Cファイルを転送する」から抽出された操作名「(対象)Cファイル(行為)転送」に対応する対応部品名「ファイル転送」を示している。
(実行フロー作成支援装置101の機能的構成例)
図7は、実行フロー作成支援装置101の機能的構成例を示すブロック図である。図7において、実行フロー作成支援装置101は、取得部701と、抽出部702と、第1の対応付け部703と、選択部704と、第2の対応付け部705と、出力部706と、を含む構成である。各機能部は、具体的には、例えば、図2に示したROM202、RAM203、磁気ディスク205などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F206により、その機能を実現する。各機能部の処理結果は、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置に記憶される。
図7は、実行フロー作成支援装置101の機能的構成例を示すブロック図である。図7において、実行フロー作成支援装置101は、取得部701と、抽出部702と、第1の対応付け部703と、選択部704と、第2の対応付け部705と、出力部706と、を含む構成である。各機能部は、具体的には、例えば、図2に示したROM202、RAM203、磁気ディスク205などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F206により、その機能を実現する。各機能部の処理結果は、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置に記憶される。
以下の説明では、運用作業にかかる一連の操作を「一連の操作OP1〜OPn」と表記し(n:2以上の自然数)、一連の操作OP1〜OPnのうちの任意の操作を「操作OPi」と表記する場合がある(i=1,2,…,n)。また、自動実行部品DB400に含まれる複数の部品を「部品P1〜Pm」と表記し(m:2以上の自然数)、部品P1〜Pmのうちの任意の部品を「部品Pj」と表記する場合がある(j=1,2,…,m)。
取得部701は、運用作業にかかる一連の操作OP1〜OPnの操作手順を表す運用手順書Mを取得する機能を有する。具体的には、例えば、取得部701は、図2に示したキーボード208やマウス209を用いたユーザの操作入力により、運用手順書M(図3参照)を取得する。また、取得部701は、例えば、ネットワーク210を介して、外部のコンピュータから運用手順書Mを取得することにしてもよい。
抽出部702は、取得された運用手順書Mから、一連の操作OP1〜OPnに含まれる操作OPiの操作名を抽出する機能を有する。具体的には、例えば、抽出部702は、運用手順書Mに含まれる各本文(例えば、図3に示した本文300−1〜300−7)に対して形態素解析および係り受け解析を行う。そして、抽出部702は、各本文から、動詞を(行為)とし、動詞にかかる名詞を(対象)として抽出することにより、操作OPiの操作名を抽出する。
一例として、図3に示した本文300−1を例に挙げると、抽出部702は、本文300−1から、動詞「接続」を(行為)とし、動詞にかかる名詞「Aサーバ」を(対象)として抽出することにより、操作名「Aサーバ接続」を抽出する。抽出された抽出結果は、例えば、図5に示した操作名テーブル500に記憶される。
これにより、運用手順書Mから運用作業にかかる一連の操作OP1〜OPnに含まれる各操作OPiの操作名を抽出することができる。
第1の対応付け部703は、自動実行部品DB400(図4参照)を参照して、一連の操作OP1〜OPnに含まれる操作OPiの操作名と部品Pjの部品名とを比較した比較結果に基づいて、操作OPiと部品Pjとを対応付ける機能を有する。具体的には、例えば、第1の対応付け部703は、部品P1〜Pmのうち、操作OPiの操作名と部品Pjの部品名との類似度Rが閾値α以上かつ類似度Rが最大の部品Pjを、操作OPiと対応付ける。
ここで、操作名「Cファイル転送」と部品名「ファイル転送」を例に挙げて、操作OPiと部品Pjとの対応付け例について説明する。なお、閾値αは、任意に設定されてROM202、RAM203、磁気ディスク205などの記憶装置に記憶されている。
まず、第1の対応付け部703は、操作名「Cファイル転送」と部品名「ファイル転送」とを比較して文字列の一致判定を行う。ここでは、操作名「Cファイル転送」の7文字のうち「ファイル転送」の6文字が部品名「ファイル転送」と一致している。この場合、第1の対応付け部703は、操作名「Cファイル転送」と部品名「ファイル転送」との類似度Rとして「R=6/7」を算出する。
ここで、閾値αを「α=0.5」とし、複数の部品P1〜Pmのうち、操作名「Cファイル転送」と部品名との類似度Rが最大の部品を、部品名「ファイル転送」の部品とする。この場合、類似度R「6/7」が閾値α「0.5」以上のため、第1の対応付け部703は、部品名「ファイル転送」の部品Pjを、操作名「Cファイル転送」の操作OPiと対応付ける。
これにより、部品P1〜Pmのうち操作OPiの操作名と最も類似している部品名の部品Pjと操作OPiとを対応付けることができる。対応付け結果は、例えば、図6に示した対応付けリストLTに記憶される。
選択部704は、一連の操作OP1〜OPnのうち部品Pjに対応する操作OPiの直前または直後の操作であって、部品に対応付けられていない操作OPkを選択する機能を有する(k≠i、k=1,2,…,n)。具体的には、例えば、選択部704は、対応付けリストLTを参照して、部品名「ファイル転送」に対応する操作名「Cファイル転送」の直前の部品に未対応の操作名「パスワード入力」を選択する。
第2の対応付け部705は、自動実行部品DB400を参照して、選択した操作OPkの操作名と部品Pjの実行時に与えるパラメータのパラメータ名とを比較した比較結果に基づいて、部品Pjに操作OPkを対応付ける機能を有する。
具体的には、例えば、第2の対応付け部705は、操作OPkの操作名の対象部分と部品Pjのパラメータ名との類似度Rが閾値β以上の場合に、部品Pjに操作OPkを対応付ける。対応付け結果は、例えば、図6に示した対応付けリストLTに記憶される。なお、閾値βは、任意に設定されてROM202、RAM203、磁気ディスク205などの記憶装置に記憶されている。閾値βは、例えば、「β=0.5」である。
これにより、部品Pjの実行時に与えるパラメータ値を入力、設定するような操作OPk、あるいは、パラメータ値を引数とするような操作OPkを、部品Pjと対応付けることができる。なお、第2の対応付け部705の具体的な処理内容については、図8および図9を用いて後述する。
また、選択部704は、部品Pjに対応する操作数が閾値γ以下の場合に、部品Pjに対応する操作OPiの直前または直後の操作であって、部品に対応付けられていない操作OPkを選択することにしてもよい。ここで、閾値γは、部品Pjに対応付ける操作OPiの操作数の上限数である。閾値γは、例えば、任意に設定されてROM202、RAM203、磁気ディスク205などの記憶装置に記憶されている。
また、選択部704は、部品Pjの実行時に与えるパラメータ数に基づいて、閾値γを算出することにしてもよい。具体的には、例えば、選択部704は、部品Pjの実行時に与えるパラメータ数の2倍程度の値を閾値γとして算出する。これにより、第1の対応付け部703による対応付けが適切に行われていない場合などに、部品Pjと操作OPkとの誤った対応付けが行われることを抑制することができる。
また、第2の対応付け部705は、対応付け結果に基づいて、一連の操作OP1〜OPnを実行する一以上の部品Pjの実行順序を表す実行フローを作成することにしてもよい。具体的には、例えば、第2の対応付け部705は、対応付けリストLTを参照して、一連の操作OP1〜OPnを自動化ツールの部品に変換することにより実行フローを作成する。
出力部706は、対応付け結果を出力する機能を有する。具体的には、例えば、後述する図9の(8−4)に示すような対応付けリストLTを出力することにしてもよい。これにより、運用手順書M内のオペレータの各操作OPiの操作名と自動化ツールの部品Pjの部品名とを対応付けて表す対応付けリストLTを出力することができる。
また、出力部706は、作成された実行フローを出力することにしてもよい。これにより、自動化ツールで運用作業を自動実行する場合の実行フローを出力することができる。なお、出力部706の出力形式としては、例えば、RAM203、磁気ディスク205などの記憶装置への記憶、ディスプレイ207への表示、不図示のプリンタへの印刷出力、I/F206による外部のコンピュータへの送信がある。
(第2の対応付け部705の具体的な処理内容)
つぎに、図8および図9を用いて、第2の対応付け部705の具体的な処理内容について説明する。
つぎに、図8および図9を用いて、第2の対応付け部705の具体的な処理内容について説明する。
図8および図9は、対応付けリストLTの記憶内容の変遷例を示す説明図である。図8に示す(8−1)において、操作OPkの操作名として、対応部品名「ファイル転送」に対応する操作名「Cファイル転送」の直前の対応部品名が未設定の操作名「パスワード入力」が選択された場合を想定する。
この場合、第2の対応付け部705は、自動実行部品DB400を参照して、対応部品名「ファイル転送」の部品の実行時に与えるいずれかのパラメータのパラメータ名を選択する。ここでは、対応部品名「ファイル転送」のパラメータ名「パスワード」が選択された場合を想定する。
つぎに、第2の対応付け部705は、操作名「パスワード入力」の対象部分「パスワード」とパラメータ名「パスワード」とを比較して文字列の一致判定を行う。ここでは、対象部分「パスワード」とパラメータ名「パスワード」とが完全一致する。この場合、第2の対応付け部705は、操作名「パスワード入力」の対象部分「パスワード」とパラメータ名「パスワード」との類似度Rとして「R=1」を算出する。
つぎに、第2の対応付け部705は、類似度Rが閾値β以上の場合に、対応部品名「ファイル転送」に操作名「パスワード入力」を対応付ける。ここでは、閾値βを「β=0.5」とする。この場合、類似度Rが閾値β以上のため、第2の対応付け部705は、対応部品名「ファイル転送」に操作名「パスワード入力」を対応付ける。
そして、第2の対応付け部705は、対応付けリストLT内の操作名「パスワード入力」の対応部品名フィールドに対応部品名「ファイル転送」を設定する(図8中、(8−2)参照)。これにより、部品Pjのパラメータを入力するような操作OPkを部品Pjと対応付けることができる。
図8に示す(8−2)において、操作OPkの操作名として、対応部品名「ファイル転送」に対応する操作名「パスワード入力」の直前の対応部品名が未設定の操作名「ユーザ名入力」が選択された場合を想定する。
この場合、第2の対応付け部705は、自動実行部品DB400を参照して、対応部品名「ファイル転送」の部品の実行時に与えるいずれかのパラメータのパラメータ名を選択する。ここでは、対応部品名「ファイル転送」のパラメータ名「ユーザ名」が選択された場合を想定する。
つぎに、第2の対応付け部705は、操作名「ユーザ名入力」の対象部分「ユーザ名」とパラメータ名「ユーザ名」とを比較して文字列の一致判定を行う。ここでは、対象部分「ユーザ名」とパラメータ名「ユーザ名」とが完全一致する。この場合、第2の対応付け部705は、操作名「ユーザ名入力」の対象部分「ユーザ名」とパラメータ名「ユーザ名」との類似度Rとして「R=1」を算出する。
つぎに、第2の対応付け部705は、類似度Rが閾値β以上の場合に、対応部品名「ファイル転送」に操作名「ユーザ名入力」を対応付ける。ここでは、類似度Rが閾値β以上のため、第2の対応付け部705は、対応部品名「ファイル転送」に操作名「ユーザ名入力」を対応付ける。
そして、第2の対応付け部705は、対応付けリストLT内の操作名「ユーザ名入力」の対応部品名フィールドに対応部品名「ファイル転送」を設定する(図9中、(8−3)参照)。これにより、部品Pjのパラメータを入力するような操作OPkを部品Pjと対応付けることができる。
図9に示す(8−3)において、操作OPkの操作名として、対応部品名「ファイル転送」に対応する操作名「ユーザ名入力」の直前の対応部品名が未設定の操作名「Aサーバ接続」が選択された場合を想定する。
この場合、第2の対応付け部705は、自動実行部品DB400を参照して、対応部品名「ファイル転送」の部品の実行時に与えるいずれかのパラメータのパラメータ名を選択する。ここでは、対応部品名「ファイル転送」のパラメータ名「転送先サーバ名」が選択された場合を想定する。
つぎに、第2の対応付け部705は、操作名「Aサーバ接続」の対象部分「Aサーバ」とパラメータ名「転送先サーバ名」とを比較して文字列の一致判定を行う。ここでは、対象部分「Aサーバ」の4文字のうち「サーバ」の3文字がパラメータ名「転送先サーバ名」と一致している。この場合、第2の対応付け部705は、操作名「Aサーバ接続」の対象部分「Aサーバ」とパラメータ名「転送先サーバ名」との類似度Rとして「R=3/4」を算出する。
つぎに、第2の対応付け部705は、類似度Rが閾値β以上の場合に、対応部品名「ファイル転送」に操作名「Aサーバ接続」を対応付ける。ここでは、類似度Rが閾値β以上のため、第2の対応付け部705は、対応部品名「ファイル転送」に操作名「Aサーバ接続」を対応付ける。
そして、第2の対応付け部705は、対応付けリストLT内の操作名「Aサーバ接続」の対応部品名フィールドに対応部品名「ファイル転送」を設定する(図9中、(8−4)参照)。これにより、部品Pjのパラメータを設定するような操作OPkを部品Pjと対応付けることができる。
(実行フロー作成支援処理手順)
つぎに、実行フロー作成支援装置101の実行フロー作成支援処理手順について説明する。
つぎに、実行フロー作成支援装置101の実行フロー作成支援処理手順について説明する。
図10は、実行フロー作成支援装置101の実行フロー作成支援処理手順の一例を示すフローチャートである。図10のフローチャートにおいて、まず、実行フロー作成支援装置101は、運用手順書Mを取得したか否かを判断する(ステップS1001)。ここで、実行フロー作成支援装置101は、運用手順書Mを取得するのを待つ(ステップS1001:No)。
そして、運用手順書Mを取得した場合(ステップS1001:Yes)、実行フロー作成支援装置101は、運用手順書Mから、一連の操作OP1〜OPnに含まれる操作OPiの操作名を抽出する(ステップS1002)。なお、抽出結果は、操作名テーブル500に記憶される。
つぎに、実行フロー作成支援装置101は、第1の対応付け処理を実行する(ステップS1003)。第1の対応付け処理は、操作OPiの操作名と部品Pjの部品名とを比較して、操作OPiと部品Pjとを対応付ける処理である。なお、第1の対応付け処理の具体的な処理手順については、図11を用いて後述する。
つぎに、実行フロー作成支援装置101は、第2の対応付け処理を実行する(ステップS1004)。第2の対応付け処理は、操作OPkの操作名と部品Pjの実行時に与えるパラメータのパラメータ名とを比較して、部品Pjに操作OPkを対応付ける処理である。なお、第2の対応付け処理の具体的な処理手順については、図12および図13を用いて後述する。
そして、実行フロー作成支援装置101は、対応付けリストLTを出力して(ステップS1005)、本フローチャートによる一連の処理を終了する。これにより、運用手順書M内のオペレータの各操作OPiの操作名と自動化ツールの部品Pjの部品名とを対応付けて表す対応付けリストLTを出力することができる。
<第1の対応付け処理手順>
つぎに、図10に示したステップS1003の第1の対応付け処理の具体的な処理手順について説明する。
つぎに、図10に示したステップS1003の第1の対応付け処理の具体的な処理手順について説明する。
図11は、第1の対応付け処理の具体的処理手順の一例を示すフローチャートである。図11のフローチャートにおいて、まず、実行フロー作成支援装置101は、操作名テーブル500から操作OPiの操作名を選択する(ステップS1101)。
つぎに、実行フロー作成支援装置101は、自動実行部品DB400から部品Pjの部品名を選択する(ステップS1102)。そして、実行フロー作成支援装置101は、操作OPiの操作名と部品Pjの部品名との類似度Rを算出する(ステップS1103)。
つぎに、実行フロー作成支援装置101は、算出した類似度Rがバッファ内の類似度R以上か否かを判断する(ステップS1104)。なお、バッファは、例えば、RAM203、磁気ディスク205などの記憶装置により実現される。
ここで、バッファ内の類似度R未満の場合(ステップS1104:No)、実行フロー作成支援装置101は、ステップS1106に移行する。一方、バッファ内の類似度R以上の場合(ステップS1104:Yes)、実行フロー作成支援装置101は、バッファに部品Pjの部品名と類似度Rとを登録する(ステップS1105)。
つぎに、実行フロー作成支援装置101は、自動実行部品DB400から選択していない未選択の部品名があるか否かを判断する(ステップS1106)。ここで、未選択の部品名がある場合(ステップS1106:Yes)、実行フロー作成支援装置101は、ステップS1102に戻って、自動実行部品DB400から未選択の部品Pjの部品名を選択する。
一方、未選択の部品名がない場合(ステップS1106:No)、実行フロー作成支援装置101は、バッファ内の類似度Rが閾値α以上か否かを判断する(ステップS1107)。ここで、バッファ内の類似度Rが閾値α未満の場合(ステップS1107:No)、実行フロー作成支援装置101は、ステップS1109に移行する。
一方、バッファ内の類似度Rが閾値α以上の場合(ステップS1107:Yes)、実行フロー作成支援装置101は、操作OPiの操作名と部品Pjの部品名とを対応付ける(ステップS1108)。対応付け結果は、対応付けリストLTに記憶される。
つぎに、実行フロー作成支援装置101は、バッファを空にして(ステップS1109)、操作名テーブル500から選択していない未選択の操作名があるか否かを判断する(ステップS1110)。ここで、未選択の操作名がある場合(ステップS1110:Yes)、実行フロー作成支援装置101は、ステップS1101に戻って、操作名テーブル500から未選択の操作OPiの操作名を選択する。
一方、未選択の操作名がない場合(ステップS1110:No)、実行フロー作成支援装置101は、本フローチャートによる一連の処理を終了して第1の対応付け処理を呼び出したステップに戻る。これにより、部品P1〜Pmのうち操作OPiの操作名と最も類似している部品名の部品Pjと操作OPiとを対応付けることができる。
<第2の対応付け処理手順>
つぎに、図10に示したステップS1004の第2の対応付け処理の具体的な処理手順について説明する。以下の説明では、対応付けリストLTにおいて、対応する部品名が設定されている操作名を「部品対応操作名」と表記し、対応する部品名が未設定の操作名を「部品未対応操作名」と表記する場合がある。
つぎに、図10に示したステップS1004の第2の対応付け処理の具体的な処理手順について説明する。以下の説明では、対応付けリストLTにおいて、対応する部品名が設定されている操作名を「部品対応操作名」と表記し、対応する部品名が未設定の操作名を「部品未対応操作名」と表記する場合がある。
図12および図13は、第2の対応付け処理の具体的処理手順の一例を示すフローチャートである。図12のフローチャートにおいて、まず、実行フロー作成支援装置101は、対応付けリストLTから部品対応操作名Xを選択する(ステップS1201)。つぎに、実行フロー作成支援装置101は、対応付けリストLTにおいて、選択した部品対応操作名Xと、その直前の部品対応操作名Yとの間に部品未対応操作名があるか否かを判断する(ステップS1202)。
ここで、部品未対応操作名がある場合(ステップS1202:Yes)、実行フロー作成支援装置101は、対応付けリストLTから、部品対応操作名Xの直前の部品未対応操作名Aを選択する(ステップS1203)。つぎに、実行フロー作成支援装置101は、自動実行部品DB400を参照して、部品対応操作名Xの対応部品名Pに対応するパラメータ名を選択する(ステップS1204)。
そして、実行フロー作成支援装置101は、部品未対応操作名Aの対象部分とパラメータ名との類似度Rを算出する(ステップS1205)。つぎに、実行フロー作成支援装置101は、算出した類似度Rが閾値β以上か否かを判断する(ステップS1206)。
ここで、類似度Rが閾値β未満の場合(ステップS1206:No)、実行フロー作成支援装置101は、部品対応操作名Xの対応部品名に対応する未選択のパラメータ名があるか否かを判断する(ステップS1207)。
そして、未選択のパラメータ名がある場合(ステップS1207:Yes)、実行フロー作成支援装置101は、ステップS1204に戻って、部品対応操作名Xの対応部品名Pに対応する未選択のパラメータ名を選択する。一方、未選択のパラメータ名がない場合(ステップS1207:No)、実行フロー作成支援装置101は、図13に示すステップS1301に移行する。
また、ステップS1206において、類似度Rが閾値β以上の場合(ステップS1206:Yes)、実行フロー作成支援装置101は、対応部品名Pに部品未対応操作名Aを対応付ける(ステップS1208)。対応付け結果は、対応付けリストLTに記憶される。
そして、実行フロー作成支援装置101は、対応付けリストLTにおいて、部品未対応操作名Aと、その直前の部品対応操作名Yとの間に部品未対応操作名があるか否かを判断する(ステップS1209)。ここで、部品未対応操作名がある場合(ステップS1209:Yes)、実行フロー作成支援装置101は、ステップS1203に戻って、対応付けリストLTから、部品対応操作名Xの直前の未選択の部品未対応操作名Aを選択する。
一方、部品未対応操作名がない場合(ステップS1209:No)、実行フロー作成支援装置101は、図13に示すステップS1301に移行する。また、ステップS1202において、部品未対応操作名がない場合(ステップS1202:No)、実行フロー作成支援装置101は、図13に示すステップS1301に移行する。
図13のフローチャートにおいて、まず、実行フロー作成支援装置101は、対応付けリストLTにおいて、部品対応操作名Xと、その直後の部品対応操作名Zとの間に部品未対応操作名があるか否かを判断する(ステップS1301)。ここで、部品未対応操作名がない場合(ステップS1301:No)、実行フロー作成支援装置101は、ステップS1309に移行する。
一方、部品未対応操作名がある場合(ステップS1301:Yes)、実行フロー作成支援装置101は、対応付けリストLTから、部品対応操作名Xの直後の部品未対応操作名Bを選択する(ステップS1302)。つぎに、実行フロー作成支援装置101は、自動実行部品DB400を参照して、部品対応操作名Xの対応部品名Pに対応するパラメータ名を選択する(ステップS1303)。
そして、実行フロー作成支援装置101は、部品未対応操作名Bの対象部分とパラメータ名との類似度Rを算出する(ステップS1304)。つぎに、実行フロー作成支援装置101は、算出した類似度Rが閾値β以上か否かを判断する(ステップS1305)。
ここで、類似度Rが閾値β未満の場合(ステップS1305:No)、実行フロー作成支援装置101は、部品対応操作名Xの対応部品名に対応する未選択のパラメータ名があるか否かを判断する(ステップS1306)。
そして、未選択のパラメータ名がある場合(ステップS1306:Yes)、実行フロー作成支援装置101は、ステップS1303に戻って、部品対応操作名Xの対応部品名Pに対応する未選択のパラメータ名を選択する。一方、未選択のパラメータ名がない場合(ステップS1306:No)、実行フロー作成支援装置101は、ステップS1309に移行する。
また、ステップS1305において、類似度Rが閾値β以上の場合(ステップS1305:Yes)、実行フロー作成支援装置101は、対応部品名Pに部品未対応操作名Bを対応付ける(ステップS1307)。対応付け結果は、対応付けリストLTに記憶される。
そして、実行フロー作成支援装置101は、対応付けリストLTにおいて、部品未対応操作名Bと、直後の部品対応操作名Zとの間に部品未対応操作名があるか否かを判断する(ステップS1308)。ここで、部品未対応操作名がある場合(ステップS1308:Yes)、実行フロー作成支援装置101は、ステップS1302に戻って、対応付けリストLTから、部品対応操作名Xの直後の未選択の部品未対応操作名Bを選択する。
一方、部品未対応操作名がない場合(ステップS1308:No)、実行フロー作成支援装置101は、対応付けリストLTから選択していない未選択の部品対応操作名があるか否かを判断する(ステップS1309)。ここで、未選択の部品対応操作名がある場合(ステップS1309:Yes)、実行フロー作成支援装置101は、図12に示したステップS1201に戻って、対応付けリストLTから未選択の部品対応操作名Xを選択する。
一方、未選択の部品対応操作名がない場合(ステップS1309:No)、実行フロー作成支援装置101は、本フローチャートによる一連の処理を終了して第2の対応付け処理を呼び出したステップに戻る。これにより、部品Pjの実行時に与えるパラメータ値を入力、設定するような操作OPk、あるいは、パラメータ値を引数とするような操作OPkを、部品Pjと対応付けることができる。
なお、図12に示したステップS1202において、部品対応操作名Xの直前の部品対応操作名Yが存在しない場合は、実行フロー作成支援装置101は、対応付けリストLTの先頭と部品対応操作名Xとの間に部品未対応操作名があるか否かを判断する。また、図13に示したステップS1301において、部品対応操作名Xの直後の部品対応操作名Zが存在しない場合は、実行フロー作成支援装置101は、対応付けリストLTの末尾と部品対応操作名Xとの間に部品未対応操作名があるか否かを判断する。
以上説明したように、実行フロー作成支援装置101によれば、運用手順書Mに含まれる各本文に対して形態素解析および係り受け解析を行うことにより、各本文から、動詞を(行為)とし、動詞にかかる名詞を(対象)として抽出することができる。これにより、運用手順書Mから運用作業にかかる一連の操作OP1〜OPnに含まれる各操作OPiの操作名を抽出することができる。
また、実行フロー作成支援装置101によれば、自動実行部品DB400を参照して、一連の操作OP1〜OPnに含まれる操作OPiの操作名と部品Pjの部品名とを比較することにより、操作OPiと部品Pjとを対応付けることができる。具体的には、例えば、実行フロー作成支援装置101によれば、部品P1〜Pmのうち、操作OPiの操作名と部品Pjの部品名との類似度Rが閾値α以上でかつ類似度Rが最大の部品Pjを、操作OPiと対応付けることができる。これにより、部品P1〜Pmのうち操作OPiの操作名と最も類似している部品名の部品Pjと操作OPiとを対応付けることができる。
また、実行フロー作成支援装置101によれば、対応付けリストLTを参照して、一連の操作OP1〜OPnのうち部品Pjに対応する操作OPiの直前または直後の操作であって、部品に対応付けられていない操作OPkを選択することができる。これにより、運用手順書Mにおいて、部品Pjに対応する操作OPiの周辺に記述されている操作OPkを、部品Pjに対応する操作候補として絞り込むことができる。
また、実行フロー作成支援装置101によれば、自動実行部品DB400を参照して、選択した操作OPkの操作名と部品Pjの実行時に与えるパラメータのパラメータ名とを比較することにより、部品Pjに操作OPkを対応付けることができる。具体的には、例えば、実行フロー作成支援装置101によれば、操作OPkの操作名と部品Pjのパラメータ名との類似度Rが閾値β以上の場合に、部品Pjに操作OPkを対応付けることができる。これにより、部品Pjの実行時に与えるパラメータ値を入力、設定するような操作OPk、あるいは、パラメータ値を引数とするような操作OPkを、部品Pjと対応付けることができる。
また、実行フロー作成支援装置101によれば、部品Pjに対応する操作数が閾値γ以下の場合に、部品Pjに対応する操作OPiの直前または直後の操作であって、部品に対応付けられていない操作OPkを選択することができる。これにより、操作名と部品名との比較から操作/部品間の対応付けが適切に行われていない場合などに、部品Pjと操作OPkとの誤った対応付けが行われることを抑制することができる。
また、実行フロー作成支援装置101によれば、部品Pjの実行時に与えるパラメータ数に基づいて、閾値γを算出することができる。これにより、部品Pjごとに、部品Pjと対応付ける操作OPiの操作数の上限数を設定することができる。
また、実行フロー作成支援装置101によれば、対応付け結果に基づいて、一連の操作OP1〜OPnを実行する一以上の部品Pjの実行順序を表す実行フローを作成することができる。これにより、自動化ツールで運用作業を自動実行する場合の実行フローを自動作成することができる。
これらのことから、実行フロー作成支援装置101によれば、運用手順書M内のオペレータの操作と自動化ツールの部品とが多対1で対応する場合であっても、操作/部品間の対応付けを行うことができる。これにより、運用手順書から運用作業を自動化する実行フローを作成する際の作業負荷を軽減させることができる。
なお、本実施の形態で説明した実行フロー作成支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本実行フロー作成支援プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本実行フロー作成支援プログラムは、インターネット等のネットワークを介して配布してもよい。
101 実行フロー作成支援装置
400 自動実行部品DB
500 操作名テーブル
701 取得部
702 抽出部
703 第1の対応付け部
704 選択部
705 第2の対応付け部
706 出力部
LT 対応付けリスト
M 運用手順書
400 自動実行部品DB
500 操作名テーブル
701 取得部
702 抽出部
703 第1の対応付け部
704 選択部
705 第2の対応付け部
706 出力部
LT 対応付けリスト
M 運用手順書
本発明は、実行フロー作成支援プログラム、実行フロー作成支援装置および実行フロー作成支援方法に関する。
近年、システムの運用作業の品質向上やオペレータの工数削減のために、自動化ツールで運用作業を自動的に行えるようになってきている。また、オペレータが手作業で行う操作を記述した運用手順書から、自動実行部品の実行順序を表す実行フローを作成し、自動化ツールで自動実行できるようにすることが求められている。
関連する先行技術としては、例えば、入力された指示に対応する操作手順のデータを示す操作手順書を解析して、指示に対応した操作手順を自動実行する技術がある。また、仕様書からデータアクセス関数プログラムを生成するための技術がある。また、画面と処理とが記述される形式の画面遷移図に相当する仕様書データを解釈して、ユーザインタフェースアプリケーションプログラムを生成する技術がある。
しかしながら、従来技術によれば、運用手順書内のオペレータの操作を自動化ツールの自動実行部品に変換して実行フローを作成する際に、オペレータの操作と自動化ツールの自動実行部品との対応付けを行うことが難しい。例えば、操作名と部品名とを比較して操作と自動実行部品とを対応付ける場合、運用手順書では複数の操作を必要とする作業が一つの自動実行部品で実行される場合のような多対1に対応することができない。
一側面では、本発明は、運用作業を自動化する実行フローの作成を支援する実行フロー作成支援プログラム、実行フロー作成支援装置および実行フロー作成支援方法を提供することを目的とする。
本発明の一側面によれば、運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付け、前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択し、前記部品情報を参照して、選択した前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける実行フロー作成支援プログラム、実行フロー作成支援装置および実行フロー作成支援方法が提案される。
本発明の一態様によれば、運用作業を自動化する実行フローの作成を支援することができるという効果を奏する。
以下に図面を参照して、本発明にかかる実行フロー作成支援プログラム、実行フロー作成支援装置および実行フロー作成支援方法の実施の形態を詳細に説明する。
(実行フロー作成支援方法の一実施例)
図1は、実施の形態にかかる実行フロー作成支援方法の一実施例を示す説明図である。図1において、実行フロー作成支援装置101は、運用手順書から運用作業を自動化する実行フローを作成する作業を支援するコンピュータである。
図1は、実施の形態にかかる実行フロー作成支援方法の一実施例を示す説明図である。図1において、実行フロー作成支援装置101は、運用手順書から運用作業を自動化する実行フローを作成する作業を支援するコンピュータである。
ここで、運用手順書とは、運用作業にかかる一連の操作の操作手順を表す情報である。具体的には、例えば、運用手順書は、運用作業にかかる一連の操作の操作手順が自然言語により記述されたテキストデータである。操作とは、オペレータが行う操作である。操作としては、例えば、サーバに接続する操作やユーザ名、パスワード等を入力する操作がある。
また、運用作業とは、システムの保守運用や障害対応などのシステム運用にかかる作業である。実行フローとは、自動化ツールと呼ばれるソフトウェアにより運用作業を自動実行する場合の部品の実行順序を表すものである。部品とは、運用作業にかかるオペレータの一連の操作の一部または全部を自動実行するための自動実行部品である。具体的には、例えば、部品は、自動化ツールから呼び出されるプログラムであり、このプログラムにはオペレータが行う操作と同等の機能を実行するための関数や関数に与える値などが記述されている。
本実施の形態では、実行フロー作成支援装置101は、運用手順書内の操作の操作名と自動化ツールの部品の部品名との一致判定だけでなく、部品の実行時に与える変数の変数名と操作名との一致判定も行って操作と部品とを対応付ける。これにより、部品の実行時の変数の値を入力、設定するような操作を部品に対応付けでき、複数の操作が一つの部品で実行されるような場合でも操作/部品間の対応付けを行えるようにする。以下、実行フロー作成支援装置101の実行フロー作成支援処理例について説明する。
(1)実行フロー作成支援装置101は、運用作業にかかる一連の操作の操作手順を表す運用手順書110を取得する。図1の例では、運用手順書110には、運用作業にかかる一連の操作OP1〜OP5が記述されている。
(2)実行フロー作成支援装置101は、部品情報120を参照して、運用作業にかかる一連の操作に含まれる操作の操作名と部品の部品名とを比較した比較結果に基づいて、操作と部品とを対応付ける。ここで、部品情報120は、運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、部品の部品名と部品の実行時に与える変数の変数名とを対応付けて表す情報である。変数とは、例えば、部品の実行時に入力、設定されるサーバ名、ユーザ名、パスワード、ファイル名などである。
図1の例では、部品情報120には、部品P1〜P3が含まれている。また、部品情報120には、部品P1の実行時に与える変数a,b,cが含まれている。一例として、部品P1が「ファイル転送」を自動実行する部品の場合、変数a,b,cは、例えば、「転送先サーバ名」、「ユーザ名」、「転送ファイル名」などである。なお、図示は省略するが、部品情報120には、部品P2,P3の実行時に与える変数も含まれている。
具体的には、例えば、実行フロー作成支援装置101は、部品情報120に含まれる部品P1〜P3のうち、操作の操作名と部品の部品名との類似度が閾値以上かつ当該類似度が最大の部品を、操作と対応付ける。図1の例では、操作OP1と部品P1とが対応付けられ、操作OP4と部品P2とが対応付けられ、操作OP5と部品P3とが対応付けられている。
(3)実行フロー作成支援装置101は、一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択する。図1の例では、一連の操作OP1〜OP5のうち部品P1に対応する操作OP1の直後の操作であって、部品に未対応の操作OP2が選択される。
(4)実行フロー作成支援装置101は、部品情報120を参照して、選択した第2の操作の操作名と所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、所定の部品に第2の操作を対応付ける。ここで、操作の操作名と部品の実行時に与える変数の変数名とが類似する場合、その操作が、変数の値を入力、設定するような操作あるいは変数の値を引数とするような操作である可能性が高い。
このため、実行フロー作成支援装置101は、例えば、操作OP2の操作名と部品P1の実行時に与える変数の変数名との類似度が閾値以上の場合に、部品P1に操作OP2を対応付ける。これにより、部品の実行時に与える変数の値を入力、設定するような操作あるいは変数の値を引数とするような操作を、その部品と対応付けることができる。
ここで、操作OP2の操作名と部品P1の実行時に与える変数aの変数名との類似度が閾値以上の場合を想定する。この場合、実行フロー作成支援装置101は、部品P1に操作OP2を対応付ける。以降、実行フロー作成支援装置101は、例えば、一連の操作のうち部品に未対応の選択されていない操作がなくなるまで、上記(3)および上記(4)の処理を繰り返す。
図1の例では、部品P1に操作OP2が対応付けられた結果、上記(3)において、一連の操作OP1〜OP5のうち部品P1に対応する操作OP2の直後の操作であって、部品に対応付けられていない操作OP3が選択される。そして、上記(4)において、操作OP3の操作名と部品P1の実行時に与える変数の変数名との類似度が閾値以上の場合に、部品P1に操作OP3が対応付けられる。
このように、実行フロー作成支援装置101によれば、運用手順書110内のオペレータの操作と自動化ツールの部品とが多対1で対応する場合であっても、操作/部品間の対応付けを行うことができる。これにより、運用手順書110から運用作業を自動化する実行フローを作成する際の作業負荷を軽減させることができる。
(実行フロー作成支援装置101のハードウェア構成例)
図2は、実行フロー作成支援装置101のハードウェア構成例を示すブロック図である。図2において、実行フロー作成支援装置101は、CPU201(Central Processing Unit)と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、磁気ディスクドライブ204と、磁気ディスク205と、I/F(Interface)206と、ディスプレイ207と、キーボード208と、マウス209と、を有する。また、各構成部はバス200によってそれぞれ接続される。
図2は、実行フロー作成支援装置101のハードウェア構成例を示すブロック図である。図2において、実行フロー作成支援装置101は、CPU201(Central Processing Unit)と、ROM(Read‐Only Memory)202と、RAM(Random Access Memory)203と、磁気ディスクドライブ204と、磁気ディスク205と、I/F(Interface)206と、ディスプレイ207と、キーボード208と、マウス209と、を有する。また、各構成部はバス200によってそれぞれ接続される。
ここで、CPU201は、実行フロー作成支援装置101の全体の制御を司る。ROM202は、ブートプログラムなどのプログラムを記憶している。RAM203は、CPU201のワークエリアとして使用される。磁気ディスクドライブ204は、CPU201の制御にしたがって磁気ディスク205に対するデータのリード/ライトを制御する。磁気ディスク205は、磁気ディスクドライブ204の制御で書き込まれたデータを記憶する。
I/F206は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク210に接続され、ネットワーク210を介して他の装置に接続される。そして、I/F206は、ネットワーク210と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F206には、例えば、モデムやLANアダプタなどを採用することができる。
ディスプレイ207は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ207は、例えば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
キーボード208は、文字、数字、各種指示などの入力のためのキーを有し、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス209は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。なお、実行フロー作成支援装置101は、上述した構成部のうち、例えば、ディスプレイ207、キーボード208、マウス209等を有さないことにしてもよい。
(運用手順書Mの具体例)
つぎに、運用手順書Mの具体例について説明する。なお、運用手順書Mは、例えば、図1に示した運用手順書110に相当する。
つぎに、運用手順書Mの具体例について説明する。なお、運用手順書Mは、例えば、図1に示した運用手順書110に相当する。
図3は、運用手順書Mの具体例を示す説明図である。図3において、運用手順書Mは、手順名「Cファイル転送手順」の運用作業にかかる一連の操作の操作手順を表す情報である。具体的には、運用手順書Mには、運用作業にかかる操作の操作内容を表す本文300−1〜300−7が操作順に記述されている。
例えば、本文300−1は、「Aサーバに接続する」というオペレータの操作内容を表している。また、本文300−2は、「ユーザ名を入力」というオペレータの操作内容を表している。また、本文300−3は、「パスワードを入力」というオペレータの操作内容を表している。
(自動実行部品DB400の記憶内容)
つぎに、実行フロー作成支援装置101が用いる自動実行部品DB(データベース)400の記憶内容について説明する。自動実行部品DB400は、例えば、図2に示したROM202、RAM203、磁気ディスク205などの記憶装置に記憶される。なお、自動実行部品DB400は、例えば、図1に示した部品情報120に相当する。
つぎに、実行フロー作成支援装置101が用いる自動実行部品DB(データベース)400の記憶内容について説明する。自動実行部品DB400は、例えば、図2に示したROM202、RAM203、磁気ディスク205などの記憶装置に記憶される。なお、自動実行部品DB400は、例えば、図1に示した部品情報120に相当する。
図4は、自動実行部品DB400の記憶内容の一例を示す説明図である。図4において、自動実行部品DB400は、部品名およびパラメータ名のフィールドを有し、各フィールドに情報を設定することにより、自動化ツールの部品ごとの部品情報(例えば、部品情報400−1〜400−3)を記憶している。
ここで、部品名は、運用作業にかかる一連の操作の一部または全部を自動実行するための部品の名称である。パラメータ名は、部品の実行時に与えるパラメータの名称である。例えば、部品情報400−1は、部品名「ファイル転送」の部品のパラメータ名「転送先サーバ名」、「ユーザ名」、「パスワード」および「転送ファイル名」を示している。
(操作名テーブル500の記憶内容)
つぎに、実行フロー作成支援装置101が用いる操作名テーブル500の記憶内容について説明する。操作名テーブル500は、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置により実現される。
つぎに、実行フロー作成支援装置101が用いる操作名テーブル500の記憶内容について説明する。操作名テーブル500は、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置により実現される。
図5は、操作名テーブル500の記憶内容の一例を示す説明図である。図5において、操作名テーブル500は、本文および操作名のフィールドを有し、各フィールドに情報を設定することで、抽出結果500−1〜500−7をレコードとして記憶する。
ここで、本文は、運用手順書Mに含まれる本文である。ここでは、手順名「Cファイル転送手順」の運用手順書Mに含まれる本文(図3に示した本文300−1〜300−7)が示されている。また、操作名は、運用手順書Mに含まれる操作の名称である。ここでは、操作名が対象と行為に分けられている。
操作名の対象は、操作の対象を表す文字列である。また、操作名の行為は、操作の操作内容を表す文字列である。例えば、抽出結果500−1は、手順名「Cファイル転送手順」の運用手順書Mに含まれる本文「Aサーバに接続する」から抽出された操作名「(対象)Aサーバ(行為)接続」を示している。
(対応付けリストLTの記憶内容)
つぎに、実行フロー作成支援装置101が用いる対応付けリストLTの記憶内容について説明する。対応付けリストLTは、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置により実現される。
つぎに、実行フロー作成支援装置101が用いる対応付けリストLTの記憶内容について説明する。対応付けリストLTは、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置により実現される。
図6は、対応付けリストLTの記憶内容の一例を示す説明図である。図6において、対応付けリストLTは、本文、操作名および対応部品名のフィールドを有し、各フィールドに情報を設定することで、対応付け結果(例えば、対応付け結果600−1〜600−4)を記憶する。
ここで、本文は、運用手順書Mに含まれる本文である。本文フィールドには、運用手順書Mに含まれる本文が出現順に設定される。また、操作名は、運用手順書Mに含まれる操作の名称である。ここでは、操作名が対象と行為に分けられている。対応部品名は、操作名に対応する部品の名称である。
例えば、対応付け結果600−1は、手順名「Cファイル転送手順」の運用手順書Mに含まれる本文「Cファイルを転送する」から抽出された操作名「(対象)Cファイル(行為)転送」に対応する対応部品名「ファイル転送」を示している。
(実行フロー作成支援装置101の機能的構成例)
図7は、実行フロー作成支援装置101の機能的構成例を示すブロック図である。図7において、実行フロー作成支援装置101は、取得部701と、抽出部702と、第1の対応付け部703と、選択部704と、第2の対応付け部705と、出力部706と、を含む構成である。各機能部は、具体的には、例えば、図2に示したROM202、RAM203、磁気ディスク205などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F206により、その機能を実現する。各機能部の処理結果は、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置に記憶される。
図7は、実行フロー作成支援装置101の機能的構成例を示すブロック図である。図7において、実行フロー作成支援装置101は、取得部701と、抽出部702と、第1の対応付け部703と、選択部704と、第2の対応付け部705と、出力部706と、を含む構成である。各機能部は、具体的には、例えば、図2に示したROM202、RAM203、磁気ディスク205などの記憶装置に記憶されたプログラムをCPU201に実行させることにより、または、I/F206により、その機能を実現する。各機能部の処理結果は、例えば、図2に示したRAM203、磁気ディスク205などの記憶装置に記憶される。
以下の説明では、運用作業にかかる一連の操作を「一連の操作OP1〜OPn」と表記し(n:2以上の自然数)、一連の操作OP1〜OPnのうちの任意の操作を「操作OPi」と表記する場合がある(i=1,2,…,n)。また、自動実行部品DB400に含まれる複数の部品を「部品P1〜Pm」と表記し(m:2以上の自然数)、部品P1〜Pmのうちの任意の部品を「部品Pj」と表記する場合がある(j=1,2,…,m)。
取得部701は、運用作業にかかる一連の操作OP1〜OPnの操作手順を表す運用手順書Mを取得する機能を有する。具体的には、例えば、取得部701は、図2に示したキーボード208やマウス209を用いたユーザの操作入力により、運用手順書M(図3参照)を取得する。また、取得部701は、例えば、ネットワーク210を介して、外部のコンピュータから運用手順書Mを取得することにしてもよい。
抽出部702は、取得された運用手順書Mから、一連の操作OP1〜OPnに含まれる操作OPiの操作名を抽出する機能を有する。具体的には、例えば、抽出部702は、運用手順書Mに含まれる各本文(例えば、図3に示した本文300−1〜300−7)に対して形態素解析および係り受け解析を行う。そして、抽出部702は、各本文から、動詞を(行為)とし、動詞にかかる名詞を(対象)として抽出することにより、操作OPiの操作名を抽出する。
一例として、図3に示した本文300−1を例に挙げると、抽出部702は、本文300−1から、動詞「接続」を(行為)とし、動詞にかかる名詞「Aサーバ」を(対象)として抽出することにより、操作名「Aサーバ接続」を抽出する。抽出された抽出結果は、例えば、図5に示した操作名テーブル500に記憶される。
これにより、運用手順書Mから運用作業にかかる一連の操作OP1〜OPnに含まれる各操作OPiの操作名を抽出することができる。
第1の対応付け部703は、自動実行部品DB400(図4参照)を参照して、一連の操作OP1〜OPnに含まれる操作OPiの操作名と部品Pjの部品名とを比較した比較結果に基づいて、操作OPiと部品Pjとを対応付ける機能を有する。具体的には、例えば、第1の対応付け部703は、部品P1〜Pmのうち、操作OPiの操作名と部品Pjの部品名との類似度Rが閾値α以上かつ類似度Rが最大の部品Pjを、操作OPiと対応付ける。
ここで、操作名「Cファイル転送」と部品名「ファイル転送」を例に挙げて、操作OPiと部品Pjとの対応付け例について説明する。なお、閾値αは、任意に設定されてROM202、RAM203、磁気ディスク205などの記憶装置に記憶されている。
まず、第1の対応付け部703は、操作名「Cファイル転送」と部品名「ファイル転送」とを比較して文字列の一致判定を行う。ここでは、操作名「Cファイル転送」の7文字のうち「ファイル転送」の6文字が部品名「ファイル転送」と一致している。この場合、第1の対応付け部703は、操作名「Cファイル転送」と部品名「ファイル転送」との類似度Rとして「R=6/7」を算出する。
ここで、閾値αを「α=0.5」とし、複数の部品P1〜Pmのうち、操作名「Cファイル転送」と部品名との類似度Rが最大の部品を、部品名「ファイル転送」の部品とする。この場合、類似度R「6/7」が閾値α「0.5」以上のため、第1の対応付け部703は、部品名「ファイル転送」の部品Pjを、操作名「Cファイル転送」の操作OPiと対応付ける。
これにより、部品P1〜Pmのうち操作OPiの操作名と最も類似している部品名の部品Pjと操作OPiとを対応付けることができる。対応付け結果は、例えば、図6に示した対応付けリストLTに記憶される。
選択部704は、一連の操作OP1〜OPnのうち部品Pjに対応する操作OPiの直前または直後の操作であって、部品に対応付けられていない操作OPkを選択する機能を有する(k≠i、k=1,2,…,n)。具体的には、例えば、選択部704は、対応付けリストLTを参照して、部品名「ファイル転送」に対応する操作名「Cファイル転送」の直前の部品に未対応の操作名「パスワード入力」を選択する。
第2の対応付け部705は、自動実行部品DB400を参照して、選択した操作OPkの操作名と部品Pjの実行時に与えるパラメータのパラメータ名とを比較した比較結果に基づいて、部品Pjに操作OPkを対応付ける機能を有する。
具体的には、例えば、第2の対応付け部705は、操作OPkの操作名の対象部分と部品Pjのパラメータ名との類似度Rが閾値β以上の場合に、部品Pjに操作OPkを対応付ける。対応付け結果は、例えば、図6に示した対応付けリストLTに記憶される。なお、閾値βは、任意に設定されてROM202、RAM203、磁気ディスク205などの記憶装置に記憶されている。閾値βは、例えば、「β=0.5」である。
これにより、部品Pjの実行時に与えるパラメータ値を入力、設定するような操作OPk、あるいは、パラメータ値を引数とするような操作OPkを、部品Pjと対応付けることができる。なお、第2の対応付け部705の具体的な処理内容については、図8および図9を用いて後述する。
また、選択部704は、部品Pjに対応する操作数が閾値γ以下の場合に、部品Pjに対応する操作OPiの直前または直後の操作であって、部品に対応付けられていない操作OPkを選択することにしてもよい。ここで、閾値γは、部品Pjに対応付ける操作OPiの操作数の上限数である。閾値γは、例えば、任意に設定されてROM202、RAM203、磁気ディスク205などの記憶装置に記憶されている。
また、選択部704は、部品Pjの実行時に与えるパラメータ数に基づいて、閾値γを算出することにしてもよい。具体的には、例えば、選択部704は、部品Pjの実行時に与えるパラメータ数の2倍程度の値を閾値γとして算出する。これにより、第1の対応付け部703による対応付けが適切に行われていない場合などに、部品Pjと操作OPkとの誤った対応付けが行われることを抑制することができる。
また、第2の対応付け部705は、対応付け結果に基づいて、一連の操作OP1〜OPnを実行する一以上の部品Pjの実行順序を表す実行フローを作成することにしてもよい。具体的には、例えば、第2の対応付け部705は、対応付けリストLTを参照して、一連の操作OP1〜OPnを自動化ツールの部品に変換することにより実行フローを作成する。
出力部706は、対応付け結果を出力する機能を有する。具体的には、例えば、後述する図9の(8−4)に示すような対応付けリストLTを出力することにしてもよい。これにより、運用手順書M内のオペレータの各操作OPiの操作名と自動化ツールの部品Pjの部品名とを対応付けて表す対応付けリストLTを出力することができる。
また、出力部706は、作成された実行フローを出力することにしてもよい。これにより、自動化ツールで運用作業を自動実行する場合の実行フローを出力することができる。なお、出力部706の出力形式としては、例えば、RAM203、磁気ディスク205などの記憶装置への記憶、ディスプレイ207への表示、不図示のプリンタへの印刷出力、I/F206による外部のコンピュータへの送信がある。
(第2の対応付け部705の具体的な処理内容)
つぎに、図8および図9を用いて、第2の対応付け部705の具体的な処理内容について説明する。
つぎに、図8および図9を用いて、第2の対応付け部705の具体的な処理内容について説明する。
図8および図9は、対応付けリストLTの記憶内容の変遷例を示す説明図である。図8に示す(8−1)において、操作OPkの操作名として、対応部品名「ファイル転送」に対応する操作名「Cファイル転送」の直前の対応部品名が未設定の操作名「パスワード入力」が選択された場合を想定する。
この場合、第2の対応付け部705は、自動実行部品DB400を参照して、対応部品名「ファイル転送」の部品の実行時に与えるいずれかのパラメータのパラメータ名を選択する。ここでは、対応部品名「ファイル転送」のパラメータ名「パスワード」が選択された場合を想定する。
つぎに、第2の対応付け部705は、操作名「パスワード入力」の対象部分「パスワード」とパラメータ名「パスワード」とを比較して文字列の一致判定を行う。ここでは、対象部分「パスワード」とパラメータ名「パスワード」とが完全一致する。この場合、第2の対応付け部705は、操作名「パスワード入力」の対象部分「パスワード」とパラメータ名「パスワード」との類似度Rとして「R=1」を算出する。
つぎに、第2の対応付け部705は、類似度Rが閾値β以上の場合に、対応部品名「ファイル転送」に操作名「パスワード入力」を対応付ける。ここでは、閾値βを「β=0.5」とする。この場合、類似度Rが閾値β以上のため、第2の対応付け部705は、対応部品名「ファイル転送」に操作名「パスワード入力」を対応付ける。
そして、第2の対応付け部705は、対応付けリストLT内の操作名「パスワード入力」の対応部品名フィールドに対応部品名「ファイル転送」を設定する(図8中、(8−2)参照)。これにより、部品Pjのパラメータを入力するような操作OPkを部品Pjと対応付けることができる。
図8に示す(8−2)において、操作OPkの操作名として、対応部品名「ファイル転送」に対応する操作名「パスワード入力」の直前の対応部品名が未設定の操作名「ユーザ名入力」が選択された場合を想定する。
この場合、第2の対応付け部705は、自動実行部品DB400を参照して、対応部品名「ファイル転送」の部品の実行時に与えるいずれかのパラメータのパラメータ名を選択する。ここでは、対応部品名「ファイル転送」のパラメータ名「ユーザ名」が選択された場合を想定する。
つぎに、第2の対応付け部705は、操作名「ユーザ名入力」の対象部分「ユーザ名」とパラメータ名「ユーザ名」とを比較して文字列の一致判定を行う。ここでは、対象部分「ユーザ名」とパラメータ名「ユーザ名」とが完全一致する。この場合、第2の対応付け部705は、操作名「ユーザ名入力」の対象部分「ユーザ名」とパラメータ名「ユーザ名」との類似度Rとして「R=1」を算出する。
つぎに、第2の対応付け部705は、類似度Rが閾値β以上の場合に、対応部品名「ファイル転送」に操作名「ユーザ名入力」を対応付ける。ここでは、類似度Rが閾値β以上のため、第2の対応付け部705は、対応部品名「ファイル転送」に操作名「ユーザ名入力」を対応付ける。
そして、第2の対応付け部705は、対応付けリストLT内の操作名「ユーザ名入力」の対応部品名フィールドに対応部品名「ファイル転送」を設定する(図9中、(8−3)参照)。これにより、部品Pjのパラメータを入力するような操作OPkを部品Pjと対応付けることができる。
図9に示す(8−3)において、操作OPkの操作名として、対応部品名「ファイル転送」に対応する操作名「ユーザ名入力」の直前の対応部品名が未設定の操作名「Aサーバ接続」が選択された場合を想定する。
この場合、第2の対応付け部705は、自動実行部品DB400を参照して、対応部品名「ファイル転送」の部品の実行時に与えるいずれかのパラメータのパラメータ名を選択する。ここでは、対応部品名「ファイル転送」のパラメータ名「転送先サーバ名」が選択された場合を想定する。
つぎに、第2の対応付け部705は、操作名「Aサーバ接続」の対象部分「Aサーバ」とパラメータ名「転送先サーバ名」とを比較して文字列の一致判定を行う。ここでは、対象部分「Aサーバ」の4文字のうち「サーバ」の3文字がパラメータ名「転送先サーバ名」と一致している。この場合、第2の対応付け部705は、操作名「Aサーバ接続」の対象部分「Aサーバ」とパラメータ名「転送先サーバ名」との類似度Rとして「R=3/4」を算出する。
つぎに、第2の対応付け部705は、類似度Rが閾値β以上の場合に、対応部品名「ファイル転送」に操作名「Aサーバ接続」を対応付ける。ここでは、類似度Rが閾値β以上のため、第2の対応付け部705は、対応部品名「ファイル転送」に操作名「Aサーバ接続」を対応付ける。
そして、第2の対応付け部705は、対応付けリストLT内の操作名「Aサーバ接続」の対応部品名フィールドに対応部品名「ファイル転送」を設定する(図9中、(8−4)参照)。これにより、部品Pjのパラメータを設定するような操作OPkを部品Pjと対応付けることができる。
(実行フロー作成支援処理手順)
つぎに、実行フロー作成支援装置101の実行フロー作成支援処理手順について説明する。
つぎに、実行フロー作成支援装置101の実行フロー作成支援処理手順について説明する。
図10は、実行フロー作成支援装置101の実行フロー作成支援処理手順の一例を示すフローチャートである。図10のフローチャートにおいて、まず、実行フロー作成支援装置101は、運用手順書Mを取得したか否かを判断する(ステップS1001)。ここで、実行フロー作成支援装置101は、運用手順書Mを取得するのを待つ(ステップS1001:No)。
そして、運用手順書Mを取得した場合(ステップS1001:Yes)、実行フロー作成支援装置101は、運用手順書Mから、一連の操作OP1〜OPnに含まれる操作OPiの操作名を抽出する(ステップS1002)。なお、抽出結果は、操作名テーブル500に記憶される。
つぎに、実行フロー作成支援装置101は、第1の対応付け処理を実行する(ステップS1003)。第1の対応付け処理は、操作OPiの操作名と部品Pjの部品名とを比較して、操作OPiと部品Pjとを対応付ける処理である。なお、第1の対応付け処理の具体的な処理手順については、図11を用いて後述する。
つぎに、実行フロー作成支援装置101は、第2の対応付け処理を実行する(ステップS1004)。第2の対応付け処理は、操作OPkの操作名と部品Pjの実行時に与えるパラメータのパラメータ名とを比較して、部品Pjに操作OPkを対応付ける処理である。なお、第2の対応付け処理の具体的な処理手順については、図12および図13を用いて後述する。
そして、実行フロー作成支援装置101は、対応付けリストLTを出力して(ステップS1005)、本フローチャートによる一連の処理を終了する。これにより、運用手順書M内のオペレータの各操作OPiの操作名と自動化ツールの部品Pjの部品名とを対応付けて表す対応付けリストLTを出力することができる。
<第1の対応付け処理手順>
つぎに、図10に示したステップS1003の第1の対応付け処理の具体的な処理手順について説明する。
つぎに、図10に示したステップS1003の第1の対応付け処理の具体的な処理手順について説明する。
図11は、第1の対応付け処理の具体的処理手順の一例を示すフローチャートである。図11のフローチャートにおいて、まず、実行フロー作成支援装置101は、操作名テーブル500から操作OPiの操作名を選択する(ステップS1101)。
つぎに、実行フロー作成支援装置101は、自動実行部品DB400から部品Pjの部品名を選択する(ステップS1102)。そして、実行フロー作成支援装置101は、操作OPiの操作名と部品Pjの部品名との類似度Rを算出する(ステップS1103)。
つぎに、実行フロー作成支援装置101は、算出した類似度Rがバッファ内の類似度R以上か否かを判断する(ステップS1104)。なお、バッファは、例えば、RAM203、磁気ディスク205などの記憶装置により実現される。
ここで、バッファ内の類似度R未満の場合(ステップS1104:No)、実行フロー作成支援装置101は、ステップS1106に移行する。一方、バッファ内の類似度R以上の場合(ステップS1104:Yes)、実行フロー作成支援装置101は、バッファに部品Pjの部品名と類似度Rとを登録する(ステップS1105)。
つぎに、実行フロー作成支援装置101は、自動実行部品DB400から選択していない未選択の部品名があるか否かを判断する(ステップS1106)。ここで、未選択の部品名がある場合(ステップS1106:Yes)、実行フロー作成支援装置101は、ステップS1102に戻って、自動実行部品DB400から未選択の部品Pjの部品名を選択する。
一方、未選択の部品名がない場合(ステップS1106:No)、実行フロー作成支援装置101は、バッファ内の類似度Rが閾値α以上か否かを判断する(ステップS1107)。ここで、バッファ内の類似度Rが閾値α未満の場合(ステップS1107:No)、実行フロー作成支援装置101は、ステップS1109に移行する。
一方、バッファ内の類似度Rが閾値α以上の場合(ステップS1107:Yes)、実行フロー作成支援装置101は、操作OPiの操作名と部品Pjの部品名とを対応付ける(ステップS1108)。対応付け結果は、対応付けリストLTに記憶される。
つぎに、実行フロー作成支援装置101は、バッファを空にして(ステップS1109)、操作名テーブル500から選択していない未選択の操作名があるか否かを判断する(ステップS1110)。ここで、未選択の操作名がある場合(ステップS1110:Yes)、実行フロー作成支援装置101は、ステップS1101に戻って、操作名テーブル500から未選択の操作OPiの操作名を選択する。
一方、未選択の操作名がない場合(ステップS1110:No)、実行フロー作成支援装置101は、本フローチャートによる一連の処理を終了して第1の対応付け処理を呼び出したステップに戻る。これにより、部品P1〜Pmのうち操作OPiの操作名と最も類似している部品名の部品Pjと操作OPiとを対応付けることができる。
<第2の対応付け処理手順>
つぎに、図10に示したステップS1004の第2の対応付け処理の具体的な処理手順について説明する。以下の説明では、対応付けリストLTにおいて、対応する部品名が設定されている操作名を「部品対応操作名」と表記し、対応する部品名が未設定の操作名を「部品未対応操作名」と表記する場合がある。
つぎに、図10に示したステップS1004の第2の対応付け処理の具体的な処理手順について説明する。以下の説明では、対応付けリストLTにおいて、対応する部品名が設定されている操作名を「部品対応操作名」と表記し、対応する部品名が未設定の操作名を「部品未対応操作名」と表記する場合がある。
図12および図13は、第2の対応付け処理の具体的処理手順の一例を示すフローチャートである。図12のフローチャートにおいて、まず、実行フロー作成支援装置101は、対応付けリストLTから部品対応操作名Xを選択する(ステップS1201)。つぎに、実行フロー作成支援装置101は、対応付けリストLTにおいて、選択した部品対応操作名Xと、その直前の部品対応操作名Yとの間に部品未対応操作名があるか否かを判断する(ステップS1202)。
ここで、部品未対応操作名がある場合(ステップS1202:Yes)、実行フロー作成支援装置101は、対応付けリストLTから、部品対応操作名Xの直前の部品未対応操作名Aを選択する(ステップS1203)。つぎに、実行フロー作成支援装置101は、自動実行部品DB400を参照して、部品対応操作名Xの対応部品名Pに対応するパラメータ名を選択する(ステップS1204)。
そして、実行フロー作成支援装置101は、部品未対応操作名Aの対象部分とパラメータ名との類似度Rを算出する(ステップS1205)。つぎに、実行フロー作成支援装置101は、算出した類似度Rが閾値β以上か否かを判断する(ステップS1206)。
ここで、類似度Rが閾値β未満の場合(ステップS1206:No)、実行フロー作成支援装置101は、部品対応操作名Xの対応部品名に対応する未選択のパラメータ名があるか否かを判断する(ステップS1207)。
そして、未選択のパラメータ名がある場合(ステップS1207:Yes)、実行フロー作成支援装置101は、ステップS1204に戻って、部品対応操作名Xの対応部品名Pに対応する未選択のパラメータ名を選択する。一方、未選択のパラメータ名がない場合(ステップS1207:No)、実行フロー作成支援装置101は、図13に示すステップS1301に移行する。
また、ステップS1206において、類似度Rが閾値β以上の場合(ステップS1206:Yes)、実行フロー作成支援装置101は、対応部品名Pに部品未対応操作名Aを対応付ける(ステップS1208)。対応付け結果は、対応付けリストLTに記憶される。
そして、実行フロー作成支援装置101は、対応付けリストLTにおいて、部品未対応操作名Aと、その直前の部品対応操作名Yとの間に部品未対応操作名があるか否かを判断する(ステップS1209)。ここで、部品未対応操作名がある場合(ステップS1209:Yes)、実行フロー作成支援装置101は、ステップS1203に戻って、対応付けリストLTから、部品対応操作名Xの直前の未選択の部品未対応操作名Aを選択する。
一方、部品未対応操作名がない場合(ステップS1209:No)、実行フロー作成支援装置101は、図13に示すステップS1301に移行する。また、ステップS1202において、部品未対応操作名がない場合(ステップS1202:No)、実行フロー作成支援装置101は、図13に示すステップS1301に移行する。
図13のフローチャートにおいて、まず、実行フロー作成支援装置101は、対応付けリストLTにおいて、部品対応操作名Xと、その直後の部品対応操作名Zとの間に部品未対応操作名があるか否かを判断する(ステップS1301)。ここで、部品未対応操作名がない場合(ステップS1301:No)、実行フロー作成支援装置101は、ステップS1309に移行する。
一方、部品未対応操作名がある場合(ステップS1301:Yes)、実行フロー作成支援装置101は、対応付けリストLTから、部品対応操作名Xの直後の部品未対応操作名Bを選択する(ステップS1302)。つぎに、実行フロー作成支援装置101は、自動実行部品DB400を参照して、部品対応操作名Xの対応部品名Pに対応するパラメータ名を選択する(ステップS1303)。
そして、実行フロー作成支援装置101は、部品未対応操作名Bの対象部分とパラメータ名との類似度Rを算出する(ステップS1304)。つぎに、実行フロー作成支援装置101は、算出した類似度Rが閾値β以上か否かを判断する(ステップS1305)。
ここで、類似度Rが閾値β未満の場合(ステップS1305:No)、実行フロー作成支援装置101は、部品対応操作名Xの対応部品名に対応する未選択のパラメータ名があるか否かを判断する(ステップS1306)。
そして、未選択のパラメータ名がある場合(ステップS1306:Yes)、実行フロー作成支援装置101は、ステップS1303に戻って、部品対応操作名Xの対応部品名Pに対応する未選択のパラメータ名を選択する。一方、未選択のパラメータ名がない場合(ステップS1306:No)、実行フロー作成支援装置101は、ステップS1309に移行する。
また、ステップS1305において、類似度Rが閾値β以上の場合(ステップS1305:Yes)、実行フロー作成支援装置101は、対応部品名Pに部品未対応操作名Bを対応付ける(ステップS1307)。対応付け結果は、対応付けリストLTに記憶される。
そして、実行フロー作成支援装置101は、対応付けリストLTにおいて、部品未対応操作名Bと、直後の部品対応操作名Zとの間に部品未対応操作名があるか否かを判断する(ステップS1308)。ここで、部品未対応操作名がある場合(ステップS1308:Yes)、実行フロー作成支援装置101は、ステップS1302に戻って、対応付けリストLTから、部品対応操作名Xの直後の未選択の部品未対応操作名Bを選択する。
一方、部品未対応操作名がない場合(ステップS1308:No)、実行フロー作成支援装置101は、対応付けリストLTから選択していない未選択の部品対応操作名があるか否かを判断する(ステップS1309)。ここで、未選択の部品対応操作名がある場合(ステップS1309:Yes)、実行フロー作成支援装置101は、図12に示したステップS1201に戻って、対応付けリストLTから未選択の部品対応操作名Xを選択する。
一方、未選択の部品対応操作名がない場合(ステップS1309:No)、実行フロー作成支援装置101は、本フローチャートによる一連の処理を終了して第2の対応付け処理を呼び出したステップに戻る。これにより、部品Pjの実行時に与えるパラメータ値を入力、設定するような操作OPk、あるいは、パラメータ値を引数とするような操作OPkを、部品Pjと対応付けることができる。
なお、図12に示したステップS1202において、部品対応操作名Xの直前の部品対応操作名Yが存在しない場合は、実行フロー作成支援装置101は、対応付けリストLTの先頭と部品対応操作名Xとの間に部品未対応操作名があるか否かを判断する。また、図13に示したステップS1301において、部品対応操作名Xの直後の部品対応操作名Zが存在しない場合は、実行フロー作成支援装置101は、対応付けリストLTの末尾と部品対応操作名Xとの間に部品未対応操作名があるか否かを判断する。
以上説明したように、実行フロー作成支援装置101によれば、運用手順書Mに含まれる各本文に対して形態素解析および係り受け解析を行うことにより、各本文から、動詞を(行為)とし、動詞にかかる名詞を(対象)として抽出することができる。これにより、運用手順書Mから運用作業にかかる一連の操作OP1〜OPnに含まれる各操作OPiの操作名を抽出することができる。
また、実行フロー作成支援装置101によれば、自動実行部品DB400を参照して、一連の操作OP1〜OPnに含まれる操作OPiの操作名と部品Pjの部品名とを比較することにより、操作OPiと部品Pjとを対応付けることができる。具体的には、例えば、実行フロー作成支援装置101によれば、部品P1〜Pmのうち、操作OPiの操作名と部品Pjの部品名との類似度Rが閾値α以上でかつ類似度Rが最大の部品Pjを、操作OPiと対応付けることができる。これにより、部品P1〜Pmのうち操作OPiの操作名と最も類似している部品名の部品Pjと操作OPiとを対応付けることができる。
また、実行フロー作成支援装置101によれば、対応付けリストLTを参照して、一連の操作OP1〜OPnのうち部品Pjに対応する操作OPiの直前または直後の操作であって、部品に対応付けられていない操作OPkを選択することができる。これにより、運用手順書Mにおいて、部品Pjに対応する操作OPiの周辺に記述されている操作OPkを、部品Pjに対応する操作候補として絞り込むことができる。
また、実行フロー作成支援装置101によれば、自動実行部品DB400を参照して、選択した操作OPkの操作名と部品Pjの実行時に与えるパラメータのパラメータ名とを比較することにより、部品Pjに操作OPkを対応付けることができる。具体的には、例えば、実行フロー作成支援装置101によれば、操作OPkの操作名と部品Pjのパラメータ名との類似度Rが閾値β以上の場合に、部品Pjに操作OPkを対応付けることができる。これにより、部品Pjの実行時に与えるパラメータ値を入力、設定するような操作OPk、あるいは、パラメータ値を引数とするような操作OPkを、部品Pjと対応付けることができる。
また、実行フロー作成支援装置101によれば、部品Pjに対応する操作数が閾値γ以下の場合に、部品Pjに対応する操作OPiの直前または直後の操作であって、部品に対応付けられていない操作OPkを選択することができる。これにより、操作名と部品名との比較から操作/部品間の対応付けが適切に行われていない場合などに、部品Pjと操作OPkとの誤った対応付けが行われることを抑制することができる。
また、実行フロー作成支援装置101によれば、部品Pjの実行時に与えるパラメータ数に基づいて、閾値γを算出することができる。これにより、部品Pjごとに、部品Pjと対応付ける操作OPiの操作数の上限数を設定することができる。
また、実行フロー作成支援装置101によれば、対応付け結果に基づいて、一連の操作OP1〜OPnを実行する一以上の部品Pjの実行順序を表す実行フローを作成することができる。これにより、自動化ツールで運用作業を自動実行する場合の実行フローを自動作成することができる。
これらのことから、実行フロー作成支援装置101によれば、運用手順書M内のオペレータの操作と自動化ツールの部品とが多対1で対応する場合であっても、操作/部品間の対応付けを行うことができる。これにより、運用手順書から運用作業を自動化する実行フローを作成する際の作業負荷を軽減させることができる。
なお、本実施の形態で説明した実行フロー作成支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本実行フロー作成支援プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本実行フロー作成支援プログラムは、インターネット等のネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータに、
運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付け、
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択し、
前記部品情報を参照して、選択した前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける、
処理を実行させることを特徴とする実行フロー作成支援プログラム。
運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付け、
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択し、
前記部品情報を参照して、選択した前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける、
処理を実行させることを特徴とする実行フロー作成支援プログラム。
(付記2)前記所定の部品に前記第2の操作を対応付ける処理は、
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする付記1に記載の実行フロー作成支援プログラム。
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする付記1に記載の実行フロー作成支援プログラム。
(付記3)前記操作と前記部品とを対応付ける処理は、
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする付記1または2に記載の実行フロー作成支援プログラム。
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする付記1または2に記載の実行フロー作成支援プログラム。
(付記4)前記コンピュータに、
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出する処理を実行させ、
前記選択する処理は、
前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする付記1〜3のいずれか一つに記載の実行フロー作成支援プログラム。
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出する処理を実行させ、
前記選択する処理は、
前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする付記1〜3のいずれか一つに記載の実行フロー作成支援プログラム。
(付記5)前記コンピュータに、
運用作業にかかる一連の操作の操作手順を表す運用手順書を取得し、
取得した前記運用手順書から、前記一連の操作に含まれる操作の操作名を抽出する、処理を実行させ、
前記操作と前記部品とを対応付ける処理は、
前記部品情報を参照して、抽出した前記操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付けることを特徴とする付記1〜4のいずれか一つに記載の実行フロー作成支援プログラム。
運用作業にかかる一連の操作の操作手順を表す運用手順書を取得し、
取得した前記運用手順書から、前記一連の操作に含まれる操作の操作名を抽出する、処理を実行させ、
前記操作と前記部品とを対応付ける処理は、
前記部品情報を参照して、抽出した前記操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付けることを特徴とする付記1〜4のいずれか一つに記載の実行フロー作成支援プログラム。
(付記6)前記コンピュータに、
対応付け結果に基づいて、前記一連の操作を実行する一以上の部品の実行順序を表す実行フローを作成する処理を実行させることを特徴とする付記1〜5のいずれか一つに記載の実行フロー作成支援プログラム。
対応付け結果に基づいて、前記一連の操作を実行する一以上の部品の実行順序を表す実行フローを作成する処理を実行させることを特徴とする付記1〜5のいずれか一つに記載の実行フロー作成支援プログラム。
(付記7)運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付ける第1の対応付け部と、
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択する選択部と、
前記部品情報を参照して、前記選択部によって選択された前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける第2の対応付け部と、
を有することを特徴とする実行フロー作成支援装置。
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択する選択部と、
前記部品情報を参照して、前記選択部によって選択された前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける第2の対応付け部と、
を有することを特徴とする実行フロー作成支援装置。
(付記8)前記第2の対応付け部は、
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする付記7に記載の実行フロー作成支援装置。
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする付記7に記載の実行フロー作成支援装置。
(付記9)前記第1の対応付け部は、
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする付記7または8に記載の実行フロー作成支援装置。
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする付記7または8に記載の実行フロー作成支援装置。
(付記10)前記選択部は、
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出し、前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする付記7〜9のいずれか一つに記載の実行フロー作成支援装置。
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出し、前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする付記7〜9のいずれか一つに記載の実行フロー作成支援装置。
(付記11)コンピュータが、
運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付け、
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択し、
前記部品情報を参照して、選択した前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける、
処理を実行することを特徴とする実行フロー作成支援方法。
運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付け、
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択し、
前記部品情報を参照して、選択した前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける、
処理を実行することを特徴とする実行フロー作成支援方法。
(付記12)前記所定の部品に前記第2の操作を対応付ける処理は、
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする付記11に記載の実行フロー作成支援方法。
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする付記11に記載の実行フロー作成支援方法。
(付記13)前記操作と前記部品とを対応付ける処理は、
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする付記11または12に記載の実行フロー作成支援方法。
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする付記11または12に記載の実行フロー作成支援方法。
(付記14)前記コンピュータが、
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出する処理を実行し、
前記選択する処理は、
前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする付記11〜13のいずれか一つに記載の実行フロー作成支援方法。
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出する処理を実行し、
前記選択する処理は、
前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする付記11〜13のいずれか一つに記載の実行フロー作成支援方法。
101 実行フロー作成支援装置
400 自動実行部品DB
500 操作名テーブル
701 取得部
702 抽出部
703 第1の対応付け部
704 選択部
705 第2の対応付け部
706 出力部
LT 対応付けリスト
M 運用手順書
400 自動実行部品DB
500 操作名テーブル
701 取得部
702 抽出部
703 第1の対応付け部
704 選択部
705 第2の対応付け部
706 出力部
LT 対応付けリスト
M 運用手順書
Claims (14)
- コンピュータに、
運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付け、
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択し、
前記部品情報を参照して、選択した前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける、
処理を実行させることを特徴とする実行フロー作成支援プログラム。 - 前記所定の部品に前記第2の操作を対応付ける処理は、
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする請求項1に記載の実行フロー作成支援プログラム。 - 前記操作と前記部品とを対応付ける処理は、
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする請求項1または2に記載の実行フロー作成支援プログラム。 - 前記コンピュータに、
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出する処理を実行させ、
前記選択する処理は、
前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする請求項1〜3のいずれか一つに記載の実行フロー作成支援プログラム。 - 前記コンピュータに、
運用作業にかかる一連の操作の操作手順を表す運用手順書を取得し、
取得した前記運用手順書から、前記一連の操作に含まれる操作の操作名を抽出する、処理を実行させ、
前記操作と前記部品とを対応付ける処理は、
前記部品情報を参照して、抽出した前記操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付けることを特徴とする請求項1〜4のいずれか一つに記載の実行フロー作成支援プログラム。 - 前記コンピュータに、
対応付け結果に基づいて、前記一連の操作を実行する一以上の部品の実行順序を表す実行フローを作成する処理を実行させることを特徴とする請求項1〜5のいずれか一つに記載の実行フロー作成支援プログラム。 - 運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付ける第1の対応付け部と、
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択する選択部と、
前記部品情報を参照して、前記選択部によって選択された前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける第2の対応付け部と、
を有することを特徴とする実行フロー作成支援装置。 - 前記第2の対応付け部は、
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする請求項7に記載の実行フロー作成支援装置。 - 前記第1の対応付け部は、
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする請求項7または8に記載の実行フロー作成支援装置。 - 前記選択部は、
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出し、前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする請求項7〜9のいずれか一つに記載の実行フロー作成支援装置。 - コンピュータが、
運用作業にかかる一連の操作の一部または全部を実行する部品ごとに、前記部品の部品名と前記部品の実行時に与える変数の変数名とを対応付けて表す部品情報を参照して、前記一連の操作に含まれる操作の操作名と前記部品の部品名とを比較した比較結果に基づいて、前記操作と前記部品とを対応付け、
前記一連の操作のうち所定の部品に対応する第1の操作の直前または直後の操作であって、部品に対応付けられていない第2の操作を選択し、
前記部品情報を参照して、選択した前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名とを比較した比較結果に基づいて、前記所定の部品に前記第2の操作を対応付ける、
処理を実行することを特徴とする実行フロー作成支援方法。 - 前記所定の部品に前記第2の操作を対応付ける処理は、
前記第2の操作の操作名と前記所定の部品の実行時に与える変数の変数名との類似度が閾値以上の場合に、前記所定の部品に前記第2の操作を対応付けることを特徴とする請求項11に記載の実行フロー作成支援方法。 - 前記操作と前記部品とを対応付ける処理は、
前記部品情報に含まれる複数の部品のうち、前記操作の操作名と前記部品の部品名との類似度が閾値以上でかつ当該類似度が最大の部品を、前記操作と対応付けることを特徴とする請求項11または12に記載の実行フロー作成支援方法。 - 前記コンピュータが、
前記所定の部品の実行時に与える変数の総数に基づいて、前記所定の部品に対応付ける操作の上限数を算出する処理を実行し、
前記選択する処理は、
前記所定の部品に対応する操作の数が、算出した前記上限数以下の場合に、前記第2の操作を選択することを特徴とする請求項11〜13のいずれか一つに記載の実行フロー作成支援方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/056023 WO2014136210A1 (ja) | 2013-03-05 | 2013-03-05 | 実行フロー作成支援プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5971399B2 JP5971399B2 (ja) | 2016-08-17 |
JPWO2014136210A1 true JPWO2014136210A1 (ja) | 2017-02-09 |
Family
ID=51490773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015504045A Expired - Fee Related JP5971399B2 (ja) | 2013-03-05 | 2013-03-05 | 実行フロー作成支援プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9858113B2 (ja) |
JP (1) | JP5971399B2 (ja) |
WO (1) | WO2014136210A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6477341B2 (ja) * | 2015-08-04 | 2019-03-06 | 富士通株式会社 | 実行フロー作成支援プログラム及び実行フロー作成支援方法 |
JP6777907B1 (ja) * | 2019-09-12 | 2020-10-28 | ソプラ株式会社 | 業務支援装置、及び業務支援システム |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04107628A (ja) * | 1990-08-28 | 1992-04-09 | Nec Corp | ソフトウェア再利用支援システム |
JPH07146785A (ja) | 1993-11-24 | 1995-06-06 | Hitachi Ltd | プログラム自動生成方法および装置 |
JPH08289050A (ja) | 1995-04-18 | 1996-11-01 | Ricoh Co Ltd | デジタル複写装置 |
JP3379440B2 (ja) * | 1998-07-31 | 2003-02-24 | 日本電気株式会社 | プログラム自動生成装置及びプログラムを記録した機械読み取り可能な記録媒体 |
JP2001166928A (ja) * | 1999-12-06 | 2001-06-22 | Hitachi Ltd | ジョブネットの自動生成装置 |
US7653873B2 (en) * | 2001-08-31 | 2010-01-26 | Siemens Medical Solutions Health Services Corporation | System and user interface supporting task schedule configuration |
JP2005196291A (ja) | 2003-12-26 | 2005-07-21 | Fujitsu Ltd | ユーザインタフェースアプリケーション開発プログラム、および開発装置 |
JP4693807B2 (ja) * | 2007-03-26 | 2011-06-01 | 株式会社東芝 | プログラム開発支援システム、方法及びプログラム |
JP5049683B2 (ja) * | 2007-07-18 | 2012-10-17 | キヤノン株式会社 | デバイス管理装置及びジョブフロー処理方法とタスク連携処理システム |
JP5222328B2 (ja) * | 2010-08-04 | 2013-06-26 | 日立Geニュークリア・エナジー株式会社 | 作業計画作成方法および装置 |
JP2012252684A (ja) * | 2011-05-10 | 2012-12-20 | Fujitsu Ltd | 文書処理方法、プログラム及び装置 |
JP5751115B2 (ja) * | 2011-09-28 | 2015-07-22 | 富士通株式会社 | 試験支援プログラム、試験支援方法および試験支援装置 |
JP6048500B2 (ja) * | 2012-07-05 | 2016-12-21 | 富士通株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体 |
JP5930048B2 (ja) * | 2012-08-30 | 2016-06-08 | 富士通株式会社 | 稼働管理装置、稼働管理方法、及び稼働管理プログラム |
JP6497268B2 (ja) * | 2015-08-17 | 2019-04-10 | 富士通株式会社 | 管理プログラム、管理装置及び管理方法 |
-
2013
- 2013-03-05 JP JP2015504045A patent/JP5971399B2/ja not_active Expired - Fee Related
- 2013-03-05 WO PCT/JP2013/056023 patent/WO2014136210A1/ja active Application Filing
-
2015
- 2015-08-13 US US14/825,735 patent/US9858113B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
WO2014136210A1 (ja) | 2014-09-12 |
US9858113B2 (en) | 2018-01-02 |
JP5971399B2 (ja) | 2016-08-17 |
US20150347182A1 (en) | 2015-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108351764B (zh) | 数据处理方法和系统 | |
CN108108162A (zh) | 应用程序编程接口生成方法及装置 | |
JP6354457B2 (ja) | アプリケーション開発支援装置、そのデータ処理方法、およびプログラム | |
US9459780B1 (en) | Documenting interactive graphical designs | |
US11074162B2 (en) | System and a method for automated script generation for application testing | |
US20170017464A1 (en) | Layered contextual configuration management system and method and minimized input speech recognition user interface interactions experience | |
JP2008242738A (ja) | テスト仕様書作成プログラム、テスト仕様書作成装置、およびテスト仕様書作成方法 | |
CN106484389B (zh) | 动作流分段管理 | |
CN113051011A (zh) | 一种结合rpa和ai的图像信息提取方法及装置 | |
US9116708B2 (en) | Program creation support apparatus, program, and information system | |
JP5971399B2 (ja) | 実行フロー作成支援プログラム | |
CN116225902A (zh) | 生成测试用例的方法、装置及设备 | |
JP6790921B2 (ja) | プログラム分析装置、プログラム分析方法及びプログラム分析プログラム | |
Swearngin et al. | Easing the generation of predictive human performance models from legacy systems | |
US12032937B2 (en) | Programming support program for preventing work efficiency from lowering as a result of conversion | |
Silvestre et al. | A Usable MDE-based Tool for Software Process Tailoring. | |
WO2020048416A1 (zh) | 领域专用语言dsl的图形化处理方法和设备 | |
JP2020115246A (ja) | 生成装置、ソフトウェアロボットシステム、生成方法及び生成プログラム | |
KR102588597B1 (ko) | Uml 시퀀스 다이어그램의 대체 에디터로서 오퍼레이션 로직 디자이너를 이용하여 프로그램을 설계하는 방법 및 그를 이용한 장치 | |
JP7514943B2 (ja) | 複雑な物理的機器からのログの解析のための手法 | |
JP7295463B2 (ja) | 業務フロー作成支援装置、業務フロー作成支援方法、および、業務フロー作成支援プログラム | |
JP6062735B2 (ja) | ソフトウェア開発支援装置、ソフトウェア開発支援方法、ソフトウェア開発支援プログラム | |
JP2009042951A (ja) | プログラム中のデータ抽出方法及び装置 | |
KR102052338B1 (ko) | 테스트케이스 설계 정보의 추적 분석을 위한 시각화 방법, 테스트케이스 생성 장치 및 컴퓨터 판독가능 기록매체 | |
JPWO2005086033A1 (ja) | 検証支援装置、検証支援方法、検証支援プログラムおよび記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20160614 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160627 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5971399 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |