(57)【要約】      （修正有）【課題】ユーザの要求事項を正確に分析して、開発者がその要求事項を正確に理解できるようにするソフトウェア開発サービス提供装置及び方法を提供する。【解決手段】ソフトウェア開発サービス提供装置１００において、要求事項に対する入力を確認する確認部１０１と、マシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する分析部１０３と、ユーザインターフェースを構成するためのルールを抽出し、抽出されたルールに基づいて分析された要求事項をユーザインターフェースに自動的に構成する構成部１０５と、要求事項に対する入力が確認されると、学習されたデータに基づいて言語的特性によって確認された要求事項を分析し、ユーザインターフェースを構成するためのルールを抽出してユーザインターフェースを自動的に構成するように制御する制御部１１１とを含む。【選択図】図１
2020091860.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア開発サービス提供装置において、
要求事項に対する入力を確認する確認部と、
マシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する分析部と、
ユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前記分析された要求事項をユーザインターフェースに自動的に構成する構成部と、
要求事項に対する入力が確認されると、学習されたデータに基づいて言語的特性によって前記確認された要求事項を分析し、ユーザインターフェースを構成するためのルールを抽出してユーザインターフェースを自動的に構成するように制御する制御部と、
を含むソフトウェア開発サービス提供装置。
【請求項２】
前記ソフトウェア開発サービス提供装置は、
マシンラーニングに基づいて要求事項をユーザインターフェースで構成するパターンを学習する学習部と、
前記学習部により学習されたデータ及びユーザインターフェースを構成するためのルールを格納する格納部と、
を含むことを特徴とする請求項１に記載のソフトウェア開発サービス提供装置。
【請求項３】
前記分析部は、
前記確認された要求事項から単語を抽出し、前記抽出された単語をエンティティ化した後、客体に変換することを特徴とする請求項２に記載のソフトウェア開発サービス提供装置。
【請求項４】
ソフトウェア開発サービス提供方法において、
確認部で要求事項に対する入力を確認する段階と、
分析部でマシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する段階と、
構成部からユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前記分析された要求事項をユーザインターフェースに自動的に構成する段階と、
を含むソフトウェア開発サービス提供方法。
【請求項５】
前記分析する段階は、
前記確認された要求事項から単語を抽出する段階と、
前記抽出された単語をエンティティ化する段階と、
エンティティ化された単語を客体に変換する段階と、
を含むことを特徴とする請求項４に記載のソフトウェア開発サービス提供方法。
【請求項６】
前記確認する段階の前に、
学習部でマシンラーニングに基づいて要求事項をユーザインターフェースで構成するパターンを学習する段階と、
前記学習部により学習されたデータ及びユーザインターフェースを構成するためのルールを格納する格納部を格納する段階と、
を含むことを特徴とする請求項４に記載のソフトウェア開発サービス提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はソフトウェア開発サービス提供装置及び方法に関し、より詳細には、言語的特性に基づいてユーザの要求事項を分析し、その分析結果によってユーザインターフェースを自動的に構成して提供できるようにするソフトウェア開発サービス提供装置及び方法に関する。
【背景技術】
【０００２】
ソフトウェアの多様化、複雑化に伴い、ソフトウェアの品質に対する重要性が日増しに増加している。そのため、ソフトウェアの品質は市場における競争力そのものであると同時に、価格を決定する核心要素として定着しつつある。
【０００３】
従って、ソフトウェアの品質向上のための活動は、実現段階だけでなく、ソフトウェア開発の全段階で行われなければならず、ソフトウェアの品質に対する責任は、そのプロジェクトに参加する全ての人で均等に負わなければならない。
【０００４】
このようにソフトウェアの品質問題が全的に開発者だけの責任であるとは考え難い。これと同様に、品質向上を図ることを理由に実現コードのバッグテストに頼りすぎるのもやはり好ましくない。従って、要求事項の分析からテストに至るまでソフトウェアの品質向上のための研究は継続されなければならない。
【０００５】
特に、ユーザの要求事項によってテストケースと設計、コードなどが生成されるので、要求事項の分析は非常に重要な過程の一つである。そのため、ユーザからの要求事項を収集及び抽出し、これを正確に分析して問題を把握及び理解しなければ、ユーザの要求事項を正確に開発に反映することができない。
【０００６】
しかし、ユーザはこのような要求事項を開発者に口頭で説明して伝達するか、記述して伝達するため、開発者がユーザの要求事項を正確に理解できないという問題が発生する。これは他ならぬソフトウェアの品質向上を阻害する要因になる。
【０００７】
従って、ユーザの要求事項を正確に導き出して開発者がその要求事項を正確に開発に反映するようにすることで、ソフトウェアの品質を改善及び向上させることができる技術の開発が必要である。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
そこで、本発明は上記事情に鑑みてなされたものであって、その目的は、言語的特性に基づいてユーザの要求事項を正確に分析して開発者がその要求事項を正確に理解できるようにするソフトウェア開発サービス提供装置及び方法を提供することにある。
【０００９】
また、本発明の他の目的は、開発者がユーザの要求事項を正確に開発に反映するようにすることで、ソフトウェアの品質を改善及び向上させることができるようにするソフトウェア開発サービス提供装置及び方法を提供することにある。
【００１０】
更に、本発明の別の目的は、マシンラーニングの指導学習に基づいてユーザの要求事項をユーザインターフェースに自動的に反映して実現するようにすることで、時間的及び経済的効率性を図ることができるようにするソフトウェア開発サービス提供装置及び方法を提供することにある。
【００１１】
本発明の目的は、以上で言及したものに制限されず、言及されていない他の目的は、以下の記載から本発明が属する技術分野における通常の知識を有する者が明確に理解できるであろう。
【課題を解決するための手段】
【００１２】
上記のような目的を達成するための本発明に係るソフトウェア開発サービス提供装置は、要求事項に対する入力を確認する確認部と、マシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する分析部と、ユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前記分析された要求事項をユーザインターフェースに自動的に構成する構成部と、要求事項に対する入力が確認されると、学習されたデータに基づいて言語的特性によって前記確認された要求事項を分析し、ユーザインターフェースを構成するためのルールを抽出してユーザインターフェースを自動的に構成するように制御する制御部とを含む。
【００１３】
また、上記のような目的を達成するための本発明に係るソフトウェア開発サービス提供方法は、確認部で要求事項に対する入力を確認する段階と、分析部でマシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する段階と、構成部からユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前記分析された要求事項をユーザインターフェースに自動的に構成する段階とを含む。
【発明の効果】
【００１４】
本発明によれば、ユーザの要求事項に基づいてユーザインターフェースを即時に実現することによって、複雑な手順を経る必要なく、開発者が迅速、かつ正確に理解して即刻改善及び開発が行われるようにすることによって、ユーザ及び開発者に時間的及び経済的効率性を提供できるようにすることはもちろん、ソフトウェアの品質を迅速に向上させることができるようにする。
【００１５】
また、本発明によれば、マシンラーニングに基づいて言語的特性を指導学習してユーザの音声によって入力される要求事項でユーザインターフェースを実現することによって、ユーザは要求事項を簡便に伝達できると共に、信頼度が高いユーザインターフェースに自動的に反映して実現するようにすることで、ユーザ及び開発者に時間的及び経済的効率性を提供できるようにするという効果を奏する。
【００１６】
本発明の効果は、以上で言及したものに制限されず、言及されていない他の効果は、以下の記載から本発明が属する技術分野における通常の知識を有する者が明確に理解できるであろう。
【図面の簡単な説明】
【００１７】
【図１】図１は、本発明の実施形態に係るソフトウェア開発サービス提供装置の構成を示すブロック図である。
【図２】図２は、本発明の実施形態に係るソフトウェア開発サービス提供方法を示すフローチャートである。
【図３】図３は、本発明の実施形態に係るソフトウェア開発サービス提供方法を具体的に示すフローチャートである。
【図４】図４は、本発明の実施形態によって構成されたユーザインターフェースの一例を示す図である。
【発明を実施するための形態】
【００１８】
本発明の目的及び効果、そしてそれらを達成するための技術的構成は、添付の図面と共に詳細に後述されている実施形態を参照すれば明確になる。本発明の説明において公知の機能又は構成に関する具体的な説明が本発明の要旨を不要に曖昧にする恐れがあると判断される場合には、その詳細な説明を省略する。そして、後述される用語は、本発明における貢献を考慮して定義された用語であって、これはユーザ、運用者の意図又は慣例などによって変わり得る。
【００１９】
しかし、本発明は、以下で開示される実施形態に限定されるものではなく、互いに異なる他の多様な形態で実現することができる。但し、本実施形態は本発明の開示を完全なものにし、本発明が属する技術分野における通常の知識を有する者に発明の範疇を完全に理解させるために提供されるものであり、本発明は請求の範囲の範疇により定義されるに過ぎない。従って、その定義は、本明細書全般に亘る内容に基づいて行われるべきである。
【００２０】
本発明はユーザの要求事項を収集及び分析し、その分析結果に基づいてユーザインターフェース（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）画面を直ちにプロトタイプ（Ｐｒｏｔｏｔｙｐｅ）で実現することによって、開発者がユーザの要求事項を正確に理解できるようにする。
【００２１】
以下、図１〜図３に基づいて具体的に説明する。
【００２２】
図１は、本発明の実施形態に係るソフトウェア開発サービス提供装置の構成を示すブロック図である。
【００２３】
図１を参照すれば、ソフトウェア開発サービス提供装置１００は確認部１０１、分析部１０３、構成部１０５、格納部１０７、学習部１０９及び制御部１１１を含む。
【００２４】
確認部１０１は、ユーザから要求事項が入力されるか否かを確認する。このとき、要求事項は音声又はテキストで入力されることができ、要求事項を入力する形態及び方式は何れか一つに特定されない。
【００２５】
分析部１０３は、マシンラーニングに基づいて言語的特性によって確認された要求事項を分析する。ここで、言語的特性は単語又は文章などを意味し、何れか一つに特定されないが、説明の便宜上、以下では単語に限定して記載する。
【００２６】
具体的に、分析部１０３は、確認部１０１により確認された要求事項から単語を抽出し、その抽出された単語をエンティティ化した後、客体に変換する。
【００２７】
構成部１０５は、ユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前述した分析部１０３により分析された要求事項をユーザインターフェースに自動的に構成する。
【００２８】
学習部１０９は、マシンラーニングに基づいて要求事項をユーザインターフェースで構成するパターンを学習する。
【００２９】
格納部１０７は、学習部１０９により学習されたデータ及びユーザインターフェースを構成するためのルールを格納する。
【００３０】
これにより、分析部１０３は、格納部１０７に格納されたデータ、即ち学習されたデータに基づいてユーザが所望する要求事項を分析することができ、構成部１０５が格納部１０７に格納されたルールに従ってその分析された要求事項をユーザインターフェースに自動的に構成することができる。
【００３１】
一方、制御部１１１は、確認部１０１で要求事項に対する入力が確認されると、分析部１０３で前記学習されたデータに基づいて言語的特性によって前記確認された要求事項を分析し、構成部１０５からユーザインターフェースを構成するためのルールを抽出してユーザインターフェースを自動的に構成するように制御する。
【００３２】
また、制御部１１１は、学習部１０９でマシンラーニングに基づいて要求事項をユーザインターフェースで構成するパターンを学習し、その学習されたデータ及びユーザインターフェースを構成するためのルールを格納部１０７に格納するように制御する。
【００３３】
図２は、本発明の実施形態に係るソフトウェア開発サービス提供方法を示すフローチャートである。
【００３４】
まず、確認部１０１は、ユーザから要求事項が入力されるか否かを確認する（Ｓ２０１）。
【００３５】
仮りに、ユーザから要求事項が入力された場合、分析部１０３は、マシンラーニングに基づいて言語的特性によってその確認された要求事項を分析する（Ｓ２０３）。このとき、分析部１０３は、格納部１０７に格納された学習されたデータに基づいて確認された要求事項を分析する。
【００３６】
その後、構成部１０５は、ユーザインターフェースを構成するためのルールを抽出し（Ｓ２０５）、前記抽出されたルールに基づいてその分析された要求事項をユーザインターフェースに自動的に構成する（Ｓ２０７）。このとき、構成部１０５は、格納部１０７に格納されたルールに従って分析された要求事項をユーザインターフェースに自動的に構成する。
【００３７】
図３は、本発明の実施形態に係るソフトウェア開発サービス提供方法を具体的に示すフローチャートであり、以下では例を挙げて具体的に説明する。
【００３８】
確認部１０１は、ユーザから要求事項が入力されるか否かを確認する（３０１）。
【００３９】
例えば、確認部１０１が「ユーザはＩＤとパスワードをテキストボックスに入力してシステムに接続する」、「ＩＤはユーザの従業員番号を基にする」、「従業員番号は８桁を超えない」という要求事項を確認した場合であれば、分析部１０３は、その確認された要求事項から「顧客」、「ＩＤ」、「パスワード」、「テキストボックス」、「従業員番号」という単語を抽出する（Ｓ３０３）。
【００４０】
その後、分析部１０３はＳ３０３段階で抽出された「ユーザ」、「ＩＤ」、「パスワード」、「従業員番号」を定義、即ちエンティティ化し（Ｓ３０５）、エンティティ化された単語を客体に変換する（Ｓ３０７）。ユーザは、画面を用いる使用者であるので、客体変換対象から除外し、ＩＤ及びパスワードを客体に変換、即ちラベル及びテキストボックスで定義される。一方、前述した確認された「ＩＤはユーザの従業員番号を基にする」という要求事項を分析することによってＩＤと従業員番号を同一のエンティティとして生成し、従業員番号は説明によってテキストボックスの属性で定義される。
【００４１】
構成部１０５は、ユーザインターフェースを構成するために格納部１０７に格納されたルールを確認して対応するルールを抽出し（Ｓ３０９）、抽出されたルールに従ってユーザインターフェース画面を構成する（Ｓ３１１）。
【００４２】
図４は、本発明の実施形態によって構成されたユーザインターフェースの一例を示す図であり、図３の一例によって構成されたユーザインターフェースの一例を示す。
【００４３】
即ち、本発明は、マシンラーニングに基づいてユーザが入力した要求事項の言語的特性を分析し、図４のようなユーザインターフェース画面を自動的に構成するようにする。
【００４４】
本明細書と図面は本発明の好適な実施形態について開示しており、たとえ特定用語が用いられていても、これは単に本発明の技術内容を容易に説明し、発明に対する理解を促進するための一般的な意味として用いられたものであり、本発明の範囲を限定しようとするものではない。ここに開示された実施形態以外にも本発明の技術的思想に基づく他の変形例が実施可能であるということは本発明が属する技術分野における通常の知識を有する者に自明である。
【図１】
2020091860.tif 000003
【図２】
2020091860.tif 000004
【図３】
2020091860.tif 000005
【図４】
2020091860.tif 000006