[go: up one dir, main page]

JP2024121524A - Microservice design support system, microservice design support method and program - Google Patents

Microservice design support system, microservice design support method and program Download PDF

Info

Publication number
JP2024121524A
JP2024121524A JP2023028670A JP2023028670A JP2024121524A JP 2024121524 A JP2024121524 A JP 2024121524A JP 2023028670 A JP2023028670 A JP 2023028670A JP 2023028670 A JP2023028670 A JP 2023028670A JP 2024121524 A JP2024121524 A JP 2024121524A
Authority
JP
Japan
Prior art keywords
information
subdomain
microservice
use case
context
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
JP2023028670A
Other languages
Japanese (ja)
Inventor
謙太 山崎
Kenta Yamazaki
賢知 受田
Masatomo Ukeda
秀行 坂井
Hideyuki Sakai
弓郎 須賀
Yumio Suga
岳人 東
Takehito Azuma
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2023028670A priority Critical patent/JP2024121524A/en
Publication of JP2024121524A publication Critical patent/JP2024121524A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

To realize design support without personal attributes in microservices design.SOLUTION: A microservices design support system is provided with a use case input unit 12 for inputting a use case related to a user's business process as textual information; a ubiquitous language generation unit 13 for generating a ubiquitous language related to a constituent element included in the textual information of the use case inputted to the use case input unit and a subdomain information output unit 14 for grouping use cases including matching or similar elements based on the ubiquitous language and the use case, further subgrouping the textual information of the grouped use cases based on whether the textual information is similar in the business process, and generating subdomain information.SELECTED DRAWING: Figure 2

Description

本発明はマイクロサービス設計支援システム、マイクロサービス設計支援方法及びプログラムに関する。 The present invention relates to a microservice design support system, a microservice design support method, and a program.

モノシリックなシステムを新たにマイクロサービス化したシステムに移行する場合に、当該システムを分割したマイクロサービスごとに必要なリソースを割り当てる技術が開示されている(特許文献1を参照)。 A technology has been disclosed that, when migrating a monolithic system into a new microservice-based system, allocates the necessary resources to each microservice that is divided from the system (see Patent Document 1).

ところで、企業の業務効率化や生産性向上などのため、企業の業務プロセスの中で、特に業務効率化等に寄与する業務プロセスを特定し、特定された部位をマイクロサービス化して開発を柔軟かつ迅速に継続できるよう整備する要求がある。例えば、近年、ドメイン駆動設計の概念に基づいて、既存のモノリシックアプリケーションをマイクロサービスに移行することが行われている。ドメイン駆動設計は、企業の業務ドメインの情報に基づいて業務プロセスをモデリングする設計概念である。 In order to improve business efficiency and productivity at companies, there is a demand to identify business processes that contribute particularly to business efficiency, and to turn the identified parts into microservices so that development can continue flexibly and quickly. For example, in recent years, existing monolithic applications have been migrated to microservices based on the concept of domain-driven design. Domain-driven design is a design concept that models business processes based on information about a company's business domain.

特開2022-168796号公報JP 2022-168796 A

ところで、業務効率化や生産性向上等のために業務プロセスの一部をマイクロサービス化するためには、業務プロセスの中で、特に業務の効率化等に寄与する業務プロセスを特定する必要がある。しかし、顧客の業務プロセスが複雑であったり、業務の効率化に対してどの業務プロセスをマイクロサービス化するべきかを顧客自身も認識していなかったりする場合、マイクロサービス化する業務プロセスを特定するのは容易ではない。 In order to turn part of a business process into a microservice in order to improve business efficiency and productivity, it is necessary to identify the business processes that will contribute particularly to business efficiency. However, when a customer's business processes are complex, or when the customer himself does not know which business processes should be turned into microservices to improve business efficiency, it is not easy to identify the business processes to be turned into microservices.

また、業務プロセスの整理は、一般に業務に精通する顧客や熟練の技術者が多くの時間をかけて実施することが多い。よって、短時間でマイクロサービス化を実現するためには、業務プロセスを整理する工程及び対象とする業務プロセスを特定する工程の迅速化が課題となっている。 In addition, business process reorganization is generally carried out by customers who are familiar with the business and experienced engineers, and takes a lot of time. Therefore, in order to realize microservices in a short time, it is important to speed up the process of reorganizing business processes and the process of identifying the target business processes.

上記の状況から、マイクロサービスの設計に関して、属人性を排した設計支援を実現する手法が要望されていた。 Given the above situation, there was a demand for a method to provide design support for microservices that was not dependent on individual skills.

上記課題を解決するために、本発明の一態様のマイクロサービス設計支援システムは、ユーザの業務プロセスにおいてマイクロサービス化する領域決定を支援するマイクロサービス設計支援システムであって、ユースケース入力部と、ユビキタス言語生成部と、サブドメイン情報出力部と、を備える。ユースケース入力部は、ユーザの業務プロセスに関連するユースケースがテキスト情報として入力される。ユビキタス言語生成部は、ユースケース入力部に入力されたユースケースのテキスト情報に含まれる構成要素に関連するユビキタス言語を生成する。サブドメイン情報出力部は、ユビキタス言語とユースケースに基づいて、一致又は類似する要素を含むユースケースをグループ化し、さらにそのグループ化されたユースケースのテキスト情報のうち、業務プロセスにおいて類似する情報か否かに基づきサブグループ化して、サブドメイン情報を生成する。 In order to solve the above problem, one aspect of the present invention is a microservice design support system that supports the determination of areas to be turned into microservices in a user's business process, and includes a use case input unit, a ubiquitous language generation unit, and a subdomain information output unit. The use case input unit receives use cases related to the user's business process as text information. The ubiquitous language generation unit generates ubiquitous language related to components included in the text information of the use cases input to the use case input unit. The subdomain information output unit groups use cases that include matching or similar elements based on the ubiquitous language and the use cases, and further subgroups the text information of the grouped use cases based on whether the information is similar in the business process, thereby generating subdomain information.

本発明の少なくとも一態様によれば、マイクロサービスの設計に関して、属人性を排した設計支援を実現することができる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
According to at least one aspect of the present invention, it is possible to realize design support for microservices that is free from dependency on individuals.
Problems, configurations and effects other than those described above will become apparent from the following description of the embodiments.

本発明の一実施形態に係るマイクロサービス設計支援システムと従来技術の概要を示す図である。FIG. 1 is a diagram illustrating an overview of a microservice design support system according to an embodiment of the present invention and a conventional technique. 本発明の一実施形態に係るマイクロサービス設計支援システムの機能構成の例を示すブロック図である。FIG. 1 is a block diagram illustrating an example of a functional configuration of a microservice design support system according to an embodiment of the present invention. 本発明の一実施形態に係るユビキタス言語生成処理の手順の例を示すフローチャートである。1 is a flowchart showing an example of a procedure for a ubiquitous language generation process according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン情報生成処理の手順の例を示すフローチャートである。10 is a flowchart illustrating an example of a procedure for a subdomain information generation process according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン分類処理の手順の例を示すフローチャートである。10 is a flowchart illustrating an example of a procedure for a subdomain classification process according to an embodiment of the present invention. 本発明の一実施形態に係るユースケース記述の分類の具体例を示す図である。FIG. 2 is a diagram showing a specific example of classification of use case descriptions according to an embodiment of the present invention. 本発明の一実施形態に係る過去設計情報解析処理の手順の例を示すフローチャートである。1 is a flowchart illustrating an example of a procedure for past design information analysis processing according to an embodiment of the present invention. 本発明の一実施形態に係る過去設計情報に対する類似度算出処理の手順の例を示すフローチャートである。11 is a flowchart illustrating an example of a procedure for calculating a similarity between previous design information according to an embodiment of the present invention. 本発明の一実施形態に係るコンテキスト情報出力処理の手順の例を示すフローチャートである。10 is a flowchart illustrating an example of a procedure for a context information output process according to an embodiment of the present invention. 本発明の一実施形態に係るマイクロサービス情報出力処理の手順の例を示すフローチャートである。13 is a flowchart illustrating an example of a procedure for a microservice information output process according to an embodiment of the present invention. 本発明の一実施形態に係る過去設計情報のデータベースの一例を示す図である。FIG. 2 is a diagram illustrating an example of a database of past design information according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン情報のデータベースの一例を示す図である。FIG. 2 is a diagram showing an example of a database of sub-domain information according to an embodiment of the present invention. 本発明の一実施形態に係るコンテキスト情報のデータベースの一例を示す図である。FIG. 2 illustrates an example database of context information according to an embodiment of the present invention. 本発明の一実施形態に係るマイクロサービス情報のデータベースの一例を示す図である。FIG. 1 illustrates an example of a database of microservice information according to an embodiment of the present invention. 本発明の一実施形態に係るユースケース記述入力の表示例を示す図である。FIG. 13 is a diagram showing an example of a display of a use case description input according to an embodiment of the present invention. 本発明の一実施形態に係るユビキタス言語の表示例を示す図である。FIG. 2 is a diagram showing a display example of a ubiquitous language according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン情報の表示例を示す図である。FIG. 13 is a diagram showing an example of display of sub-domain information according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン情報の編集の表示例を示す図である。FIG. 13 is a diagram showing an example of a display for editing subdomain information according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン情報の属性情報の表示例を示す図である。FIG. 13 is a diagram showing an example of display of attribute information of sub-domain information according to an embodiment of the present invention. 本発明の一実施形態に係るコンテキスト情報の表示例を示す図である。FIG. 13 is a diagram showing an example of display of context information according to an embodiment of the present invention. 本発明の一実施形態に係るコンテキストマップの表示例を示す図である。FIG. 11 is a diagram illustrating a display example of a context map according to an embodiment of the present invention. 本発明の一実施形態に係るマイクロサービス情報の表示例を示す図である。FIG. 11 is a diagram illustrating an example of a display of microservice information according to an embodiment of the present invention. 本発明の一実施形態に係るマイクロサービス設計支援システムのハードウェア構成の例を示す図である。FIG. 1 is a diagram illustrating an example of a hardware configuration of a microservice design support system according to an embodiment of the present invention.

以下、本発明を実施するための形態(以下、「実施形態」と称する)の例について、添付図面を参照して説明する。本明細書及び添付図面において、同一の構成要素又は実質的に同一の機能を有する構成要素には同一の符号を付して重複する説明を省略する。 Below, examples of modes for carrying out the present invention (hereinafter referred to as "embodiments") will be described with reference to the accompanying drawings. In this specification and the accompanying drawings, identical components or components having substantially the same functions are designated by the same reference numerals, and duplicate descriptions will be omitted.

[本実施形態のマイクロサービス設計支援システムと従来技術の概要]
はじめに、本発明の一実施形態に係るマイクロサービス設計支援システムと従来技術の概要について、図1を参照して説明する。
[Outline of the microservice design support system according to the present embodiment and the conventional technology]
First, an overview of a microservice design support system according to an embodiment of the present invention and a conventional technique will be described with reference to FIG.

図1は、本発明の一実施形態に係るマイクロサービス設計支援システムと従来技術の概要を示す図である。図1において、上段は従来技術、下段は本実施形態に係るマイクロサービス設計支援システムの概要をそれぞれ示している。 Figure 1 is a diagram showing an overview of a microservice design support system according to one embodiment of the present invention and the conventional technology. In Figure 1, the upper part shows the conventional technology, and the lower part shows an overview of the microservice design support system according to this embodiment.

上段の従来技術では、業務システム1を機能単位にマイクロサービスに分割する場合を表している。業務システム1の機能(機能A~C)に着目して分割するため、複数の業務(業務a、業務b)から利用される機能(機能B)を切り出すケースが起こり得る。これは複数業務に依存する好ましくない設計である。 The conventional technology in the upper part shows a case where business system 1 is divided into microservices on a functional basis. Because the division focuses on the functions of business system 1 (functions A to C), it is possible that a function (function B) that is used by multiple businesses (business a, business b) may be extracted. This is an undesirable design that relies on multiple businesses.

下段の本実施形態に係るマイクロサービス設計支援システムでは、ユースケースに基づいたサブドメイン、コンテキスト境界で分割する。ユースケースとは、ユーザなどの主体が業務システムを用いて何らかの機能を利用したり目的を達成しようとしたりする際に、特定の状態からスタートしてどのような操作や応答が行われる(べき)かを記述したものである。 The microservice design support system according to this embodiment, shown in the lower part, divides into subdomains and context boundaries based on use cases. A use case describes what operations and responses are (should be) performed starting from a specific state when a user or other entity uses a business system to use some function or achieve a goal.

本実施形態では、関連するユースケースを集約してサブドメインとコンテキスト境界を設計することによって、業務(業務a,b)ごとに関連する機能単位(機能B1,B2)で独立性を保った設計が可能である。また、後述するように、過去設計情報(図11の過去設計情報22参照)に基づくサブドメイン候補案も併せて提示することで、ユーザ(設計者)の検討素材を複数提供することが可能である。 In this embodiment, by aggregating related use cases and designing subdomains and context boundaries, it is possible to design related functional units (functions B1, B2) for each business (business a, b) while maintaining their independence. In addition, as described below, by also presenting subdomain candidates based on past design information (see past design information 22 in FIG. 11), it is possible to provide the user (designer) with multiple materials for consideration.

[マイクロサービス設計支援システムの機能構成]
次に、本実施形態に係るマイクロサービス設計支援システムの機能構成について、図2を用いて説明する。
図2は、本実施形態に係るマイクロサービス設計支援システムの機能構成の例を示すブロック図である。
[Functional configuration of the microservice design support system]
Next, the functional configuration of the microservice design support system according to this embodiment will be described with reference to FIG.
FIG. 2 is a block diagram illustrating an example of a functional configuration of a microservice design support system according to this embodiment.

