Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7824901B2 - Microservice design support system, microservice design support method and program - Google Patents
[go: Go Back, main page]

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

Microservice design support system, microservice design support method and program

Info

Publication number
JP7824901B2
JP7824901B2 JP2023028670A JP2023028670A JP7824901B2 JP 7824901 B2 JP7824901 B2 JP 7824901B2 JP 2023028670 A JP2023028670 A JP 2023028670A JP 2023028670 A JP2023028670 A JP 2023028670A JP 7824901 B2 JP7824901 B2 JP 7824901B2
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.)
Active
Application number
JP2023028670A
Other languages
Japanese (ja)
Other versions
JP2024121524A (en
Inventor
謙太 山崎
賢知 受田
秀行 坂井
弓郎 須賀
岳人 東
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/JP7824901B2/en
Publication of JP2024121524A publication Critical patent/JP2024121524A/en
Application granted granted Critical
Publication of JP7824901B2 publication Critical patent/JP7824901B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

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 allocates the necessary resources to each microservice that is divided into a monolithic system when migrating the system to a new microservice-based system (see Patent Document 1).

ところで、企業の業務効率化や生産性向上などのため、企業の業務プロセスの中で、特に業務効率化等に寄与する業務プロセスを特定し、特定された部位をマイクロサービス化して開発を柔軟かつ迅速に継続できるよう整備する要求がある。例えば、近年、ドメイン駆動設計の概念に基づいて、既存のモノリシックアプリケーションをマイクロサービスに移行することが行われている。ドメイン駆動設計は、企業の業務ドメインの情報に基づいて業務プロセスをモデリングする設計概念である。 In order to improve business efficiency and productivity in companies, there is a demand to identify business processes that particularly contribute to business efficiency, and to turn these identified parts into microservices to enable flexible and rapid continuation of development. 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号公報Japanese Patent Application Laid-Open No. 2022-168796

ところで、業務効率化や生産性向上等のために業務プロセスの一部をマイクロサービス化するためには、業務プロセスの中で、特に業務の効率化等に寄与する業務プロセスを特定する必要がある。しかし、顧客の業務プロセスが複雑であったり、業務の効率化に対してどの業務プロセスをマイクロサービス化するべきかを顧客自身も認識していなかったりする場合、マイクロサービス化する業務プロセスを特定するのは容易ではない。 In order to convert 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 particularly contribute to improving business efficiency. However, if the customer's business processes are complex, or if the customer themselves is not aware of which business processes should be converted into microservices in order to improve business efficiency, it is not easy to identify the business processes that should be converted into microservices.

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

上記課題を解決するために、本発明の一態様のマイクロサービス設計支援システムは、ユーザの業務プロセスにおいてマイクロサービス化する領域決定を支援するマイクロサービス設計支援システムであって、ユースケース入力部と、ユビキタス言語生成部と、サブドメイン情報出力部と、を備える。ユースケース入力部は、ユーザの業務プロセスに関連するユースケースがテキスト情報として入力される。ユビキタス言語生成部は、ユースケース入力部に入力されたユースケースのテキスト情報に含まれる構成要素に関連するユビキタス言語を生成する。サブドメイン情報出力部は、ユビキタス言語とユースケースに基づいて、一致又は類似する要素を含むユースケースをグループ化し、さらにそのグループ化されたユースケースのテキスト情報のうち、業務プロセスにおいて類似する情報か否かに基づきサブグループ化して、サブドメイン情報を生成する。 To solve the above problems, one aspect of the present invention is a microservice design support system that supports the determination of areas in a user's business process to be turned into microservices, 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 the 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 contain matching or similar elements based on the ubiquitous language and 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 provide design support for microservices that is free from dependency on individual users.
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 technology. 本発明の一実施形態に係るマイクロサービス設計支援システムの機能構成の例を示すブロック図である。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. 本発明の一実施形態に係るユビキタス言語生成処理の手順の例を示すフローチャートである。10 is a flowchart illustrating 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. 1 is a diagram illustrating a specific example of classification of use case descriptions according to an embodiment of the present invention. 本発明の一実施形態に係る過去設計情報解析処理の手順の例を示すフローチャートである。10 is a flowchart illustrating an example of a procedure for past design information analysis processing according to an embodiment of the present invention. 本発明の一実施形態に係る過去設計情報に対する類似度算出処理の手順の例を示すフローチャートである。10 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. 本発明の一実施形態に係るマイクロサービス情報出力処理の手順の例を示すフローチャートである。10 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 illustrating an example of a database of subdomain 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. 10 is a diagram showing an example of a display of a use case description input according to an embodiment of the present invention. 本発明の一実施形態に係るユビキタス言語の表示例を示す図である。FIG. 10 is a diagram showing an example of a display of a ubiquitous language according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン情報の表示例を示す図である。FIG. 10 is a diagram showing an example of display of subdomain information according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン情報の編集の表示例を示す図である。FIG. 10 is a diagram showing an example of a display for editing subdomain information according to an embodiment of the present invention. 本発明の一実施形態に係るサブドメイン情報の属性情報の表示例を示す図である。FIG. 10 is a diagram showing an example of display of attribute information of subdomain information according to an embodiment of the present invention. 本発明の一実施形態に係るコンテキスト情報の表示例を示す図である。FIG. 10 is a diagram illustrating an example of a display of context information according to an embodiment of the present invention. 本発明の一実施形態に係るコンテキストマップの表示例を示す図である。FIG. 10 is a diagram illustrating a display example of a context map according to an embodiment of the present invention. 本発明の一実施形態に係るマイクロサービス情報の表示例を示す図である。FIG. 10 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.

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

[本実施形態のマイクロサービス設計支援システムと従来技術の概要]
はじめに、本発明の一実施形態に係るマイクロサービス設計支援システムと従来技術の概要について、図1を参照して説明する。
[Outline of the microservice design support system according to this embodiment and 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 shows an overview of a microservice design support system according to one embodiment of the present invention and 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 shown in the top row 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) 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 systems into subdomains and context boundaries based on use cases. A use case describes what operations and responses should (or should not) be performed, starting from a specific state, when a user or other entity uses a business system to access a 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 independence. Furthermore, as will be described later, by also presenting subdomain candidates based on past design information (see past design information 22 in Figure 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. 2.
FIG. 2 is a block diagram showing an example of the 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. This information is stored in the form of a database, table, or the like in the storage device 233 shown in Figure 23 (described below).

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

ユースケース入力部12は、ユーザ(ユーザインタフェース部11)からの業務に関係するユースケースのテキスト情報(ユースケース記述)を受け付けて、ユースケース記述情報17に格納する。 The use case input unit 12 accepts text information (use case descriptions) of use cases related to business operations 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 morphologically analyzing the use case descriptions 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, confirms 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 results (ubiquitous language 19) of the use case description information 17 by the ubiquitous language generation unit 13, as well as organizational 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, 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, confirms the context information, and stores it 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. The microservice information output unit 16 then presents the microservice candidate information to the user via the user interface unit 11, accepts confirmation and editing 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, ubiquitous language generation unit 13, subdomain information output unit 14, context information output unit 15, and 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 the procedure of the 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 entered 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 receiving input from the user via the user interface unit 11, or the microservice design support system 10 may present multiple 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 components. The information contained in the classified sentence components is the specific content of the parts of speech, such as nouns and verbs, contained in the component (an example of an element of a use case description). If a part of speech with the same content is contained in the industry terminology 18, that part of speech is assigned a higher priority than other parts of speech that are not included 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, since the target part of speech is either included in the industry terminology 18 or not, the priority is either 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 determined based on a pre-set 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 processing, but 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 technologies and dictionaries can be used for the synonym analysis, such as WordNet or Word2Vec. 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 to determine the level of similarity required for determining synonyms. 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 above the threshold.

次いで、ステップ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 their synonym groups. At this time, the ubiquitous language generation unit 13 sorts the parts of speech in descending order of priority according to the priority specified in step S305. In the case of synonym groups, groups containing 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 Figure 16, described later). Furthermore, the user may edit the ubiquitous language or combine synonym groups into a single part of speech via the user interface unit 11. The ubiquitous language generation unit 13 accepts the user's selection and editing of the ubiquitous language candidate 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 of the ubiquitous language candidate received in step S309 in the ubiquitous language 19. When the processing of this step is completed, the ubiquitous language generation process ends.

[サブドメイン情報生成処理]
次に、マイクロサービス設計支援システム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 for the subdomain information generation process, which 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 performs subdomain classification processing by analyzing the use case description. Details of the subdomain classification processing will be explained using the flowchart in Figure 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 previously carried out by the designer or design company for other companies or business divisions. 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 below). 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 classification process]
Next, the subdomain classification process (subroutine of S402) in the microservice design support system 10 will be described with reference to FIG. 5 .
FIG. 5 is a flowchart showing an example of the procedure of the 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 group 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 whose objects or synonyms of the objects match the objects of the use case descriptions being processed (i.e., the use case descriptions from which object-predicate pairs have been extracted). Furthermore, the subdomain information output unit 14 performs a synonym analysis of the predicates of the obtained use case descriptions to obtain synonyms of the predicates, and obtains use case descriptions that match the predicates of the use case descriptions being processed or that match their synonyms.

