(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-05-17
(45)【発行日】2022-05-25
(54)【発明の名称】ソフトウェア開発サービス提供装置及び方法
(51)【国際特許分類】
G06F 8/38 20180101AFI20220518BHJP
【FI】
G06F8/38
(21)【出願番号】P 2019212818
(22)【出願日】2019-11-26
【審査請求日】2019-11-26
(31)【優先権主張番号】10-2018-0156925
(32)【優先日】2018-12-07
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】511155464
【氏名又は名称】株式会社トゥービーソフト
【氏名又は名称原語表記】TOBESOFT CO., LTD.
(74)【代理人】
【識別番号】100121728
【氏名又は名称】井関 勝守
(74)【代理人】
【識別番号】100165803
【氏名又は名称】金子 修平
(72)【発明者】
【氏名】ジョ ハンヒョン
【審査官】石川 亮
(56)【参考文献】
【文献】米国特許第09619209(US,B1)
【文献】米国特許出願公開第2007/0055954(US,A1)
【文献】特開2008-282297(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/38
(57)【特許請求の範囲】
【請求項1】
ソフトウェア開発サービス提供装置において、
ユーザの要求事項に対する入力を確認する確認部と、
マシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する分析部と、
ユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前記分析された要求事項をユーザインターフェースに自動的に構成する構成部と、
要求事項に対する入力が確認されると、学習されたデータに基づいて言語的特性によって前記確認された要求事項を分析し、ユーザインターフェースを構成するためのルールを抽出してユーザインターフェースを自動的に構成するように制御する制御部と、
を含み、
前記分析部は、
前記確認された要求事項から単語を抽出し、前記抽出された単語をエンティティ化した後、客体に変換し、
前記制御部は、
前記ユーザの要求事項を直観的に反映するように、ユーザインターフェース画面を直ちにプロトタイプで実現することを特徴とする
ソフトウェア開発サービス提供装置。
【請求項2】
前記ソフトウェア開発サービス提供装置は、
マシンラーニングに基づいて要求事項をユーザインターフェースで構成するパターンを学習する学習部と、
前記学習部により学習されたデータ及びユーザインターフェースを構成するためのルールを格納する格納部と、
を含むことを特徴とする請求項1に記載のソフトウェア開発サービス提供装置。
【請求項3】
ソフトウェア開発サービス提供方法において、
確認部でユーザの要求事項に対する入力を確認する段階と、
分析部でマシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する段階と、
構成部
でユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前記分析された要求事項をユーザインターフェースに自動的に構成する段階と、
を含み、
前記ユーザの要求事項を直観的に反映するように、ユーザインターフェース画面を直ちにプロトタイプで実現し、
前記分析する段階は、
前記確認された要求事項から単語を抽出する段階と、
前記抽出された単語をエンティティ化する段階と、
エンティティ化された単語を客体に変換する段階と、
を含むことを特徴とする
ソフトウェア開発サービス提供方法。
【請求項4】
前記確認する段階の前に、
学習部でマシンラーニングに基づいて要求事項をユーザインターフェースで構成するパターンを学習する段階と、
格納部で前記学習部により学習されたデータ及びユーザインターフェースを構成するためのルールを格納す
る段階と、
を含むことを特徴とする請求項3に記載のソフトウェア開発サービス提供方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はソフトウェア開発サービス提供装置及び方法に関し、より詳細には、言語的特性に基づいてユーザの要求事項を分析し、その分析結果によってユーザインターフェースを自動的に構成して提供できるようにするソフトウェア開発サービス提供装置及び方法に関する。
【背景技術】
【0002】
ソフトウェアの多様化、複雑化に伴い、ソフトウェアの品質に対する重要性が日増しに増加している。そのため、ソフトウェアの品質は市場における競争力そのものであると同時に、価格を決定する核心要素として定着しつつある。
【0003】
従って、ソフトウェアの品質向上のための活動は、実現段階だけでなく、ソフトウェア開発の全段階で行われなければならず、ソフトウェアの品質に対する責任は、そのプロジェクトに参加する全ての人で均等に負わなければならない。
【0004】
このようにソフトウェアの品質問題が全的に開発者だけの責任であるとは考え難い。これと同様に、品質向上を図ることを理由に実現コードのバッグテストに頼りすぎるのもやはり好ましくない。従って、要求事項の分析からテストに至るまでソフトウェアの品質向上のための研究は継続されなければならない。
【0005】
特に、ユーザの要求事項によってテストケースと設計、コードなどが生成されるので、要求事項の分析は非常に重要な過程の一つである。そのため、ユーザからの要求事項を収集及び抽出し、これを正確に分析して問題を把握及び理解しなければ、ユーザの要求事項を正確に開発に反映することができない。
【0006】
しかし、ユーザはこのような要求事項を開発者に口頭で説明して伝達するか、記述して伝達するため、開発者がユーザの要求事項を正確に理解できないという問題が発生する。これは他ならぬソフトウェアの品質向上を阻害する要因になる。
【0007】
従って、ユーザの要求事項を正確に導き出して開発者がその要求事項を正確に開発に反映するようにすることで、ソフトウェアの品質を改善及び向上させることができる技術の開発が必要である。
【発明の概要】
【発明が解決しようとする課題】
【0008】
そこで、本発明は上記事情に鑑みてなされたものであって、その目的は、言語的特性に基づいてユーザの要求事項を正確に分析して開発者がその要求事項を正確に理解できるようにするソフトウェア開発サービス提供装置及び方法を提供することにある。
【0009】
また、本発明の他の目的は、開発者がユーザの要求事項を正確に開発に反映するようにすることで、ソフトウェアの品質を改善及び向上させることができるようにするソフトウェア開発サービス提供装置及び方法を提供することにある。
【0010】
更に、本発明の別の目的は、マシンラーニングの指導学習に基づいてユーザの要求事項をユーザインターフェースに自動的に反映して実現するようにすることで、時間的及び経済的効率性を図ることができるようにするソフトウェア開発サービス提供装置及び方法を提供することにある。
【0011】
本発明の目的は、以上で言及したものに制限されず、言及されていない他の目的は、以下の記載から本発明が属する技術分野における通常の知識を有する者が明確に理解できるであろう。
【課題を解決するための手段】
【0012】
上記のような目的を達成するための本発明に係るソフトウェア開発サービス提供装置は、要求事項に対する入力を確認する確認部と、マシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する分析部と、ユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前記分析された要求事項をユーザインターフェースに自動的に構成する構成部と、要求事項に対する入力が確認されると、学習されたデータに基づいて言語的特性によって前記確認された要求事項を分析し、ユーザインターフェースを構成するためのルールを抽出してユーザインターフェースを自動的に構成するように制御する制御部とを含む。
【0013】
また、上記のような目的を達成するための本発明に係るソフトウェア開発サービス提供方法は、確認部で要求事項に対する入力を確認する段階と、分析部でマシンラーニングに基づいて言語的特性によって前記確認された要求事項を分析する段階と、構成部からユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前記分析された要求事項をユーザインターフェースに自動的に構成する段階とを含む。
【発明の効果】
【0014】
本発明によれば、ユーザの要求事項に基づいてユーザインターフェースを即時に実現することによって、複雑な手順を経る必要なく、開発者が迅速、かつ正確に理解して即刻改善及び開発が行われるようにすることによって、ユーザ及び開発者に時間的及び経済的効率性を提供できるようにすることはもちろん、ソフトウェアの品質を迅速に向上させることができるようにする。
【0015】
また、本発明によれば、マシンラーニングに基づいて言語的特性を指導学習してユーザの音声によって入力される要求事項でユーザインターフェースを実現することによって、ユーザは要求事項を簡便に伝達できると共に、信頼度が高いユーザインターフェースに自動的に反映して実現するようにすることで、ユーザ及び開発者に時間的及び経済的効率性を提供できるようにするという効果を奏する。
【0016】
本発明の効果は、以上で言及したものに制限されず、言及されていない他の効果は、以下の記載から本発明が属する技術分野における通常の知識を有する者が明確に理解できるであろう。
【図面の簡単な説明】
【0017】
【
図1】
図1は、本発明の実施形態に係るソフトウェア開発サービス提供装置の構成を示すブロック図である。
【
図2】
図2は、本発明の実施形態に係るソフトウェア開発サービス提供方法を示すフローチャートである。
【
図3】
図3は、本発明の実施形態に係るソフトウェア開発サービス提供方法を具体的に示すフローチャートである。
【
図4】
図4は、本発明の実施形態によって構成されたユーザインターフェースの一例を示す図である。
【発明を実施するための形態】
【0018】
本発明の目的及び効果、そしてそれらを達成するための技術的構成は、添付の図面と共に詳細に後述されている実施形態を参照すれば明確になる。本発明の説明において公知の機能又は構成に関する具体的な説明が本発明の要旨を不要に曖昧にする恐れがあると判断される場合には、その詳細な説明を省略する。そして、後述される用語は、本発明における貢献を考慮して定義された用語であって、これはユーザ、運用者の意図又は慣例などによって変わり得る。
【0019】
しかし、本発明は、以下で開示される実施形態に限定されるものではなく、互いに異なる他の多様な形態で実現することができる。但し、本実施形態は本発明の開示を完全なものにし、本発明が属する技術分野における通常の知識を有する者に発明の範疇を完全に理解させるために提供されるものであり、本発明は請求の範囲の範疇により定義されるに過ぎない。従って、その定義は、本明細書全般に亘る内容に基づいて行われるべきである。
【0020】
本発明はユーザの要求事項を収集及び分析し、その分析結果に基づいてユーザインターフェース(User Interface)画面を直ちにプロトタイプ(Prototype)で実現することによって、開発者がユーザの要求事項を正確に理解できるようにする。
【0021】
【0022】
図1は、本発明の実施形態に係るソフトウェア開発サービス提供装置の構成を示すブロック図である。
【0023】
図1を参照すれば、ソフトウェア開発サービス提供装置100は確認部101、分析部103、構成部105、格納部107、学習部109及び制御部111を含む。
【0024】
確認部101は、ユーザから要求事項が入力されるか否かを確認する。このとき、要求事項は音声又はテキストで入力されることができ、要求事項を入力する形態及び方式は何れか一つに特定されない。
【0025】
分析部103は、マシンラーニングに基づいて言語的特性によって確認された要求事項を分析する。ここで、言語的特性は単語又は文章などを意味し、何れか一つに特定されないが、説明の便宜上、以下では単語に限定して記載する。
【0026】
具体的に、分析部103は、確認部101により確認された要求事項から単語を抽出し、その抽出された単語をエンティティ化した後、客体に変換する。
【0027】
構成部105は、ユーザインターフェースを構成するためのルールを抽出し、前記抽出されたルールに基づいて前述した分析部103により分析された要求事項をユーザインターフェースに自動的に構成する。
【0028】
学習部109は、マシンラーニングに基づいて要求事項をユーザインターフェースで構成するパターンを学習する。
【0029】
格納部107は、学習部109により学習されたデータ及びユーザインターフェースを構成するためのルールを格納する。
【0030】
これにより、分析部103は、格納部107に格納されたデータ、即ち学習されたデータに基づいてユーザが所望する要求事項を分析することができ、構成部105が格納部107に格納されたルールに従ってその分析された要求事項をユーザインターフェースに自動的に構成することができる。
【0031】
一方、制御部111は、確認部101で要求事項に対する入力が確認されると、分析部103で前記学習されたデータに基づいて言語的特性によって前記確認された要求事項を分析し、構成部105からユーザインターフェースを構成するためのルールを抽出してユーザインターフェースを自動的に構成するように制御する。
【0032】
また、制御部111は、学習部109でマシンラーニングに基づいて要求事項をユーザインターフェースで構成するパターンを学習し、その学習されたデータ及びユーザインターフェースを構成するためのルールを格納部107に格納するように制御する。
【0033】
図2は、本発明の実施形態に係るソフトウェア開発サービス提供方法を示すフローチャートである。
【0034】
まず、確認部101は、ユーザから要求事項が入力されるか否かを確認する(S201)。
【0035】
仮りに、ユーザから要求事項が入力された場合、分析部103は、マシンラーニングに基づいて言語的特性によってその確認された要求事項を分析する(S203)。このとき、分析部103は、格納部107に格納された学習されたデータに基づいて確認された要求事項を分析する。
【0036】
その後、構成部105は、ユーザインターフェースを構成するためのルールを抽出し(S205)、前記抽出されたルールに基づいてその分析された要求事項をユーザインターフェースに自動的に構成する(S207)。このとき、構成部105は、格納部107に格納されたルールに従って分析された要求事項をユーザインターフェースに自動的に構成する。
【0037】
図3は、本発明の実施形態に係るソフトウェア開発サービス提供方法を具体的に示すフローチャートであり、以下では例を挙げて具体的に説明する。
【0038】
確認部101は、ユーザから要求事項が入力されるか否かを確認する(301)。
【0039】
例えば、確認部101が「ユーザはIDとパスワードをテキストボックスに入力してシステムに接続する」、「IDはユーザの従業員番号を基にする」、「従業員番号は8桁を超えない」という要求事項を確認した場合であれば、分析部103は、その確認された要求事項から「顧客」、「ID」、「パスワード」、「テキストボックス」、「従業員番号」という単語を抽出する(S303)。
【0040】
その後、分析部103はS303段階で抽出された「ユーザ」、「ID」、「パスワード」、「従業員番号」を定義、即ちエンティティ化し(S305)、エンティティ化された単語を客体に変換する(S307)。ユーザは、画面を用いる使用者であるので、客体変換対象から除外し、ID及びパスワードを客体に変換、即ちラベル及びテキストボックスで定義される。一方、前述した確認された「IDはユーザの従業員番号を基にする」という要求事項を分析することによってIDと従業員番号を同一のエンティティとして生成し、従業員番号は説明によってテキストボックスの属性で定義される。
【0041】
構成部105は、ユーザインターフェースを構成するために格納部107に格納されたルールを確認して対応するルールを抽出し(S309)、抽出されたルールに従ってユーザインターフェース画面を構成する(S311)。
【0042】
図4は、本発明の実施形態によって構成されたユーザインターフェースの一例を示す図であり、
図3の一例によって構成されたユーザインターフェースの一例を示す。
【0043】
即ち、本発明は、マシンラーニングに基づいてユーザが入力した要求事項の言語的特性を分析し、
図4のようなユーザインターフェース画面を自動的に構成するようにする。
【0044】
本明細書と図面は本発明の好適な実施形態について開示しており、たとえ特定用語が用いられていても、これは単に本発明の技術内容を容易に説明し、発明に対する理解を促進するための一般的な意味として用いられたものであり、本発明の範囲を限定しようとするものではない。ここに開示された実施形態以外にも本発明の技術的思想に基づく他の変形例が実施可能であるということは本発明が属する技術分野における通常の知識を有する者に自明である。