JP2021125185A - 重要度決定プログラム、重要度決定装置及び重要度決定方法 - Google Patents

重要度決定プログラム、重要度決定装置及び重要度決定方法 Download PDF

Info

Publication number
JP2021125185A
JP2021125185A JP2020020578A JP2020020578A JP2021125185A JP 2021125185 A JP2021125185 A JP 2021125185A JP 2020020578 A JP2020020578 A JP 2020020578A JP 2020020578 A JP2020020578 A JP 2020020578A JP 2021125185 A JP2021125185 A JP 2021125185A
Authority
JP
Japan
Prior art keywords
class
classes
specified
diagram
importance
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
JP2020020578A
Other languages
English (en)
Inventor
恭子 大橋
Kyoko Ohashi
恭子 大橋
功 難波
Isao Nanba
功 難波
圭佑 堀田
Keisuke Hotta
圭佑 堀田
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 JP2020020578A priority Critical patent/JP2021125185A/ja
Publication of JP2021125185A publication Critical patent/JP2021125185A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】要求仕様のチェックを効率的かつ精度良く行うことを可能とする重要度決定プログラム、重要度決定装置及び重要度決定方法を提供する。【解決手段】複数のクラス図のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定し、特定した1以上のクラスに第1のクラスが含まれる第1のクラス図と、特定した1以上のクラスに第2のクラスが含まれる第2のクラス図とをそれぞれ特定し、特定した第1のクラス図に含まれる第1のクラス以外の第1の他クラスと、第2のクラス図に含まれる第2のクラス以外の第2の他クラスとをそれぞれ特定し、特定した第1の他クラスと第2の他クラスとに基づいて、第1のクラスと第2のクラスとの関係性の重要度を決定する。【選択図】図24

Description