サブドメイン情報出力部14は、ユースケース記述の目的語同士の意味的な距離及び述語同士の意味的な距離を類義語解析で取得し、それらの平均値を類似度として記録する。そして、サブドメイン情報出力部14は、解析処理の結果、該当するユースケース記述が存在すると判定した場合(S505のYES判定)、ステップS506に進む。該当するユースケース記述とは、目的語及び述語ともに上記条件(それ自体又は類義語が一致)を満たすユースケース記述である。一方、サブドメイン情報出力部14は、該当するユースケース記述が存在しないと判定した場合(S505のNO判定)、ステップS507に進む。 The subdomain information output unit 14 obtains the semantic distances between the objects and the semantic distances between the predicates of the use case descriptions through synonym analysis, and records their average value as the similarity. If the subdomain information output unit 14 determines as a result of the analysis process that a corresponding use case description exists (YES in S505), the process proceeds to step S506. A corresponding use case description is one in which both the object and the predicate satisfy the above condition (either the object or a synonym matches). On the other hand, if the subdomain information output unit 14 determines that a corresponding use case description does not exist (NO 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 string combining the object and predicate of the use case description to be processed, or a 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 string combining the object and predicate of the use case description to be processed, or a string numbered in the order in which the groups were 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 is completed, 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)は「契約者は契約内容を確認できる」である。 Let's 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." Furthermore, use case description (d) is "The agent can check the progress of the contract," use case description (e) is "The insurance agent 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 Figure 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 Figure 6 (2), use case descriptions with the same subject are classified, and use case descriptions with similar nouns in the subject are grouped using synonym analysis (corresponding to S501). As a result, use case descriptions (a) to (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 Figure 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 also 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, thereby creating subdomain candidate information.