マイクロサービス設計支援システム10は、ユーザインタフェース部11、ユースケース入力部12、ユビキタス言語生成部13、サブドメイン情報出力部14、コンテキスト情報出力部15、及びマイクロサービス情報出力部16を有している。また、マイクロサービス設計支援システム10には、ユースケース記述情報17、業界用語18、ユビキタス言語19、組織情報20、業務情報21、過去設計情報22、サブドメイン情報23、コンテキスト情報24、マイクロサービス情報25が記録されている。これらの各種情報は、データベースやテーブルなどの形態で後述する図23の記憶装置233に記憶される。 The microservice design support system 10 has a user interface unit 11, a use case input unit 12, a ubiquitous language generation unit 13, a subdomain information output unit 14, a context information output unit 15, and a microservice information output unit 16. The microservice design support system 10 also records use case description information 17, industry terminology 18, ubiquitous language 19, organizational information 20, business information 21, past design information 22, subdomain information 23, context information 24, and microservice information 25. These various pieces of information are stored in the form of a database, a table, or the like in a storage device 233 in FIG. 23, which will be described later.

ユーザインタフェース部11は、画面表示等によって、マイクロサービス設計の各ステップでユーザ入力を促す項目、ユーザ確認を促す項目、ユーザ編集を促す項目などをユーザに提示する。具体的には、ユーザインタフェース部11は、ユースケースの入力、ユビキタス言語の確認と編集、組織情報と業務情報の入力、サブドメイン情報の確認と編集、コンテキスト情報の確認と編集、並びにマイクロサービス情報の確認のための各種画面を表示する。ユーザインタフェース部11は、後述する図23の表示装置236及び入力装置235を用いて実現される。 The user interface unit 11 presents to the user, by displaying a screen or the like, items that prompt the user to input, items that prompt the user to confirm, items that prompt the user to edit, and the like at each step of microservice design. Specifically, the user interface unit 11 displays various screens for inputting use cases, confirming and editing ubiquitous language, inputting organizational information and business information, confirming and editing subdomain information, confirming and editing context information, and confirming microservice information. The user interface unit 11 is realized using the display device 236 and input device 235 in FIG. 23 described later.

ユースケース入力部12は、ユーザ(ユーザインタフェース部11)からの業務に関係するユースケースのテキスト情報(ユースケース記述)を受け付けて、ユースケース記述情報17に格納する。 The use case input unit 12 accepts text information (use case description) of use cases related to business from the user (user interface unit 11) and stores it in the use case description information 17.

ユビキタス言語生成部13は、業界用語18を参照して、ユースケース記述情報17のユースケース記述を形態素解析することにより、ユビキタス言語の候補一覧を生成する。そして、ユビキタス言語生成部13は、ユーザインタフェース部11を介してユーザにユビキタス言語の候補一覧を提示し、ユーザによるユビキタス言語の候補の確認及び編集操作を受け付けて、ユビキタス言語を確定してユビキタス言語19に格納する。 The ubiquitous language generation unit 13 generates a list of ubiquitous language candidates by performing morphological analysis of the use case description in the use case description information 17 with reference to industry terminology 18. The ubiquitous language generation unit 13 then presents the list of ubiquitous language candidates to the user via the user interface unit 11, accepts confirmation and editing operations of the ubiquitous language candidates by the user, finalizes the ubiquitous language, and stores it in the ubiquitous language 19.

サブドメイン情報出力部14は、ユビキタス言語生成部13によるユースケース記述情報17の解析結果(ユビキタス言語19)と、組織情報20、業務情報21、過去設計情報22を解析することにより、サブドメイン候補情報を生成する。そして、サブドメイン情報出力部14は、ユーザインタフェース部11を介してユーザにサブドメイン候補情報を提示し、ユーザによるサブドメイン候補情報の確認及び編集操作を受け付けて、サブドメイン情報を確定してサブドメイン情報23に格納する。 The subdomain information output unit 14 generates subdomain candidate information by analyzing the analysis result (ubiquitous language 19) of the use case description information 17 by the ubiquitous language generation unit 13, organization information 20, business information 21, and past design information 22. The subdomain information output unit 14 then presents the subdomain candidate information to the user via the user interface unit 11, accepts confirmation and editing operations of the subdomain candidate information by the user, and confirms the subdomain information and stores it in the subdomain information 23.

コンテキスト情報出力部15は、サブドメイン情報23を解析することにより、コンテキスト候補情報を生成する。そして、コンテキスト情報出力部15は、ユーザインタフェース部11を介してユーザにコンテキスト候補情報を提示し、ユーザによるコンテキスト候補情報の確認及び編集操作を受け付けて、コンテキスト情報を確定してコンテキスト情報24に格納する。 The context information output unit 15 generates context candidate information by analyzing the subdomain information 23. The context information output unit 15 then presents the context candidate information to the user via the user interface unit 11, accepts confirmation and editing operations of the context candidate information by the user, and confirms and stores the context information in the context information 24.

マイクロサービス情報出力部16は、コンテキスト情報24を解析することにより、マイクロサービス候補情報を生成する。そして、マイクロサービス情報出力部16は、ユーザインタフェース部11を介してユーザにマイクロサービス候補情報を提示し、ユーザによるマイクロサービス候補情報の確認及び編集操作を受け付けて、マイクロサービス情報を確定してマイクロサービス情報25に格納する。 The microservice information output unit 16 generates microservice candidate information by analyzing the context information 24. Then, the microservice information output unit 16 presents the microservice candidate information to the user via the user interface unit 11, accepts confirmation and editing operations of the microservice candidate information by the user, finalizes the microservice information, and stores it in the microservice information 25.

ユースケース入力部12、ユビキタス言語生成部13、サブドメイン情報出力部14、コンテキスト情報出力部15、及びマイクロサービス情報出力部16の間では、各処理ブロックによる処理が完了した際に完了通知が行われる。 Completion notifications are sent between the use case input unit 12, the ubiquitous language generation unit 13, the subdomain information output unit 14, the context information output unit 15, and the microservice information output unit 16 when processing by each processing block is completed.

[ユビキタス言語生成処理]
次に、マイクロサービス設計支援システム10におけるユビキタス言語生成処理について図3を用いて説明する。
図3は、ユビキタス言語生成処理の手順の例を示すフローチャートである。ユビキタス言語生成処理はユビキタス言語生成部13によって実行される。
[Ubiquitous Language Generation Processing]
Next, the ubiquitous language generation process in the microservice design support system 10 will be described with reference to FIG.
3 is a flowchart showing an example of a procedure for a ubiquitous language generation process. The ubiquitous language generation process is executed by the ubiquitous language generation unit 13.

ステップS301において、ユビキタス言語生成部13は、ユーザにより入力されたユースケース記述をユースケース記述情報17から取得する。 In step S301, the ubiquitous language generation unit 13 obtains the use case description input by the user from the use case description information 17.

次いで、ステップS302において、ユビキタス言語生成部13は、解析対象の業界に該当する業界用語18を取得する。解析対象の業界の指定は、ユーザインタフェース部11でユーザからの入力を受け付けてもよいし、マイクロサービス設計支援システム10が複数の業界候補をユーザに提示してユーザに選択させて決定してもよい。 Next, in step S302, the ubiquitous language generation unit 13 acquires industry terms 18 that correspond to the industry to be analyzed. The industry to be analyzed may be specified by accepting an input from the user at the user interface unit 11, or the microservice design support system 10 may present a plurality of industry candidates to the user and allow the user to select one.

次いで、ステップS303において、ユビキタス言語生成部13は、取得したユースケース記述に対してループ処理を実行する。 Next, in step S303, the ubiquitous language generation unit 13 performs loop processing on the acquired use case description.

ステップS304において、ユビキタス言語生成部13は、ユースケース記述に対して形態素解析を実行し、ユースケース記述すなわち文の成分を、主語と、述語と、目的語と、それ以外の成分に分類する。 In step S304, the ubiquitous language generation unit 13 performs morphological analysis on the use case description and classifies the components of the use case description, i.e., the sentence, into subject, predicate, object, and other components.

次いで、ステップS305において、ユビキタス言語生成部13は、ステップS302で取得した業界用語18の中に、分類した文の成分に含まれる情報と同じものがあるかどうかを確認する。分類した文の成分に含まれる情報とは、当該成分に含まれる名詞、動詞などの品詞(ユースケース記述の要素の一例)の具体的な内容である。同じ内容の品詞が業界用語18に含まれている場合、その品詞を業界用語18に含まれない他の品詞と比べて高い優先度に指定する。優先度は「高」のような文字列で指定してもよいし、「1」のような数字で指定してもよい。この例では、対象の品詞が業界用語18に含まれるか含まれないかであるから、優先度は高いか低いか(1又は0)の2段階である。なお、品詞の優先度が同じ場合には、それらの品詞の並び順は予め設定したルールに基づく順番(例えば50音順)とする。 Next, in step S305, the ubiquitous language generation unit 13 checks whether the industry terminology 18 acquired in step S302 contains the same information as that contained in the classified sentence component. The information contained in the classified sentence component is the specific content of the parts of speech (examples of elements of use case description) such as nouns and verbs contained in the component. If a part of speech with the same content is contained in the industry terminology 18, the part of speech is assigned a higher priority than other parts of speech that are not contained in the industry terminology 18. The priority may be specified as a character string such as "high" or a number such as "1". In this example, the target part of speech is either included in the industry terminology 18 or not, so there are two levels of priority: high or low (1 or 0). Note that if the parts of speech have the same priority, the order of those parts of speech is based on a preset rule (for example, alphabetical order).

そして、ステップS306において、ユビキタス言語生成部13は、全てのユースケース記述に対してループ処理の実行を完了したかを確認する。ユビキタス言語生成部13は、ループ処理が完了していないと判定した場合、ステップS303に戻り処理を継続し、ループ処理が完了していると判定した場合、ステップS307に進む。 Then, in step S306, the ubiquitous language generation unit 13 checks whether the execution of the loop processing has been completed for all use case descriptions. If the ubiquitous language generation unit 13 determines that the loop processing has not been completed, it returns to step S303 and continues the processing, and if it determines that the loop processing has been completed, it proceeds to step S307.

ステップS307において、ユビキタス言語生成部13は、上記の品詞に対して類義語解析を実行する。類義語解析には既存の技術や辞書を用いることができ、例えばWordNetやWord2Vecを使用してもよい。ユビキタス言語生成部13は、類義語解析の結果を用いて、品詞ごとに類義語グループを作成する。このときに、どの程度の類似性があれば類義語と判断するかは、事前にルールを決定して保持しておくことができる。例えば、類似度のしきい値を事前に定義しておき、しきい値以上の類似性を持つ品詞ごとのグループを作成することができる。 In step S307, the ubiquitous language generation unit 13 performs a synonym analysis on the above parts of speech. Existing technology and dictionaries can be used for the synonym analysis, and for example, WordNet or Word2Vec may be used. The ubiquitous language generation unit 13 uses the results of the synonym analysis to create synonym groups for each part of speech. At this time, rules can be determined and stored in advance as to how much similarity is required to determine a word as a synonym. For example, a threshold value for similarity can be defined in advance, and groups can be created for each part of speech that has a similarity equal to or greater than the threshold value.

次いで、ステップS308において、ユビキタス言語生成部13は、解析した品詞及びその品詞の類義語グループを基にユビキタス言語候補を生成する。このとき、ユビキタス言語生成部13が、ステップS305で指定した優先度に従い、品詞を高い優先度の順に並べ替える。類義語グループの場合は、高優先度の品詞が多く含まれるグループを他の類義語グループよりも先に並べてもよい。 Next, in step S308, the ubiquitous language generation unit 13 generates ubiquitous language candidates based on the analyzed parts of speech and the synonym groups of those parts of speech. At this time, the ubiquitous language generation unit 13 sorts the parts of speech in order of priority according to the priority specified in step S305. In the case of synonym groups, a group that contains many high-priority parts of speech may be sorted before other synonym groups.

次いで、ステップS309において、ユビキタス言語生成部13は、ユーザインタフェース部11を介して、ステップS308で生成したユビキタス言語候補をユーザに提示する。ユーザは、ユーザインタフェース部11を介して、ユビキタス言語候補のうち、どれをユビキタス言語として確定するかを選択する(後述する図16参照)。さらに、ユーザは、ユーザインタフェース部11を介して、ユビキタス言語を編集したり、類義語グループを一つの品詞にまとめる編集をしたりしてもよい。ユビキタス言語生成部13は、ユーザインタフェース部11を介して、ユーザによるユビキタス言語候補の選択及び編集操作を受け付ける。 Next, in step S309, the ubiquitous language generation unit 13 presents the ubiquitous language candidates generated in step S308 to the user via the user interface unit 11. The user selects which of the ubiquitous language candidates to confirm as the ubiquitous language via the user interface unit 11 (see FIG. 16 described later). Furthermore, the user may edit the ubiquitous language via the user interface unit 11, or edit by consolidating synonymous groups into one part of speech. The ubiquitous language generation unit 13 accepts the selection and editing operation of the ubiquitous language candidate by the user via the user interface unit 11.

次いで、ステップS310において、ユビキタス言語生成部13は、ステップS309において受け付けたユビキタス言語候補の選択及び編集操作の結果を、ユビキタス言語19に格納する。本ステップの処理が終了したら、ユビキタス言語生成処理が終了する。 Next, in step S310, the ubiquitous language generation unit 13 stores the results of the selection and editing operations of the ubiquitous language candidates received in step S309 in the ubiquitous language 19. When the processing of this step is completed, the ubiquitous language generation process is completed.