本発明は、重要度決定プログラム、重要度決定装置及び重要度決定方法に関する。
例えば、業務システムの利用者(以下、単に利用者とも呼ぶ)から業務システムの開発者(以下、単に開発者とも呼ぶ)に対して新たな業務システムの構築依頼等が行われた場合、開発者は、利用者からの要望に基づいて新たな業務システムについての要求仕様を生成する。
具体的に、開発者は、この場合、例えば、クラス間の関係を示すクラス図や利用者からの要望の内容が記述された要求文等を要求仕様として生成する(例えば、特許文献1参照)。
特開2010−218386号公報
上記のような要求仕様の生成が行われる場合、要求仕様の記述を担当する開発者(以下、記述担当者)は、例えば、業務システムについての利用者からの要望に基づいて要求仕様の記述を行う。そして、要求仕様のチェックを担当する開発者(以下、チェック担当者とも呼ぶ)は、例えば、記述担当者が記述した要求仕様の内容についてのチェックを行い、そのチェックの内容に基づく指摘事項を記述担当者にフィードバックする。
ここで、新たな業務システムの開発規模等によっては、上記のような要求仕様のチェックに伴うチェック担当者の負担が膨大になる場合がある。また、例えば、要求仕様のチェックが複数のチェック担当者によって行われる場合、チェック担当者ごとに指摘事項の内容が異なる可能性があり、これに起因して記述担当者に対する指摘漏れ等が発生する可能性がある。
そこで、一つの側面では、本発明は、要求仕様のチェックを効率的かつ精度良く行うことを可能とする重要度決定プログラム、重要度決定装置及び重要度決定方法を提供することを目的とする。
実施の形態の一態様では、クラス間の関係を示す複数のクラス図を記憶した記憶部を参照し、前記複数のクラス図のそれぞれに含まれる1以上のクラスを特定し、前記複数のクラス図のうちのいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定し、前記複数のクラス図のうち、特定した前記1以上のクラスに前記第1のクラスが含まれる第1のクラス図と、特定した前記1以上のクラスに前記第2のクラスが含まれる第2のクラス図とをそれぞれ特定し、特定した前記第1のクラス図に含まれる前記第1のクラス以外の第1の他クラスと、前記第2のクラス図に含まれる前記第2のクラス以外の第2の他クラスとをそれぞれ特定し、特定した前記第1の他クラスのうち、前記第2の他クラスに含まれないクラスの数である第1のクラス数と、特定した前記第2の他クラスのうち、前記第1の他クラスに含まれないクラスの数である第2のクラス数と、特定した前記第1の他クラスと前記第2の他クラスとの両方に含まれるクラスの数である第3のクラス数とをそれぞれ特定し、特定した前記第1のクラス数と前記第2のクラス数と前記第3のクラス数とに基づいて、前記第1のクラスと前記第2のクラスとの関係性の重要度を決定する、処理をコンピュータに実行させる。
一つの側面によれば、要求仕様のチェックを効率的かつ精度良く行う。
図1は、情報処理システム10の構成について説明する図である。 図2は、クラス図131及び要求文132の具体例を説明する図である。 図3は、クラス図131及び要求文132の具体例を説明する図である。 図4は、情報処理装置1のハードウエア構成を説明する図である。 図5は、情報処理装置1の機能のブロック図である。 図6は、第1の実施の形態における重要度決定処理の概略を説明するフローチャート図である。 図7は、第1の実施の形態における重要度決定処理の概略を説明するフローチャート図である。 図8は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。 図9は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。 図10は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。 図11は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。 図12は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。 図13は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。 図14は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。 図15は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。 図16は、クラス図131の具体例を説明する図である。 図17は、クラステーブル133の具体例を説明する図である。 図18は、組合せテーブル134の具体例を説明する図である。 図19は、クラス図テーブル135の具体例を説明する図である。 図20は、他クラステーブル136の具体例を説明する図である。 図21は、述語テーブル140の具体例を説明する図である。 図22は、共通クラス図テーブル137の具体例を説明する図である。 図23は、共通他クラステーブル138の具体例を説明する図である。 図24は、重要度テーブル139の具体例を説明する図である。 図25は、チェック項目141の具体例を説明する図である。 図26は、チェック項目141の具体例を説明する図である。
[情報処理システムの構成]
初めに、情報処理システム10の構成について説明を行う。図1は、情報処理システム10の構成について説明する図である。
図1に示すように、情報処理システム10は、例えば、1台以上の物理マシンによって構成される情報処理装置1と、記述担当者やチェック担当者が必要な操作を行う操作端末2とを含む。操作端末2は、インターネット等のネットワークNWを介して情報処理装置1とアクセスが可能である。
図1に示す例において、情報処理装置1は、記述担当者によって記述されたクラス図131及び要求文132を記憶部130に記憶している。そして、チェック担当者は、例えば、操作端末2を介して情報処理装置1にアクセスを行うことにより、クラス図131及び要求文132の内容についてのチェックを行う。以下、クラス図131及び要求文132の具体例について説明を行う。
[クラス図及び要求文の具体例]
図2及び図3は、クラス図131及び要求文132の具体例を説明する図である。具体的に、図2(A)は、記述担当者が記述した要求仕様に含まれるクラス図131xの具体例を説明する図であり、図2(B)は、記述担当者が記述した要求仕様に含まれる要求文132xの具体例を説明する図である。
図2(A)に示すクラス図131xは、多重度が1対多の関係にあるクラス「出荷伝票」とクラス「出荷伝票明細」とを有する。すなわち、図2(A)に示すクラス図131xは、1件の出荷伝票に対応する出荷伝票明細が複数件存在していることを示している。また、図2(B)に示す要求文132xは、「出荷伝票が削除された際には、出荷伝票明細も削除する。」という文字列を含む。
そして、チェック担当者は、例えば、予め生成されたチェック項目に従って、図2で説明したクラス図131x及び要求文132xの内容についてのチェックを行い、そのチェックの内容に基づく指摘事項を記述担当者にフィードバックする。
具体的に、チェック担当者は、例えば、「出荷伝票は1個以上の出荷伝票明細と関連しています。削除する出荷伝票明細を特定する方法は記載されていますか?あるいは全ての出荷伝票明細を削除しますか?」というチェック項目(すなわち、クラス「出荷伝票」に対して操作が行われたことに応じてクラス「出荷伝票明細」に対して行われる操作の内容の確認を求める文章)を含む複数のチェック項目を用いることによって、クラス図131x及び要求文132xの内容についてのチェックを行う。
ここで、例えば、業務システムの開発規模等によっては、上記のような要求仕様のチェックに伴うチェック担当者の負担が膨大になる場合がある。そのため、チェック担当者は、チェックを行う必要がないと判断できるチェック項目によるチェックを可能な限り省略することが好ましい。
具体的に、例えば、図3に示すように、クラス「出荷伝票」とクラス「担当者マスタ」とを有するクラス図131yが要求仕様に含まれている場合であっても、出荷伝票に対する操作が行われたことに応じて担当者マスタに対する操作が行われることがないと判断できる場合、チェック担当者は、例えば、「出荷伝票は1個以上の担当者マスタと関連しています。削除する担当者マスタを特定する方法は記載されていますか?あるいは全ての担当者マスタを削除しますか?」というチェック項目によるチェックを行う必要がないと判断できる。
また、スキルが異なる複数のチェック担当者によって要求仕様のチェックが行われる場合、指摘事項の内容がチェック担当者ごとに異なる可能性があり、例えば、記述担当者に対する指摘漏れ等を引き起こす可能性がある。
そこで、本実施の形態における情報処理装置1は、複数のクラス図131を記憶した記憶部130を参照し、複数のクラス図131のそれぞれに含まれる1以上のクラスを特定する。そして、情報処理装置1は、複数のクラス図131のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定する。
続いて、情報処理装置1は、複数のクラス図131のうち、特定した1以上のクラスに第1のクラスが含まれるクラス図131(以下、第1のクラス図131とも呼ぶ)と、特定した1以上のクラスに第2のクラスが含まれるクラス図131(以下、第2のクラス図131とも呼ぶ)とをそれぞれ特定する。そして、情報処理装置1は、特定した第1のクラス図131に含まれる第1のクラス以外のクラス(以下、第1の他クラスとも呼ぶ)と、第2のクラス図131に含まれる第2のクラス以外のクラス(以下、第2の他クラスとも呼ぶ)とをそれぞれ特定する。
さらに、情報処理装置1は、特定した第1の他クラスのうち、第2の他クラスに含まれないクラスの数(以下、第1のクラス数とも呼ぶ)と、特定した第2の他クラスのうち、第1の他クラスに含まれないクラスの数(以下、第2のクラス数とも呼ぶ)と、特定した第1の他クラスと第2の他クラスとの両方に含まれるクラスの数(以下、第3のクラス数とも呼ぶ)とをそれぞれ特定する。そして、情報処理装置1は、特定した第1のクラス数と第2のクラス数と第3のクラス数とに基づいて、第1のクラスと第2のクラスとの関係性の重要度を決定する。
すなわち、情報処理装置1は、各クラスと同じクラス図131に含まれる他のクラスの数や種類に応じて、多重度が1対多の関係にある複数のクラス間における関連性の重要度を決定する。
これにより、情報処理装置1は、例えば、関連性の重要度が低いクラス間についてのチェック項目を、チェックを行う必要がないチェック項目として特定することが可能になる。また、情報処理装置1は、例えば、関連性の重要度が高いクラス間についてのチェック項目を、チェックを行う必要があるチェック項目として特定することが可能になる。
そのため、情報処理装置1は、チェックを行う必要がないと判定されたチェック項目によるチェックを省略することで、要求仕様のチェックに伴うチェック担当者の作業工数を抑制することが可能になる。また、情報処理装置1は、各チェック担当者が有するスキルに違いがある場合であっても、記述担当者に対する指摘漏れ等を防止することが可能になる。
[情報処理システムのハードウエア構成]
次に、情報処理システム10のハードウエア構成について説明する。図4は、情報処理装置1のハードウエア構成を説明する図である。
情報処理装置1は、図4に示すように、プロセッサであるCPU101と、メモリ102と、通信装置103と、記憶媒体104とを有する。各部は、バス105を介して互いに接続される。
記憶媒体104は、例えば、クラス間における関係性の重要度を決定する処理(以下、重要度決定処理とも呼ぶ)を行うためのプログラム110を記憶するプログラム格納領域(図示しない)を有する。また、記憶媒体104は、例えば、重要度決定処理を行う際に用いられる情報を記憶する記憶部130(以下、情報格納領域130とも呼ぶ)を有する。なお、記憶媒体104は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)であってよい。
CPU101は、記憶媒体104からメモリ102にロードされたプログラム110を実行して重要度決定処理を行う。
また、通信装置103は、例えば、ネットワークNWを介して操作端末2との有線通信を行う。
[情報処理システムの機能]
次に、情報処理システム10の機能について説明を行う。図5は、情報処理装置1の機能のブロック図である。
情報処理装置1は、図5に示すように、例えば、CPU101やメモリ102等のハードウエアとプログラム110とが有機的に協働することにより、情報管理部111と、クラス特定部112と、組合せ特定部113と、クラス図特定部114と、他クラス特定部115と、共通クラス図特定部116と、共通他クラス特定部117と、重要度特定部118と、述語抽出部119と、項目生成部120とを含む各種機能を実現する。
また、情報処理装置1は、例えば、図5に示すように、クラス図131と、要求文132と、クラステーブル133と、組合せテーブル134と、クラス図テーブル135と、他クラステーブル136と、共通クラス図テーブル137と、共通他クラステーブル138と、重要度テーブル139と、述語テーブル140と、チェック項目141とを情報格納領域130に記憶する。
情報管理部111は、例えば、記述担当者が操作端末2を介してクラス図131や要求文132(以下、これらを総称してクラス図131等とも呼ぶ)を入力した場合、入力されたクラス図131等を情報格納領域130に記憶する。
クラス特定部112は、情報格納領域130に記憶したクラス図131を参照し、クラス図131のそれぞれに含まれる1以上のクラスを示すクラステーブル133を生成して情報格納領域130に記憶する。
組合せ特定部113は、情報格納領域130に記憶したクラステーブル133を参照し、いずれかのクラス図131に含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを示す組合せテーブル134を生成して情報格納領域130に記憶する。
クラス図特定部114は、情報格納領域130に記憶したクラステーブル133を参照し、クラスごとに、各クラスを含む1以上のクラス図131を示すクラス図テーブル135を生成して情報格納領域130に記憶する。
他クラス特定部115は、情報格納領域130に記憶したクラステーブル133を参照し、クラス図131ごとであってクラスごとに、各クラス図131における各クラス以外の他のクラスを示す他クラステーブル136を生成して情報格納領域130に記憶する。
共通クラス図特定部116は、情報格納領域130に記憶した他クラステーブル136を参照し、第1のクラスと第2のクラスとの組合せごとに、各組合せの第1のクラスと第2のクラスとを含むクラス図131を示す共通クラス図テーブル137を生成して情報格納領域130に記憶する。
共通他クラス特定部117は、情報格納領域130に記憶した他クラステーブル136を参照し、第1のクラスと第2のクラスとの組合せごとに、各組合せに含まれる第1のクラスと同じクラス図131に含まれる他のクラスと、各組合せに含まれる第2のクラスと同じクラス図131に含まれる他のクラスとの積集合と和集合とを示す共通他クラステーブル138を生成して情報格納領域130に記憶する。
重要度特定部118は、情報格納領域130に記憶した共通他クラステーブル138を参照し、第1のクラスと第2のクラスとの組合せごとに、各組合せに対応する積集合に含まれるクラスの数を和集合に含まれるクラスの数で除算することによって算出した重要度を示す重要度テーブル139を生成して情報格納領域130に記憶する。
述語抽出部119は、情報格納領域130に記憶した組合せテーブル134を参照し、第1のクラスと第2のクラスとの組合せごとに、各組合せに含まれる第1のクラスと第2のクラスとが含まれる文章を情報格納領域130に記憶した要求文132から抽出する。そして、述語抽出部119は、抽出した文章を示す述語テーブル140を生成して情報格納領域130に記憶する。
項目生成部120は、情報格納領域130に記憶した述語テーブル140を参照し、第1のクラスと第2のクラスとの組合せごとに、各組合せに対応する述語を特定する。そして、項目生成部120は、特定した述語を用いたチェック項目141を生成して情報格納領域130に記憶する。
[第1の実施の形態の概略]
次に、第1の実施の形態の概略について説明する。図6及び図7は、第1の実施の形態における重要度決定処理の概略を説明するフローチャート図である。
情報処理装置1は、図6に示すように、重要度決定タイミングになるまで待機する(S1のNO)。重要度決定タイミングは、例えば、クラス間における関連性の重要度の決定を行う旨の情報がチェック担当者によって入力されたタイミングであってよい。
そして、重要度決定タイミングになった場合(S1のYES)、情報処理装置1は、クラス間の関係を示す複数のクラス図131を記憶した情報格納領域130を参照し、複数のクラス図131のそれぞれに含まれる1以上のクラスを特定する(S2)。
続いて、情報処理装置1は、複数のクラス図131のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定する(S3)。
そして、情報処理装置1は、S2の処理で特定した1以上のクラスに第1のクラスが含まれる第1のクラス図を特定する(S4)。また、情報処理装置1は、S2の処理で特定した1以上のクラスに第2のクラスが含まれる第2のクラス図を特定する(S5)。
さらに、情報処理装置1は、図7に示すように、S4の処理で特定した第1のクラス図に含まれる第1のクラス以外の第1の他クラスを特定する(S11)。また、情報処理装置1は、S5の処理で特定した第2のクラス図に含まれる第2のクラス以外の第2の他クラスを特定する(S12)。
そして、情報処理装置1は、S11の処理で特定した第1の他クラスのうち、S12の処理で特定した第2の他クラスに含まれないクラスの数である第1のクラス数を特定する(S13)。また、情報処理装置1は、S12の処理で特定した第2の他クラスのうち、S11で特定した第1の他クラスに含まれないクラスの数である第2のクラス数を特定する(S14)。さらに、情報処理装置1は、S11の処理で特定した第1の他クラスとS12の処理で第2の他クラスとの両方に含まれるクラスの数である第3のクラス数を特定する(S15)。
その後、情報処理装置1は、S13の処理で特定した第1のクラス数と、S14の処理で特定した第2のクラス数と、S15の処理で特定した第3のクラス数とに基づいて、第1のクラスと第2のクラスとの関係性の重要度を決定する(S16)。
これにより、情報処理装置1は、例えば、関連性の重要度が低いクラス間についてのチェック項目を、チェックを行う必要がないチェック項目として特定することが可能になる。また、情報処理装置1は、例えば、関連性の重要度が高いクラス間についてのチェック項目を、チェックを行う必要があるチェック項目として特定することが可能になる。さらに、情報処理装置1は、チェックを行う必要があるチェック項目の特定を行うことで、テンプレート等を用いることによるチェック項目の自動生成を行うことが可能になる。
そのため、情報処理装置1は、チェックを行う必要がないと判定されたチェック項目によるチェックを省略することが可能になり、要求仕様のチェックに伴うチェック担当者の作業工数を抑制することが可能になる。また、情報処理装置1は、各チェック担当者のスキルに違いがある場合や、チェック項目の特定方法が文書化されていない場合であっても、記述担当者に対して指摘する必要がある指摘事項を精度良く特定することが可能になる。したがって、情報処理装置1は、例えば、記述担当者に対する指摘漏れ等の発生を防止することが可能になる。
[第1の実施の形態の詳細]
次に、第1の実施の形態の詳細について説明する。図8から図15は、第1の実施の形態における重要度決定処理の詳細を説明するフローチャート図である。また、図16から図26は、第1の実施の形態における重要度決定処理の詳細を説明する図である。
[要求仕様記憶処理]
初めに、重要度決定処理のうち、クラス図131等の記憶を行う処理(以下、要求仕様記憶処理とも呼ぶ)について説明を行う。図8は、要求仕様記憶処理を説明するフローチャート図である。
情報処理装置1の情報管理部111は、図8に示すように、例えば、記述担当者が操作端末2を介して入力したクラス図131等を受け付けるまで待機する(S21のNO)。
そして、クラス図131等を受け付けた場合(S21のYES)、情報管理部111は、S21の処理で受け付けたクラス図131等を情報格納領域130に記憶する。具体的に、情報管理部111は、クラス図131の入力を受け付けた場合、受け付けたクラス図131を記憶する。また、情報管理部111は、要求文132の入力を受け付けた場合、受け付けた要求文132を記憶する。以下、クラス図131の具体例について説明を行う。
[クラス図の具体例]
図16は、クラス図131の具体例を説明する図である。具体的に、図16は、クラス図131a、クラス図131b、クラス図131c及びクラス図131dの具体例を説明する図である。なお、クラス図131a、クラス図131b、クラス図131c及びクラス図131dのそれぞれは、1つのデータモデルから分割されたクラス図であり、例えば、各機能の実現に必要なクラスが同一のクラス図に含まれるように分割されたクラス図である。
具体的に、クラス図131aは、クラス「ピッキングリスト」とクラス「出荷伝票」とクラス「受注伝票」とを有する。そして、クラス図131aにおいて、クラス「ピッキングリスト」とクラス「出荷伝票」とは、多重度が1対1の関係にあり、クラス「出荷伝票」とクラス「受注伝票」とは、多重度が1対多の関係にある。
また、クラス図131bは、クラス「出荷伝票」とクラス「出荷伝票明細」とクラス「商品マスタ」とクラス「取引先マスタ」とを有する。そして、クラス図131bにおいて、クラス「出荷伝票」とクラス「出荷伝票明細」とは、多重度が1対多の関係にあり、クラス「出荷伝票明細」とクラス「商品マスタ」とは、多重度が1対1の関係にあり、クラス「出荷伝票明細」とクラス「取引先マスタ」とは、多重度が1対1の関係にある。
また、クラス図131cは、クラス「受注伝票」とクラス「受注伝票明細」とクラス「商品マスタ」とクラス「取引先マスタ」とを有する。そして、クラス図131cにおいて、クラス「受注伝票」とクラス「受注伝票明細」とは、多重度が1対多の関係にあり、クラス「受注伝票明細」とクラス「商品マスタ」とは、多重度が1対1の関係にあり、クラス「受注伝票明細」とクラス「取引先マスタ」とは、多重度が1対1の関係にある。
さらに、クラス図131dは、クラス「取引先マスタ」とクラス「担当者マスタ」とを有する。そして、クラス図131dにおいて、クラス「取引先マスタ」とクラス「担当者マスタ」とは、多重度が1対1の関係にある。
[テーブル生成処理]
次に、重要度決定処理のうち、クラステーブル133等の生成を行う処理(以下、テーブル生成処理とも呼ぶ)について説明を行う。図9は、テーブル生成処理を説明するフローチャート図である。
情報処理装置1のクラス特定部112は、図9に示すように、テーブル生成タイミングになるまで待機する(S31のNO)。テーブル生成タイミングは、例えば、クラステーブル133等の生成を行う旨の情報がチェック担当者によって入力されたタイミングであってよい。
そして、テーブル生成タイミングになった場合(S31のYES)、情報処理装置1のクラス特定部112は、情報格納領域130に記憶したクラス図131を参照し、各クラス図に含まれる1以上のクラスを示すクラステーブル133を生成して記憶する(S32)。以下、クラステーブル133の具体例について説明を行う。
[クラステーブルの具体例]
図17は、クラステーブル133の具体例を説明する図である。
図17に示すクラステーブル133は、クラステーブル133に含まれる各情報を識別する「項番」と、クラス図131の名称が設定される「クラス図」と、クラスの名称の集合が設定される「クラス名集合」とを有する。
具体的に、図16で説明したクラス図131aには、クラス「ピッキングリスト」とクラス「出荷伝票」とクラス「受注伝票」とが含まれている。そのため、クラス特定部112は、図17の1行目に示すように、「項番」が「1」である情報の「クラス図」に「クラス図131a」を設定し、「クラス名集合」に「{ピッキングリスト,出荷伝票,受注伝票}」を設定する。
また、図16で説明したクラス図131bには、クラス「出荷伝票」とクラス「出荷伝票明細」とクラス「商品マスタ」とクラス「取引先マスタ」とが含まれている。そのため、クラス特定部112は、図17の2行目に示すように、「項番」が「2」である情報の「クラス図」に「クラス図131b」を設定し、「クラス名集合」に「{出荷伝票,出荷伝票明細,商品マスタ,取引先マスタ}」を設定する。図17に含まれる他の情報についての説明は省略する。
図9に戻り、情報処理装置1の組合せ特定部113は、情報格納領域130に記憶したクラス図131を参照し、いずれかのクラス図131に含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを示す組合せテーブル134を生成して情報格納領域130に記憶する(S33)。以下、組合せテーブル134の具体例について説明を行う。
[組合せテーブルの具体例]
図18は、組合せテーブル134の具体例を説明する図である。
図18に示す組合せテーブル134は、組合せテーブル134に含まれる各情報を識別する「項番」と、1対多の関係における1の多重度に対応するクラスの名称が設定される「1側クラス名」と、1対多の関係における多の多重度に対応するクラスの名称が設定される「多側クラス名」と、クラス間の関係を示す区分が設定される「区分」とを項目として有する。「区分」には、「1側クラス名」に設定されたクラスと「多側クラス名」に設定されたクラスとが直接的に対応付けられていることを示す「直接」、または、「1側クラス名」に設定されたクラスと「多側クラス名」に設定されたクラスとが直接的に対応付けられていないこと(他のクラスを介して間接的に対応付けられていること)を示す「間接」が設定される。
具体的に、図16で説明したクラス図131aからクラス図131dは、クラス「出荷伝票」と1対多の関係にあるクラスとして、クラス「出荷伝票明細」、クラス「受注伝票」、クラス「受注伝票明細」、クラス「商品マスタ」、クラス「取引先マスタ」及びクラス「担当者クラス」が存在していることを示している。また、図16で説明したクラス図131a及びクラス図131bは、クラス「出荷伝票」と1対多の関係にあり、かつ、直接的に関係している他のクラスとして、クラス「受注伝票」及びクラス「出荷伝票明細」が存在していることを示している。一方、図16で説明したクラス図131bからクラス図131dは、クラス「出荷伝票」と1対多の関係にあり、かつ、間接的に関係している他のクラスとして、クラス「受注伝票明細」、クラス「商品マスタ」、クラス「取引先マスタ」及びクラス「担当者マスタ」が存在していることを示している。
そのため、組合せ特定部113は、例えば、図18の1行目に示すように、「項番」が「1」である情報の「1側クラス名」に「出荷伝票」を設定し、「多側クラス名」に「出荷伝票明細」を設定し、「区分」に「直接」を設定する。
また、組合せ特定部113は、例えば、図18の3行目に示すように、「項番」が「3」である情報の「1側クラス名」に「出荷伝票」を設定し、「多側クラス名」に「受注伝票明細」を設定し、「区分」に「間接」を設定する。図18に含まれる他の情報についての説明は省略する。
図9に戻り、情報処理装置1のクラス図特定部114は、S32の処理で生成したクラステーブル133を参照し、クラスごとに、各クラスを含む1以上のクラス図を示すクラス図テーブル135を生成して情報格納領域130に記憶する(S34)。以下、クラス図テーブル135の具体例について説明を行う。
[クラス図テーブルの具体例]
図19は、クラス図テーブル135の具体例を説明する図である。
図19に示すクラス図テーブル135は、クラス図テーブル135に含まれる各情報を識別する「項番」と、クラスの名称が設定される「クラス名」と、クラス図131の名称の集合が設定される「クラス図集合」とを有する。
具体的に、図17で説明したクラステーブル133において、「クラス名集合」に「ピッキングリスト」が設定されている情報は、1行目の情報(「クラス図」が「クラス図131a」である情報)のみである。そのため、クラス図特定部114は、例えば、図19の1行目に示すように、「クラス名」が「ピッキングリスト」である情報(「項番」が「1」である情報)の「クラス図集合」に「{クラス図131a}」を設定する。
また、図17で説明したクラステーブル133において、「クラス名集合」に「出荷伝票」が設定されている情報は、1行目の情報(「クラス図」が「クラス図131a」である情報)及び2行目の情報(「クラス図」が「クラス図131b」である情報)である。そのため、クラス図特定部114は、例えば、図19の2行目に示すように、「クラス名」が「出荷伝票」である情報(「項番」が「2」である情報)の「クラス図集合」に「{クラス図131a,クラス図131b}」を設定する。図19に含まれる他の情報についての説明は省略する。
図9に戻り、情報処理装置1の他クラス特定部115は、S32の処理で生成したクラステーブル133を参照し、クラス図131ごとであってクラスごとに、各クラス図131における各クラス以外の他のクラスを示す他クラステーブル136を生成して記憶する(S35)。以下、他クラステーブル136の具体例について説明を行う。
[他クラステーブルの具体例]
図20は、他クラステーブル136の具体例を説明する図である。
図20に示す他クラステーブル136は、他クラステーブル136に含まれる各情報を識別する「項番」と、クラス図131の名称が設定される「クラス図」と、クラスの名称が設定される「クラス名」と、「クラス図」に名称が設定されたクラス図131に含まれるクラスのうち、「クラス名」に名称が設定されたクラス以外の他のクラスの名称の集合が設定される「他クラス名集合」とを有する。
具体的に、図17で説明したクラステーブル133において、「クラス図」に「クラス図131a」が設定された情報(「項番」が「1」である情報)の「クラス名集合」には、「ピッキングリスト」と「出荷伝票」と「受注伝票」とが設定されている。
そのため、他クラス特定部115は、例えば、図20の1行目に示すように、「クラス図」が「クラス図131a」であって「クラス名」が「ピッキングリスト」である情報(「項番」が「1」である情報)の「他クラス名集合」に「{出荷伝票,受注伝票}」を設定する。また、他クラス特定部115は、例えば、図20の2行目に示すように、「クラス図」が「クラス図131a」であって「クラス名」が「出荷伝票」である情報(「項番」が「2」である情報)の「他クラス名集合」に「{ピッキングリスト,受注伝票}」を設定する。さらに、他クラス特定部115は、例えば、図20の3行目に示すように、「クラス図」が「クラス図131a」であって「クラス名」が「受注伝票」である情報(「項番」が「3」である情報)の「他クラス名集合」に「{ピッキングリスト,出荷伝票}」を設定する。
また、図17で説明したクラステーブル133において、「クラス図」に「クラス図131b」が設定された情報(「項番」が「2」である情報)の「クラス名集合」には、「出荷伝票」と「出荷伝票明細」と「商品マスタ」と「取引先マスタ」とが設定されている。
そのため、他クラス特定部115は、例えば、図20の4行目に示すように、「クラス図」が「クラス図131b」であって「クラス名」が「出荷伝票」である情報(「項番」が「4」である情報)の「他クラス名集合」に「{出荷伝票明細,商品マスタ,取引先マスタ}」を設定する。また、他クラス特定部115は、例えば、図20の5行目に示すように、「クラス図」が「クラス図131b」であって「クラス名」が「出荷伝票明細」である情報(「項番」が「5」である情報)の「他クラス名集合」に「{出荷伝票,商品マスタ,取引先マスタ}」を設定する。また、他クラス特定部115は、例えば、図20の6行目に示すように、「クラス図」が「クラス図131b」であって「クラス名」が「商品マスタ」である情報(「項番」が「6」である情報)の「他クラス名集合」に「{出荷伝票,出荷伝票明細,取引先マスタ}」を設定する。さらに、他クラス特定部115は、例えば、図20の7行目に示すように、「クラス図」が「クラス図131b」であって「クラス名」が「取引先マスタ」である情報(「項番」が「7」である情報)の「他クラス名集合」に「{出荷伝票,出荷伝票明細,商品マスタ}」を設定する。図20に含まれる他の情報についての説明は省略する。
[述語抽出処理]
次に、重要度決定処理のうち、要求文132から述語を抽出する処理(以下、述語抽出処理とも呼ぶ)について説明を行う。図10は、述語抽出処理を説明するフローチャート図である。
情報処理装置1の述語抽出部119は、図10に示すように、述語抽出タイミングになるまで待機する(S41のNO)。述語抽出タイミングは、例えば、テーブル生成タイミングと同じタイミングであってよい。また、述語抽出タイミングは、例えば、テーブル生成処理が終了したタイミングであってよい。
そして、述語抽出タイミングになった場合(S41のYES)、述語抽出部119は、S33で生成した組合せテーブル134を参照し、クラスの組合せごとに、各組合せに含まれる第1のクラスと第2のクラスとが含まれる文章を、情報格納領域130に記憶された要求文132から抽出する(S42)。
その後、述語抽出部119は、S42の処理で抽出した文章に含まれる述語を示す述語テーブル140を生成して情報格納領域130に記憶する(S43)。
具体的に、述語抽出部119は、S42の処理で抽出した文章についての形態素解析を行うことによって述語を特定する。そして、述語抽出部119は、特定した述語を示す述語テーブル140の生成を行う。以下、述語テーブル140の具体例について説明を行う。
[述語テーブルの具体例]
図21は、述語テーブル140の具体例を説明する図である。
図21に示す述語テーブル140は、1対多の関係における1の多重度に対応するクラスの名称が設定される「1側クラス名」と、1対多の関係における多の多重度に対応するクラスの名称が設定される「多側クラス名」とを有する。また、図21に示す述語テーブル140は、情報格納領域130に記憶された要求文132のうち、「1側クラス名」及び「多側クラス名」のそれぞれに設定されたクラス名を含む文章に含まれる述語が設定される「述語」を有する。
具体的に、例えば、情報格納領域130に記憶された要求文132に、「出荷伝票が変更された際には、出荷伝票明細も変更する。」という文章が含まれている場合、述語テーブル140は、図21の1行目に示すように、「1側クラス名」に「出荷伝票」を設定し、「多側クラス名」に「出荷伝票明細」を設定し、「述語」に「変更」を設定する。図21に含まれる他の情報についての説明は省略する。
[重要度決定処理のメイン処理]
次に、重要度決定処理のメイン処理について説明を行う。図11から図15は、重要度決定処理のメイン処理を説明するフローチャート図である。
情報管理部111は、図11に示すように、重要度決定タイミングになるまで待機する(S51のNO)。重要度決定タイミングは、例えば、クラス間における関連性の重要度の決定を行う旨の情報がチェック担当者によって入力されたタイミングであってよい。
そして、重要度決定タイミングになった場合(S51のYES)、情報管理部111は、S33の処理で生成した組合せテーブル134を参照し、クラスの組合せの1つを特定する(S52)。
その後、情報処理装置1の共通クラス図特定部116は、S35の処理で生成した他クラステーブル136を参照し、S51の処理で特定した組合せの第1のクラスと第2のクラスとを含むクラス図131を示す共通クラス図テーブル137を生成して情報格納領域130に記憶する(S53)。
そして、S52の処理において全ての組合せが特定済でない場合(S54のNO)、情報処理装置1は、S52以降の処理を再度行う。
一方、S52の処理において全ての組合せが特定済である場合(S54のYES)、情報処理装置1は、S61以降の処理を行う。以下、共通クラス図テーブル137の具体例について説明を行う。
[共通クラス図テーブルの具体例]
図22は、共通クラス図テーブル137の具体例を説明する図である。
図22に示す共通クラス図テーブル137は、1対多の関係における1の多重度に対応するクラスの名称が設定される「1側クラス名」と、1対多の関係における多の多重度に対応するクラスの名称が設定される「多側クラス名」とを有する。また、図22に示す共通クラス図テーブル137は、「1側クラス名」及び「多側クラス名」のそれぞれに名称が設定されたクラス名を含むクラス図131の名称が設定される「クラス図集合」を有する。
具体的に、図20で説明したクラステーブル133において、「クラス図」が「クラス図131a」であって「クラス名」が「出荷伝票」である情報(「項番」が「2」である情報)の「他クラス名集合」には、「ピッキングリスト」及び「受注伝票」のみが設定されており、「受注伝票明細」や「担当者マスタ」が設定されていない。また、図20で説明したクラステーブル133において、「クラス図」が「クラス図131b」であって「クラス名」が「出荷伝票」である情報(「項番」が「4」である情報)の「他クラス名集合」には、「出荷伝票明細」、「商品マスタ」及び「取引先マスタ」のみが設定されており、「受注伝票明細」や「担当者マスタ」が設定されていない。
そのため、共通クラス図特定部116は、例えば、図22の1行目に示すように、「1側クラス名」が「出荷伝票」であって「多側クラス名」が「受注伝票明細」である情報(「項番」が「1」である情報)の「クラス図集合」に、クラス「出荷伝票」とクラス「受注伝票明細」との両方を含むクラス図131が存在していないことを示す「{}」を設定する。
また、共通クラス図特定部116は、例えば、図22の2行目に示すように、「1側クラス名」が「出荷伝票」であって「多側クラス名」が「担当者マスタ」である情報(「項番」が「2」である情報)の「クラス図集合」に、クラス「出荷伝票」とクラス「担当者マスタ」との両方を含むクラス図131が存在していないことを示す「{}」を設定する。図22に含まれる他の情報についての説明は省略する。
図11に戻り、S52の処理において全ての組合せが特定済である場合(S54のYES)、情報管理部111は、図12に示すように、S33の処理で生成した組合せテーブル134を参照し、クラスの組合せの1つを特定する(S61)。
そして、情報処理装置1の共通他クラス特定部117は、S35の処理で特定した他クラステーブル136を参照し、S61の処理で特定した組合せに含まれる第1のクラスと同じクラス図131に含まれる他のクラスと、S61の処理で特定した組合せに含まれる第2のクラスと同じクラス図131に含まれる他のクラスとの積集合と和集合とを示す共通他クラステーブル138を生成して情報格納領域130に記憶する(S62)。
そして、S61の処理において全ての組合せが特定済でない場合(S63のNO)、情報処理装置1は、S61以降の処理を再度行う。
一方、S61の処理において全ての組合せが特定済である場合(S63のYES)、情報処理装置1は、S71以降の処理を行う。以下、共通他クラステーブル138の具体例について説明を行う。
[共通他クラステーブルの具体例]
図23は、共通他クラステーブル138の具体例を説明する図である。
図23に示す共通他クラステーブル138は、1対多の関係における1の多重度に対応するクラスの名称が設定される「1側クラス名」と、1対多の関係における多の多重度に対応するクラスの名称が設定される「多側クラス名」とを有する。また、図23に示す共通他クラステーブル138は、「1側クラス名」に名称が設定されたクラスと同じクラス図131に含まれる他のクラスと、「多側クラス名」に名称が設定されたクラスと同じクラス図131に含まれる他のクラスとの積集合が設定される「共通クラス名集合」を有する。さらに、図23に示す共通他クラステーブル138は、「1側クラス名」に名称が設定されたクラスと同じクラス図131に含まれる他のクラスと、「多側クラス名」に名称が設定されたクラスと同じクラス図131に含まれる他のクラスとの和集合が設定される「全クラス名集合」を有する。
具体的に、図20で説明したクラステーブル133において、「クラス名」に「出荷伝票」が設定された情報(「項番」が「2」である情報及び「項番」が「4」である情報)の「他クラス名集合」には、「ピッキングリスト」、「受注伝票」、「受注伝票明細」、「商品マスタ」及び「取引先マスタ」が設定されている。また、図20で説明したクラステーブル133において、「クラス名」に「受注伝票明細」が設定された情報(「項番」が「9」である情報)の「他クラス名集合」には、「受注伝票」、「商品マスタ」及び「取引先マスタ」が設定されている。
そのため、共通他クラス特定部117は、例えば、図23の1行目に示すように、「1側クラス名」が「出荷伝票」であって「多側クラス名」が「受注伝票明細」である情報(「項番」が「1」である情報)の「共通クラス名集合」に「{受注伝票,商品マスタ,取引先マスタ}」を設定し、「全クラス名集合」に「{ピッキングリスト,受注伝票,受注伝票明細,商品マスタ,取引先マスタ}」を設定する。図23に含まれる他の情報についての説明は省略する。
図12に戻り、S61の処理において全ての組合せが特定済である場合(S63のYES)、情報管理部111は、図13に示すように、S33の処理で生成した組合せテーブル134を参照し、クラスの組合せの1つを特定する(S71)。
そして、情報管理部111は、S71の処理で特定した組合せに対応する区分が「直接」であるか否かについて判定を行う(S72)。
具体的に、図18で説明した組合せテーブル134における「項番」が「3」である情報(「1側クラス名」が「出荷伝票」であって「多側クラス名」が「受注伝票明細」である情報)の「区分」には、「間接」が設定されている。そのため、例えば、S71の処理で特定した組合せが、図18で説明した組合せテーブル134における「項番」が「3」である情報に対応する組合せである場合、情報管理部111は、S71の処理で特定した組合せに対応する区分が「直接」でないと判定する。
その結果、S71の処理で特定した組合せに対応する区分が「直接」であると判定した場合(S72のYES)、情報管理部111は、S71の処理で特定した組合せに対応する重要度として「1」を算出する(S73)。
一方、S71の処理で特定した組合せに対応する区分が「直接」でないと判定した場合、すなわち、S71の処理で特定した組合せに対応する区分が「間接」であると判定した場合(S72のNO)、情報処理装置1の重要度特定部118は、S53の処理で生成した共通クラス図テーブル137を参照し、S71の処理で特定した組合せに含まれる第1のクラスと第2のクラスとを含むクラス図131が存在するか否かを判定する(S74)。
具体的に、図22で説明した共通クラス図テーブル137において、「1側クラス名」が「出荷伝票」であって「多側クラス名」が「受注伝票明細」である情報(「項番」が「1」である情報)の「クラス図集合」には、「{}」が設定されている。そのため、例えば、S71の処理で特定した組合せが、図18で説明した組合せテーブル134における「項番」が「3」である情報に対応する組合せである場合、重要度特定部118は、S71の処理で特定した組合せに含まれる第1のクラスと第2のクラスとを含むクラス図131が存在しないと判定する。
その結果、S71の処理で特定した組合せに含まれる第1のクラスと第2のクラスとを含むクラス図131が存在すると判定した場合(S75のYES)、情報処理装置1は、S73以降の処理を行う。
一方、S71の処理で特定した組合せに含まれる第1のクラスと第2のクラスとを含むクラス図131が存在しないと判定した場合(S75のNO)、情報管理部111は、図14に示すように、S62の処理で生成した共通他クラステーブル138を参照し、S71の処理で特定した組合せに対応する積集合に含まれるクラスの数を和集合に含まれるクラスの数で除算することにより、S71の処理で特定した組合せに対応する重要度を算出する(S81)。
具体的に、図23で説明した共通他クラステーブル138において、「1側クラス名」が「出荷伝票」であって「多側クラス名」が「受注伝票明細」である情報(「項番」が「1」である情報)の「共通クラス名集合」には、「{受注伝票,商品マスタ,取引先マスタ}」が設定されており、「全クラス名集合」には、「{ピッキングリスト,受注伝票,受注伝票明細,商品マスタ,取引先マスタ}」が設定されている。そのため、例えば、S71の処理で特定した組合せが、図18で説明した組合せテーブル134における「項番」が「3」である情報に対応する組合せである場合、重要度特定部118は、S71の処理で特定した組合せに対応する積集合に含まれるクラスの数である「3」を和集合に含まれるクラスの数である「5」で除算することにより、S71の処理で特定した組合せに対応する重要度(Jaccard係数)として「3/5」を算出する。
そして、情報管理部111は、S71の処理において全ての組合せが特定済であるか否かを判定する(S82)。
その結果、S71の処理において全ての組合せが特定済でないと判定した場合(S82のNO)、情報処理装置1は、S71以降の処理を再度行う。
一方、S71の処理において全ての組合せが特定済であると判定した場合(S82のYES)、重要度特定部118は、S73の処理またはS81の処理で算出した重要度を示す重要度テーブル139を生成して情報格納領域130に記憶する(S83)。
なお、情報管理部111は、S73の処理が行われた場合についても同様に、S82以降の処理を行う。以下、重要度テーブル139の具体例について説明を行う。
[重要度テーブルの具体例]
図24は、重要度テーブル139の具体例を説明する図である。
図24に示す重要度テーブル139は、1対多の関係における1の多重度に対応するクラスの名称が設定される「1側クラス名」と、1対多の関係における多の多重度に対応するクラスの名称が設定される「多側クラス名」とを有する。また、図24に示す重要度テーブル139は、S73の処理またはS81の処理で算出した重要度(Jaccard係数)が設定される「Jaccard係数」と、「1側クラス名」に名称が設定されたクラスと「多側クラス名」に名称が設定されたクラスとの関係におけるチェック項目の有用度が設定される「有用度」とを項目として有する。なお、重要度特定部118は、例えば、「Jaccard係数」に設定された値が「1」である場合、「有用度」に「高」を設定し、「Jaccard係数」に設定された値が「1/2」以上であって「1」未満である場合、「有用度」に「中」を設定し、「Jaccard係数」に設定された値が「1/2」未満である場合、「有用度」に「低」を設定する。
具体的に、図24に示す重要度テーブル139において、例えば、「項番」が「1」である情報には、「1側クラス名」として「出荷伝票」が設定され、「多側クラス名」として「出荷伝票明細」が設定され、「Jaccard係数」として「1」が設定され、「有用度」として「高」が設定されている。
また、図24に示す重要度テーブル139において、例えば、「項番」が「3」である情報には、「1側クラス名」として「出荷伝票」が設定され、「多側クラス名」として「受注伝票明細」が設定され、「Jaccard係数」として「3/5」が設定され、「有用度」として「中」が設定されている。図24に含まれる他の情報についての説明は省略する。
図15に戻り、情報管理部111は、S83の処理で生成した重要度テーブル139を参照し、クラスの組合せの1つを特定する(S91)。
そして、情報管理部111は、S91の処理で特定した組合せに対応する重要度が所定条件を満たすか否かを判定する(S92)。具体的に、情報管理部111は、例えば、S83の処理で生成した重要度テーブル139において、S91の処理で特定した組合せに対する「有用度」が「高」または「中」であるか否かについて判定を行う。
すなわち、情報処理装置1は、各クラスと同じクラス図131に含まれる他クラスの数や種類に応じて、多重度が1対多の関係にある複数のクラス間における関連性の重要度(有用度)を決定する。
これにより、情報処理装置1は、例えば、関連性の重要度が低いクラス間についてのチェック項目(例えば、「有用度」が「低」であるチェック項目)を、チェックを行う必要がないチェック項目として特定することが可能になり、また、関連性の重要度が高いクラス間についてのチェック項目(例えば、「有用度」が「高」または「中」)を、チェックを行う必要があるチェック項目として特定することが可能になる。
そのため、情報処理装置1は、チェックを行う必要がないと判定されたチェック項目によるチェックを省略することで、要求仕様のチェックに伴うチェック担当者の作業工数を抑制することが可能になる。また、情報処理装置1は、各チェック担当者のスキルに違いがある場合であっても、記述担当者に対する指摘漏れ等を防止することが可能になる。
そして、S91の処理で特定した組合せに対応する重要度が所定条件を満たさないと判定した場合(S92のNO)、情報管理部111は、S91の処理において全ての組合せが特定済であるか否かを判定する(S93)。
その結果、S91の処理において全ての組合せが特定済でないと判定した場合(S93のNO)、情報処理装置1は、S91以降の処理を再度行う。
一方、S91の処理において全ての組合せが特定済であると判定した場合(S93のYES)、情報処理装置1は、重要度決定処理のメイン処理を終了する。
また、S92の処理において、S91の処理で特定した組合せに対応する重要度が所定条件を満たすと判定した場合(S92のYES)、情報処理装置1の項目生成部120は、S43の処理で生成した述語テーブル140を参照し、S91の処理で特定した組合せに対応する述語を特定する(S94)。
具体的に、図21で説明した述語テーブル140において、「項番」が「1」である情報(「1側クラス名」が「出荷伝票」であって「多側クラス名」が「出荷伝票明細」である情報)の「述語」には、「変更」が設定されている。そのため、例えば、S91の処理で特定した組合せが、図24で説明した重要度テーブル139における「項番」が「1」である情報に対応する組合せである場合、重要度特定部118は、S91の処理で特定した組合せに対応する述語として「変更」を抽出する。
その後、項目生成部120は、S94の処理で特定した述語を用いたチェック項目141を生成して情報格納領域130に記憶する(S95)。そして、情報処理装置1は、S93以降の処理を行う。以下、チェック項目141の具体例について説明を行う。
[チェック項目の具体例]
図25及び図26は、チェック項目141の具体例を説明する図である。図25は、チェック項目141の生成に用いられるテンプレートの具体例であり、図26は、図25に示すテンプレートを用いることによって生成されたチェック項目141の具体例である。
具体的に、図25に示すテンプレートには、「<1側クラス名>は1個以上の<多側クラス名>と関連しています。<述語>する<多側クラス名>を特定する方法は記載されていますか?あるいは全ての<多側クラス名>を<述語>しますか?」という文字列が記載されている。
そのため、項目生成部120は、例えば、図21で説明した述語テーブル140における「1側クラス名」、「多側クラス名」及び「述語」に設定された「出荷伝票」、「出荷伝票明細」及び「変更」のそれぞれを、図24に示すテンプレートにおける「<1側クラス名>」、「<多側クラス名>」及び「<述語>」に設定することにより、図26に示すように、「出荷伝票は1個以上の出荷伝票明細と関連しています。変更する出荷伝票明細を特定する方法は記載されていますか?あるいは全ての出荷伝票明細を変更しますか?」という文字列からなるチェック項目141を生成する。
このように、本実施の形態における情報処理装置1は、複数のクラス図131を記憶した記憶部130を参照し、複数のクラス図131のそれぞれに含まれる1以上のクラスを特定する。そして、情報処理装置1は、複数のクラス図131のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定する。
続いて、情報処理装置1は、複数のクラス図131のうち、特定した1以上のクラスに第1のクラスが含まれる第1のクラス図131と、特定した1以上のクラスに第2のクラスが含まれる第2のクラス図131とをそれぞれ特定する。そして、情報処理装置1は、特定した第1のクラス図131に含まれる第1のクラス以外のクラスである第1の他クラスとも呼ぶ)と、第2のクラス図131に含まれる第2のクラス以外のクラスである第2の他クラスとをそれぞれ特定する。
さらに、情報処理装置1は、特定した第1の他クラスのうち、第2の他クラスに含まれないクラスの数である第1のクラス数と、特定した第2の他クラスのうち、第1の他クラスに含まれないクラスの数である第2のクラス数と、特定した第1の他クラスと第2の他クラスとの両方に含まれるクラスの数である第3のクラス数とをそれぞれ特定する。そして、情報処理装置1は、特定した第1のクラス数と第2のクラス数と第3のクラス数とに基づいて、第1のクラスと第2のクラスとの関係性の重要度を決定する。
これにより、情報処理装置1は、例えば、関連性の重要度が低いクラス間についてのチェック項目を、チェックを行う必要がないチェック項目として特定することが可能になる。また、情報処理装置1は、例えば、関連性の重要度が高いクラス間についてのチェック項目を、チェックを行う必要があるチェック項目として特定することが可能になる。さらに、情報処理装置1は、チェックを行う必要があるチェック項目の特定を行うことで、テンプレート等を用いることによるチェック項目の自動生成を行うことが可能になる。
そのため、情報処理装置1は、チェックを行う必要がないと判定されたチェック項目によるチェックを省略することが可能になり、要求仕様のチェックに伴うチェック担当者の作業工数を抑制することが可能になる。また、情報処理装置1は、各チェック担当者のスキルに違いがある場合や、チェック項目の特定方法が文書化されていない場合であっても、記述担当者に対して指摘する必要がある指摘事項を精度良く特定することが可能になる。したがって、情報処理装置1は、例えば、記述担当者に対する指摘漏れ等の発生を防止することが可能になる。
以上の実施の形態をまとめると、以下の付記のとおりである。
(付記1)
クラス間の関係を示す複数のクラス図を記憶した記憶部を参照し、前記複数のクラス図のそれぞれに含まれる1以上のクラスを特定し、
前記複数のクラス図のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定し、
前記複数のクラス図のうち、特定した前記1以上のクラスに前記第1のクラスが含まれる第1のクラス図と、特定した前記1以上のクラスに前記第2のクラスが含まれる第2のクラス図とをそれぞれ特定し、
特定した前記第1のクラス図に含まれる前記第1のクラス以外の第1の他クラスと、前記第2のクラス図に含まれる前記第2のクラス以外の第2の他クラスとをそれぞれ特定し、
特定した前記第1の他クラスのうち、前記第2の他クラスに含まれないクラスの数である第1のクラス数と、特定した前記第2の他クラスのうち、前記第1の他クラスに含まれないクラスの数である第2のクラス数と、特定した前記第1の他クラスと前記第2の他クラスとの両方に含まれるクラスの数である第3のクラス数とをそれぞれ特定し、
特定した前記第1のクラス数と前記第2のクラス数と前記第3のクラス数とに基づいて、前記第1のクラスと前記第2のクラスとの関係性の重要度を決定する、
処理をコンピュータに実行させることを特徴とする重要度決定プログラム。
(付記2)
付記1において、さらに、
決定した前記重要度が所定以上である場合、前記第1のクラスに対して操作が行われたことに応じて前記第2のクラスに対して行われる操作の内容の確認を求める特定の文章を生成する、
処理をコンピュータに実行させることを特徴とする重要度決定プログラム。
(付記3)
付記2において、さらに、
前記複数のクラス図に含まれる各クラスに対する操作の内容を示す複数の文章を記憶した記憶部を参照し、前記第1のクラスと前記第2のクラスとを含む文章を特定し、
特定した前記文章から述語に対応する文字列を抽出する、
処理をコンピュータに実行させ、
前記生成する処理では、抽出した前記文字列を用いることによって前記特定の文章の生成を行う、
ことを特徴とする重要度決定プログラム。
(付記4)
付記1において、
前記組合せを特定する処理において前記組合せが複数特定された場合、前記第1及び第2のクラス図を特定する処理と、前記第1及び第2の他クラスを特定する処理と、前記第1、第2及び第3のクラス数を特定する処理と、前記重要度を決定する処理とを、前記組合せごとに行う、
ことを特徴とする重要度決定プログラム。
(付記5)
付記4において、
前記組合せを特定する処理では、多重度が1対多の関係にあり、かつ、同一のクラス図に含まれない前記第1のクラスと前記第2のクラスとの組合せを特定する、
ことを特徴とする重要度決定プログラム。
(付記6)
付記5において、
前記決定する処理では、
前記第3のクラス数を前記第1のクラス数と前記第2のクラス数と前記第3のクラス数との和で除算することによって、前記重要度を算出する、
ことを特徴とする重要度決定プログラム。
(付記7)
クラス間の関係を示す複数のクラス図を記憶した記憶部を参照し、前記複数のクラス図のそれぞれに含まれる1以上のクラスを特定するクラス特定部と、
前記複数のクラス図のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定する組合せ特定部と、
前記複数のクラス図のうち、特定した前記1以上のクラスに前記第1のクラスが含まれる第1のクラス図と、特定した前記1以上のクラスに前記第2のクラスが含まれる第2のクラス図とをそれぞれ特定するクラス図特定部と、
特定した前記第1のクラス図に含まれる前記第1のクラス以外の第1の他クラスと、前記第2のクラス図に含まれる前記第2のクラス以外の第2の他クラスとをそれぞれ特定する他クラス特定部と、
特定した前記第1の他クラスのうち、前記第2の他クラスに含まれないクラスの数である第1のクラス数と、特定した前記第2の他クラスのうち、前記第1の他クラスに含まれないクラスの数である第2のクラス数と、特定した前記第1の他クラスと前記第2の他クラスとの両方に含まれるクラスの数である第3のクラス数とをそれぞれ特定し、特定した前記第1のクラス数と前記第2のクラス数と前記第3のクラス数とに基づいて、前記第1のクラスと前記第2のクラスとの関係性の重要度を決定する重要度特定部と、を有する、
ことを特徴とする重要度決定装置。
(付記8)
付記7において、さらに、
決定した前記重要度が所定以上である場合、前記第1のクラスに対する操作と前記第2のクラスに対するとの関係性についての確認を求める特定の文章を生成する項目生成部を有する、
ことを特徴とする重要度決定装置。
(付記9)
付記8において、
前記複数のクラス図に含まれる各クラスに対する操作の内容を示す複数の文章を記憶した記憶部を参照し、前記第1のクラスと前記第2のクラスとを含む文章を特定し、
特定した前記文章から述語に対応する文字列を抽出する述語抽出部を有し、
前記項目生成部は、抽出した前記文字列を用いることによって前記特定の文章の生成を行う、
ことを特徴とする重要度決定装置。
(付記10)
クラス間の関係を示す複数のクラス図を記憶した記憶部を参照し、前記複数のクラス図のそれぞれに含まれる1以上のクラスを特定し、
前記複数のクラス図のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定し、
前記複数のクラス図のうち、特定した前記1以上のクラスに前記第1のクラスが含まれる第1のクラス図と、特定した前記1以上のクラスに前記第2のクラスが含まれる第2のクラス図とをそれぞれ特定し、
特定した前記第1のクラス図に含まれる前記第1のクラス以外の第1の他クラスと、前記第2のクラス図に含まれる前記第2のクラス以外の第2の他クラスとをそれぞれ特定し、
特定した前記第1の他クラスのうち、前記第2の他クラスに含まれないクラスの数である第1のクラス数と、特定した前記第2の他クラスのうち、前記第1の他クラスに含まれないクラスの数である第2のクラス数と、特定した前記第1の他クラスと前記第2の他クラスとの両方に含まれるクラスの数である第3のクラス数とをそれぞれ特定し、
特定した前記第1のクラス数と前記第2のクラス数と前記第3のクラス数とに基づいて、前記第1のクラスと前記第2のクラスとの関係性の重要度を決定する、
処理をコンピュータに実行させることを特徴とする重要度決定方法。
(付記11)
付記10において、さらに、
決定した前記重要度が所定以上である場合、前記第1のクラスに対する操作と前記第2のクラスに対するとの関係性についての確認を求める特定の文章を生成する、
処理をコンピュータに実行させることを特徴とする重要度決定方法。
(付記12)
付記11において、さらに、
前記複数のクラス図に含まれる各クラスに対する操作の内容を示す複数の文章を記憶した記憶部を参照し、前記第1のクラスと前記第2のクラスとを含む文章を特定し、
特定した前記文章から述語に対応する文字列を抽出する、
処理をコンピュータに実行させ、
前記生成する処理では、抽出した前記文字列を用いることによって前記特定の文章の生成を行う、
ことを特徴とする重要度決定方法。
1:情報処理装置 2:操作端末
10:情報処理システム 130:情報処理装置
131:クラス図 132:要求文
NW:ネットワーク