[過去設計情報解析処理]
次に、マイクロサービス設計支援システム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 previous design information 22 (see Figure 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 Figure 8. The information currently being processed refers to the ubiquitous language, industry/business type information, and organizational information acquired in steps S801 to S803 in Figure 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), it proceeds to step S704. If the subdomain information output unit 14 determines that the similarity is less than the threshold (NO in S703), it terminates 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. Alternatively, the user may specify the threshold value via the user interface unit 11 when executing the past design information analysis process. Furthermore, the microservice design support system 10 may store only one threshold value, or may store multiple threshold values. If multiple threshold values are stored, it is possible to generate multiple processing results by determining whether the similarity is greater than or equal to each threshold value, and proceeding to step S704 only for past design information whose similarity is greater than or equal to 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 (plural 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 through morphological analysis, and acquires synonyms for the parts of speech included in each component through synonym 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 the components into subject, predicate, and object through morphological analysis, and acquires synonyms for each part of speech through synonym analysis.

そして、サブドメイン情報出力部14は、過去設計情報22と現在処理中のサブドメイン候補情報のユースケース記述の各品詞が一致するか、又はその類義語が一致するかを確認する。そして、サブドメイン情報出力部14は、比較対象の各品詞が一致又はその類義語が一致する場合は、該当するユースケース記述を過去設計情報22の各サブドメインに割り当てた情報を新しいサブドメイン候補情報として生成する。本ステップの処理が終了したら、過去設計情報解析処理が終了し、ステップS404へ移行する。 The subdomain information output unit 14 then 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 or synonyms of the comparison targets match, the subdomain information output unit 14 generates information in which the corresponding use case descriptions are assigned to each subdomain in the past design information 22 as new subdomain candidate information. When the processing of this step is completed, the past design information analysis process ends, 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 the past design information in the microservice design support system 10 will be described with reference to FIG. 8 .
FIG. 8 is a flowchart showing an example of a procedure for calculating the similarity with respect to past design information by 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 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 performs loop processing on 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 degree of similarity between each of the above information and the previous design information 22. That is, it acquires the ubiquitous language, industry/business type information, and organization information of the previous 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 by determining 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, scoring it as 1 if it does, or 0 if it does not. The degree of match of organizational information may be calculated as the similarity by determining what percentage of all previous design information matches, or the degree of match of organizational information may be calculated only if the industry/business type information matches. The total number 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 any of the above information has yet to be calculated for its degree of match with the previous design information 22. If unprocessed information remains, the process returns to step S804 and continues loop processing. When the processing of this step is completed, the similarity calculation process for the previous design information is completed, and the process proceeds to step S703.

[コンテキスト情報出力処理]
次に、マイクロサービス設計支援システム10におけるコンテキスト情報出力処理について図9を用いて説明する。
図9は、コンテキスト情報出力処理の手順の例を示すフローチャートである。コンテキスト情報出力処理は、コンテキスト情報出力部15によって実行される。
[Context information output processing]
Next, the context information output process in the microservice design support system 10 will be described with reference to FIG. 9 .
9 is a flowchart showing an example of the procedure of the 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 also be sorted according to whether each subdomain belongs to a "core subdomain," a "general-purpose 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 combine or divide the context information via the user interface unit 11. The context information output unit 15 accepts editing operations 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 the user's operation to create and edit the connection relationships between contexts (see Figure 21 described later) via the user interface unit 11, and generates the connection relationships 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 ends.

[マイクロサービス情報出力処理]
次に、マイクロサービス設計支援システム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 the procedure of the 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, if the attribute information of a context is a core subdomain (e.g., "assessment" in Figure 19 described below), that 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 editing operations for 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 ends.

[過去設計情報]
次に、過去設計情報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 associated and set (stored).

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

コンテキスト情報114は、設計情報に含まれるコンテキストが1個以上設定されており、図13に示すコンテキスト情報24の形式で格納されている。 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 Figure 13.

マイクロサービス情報115は、設計情報に含まれるマイクロサービス情報が1個以上設定されており、図14に示すマイクロサービス情報25の形式で格納されている。図11では、対象となるコンテキスト情報114の情報(例えば、査定)に対して○印が表示されているが、コンテキスト情報114の名称を示す文字列等を表示してもよい。 Microservice information 115 contains one or more pieces of microservice information included in the design information, and is stored in the format of microservice information 25 shown in Figure 14. In Figure 11, a circle is displayed for the information in 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 Figure 11, "Life Insurance" is set in business type/industry information 111, and "Company A Sales Department" is set in organization information 112. "Product Viewing," "Reception," and "Assessment" are set in subdomain information 113. Similarly, "Product Viewing," "Reception," and "Assessment" are also set in context information 114. Furthermore, "Assessment" from context information 114 is specified in microservice information 115.

[サブドメイン情報]
次に、サブドメイン情報23の内容について図12を用いて説明する。
図12は、サブドメイン情報23のデータベースの一例を示す図である。
[Subdomain Information]
Next, the contents of the subdomain 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と、が対応づけて設定(格納)されている。 The subdomain information 23 associates and stores a subdomain 121, a related use case description 122, a related ubiquitous language 123, a similarity 124, and attribute information 125.

サブドメイン121には、そのサブドメインを示す文字列が1個設定されている。業務ドメイン(対象業務範囲)に対してサブドメインは複数設定される。よって、サブドメイン情報23には、サブドメイン121の種類ごとにサブドメインが入力される。また、サブドメイン121の種類ごとに、サブドメイン情報23が作成されると考えてもよい。サブドメイン情報23内の情報は、サブドメインごとに登録されている。 A subdomain 121 has one character string set to indicate that subdomain. Multiple subdomains are set for each 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 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の情報と関連付けられたユースケース記述が設定されている。 Use case description 122 contains a use case description associated with information on subdomain 121 through analysis by the subdomain information output unit 14.

ユビキタス言語123には、ユビキタス言語生成部13とサブドメイン情報出力部14との解析により、サブドメイン121の情報と関連付けられたユビキタス言語が設定されている。 The ubiquitous language 123 is set to a ubiquitous language associated with the information of the subdomain 121 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 previous design information 22, calculated by the similarity calculation process (S702 in FIG. 7) of the subdomain information output unit 14.

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

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

例えば、図12では、サブドメイン121に“査定”、ユースケース記述122に“保険事業者は書類を点検する”、“保険事業者は健康状態を審査する”、“保険事業者は収入状態を審査する”が設定されている。ユビキタス言語123には“書類”、“点検”、“審査”が設定されている。さらに、類似度124には“0.80”、属性情報125には“コアサブドメイン”が設定されている。なお、図10~図12に格納される情報は、業務ドメインの範囲内でユースケース記述に基づいて蓄積されていく。 For example, in Figure 12, "assessment" is set as subdomain 121, and "Insurance company inspects documents," "Insurance company reviews health status," and "Insurance company inspects income status" are set as use case description 122. "Documents," "inspection," and "examination" are set as ubiquitous language 123. Furthermore, "0.80" is set as similarity 124, and "core subdomain" is set as attribute information 125. Note that the information stored in Figures 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と、が対応づけて設定(格納)されている。 Context information 24 associates and stores 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.

コンテキスト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 the subdomain associated with the 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.
The use case description 122, the ubiquitous language 123, the similarity 124, and the attribute information 125 will not be described here.

[マイクロサービス情報]
次に、マイクロサービス情報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と、が対応づけて設定(格納)されている。 Microservice information 25 associates and stores a microservice 141, an associated context 131, an associated subdomain 121, an associated use case description 122, an associated ubiquitous language 123, a similarity 124, and attribute information 125.

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

[ユースケース記述入力の表示例]
次に、ユースケース記述入力の表示例について図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 for use case description 156, 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 checking and editing the ubiquitous language as shown in FIG.
When the "Subdomain" button 153 is pressed, the user interface unit 11 displays an interface screen 170 for checking and editing subdomain information as shown in FIG.
When the "bounded context" button 154 is pressed, the user interface unit 11 displays an interface screen 200 for checking 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 "?" that displays an explanation of that 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." The use case description for category (a) is "Customers can view insurance products."
Category (b) is "Price/Cost." The use case description for category (b) is "The insurance company (new contract) confirms the payment of the insurance premium."
Category (c) is "Place/Convenience." The use case description for category (c) is "Customers access using a Web browser."
Category (d) is "Promotion/Communication." The use case description for category (d) is "Customers can receive recommendations for insurance products."

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

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

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

インタフェース画面160において、左側の欄161にユビキタス言語生成部13が生成したユビキタス言語の候補一覧が表示されている。ユーザは、候補一覧の中でユビキタス言語として使用する用語を選択し、画面中央の「移動」ボタン163を押下することで、選択した用語を右側のユビキタス言語の欄162に移すことができる。右側のユビキタス言語の欄162へ移動した用語を取り消す場合は、ユビキタス言語の一覧の中で取り消す用語を選択し、「戻り」ボタン164を押下することで移動が取り消される。 On the interface screen 160, a list of candidate ubiquitous languages generated by the ubiquitous language generation unit 13 is displayed in the 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 the "Move" button 163 in the center of the screen. To cancel a term that has been 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 the "Back" button 164 to cancel the move.

例えば、ユビキタス言語の候補として、「顧客」、「契約者」、「保険事業者(新契約)」、「システム」、「契約」、「必要事項/必要書類(申込)」、「書類」、「点検」、「アクセス」、「認証・認可」、「商品閲覧」、「申込」などが登録されている。この例では、左側の欄161に表示されたユビキタス言語の候補の全てが、右側のユビキタス言語の欄162に移動されている。 For example, the following ubiquitous language candidates are registered: "customer," "policyholder," "insurance provider (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 column 161 on the left have been moved to ubiquitous language column 162 on the right.

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

[サブドメイン情報の表示例]
次に、サブドメイン情報の表示例について図17~図19を用いて説明する。
図17は、サブドメイン情報を確認・編集するユーザインタフェース部11の表示例を示す図である。
[Example of subdomain information display]
Next, examples of displaying subdomain 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 checking 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 the organizational information 171 file and business information 172 file related to this use case description. The organizational information 171 may be provided in text format, including the names of departments, teams, etc. related to the use case description, or in spreadsheet file format. The business information 172 may be provided in text format, including the names of departments and roles related to the use case description, or in spreadsheet file format.

サブドメイン情報表示エリア173において、サブドメイン情報の候補は切り替え可能なタブ表示で示されており、複数のサブドメイン情報の候補を切り替えて表示できる。図17では、“候補1”のタグが選択されている。サブドメイン情報は、サブドメイン情報出力部14が生成したサブドメイン候補情報を表示している。 In the subdomain information display area 173, subdomain information candidates are displayed using switchable tabs, allowing multiple subdomain information candidates to be displayed by switching between them. In Figure 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 subdomain candidate information is displayed: "Access (browser/smartphone)," "Authentication/Authorization," "Contract Information Management," "System Operation," "Product Registration," "Product Viewing," "Application," "Inspection," "Appraisal," "Insurance Premium Deposit," "Policy Shipping," "Insurance Claim Application," "Review," "Insurance Claim Payment," "Progress Management (Contractor/Business)," and "Notification."

[サブドメイン情報の編集の表示例]
図18は、サブドメイン情報の編集の表示例を示す図である。
ユーザは、図18に示すように、「編集」ボタン174を押下することで、業務の流れに応じたサブドメインのつながり示す矢印を作図することができる。ユーザが「編集」ボタン174を押下することで、編集用ウィンドウが表示され、サブドメイン間に直線や矢印を入力することができる。
[Example of subdomain information editing]
FIG. 18 is a diagram showing an example of a display for editing subdomain information.
18, the user can draw arrows indicating connections between subdomains according to the business flow 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 subdomain attribute information display]
FIG. 19 is a diagram showing an example of display of attribute information of subdomain 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 has been edited to belong to one of a support subdomain 191, a core subdomain 192, and a general-purpose subdomain 193. For example, each subdomain can be easily distinguished from other subdomains by using different display colors or line styles 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, they can press the "OK" button at the bottom to send the currently displayed subdomain candidate information to the subdomain information output unit 14, and transition to the example context information display 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 shows an example of a display on the user interface unit 11 for checking and editing context information.