[サブドメイン情報生成処理]
次に、マイクロサービス設計支援システム10におけるサブドメイン情報生成処理について図4を用いて説明する。
図4は、サブドメイン情報生成処理の手順の例を示すフローチャートである。サブドメイン情報生成処理は、サブドメイン情報出力部14によって実行される。
[Subdomain information generation process]
Next, the subdomain information generation process in the microservice design support system 10 will be described with reference to FIG.
4 is a flowchart showing an example of the procedure of the subdomain information generating process. The subdomain information generating process is executed by the subdomain information output unit 14.

ステップS401において、サブドメイン情報出力部14は、ユースケース記述情報17から対象のユースケース記述を取得する。 In step S401, the subdomain information output unit 14 obtains the target use case description from the use case description information 17.

次いで、ステップS402において、サブドメイン情報出力部14は、ユースケース記述を解析することでサブドメイン分類処理を実行する。サブドメイン分類処理の詳細については図5のフローチャートを用いて説明する。 Next, in step S402, the subdomain information output unit 14 executes a subdomain classification process by analyzing the use case description. Details of the subdomain classification process will be explained using the flowchart in FIG. 5.

次いで、ステップS403において、サブドメイン情報出力部14は、過去設計情報22(後述する図11参照)を解析することでサブドメイン候補情報を生成する。過去設計情報22は、設計者又は設計会社が過去に実施した、他社や他事業部などのマイクロサービス設計に関する情報である。過去設計情報解析処理の詳細については図7のフローチャートを用いて説明する。 Next, in step S403, the subdomain information output unit 14 generates subdomain candidate information by analyzing the past design information 22 (see FIG. 11 described later). The past design information 22 is information about microservice designs for other companies, other business divisions, etc. that were previously carried out by the designer or design company. Details of the past design information analysis process will be explained using the flowchart in FIG. 7.

次いで、ステップS404において、サブドメイン情報出力部14は、ステップS402,S403の解析結果を基に、サブドメイン候補情報を生成する。 Next, in step S404, the subdomain information output unit 14 generates subdomain candidate information based on the analysis results of steps S402 and S403.

次いで、ステップS405において、サブドメイン情報出力部14は、ユーザインタフェース部11を介して、サブドメイン候補情報をユーザに提示する。ユーザは、ユーザインタフェース部11を介して、サブドメイン候補情報を選択、編集する(後述する図17~図19参照)。サブドメイン情報出力部14は、ユーザインタフェース部11を介して、ユーザによるサブドメイン候補情報の選択、編集操作を受け付ける。 Next, in step S405, the subdomain information output unit 14 presents the subdomain candidate information to the user via the user interface unit 11. The user selects and edits the subdomain candidate information via the user interface unit 11 (see Figures 17 to 19 described later). The subdomain information output unit 14 accepts the user's selection and editing of the subdomain candidate information via the user interface unit 11.

次いで、ステップS406において、サブドメイン情報出力部14は、ステップS405において受け付けたサブドメイン候補情報の選択及び編集の結果を、サブドメイン情報23に格納する。本ステップの処理が終了したら、サブドメイン情報生成処理が終了する。 Next, in step S406, the subdomain information output unit 14 stores the results of the selection and editing of the subdomain candidate information received in step S405 in the subdomain information 23. When the processing of this step is completed, the subdomain information generation process is completed.

[サブドメイン分類処理]
次に、マイクロサービス設計支援システム10におけるサブドメイン分類処理(S402のサブルーチン)について図5を用いて説明する。
図5は、サブドメイン情報出力部14によるサブドメイン分類処理の手順の例を示すフローチャートである。
[Subdomain categorization process]
Next, the subdomain classification process (subroutine of S402) in the microservice design support system 10 will be described with reference to FIG.
FIG. 5 is a flowchart showing an example of a procedure for a subdomain classification process performed by the subdomain information output unit 14.

ステップS501において、サブドメイン情報出力部14は、ステップS401で取得したユースケース記述を形態素解析することで主語を抽出し、主語ごとにユースケース記述をグループ分けする。 In step S501, the subdomain information output unit 14 performs morphological analysis on the use case descriptions acquired in step S401 to extract subjects, and groups the use case descriptions by subject.

次いで、ステップS502において、サブドメイン情報出力部14は、グループ化したユースケース記述に対してループ処理(S503~S507)を実行する。 Next, in step S502, the subdomain information output unit 14 executes loop processing (S503 to S507) on the grouped use case descriptions.

ステップS503において、サブドメイン情報出力部14は、ユースケース記述の目的語と述語のペアを抽出する。 In step S503, the subdomain information output unit 14 extracts object and predicate pairs from the use case description.

次いで、ステップS504において、サブドメイン情報出力部14は、抽出した述語に対して類義語解析を実行することで、述語の類義語一覧を取得する。 Next, in step S504, the subdomain information output unit 14 performs a synonym analysis on the extracted predicate to obtain a list of synonyms for the predicate.

次いで、ステップS505において、サブドメイン情報出力部14は、同じユースケース記述のグループ内で、目的語の類義語解析を実行して当該目的語の類義語を取得する。そして、サブドメイン情報出力部14は、処理対象のユースケース記述(すなわち目的語と述語のペアを抽出したユースケース記述)の目的語に対して、目的語又はその目的語の類義語が一致するユースケース記述を同一グループから取得する。さらに、サブドメイン情報出力部14は、取得したユースケース記述の述語の類義語解析を実行して当該述語の類義語を取得し、処理対象のユースケース記述の述語と一致又はその類義語と一致するユースケース記述を取得する。 Next, in step S505, the subdomain information output unit 14 performs a synonym analysis of the object within the same group of use case descriptions to obtain synonyms of the object. The subdomain information output unit 14 then obtains use case descriptions from the same group that match the object or a synonym of the object in the use case description to be processed (i.e., the use case description from which the object and predicate pair has been extracted). Furthermore, the subdomain information output unit 14 performs a synonym analysis of the predicate in the obtained use case description to obtain synonyms of the predicate, and obtains use case descriptions that match the predicate in the use case description to be processed or that match its synonyms.

サブドメイン情報出力部14は、ユースケース記述の目的語同士の意味的な距離及び述語同士の意味的な距離を類義語解析で取得し、それらの平均値を類似度として記録する。そして、サブドメイン情報出力部14は、解析処理の結果、該当するユースケース記述が存在すると判定した場合(S505のYES判定)、ステップS506に進む。該当するユースケース記述とは、目的語及び述語ともに上記条件(それ自体又は類義語が一致)を満たすユースケース記述である。一方、サブドメイン情報出力部14は、該当するユースケース記述が存在しないと判定した場合(S505のNO判定)、ステップS507に進む。 The subdomain information output unit 14 obtains the semantic distance between the objects of the use case description and the semantic distance between the predicates of the use case description by synonym analysis, and records the average value of these as the similarity. If the subdomain information output unit 14 determines that a corresponding use case description exists as a result of the analysis process (YES judgment in S505), the process proceeds to step S506. A corresponding use case description is a use case description in which both the object and the predicate satisfy the above condition (match themselves or a synonym). On the other hand, if the subdomain information output unit 14 determines that a corresponding use case description does not exist (NO judgment in S505), the process proceeds to step S507.

ステップS506において、サブドメイン情報出力部14は、ステップS505において取得したユースケース記述(文単位)を、処理対象のユースケース記述と同一のサブドメインに分類する。サブドメインの名称としては、処理対象のユースケース記述の目的語と述語を組み合わせた文字列でもよいし、「グループ1」のようにグループを生成した順に番号を付けた文字列でもよい。 In step S506, the subdomain information output unit 14 classifies the use case description (sentence unit) acquired in step S505 into the same subdomain as the use case description to be processed. The name of the subdomain may be a character string combining the object and predicate of the use case description to be processed, or a character string numbered in the order in which the groups were generated, such as "Group 1."

ステップS507において、サブドメイン情報出力部14は、処理対象のユースケース記述を新規のサブドメインに分類する。サブドメインの名称としては、処理対象のユースケース記述の目的語と述語を組み合わせた文字列でもよいし、「グループ1」のようにグループを生成した順に番号を付けた文字列でもよい。 In step S507, the subdomain information output unit 14 classifies the use case description to be processed into a new subdomain. The name of the subdomain may be a character string that combines the object and predicate of the use case description to be processed, or a character string numbered in the order in which the groups are generated, such as "Group 1."

そして、ステップS508において、サブドメイン情報出力部14は、グループ化したユースケース記述のうち、まだサブドメインに分類されていないユースケース記述があるかを確認する。そして、未分類のユースケース記述が残っている場合は、サブドメイン情報出力部14は、ステップS502に戻りループ処理を続ける。一方、未分類のユースケース記述が残っていない場合は、サブドメイン情報出力部14は、ループ処理を終了する。本ステップの処理が終了したら、サブドメイン分類処理が終了し、ステップS403へ移行する。 Then, in step S508, the subdomain information output unit 14 checks whether any of the grouped use case descriptions have not yet been classified into a subdomain. If any unclassified use case descriptions remain, the subdomain information output unit 14 returns to step S502 and continues the loop processing. On the other hand, if no unclassified use case descriptions remain, the subdomain information output unit 14 ends the loop processing. When the processing of this step ends, the subdomain classification processing ends, and the process proceeds to step S403.

[ユースケース記述情報の分類の具体例]
ここで、本実施形態に係るユースケース記述の分類について図6を参照して具体例を挙げて説明する。
図6は、ユースケース記述の分類の具体例を示す図である。
[Specific examples of classification of use case description information]
Here, the classification of use case descriptions according to this embodiment will be described with a specific example with reference to FIG.
FIG. 6 is a diagram showing a specific example of classification of use case descriptions.

ユースケース記述情報17として、ユースケース記述(a)~(f)が入力された場合を考える。ユースケース記述(a)は「契約者は保険商品を閲覧できる」、ユースケース記述(b)は「契約者は保険情報を参照できる」、ユースケース記述(c)は「保険契約者は契約の進捗を確認できる」である。また、ユースケース記述(d)は「担当者は契約の進捗を確認できる」、ユースケース記述(e)は「保険担当者は保険商品を閲覧できる」、ユースケース記述(f)は「契約者は契約内容を確認できる」である。 Consider the case where use case descriptions (a) to (f) are input as use case description information 17. Use case description (a) is "The policyholder can view the insurance product", use case description (b) is "The policyholder can refer to insurance information", and use case description (c) is "The policyholder can check the progress of the contract". In addition, use case description (d) is "The person in charge can check the progress of the contract", use case description (e) is "The insurance person in charge can view the insurance product", and use case description (f) is "The policyholder can check the contract details".

図6(1)では、ユースケース記述(a)~(f)に対して形態素解析を行い、主語と、述語と目的語の組合せとを抽出する(S501~S503に相当)。 In FIG. 6 (1), morphological analysis is performed on use case descriptions (a) to (f) to extract subjects and combinations of predicates and objects (corresponding to S501 to S503).

図6(2)では、同じ主語を持つユースケース記述を分類、及び類義語解析により主語に類似の名詞を持つユースケース記述をグループ化する(S501に相当)。これにより、ユースケース記述(a)~(c),(f)がグループG1に分類され、ユースケース記述(d),(e)がグループG2に分類される。 In FIG. 6 (2), use case descriptions with the same subject are classified, and use case descriptions with similar nouns in the subject are grouped by synonym analysis (corresponding to S501). As a result, use case descriptions (a)-(c) and (f) are classified into group G1, and use case descriptions (d) and (e) are classified into group G2.

そして、図6(3)では、目的語が類似し、かつ述語も類義語であるユースケース記述があれば、それらを同じサブドメイングループとして分類する(S505,S506に相当)。また、その条件を満たすユースケース記述が見つからない場合は、新規サブドメイングループを作成する(S505,S507に相当)。 In FIG. 6 (3), if there are use case descriptions with similar objects and synonymous predicates, they are classified into the same subdomain group (corresponding to S505 and S506). If no use case description that meets these conditions is found, a new subdomain group is created (corresponding to S505 and S507).

これにより、グループG1は、ユースケース記述(a),(b)を含むグループG11と、ユースケース記述(c),(f)を含むグループG12に分割される。また、グループG2は、ユースケース記述(d)を含むグループG21と、ユースケース記述(e)を含むグループG22に分割される。 As a result, group G1 is divided into group G11, which includes use case descriptions (a) and (b), and group G12, which includes use case descriptions (c) and (f). Group G2 is divided into group G21, which includes use case description (d), and group G22, which includes use case description (e).

そして、後述するように、このユースケース記述の分類結果に対して、ステップS403の過去設計情報を用いた解析処理が行われることで、サブドメイン候補情報が作成される。 Then, as described below, the classification results of this use case description are subjected to an analysis process using past design information in step S403, and subdomain candidate information is created.

[過去設計情報解析処理]
次に、マイクロサービス設計支援システム10における過去設計情報解析処理(S403のサブルーチン)について図7を用いて説明する。
図7は、サブドメイン情報出力部14による過去設計情報解析処理の手順の例を示すフローチャートである。
[Past design information analysis processing]
Next, the past design information analysis process (subroutine of S403) in the microservice design support system 10 will be described with reference to FIG.
FIG. 7 is a flowchart showing an example of a procedure for past design information analysis processing by the subdomain information output unit 14.

ステップS701において、サブドメイン情報出力部14は、過去設計情報22(図11参照)を取得する。 In step S701, the subdomain information output unit 14 acquires the past design information 22 (see FIG. 11).