Claims (8)

  1. クラス間の関係を示す複数のクラス図を記憶した記憶部を参照し、前記複数のクラス図のそれぞれに含まれる1以上のクラスを特定し、
    前記複数のクラス図のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定し、
    前記複数のクラス図のうち、特定した前記1以上のクラスに前記第1のクラスが含まれる第1のクラス図と、特定した前記1以上のクラスに前記第2のクラスが含まれる第2のクラス図とをそれぞれ特定し、
    特定した前記第1のクラス図に含まれる前記第1のクラス以外の第1の他クラスと、前記第2のクラス図に含まれる前記第2のクラス以外の第2の他クラスとをそれぞれ特定し、
    特定した前記第1の他クラスのうち、前記第2の他クラスに含まれないクラスの数である第1のクラス数と、特定した前記第2の他クラスのうち、前記第1の他クラスに含まれないクラスの数である第2のクラス数と、特定した前記第1の他クラスと前記第2の他クラスとの両方に含まれるクラスの数である第3のクラス数とをそれぞれ特定し、
    特定した前記第1のクラス数と前記第2のクラス数と前記第3のクラス数とに基づいて、前記第1のクラスと前記第2のクラスとの関係性の重要度を決定する、
    処理をコンピュータに実行させることを特徴とする重要度決定プログラム。
  2. 請求項1において、さらに、
    決定した前記重要度が所定以上である場合、前記第1のクラスに対して操作が行われたことに応じて前記第2のクラスに対して行われる操作の内容の確認を求める特定の文章を生成する、
    処理をコンピュータに実行させることを特徴とする重要度決定プログラム。
  3. 請求項2において、さらに、
    前記複数のクラス図に含まれる各クラスに対する操作の内容を示す複数の文章を記憶した記憶部を参照し、前記第1のクラスと前記第2のクラスとを含む文章を特定し、
    特定した前記文章から述語に対応する文字列を抽出する、
    処理をコンピュータに実行させ、
    前記生成する処理では、抽出した前記文字列を用いることによって前記特定の文章の生成を行う、
    ことを特徴とする重要度決定プログラム。
  4. 請求項1において、
    前記組合せを特定する処理において前記組合せが複数特定された場合、前記第1及び第2のクラス図を特定する処理と、前記第1及び第2の他クラスを特定する処理と、前記第1、第2及び第3のクラス数を特定する処理と、前記重要度を決定する処理とを、前記組合せごとに行う、
    ことを特徴とする重要度決定プログラム。
  5. 請求項4において、
    前記組合せを特定する処理では、多重度が1対多の関係にあり、かつ、同一のクラス図に含まれない前記第1のクラスと前記第2のクラスとの組合せを特定する、
    ことを特徴とする重要度決定プログラム。
  6. 請求項5において、
    前記決定する処理では、
    前記第3のクラス数を前記第1のクラス数と前記第2のクラス数と前記第3のクラス数との和で除算することによって、前記重要度を算出する、
    ことを特徴とする重要度決定プログラム。
  7. クラス間の関係を示す複数のクラス図を記憶した記憶部を参照し、前記複数のクラス図のそれぞれに含まれる1以上のクラスを特定するクラス特定部と、
    前記複数のクラス図のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定する組合せ特定部と、
    前記複数のクラス図のうち、特定した前記1以上のクラスに前記第1のクラスが含まれる第1のクラス図と、特定した前記1以上のクラスに前記第2のクラスが含まれる第2のクラス図とをそれぞれ特定するクラス図特定部と、
    特定した前記第1のクラス図に含まれる前記第1のクラス以外の第1の他クラスと、前記第2のクラス図に含まれる前記第2のクラス以外の第2の他クラスとをそれぞれ特定する他クラス特定部と、
    特定した前記第1の他クラスのうち、前記第2の他クラスに含まれないクラスの数である第1のクラス数と、特定した前記第2の他クラスのうち、前記第1の他クラスに含まれないクラスの数である第2のクラス数と、特定した前記第1の他クラスと前記第2の他クラスとの両方に含まれるクラスの数である第3のクラス数とをそれぞれ特定し、特定した前記第1のクラス数と前記第2のクラス数と前記第3のクラス数とに基づいて、前記第1のクラスと前記第2のクラスとの関係性の重要度を決定する重要度特定部と、を有する、
    ことを特徴とする重要度決定装置。
  8. クラス間の関係を示す複数のクラス図を記憶した記憶部を参照し、前記複数のクラス図のそれぞれに含まれる1以上のクラスを特定し、
    前記複数のクラス図のいずれかに含まれる複数のクラスのうち、多重度が1対多の関係にある第1のクラスと第2のクラスとの組合せを特定し、
    前記複数のクラス図のうち、特定した前記1以上のクラスに前記第1のクラスが含まれる第1のクラス図と、特定した前記1以上のクラスに前記第2のクラスが含まれる第2のクラス図とをそれぞれ特定し、
    特定した前記第1のクラス図に含まれる前記第1のクラス以外の第1の他クラスと、前記第2のクラス図に含まれる前記第2のクラス以外の第2の他クラスとをそれぞれ特定し、
    特定した前記第1の他クラスのうち、前記第2の他クラスに含まれないクラスの数である第1のクラス数と、特定した前記第2の他クラスのうち、前記第1の他クラスに含まれないクラスの数である第2のクラス数と、特定した前記第1の他クラスと前記第2の他クラスとの両方に含まれるクラスの数である第3のクラス数とをそれぞれ特定し、
    特定した前記第1のクラス数と前記第2のクラス数と前記第3のクラス数とに基づいて、前記第1のクラスと前記第2のクラスとの関係性の重要度を決定する、
    処理をコンピュータに実行させることを特徴とする重要度決定方法。