図20では、コンテキスト情報の表示例として、インタフェース画面200が示されている。インタフェース画面200は、「ユースケース」ボタン151、「ユビキタス」ボタン152、「サブドメイン」ボタン153、「境界付けられたコンテキスト」ボタン154、「コンテキストマップ」ボタン155、コンテキスト情報表示エリア201、「編集」ボタン202、「OK」ボタン、及び「キャンセル」ボタンを有する。 Figure 20 shows an interface screen 200 as an example of how context information is displayed. 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 the attribute information of the subdomain of the support subdomain 191 (product browsing, etc.), the middle row displays the attribute information of the subdomain of the core subdomain 192 (assessment), and the lower row displays the attribute information of the subdomain of the general-purpose subdomain 193 (insurance payment, etc.).

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

ユーザによるコンテキスト情報の編集が完了後に、下部の「OK」ボタンを押下することで、コンテキスト情報がコンテキスト情報出力部15に送信され、図21のコンテキストマップの表示例に遷移する。ユーザのコンテキストの編集でコンテキストを統合する場合、コンテキスト情報出力部15は関連付けられているサブドメイン情報、ユビキタス言語も統合して、サブドメイン情報23、コンテキスト情報24を更新する。 After the user has finished editing the context information, they can press the "OK" button at the bottom to send the context information to the context information output unit 15, and the display will transition to the example context map shown in Figure 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 Figure 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 context information editing in Figure 20 has been 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 launch 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 contexts. Furthermore, the user can add strings representing the connection method between 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, they can press the "OK" button at the bottom to send the context map to the microservice information output unit 16, and transition to the example microservice information display 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 candidate microservice information (microservice candidate 1 in the figure) is highlighted on a context map created by the user. The candidate microservice information displays the candidate microservice information created by the microservice information output unit 16. The candidate microservice information is displayed in an example in which the relevant context is surrounded by a line (e.g., border 221) that highlights the relevant context. Other display methods include changing the color of the relevant context or making it blink.