次いで、ステップS702において、サブドメイン情報出力部14は、現在処理中の情報と過去設計情報22との類似度を算出する。類似度算出処理の詳細については、図8のフローチャートを用いて説明する。現在処理中の情報とは、後述する図8のステップS801~S803で取得したユビキタス言語、業界・業種情報、及び組織情報である。 Next, in step S702, the subdomain information output unit 14 calculates the similarity between the information currently being processed and the previous design information 22. Details of the similarity calculation process will be explained using the flowchart in FIG. 8. The information currently being processed is the ubiquitous language, industry/business type information, and organization information acquired in steps S801 to S803 in FIG. 8, which will be described later.

次いで、ステップS703において、サブドメイン情報出力部14は、ステップS702で算出した類似度が閾値以上であるかを確認する。サブドメイン情報出力部14は、類似度が閾値以上であると判定した場合(S703のYES判定)、ステップS704に進み、類似度が閾値に満たないと判定した場合(S703のNO判定)、過去設計情報解析処理の処理を終了する。 Next, in step S703, the subdomain information output unit 14 checks whether the similarity calculated in step S702 is equal to or greater than a threshold. If the subdomain information output unit 14 determines that the similarity is equal to or greater than the threshold (YES in S703), the process proceeds to step S704. If the subdomain information output unit 14 determines that the similarity is less than the threshold (NO in S703), the process ends the past design information analysis process.

ここで、閾値についてはマイクロサービス設計支援システム10で事前に定義してもよい。また、過去設計情報解析処理を実行時に、ユーザインタフェース部11を介してユーザが指定してもよい。さらに、マイクロサービス設計支援システム10では、閾値を一つのみ保持してもよいし、複数の閾値を保持してもよい。複数の閾値を保持する場合は、類似度が各閾値以上となるかを判定し、閾値以上となった類似度を持つ過去設計情報だけステップS704に進むことで、複数の処理結果を生成することができる。 Here, the threshold value may be defined in advance in the microservice design support system 10. Also, when executing the past design information analysis process, the user may specify it via the user interface unit 11. Furthermore, the microservice design support system 10 may hold only one threshold value, or may hold multiple threshold values. When multiple threshold values are held, it is possible to generate multiple processing results by determining whether the similarity is equal to or greater than each threshold value, and proceeding to step S704 only for past design information having a similarity equal to or greater than the threshold value.

ステップS704において、サブドメイン情報出力部14は、過去設計情報22(複数の過去設計情報)のうち類似度が閾値以上の過去設計情報のサブドメイン情報113を取得する。 In step S704, the subdomain information output unit 14 acquires subdomain information 113 of past design information 22 (multiple pieces of past design information) whose similarity is equal to or greater than a threshold value.

次いで、ステップS705において、サブドメイン情報出力部14は、過去設計情報22の該当するサブドメイン情報113に含まれるユースケース記述を取得し、形態素解析により文の成分を主語と述語と目的語に分類し、類義語解析により各成分に含まれる品詞の類義語を取得する。また、サブドメイン情報出力部14は、現在処理中のサブドメイン候補情報の各サブドメインに含まれるユースケース記述を取得し、形態素解析により主語と述語と目的語に分類し、類義語解析により各品詞の類義語を取得する。 Next, in step S705, the subdomain information output unit 14 acquires the use case description included in the corresponding subdomain information 113 of the past design information 22, classifies the components of the sentence into subject, predicate, and object by morphological analysis, and acquires synonyms of the parts of speech included in each component by thesaurus analysis. The subdomain information output unit 14 also acquires the use case description included in each subdomain of the subdomain candidate information currently being processed, classifies them into subject, predicate, and object by morphological analysis, and acquires synonyms of each part of speech by thesaurus analysis.

そして、サブドメイン情報出力部14は、過去設計情報22と現在処理中のサブドメイン候補情報のユースケース記述の各品詞が一致するか、又はその類義語が一致するかを確認する。そして、サブドメイン情報出力部14は、比較対象の各品詞が一致又はその類義語が一致する場合は、該当するユースケース記述を過去設計情報22の各サブドメインに割り当てた情報を新しいサブドメイン候補情報として生成する。本ステップの処理が終了したら、過去設計情報解析処理が終了し、ステップS404へ移行する。 Then, the subdomain information output unit 14 checks whether the parts of speech of the use case descriptions in the past design information 22 and the subdomain candidate information currently being processed match, or whether their synonyms match. If the parts of speech of the comparison targets match, or their synonyms match, the subdomain information output unit 14 generates information in which the corresponding use case descriptions are assigned to each subdomain of the past design information 22 as new subdomain candidate information. When the processing of this step is completed, the past design information analysis processing is completed, and the process proceeds to step S404.

[過去設計情報に対する類似度算出処理]
次に、マイクロサービス設計支援システム10における過去設計情報に対する類似度算出処理(S702のサブルーチン)について図8を用いて説明する。
図8は、サブドメイン情報出力部14による過去設計情報に対する類似度算出処理の手順の例を示すフローチャートである。
[Similarity calculation process for past design information]
Next, the similarity calculation process (subroutine of S702) for past design information in the microservice design support system 10 will be described with reference to FIG.
FIG. 8 is a flowchart showing an example of a procedure for calculating a similarity between previous design information and the subdomain information output unit 14. In FIG.

ステップS801において、サブドメイン情報出力部14は、現在処理中のサブドメイン候補情報のユビキタス言語を取得する。 In step S801, the subdomain information output unit 14 acquires the ubiquitous language of the subdomain candidate information currently being processed.

次いで、ステップS802において、サブドメイン情報出力部14は、現在処理中のサブドメイン候補情報の業界・業種情報を取得する。業界・業種情報は、図示しない設定ファイルに当該情報を持たせておいて、マイクロサービス設計支援システム10の実行時にマイクロサービス設計支援システム10が指定してもよい。あるいは、ユーザインタフェース部11を介してユーザが、業界・業種情報(例えば、生命保険など)を指定してもよい。 Next, in step S802, the subdomain information output unit 14 acquires the industry/business type information of the subdomain candidate information currently being processed. The industry/business type information may be stored in a configuration file (not shown) and may be specified by the microservice design support system 10 when the microservice design support system 10 is executed. Alternatively, the user may specify the industry/business type information (e.g., life insurance) via the user interface unit 11.

次いで、ステップS803において、サブドメイン情報出力部14は、現在処理中のサブドメイン候補情報に関係する組織情報を取得する。組織情報は、業界・業種情報の場合と同様に、マイクロサービス設計支援システム10の実行時に指定してもよいし、ユーザインタフェース部11を介してユーザが指定してもよい。 Next, in step S803, the subdomain information output unit 14 acquires organizational information related to the subdomain candidate information currently being processed. As with the industry/business type information, the organizational information may be specified when the microservice design support system 10 is executed, or may be specified by the user via the user interface unit 11.

次いで、ステップS804において、サブドメイン情報出力部14は、ステップS801,S802,S803の各情報に対してループ処理を実行する。 Next, in step S804, the subdomain information output unit 14 executes a loop process for each piece of information from steps S801, S802, and S803.

ステップS805において、サブドメイン情報出力部14は、上記各情報と過去設計情報22との類似度を算出する。すなわち、サブドメインに該当する過去設計情報22のユビキタス言語、業界・業種情報、組織情報を取得し、ステップS801,S802,S803の各情報との一致度合い(一致率)を算出する。 In step S805, the subdomain information output unit 14 calculates the similarity between each of the above information and the past design information 22. That is, it acquires the ubiquitous language, industry/business type information, and organization information of the past design information 22 corresponding to the subdomain, and calculates the degree of match (match rate) with each of the information in steps S801, S802, and S803.

例えば、ユビキタス言語の一致度合いは、過去設計情報全体の何割が一致しているかを類似度として算出してもよい。業界・業種情報の一致度合いは、過去設計情報内に同一の業界・業種情報を持っているかどうかを判定し、持っている場合は1、持っていない場合は0とスコアリングしてよい。組織情報の一致度合いは、過去設計情報全体の何割が一致しているかを類似度として算出してもよいし、業界・業種情報が一致している場合のみ組織情報の一致度合いを算出してもよい。各情報の一致度合いを合計した数字を類似度として用いてもよいし、各情報の平均値を類似度として用いてもよい。 For example, the degree of match of ubiquitous language may be calculated as the similarity based on what percentage of all previous design information matches. The degree of match of industry/business type information may be calculated by determining whether the previous design information contains the same industry/business type information, and if so, a score of 1 may be assigned, and if not, a score of 0 may be assigned. The degree of match of organization information may be calculated as the similarity based on what percentage of all previous design information matches, or the degree of match of organization information may be calculated only if the industry/business type information matches. The sum of the degrees of match of each piece of information may be used as the similarity, or the average value of each piece of information may be used as the similarity.

そして、ステップS806において、サブドメイン情報出力部14は、上記の各情報のうち、まだ過去設計情報22との一致度合いを算出していない情報があるかを確認し、未処理の情報が残っている場合はステップS804に戻りループ処理を続ける。本ステップの処理が終了したら、過去設計情報に対する類似度算出処理が終了し、ステップS703へ移行する。 Then, in step S806, the subdomain information output unit 14 checks whether there is any information among the above information for which the degree of coincidence with the past design information 22 has not yet been calculated, and if unprocessed information remains, the process returns to step S804 and continues the loop process. When the process of this step ends, the similarity calculation process for the past design information ends, and the process proceeds to step S703.

[コンテキスト情報出力処理]
次に、マイクロサービス設計支援システム10におけるコンテキスト情報出力処理について図9を用いて説明する。
図9は、コンテキスト情報出力処理の手順の例を示すフローチャートである。コンテキスト情報出力処理は、コンテキスト情報出力部15によって実行される。
[Context information output process]
Next, the context information output process in the microservice design support system 10 will be described with reference to FIG.
9 is a flowchart illustrating an example of a procedure for a context information output process. The context information output process is executed by the context information output unit 15.

ステップS901において、コンテキスト情報出力部15は、サブドメイン情報23から該当のサブドメイン情報を取得する。 In step S901, the context information output unit 15 obtains the relevant subdomain information from the subdomain information 23.

次いで、ステップS902において、コンテキスト情報出力部15は、サブドメイン情報23の属性情報を確認し、その属性情報の順にサブドメイン情報を並べ替える。属性情報は、各サブドメインが「コアサブドメイン」、「汎用サブドメイン」、「支援サブドメイン」のどれに属しているかで並べ替えてもよい。 Next, in step S902, the context information output unit 15 checks the attribute information of the subdomain information 23 and sorts the subdomain information in the order of the attribute information. The attribute information may be sorted according to whether each subdomain belongs to a "core subdomain," a "general subdomain," or a "support subdomain."

次いで、ステップS903において、コンテキスト情報出力部15は、サブドメイン情報23の各サブドメインの名称を基に、コンテキスト候補情報を生成する。 Next, in step S903, the context information output unit 15 generates context candidate information based on the names of each subdomain in the subdomain information 23.

次いで、ステップS904において、コンテキスト情報出力部15は、ユーザインタフェース部11を介してユーザにコンテキスト候補情報を提示する(後述する図20参照)。ユーザは、ユーザインタフェース部11を介して、コンテキスト情報の名称を変更したり、コンテキスト情報をさらに統合又は分割したりすることができる。コンテキスト情報出力部15は、ユーザインタフェース部11を介してユーザによる編集操作を受け付けてコンテキスト情報を更新する。 Next, in step S904, the context information output unit 15 presents the context candidate information to the user via the user interface unit 11 (see FIG. 20 described later). The user can change the name of the context information or further integrate or divide the context information via the user interface unit 11. The context information output unit 15 accepts an editing operation by the user via the user interface unit 11 and updates the context information.

次いで、ステップS905において、コンテキスト情報出力部15は、ユーザがユーザインタフェース部11を介してコンテキスト間の接続関係(後述する図21参照)を作成、編集した操作を受け付けて、コンテキスト間の接続関係をコンテキストマップ情報として生成する。 Next, in step S905, the context information output unit 15 accepts an operation by the user to create and edit a connection relationship between contexts (see FIG. 21 described later) via the user interface unit 11, and generates the connection relationship between contexts as context map information.

次いで、ステップS906において、コンテキスト情報出力部15は、生成したコンテキスト情報とコンテキストマップ情報をコンテキスト情報24に格納する。本ステップの処理が終了したら、コンテキスト情報出力処理が終了する。 Next, in step S906, the context information output unit 15 stores the generated context information and context map information in the context information 24. When the processing of this step is completed, the context information output processing is completed.

[マイクロサービス情報出力処理]
次に、マイクロサービス設計支援システム10におけるマイクロサービス情報出力処理について図10を用いて説明する。
図10は、マイクロサービス情報出力処理の手順の例を示すフローチャートである。マイクロサービス情報出力処理は、マイクロサービス情報出力部16によって実行される。
[Microservice information output processing]
Next, the microservice information output process in the microservice design support system 10 will be described with reference to FIG.
10 is a flowchart illustrating an example of a procedure for a microservice information output process. The microservice information output process is executed by the microservice information output unit 16.

ステップS1001において、マイクロサービス情報出力部16は、該当するコンテキストの情報をコンテキスト情報24から取得する。 In step S1001, the microservice information output unit 16 obtains information about the relevant context from the context information 24.

