JP2016122317A - 共通化情報提供プログラム、共通化情報提供方法、および共通化情報提供装置 - Google Patents

共通化情報提供プログラム、共通化情報提供方法、および共通化情報提供装置 Download PDF

Info

Publication number
JP2016122317A
JP2016122317A JP2014261625A JP2014261625A JP2016122317A JP 2016122317 A JP2016122317 A JP 2016122317A JP 2014261625 A JP2014261625 A JP 2014261625A JP 2014261625 A JP2014261625 A JP 2014261625A JP 2016122317 A JP2016122317 A JP 2016122317A
Authority
JP
Japan
Prior art keywords
processing
difference
procedure
item
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014261625A
Other languages
English (en)
Other versions
JP6447111B2 (ja
Inventor
隆史 ▲柳▼▲瀬▼
隆史 ▲柳▼▲瀬▼
Takashi Yanase
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014261625A priority Critical patent/JP6447111B2/ja
Publication of JP2016122317A publication Critical patent/JP2016122317A/ja
Application granted granted Critical
Publication of JP6447111B2 publication Critical patent/JP6447111B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】複数の手順書を1つに統合する際に条件分岐させる箇所を容易に特定できるようにする。【解決手段】共通化情報提供装置10は、処理内容を示す複数の処理項目が処理順に記述された第1手順情報1と第2手順情報2とから、1以上の共通しない処理項目を、処理項目群として検出する。次に共通化情報提供装置10は、第1手順情報1から検出された第1処理項目群6a,7aに含まれている動詞と、第2手順情報2から検出された第2処理項目群6b,7bに含まれている動詞とのそれぞれに対応する差分換算値に基づいて、第1処理項目群6a,7aの処理と第2処理項目群6b,7bの処理との違いを示す差分値を算出する。そして共通化情報提供装置10は、第1手順情報1と第2手順情報2とを1つの手順情報に纏めるときに、第1処理項目群6a,7aと第2処理項目群6b,7bとを条件分岐として表現させるか否かを、差分値に基づいて判断する。【選択図】図1

Description

本発明は、共通化情報提供プログラム、共通化情報提供方法、および共通化情報提供装置に関する。
コンピュータシステムを運用・管理するため、様々な作業が行われる。作業を正確に行うため、各作業の手順書が用意される。
システムの運用・管理のための作業は、例えばGUI(Graphical User Interface)を用いて行われることがある。GUIの操作性の善し悪しは、作業効率に影響する。そこで、例えばGUI画面を提示する評価対象プログラムについて、GUI部品間の移動を示す操作シーケンスに着目した評価結果を作成する技術が考えられている。
なお手順書を自動で作成できれば、手順書作成の手間を省くことができる。例えば、製品の組立作業手順書であれば、設計情報を活用して組立作業手順書を統一された様式で容易に作成する技術がある。ただし、製品の組立作業手順書の作成技術を、システム管理のための手順書の作成技術に転用するのは困難である。そのためシステム管理のための作業手順書は、人手によって作成されている。
システムが複雑化すると、手順書の量も膨大となる。大量の手順書の中には、似た内容の手順書が複数存在することもある。そこで、例えば作業の手順をワークフローなどの処理の流れを表した図によって表現されているときに、類似する処理の流れ図を自動的に合成する技術が考えられている。
手順を統一化する別の技術としては、例えば、業務フローを構成する業務タスク及びフロー形状などの情報に基づいて、ビジネスプロセスを実行可能な形式で作成する技術もある。
特開2009−134673号公報 特開2005−316834号公報 特開2011−059962号公報 特開2008−310566号公報
多くの手順書は、管理者が実施する作業の手順が自然言語で含まれている。自然言語で記述された手順書の場合、作成する人により表現が異なり、同じ作業の同じ手順について、表記の異なる複数の手順書が作成されることがある。また、同じ目的で実施される作業の手順書であっても、作業の結果に影響が及ばないような些細な部分で手順が異なる複数の手順書が作成される場合もある。自然言語で記述された手順書について、類似する複数の手順書を、まとめて1つの手順書とすれば、手順書の量を削減することができる。手順書の量を削減できれば、例えば、手順書に基づいて手順を自動で実行させるプログラムを作成する場合の、プログラム作成に要する工数を削減できる。
複数の手順書を1つにまとめる場合、実質的な処理内容が相違する箇所には分岐を設け、分岐条件を設定するなどの対応をすることになる。それに対して、処理の記述が相違する箇所であっても、単なる表記上の違いに過ぎない場合は分岐させずにすむ。そのため複数の手順書を1つに纏める際の作業工数を見積もるには、条件分岐させる分岐箇所を特定し、条件分岐がどの程度発生するのかを正確に把握することが重要となる。
しかし、従来は、複数の手順書を1つに統合する際に条件分岐させる分岐箇所を自動で特定する技術は存在せず、分岐箇所を人手によって特定するしかない。分岐箇所を特定するには、処理の記述が相違する箇所を見つけ出すことに加え、実質的な処理の相違なのか、単なる表記上の違いなのかを判別することとなり、人手で的確に判断するのは容易ではない。その結果、多数の手順書がある場合、分岐箇所の特定に多大な時間と労力が費やされる。
1つの側面では、本件は、複数の手順書を1つに統合する際に条件分岐させる箇所を容易に特定できるようにすることを目的とする。
1つの案では、コンピュータに以下の処理を実行させる共通化情報提供プログラムが提供される。共通化情報提供プログラムに基づいて、コンピュータは、処理内容を示す複数の処理項目が処理順に記述された第1手順情報と第2手順情報とに共通する一対の処理項目の間に記述された1以上の共通しない処理項目を、第1手順情報と第2手順情報とのそれぞれから処理項目群として検出する。次にコンピュータは、複数の動詞それぞれを含む処理項目の有無による処理項目群の処理の違いを表す差分換算値が、複数の動詞それぞれに対応付けられており、第1手順情報から検出された第1処理項目群に含まれている動詞と、第2手順情報から検出された第2処理項目群に含まれている動詞とのそれぞれに対応する差分換算値に基づいて、第1処理項目群の処理と第2処理項目群の処理との違いを示す差分値を算出する。そしてコンピュータは、第1手順情報と第2手順情報とを1つの手順情報に纏めるときに、第1処理項目群と第2処理項目群とを条件分岐として表現させるか否かを、差分値に基づいて判断する。
1態様によれば、複数の手順書を1つに統合する際に条件分岐させる箇所を容易に特定できる。
第1の実施の形態に係る共通化情報提供装置の一例を示す図である。 コンピュータのハードウェアの一構成例を示す図である。 コンピュータの共通化情報提供機能を示すブロック図である。 操作量定義情報の一例を示す図である。 作業手順書の例を示す図である。 共通化情報提供処理の手順を示すフローチャートである。 操作手順の抽出例を示す図である。 操作手順抽出処理の詳細を示すフローチャートである。 操作手順情報の一例を示す図である。 操作相違箇所検出例を示す図である。 操作相違箇所検出処理の詳細を示すフローチャートである。 分岐・合流検出処理の詳細を示すフローチャートである。 操作相違箇所情報の一例を示す図である。 差分操作手順抽出および差分操作量算出の一例を示す図である。 差分操作手順抽出処理の一例を示す図である。 操作抽出処理の手順を示すフローチャートである。 差分操作量算出処理の手順を示すフローチャートである。 差分操作手順情報の一例を示す図である。 手順分岐判定の一例を示す図である。 手順分岐判定処理の手順の一例を示すフローチャートである。 分岐箇所判定結果の出力例を示す図である。
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
図1は、第1の実施の形態に係る共通化情報提供装置の一例を示す図である。共通化情報提供装置10には、記憶部11と演算部12とが含まれる。記憶部11には、処理内容を示す複数の処理項目が処理順に記述された第1手順情報1と第2手順情報2とが格納されている。第1手順情報1と第2手順情報2とは、例えば自然言語によって記述されている。なお第1手順情報1と第2手順情報2に記載されている処理は、人に実施させる作業の場合と、コンピュータなどの機器に実施させる処理とが含まれる。人に実施させる作業には、人がコンピュータなどの機器に対して行う操作も含まれる。
また記憶部11には、差分換算値情報3が記憶されている。差分換算値情報3は、手順の記述に用いられる複数の動詞に対応付けて、差分換算値が設定されている。動詞の差分換算値は、その動詞を含む処理項目の有無による処理項目群の処理の違いを表している。すなわち動詞の差分換算値は、その動詞を含む処理がある場合と無い場合とで、処理結果にどの程度の違いがあると換算するのかを示す数値である。例えば処理結果に影響を与える処理に含まれる動詞ほど、高い値の差分換算値が設定される。
演算部12は、第1手順情報1と第2手順情報2とに共通する一対の処理項目の間に記述された1以上の共通しない処理項目を、第1手順情報1と第2手順情報2とのそれぞれから処理項目群として検出する。例えば演算部12は、第1手順情報1と第2手順情報2とを解析し、処理項目に分け、処理項目を処理順に並べた処理手順4,5を作成する。例えば1つの処理項目には1つの動詞が含まれるようにする。演算部12は、第1手順情報1と第2手順情報2との処理項目を比較し、一致する処理項目を検出する。そして演算部12は、2つの一致する処理項目の間、開始位置から一致する処理項目まで、および一致する処理項目から終了位置までのそれぞれに含まれる一致しない連続の処理項目を、第1手順情報1と第2手順情報2とから抽出する。ここで、第1手順情報1から抽出された処理項目群を、第1処理項目群6a,7aとする。また第2手順情報2から抽出された処理項目群を、第2処理項目群6b,7bとする。この例では第1手順情報1と第2手順情報2との間には、第1処理項目群6aと第2処理項目群6bとによる相違箇所6と、第1処理項目群7aと第2処理項目群7bとによる相違箇所7とがある。
演算部12は、相違箇所6,7ごとに、第1手順情報1の相違箇所6,7内の第1処理項目群6a,7aの処理と、第2手順情報2の相違箇所6,7内の第2処理項目群6b,7bの処理との違いを示す差分値を算出する。例えば演算部12は、第1手順情報1の相違箇所6,7内の第1処理項目群6a,7aに含まれている動詞と、第2手順情報2の相違箇所6,7内の第2処理項目群6b,7bに含まれている動詞それぞれに応じた差分換算値に基づいて、差分値を算出する。なお、各動詞の差分換算値は、差分換算値情報3から取得できる。
動詞の差分換算値に基づいて差分値を算出する場合、演算部12は、例えば第1処理項目群6a,7aに含まれる第1処理項目と、第2処理項目群6b,7bに含まれる第2処理項目とを、処理順に沿って1対1に対応付けた処理項目対を生成する。図1の例では、双方向の矢印で示した2つの処理項目が、処理項目対を構成している。
次に演算部12は、処理項目対ごとに、第1処理項目に含まれる動詞の差分換算値と、第2処理項目に含まれる動詞の差分換算値とに基づいて項目別差分値を算出する。そして演算部12は、相違箇所6,7内の処理項目対それぞれの項目別差分値の合計を、相違箇所6,7の差分値とする。
演算部12は、例えば処理項目対に含まれる第1処理項目と第2処理項目とのそれぞれに含まれる動詞が異なる場合、それぞれの動詞の差分換算値のうちの大きい方の値を、項目別差分値とする。また演算部12は、処理項目対に含まれる第1処理項目と第2処理項目とで、動詞は同じであり目的語が異なる場合、例えば、その動詞の差分換算値に1未満の所定値を乗算した値を、処理項目対の項目別差分値とする。
なお第1処理項目群6a,7aに含まれる第1処理項目の数と、第2処理項目群6b,7bに含まれる第2処理項目の数とが異なる場合もある。この場合、演算部12は、例えば、同じ動詞を有する第1処理項目と第2処理項目とを対応付ける。演算部12は、処理項目対の対応付けができずに余った処理項目については、例えば、その処理項目に含まれる動詞の差分換算値を、項目別差分値とする。
相違箇所6,7それぞれの差分値が求まると、演算部12は、第1手順情報1と第2手順情報2とを1つの処理手順に纏めるときに、第1処理項目群6a,7aと第2処理項目群6b,7bとを条件分岐させるか否かを、差分値に基づいて判断する。例えば演算部12は、差分値が所定の閾値より大きい場合、条件分岐させると判断し、差分値が所定の閾値以下であれば、条件分岐しないと判断する。また演算部12は、処理項目1つ当たりの差分値と閾値とを比較して、条件分岐させるか否かを判断してもよい。その場合、演算部12は、相違箇所の差分値を、第1処理項目群6a,7aに含まれる処理項目の数または第2処理項目群6b,7bに含まれる処理項目の数で除算した値が、所定の閾値より大きければ、第1処理項目群6a,7aと第2処理項目群6b,7bとを条件分岐させるものと判断する。
このような共通化情報提供装置10によれば、第1手順情報1と第2手順情報2とを纏め1つの手順情報に統合するときに、条件分岐の箇所を特定することができる。図1の例では、第1手順情報1と第2手順情報2との間に、2つの相違箇所6,7が検出される。
相違箇所6には、第1手順情報1の2つの処理項目と第2手順情報2の2つの処理項目とが含まれる。第1手順情報1の処理項目数と第2手順情報2の処理項目数とは同じであるため、処理順に沿って、相違箇所6内の第1手順情報1の処理項目と第2手順情報2の処理項目とを1対1で対応付け、2つの処理項目対が生成できる。
相違箇所6の1つ目の処理項目対の一方の処理項目の動詞は「編集」、他方の処理項目の動詞は「起動」である。図1の例では、動詞「編集」の差分換算値は「1.0」であり、動詞「起動」の差分換算値も「1.0」である。そのため、この処理項目対の項目別差分値は、最大の差分換算値を採り「1.0」となる。相違箇所6の2つ目の処理項目対の一方の処理項目の動詞は「コピー」、他方の処理項目の動詞は「クリック」である。図1の例では、動詞「コピー」の差分換算値は「1.0」であり、動詞「クリック」の差分換算値は「0.3」である。そのため、この処理項目対の項目別差分値は、最大の差分換算値を採り「1.0」となる。
相違箇所7には、第1手順情報1の1つの処理項目と第2手順情報2の2つの処理項目とが含まれる。第1手順情報1の処理項目数と第2手順情報2の処理項目数とは異なる。そこで、同じ動詞を含む処理項目が対応付けられ、1つの処理項目対が生成される。
相違箇所7の処理項目対の処理項目の動詞は共に「閉じる」であるが、目的語が異なる。図1の例では、動詞「閉じる」の差分換算値は「0.3」である。そのため、この処理項目対の項目別差分値は、動詞「閉じる」の差分換算値に所定値(例えば0.5)を乗算し「0.15」となる。また相違箇所7において、処理項目対を構成できなかった処理項目の動詞は「クリック」である。動詞「クリック」の差分換算値は「0.3」であるため、この処理項目の項目別差分値は「0.3」となる。
1つの処理項目対と、余分な処理項目それぞれの項目別差分値の合計「0.45」が、相違箇所7の差分値となる。
ここで、条件分岐をさせるか否かの差分値の閾値を「0.5」とする。この場合、相違箇所6については、差分値が閾値より大きく、分岐箇所と判断される。他方、相違箇所7は、差分値が閾値以下であり、分岐箇所ではないと判断される。このような分岐箇所の特定結果に基づいて、第1手順情報1と第2手順情報2とを1つの手順情報に統合する場合に、統合後の手順情報に含まれる分岐箇所が1箇所であることが分かる。
第1手順情報1と第2手順情報2とを1つの手順情報に纏める場合、その手順情報には、例えば、相違箇所6については、インポートツールの有無によって分岐する分岐条件が設けられる。そして、インポートツールがなければ、第1手順情報1の相違箇所6内の第1処理項目群6a内の処理を実施し、インポートツールがあれば、第2手順情報2の相違箇所6内の第2処理項目群6bの処理を実施するような分岐が、統合後の手順情報に含められる。また相違箇所7については、ウィンドウを閉じる手順に関する些細な違いであり、第1手順情報1の第1の処理項目群7aの処理と第2手順情報2の第2処理項目群7bの処理とのいずれを実施しても、同じ結果が得られる。そのため、例えば、第1手順情報1の相違箇所7内の処理項目群7aの処理と第2手順情報2の相違箇所7内の処理項目群7bの処理とのいずれか一方の処理が、統合後の手順情報に含められる。
このような共通化情報提供装置10を用いれば、第1手順情報1と第2手順情報2とを1つの手順情報に纏める際に、条件分岐させる分岐箇所の特定が容易となる。分岐箇所の特定が容易となることで、例えば同様の目的で実施される処理の手順情報が大量にある場合、任意に選択可能な複数の手順情報の組み合わせそれぞれについて分岐箇所の特定を行えば、多数の手順情報を1つに纏める場合の分岐箇所の数を容易に算出できる。その結果、例えば多数の手順情報に示される処理をプログラムによって自動化させる際の、プログラム作成の工数を正確に算出できる。
また、第1の実施の形態では、第1手順情報1と第2手順情報2との処理項目を処理順に沿って1対1に対応付けた処理項目対ごとの項目別差分値を算出し、処理項目対ごとの項目別差分値の合計を差分値とすることができる。これにより、処理順の違いも差分値に反映させることができる。その結果、分岐箇所かどうかの判定を正確に行うことができる。
属する第1及び第2処理項目内の動詞が異なる処理項目対については、第1処理項目に含まれている動詞の差分換算値と、第2処理項目に含まれている動詞の差分換算値とのうちの大きい方の値が、その処理項目対の項目別差分値とされる。これにより、処理結果により大きな影響を与える動詞の差分換算値が項目別差分値に反映され、そのような動詞を多く含む相違箇所は分岐箇所と判断される。すなわち、いずれかの手順情報の処理項目を実施するのかにより処理結果が異なるような相違箇所については、正しく分岐箇所と判断できるようになる。
属する第1及び第2処理項目内の動詞が同じ処理項目対については、その動詞の差分換算値に1未満の所定値を乗算した値が、その処理項目対の項目別差分値とされる。これにより、動詞が同じで目的語のみ異なるような場合、項目別差分値を低く見積もり、該当相違箇所が誤って分岐箇所と判断されることを抑止できる。
第1処理項目群6a,7aに含まれる第1処理項目の数と、第2処理項目群6b,7bに含まれる第2処理項目の数とが異なる場合、同じ動詞を有する第1処理項目と第2処理項目とを対応付けて処理項目対が生成される。これにより、処理項目対を生成する際の処理項目間の対応付けを適切に行うことができ、差分値の正確性を向上させることができる。
相違箇所の差分値を閾値と比較する際には、相違箇所内の処理項目1つ当たりの差分値と閾値とを比較して、その相違箇所が分岐箇所かどうかを判断することもできる。処理項目1つ当たりの差分値を用いることで、例えば、2つの手順情報の相違箇所において処理内容に大きな違いはないが、一方の手順情報において処理の記載が詳細すぎて、処理項目数が多くなりすぎた場合に、その相違箇所が誤って分岐箇所と判断されることを抑止できる。
なお、演算部12は、例えば共通化情報提供装置10が有するプロセッサにより実現することができる。また、記憶部11は、例えば共通化情報提供装置10が有するメモリにより実現することができる。
〔第2の実施の形態〕
次に第2の実施の形態について説明する。第2の実施の形態では、共通化情報提供装置を、コンピュータを用いて実現する。
図2は、コンピュータのハードウェアの一構成例を示す図である。コンピュータ100は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス109を介してメモリ102と複数の周辺機器が接続されている。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ101がプログラムを実行することで実現する機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。
メモリ102は、コンピュータ100の主記憶装置として使用される。メモリ102には、プロセッサ101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ102には、プロセッサ101による処理に必要な各種データが格納される。メモリ102としては、例えばRAM(Random Access Memory)などの揮発性の半導体記憶装置が使用される。
バス109に接続されている周辺機器としては、HDD(Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、機器接続インタフェース107およびネットワークインタフェース108がある。
HDD103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103は、コンピュータ100の補助記憶装置として使用される。HDD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、フラッシュメモリなどの不揮発性の半導体記憶装置(SSD:Solid State Drive)を使用することもできる。
グラフィック処理装置104には、モニタ21が接続されている。グラフィック処理装置104は、プロセッサ101からの命令に従って、画像をモニタ21の画面に表示させる。モニタ21としては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。
入力インタフェース105には、キーボード22とマウス23とが接続されている。入力インタフェース105は、キーボード22やマウス23から送られてくる信号をプロセッサ101に送信する。なお、マウス23は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置106は、レーザ光などを利用して、光ディスク24に記録されたデータの読み取りを行う。光ディスク24は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク24には、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。
機器接続インタフェース107は、コンピュータ100に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース107には、メモリ装置25やメモリリーダライタ26を接続することができる。メモリ装置25は、機器接続インタフェース107との通信機能を搭載した記録媒体である。メモリリーダライタ26は、メモリカード27へのデータの書き込み、またはメモリカード27からのデータの読み出しを行う装置である。メモリカード27は、カード型の記録媒体である。
ネットワークインタフェース108は、ネットワーク20に接続されている。ネットワークインタフェース108は、ネットワーク20を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。なお、第1の実施の形態に示した共通化情報提供装置10も、図3に示したコンピュータ100と同様のハードウェアにより実現することができる。
コンピュータ100は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。コンピュータ100に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、コンピュータ100に実行させるプログラムをHDD103に格納しておくことができる。プロセッサ101は、HDD103内のプログラムの少なくとも一部をメモリ102にロードし、プログラムを実行する。またコンピュータ100に実行させるプログラムを、光ディスク24、メモリ装置25、メモリカード27などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ101からの制御により、HDD103にインストールされた後、実行可能となる。またプロセッサ101が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
図3は、コンピュータの共通化情報提供機能を示すブロック図である。コンピュータ100は、記憶部110、操作手順抽出部120、操作相違箇所検出部130、差分操作手順抽出部140、差分操作量算出部150、および手順分岐判定部160を有する。
記憶部110は、操作量定義情報111および複数の作業手順書112a,112b,112c,・・・を記憶する。操作量定義情報111は、操作の記述に含まれる動詞ごとに操作量の値を示す情報である。操作量は、動詞で示される操作が作業手順全体に与える影響を数値化したものである。作業手順書112a,112b,112c,・・・は、コンピュータシステムに対して、管理・運用の作業手順を自然言語で記述した電子データである。なお記憶部110としては、メモリ102またはHDDの記憶領域の一部が使用される。
操作手順抽出部120は、作業手順書112a,112b,112c,・・・を解析して、手順を構成する操作とその実施順序とを抽出する。そして操作手順抽出部120は、作業手順書112a,112b,112c,・・・ごとに、操作とその実施手順とを示す操作手順情報を生成する。
操作相違箇所検出部130は、作業手順書112a,112b,112c,・・・ごとの操作手順情報に基づき、2つの作業手順書間で操作手順が相違している箇所を検出する。操作相違箇所検出部130は、検出した相違箇所を、操作相違箇所とする。
差分操作手順抽出部140は、2つの作業手順書から、操作相違箇所に対応する操作手順を抽出する。差分操作手順抽出部140は、抽出した操作手順を、差分操作手順とする。
差分操作量算出部150は、操作相違箇所ごとに、各作業手順書から抽出した差分操作手順を構成する操作を示す記述を比較し、操作の記述に含まれる動詞や目的語の一致または相違を判定する。そして差分操作量算出部150は、操作量定義情報111に基づいて、操作を示す記述に含まれる動詞ごとの操作量定義値を判断し、その操作量定義値に基づいて重みをつけた差分操作量を算出する。
手順分岐判定部160は、操作相違箇所ごとに差分操作量算出部150により算出された差分操作量を評価する。さらに手順分岐判定部160は、差分操作量が一定値以下の操作相違箇所を、手順分岐から除外する。そして手順分岐判定部160は、除外されなかった操作相違箇所を、手順分岐箇所として出力する。
なお、図3に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。また、図3に示した各要素の機能は、例えば、その要素に対応するプログラムモジュールをコンピュータ100に実行させることで実現することができる。
図4は、操作量定義情報の一例を示す図である。操作量定義情報111には、動詞に対応付けて、その動詞の操作量定義値が設定されている。例えば、コンピュータ内のデータの変更を伴う操作については、データの変更を伴わない操作よりも高い操作量定義値を設定することもできる。例えばウィンドウの操作に関する動詞よりも、ファイル操作や編集操作に関する動詞の方が、高い値の操作量定義値が設定される。なお操作量定義値は、第1の実施の形態における差分量換算値の一例である。
図5は、作業手順書の例を示す図である。作業手順書112a,112b,・・・には、資料No.や資料名が記載されている。資料No.は、手順書の識別子(手順書ID)である。資料名は、手順書の名称である。作業手順書112a,112b,・・・に、作業手順が自然言語により、作業の順番に沿って記載されている。コンピュータシステムの管理・運用のための作業は、例えばコンピュータ機器に対する操作である。図5の例では、作業手順書112a,112b,・・・に記載されている各操作には、操作の実施順序を示す数値が付与されている。
以上のようなコンピュータにより、共通化情報提供処理が行われる。共通化情報提供処理では、複数の作業手順書を1つに纏め、共通化した作業手順書を作成する際の分岐箇所数が算出される。
図6は、共通化情報提供処理の手順を示すフローチャートである。
[ステップS101]操作手順抽出部120は、記憶部110に格納されている作業手順書112a,112b,112c,・・・を解析し、作業手順書112a,112b,112c,・・・それぞれの操作手順を示す操作手順情報30を生成する。
[ステップS102]操作相違箇所検出部130は、操作手順情報30に基づいて、2以上の操作手順の組み合わせを抽出し、それらの操作手順を比較し、操作相違箇所を検出する。そして操作相違箇所検出部130は、検出した相違箇所を示す操作相違箇所情報40を生成する。
[ステップS103]差分操作手順抽出部140は、操作相違箇所情報40に基づいて、比較された操作手順情報の組み合わせごとに、操作手順の相違する部分を抽出し、差分操作手順情報51,52,53,・・・を生成する。
[ステップS104]差分操作量算出部150は、操作量定義情報111に基づいて、差分操作手順情報51,52,53,・・・に示される相違する操作手順の、相違の度合いを差分操作量として算出する。差分操作量算出部150は、算出した差分操作量を、差分操作手順情報51,52,53,・・・に設定する。
[ステップS105]手順分岐判定部160は、操作相違箇所情報40に示される操作相違箇所について、差分操作量に基づいて、複数の作業手順書を1つの手順書に纏めたときに、操作相違箇所を分岐箇所とするか否かを判定する。そして、手順分岐判定部160は、手順分岐箇所に関する手順分岐箇所情報60を出力する。
以下、図6に示す各ステップの処理を詳細に説明する。まず、操作手順抽出処理(ステップS101)について説明する。
図7は、操作手順の抽出例を示す図である。図7の例では、任意のサーバ用のファイルをインポートする複数の作業手順書112a,112bを示している。これらの作業手順書112a,112bは、操作対象のサーバが異なるのみであり、操作の目的は同じである。操作手順抽出部120は、作業手順書112a,112bそれぞれから、操作手順31,32を抽出する。
例えば操作手順抽出部120は、作業手順書112a,112bの操作内容の記述から、動詞と、その動詞の目的語とを特定し、それ以外の修飾語を削除した文字列を、操作名とする。例えば「インポート作業用ファイルを該当サーバ用に編集します。」という文字列では、「編集」が動詞であり、「作業用ファイル」が目的語となる。そこで「作業用ファイルを編集」という操作名が生成される。操作手順抽出部120は、このような操作名を操作ごとに作成し、操作の実施順序に沿って操作名を、作業手順書112a,112bごとに並べることで、操作手順31,32を作成する。
なお「インポートツールを起動し、「インポート」ボタンをクリックします。」のような重文の場合、動詞が2つ含まれる。このような記述は、「インポートツールを起動」と「インポートボタンをクリック」という2つの操作名に分けられる。
図8は、操作手順抽出処理の詳細を示すフローチャートである。
[ステップS111]操作手順抽出部120は、記憶部110に格納されている作業手順書112a,112b,112c,・・・のうちの、未処理の作業手順書の手順書IDを1つ選択する。
[ステップS112]操作手順抽出部120は、選択した手順書IDの作業手順書を、記憶部110から読み込む。
[ステップS113]操作手順抽出部120は、読み込んだ手順書を解析し、作業の順に、作業を示す記述から「目的語+動詞」の形で操作名を取得する。取得した操作名は、操作の実施順に並べられる。
[ステップS114]操作手順抽出部120は、操作名の並びにおける実施順序の最初に操作名「Start」を追加する。
[ステップS115]操作手順抽出部120は、操作名の並びにおける実施順序の最後に操作名「End」を追加する。
[ステップS116]操作手順抽出部120は、選択した手順書ID、実施順序、および操作名を、操作手順情報30に記録する。
[ステップS117]操作手順抽出部120は、記憶部110に格納されている作業手順書112a,112b,112c,・・・のすべての手順書IDを選択したか否かを判断する。すべての手順書IDが選択済みの場合、操作手順抽出処理が終了する。未選択の手順書IDがあれば、処理がステップS111に進められる。
このようにして、操作手順情報30が生成される。
図9は、操作手順情報の一例を示す図である。操作手順情報30には、手順書ID、実施順序、および操作名の欄が設けられている。手順書IDの欄には、操作名の抽出元となった作業手順書の手順書IDが設定される。実施順序の欄には、操作名の抽出元となった作業手順書内での、操作名に対応する操作を実施する順番が設定される。操作名の欄には、作業手順書から抽出した操作名、または操作手順の開始・終了を示す操作名「Start」・「End」が設定される。
なお実施順序の「1」は操作名「Start」に割り当てられ、作業手順書から抽出した操作名には、実施順序「2」以降の値が割り当てられる。同一の作業手順書に対応する操作名のうち、実施順序が最後となるのは、操作名「End」である。
次に、操作相違箇所検出処理(ステップS102)について詳細に説明する。
図10は、操作相違箇所検出例を示す図である。操作相違箇所検出部130は、2つの操作手順31,32を重ね合わせたときに、枝分かれする箇所から再び合流する箇所までの範囲を、操作相違箇所として検出する。例えば操作手順31と操作手順32とを比較した場合、操作名「インポート終了を確認」が同じである。そうすると、操作手順31,32の最初の操作から枝分かれし、操作名「インポート終了を確認」で合流し、その後、再度枝分かれすることが分かる。この場合、操作相違箇所検出部130は、操作名「Start」の次から操作名「インポート終了を確認」の前までの操作を、操作相違箇所41とする。また操作相違箇所検出部130は、操作名「インポート終了を確認」の次から操作名「End」の前までの操作を、操作相違箇所42とする。
図11は、操作相違箇所検出処理の詳細を示すフローチャートである。
[ステップS121]操作相違箇所検出部130は、記憶部110に格納されている作業手順書112a,112b,112c,・・・のうちの、未処理の作業手順書の手順書IDを1つ選択する。そして操作相違箇所検出部130は、選択した手順書IDに対応する作業手順書を「手順書A」とする。
[ステップS122]操作相違箇所検出部130は、記憶部110に格納されている作業手順書112a,112b,112c,・・・のうちの、手順書Aと比較していない他の作業手順書の手順書IDを1つ選択する。そして操作相違箇所検出部130は、選択した手順書IDに対応する作業手順書を「手順書B」とする。
[ステップS123]操作相違箇所検出部130は、操作手順情報30から、手順書Aおよび手順書Bの操作手順を読み込む。読み込まれる操作手順は、実施順序が付与された操作名の配列である。
[ステップS124]操作相違箇所検出部130は、手順書Aと手順書Bとの操作手順が、完全に一致するか否かを判断する。完全に一致した場合、処理がステップS126に進められる。少なくとも一部に一致しない操作名がある場合、処理がステップS125に進められる。
[ステップS125]操作相違箇所検出部130は、2つの操作手順を重ね合わせたときに、手順が分岐する位置と合流する位置とを検出する、分岐・合流検出処理を行う。分岐・合流検出処理の詳細は後述する(図12参照)。
[ステップS126]操作相違箇所検出部130は、手順書Aと他のすべての手順書との比較が完了したか否かを判断する。手順書Aと他のすべての手順書との比較が完了していれば、処理がステップS127に進められる。手順書Aと比較していない他の手順書があれば、処理がステップS122に進められる。
[ステップS127]操作相違箇所検出部130は、手順書のすべての組み合わせに対して比較が完了したか否かを判断する。すべての手順書の組み合わせの比較が完了した場合、操作相違箇所検出処理が終了する。比較していない組み合わせがあれば、処理がステップS121に進められる。
図12は、分岐・合流検出処理の詳細を示すフローチャートである。
[ステップS131]操作相違箇所検出部130は、手順書Aの選択中の実施順序を示す変数iに1を設定する。また操作相違箇所検出部130は、手順書Bの選択中の実施順序を示す変数jに1を設定する。
[ステップS132]操作相違箇所検出部130は、手順書Aと手順書Bとのそれぞれにおける、選択中の実施順序の操作名が一致するか否かを判断する。操作名が一致する場合、処理がステップS133に進められる。操作名が一致しない場合、分岐箇所と判断され、処理がステップS135に進められる。
[ステップS133]操作相違箇所検出部130は、変数iの値に1を加算すると共に、変数jの値に1を加算する。これにより、手順書Aと手順書Bとの選択中の実施順序が、次の実施順序に進められる。
[ステップS134]操作相違箇所検出部130は、手順書Aの選択中の実施順序の操作名が「End」か否かを判断する。操作名が「End」であれば、分岐・合流検出処理が終了する。操作名が「End」でなければ、処理がステップS132に進められる。
[ステップS135]操作相違箇所検出部130は、分岐箇所になると、操作相違箇所の識別番号(操作相違箇所ID)に対応付けて、手順書Aと手順書Bとの手順書IDとを、操作相違箇所情報40に書き込む。
[ステップS136]操作相違箇所検出部130は、手順書Aの選択中の実施順序の1つ前の実施順序(i−1)の操作名を、操作箇所前操作として、操作相違箇所情報40に書き込む。
[ステップS137]操作相違箇所検出部130は、分岐直後の手順書Bの実施順序を示す変数j0に、手順書Bの選択中の実施順序jの値を設定する。
[ステップS138]操作相違箇所検出部130は、手順書Aの選択中の実施順序を示す変数iの値に1を加算する。これにより、手順書Aの選択中の実施順序が、次の実施順序に進められる。
[ステップS139]操作相違箇所検出部130は、実施順序iの操作名が「End」か否かを判断する。操作名が「End」であれば、処理がステップS140に進められる。操作名が「End」でなければ、処理がステップS141に進められる。
[ステップS140]操作相違箇所検出部130は、相違箇所後操作として「End」を、操作相違箇所情報40に書き込む。その後、分岐・合流検出処理が終了する。
[ステップS141]操作相違箇所検出部130は、手順書Bの選択中の実施順序を示す変数jの値に1を加算する。これにより、手順書Bの選択中の実施順序が、次の実施順序に進められる。
[ステップS142]操作相違箇所検出部130は、手順書Aと手順書Bとのそれぞれにおける、選択中の実施順序の操作名が一致するか否かを判断する。操作名が一致する場合、合流箇所と判断され、処理がステップS145に進められる。操作名が一致しない場合、処理がステップS143に進められる。
[ステップS143]操作相違箇所検出部130は、実施順序jの操作名が「End」か否かを判断する。操作名が「End」であれば、処理がステップS144に進められる。操作名が「End」でなければ、処理がステップS141に進められる。
[ステップS144]操作相違箇所検出部130は、手順書Bの選択中の実施順序jに、変数j0の値を設定する。これにより、手順書Bの選択中の実施順序が、分岐直後の実施順序に戻される。その後、処理がステップS138に進められる。
[ステップS145]操作相違箇所検出部130は、手順書Aの選択中の実施順序の1つ前の実施順序(i−1)の操作名を、操作箇所後操作として、操作相違箇所情報40に書き込む。
[ステップS146]操作相違箇所検出部130は、変数iの値に1を加算すると共に、変数jの値に1を加算する。これにより、手順書Aと手順書Bとの選択中の実施順序が、次の実施順序に進められる。その後、処理がステップS132に進められる。
このようにして、操作相違箇所が検出され、操作相違箇所情報40が作成される。
図13は、操作相違箇所情報の一例を示す図である。操作相違箇所情報40には、操作相違箇所ID、手順書ID、相違箇所前操作、および相違箇所後操作の欄が設けられている。操作相違箇所IDの欄には、操作相違箇所の識別情報(操作相違箇所ID)が設定される。手順書IDの欄には、操作相違箇所の抽出元となった作業手順書の手順書IDが設定される。相違箇所前操作の欄には、相違箇所の直前の操作名が設定される。相違箇所後操作の欄には、相違箇所の直後の操作名が設定される。
次に、差分操作手順抽出処理(ステップS103)と差分操作量算出処理(ステップS104)とについて詳細に説明する。
図14は、差分操作手順抽出および差分操作量算出の一例を示す図である。図14には、作業手順書112aを「手順書A」、作業手順書112bを「手順書B」としたときの、差分操作量の算出例が示されている。
操作相違箇所41には、手順書Aの2つの操作と、手順書Bの2つの操作とが含まれている。この場合、両方の操作の数が同じであるため、操作相違箇所41内の同じ順番の操作同士が対応付けて抽出される。このとき、操作名の記載が、目的語と動詞とに分けられる。また抽出元の作業手順書112a,112bにおける実施順序に従って、操作相違箇所41から抽出された各操作の早い順に、操作順序が設定される。
操作相違箇所42には、手順書Aの1つの操作と、手順書Bの2つの操作とが含まれている。このように両方の操作の数が異なる場合、動詞が一致する操作があれば、それらの操作が対応付けられる。例えば作業手順書112aから抽出された操作「ウィンドウを閉じる」と、作業手順書112bから抽出された操作「ツールを閉じる」とは、動詞が一致する。そこで、これらの操作が対応付けて抽出される。
このように、操作相違箇所41,42から、比較された作業手順書それぞれの操作が対応付けて抽出される。以下、対応する操作の組を、「操作対」と呼ぶこととする。操作対が抽出されると、操作対の各操作の目的語と動詞とに基づいて、操作対に対する差分操作量が算出される。
操作対の各操作の操作名に含まれる動詞が異なっていれば、それらの動詞の操作量定義値のうちの大きい方の値が、差分操作量となる。例えば「作業用ファイル(目的語)、編集(動詞)」と「インポートツール(目的語)、起動(動詞)」とを比較すると、編集の操作量定義値が「1.0」、「起動」の操作量定義値が「0.3」である。そこで、大きい方の値である「1.0」が、差分操作量となる。
操作対の各操作の操作名に含まれる動詞が同じで目的語が異なる場合、その動詞の操作量定義値に対して、1未満の所定の係数を乗算した値が差分操作量となる。例えば「ウィンドウ(目的語)、閉じる(動詞)」と「ツール(目的語)、閉じる(動詞)」とを比較すると動詞が同じであるが、目的語が異なる。そこで「閉じる」の操作量定義値「0.3」に所定の係数(例えば「0.5」)を乗算した値「0.15」が、差分操作量となる。
操作の対応付けができずに余った操作に対しては、その操作に含まれる動詞の操作量定義値が、差分操作量となる。例えば手順書Bから抽出された操作「終了(目的語)、クリック(動詞)」には、手順書A側に対応する操作がない。そこで、「クリック」の差分量定義値「0.3」が、差分操作量となる。
各操作対について計算された差分操作量は、操作相違箇所41,42ごとに合計される。合計した結果が、対応する操作相違箇所の差分操作量となる。
なお図14の例では、2つの手順書を比較しているが、3つ以上の手順書を比較することも可能である。操作相違箇所にかかる手順書が3つ以上の場合は、任意の2つの手順書で比較して得られる差分操作量の最大値を、その操作相違箇所の差分操作量とすればよい。
図15は、差分操作手順抽出処理の一例を示す図である。
[ステップS151]差分操作手順抽出部140は、操作相違箇所情報40に記録されている操作相違箇所IDを1つ選択する。
[ステップS152]差分操作手順抽出部140は、操作相違箇所IDに対応する2つの手順書IDを、操作相違箇所情報40から読み込む。
[ステップS153]差分操作手順抽出部140は、相違箇所前操作と相違箇所後操作とを、操作相違箇所情報40から読み込む。
[ステップS154]差分操作手順抽出部140は、読み込まれた2つの手順書IDそれぞれの、相違箇所前操作と相違箇所後操作との間の操作の操作名を、操作手順情報30から読み込む。
[ステップS155]差分操作手順抽出部140は、読み込まれた2つの手順書IDで示される手順書のうち、一方を「手順書A」、他方を「手順書B」とする。例えば差分操作手順抽出部140は、手順書IDの値が小さい方の手順書を「手順書A」、手順書IDの値が大きい方の手順書を「手順書B」とする。
[ステップS156]差分操作手順抽出部140は、操作相違箇所内の操作の抽出処理を行う。この処理の詳細は後述する(図16参照)。
[ステップS157]差分操作手順抽出部140は、すべての操作相違箇所について処理が完了したか否かを判断する。すべての操作相違箇所で処理が完了したら、差分操作手順抽出処理が終了する。未処理の操作相違箇所があれば、処理がステップS151に進められる。
図16は、操作抽出処理の手順を示すフローチャートである。
[ステップS161]差分操作手順抽出部140は、手順書Aと手順書Bとの操作名の数が等しいか否かを判断する。例えば差分操作手順抽出部140は、ステップS154で読み出した操作名の数を手順書ID別に計数し、比較する。数が等しければ、処理がステップS162に進められる。数が等しくなければ、処理がステップS163に進められる。
[ステップS162]差分操作手順抽出部140は、手順書Aおよび手順書Bから取得した操作名を目的語と動詞に分割し、実施順序で差分操作手順情報51に書き込む。このとき差分操作手順抽出部140は、書き込んだ操作名(目的語と動詞の組)に対して、操作相違箇所内での操作順序を示す値を設定する。その後、操作抽出処理が終了する。
[ステップS163]差分操作手順抽出部140は、操作名の数が多い方の手順書について、操作名を目的語と動詞に分割し、実施順序で差分操作手順情報51に書き込む。このとき差分操作手順抽出部140は、書き込んだ操作名(目的語と動詞の組)に対して、操作相違箇所内での操作順序を示す値を設定する。
[ステップS164]差分操作手順抽出部140は、操作名の数が少ない方の手順書について、操作名を目的語と動詞に分割する。
[ステップS165]差分操作手順抽出部140は、手順書Aの操作名から抽出した動詞と手順書Bの操作名から抽出した動詞とを比較し、動詞が一致する操作名があるか否かを判断する。動詞が一致する操作名があれば、処理がステップS166に進められる。動詞が一致する操作名がなければ、処理がステップS167に進められる。
[ステップS166]差分操作手順抽出部140は、操作名が少ない方の手順書について、動詞が一致した操作の操作順序が同じとなるように、操作名(目的語と動詞との組)を差分操作手順情報51に書き込む。その後、操作抽出処理が終了する。
[ステップS167]差分操作手順抽出部140は、操作名が少ない方の手順書について、操作名(目的語と動詞との組)を、操作順序の1から順に差分操作手順情報51に書き込む。その後、操作抽出処理が終了する。
このようにして、複数の手順書の操作相違箇所から操作が抽出され、操作順序で並べられる。そして同じ操作順序となる操作対が比較され、操作対に対する差分操作量が算出される。
図17は、差分操作量算出処理の手順を示すフローチャートである。
[ステップS171]差分操作量算出部150は、操作相違箇所情報40に記録された操作相違箇所IDを1つ選択する。
[ステップS172]差分操作量算出部150は、操作順序を1つ選択する。
[ステップS173]差分操作量算出部150は、選択した操作順序に、手順書Aまたは手順書Bのいずれか一方の操作が存在しないかどうかを判断する。一方の手順書の操作が存在しない場合、処理がステップS174に進められる。両方の手順書の操作が存在する場合、処理がステップS177に進められる。
[ステップS174]差分操作量算出部150は、存在する操作の操作名に含まれる動詞を、操作相違箇所情報40から取得する。
[ステップS175]差分操作量算出部150は、取得した動詞に対応する操作量定義値を、操作量定義情報111から取得する。
[ステップS176]差分操作量算出部150は、取得した差分操作量を、選択した操作順序に対応する操作対の差分操作量として、差分操作手順情報51に書き込む。その後、処理がステップS183に進められる。
[ステップS177]差分操作量算出部150は、手順書Aと手順書Bとの動詞を、操作相違箇所情報40から取得する。
[ステップS178]差分操作量算出部150は、取得した2つの動詞が一致するか否かを判断する。一致する場合、処理がステップS181に進められる。一致しない場合、処理がステップS179に進められる。
[ステップS179]差分操作量算出部150は、取得した2つの動詞それぞれの操作量定義値を、操作量定義情報111から取得する。
[ステップS180]差分操作量算出部150は、取得した操作量定義値のうちの大きい方の値を、選択した操作順序に対応する操作対の差分操作量として、差分操作手順情報51に書き込む。その後、処理がステップS183に進められる。
[ステップS181]差分操作量算出部150は、一致した動詞の操作量定義値を、操作量定義情報111から取得する。
[ステップS182]差分操作量算出部150は、取得した操作量定義値に一定値(例えば0.5)を掛けた値を、選択した操作順序に対応する操作対の差分操作量として、差分操作手順情報51に書き込む。
[ステップS183]差分操作量算出部150は、選択したすべての操作相違箇所IDに対応するすべての操作順序について、処理が完了したか否かを判断する。すべての操作順序で処理が完了していれば、処理がステップS184に進められる。未処理の操作順序があれば、処理がステップS172に進められる。
[ステップS184]差分操作量算出部150は、すべての操作相違箇所IDについて処理が完了したか否かを判断する。すべての操作相違箇所IDについて処理が完了していれば、差分操作量算出処理が終了する。未処理の操作相違箇所IDがあれば、処理がステップS171に進められる。
このようにして、操作相違箇所から抽出された操作に基づいて算出した差分操作量が、差分操作手順情報51に設定される。
図18は、差分操作手順情報の一例を示す図である。差分操作手順情報51には、操作相違箇所ID、操作順序、手順書A目的語、手順書A動詞、手順書B目的語、手順書B動詞、および差分操作量の欄が設けられている。
操作相違箇所IDの欄には、差分操作手順の抽出を行った操作相違箇所の操作相違箇所IDが設定される。操作順序の欄には、操作相違箇所内での操作の順番が設定される。手順書A目的語の欄には、手順書Aの操作名から抽出された目的語が設定される。手順書A動詞の欄には、手順書Aの操作名から抽出された動詞が設定される。手順書B目的語の欄には、手順書Bの操作名から抽出された目的語が設定される。手順書B動詞の欄には、手順書Bの操作名から抽出された動詞が設定される。差分操作量の欄には、操作順序に対応する操作対に関する差分操作量が設定される。
差分操作量が求まると、手順分岐判定部160により手順分岐判定処理が行われる。
図19は、手順分岐判定の一例を示す図である。手順分岐判定部160は、操作相違箇所ごとに、差分操作量を評価し、1操作あたりの差分操作量が一定値より小さい操作相違箇所は手順分岐箇所からは除外するように手順分岐箇所を修正する。
例えば操作相違箇所41の合計の差分操作量は「2.0」である。操作相違箇所41には各手順書の2つずつの操作が含まれているため、1操作当たりの差分操作量は「1.0」である。分岐箇所とするかどうかの閾値を「0.5」とすると、操作相違箇所41の1操作当たりの差分操作量は閾値より大きい。この場合、操作相違箇所41は、2つの作業手順書を1つに纏めた場合に条件分岐させる、手順分岐箇所と判断される。
操作相違箇所42の合計の差分操作量は「0.45」である。操作相違箇所42には、一方の手順書の1つの操作と他方の手順書の2つの操作が含まれている。この場合、数が多い方の手順の数で差分操作量を除算した値「0.225」が、1操作当たりの差分操作量となる。操作相違箇所42の1操作当たりの差分操作量は、閾値「0.5」より小さい。この場合、操作相違箇所42は、2つの作業手順書を1つに纏めた場合に条件分岐させない、手順非分岐箇所と判断される。手順非分岐箇所は、例えば2つの作業手順書を1つに纏めるとき、条件分岐をさせずに、いずれか一方の作業手順書の操作を適用すればよい。
手順分岐判定部160は、手順分岐箇所61や手順分岐箇所数を出力する。図19の例では、手順分岐箇所数は「1」である。
図20は、手順分岐判定処理の手順の一例を示すフローチャートである。
[ステップS191]手順分岐判定部160は、差分操作手順情報51から、操作相違箇所IDを1つ選択する。
[ステップS192]手順分岐判定部160は、選択した操作相違箇所IDに対応するすべての操作順序の操作対ごとの差分操作量を読み込み、合計値を計算する。
[ステップS193]手順分岐判定部160は、選択した操作相違箇所IDの差分操作量の合計値を、その操作相違箇所IDに対応する操作順序の最大値で割った値を、1操作当たりの差分操作量とする。
[ステップS194]手順分岐判定部160は、1操作当たりの差分操作量が、閾値以下か否かを判断する。閾値以下であれば、処理がステップS195に進められる。閾値以下でなければ、処理がステップS196に進められる。
[ステップS195]手順分岐判定部160は、選択した操作相違箇所IDに対応する操作相違箇所を、手順分岐対象から除外する。
[ステップS196]手順分岐判定部160は、すべての操作相違箇所IDについて処理が完了したか否かを判断する。完了していれば、処理がステップS197に進められる。未処理の操作相違箇所IDがあれば、処理がステップS191に進められる。
[ステップS197]手順分岐判定部160は、除外されなかった操作相違箇所を、手順分岐箇所として出力する。
[ステップS198]手順分岐判定部160は、手順分岐箇所の数をカウントし、手順分岐箇所数として出力する。
このようにして、同様の作業手順書を1つに纏めるときの分岐箇所数が算出される。手順分岐判定部160は、作業手順書を纏めたときの操作数を出力することもできる。
図21は、分岐箇所判定結果の出力例を示す図である。例えば手順分岐判定部160は、作業名に対応付けて、統合される作業手順書の手順書ID、統合後の作業手順に含まれる操作数、および統合後の作業手順に含まれる手順分岐箇所数を出力する。
以上説明したように、第2の実施の形態では、手順書の解析により操作記述の異なる箇所に対して、その箇所に含まれる目的語や動詞の差異などに基づいて差分操作量を算出し、その値が小さい箇所を手順分岐箇所から除外することとした。これにより、手順内容が実施的に異なる箇所のみを手順分岐箇所として判定することができ、手順分岐箇所の数を正確に算出可能となる。分岐箇所数が分かれば、例えば作業手順書に沿った操作を自動で実行させるプログラムを作成する際の工数を、正確に求めることができる。
なお第2の実施の形態では、1操作当たりの差分操作量が閾値以下の場合、分岐させないものとしたが、1操作当たりの差分操作量は小さくても、相違する操作が長く続く場合には、分岐させたほうがよい場合もあり得る。そこで、操作相違箇所の差分操作量(合計値)と閾値を比較して、分岐させるか否かを判断してもよい。また1操作当たりの差分操作量を第1の閾値と比較すると共に、操作相違箇所の差分操作量(合計値)を第2の閾値を比較し、いずれか一方で閾値以上となったときに分岐させるものと判断してもよい。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
1 第1手順情報
2 第2手順情報
3 差分換算値情報
4,5 処理手順
6,7 相違箇所
6a,7a 第1処理項目群
6b,7b 第2処理項目群
10 共通化情報提供装置
11 記憶部
12 演算部

Claims (8)

  1. コンピュータに、
    処理内容を示す複数の処理項目が処理順に記述された第1手順情報と第2手順情報とに共通する一対の処理項目の間に記述された1以上の共通しない処理項目を、前記第1手順情報と前記第2手順情報とのそれぞれから処理項目群として検出し、
    複数の動詞それぞれを含む処理項目の有無による処理項目群の処理の違いを表す差分換算値が、前記複数の動詞それぞれに対応付けられており、前記第1手順情報から検出された第1処理項目群に含まれている動詞と、前記第2手順情報から検出された第2処理項目群に含まれている動詞とのそれぞれに対応する差分換算値に基づいて、前記第1処理項目群の処理と前記第2処理項目群の処理との違いを示す差分値を算出し、
    前記第1手順情報と前記第2手順情報とを1つの手順情報に纏めるときに、前記第1処理項目群と前記第2処理項目群とを条件分岐として表現させるか否かを、前記差分値に基づいて判断する、
    処理を実行させる共通化情報提供プログラム。
  2. 前記算出では、前記第1処理項目群に含まれる第1処理項目と、前記第2処理項目群に含まれる第2処理項目とを、処理順に沿って1対1に対応付けた、少なくとも1つの処理項目対を生成し、該処理項目対ごとに、前記第1処理項目に含まれる動詞の差分換算値と、前記第2処理項目に含まれる動詞の差分換算値とに基づいて項目別差分値を算出し、該処理項目対ごとの項目別差分値の合計に応じた値を、前記差分値とする、
    請求項1記載の共通化情報提供プログラム。
  3. 前記算出では、前記第1処理項目に含まれる動詞と前記第2処理項目に含まれる動詞とが異なる第1処理項目対に関し、前記第1処理項目に含まれている動詞の差分換算値と、前記第2処理項目に含まれている動詞の差分換算値とのうちの大きい方の値を、前記第1処理項目対の項目別差分値とする、
    請求項2記載の共通化情報提供プログラム。
  4. 前記算出では、前記第1処理項目に含まれる動詞と前記第2処理項目に含まれる動詞とが同じ第2処理項目対に関し、該動詞の差分換算値に1未満の所定値を乗算した値を、前記第2処理項目対の項目別差分値とする、
    請求項2または3記載の共通化情報提供プログラム。
  5. 前記算出では、前記第1処理項目群に含まれる前記第1処理項目の数と、前記第2処理項目群に含まれる前記第2処理項目の数とが異なる場合、同じ動詞を有する前記第1処理項目と前記第2処理項目とを対応付けて処理項目対を生成する、
    請求項2乃至4のいずれかに記載の共通化情報提供プログラム。
  6. 前記判断では、前記第1処理項目群に含まれる処理項目の数または前記第2処理項目群に含まれる処理項目の数で、前記差分値を除算した値が、所定の閾値より大きければ、前記第1処理項目群と前記第2処理項目群とを条件分岐として表現させるものと判断する、
    請求項1乃至5のいずれかに記載の共通化情報提供プログラム。
  7. コンピュータが、
    処理内容を示す複数の処理項目が処理順に記述された第1手順情報と第2手順情報とに共通する一対の処理項目の間に記述された1以上の共通しない処理項目を、前記第1手順情報と前記第2手順情報とのそれぞれから処理項目群として検出し、
    複数の動詞それぞれを含む処理項目の有無による処理項目群の処理の違いを表す差分換算値が、前記複数の動詞それぞれに対応付けられており、前記第1手順情報から検出された第1処理項目群に含まれている動詞と、前記第2手順情報から検出された第2処理項目群に含まれている動詞とのそれぞれに対応する差分換算値に基づいて、前記第1処理項目群の処理と前記第2処理項目群の処理との違いを示す差分値を算出し、
    前記第1手順情報と前記第2手順情報とを1つの手順情報に纏めるときに、前記第1処理項目群と前記第2処理項目群とを条件分岐として表現させるか否かを、前記差分値に基づいて判断する、
    共通化情報提供方法。
  8. 処理内容を示す複数の処理項目が処理順に記述された第1手順情報と第2手順情報とを記憶する記憶部と、
    前記第1手順情報と前記第2手順情報とに共通する一対の処理項目の間に記述された1以上の共通しない処理項目を、前記第1手順情報と前記第2手順情報とのそれぞれから処理項目群として検出し、複数の動詞それぞれを含む処理項目の有無による処理項目群の処理の違いを表す差分換算値が、前記複数の動詞それぞれに対応付けられており、前記第1手順情報から検出された第1処理項目群に含まれている動詞と、前記第2手順情報から検出された第2処理項目群に含まれている動詞とのそれぞれに対応する差分換算値に基づいて、前記第1処理項目群の処理と前記第2処理項目群の処理との違いを示す差分値を算出し、前記第1手順情報と前記第2手順情報とを1つの手順情報に纏めるときに、前記第1処理項目群と前記第2処理項目群とを条件分岐として表現させるか否かを、前記差分値に基づいて判断する、演算部と、
    を有する共通化情報提供装置。
JP2014261625A 2014-12-25 2014-12-25 共通化情報提供プログラム、共通化情報提供方法、および共通化情報提供装置 Active JP6447111B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014261625A JP6447111B2 (ja) 2014-12-25 2014-12-25 共通化情報提供プログラム、共通化情報提供方法、および共通化情報提供装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014261625A JP6447111B2 (ja) 2014-12-25 2014-12-25 共通化情報提供プログラム、共通化情報提供方法、および共通化情報提供装置

Publications (2)

Publication Number Publication Date
JP2016122317A true JP2016122317A (ja) 2016-07-07
JP6447111B2 JP6447111B2 (ja) 2019-01-09

Family

ID=56328895

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014261625A Active JP6447111B2 (ja) 2014-12-25 2014-12-25 共通化情報提供プログラム、共通化情報提供方法、および共通化情報提供装置

Country Status (1)

Country Link
JP (1) JP6447111B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018225115A1 (ja) * 2017-06-05 2018-12-13 株式会社日立製作所 運用支援システム及び方法
JP2020144909A (ja) * 2017-06-05 2020-09-10 株式会社日立製作所 運用支援システム及び方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007265418A (ja) * 2001-05-28 2007-10-11 Zenya Kono 自動詳細化システム
JP2008021097A (ja) * 2006-07-12 2008-01-31 Fujitsu Ltd 作業手順生成プロブラム及び装置及び方法
JP2011059962A (ja) * 2009-09-09 2011-03-24 Fuji Xerox Co Ltd 情報処理装置及び情報処理プログラム
US20110213804A1 (en) * 2008-11-14 2011-09-01 Korea Institute Of Science & Technology Information System for extracting ralation between technical terms in large collection using a verb-based pattern
US20110225160A1 (en) * 2008-12-05 2011-09-15 Fujitsu Limited Computer product, operation and management support apparatus and method
JP2013120561A (ja) * 2011-12-08 2013-06-17 Fujitsu Ltd 情報処理方法、プログラム及び装置
JP2014191568A (ja) * 2013-03-27 2014-10-06 Biglobe Inc 運用システム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007265418A (ja) * 2001-05-28 2007-10-11 Zenya Kono 自動詳細化システム
JP2008021097A (ja) * 2006-07-12 2008-01-31 Fujitsu Ltd 作業手順生成プロブラム及び装置及び方法
US20110213804A1 (en) * 2008-11-14 2011-09-01 Korea Institute Of Science & Technology Information System for extracting ralation between technical terms in large collection using a verb-based pattern
US20110225160A1 (en) * 2008-12-05 2011-09-15 Fujitsu Limited Computer product, operation and management support apparatus and method
JP2011059962A (ja) * 2009-09-09 2011-03-24 Fuji Xerox Co Ltd 情報処理装置及び情報処理プログラム
JP2013120561A (ja) * 2011-12-08 2013-06-17 Fujitsu Ltd 情報処理方法、プログラム及び装置
JP2014191568A (ja) * 2013-03-27 2014-10-06 Biglobe Inc 運用システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
中鉢欣秀ほか: "シナリオの図解化によるユースケースモデリング", 電子情報通信学会論文誌, vol. 第J88-D-I巻,第4号, JPN6018042390, 1 April 2005 (2005-04-01), pages 813 - 828, ISSN: 0003906809 *
麻岡正洋ほか: "共通手順推定による運用手順の標準化支援", 電子情報通信学会技術研究報告, vol. 第113巻,第492号, JPN6018042389, 6 March 2014 (2014-03-06), pages 155 - 160, ISSN: 0003906808 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018225115A1 (ja) * 2017-06-05 2018-12-13 株式会社日立製作所 運用支援システム及び方法
JPWO2018225115A1 (ja) * 2017-06-05 2019-11-07 株式会社日立製作所 運用支援システム及び方法
JP2020144909A (ja) * 2017-06-05 2020-09-10 株式会社日立製作所 運用支援システム及び方法

Also Published As

Publication number Publication date
JP6447111B2 (ja) 2019-01-09

Similar Documents

Publication Publication Date Title
US11227227B2 (en) Automatic detection of anomalies in graphs
US8612372B2 (en) Detection rule-generating facility
US9703686B2 (en) Software testing optimizer
JP2018507450A (ja) 自動スキーマ不整合検出
CN108228861B (zh) 用于执行机器学习的特征工程的方法及系统
CN109739855B (zh) 实现数据表拼接及自动训练机器学习模型的方法和系统
JP6542612B2 (ja) テストシナリオ生成支援装置およびテストシナリオ生成支援方法
JP6253521B2 (ja) プログラム可視化装置、プログラム可視化方法、及びプログラム可視化プログラム
US10423416B2 (en) Automatic creation of macro-services
US9910487B1 (en) Methods, systems and computer program products for guiding users through task flow paths
US8887112B2 (en) Test validation planning
JP6447111B2 (ja) 共通化情報提供プログラム、共通化情報提供方法、および共通化情報提供装置
JP6540384B2 (ja) 評価プログラム、手順書評価方法、および評価装置
JP6432266B2 (ja) グループ化方法、グループ化装置、およびグループ化プログラム
US9965379B1 (en) Cross-platform API test flow synthesizer
KR102199668B1 (ko) 공간정보 처리용 워크플로우를 자동으로 생성하는 서비스를 제공하는 방법 및 이러한 방법을 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 저장 매체
US20150169292A1 (en) Computer-readable recording medium storing program for managing scripts, script management device, and script management method
US20100030732A1 (en) System and method to create process reference maps from links described in a business process model
KR20180076594A (ko) 객체 속성을 이용한 도면관리 방법 및 도면관리 시스템
JP5799823B2 (ja) テストデータ生成装置、テストデータ生成プログラムおよびテストデータ生成方法
US20080195453A1 (en) Organisational Representational System
US20160147816A1 (en) Sample selection using hybrid clustering and exposure optimization
WO2015145556A1 (ja) ソフトウェア仕様間依存関係検証装置、及びソフトウェア仕様間依存関係検証方法
JP5910410B2 (ja) 図式プログラムのテストデータ生成装置およびその方法、並びにプログラム
JP2020013385A (ja) 情報処理装置、パッチ適用確認システム、パッチ適用確認方法、およびパッチ適用確認プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181012

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: 20181106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181119

R150 Certificate of patent or registration of utility model

Ref document number: 6447111

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150