[マイクロサービス設計支援システムのハードウェア構成]
図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 the hardware configuration of the microservice design support system 10.
The microservice design support system 10 includes, as hardware, a computer 230. The computer 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 Figure 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 uses the main memory 232 to execute the processing of the software program. By the processor 231 executing the software program, 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 Figure 2 are realized.

通信装置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 entered by a user through a keyboard, mouse, or other operation. The information entered 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 according to this embodiment is a microservice design support system that supports the user in determining 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) into the 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 the 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 this embodiment, it is possible to systematize the organization of steps included in a customer's business process (subdomain information generation) based on input information (use case text information) related to the business process (business domain) of the customer, and to support the creation of microservices. In other words, it is possible to realize design support for microservices that eliminates dependency on individual skills.
This has the effect of stabilizing design quality without relying on the intuition or experience of skilled workers.

また、本実施形態に係るマイクロサービス設計支援システムは、サブドメイン情報に基づき、業務プロセスにおいて類似するコンテキスト同士の境界を表すコンテキスト情報を生成するコンテキスト情報出力部(コンテキスト情報出力部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, based on the context information, a candidate diagram of microservice boundaries (microservice map) relating to the correspondence between each process included in the business process.

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

また、本実施形態に係るマイクロサービス設計支援システムは、過去のマイクロサービス設計情報を格納する過去設計情報格納部(過去設計情報22)と、サブドメイン情報と過去のマイクロサービス設計情報との類似度を算出する類似度算出部(サブドメイン情報出力部14)と、をさらに備える。そして、サブドメイン情報出力部(サブドメイン情報出力部14)は、上記類似度が閾値以上である場合に、過去のマイクロサービス設計情報からサブドメイン情報を取得し、取得したサブドメイン情報と生成したサブドメイン情報との類似度に基づいて、生成したサブドメイン情報を更新し、サブドメイン情報を出力する。 The microservice design support system according to this embodiment also 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 subdomain information and 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 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 past microservice design information.

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

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

また、上述した実施形態にかかるマイクロサービス設計支援システム10の各構成要素は、それぞれのハードウェアがネットワークを介して互いに情報を送受信できるならば、いずれのハードウェアに実装されてもよい。また、ある処理部により実施される処理が、1つのハードウェアにより実現されてもよいし、複数のハードウェアによる分散処理により実現されてもよい。 Furthermore, each component of the microservice design support system 10 according to the above-described embodiment may be implemented on any hardware, as long as the respective 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において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成要素が相互に接続されていると考えてもよい。 Furthermore, in the microservice design support system 10 of the above-described embodiment, the control lines and information lines shown are those considered necessary for explanation, and not all control lines and information lines in the product are necessarily shown. In reality, it can be assumed that almost all components are interconnected.

また、本明細書において、時系列的な処理を記述する処理ステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的、あるいは個別に実行される処理(例えば、オブジェクトによる処理)をも含むものである。また、時系列的な処理を記述する処理ステップについては、処理結果に影響を及ぼさない範囲で、処理順序を変更してもよい。 In addition, in this specification, 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 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 unit, 12...Use case input unit, 13...Ubiquitous language generation unit, 14...Subdomain information output unit, 15...Context information output unit, 16...Microservice information output unit, 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 determining areas to be converted into microservices in a user's business process,
a use case input unit into which use cases related to the user's business process are input as text information;
a ubiquitous language generation unit that generates ubiquitous language related to components included in the text information of the use case input to the use case input unit;
a subdomain information output unit that 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.
前記サブドメイン情報に基づき、前記業務プロセスにおいて類似するコンテキスト同士の境界を表すコンテキスト情報を生成するコンテキスト情報出力部と、
前記コンテキスト情報に基づき、前記業務プロセスに含まれる各プロセスの対応関係に関するマイクロサービス境界の候補図を生成するマイクロサービス情報出力部と、をさらに備える
請求項1に記載のマイクロサービス設計支援システム。
a context information output unit that generates context information representing a boundary between similar contexts in the business process based on the subdomain 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;
Further comprising 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 the text information of the grouped use cases based on whether the information is similar in the business process, thereby generating subdomain information.
ユーザの業務プロセスにおいてマイクロサービス化する領域決定を支援するマイクロサービス設計支援システムが備えるコンピューターに、
前記ユーザの業務プロセスに関連するユースケースをテキスト情報として入力する手順と、
入力された前記ユースケースのテキスト情報に含まれる構成要素に関連するユビキタス言語を生成する手順と、
前記ユビキタス言語と前記ユースケースに基づいて、意味の近い要素を含むユースケースをグループ化し、さらに前記グループ化されたユースケースのテキスト情報のうち、前記業務プロセスにおいて類似する情報か否かに基づきサブグループ化して、サブドメイン情報を生成する手順を、
実行させるためのプログラム。
The microservice design support system helps users decide which areas of their business processes to turn into microservices.
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 procedure for grouping use cases including elements with 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 run.
JP2023028670A 2023-02-27 2023-02-27 Microservice design support system, microservice design support method and program Active JP7824901B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023028670A JP7824901B2 (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 JP7824901B2 (en) 2023-02-27 2023-02-27 Microservice design support system, microservice design support method and program

Publications (2)

Publication Number Publication Date
JP2024121524A JP2024121524A (en) 2024-09-06
JP7824901B2 true JP7824901B2 (en) 2026-03-05

Family

ID=92594373

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JP7824901B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5965785B2 (en) 2012-08-29 2016-08-10 株式会社日立製作所 Use case scenario creation support device, use case scenario creation support method, and use case scenario creation support program
US20220114509A1 (en) 2020-10-08 2022-04-14 Jpmorgan Chase Bank, N.A. Decentralized domain-oriented data architecture

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5965785B2 (en) 2012-08-29 2016-08-10 株式会社日立製作所 Use case scenario creation support device, use case scenario creation support method, and use case scenario creation support program
US20220114509A1 (en) 2020-10-08 2022-04-14 Jpmorgan Chase Bank, N.A. Decentralized domain-oriented data architecture

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
【DDD】1年やってみてわかったドメインモデリングの型,Zenn blog,Zenn,2022年12月14日,http://zenn.dev/innoscounter/articles/b1973a7032ff8a/
ドメイン駆動設計を用いてマイクロサービスに分割することを考える,Qiita blog,Qiita,2020年01月27日,http://qiita.com/tsukumr/1f8f68f7d9f28cd20380/
ドメイン駆動設計入門【DDDをわかりやすく解説】,楽水blog,楽水,2021年07月18日,https://rakusui.org/ddd/

Also Published As

Publication number Publication date
JP2024121524A (en) 2024-09-06

Similar Documents

Publication Publication Date Title
Musa et al. Marketing research trends using technology acceptance model (TAM): A comprehensive review of researches (2002–2022)
US10509798B2 (en) Data flow design with static and dynamic elements
JP6871759B2 (en) Judgment support system and judgment support method
JP6623754B2 (en) Tabular data processing program, method and apparatus
US9922383B2 (en) Patent claims analysis system and method
US20150032645A1 (en) Computer-implemented systems and methods of performing contract review
JP7313069B2 (en) Search material information storage device
JP5424798B2 (en) METADATA SETTING METHOD, METADATA SETTING SYSTEM, AND PROGRAM
JP2016038658A (en) Supplier search device and search method
JP2015184723A (en) Document creation support system
Schmidt et al. The data infrastructure of the German Kompetenznetzwerk Bibliometrie: An enabling intermediary between raw data and analysis
Bhatia et al. Machine Learning with R Cookbook: Analyze data and build predictive models
US20170286551A1 (en) Scalable processing of heterogeneous user-generated content
JP6985322B2 (en) Document creation support device, document creation support method and program
CN114175021A (en) System and method for generating logical documents for a document evaluation system
JP7824901B2 (en) Microservice design support system, microservice design support method and program
Ibragimova et al. AI tools usage in Emerald journal articles
Moreira et al. The importance of the product development process for companies: A bibliometric analysis of the Stage-Gate model
JP2009193470A (en) Electronic approval workflow system
Grüblbauer et al. Social media monitoring tools as instruments of strategic issues management
Haseli et al. Journal of Librarianship and Information Science (JOLIS) from a bibliometric perspective (1991-2023)
US20230143297A1 (en) Production knowledge management system, production knowledge management method, and production knowledge management program
JP4946779B2 (en) Risk category management system, risk category management device, and risk category management program
US20130265326A1 (en) Discovering a reporting model from an existing reporting environment
Domínguez García et al. FReSET: an evaluation framework for folksonomy-based recommender systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20250305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20260127

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20260203

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260220

R150 Certificate of patent or registration of utility model

Ref document number: 7824901

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150