次いで、ステップS1002において、マイクロサービス情報出力部16は、コンテキスト情報の各コンテキストの属性情報を取得する。属性情報は、各コンテキストに対応するサブドメインが「コアサブドメイン」、「汎用サブドメイン」、「支援サブドメイン」のどれに属しているかを示す情報でもよい。 Next, in step S1002, the microservice information output unit 16 acquires attribute information for each context in the context information. The attribute information may be information indicating whether the subdomain corresponding to each context belongs to a "core subdomain," a "general subdomain," or a "support subdomain."

次いで、ステップS1003において、マイクロサービス情報出力部16は、ステップS1002で取得した属性情報を使用してマイクロサービス候補情報を生成する。一例として、コンテキストの属性情報がコアサブドメイン(例えば、後述する図19の「査定」)である場合に、そのコンテキストをマイクロサービス候補情報として生成してよい。 Next, in step S1003, the microservice information output unit 16 generates microservice candidate information using the attribute information acquired in step S1002. As an example, when the attribute information of a context is a core subdomain (for example, "assessment" in FIG. 19 described later), the context may be generated as microservice candidate information.

次いで、ステップS1004において、マイクロサービス情報出力部16は、ユーザインタフェース部11を介して、マイクロサービス候補情報をユーザに提示する。マイクロサービス候補情報は、コンテキスト情報24に格納したコンテキスト情報のコンテキストマップ上に該当箇所が識別できるよう強調表示してよいし、文字列で該当コンテキストを示してもよい。ユーザは、ユーザインタフェース部11を介して、マイクロサービス候補情報を追加したり削除したりして編集することができる。マイクロサービス情報出力部16は、ユーザインタフェース部11を介して、マイクロサービス候補情報の編集操作を受け付けて、マイクロサービス候補情報を更新する。 Next, in step S1004, the microservice information output unit 16 presents the microservice candidate information to the user via the user interface unit 11. The microservice candidate information may be highlighted so that the relevant portion can be identified on the context map of the context information stored in the context information 24, or the relevant context may be indicated by a character string. The user can edit the microservice candidate information by adding or deleting it via the user interface unit 11. The microservice information output unit 16 accepts an editing operation of the microservice candidate information via the user interface unit 11 and updates the microservice candidate information.

次いで、ステップS1005において、マイクロサービス情報出力部16は、マイクロサービス候補情報をマイクロサービス情報としてマイクロサービス情報25に格納する。本ステップの処理が終了したら、マイクロサービス情報出力処理が終了する。 Next, in step S1005, the microservice information output unit 16 stores the microservice candidate information as microservice information in the microservice information 25. When the processing of this step is completed, the microservice information output processing is completed.

[過去設計情報]
次に、過去設計情報22の内容について図11を用いて説明する。
図11は、過去設計情報22のデータベースの一例を示す図である。
[Past design information]
Next, the contents of the previous design information 22 will be described with reference to FIG.
FIG. 11 is a diagram showing an example of the database of the past design information 22. As shown in FIG.

過去設計情報22には、業種・業界情報111と、組織情報112と、サブドメイン情報113と、コンテキスト情報114と、マイクロサービス情報115と、が対応づけて設定(格納)されている。 In the past design information 22, business type/industry information 111, organization information 112, subdomain information 113, context information 114, and microservice information 115 are set (stored) in association with each other.

業種・業界情報111は、「生命保険」などこの設計情報が適用されていた業種・業界を示す文字列を設定してもよいし、外部の業種・業界辞書の識別子となる文字列(例えば「001」)を設定してもよい。 The business type/industry information 111 may be set to a character string indicating the business type/industry to which this design information was applied, such as "life insurance," or may be set to a character string that serves as an identifier for an external business type/industry dictionary (e.g., "001").

組織情報112は、マイクロサービス化が検討される業務プロセスを利用している顧客についての情報であって、例えば、ユースケース記述に関係する会社、部署やチーム等を示す情報(例えば、名称、英数字等による識別子)である。 Organizational information 112 is information about customers who use the business process for which microservices are being considered, and is, for example, information indicating the company, department, team, etc. related to the use case description (for example, a name, an alphanumeric identifier, etc.).

サブドメイン情報113は、設計情報に含まれるサブドメインが1個以上設定されており、各サブドメインは図12に示すサブドメイン情報23の形式で格納されている。 Subdomain information 113 contains one or more subdomains included in the design information, and each subdomain is stored in the format of subdomain information 23 shown in FIG. 12.

コンテキスト情報114は、設計情報に含まれるコンテキストが1個以上設定されており、図13に示すコンテキスト情報24の形式で格納されている。 The context information 114 contains one or more contexts included in the design information, and is stored in the format of context information 24 shown in FIG. 13.

マイクロサービス情報115は、設計情報に含まれるマイクロサービス情報が1個以上設定されており、図14に示すマイクロサービス情報25の形式で格納されている。図11では、対象となるコンテキスト情報114の情報(例えば、査定)に対して○印が表示されているが、コンテキスト情報114の名称を示す文字列等を表示してもよい。 Microservice information 115 is set with one or more pieces of microservice information included in the design information, and is stored in the format of microservice information 25 shown in FIG. 14. In FIG. 11, a circle is displayed for the information of the target context information 114 (e.g., assessment), but a character string indicating the name of the context information 114 may also be displayed.

例えば、図11では、業種・業界情報111に“生命保険”、組織情報112に“A社営業部”が設定されている。サブドメイン情報113に“商品閲覧”、“受付”、“査定”が設定されている。同様に、コンテキスト情報114にも“商品閲覧”、“受付”、“査定”が設定されている。さらに、マイクロサービス情報115において、コンテキスト情報114の“査定”が指定されている。 For example, in FIG. 11, "Life Insurance" is set in the business type/industry information 111, and "Company A Sales Department" is set in the organization information 112. "Product Viewing", "Reception", and "Assessment" are set in the subdomain information 113. Similarly, "Product Viewing", "Reception", and "Assessment" are also set in the context information 114. Furthermore, in the microservice information 115, "Assessment" from the context information 114 is specified.

[サブドメイン情報]
次に、サブドメイン情報23の内容について図12を用いて説明する。
図12は、サブドメイン情報23のデータベースの一例を示す図である。
[Subdomain Information]
Next, the contents of the sub-domain information 23 will be described with reference to FIG.
FIG. 12 is a diagram showing an example of the database of the subdomain information 23. As shown in FIG.

サブドメイン情報23には、サブドメイン121と、関連するユースケース記述122と、関連するユビキタス言語123と、類似度124と、属性情報125と、が対応づけて設定(格納)されている。 In the subdomain information 23, a subdomain 121, a related use case description 122, a related ubiquitous language 123, a similarity 124, and attribute information 125 are set (stored) in association with each other.

サブドメイン121には、そのサブドメインを示す文字列が1個設定されている。業務ドメイン(対象業務範囲)に対してサブドメインは複数設定される。よって、サブドメイン情報23には、サブドメイン121の種類ごとにサブドメインが入力される。また、サブドメイン121の種類ごとに、サブドメイン情報23が作成されると考えてもよい。サブドメイン情報23内の情報は、サブドメインごとに登録されている。 A subdomain 121 is set with one character string indicating the subdomain. Multiple subdomains are set for a business domain (target business range). Therefore, a subdomain is entered for each type of subdomain 121 in the subdomain information 23. It can also be thought of as the subdomain information 23 being created for each type of subdomain 121. Information in the subdomain information 23 is registered for each subdomain.

ユースケース記述122には、サブドメイン情報出力部14の解析により、サブドメイン121の情報と関連付けられたユースケース記述が設定されている。 In the use case description 122, a use case description associated with the information of the subdomain 121 is set by the analysis of the subdomain information output unit 14.

ユビキタス言語123には、ユビキタス言語生成部13とサブドメイン情報出力部14との解析により、サブドメイン121の情報と関連付けられたユビキタス言語が設定されている。 In the ubiquitous language 123, a ubiquitous language associated with the information of the subdomain 121 is set through analysis by the ubiquitous language generation unit 13 and the subdomain information output unit 14.

類似度124には、サブドメイン情報出力部14の類似度算出処理(図7のS702)で算出した、サブドメイン121の情報(図12の例では査定)と過去設計情報22との類似度が設定されている。 The similarity 124 is set to the similarity between the information of the subdomain 121 (assessment in the example of FIG. 12) and the past design information 22, calculated in the similarity calculation process (S702 in FIG. 7) of the subdomain information output unit 14.

属性情報125には、ユーザがユーザインタフェース部11を介して関連するサブドメインに設定した属性情報が設定されている。本実施形態では、サブドメインとして「コアサブドメイン」、「汎用サブドメイン」、「支援サブドメイン」が用意されている(後述する図19参照)。 The attribute information 125 contains attribute information that the user has set for the related subdomain via the user interface unit 11. In this embodiment, the subdomains provided are "core subdomain," "general subdomain," and "support subdomain" (see FIG. 19 described later).

「コアサブドメイン」は、業務ドメインの中核をなすサブドメインである。「汎用サブドメイン」は、対象の業界に限らず他の業界でも用いられる汎用のサブドメインである。「支援サブドメイン」は、コアサブドメインをサポートするためのサブドメインである。 The "core subdomain" is the subdomain that forms the core of the business domain. The "general-purpose subdomain" is a general-purpose subdomain that can be used not only in the target industry but also in other industries. The "support subdomain" is a subdomain that supports the core subdomain.

例えば、図12では、サブドメイン121に“査定”、ユースケース記述122に“保険事業者は書類を点検する”、“保険事業者は健康状態を審査する”、“保険事業者は収入状態を審査する”が設定されている。ユビキタス言語123には“書類”、“点検”、“審査”が設定されている。さらに、類似度124には“0.80”、属性情報125には“コアサブドメイン”が設定されている。なお、図10~図12に格納される情報は、業務ドメインの範囲内でユースケース記述に基づいて蓄積されていく。 For example, in FIG. 12, "assessment" is set in subdomain 121, and "insurance company reviews documents", "insurance company examines health status", and "insurance company examines income status" are set in use case description 122. "Documents", "inspection", and "examination" are set in ubiquitous language 123. Furthermore, "0.80" is set in similarity 124, and "core subdomain" is set in attribute information 125. Note that the information stored in FIGS. 10 to 12 is accumulated based on use case descriptions within the scope of the business domain.

[コンテキスト情報]
次に、コンテキスト情報24の内容について図13を用いて説明する。
図13は、コンテキスト情報24のデータベースの一例を示す図である。
[Context Information]
Next, the contents of the context information 24 will be described with reference to FIG.
FIG. 13 is a diagram showing an example of a database of the context information 24. As shown in FIG.

コンテキスト情報24には、コンテキスト131と、関連するサブドメイン121と、関連するユースケース記述122と、関連するユビキタス言語123と、類似度124と、属性情報125と、が対応づけて設定(格納)されている。 In the context information 24, a context 131, a related subdomain 121, a related use case description 122, a related ubiquitous language 123, a similarity 124, and attribute information 125 are set (stored) in association with each other.

コンテキスト131には、そのコンテキストを示す文字列が1個設定されている。コンテキスト131の情報は、サブドメイン121の情報と同じであることが多い。
サブドメイン121には、コンテキスト情報出力部15によりコンテキスト131の情報に関連付けられたサブドメインを示す文字列が1個以上設定されている。この例では、コンテキスト131の“査定”にサブドメイン121の“査定”が関連付けられている。1つのコンテキストに対するサブドメインは1つとは限らず、複数の場合もある。
ユースケース記述122、ユビキタス言語123、類似度124、及び属性情報125については、説明を省略する。
A single character string indicating the context is set in the context 131. The information in the context 131 is often the same as the information in the subdomain 121.
In the subdomain 121, one or more character strings indicating a subdomain associated with information of the context 131 by the context information output unit 15 are set. In this example, the "assessment" of the subdomain 121 is associated with the "assessment" of the context 131. The number of subdomains for one context is not limited to one, and there may be multiple subdomains.
Description of the use case description 122, the ubiquitous language 123, the similarity 124, and the attribute information 125 will be omitted.

[マイクロサービス情報]
次に、マイクロサービス情報25の内容について図14を用いて説明する。
図14は、マイクロサービス情報25のデータベースの一例を示す図である。
[Microservices Information]
Next, the contents of the microservice information 25 will be described with reference to FIG.
FIG. 14 is a diagram illustrating an example of a database of the microservice information 25.

マイクロサービス情報25には、マイクロサービス141と、関連するコンテキスト131と、関連するサブドメイン121と、関連するユースケース記述122と、関連するユビキタス言語123と、類似度124と、属性情報125と、が対応づけて設定(格納)されている。 In the microservice information 25, a microservice 141, a related context 131, a related subdomain 121, a related use case description 122, a related ubiquitous language 123, a similarity 124, and attribute information 125 are set (stored) in association with each other.

マイクロサービス141には、そのマイクロサービスを示す文字列が1個設定されている。
コンテキスト131には、マイクロサービス情報出力部16によりマイクロサービス141の情報に関連付けられたコンテキストを示す文字列が1個設定されている。
サブドメイン121には、コンテキスト情報出力部15によりコンテキスト131の情報に関連付けられたサブドメインを示す文字列が1個以上設定されている。
ユースケース記述122、ユビキタス言語123、類似度124、及び属性情報125については、説明を省略する。
Each microservice 141 has one character string set that indicates the microservice.
In the context 131, one character string indicating a context associated with the information of the microservice 141 by the microservice information output unit 16 is set.
In the sub-domain 121, one or more character strings indicating a sub-domain associated with the information of the context 131 by the context information output unit 15 are set.
Description of the use case description 122, the ubiquitous language 123, the similarity 124, and the attribute information 125 will be omitted.