JP2020020578A 2020-02-10 2020-02-10 重要度決定プログラム、重要度決定装置及び重要度決定方法 Pending JP2021125185A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020020578A JP2021125185A (ja) 2020-02-10 2020-02-10 重要度決定プログラム、重要度決定装置及び重要度決定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020020578A JP2021125185A (ja) 2020-02-10 2020-02-10 重要度決定プログラム、重要度決定装置及び重要度決定方法

Publications (1)

Publication Number Publication Date
JP2021125185A true JP2021125185A (ja) 2021-08-30

Family

ID=77459285

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020020578A Pending JP2021125185A (ja) 2020-02-10 2020-02-10 重要度決定プログラム、重要度決定装置及び重要度決定方法

Country Status (1)

Country Link
JP (1) JP2021125185A (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007316734A (ja) * 2006-05-23 2007-12-06 Mitsubishi Electric Corp 情報処理装置
JP2014056490A (ja) * 2012-09-13 2014-03-27 Fuji Electric Co Ltd 通信データ解析装置、その方法、プログラム
JP2019028958A (ja) * 2017-08-04 2019-02-21 株式会社日立製作所 設計書学習装置および設計書学習方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007316734A (ja) * 2006-05-23 2007-12-06 Mitsubishi Electric Corp 情報処理装置
JP2014056490A (ja) * 2012-09-13 2014-03-27 Fuji Electric Co Ltd 通信データ解析装置、その方法、プログラム
JP2019028958A (ja) * 2017-08-04 2019-02-21 株式会社日立製作所 設計書学習装置および設計書学習方法

Similar Documents

Publication Publication Date Title
US11663253B2 (en) Leveraging concepts with information retrieval techniques and knowledge bases
US20220374413A1 (en) Systems and methods for determining relationships among data elements
CN109074383B (zh) 文档背景内可视化的文档搜索
CN110795524B (zh) 主数据映射处理方法、装置、计算机设备及存储介质
KR20080064796A (ko) 전자 데이터 스냅샷 생성기
US20150186776A1 (en) Contextual data analysis using domain information
US9430528B2 (en) Grid queries
US20170286551A1 (en) Scalable processing of heterogeneous user-generated content
US20240143634A1 (en) System and methods for categorizing captured data
CN111190905A (zh) 数据库表格处理方法、装置及电子设备
JPH06348728A (ja) 伝票処理方法
US10241899B2 (en) Test input information search device and method
JP6120607B2 (ja) 要件検出装置及び要件検出プログラム
US11314797B2 (en) Data de-identification apparatus and method
US20200258093A1 (en) Compliance standards mapping
JP2021125185A (ja) 重要度決定プログラム、重要度決定装置及び重要度決定方法
WO2023189440A1 (ja) 情報処理装置及び情報処理方法
US20160042022A1 (en) Data coordination support apparatus and data coordination support method
JP2020101898A (ja) 設計図作成支援方法、設計図作成支援装置、及び設計図作成支援プログラム
JP7209127B1 (ja) 経営情報システム
JP2013012082A (ja) テストデータ生成プログラム、テストデータ生成方法、テストデータ生成装置
US20220398669A1 (en) Workflow management system for customer communication solutions
TWI845796B (zh) 知識圖譜聯想搜尋方法與其系統
WO2019030884A1 (ja) レビュア管理システムおよび方法
CN113515504A (zh) 数据管理方法、装置、电子设备以及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221006

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230807

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230815

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20240220