[ユースケース記述入力の表示例]
次に、ユースケース記述入力の表示例について図15を用いて説明する。
図15は、ユースケース記述を入力するユーザインタフェース部11の表示例を示す図である。図15では、ユースケース記述の入力欄を含むインタフェース画面150の例が示されている。
[Example of use case description input display]
Next, a display example of a use case description input will be described with reference to FIG.
15 is a diagram showing an example of a display on the user interface unit 11 for inputting a use case description. In FIG 15, an example of an interface screen 150 including an input field for a use case description is shown.

インタフェース画面150は、「ユースケース」ボタン151、「ユビキタス」ボタン152、「サブドメイン」ボタン153、「境界付けられたコンテキスト」ボタン154、「コンテキストマップ」ボタン155、ユースケース記述の入力欄156、「OK」ボタン、及び「キャンセル」ボタンを有する。 The interface screen 150 has a "Use Case" button 151, a "Ubiquitous" button 152, a "Subdomain" button 153, a "Bounded Context" button 154, a "Context Map" button 155, an input field 156 for use case description, an "OK" button, and a "Cancel" button.

「ユースケース」ボタン151が押下されると、ユーザインタフェース部11は、図15に示すようなユースケース記述を入力するインタフェース画面150を表示する。
「ユビキタス」ボタン152が押下されると、ユーザインタフェース部11は、図16に示すようなユビキタス言語を確認・編集するインタフェース画面160を表示する。
「サブドメイン」ボタン153が押下されると、ユーザインタフェース部11は、図17に示すようなサブドメイン情報を確認・編集するインタフェース画面170を表示する。
「境界付けられたコンテキスト」ボタン154が押下されると、ユーザインタフェース部11は、図20に示すようなコンテキスト情報を確認・編集するインタフェース画面200を表示する。
「コンテキストマップ」ボタン155が押下されると、ユーザインタフェース部11は、図21に示すようなコンテキストマップを作成するインタフェース画面210を表示する。
When the "Use Case" button 151 is pressed, the user interface unit 11 displays an interface screen 150 for inputting a use case description as shown in FIG.
When the "Ubiquitous" button 152 is pressed, the user interface unit 11 displays an interface screen 160 for confirming and editing the ubiquitous language as shown in FIG.
When the "Sub-domain" button 153 is pressed, the user interface unit 11 displays an interface screen 170 for confirming and editing sub-domain information as shown in FIG.
When the "bounded context" button 154 is pressed, the user interface unit 11 displays an interface screen 200 for confirming and editing context information as shown in FIG.
When the "context map" button 155 is pressed, the user interface unit 11 displays an interface screen 210 for creating a context map as shown in FIG.

入力欄156は、ユーザがユースケース記述を整理して入力すること支援するために、カテゴリ別の入力欄を有する。図15ではカテゴリ(a)~(g)の例が示されている。各カテゴリには、各カテゴリについての説明を表示するためのアシストボタン「?」が表示される。 The input field 156 has input fields for each category to help the user organize and input use case descriptions. Figure 15 shows examples of categories (a) to (g). Each category has an assist button "?" to display an explanation of the category.

例えば、カテゴリ(a)は「Product/Customer Value」である。カテゴリ(a)にはユースケース記述として「顧客は保険商品を閲覧できる」と入力されている。
カテゴリ(b)は「Price/Cost」である。カテゴリ(b)にはユースケース記述として「保険事業者(新契約)は保険料の入金を確認する」と入力されている。
カテゴリ(c)は「Place/Convenience」である。カテゴリ(c)にはユースケース記述として「顧客はWebブラウザでアクセスする」と入力されている。
カテゴリ(d)は「Promotion/Communication」である。カテゴリ(d)にはユースケース記述として「顧客は保険商品のレコメンドを受けられる」と入力されている。
For example, category (a) is "Product/Customer Value." In category (a), "Customers can view insurance products" is input as a use case description.
Category (b) is "Price/Cost." The use case description "The insurance company (new contract) confirms the payment of the insurance premium" is input to category (b).
Category (c) is "Place/Convenience." In category (c), "Customers access using a Web browser" is entered as a use case description.
Category (d) is “Promotion/Communication.” In category (d), “Customers can receive recommendations for insurance products” is entered as a use case description.

カテゴリ(e)は「Personnel」である。カテゴリ(e)にはユースケース記述として「顧客が本システムを利用する」と入力されている。
カテゴリ(f)は「Process」である。カテゴリ(f)にはユースケース記述として「保険事業者(全部署共通)は契約者への各種通知を行う」と入力されている。
カテゴリ(g)は「Physical Evidence」である。カテゴリ(g)にはユースケース記述として「保険事業者(新契約)は権利者へ保険証券を送付する」と入力されている。
The category (e) is “Personnel.” “A customer uses this system” is input as the use case description in the category (e).
Category (f) is "Process." The use case description "The insurance company (common to all departments) provides various notifications to policyholders" is input to category (f).
Category (g) is “Physical Evidence.” The use case description “The insurance company (new contract) sends the insurance policy to the right holder” is input to category (g).

ユースケース記述は一つの入力欄156に複数行をまとめて入力することができる。全てのカテゴリのユースケース記述を入力欄156に入力後、下部の「OK」ボタンを押下することで、ユースケース記述がユースケース入力部12に送信され、図16のユビキタス言語の表示例に遷移する。 The use case description can be entered in multiple lines in one input field 156. After entering the use case descriptions for all categories in the input fields 156, pressing the "OK" button at the bottom sends the use case description to the use case input unit 12 and transitions to the example of the ubiquitous language display in Figure 16.

[ユビキタス言語の表示例]
次に、ユビキタス言語の表示例について図16を用いて説明する。
図16は、ユビキタス言語を確認・編集するユーザインタフェース部11の表示例を示す図である。図16では、ユビキタス言語の候補一覧を確認し、ユビキタス言語を採用するインタフェース画面160の例が示されている。
[Ubiquitous language display example]
Next, a display example of ubiquitous language will be described with reference to FIG.
Fig. 16 is a diagram showing a display example of the user interface unit 11 for confirming and editing a ubiquitous language. Fig. 16 shows an example of an interface screen 160 for confirming a list of ubiquitous language candidates and adopting a ubiquitous language.

インタフェース画面160において、左側の欄161にユビキタス言語生成部13が生成したユビキタス言語の候補一覧が表示されている。ユーザは、候補一覧の中でユビキタス言語として使用する用語を選択し、画面中央の「移動」ボタン163を押下することで、選択した用語を右側のユビキタス言語の欄162に移すことができる。右側のユビキタス言語の欄162へ移動した用語を取り消す場合は、ユビキタス言語の一覧の中で取り消す用語を選択し、「戻り」ボタン164を押下することで移動が取り消される。 In the interface screen 160, a list of candidate ubiquitous languages generated by the ubiquitous language generation unit 13 is displayed in a left-hand column 161. The user can select a term to be used as a ubiquitous language from the candidate list and move the selected term to the ubiquitous language column 162 on the right by pressing a "Move" button 163 in the center of the screen. To cancel a term moved to the ubiquitous language column 162 on the right, the user selects the term to be canceled from the list of ubiquitous languages and presses a "Back" button 164 to cancel the move.

例えば、ユビキタス言語の候補として、「顧客」、「契約者」、「保険事業者(新契約)」、「システム」、「契約」、「必要事項/必要書類(申込)」、「書類」、「点検」、「アクセス」、「認証・認可」、「商品閲覧」、「申込」などが登録されている。この例では、左側の欄161に表示されたユビキタス言語の候補の全てが、右側のユビキタス言語の欄162に移動されている。 For example, the following are registered as ubiquitous language candidates: "customer," "policyholder," "insurance business operator (new contract)," "system," "contract," "required information/required documents (application)," "documents," "inspection," "access," "authentication/authorization," "product viewing," and "application." In this example, all of the ubiquitous language candidates displayed in the left-hand column 161 have been moved to the ubiquitous language column on the right-hand side 162.

さらに、ユーザが「編集」ボタン165を押下することで、編集用ウィンドウが表示され、ユビキタス言語の名称を変更したり、新規に追加したりすることができる。全てのユビキタス言語の選択と編集が完了後に、下部の「OK」ボタンを押下することで、ユビキタス言語がユビキタス言語生成部13に送信され、図17のサブドメイン情報の表示例に遷移する。 Furthermore, when the user presses the "Edit" button 165, an editing window is displayed, allowing the user to change the name of the ubiquitous language or add a new one. After selecting and editing all ubiquitous languages, the user can press the "OK" button at the bottom to send the ubiquitous language to the ubiquitous language generation unit 13, and transition to the example display of subdomain information in Figure 17.

[サブドメイン情報の表示例]
次に、サブドメイン情報の表示例について図17~図19を用いて説明する。
図17は、サブドメイン情報を確認・編集するユーザインタフェース部11の表示例を示す図である。
[Example of subdomain information display]
Next, examples of displaying sub-domain information will be described with reference to FIGS.
FIG. 17 is a diagram showing an example of a display on the user interface unit 11 for confirming and editing subdomain information.

図17では、サブドメイン情報の候補情報を確認・編集するインタフェース画面170の例が示されている。インタフェース画面170において、組織情報171のファイル選択欄、業務情報172のファイル選択欄、サブドメイン情報表示エリア173、「編集」ボタン174を有する。 Figure 17 shows an example of an interface screen 170 for confirming and editing candidate information for subdomain information. The interface screen 170 has a file selection field for organization information 171, a file selection field for business information 172, a subdomain information display area 173, and an "Edit" button 174.

ユーザは、このユースケース記述が関連する組織情報171のファイルと、業務情報172のファイルを指定してアップロードする。組織情報171は、ユースケース記述に関係する部署やチーム等の名称をテキスト形式で渡してもよいし、表計算ソフトのファイル形式で渡してもよい。業務情報172は、ユースケース記述に関係する担当部門や役割名をテキスト形式で渡してもよいし、表計算ソフトのファイル形式で渡してもよい。 The user specifies and uploads a file of organizational information 171 and a file of business information 172 to which this use case description is related. The organizational information 171 may be the names of departments, teams, etc. related to the use case description, and may be passed in text format, or in a spreadsheet file format. The business information 172 may be the names of departments and roles related to the use case description, and may be passed in text format, or in a spreadsheet file format.

サブドメイン情報表示エリア173において、サブドメイン情報の候補は切り替え可能なタブ表示で示されており、複数のサブドメイン情報の候補を切り替えて表示できる。図17では、“候補1”のタグが選択されている。サブドメイン情報は、サブドメイン情報出力部14が生成したサブドメイン候補情報を表示している。 In the subdomain information display area 173, the subdomain information candidates are displayed in a switchable tab display, and multiple subdomain information candidates can be switched and displayed. In FIG. 17, the "Candidate 1" tag is selected. The subdomain information displays the subdomain candidate information generated by the subdomain information output unit 14.

例えば、サブドメイン候補情報として、「アクセス(ブラウザ/スマホ)」、「認証・認可」、「契約情報管理」、「システム運用」、「商品登録」、「商品閲覧」、「申込」、「点検」、「査定」、「保険料入金」、「証券発送」、「保険金申請」、「審査」、「保険金支払い」、「進捗管理(契約者/事業者)」、「通知」が表示されている。 For example, the following sub-domain candidate information is displayed: "Access (browser/smartphone)," "Authentication/authorization," "Contract information management," "System operation," "Product registration," "Product viewing," "Application," "Inspection," "Appraisal," "Insurance premium payment," "Policy shipping," "Insurance claim application," "Review," "Insurance payment," "Progress management (policyholder/business)," and "Notification."

[サブドメイン情報の編集の表示例]
図18は、サブドメイン情報の編集の表示例を示す図である。
ユーザは、図18に示すように、「編集」ボタン174を押下することで、業務の流れに応じたサブドメインのつながり示す矢印を作図することができる。ユーザが「編集」ボタン174を押下することで、編集用ウィンドウが表示され、サブドメイン間に直線や矢印を入力することができる。
[Example of editing subdomain information]
FIG. 18 is a diagram showing an example of a display for editing subdomain information.
18, the user can draw arrows showing connections between subdomains according to the flow of work by pressing an "Edit" button 174. When the user presses the "Edit" button 174, an editing window is displayed, allowing the user to input lines and arrows between subdomains.

[サブドメイン情報の属性情報の表示例]
図19は、サブドメイン情報の属性情報の表示例を示す図である。
ユーザは、図19に示すように、「編集」ボタン174を押下することで編集用ウィンドウを起動させ、各サブドメインに属性情報を付与することができる。図19では、各サブドメインを、支援サブドメイン191、コアサブドメイン192、汎用サブドメイン193、のいずれかに属するように編集した例が示されている。例えば、各サブドメインは、支援サブドメイン191、コアサブドメイン192、及び汎用サブドメイン193ごとに、表示色や線種を変えるなどして他のサブドメインと識別しやすいようになっている。
[Example of displaying attribute information for subdomain information]
FIG. 19 is a diagram showing a display example of attribute information of sub-domain information.
As shown in Fig. 19, the user can press an "Edit" button 174 to open an editing window and assign attribute information to each subdomain. Fig. 19 shows an example in which each subdomain is edited to belong to one of a support subdomain 191, a core subdomain 192, and a general-purpose subdomain 193. For example, each subdomain is easily distinguished from other subdomains by changing the display color or line type for the support subdomain 191, the core subdomain 192, and the general-purpose subdomain 193.

ユーザによるサブドメイン情報の編集が完了後に、下部の「OK」ボタンを押下することで、現在表示中のサブドメイン候補情報がサブドメイン情報出力部14に送信され、図20のコンテキスト情報の表示例に遷移する。 After the user has finished editing the subdomain information, by pressing the "OK" button at the bottom, the currently displayed subdomain candidate information is sent to the subdomain information output unit 14, and the display transitions to the example of context information shown in Figure 20.

[コンテキスト情報の表示例]
次に、コンテキスト情報の表示例について図20を用いて説明する。
図20は、コンテキスト情報を確認・編集するユーザインタフェース部11の表示例を示す図である。
[Example of context information display]
Next, a display example of the context information will be described with reference to FIG.
FIG. 20 is a diagram showing a display example of the user interface unit 11 for confirming and editing context information.

図20では、コンテキスト情報の表示例として、インタフェース画面200が示されている。インタフェース画面200は、「ユースケース」ボタン151、「ユビキタス」ボタン152、「サブドメイン」ボタン153、「境界付けられたコンテキスト」ボタン154、「コンテキストマップ」ボタン155、コンテキスト情報表示エリア201、「編集」ボタン202、「OK」ボタン、及び「キャンセル」ボタンを有する。 In FIG. 20, an interface screen 200 is shown as an example of the display of context information. The interface screen 200 has a "Use Case" button 151, a "Ubiquitous" button 152, a "Subdomain" button 153, a "Bounded Context" button 154, a "Context Map" button 155, a context information display area 201, an "Edit" button 202, an "OK" button, and a "Cancel" button.

コンテキスト情報表示エリア201には、コンテキスト情報出力部15が生成したコンテキスト情報が表示される。このコンテキスト情報は、コンテキスト情報出力部15が並べ替えた順序で表示されている。この例では、コンテキスト情報表示エリア201において上段に属性情報が支援サブドメイン191のサブドメイン(商品閲覧他)、中段に属性情報がコアサブドメイン192のサブドメイン(査定)、下段に属性情報が汎用サブドメイン193のサブドメイン(保険金支払い他)が表示されている。 The context information display area 201 displays the context information generated by the context information output unit 15. This context information is displayed in the order rearranged by the context information output unit 15. In this example, the upper row of the context information display area 201 displays attribute information in the form of subdomains of the support subdomain 191 (product viewing, etc.), the middle row displays attribute information in the form of subdomains of the core subdomain 192 (assessment), and the lower row displays attribute information in the form of subdomains of the general-purpose subdomain 193 (insurance payment, etc.).

ユーザは、「編集」ボタン202を押下することで編集用ウィンドウを起動させ、コンテキスト情報の名称を変更したり、新規追加したり、複数のコンテキスト情報を統合したりすることができる。新規にコンテキストを追加する場合、サブドメイン情報を選択して対応づける編集画面を表示する。 The user can press the "Edit" button 202 to launch an editing window where they can change the name of the context information, add new information, or integrate multiple pieces of context information. When adding a new context, an editing screen is displayed where the user can select and associate subdomain information.

ユーザによるコンテキスト情報の編集が完了後に、下部の「OK」ボタンを押下することで、コンテキスト情報がコンテキスト情報出力部15に送信され、図21のコンテキストマップの表示例に遷移する。ユーザのコンテキストの編集でコンテキストを統合する場合、コンテキスト情報出力部15は関連付けられているサブドメイン情報、ユビキタス言語も統合して、サブドメイン情報23、コンテキスト情報24を更新する。 After the user has finished editing the context information, by pressing the "OK" button at the bottom, the context information is sent to the context information output unit 15, and the display transitions to the example context map of FIG. 21. When integrating contexts by editing the user's context, the context information output unit 15 also integrates the associated subdomain information and ubiquitous language, and updates the subdomain information 23 and context information 24.

[コンテキストマップの表示例]
次に、コンテキストマップの表示例について図21を用いて説明する。
図21は、コンテキストマップを作成するユーザインタフェース部11の表示例を示す図である。
[Context map display example]
Next, a display example of a context map will be described with reference to FIG.
FIG. 21 is a diagram showing an example of a display on the user interface unit 11 for creating a context map.

図21では、コンテキストマップの表示例として、インタフェース画面210が示されている。インタフェース画面210は、「ユースケース」ボタン151、「ユビキタス」ボタン152、「サブドメイン」ボタン153、「境界付けられたコンテキスト」ボタン154、「コンテキストマップ」ボタン155、コンテキストマップ表示エリア211、「編集」ボタン212、「OK」ボタン、及び「キャンセル」ボタンを有する。 In FIG. 21, an interface screen 210 is shown as an example of a context map display. The interface screen 210 has a "Use Case" button 151, a "Ubiquitous" button 152, a "Subdomain" button 153, a "Bounded Context" button 154, a "Context Map" button 155, a context map display area 211, an "Edit" button 212, an "OK" button, and a "Cancel" button.

インタフェース画面210のコンテキストマップ表示エリア211には、初期の状態において、図20においてコンテキスト情報の編集が完了した後のコンテキスト情報24が表示される。インタフェース画面210に表示されるコンテキストマップは、業務プロセスに含まれる各プロセスの対応関係に関するマイクロサービス境界の候補図である。 In the initial state, the context map display area 211 of the interface screen 210 displays the context information 24 after the editing of the context information in FIG. 20 is completed. The context map displayed on the interface screen 210 is a candidate diagram of the microservice boundary regarding the correspondence between each process included in the business process.

ユーザは、「編集」ボタン212を押下することで編集用ウィンドウを起動させ、コンテキスト間の接続関係を作図することができる。また、ユーザは、コンテキストの上流「U」と下流「D」を表す文字列をコンテキスト間の線に付与することができる。さらに、コンテキスト間の接続方式を表す文字列として、公開ホストサービス「OHS」、腐敗防止層「ACL」、公表された言語「PL」といった表示を各コンテキストに付与することができる。 By pressing the "Edit" button 212, the user can open an editing window and draw the connection relationships between contexts. The user can also add strings representing the upstream "U" and downstream "D" of the context to the lines between the contexts. Furthermore, the user can add strings representing the connection method between the contexts, such as "Open Host Service" (OHS), "Anti-Corruption Layer" (ACL), and "Published Language" (PL), to each context.

ユーザによるコンテキストマップの作成が完了後に、下部の「OK」ボタンを押下することで、コンテキストマップがマイクロサービス情報出力部16に送信され、図22のマイクロサービス情報の表示例に遷移する。 After the user has completed creating the context map, by pressing the "OK" button at the bottom, the context map is sent to the microservice information output unit 16, and the display transitions to the example of microservice information shown in Figure 22.

[マイクロサービス情報の表示例]
次に、マイクロサービス情報の表示例について図22を用いて説明する。
図22は、マイクロサービス情報を確認・編集するユーザインタフェース部11の表示例を示す図である。
[Example of displaying microservice information]
Next, a display example of microservice information will be described with reference to FIG. 22.
FIG. 22 is a diagram showing a display example of the user interface unit 11 for checking and editing microservice information.

図22では、ユーザが作成したコンテキストマップ上に、マイクロサービスの候補情報(図中、マイクロサービス候補1)が強調表示されるインタフェース画面210の例が示されている。マイクロサービスの候補情報は、マイクロサービス情報出力部16が作成したマイクロサービス候補情報を表示している。マイクロサービス候補情報の表示は、該当するコンテキストを強調する線(例えば、枠線221)で囲った表示例を示している。他の表示方法として、該当するコンテキストの色を変化させたり、点滅させたりさせてもよい。 Figure 22 shows an example of an interface screen 210 in which microservice candidate information (microservice candidate 1 in the figure) is highlighted on a context map created by the user. The microservice candidate information displays the microservice candidate information created by the microservice information output unit 16. The display of the microservice candidate information shows an example in which the corresponding context is surrounded by a line (e.g., a border 221) that highlights the corresponding context. As another display method, the corresponding context may be changed in color or blinked.

[マイクロサービス設計支援システムのハードウェア構成]
図23は、マイクロサービス設計支援システム10のハードウェア構成の例を示す図である。
マイクロサービス設計支援システム10は、ハードウェアとして計算機230を備える。計算機230は、コンピューターとして用いられ、プロセッサ231、メインメモリ232、記憶装置233、通信装置234、入力装置235、及び表示装置236を有し、それらがバス237に接続されている。
[Hardware configuration of the microservice design support system]
FIG. 23 is a diagram illustrating an example of a hardware configuration of the microservice design support system 10.
The microservice design support system 10 includes, as hardware, a calculator 230. The calculator 230 is used as a computer, and includes a processor 231, a main memory 232, a storage device 233, a communication device 234, an input device 235, and a display device 236, which are connected to a bus 237.

記憶装置233は、書込み及び読み出しが可能にデータを記憶するものであって、この記憶装置233に、図2に示したユースケース記述情報17、業界用語18、ユビキタス言語19、組織情報20、業務情報21、過去設計情報22、サブドメイン情報23、コンテキスト情報24、及びマイクロサービス情報25が格納される。 The storage device 233 stores data in a writable and readable manner, and stores the use case description information 17, industry terminology 18, ubiquitous language 19, organizational information 20, business information 21, past design information 22, subdomain information 23, context information 24, and microservice information 25 shown in FIG. 2.

プロセッサ231は、記憶装置233に記憶されたデータをメインメモリ232に読み出し、メインメモリ232を利用してソフトウェアプログラムの処理を実行する。プロセッサ231がソフトウェアプログラムを実行することによって、図2に示したユーザインタフェース部11、ユースケース入力部12、ユビキタス言語生成部13、サブドメイン情報出力部14、コンテキスト情報出力部15、及びマイクロサービス情報出力部16が実現される。 The processor 231 reads the data stored in the storage device 233 into the main memory 232, and executes the processing of the software program using the main memory 232. The processor 231 executes the software program to realize the user interface unit 11, use case input unit 12, ubiquitous language generation unit 13, subdomain information output unit 14, context information output unit 15, and microservice information output unit 16 shown in FIG. 2.

通信装置234は、プロセッサ231において処理された情報を有線又は無線あるいはそれら両方を含む通信ネットワークを介して送信し、また通信ネットワークを介して受信した情報をプロセッサ231に伝達する。通信装置234により受信した情報は、プロセッサ231においてソフトウェア処理に利用される。 The communication device 234 transmits information processed by the processor 231 via a communication network, which may be wired or wireless or both, and also transmits information received via the communication network to the processor 231. The information received by the communication device 234 is used for software processing in the processor 231.

入力装置235は、キーボード及びマウスなどユーザによる操作入力の情報を受け付ける装置である。入力装置235により入力された情報は、プロセッサ231においてソフトウェア処理に利用される。 The input device 235 is a device that accepts information input by a user through a keyboard, mouse, etc. The information input through the input device 235 is used for software processing in the processor 231.

表示装置236は、プロセッサ231によるソフトウェア処理に伴って画像やテキストの情報をディスプレイ画面に表示する装置である。図15から図22に例示したインタフェース画面は、表示装置236によって表示される。 The display device 236 is a device that displays image and text information on a display screen in accordance with software processing by the processor 231. The interface screens illustrated in Figures 15 to 22 are displayed by the display device 236.

以上のとおり、本実施形態に係るマイクロサービス設計支援システムは、ユーザの業務プロセスにおいてマイクロサービス化する領域決定を支援するマイクロサービス設計支援システムであって、ユースケース入力部と、ユビキタス言語生成部と、サブドメイン情報出力部と、を備える。
ユースケース入力部(ユースケース入力部12)は、ユーザの業務プロセスに関連するユースケースがテキスト情報(ユースケース記述)として入力される。
ユビキタス言語生成部(ユビキタス言語生成部13)は、ユースケース入力部に入力されたユースケースのテキスト情報に含まれる構成要素に関連するユビキタス言語を生成する。
サブドメイン情報出力部(サブドメイン情報出力部14)は、ユビキタス言語とユースケースに基づいて、一致又は類似する要素を含むユースケースをグループ化し、さらにそのグループ化されたユースケースのテキスト情報のうち、業務プロセスにおいて類似する情報か否かに基づきサブグループ化して、サブドメイン情報を生成する。
As described above, the microservice design support system of this embodiment is a microservice design support system that supports the user in deciding which areas of their business process should be turned into microservices, and includes a use case input unit, a ubiquitous language generation unit, and a subdomain information output unit.
A use case related to a user's business process is input as text information (use case description) to a use case input unit (use case input unit 12).
The ubiquitous language generation unit (ubiquitous language generation unit 13) generates ubiquitous language related to components included in the text information of a use case input to the use case input unit.
The subdomain information output unit (subdomain information output unit 14) groups use cases that contain matching or similar elements based on the ubiquitous language and the use case, and further subgroups the text information of the grouped use cases based on whether the information is similar in the business process, thereby generating subdomain information.

上記構成の本実施形態によれば、顧客の業務プロセス(業務ドメイン)に関する入力情報(ユースケースのテキスト情報)より、業務プロセスに含まれる工程整理(サブドメイン情報生成)をシステム化し、マイクロサービス化を支援することができる。すなわち、マイクロサービスの設計に関して、属人性を排した設計支援を実現することができる。
これにより、熟練者の勘や経験に依存することなく、設計品質が安定するという効果が得られる。
According to the present embodiment having the above configuration, it is possible to systematize the organization of steps (generation of sub-domain information) included in a business process based on input information (text information of use cases) related to the business process (business domain) of a customer, and to support the creation of microservices. In other words, it is possible to realize design support for microservices that does not depend on individuals.
This has the effect of stabilizing design quality without relying on the intuition or experience of a skilled worker.

また、本実施形態に係るマイクロサービス設計支援システムは、サブドメイン情報に基づき、業務プロセスにおいて類似するコンテキスト同士の境界を表すコンテキスト情報を生成するコンテキスト情報出力部(コンテキスト情報出力部15)と、コンテキスト情報に基づき、業務プロセスに含まれる各プロセスの対応関係に関するマイクロサービス境界の候補図(マイクロサービスマップ)を生成するマイクロサービス情報出力部(マイクロサービス情報出力部16)と、をさらに備える構成とすることができる。 The microservice design support system according to this embodiment can further include a context information output unit (context information output unit 15) that generates context information representing boundaries between similar contexts in a business process based on subdomain information, and a microservice information output unit (microservice information output unit 16) that generates a candidate diagram (microservice map) of microservice boundaries relating to the corresponding relationships of each process included in the business process based on the context information.

このような構成により、本実施形態では、自動的にマイクロサービス候補情報を表示することができるため、経験がなくても業務プロセスのマイクロサービス化すべき箇所を特定することができる。 With this configuration, in this embodiment, microservice candidate information can be automatically displayed, so that even those with no experience can identify the parts of a business process that should be turned into microservices.

また、本実施形態に係るマイクロサービス設計支援システムは、過去のマイクロサービス設計情報を格納する過去設計情報格納部(過去設計情報22)と、サブドメイン情報と過去のマイクロサービス設計情報との類似度を算出する類似度算出部(サブドメイン情報出力部14)と、をさらに備える。そして、サブドメイン情報出力部(サブドメイン情報出力部14)は、上記類似度が閾値以上である場合に、過去のマイクロサービス設計情報からサブドメイン情報を取得し、取得したサブドメイン情報と生成したサブドメイン情報との類似度に基づいて、生成したサブドメイン情報を更新し、サブドメイン情報を出力する。 The microservice design support system according to this embodiment further includes a past design information storage unit (past design information 22) that stores past microservice design information, and a similarity calculation unit (subdomain information output unit 14) that calculates the similarity between the subdomain information and the past microservice design information. If the similarity is equal to or greater than a threshold, the subdomain information output unit (subdomain information output unit 14) acquires subdomain information from the past microservice design information, updates the generated subdomain information based on the similarity between the acquired subdomain information and the generated subdomain information, and outputs the subdomain information.

このような構成により、本実施形態では、過去のマイクロサービス設計情報(過去設計情報22)を利用してサブドメイン情報を更新することにより、過去のマイクロサービス設計情報を反映したより適切なマイクロサービス境界の候補図(マイクロサービスマップ)を作成することができる。 With this configuration, in this embodiment, by updating the subdomain information using past microservice design information (past design information 22), it is possible to create a more appropriate microservice boundary candidate diagram (microservice map) that reflects the past microservice design information.

なお、本発明は上述した実施形態に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、その他種々の応用例、変形例を取り得ることは勿論である。例えば、上述した実施形態は本発明を分かりやすく説明するためにその構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成要素を備えるものに限定されない。また、実施形態の構成の一部について、他の構成要素の追加又は置換、削除をすることも可能である。 The present invention is not limited to the above-described embodiment, and various other applications and modifications are possible without departing from the gist of the present invention as described in the claims. For example, the above-described embodiment describes the configuration in detail and specifically in order to explain the present invention in an easy-to-understand manner, and is not necessarily limited to having all of the components described. In addition, it is also possible to add, replace, or delete other components from part of the configuration of the embodiment.

また、上記の各構成、機能、処理部等は、それらの一部又は全部を、例えば集積回路で設計するなどによりハードウェアで実現してもよい。ハードウェアとして、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)などの広義のプロセッサデバイスを用いてもよい。 Furthermore, the above-mentioned configurations, functions, processing units, etc. may be realized in part or in whole in hardware, for example by designing them as integrated circuits. As the hardware, a broad processor device such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit) may be used.

また、上述した実施形態にかかるマイクロサービス設計支援システム10の各構成要素は、それぞれのハードウェアがネットワークを介して互いに情報を送受信できるならば、いずれのハードウェアに実装されてもよい。また、ある処理部により実施される処理が、1つのハードウェアにより実現されてもよいし、複数のハードウェアによる分散処理により実現されてもよい。 Furthermore, each component of the microservice design support system 10 according to the above-described embodiment may be implemented in any hardware as long as each piece of hardware can send and receive information to and from each other via a network. Furthermore, the processing performed by a certain processing unit may be realized by a single piece of hardware, or may be realized by distributed processing using multiple pieces of hardware.

また、上述した実施形態のマイクロサービス設計支援システム10において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成要素が相互に接続されていると考えてもよい。 In addition, in the microservice design support system 10 of the above-mentioned embodiment, the control lines and information lines are those that are considered necessary for explanation, and not all control lines and information lines are necessarily shown in the product. In reality, it can be considered that almost all components are connected to each other.

また、本明細書において、時系列的な処理を記述する処理ステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的、あるいは個別に実行される処理(例えば、オブジェクトによる処理)をも含むものである。また、時系列的な処理を記述する処理ステップについては、処理結果に影響を及ぼさない範囲で、処理順序を変更してもよい。 In addition, in this specification, the processing steps describing chronological processing include not only processing that is performed chronologically in the order described, but also processing that is not necessarily performed chronologically but is performed in parallel or individually (for example, processing by objects). Furthermore, the processing order of the processing steps describing chronological processing may be changed as long as it does not affect the processing results.

10…マイクロサービス設計支援システム、11…ユーザインタフェース部、12…ユースケース入力部、13…ユビキタス言語生成部、14…サブドメイン情報出力部、15…コンテキスト情報出力部、16…マイクロサービス情報出力部、17…ユースケース記述情報、18…業界用語、19…ユビキタス言語、20…組織情報、21…業務情報、22…過去設計情報、23…サブドメイン情報、24…コンテキスト情報、25…マイクロサービス情報 10...Microservice design support system, 11...User interface section, 12...Use case input section, 13...Ubiquitous language generation section, 14...Subdomain information output section, 15...Context information output section, 16...Microservice information output section, 17...Use case description information, 18...Industry terminology, 19...Ubiquitous language, 20...Organizational information, 21...Business information, 22...Past design information, 23...Subdomain information, 24...Context information, 25...Microservice information

Claims (5)

ユーザの業務プロセスにおいてマイクロサービス化する領域決定を支援するマイクロサービス設計支援システムであって、
前記ユーザの業務プロセスに関連するユースケースがテキスト情報として入力されるユースケース入力部と、
前記ユースケース入力部に入力された前記ユースケースのテキスト情報に含まれる構成要素に関連するユビキタス言語を生成するユビキタス言語生成部と、
前記ユビキタス言語と前記ユースケースに基づいて、一致又は類似する要素を含むユースケースをグループ化し、さらに前記グループ化されたユースケースのテキスト情報のうち、前記業務プロセスにおいて類似する情報か否かに基づきサブグループ化して、サブドメイン情報を生成するサブドメイン情報出力部と、を備える
マイクロサービス設計支援システム。
A microservice design support system that supports the determination of areas to be converted into microservices in a user's business process,
a use case input unit into which a use case related to the user's business process is input as text information;
a ubiquitous language generation unit that generates a ubiquitous language related to a component included in the text information of the use case input to the use case input unit;
and a subdomain information output unit that groups use cases including matching or similar elements based on the ubiquitous language and the use cases, and further subgroups text information of the grouped use cases based on whether the information is similar in the business process, thereby generating subdomain information.
前記サブドメイン情報に基づき、前記業務プロセスにおいて類似するコンテキスト同士の境界を表すコンテキスト情報を生成するコンテキスト情報出力部と、
前記コンテキスト情報に基づき、前記業務プロセスに含まれる各プロセスの対応関係に関するマイクロサービス境界の候補図を生成するマイクロサービス情報出力部と、をさらに備える
請求項1に記載のマイクロサービス設計支援システム。
a context information output unit that generates context information representing a boundary between similar contexts in the business process based on the sub-domain information;
The microservice design support system according to claim 1 , further comprising: a microservice information output unit that generates a candidate diagram of a microservice boundary regarding a correspondence relationship between each process included in the business process based on the context information.
過去のマイクロサービス設計情報を格納する過去設計情報格納部と、
前記サブドメイン情報と前記過去のマイクロサービス設計情報との類似度を算出する類似度算出部と、をさらに備え、
前記サブドメイン情報出力部は、前記類似度が閾値以上である場合に、前記過去のマイクロサービス設計情報からサブドメイン情報を取得し、取得した前記サブドメイン情報と生成した前記サブドメイン情報との類似度に基づいて、生成した前記サブドメイン情報を更新し、前記サブドメイン情報を出力する
請求項1に記載のマイクロサービス設計支援システム。
A past design information storage unit for storing past microservice design information;
A similarity calculation unit that calculates a similarity between the subdomain information and the past microservice design information,
2. The microservice design support system according to claim 1, wherein the subdomain information output unit acquires subdomain information from the past microservice design information when the similarity is equal to or greater than a threshold, updates the generated subdomain information based on the similarity between the acquired subdomain information and the generated subdomain information, and outputs the subdomain information.
ユーザの業務プロセスにおいてマイクロサービス化する領域決定を支援するマイクロサービス設計支援システムによるマイクロサービス設計支援方法であって、
前記ユーザの業務プロセスに関連するユースケースをテキスト情報として入力する処理と、
入力された前記ユースケースのテキスト情報に含まれる構成要素に関連するユビキタス言語を生成する処理と、
前記ユビキタス言語と前記ユースケースに基づいて、意味の近い要素を含むユースケースをグループ化し、さらに前記グループ化されたユースケースのテキスト情報のうち、前記業務プロセスにおいて類似する情報か否かに基づきサブグループ化して、サブドメイン情報を生成する処理と、を備える
マイクロサービス設計支援方法。
A microservice design support method using a microservice design support system that supports the determination of areas to be converted into microservices in a user's business process,
A process of inputting a use case related to the user's business process as text information;
A process of generating ubiquitous language related to components included in the input text information of the use case;
a process of grouping use cases including elements with similar meanings based on the ubiquitous language and the use cases, and further subgrouping text information of the grouped use cases based on whether the information is similar in the business process, thereby generating subdomain information.
ユーザの業務プロセスにおいてマイクロサービス化する領域決定を支援するマイクロサービス設計支援システムが備えるコンピューターに、
前記ユーザの業務プロセスに関連するユースケースをテキスト情報として入力する手順と、
入力された前記ユースケースのテキスト情報に含まれる構成要素に関連するユビキタス言語を生成する手順と、
前記ユビキタス言語と前記ユースケースに基づいて、意味の近い要素を含むユースケースをグループ化し、さらに前記グループ化されたユースケースのテキスト情報のうち、前記業務プロセスにおいて類似する情報か否かに基づきサブグループ化して、サブドメイン情報を生成する手順を、
実行させるためのプログラム。
A microservice design support system that helps users decide which areas of their business processes to turn into microservices has a computer equipped with
inputting a use case related to the user's business process as text information;
A step of generating ubiquitous language related to components included in the input text information of the use case;
a step of grouping use cases including elements having similar meanings based on the ubiquitous language and the use cases, and further subgrouping the text information of the grouped use cases based on whether the information is similar in the business process, thereby generating subdomain information;
The program to be executed.
JP2023028670A 2023-02-27 2023-02-27 Microservice design support system, microservice design support method and program Pending JP2024121524A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023028670A JP2024121524A (en) 2023-02-27 2023-02-27 Microservice design support system, microservice design support method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023028670A JP2024121524A (en) 2023-02-27 2023-02-27 Microservice design support system, microservice design support method and program

Publications (1)

Publication Number Publication Date
JP2024121524A true JP2024121524A (en) 2024-09-06

Family

ID=92594373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023028670A Pending JP2024121524A (en) 2023-02-27 2023-02-27 Microservice design support system, microservice design support method and program

Country Status (1)

Country Link
JP (1) JP2024121524A (en)

Similar Documents

Publication Publication Date Title
CN103914504B (en) Information processor and the method for generating chart
JP6871759B2 (en) Judgment support system and judgment support method
US20150032645A1 (en) Computer-implemented systems and methods of performing contract review
US9922383B2 (en) Patent claims analysis system and method
US20100049590A1 (en) Method and system for semantic analysis of unstructured data
JP7313069B2 (en) Search material information storage device
JP6623754B2 (en) Tabular data processing program, method and apparatus
WO2016021522A1 (en) Supplier search device and search method
US20120179702A1 (en) Method for setting metadata, system for setting metadata, and program
Zealand Data integration manual
JP5827206B2 (en) Document management system, document management method, and document management program
JP2020119087A (en) Document examination support method and document examination support device and computer program
Pustulka et al. Text mining innovation for business
US20240127146A1 (en) Translation Decision Assistant
JP2024121524A (en) Microservice design support system, microservice design support method and program
JP2012203725A (en) Law analysis support device, law analysis support method, and law analysis support program
JP2019160134A (en) Sentence processing device and sentence processing method
JP6985322B2 (en) Document creation support device, document creation support method and program
Kapugama Geeganage et al. Text2el+: Expert guided event log enrichment using unstructured text
JP6676792B2 (en) Reviewer management system and method
JP4946779B2 (en) Risk category management system, risk category management device, and risk category management program
Goossens et al. From OCEL to DOCEL–datasets and automated transformation
JP2016143106A (en) Business influence portion extraction method based on business variation and business influence portion extraction device
JP7637492B2 (en) COMPUTER PROGRAM, INFORMATION PROCESSING APPARATUS, AND INFORMATION PROCESSING METHOD
JP7487778B2 (en) Information processing device, information processing method, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20250305