JP2018142126A - Naming device, naming method and naming program - Google Patents
Naming device, naming method and naming program Download PDFInfo
- Publication number
- JP2018142126A JP2018142126A JP2017035234A JP2017035234A JP2018142126A JP 2018142126 A JP2018142126 A JP 2018142126A JP 2017035234 A JP2017035234 A JP 2017035234A JP 2017035234 A JP2017035234 A JP 2017035234A JP 2018142126 A JP2018142126 A JP 2018142126A
- Authority
- JP
- Japan
- Prior art keywords
- rule
- character string
- unit
- element extraction
- tag information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Machine Translation (AREA)
- Stored Programmes (AREA)
Abstract
Description
本発明は、名称設計装置、名称設計方法、および、名称設計プログラムの技術に関する。 The present invention relates to a name design apparatus, a name design method, and a technology of a name design program.
地図検索などの処理システムをWebサービスとしてウェブ上に提供し、そのWebサービスを実行させる事業者が増えている。プログラミングをする開発者は、自社のサービスを実行する際に外部のWebサービスに処理を依頼し、そのWebサービスからの処理結果を得る。これにより、他事業者が提供するWebサービスを取り込んで、自社のサービスを構築し、運用することができる。 An increasing number of businesses provide a processing system such as a map search on the web as a web service and execute the web service. A developer who performs programming requests an external Web service to execute a service of the company and obtains a processing result from the Web service. As a result, it is possible to take in a Web service provided by another business operator and construct and operate its own service.
Webサービスに処理を依頼するときには、そのWebサービスが公開しているAPI(Application Programming Interface)に沿って、依頼する処理内容を記述する必要がある。APIとは、呼び出すプログラムの関数名(メソッド名)、その関数で使用される変数名(パラメータ名)、Webサービスの位置をネットワーク内で特定するためのURL(Uniform Resource Locator)などの集合である。よって、Webサービスを呼び出しやすくするためには、わかりやすいAPIの名称を心がける必要がある。 When requesting processing to a Web service, it is necessary to describe the processing content to be requested in accordance with an API (Application Programming Interface) published by the Web service. The API is a set of a function name (method name) of a program to be called, a variable name (parameter name) used in the function, a URL (Uniform Resource Locator) for specifying the position of the Web service in the network, and the like. . Therefore, in order to make it easy to call a Web service, it is necessary to keep in mind an easy-to-understand API name.
多くのプログラミング言語の名称定義では、英語などのアルファベット文字が使用される。しかし、英語に不慣れな日本人の開発者がアルファベット文字の変数名を名付けることは、難しい。
そこで、非特許文献1には、日本語で表記した変数名を入力すると、その変数名を英語表記に翻訳した結果を返すネーミングツールが提供されている。例えば、「お客様氏名」をネーミングツールに入力すると、「customerName」という結果が出力される。このネーミングツールにより、APIの名称を設計する負担を軽減することができる。
Many programming language name definitions use alphabetic characters such as English. However, it is difficult for Japanese developers who are unfamiliar with English to name alphabetic variable names.
Therefore, Non-Patent Document 1 provides a naming tool that, when a variable name written in Japanese is input, returns the result of translating the variable name into English. For example, if “customer name” is input to the naming tool, the result “customerName” is output. With this naming tool, the burden of designing the API name can be reduced.
APIの名称を設計するプログラマは、実装経験や得意な言語などの違いにより、名称設計の結果にも個々人のばらつき(クセ)が存在する。例えば、既に存在しているWebサービスの開発を開発者Aから開発者Bが引き継いだとする。このWebサービスでは、顧客の電話番号をパラメータとして使用する。 The programmer who designs the name of the API also has individual variations (habits) in the result of the name design due to differences in implementation experience and good language. For example, it is assumed that developer B takes over development of an existing Web service from developer A. This Web service uses a customer's telephone number as a parameter.
開発者Aは「TelNumberOfCustomer」というパラメータを設計し、顧客の電話番号として用いていた。しかし、引き継いだ開発者Bは「UserTelNumber」というパラメータを追加し、顧客の電話番号として用いることにした。
ここで、同じ顧客の電話番号を示す「TelNumberOfCustomer」と「UserTelNumber」とが不整合(表記揺れ)となってしまう。つまり、開発者Aは「電話番号」という要素を「顧客」という要素よりも先の順序とするクセがある。一方、開発者Bは「電話番号」という要素を「顧客」という要素よりも後の順序とするクセがある。
従来では、このようなパラメータ名の不整合を人手でチェックする必要があったため、新規パラメータを追加するときの整合性チェックが大きな負担となっていた。
Developer A designed a parameter called “TelNumberOfCustomer” and used it as the customer's phone number. However, Developer B who succeeded decided to add a parameter called “UserTelNumber” and use it as the customer's phone number.
Here, “TelNumberOfCustomer” indicating the telephone number of the same customer and “UserTelNumber” are inconsistent (notation fluctuation). In other words, developer A has the habit of placing the element “phone number” in the order ahead of the element “customer”. On the other hand, the developer B has a habit of setting the element “telephone number” after the element “customer”.
Conventionally, it has been necessary to manually check for such inconsistencies in parameter names, and thus checking consistency when adding new parameters has been a heavy burden.
そこで、本発明は、個々の開発者の名付け傾向にばらつきがあっても、整合性のとれた名称設計を支援することを、主な課題とする。 Therefore, the main object of the present invention is to support consistent name design even when the naming tendency of individual developers varies.
前記課題を解決するために、本発明の名称設計装置は、以下の特徴を有する。
本発明は、入力データの文字列の少なくとも一部である要素について、要素ごとに変換後の文字列とタグ情報とを規定する要素抽出ルール、および、タグ情報間の順序情報を規定する順序ルールが記憶されている記憶部と、
前記入力データの文字列から前記要素抽出ルールに規定される複数の要素を抽出し、その抽出した要素ごとに前記要素抽出ルールに従って前記変換後の文字列を作成する要素抽出部と、
前記要素抽出部が抽出した要素ごとに前記要素抽出ルールから対応するタグ情報を取得し、前記順序ルールに規定されるタグ情報間の順序情報に従って、前記要素抽出部による前記変換後の文字列を並び替えた後に、それらの前記変換後の文字列を連結して名称設計の出力データとする要素順序決定部と、を有することを特徴とする。
In order to solve the above problems, the name design apparatus of the present invention has the following characteristics.
The present invention relates to an element extraction rule that prescribes a converted character string and tag information for each element that is at least part of a character string of input data, and an order rule that prescribes order information between tag information A storage unit storing
An element extraction unit that extracts a plurality of elements defined in the element extraction rule from a character string of the input data, and creates the converted character string in accordance with the element extraction rule for each extracted element;
For each element extracted by the element extraction unit, corresponding tag information is acquired from the element extraction rule, and the converted character string by the element extraction unit is obtained according to the order information between the tag information defined in the order rule. And an element order determining unit that, after rearranging, concatenates the converted character strings into name design output data.
これにより、入力データの文字列の出現順序について個々の開発者の名付け傾向にばらつきがあっても、順序ルールを適用することで、整合性のとれた名称設計を支援することができる。 As a result, even if there is a variation in the naming tendency of individual developers with respect to the appearance order of the character strings of the input data, consistent name design can be supported by applying the order rules.
本発明は、前記要素抽出ルールには、要素ごとのタグ情報として、要素の品詞が対応付けられており、
前記要素順序決定部が、前記順序ルールに規定される品詞間の順序情報に従って、前記変換後の文字列を並び替えることを特徴とする。
In the present invention, the element extraction rule is associated with the part of speech of the element as tag information for each element,
The element order determination unit rearranges the converted character strings in accordance with order information between parts of speech defined in the order rule.
これにより、名詞や形容詞などの種類が少なく汎用性の高い品詞を用いてルールを記述することで、事前に用意するルールの数を減らすことができる。 Thereby, the number of rules prepared in advance can be reduced by describing rules using part-of-speech that has few types such as nouns and adjectives and is highly versatile.
本発明は、前記名称設計装置が、さらに、ルール適用部を有しており、
前記ルール適用部が、前記記憶部に記憶される前記要素抽出ルール、および、前記順序ルールのうちの少なくとも1つのルールを前記名称設計装置の外部から読み書き可能に構成することを特徴とする。
In the present invention, the name design device further includes a rule application unit,
The rule application unit is configured to be able to read and write at least one of the element extraction rules and the order rules stored in the storage unit from the outside of the name design apparatus.
これにより、複数台の名称設計装置で同じルールを流用しやすくできるので、異なる事業者間の名称設計であっても整合性のとれた名称設計が期待される。 Thereby, since the same rule can be easily diverted by a plurality of name design apparatuses, a consistent name design is expected even for name designs between different business operators.
本発明は、入力データの文字列の少なくとも一部である要素について、要素ごとに変換後の文字列とタグ情報とを規定する要素抽出ルール、および、階層化を行う対象であるタグ情報を規定する階層化ルールが記憶されている記憶部と、
前記入力データの文字列から前記要素抽出ルールに規定される複数の要素を抽出し、その抽出した要素ごとに前記要素抽出ルールに従って前記変換後の文字列を作成する要素抽出部と、
前記要素抽出部が抽出した要素ごとに前記要素抽出ルールから対応するタグ情報を取得し、取得したタグ情報が前記階層化ルールにおいて階層化を行う対象であるときに、前記要素抽出部による前記変換後の文字列を連結した連結文字列を階層化した名称設計の出力データとする階層化部と、を有することを特徴とする。
The present invention defines an element extraction rule that defines a converted character string and tag information for each element, and tag information that is a target of hierarchization, for elements that are at least part of a character string of input data A storage unit in which the hierarchization rules to be stored are stored;
Extracting a plurality of elements defined in the element extraction rule from the character string of the input data, and creating the converted character string in accordance with the element extraction rule for each extracted element;
For each element extracted by the element extraction unit, corresponding tag information is acquired from the element extraction rule, and when the acquired tag information is a target to be hierarchized in the hierarchization rule, the conversion by the element extraction unit And a hierarchizing unit that outputs output data of a name design obtained by hierarchizing a concatenated character string obtained by concatenating subsequent character strings.
これにより、入力データの文字列の階層構造の設計思想について個々の開発者にばらつきがあっても、階層化ルールを適用することで、整合性のとれた名称設計を支援することができる。 Thereby, even if individual developers vary in the design concept of the hierarchical structure of the character string of the input data, it is possible to support consistent name design by applying the hierarchization rule.
本発明によれば、個々の開発者の名付け傾向にばらつきがあっても、整合性のとれた名称設計を支援することができる。 According to the present invention, consistent name design can be supported even when the naming tendency of individual developers varies.
以下、本発明の一実施形態について、図面を参照して詳細に説明する。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
図1は、名称設計装置2の構成図である。この名称設計装置2は、CPU(Central Processing Unit)と、メモリと、ハードディスクなどの記憶手段(記憶部)と、ネットワークインタフェースとを有するコンピュータとして構成される。
このコンピュータは、CPUが、メモリ上に読み込んだプログラム(アプリケーションや、その略のアプリとも呼ばれる)を実行することにより、各処理部により構成される制御部(制御手段)を動作させる。
FIG. 1 is a configuration diagram of the name design device 2. The name design device 2 is configured as a computer having a CPU (Central Processing Unit), a memory, storage means (storage unit) such as a hard disk, and a network interface.
In this computer, the CPU executes a program (also referred to as an application or its abbreviated application) read on the memory, thereby operating a control unit (control means) configured by each processing unit.
名称設計装置2は、処理部として、入力部22と、要素分割部(要素抽出部)23と、要素順序決定部24と、階層化部25とを有している。
名称設計装置2の記憶部には、要素分割ルール(要素抽出ルール)33と、優先度ルール(順序ルール)34と、階層化ルール35とが格納される。さらに、記憶部には、入力データ11と、出力データ12と、入力データ11から出力データ12に加工される過程の中間データとがそれぞれ格納される。
The name design device 2 includes an
The storage unit of the name design device 2 stores an element division rule (element extraction rule) 33, a priority rule (order rule) 34, and a
以下、名称設計装置2の各処理部の概要を説明する。この各処理部の詳細は、図3以降の具体例を用いた説明にて、明らかにする。
入力部22は、例えば、「お客様氏名」を「customerName」に変換するときには、「お客様氏名」を入力データ11として受け付ける。
要素分割部23は、要素分割ルール33を参照して、入力データ11を最小単位である要素として分割する。
要素順序決定部24は、優先度ルール34を参照して、要素分割部23が分割した各要素の順序を決定する。さらに、要素順序決定部24は、決定された順序に従って、入力データ11の各要素を連結することにより、1つの名称を作成する。例えば、「customerName」は、名称の作成結果の一例である。
階層化部25は、要素順序決定部24が作成した名称に対して、階層化ルール35に従って、1つ以上の名称を1つの階層(グループ)に束ねる。この階層構造は、例えば、3つのメンバ変数を含む1つのクラス(オブジェクト)としてAPI設計に具現化される。そして、階層化部25は、階層化されたデータを出力データ12とする。
Hereinafter, an outline of each processing unit of the name design device 2 will be described. Details of each processing unit will be clarified in the description using specific examples in FIG.
For example, when converting “customer name” to “customerName”, the
The
The element
The
図2は、図1の名称設計装置2に対して、外部のカスタマイズ機能を付加した構成である。図2の名称設計装置2は、ルール適用部21が追加されている。
ルール適用部21は、ユーザから入力されたルール指定データ13を、各ルールに反映させることで、各処理部の名称設計処理をユーザの要望に沿うようにカスタマイズする。ルール指定データ13は、要素分割ルール33、優先度ルール34、および、階層化ルール35のうちの少なくとも1つのルールである。
FIG. 2 shows a configuration in which an external customization function is added to the name design apparatus 2 of FIG. In the name design apparatus 2 of FIG. 2, a
The
また、ルール指定データ13は、あらかじめ用意された共通ルールをそのままルール指定データ13で置き換える(全部指定)こととしてもよい。一方、あらかじめ用意された共通ルールの一部をルール指定データ13が上書きし、上書きしない残りの部分は共通ルールを用いる(一部指定)こととしてもよい。共通ルールの一部をローカルルールとして書き換えることで、API設計の共通化方針とは別に、各事業者・組織の文化に沿ったAPI設計が実現できる。
さらに、ルール適用部21は、ルール指定データ13を名称設計装置2内に入力(インポート)するだけでなく、名称設計装置2内の各ルールをルール指定データ13として出力(エクスポート)することで、複数のユーザで同じルール指定データ13を共用させてもよい。
Further, the
Furthermore, the
このように、ルール適用部21を介してルール指定データ13を入出力可能にする構成は、複数の事業者それぞれで異なるAPIを設計するときに、とくに有益である。
例えば、C社が設計したユーザシステムでは、A社の提供するWebサービスSAと、B社の提供するWebサービスSBとの両方を呼び出すとする。もし、A社の開発者と、B社の開発者とで同じルール指定データ13を共用してパラメータ名を設計していれば、WebサービスSAと、WebサービスSBとで、使用されるパラメータ名に整合が取れている。よって、C社の開発者は、少ない学習コストで、WebサービスSAと、WebサービスSBとの両方を呼び出すシステムを構築できる。
一方、A社の開発者と、B社の開発者とが別々のルールに従ってパラメータ名を設計した場合、C社の開発者は、不整合のパラメータ群をそれぞれ把握した上で、システムを構築しなくてはいけない。
As described above, the configuration in which the
For example, in a user system designed by company C, it is assumed that both a web service SA provided by company A and a web service SB provided by company B are called. If the developer of company A and the developer of company B share the same
On the other hand, when the developer of company A and the developer of company B design the parameter names according to different rules, the developer of company C constructs the system after grasping each inconsistent parameter group. It must be.
図3は、各ルールの詳細を示すテーブルデータである。
要素分割ルール33は、変換前の入力データ11の要素と、変換後の要素と、要素に付される1つ以上のタグとを対応付けている。要素分割ルール33として、例えば、変換前の要素を形態素とし、その形態素ごとの品詞をタグとした形態素解析の辞書を用いることができる。さらに、要素分割ルール33として、変換前の要素を示す第1言語の単語と、変換後の要素を示す第2言語の単語とを対応付ける翻訳用辞典を用いてもよい。
ここで、要素分割ルール33のタグには、前記した品詞の他に、要素の意味内容を示す情報(顧客など)や、変換を行わない「禁止」を示す情報も含めてもよい。
FIG. 3 is table data showing details of each rule.
The
Here, in addition to the above-mentioned part of speech, the tag of the
要素分割部23は、例えば、「お客様氏名」という入力データ11に対して、要素分割ルール33の変換前「お客様」のレコードと、変換前「氏名」のレコードとを参照することで、「お客様」という第1要素と、「氏名」という第2要素とに分割する。
ここで、要素分割ルール33の変換前→変換後の対応データは、1:1に限定されず、M:1の対応付けをしてもよい。例えば、図3の要素分割ルール33では、変換前「顧客」と、変換前「お客様」と、変換前「user」とが同じ変換後「customer」に対応付けられる3:1データである。これにより、異なる事業者で「顧客」と入力しても、「お客様」と入力しても、同じ「customer」に変換されるため、表記ゆれに起因するAPI名称の違いを防止できる。
For example, the
Here, the pre-conversion-to-conversion correspondence data of the
優先度ルール34は、要素順序決定部24が要素を並び替えた後の各順序(第1順序、第2順序、第3順序、…)の要素の特徴(タグ)を列挙したデータである。
例えば、要素順序決定部24は、「お客様」という第1要素と、「氏名」という第2要素とについては、優先度ルール34には該当するレコードが存在しないので、そのままの順序とする。
さらに、図示は省略したが、優先度ルール34は、要素を並び替えた後の各要素の変換後文字列を連結するときの連結ルールも併せて含めてもよい。例えば、要素「customer」の後に要素「name」を連結するときに、連結ルール「スネークケース」が指定されていたときは「customer_name」となり、連結ルール「キャメルケース」が指定されていたときは「CustomerName」となる。
The
For example, the element
Further, although not shown, the
階層化ルール35は、各要素のタグについて、そのタグが属する階層名を対応付けるデータである。
例えば、階層化部25は、「お客様」という第1要素と、「氏名」という第2要素とについては、どのタグ「契約、保守、運用」にも該当しないので、「お客様氏名」は階層化の対象外とする。
なお、階層化ルール35では、タグと階層とは1:1に限定されない。保守と運用という異なる2つのタグであっても、同じ1つの階層(operator(保守担当))に対応付けてもよい。
The
For example, the
In the
図4は、名称設計装置2の実行結果を示す第1例である。
入力部22は、文字列「顧客電話番号」を、入力データ11として受け付ける(符号101の処理)。
要素分割部23は、文字列「顧客電話番号」の少なくとも一部を検索キーとして要素分割ルール33の変換前列から検索することで、「顧客」と「電話番号」という2つの要素を得る。よって、要素分割部23は、分割前の「顧客電話番号」から、「顧客」の変換後文字列「customer」と、「電話番号」の変換後文字列「ContactTel」という2つの要素に分割する(符号102の処理)。
FIG. 4 is a first example showing the execution result of the name design device 2.
The
The
なお、要素分割ルール33の変換前列には、「電話番号」という要素だけでなく「電話」という要素と、「番号」という要素も存在する。このように候補が複数存在するときには、要素分割部23は、要素分割ルール33の上の行(先頭の行)に近いエントリを優先して採用してもよい。または、要素分割部23は、入力データ11の文字列と、要素分割ルール33の変換前列記載の文字列とで一致する文字列長が長い要素ほど優先して採用してもよい。
In addition, in the pre-conversion column of the
要素順序決定部24は、分割された複数の要素間の順序を優先度ルール34に従って決定する。例えば、要素分割ルール33には、要素ごとのタグが規定されており、要素「顧客」のタグ「名詞、顧客」と、要素「電話番号」のタグ「名詞、一般」とを取得できる。
要素順序決定部24は、優先度ルール34において要素分割ルール33に規定されたタグごとの順序情報から、符号102の処理で分割された今回のタグ情報に該当する順序情報を検索する。ここでは、2つの要素がともに「名詞」であり、優先度ルール34の第2行「第1順序=部署名(名詞)、第2順序=担当名(名詞)」にも該当しないので、今回のタグ情報に該当する順序情報は存在しない。よって、要素順序決定部24は、「顧客」と「電話番号」という2つの要素の順序を変更せず、そのまま「CustomerContactTel」として連結する(符号103の処理)。
The element
The element
階層化部25は、符号103の処理で連結された「CustomerContactTel」をどの階層に属するようにするかを、階層化ルール35に従って決定する。しかし、今回の要素「顧客」のタグ「名詞、顧客」と、要素「電話番号」のタグ「名詞、一般」とは、階層化ルール35のどのタグ「契約、保守、運用」にも該当しない。よって、階層化部25は、「CustomerContactTel」を階層外とし、そのまま出力データ12として出力する(符号104の処理)。
以上、図4を参照して、優先度ルール34による順序変更を行わず、階層化ルール35による階層化も行わない第1例を説明した。
The
The first example in which the order change by the
図5は、名称設計装置2の実行結果を示す第2例である。図4の第1例と比較すると、図5の第2例は、優先度ルール34による順序変更を行い、かつ、階層化ルール35による階層化も行う例である。
入力部22は、文字列「連絡先緊急時」を、入力データ11として受け付ける(符号201の処理)。
要素分割部23は、文字列「連絡先緊急時」を要素分割ルール33の変換前列から検索することで、「連絡先」の変換後文字列「ContactTel」と、「緊急」の変換後文字列「emergency」という2つの要素を得る(符号202の処理)。
FIG. 5 is a second example showing the execution result of the name design device 2. Compared to the first example of FIG. 4, the second example of FIG. 5 is an example in which the order is changed by the
The
The
要素順序決定部24は、要素分割ルール33から取得した要素「連絡先」のタグ「名詞、一般」と、要素「緊急」のタグ「形容詞、契約」とをもとに、要素間の順序を優先度ルール34に従って決定する。ここでは、1つの「名詞」要素と、1つの「形容詞」要素とが存在するので、今回のタグ情報には優先度ルール34の第1行「第1順序=形容詞、第2順序=名詞」が該当する。
よって、タグ「形容詞」の要素「緊急」を第1順序(先頭)とし、タグ「名詞」の要素「連絡先」を第2順序となるように順序を変更する。その変更後の順序に従って、要素順序決定部24は、2つの要素の変換後の文字列を連結することで「EmergencyContactTel」を生成する(符号203の処理)。
The element
Therefore, the order is changed so that the element “emergency” of the tag “adjective” is in the first order (first) and the element “contact” of the tag “noun” is in the second order. In accordance with the changed order, the element
階層化部25は、符号203の処理で連結された「EmergencyContactTel」の構成要素のタグ集合「名詞、一般、形容詞、契約」を階層化ルール35のタグ列から検索する。今回は階層化ルール35の第1行のタグ「契約」に該当する。よって、階層化部25は、文字列「EmergencyContactTel」を階層化ルール35の第1行の階層名「contractor(契約担当)」に階層化(グループ化)する(符号204の処理)。ここでは、階層化の表記として、JSON(JavaScript Object Notation)形式を用いている。このように、文字列「連絡先緊急時」を「EmergencyContactTel」として階層「contractor(契約担当)」に追加した。
さらに、符号204の処理で階層化された「EmergencyContactTel」には、「03xxxxxxxx」というサンプル値が対応付けられている。このサンプル値は、要素分割ルール33として、要素「連絡先」に対応付けられているものを、階層化部25が読み出して利用した(図示省略)。
The
Further, “EmergencyContactTel” hierarchized by the process of
なお、階層「contractor(契約担当)」には以前に別の文字列として、「通常連絡先」を示す「weekdayContactTel」のエントリも存在していた。名称設計装置2は、入力データ11の処理が終わった段階で、階層化された各データを出力データ12とする(符号205の処理)。
以上、図5では、要素分割ルール33→優先度ルール34→階層化ルール35の順にルールを適用した。一方、要素分割ルール33→優先度ルール34だけ適用してもよいし、要素分割ルール33→階層化ルール35だけ適用してもよい。
In addition, in the hierarchy “contractor”, an entry of “weekdayContactTel” indicating “ordinary contact” was previously present as another character string. The name design device 2 sets each of the hierarchized data as
As described above, in FIG. 5, the rules are applied in the order of the
図6は、名称設計装置2の実行結果を示す第3例である。この第3例は、階層化部25による処理結果をもとに、階層化ルール35を用いたときの整合性のとれた名称設計の効果を説明するものである。
まず、入力データ11として、符号301に示す4つの文字列(パラメータ)をAPI設計に組み込む旨の依頼を開発者A,Bがそれぞれ受けたとする。
開発者Aは、「顧客」、「トラブル問合わせ先」という人物に着目した階層化の出力データ12を作成した(符号302)。一方、開発者Bは、「電話番号」、「メールアドレス」というデータ形式に着目した階層化の出力データ12を作成した(符号303)。このように、同じデータを扱う場合でも、開発者の個人差により、APIの設計結果にばらつきが生じてしまう。
FIG. 6 is a third example showing the execution result of the name design device 2. This third example explains the effect of consistent name design when the
First, it is assumed that developers A and B have received requests to incorporate four character strings (parameters) denoted by
Developer A created
そこで、符号304に示す階層化ルール35をあらかじめ用意しておいた名称設計装置2を、開発者A,Bに使用させる。この階層化ルール35は、もし、入力データ11に階層化ルール35の第1列の要素が含まれている場合、その入力データ11を第2列の階層名が示す階層にグループ化するとともに、第1列の要素を示す文字列を削除する(第3列の削除フラグが○の場合)ことを示す。
例えば、符号301の「顧客電話番号」には、「顧客」という要素が含まれているので、階層化部25は、「顧客電話番号」から「顧客」を削除した「電話番号」を、階層「顧客」の下に配置する。
これにより、データ形式に着目した階層化をするクセがある開発者Bであっても、名称設計装置2を用いることで、符号302に示す開発者Aの階層化結果と整合が取れたものを得ることができる。
Therefore, the developers A and B are allowed to use the name design device 2 in which the
For example, since the element “customer” is included in the “customer telephone number” denoted by
As a result, even if the developer B has a habit of hierarchizing focusing on the data format, by using the name design device 2, what is consistent with the hierarchization result of the developer A indicated by
以上説明した本実施形態では、各種ルール(要素分割ルール33、優先度ルール34、階層化ルール35)に沿って、入力データ11から出力データ12を名称設計装置2に作成させる。これにより、開発者のクセが入力データ11に含まれていたとしても、各種ルールを適用する段階で整合性の取れた出力データ12を作成することができる。
さらに、名称設計装置2の各種ルールに用いるタグとして、形容詞、動詞などの品詞や、時間、場所などの抽象的な定義を用いることにより、各種ルールの定義数(テーブルのレコード数)を削減でき、名称設計装置2を動作させるときの事前の負担を減らすことができる。
一方、非特許文献1などの従来の技術では、単に要素を日本語から英語に変換するだけなので、要素の順序などの開発者のクセが変換後もそのまま残ってしまう。
In the present embodiment described above, the name design apparatus 2 is made to create the
Furthermore, the definition number of various rules (the number of records in the table) can be reduced by using parts of speech such as adjectives and verbs and abstract definitions such as time and place as tags used for various rules of the name design device 2. The prior burden when operating the name design apparatus 2 can be reduced.
On the other hand, in the conventional technology such as Non-Patent Document 1, since the elements are simply converted from Japanese to English, the habit of the developer such as the order of elements remains after conversion.
2 名称設計装置
11 入力データ
12 出力データ
13 ルール指定データ
21 ルール適用部
22 入力部
23 要素分割部(要素抽出部)
24 要素順序決定部
25 階層化部
33 要素分割ルール(要素抽出ルール)
34 優先度ルール(順序ルール)
35 階層化ルール
2 Name design device 11
24 element
34 Priority rules (order rules)
35 Tiering rules
Claims (7)
前記入力データの文字列から前記要素抽出ルールに規定される複数の要素を抽出し、その抽出した要素ごとに前記要素抽出ルールに従って前記変換後の文字列を作成する要素抽出部と、
前記要素抽出部が抽出した要素ごとに前記要素抽出ルールから対応するタグ情報を取得し、前記順序ルールに規定されるタグ情報間の順序情報に従って、前記要素抽出部による前記変換後の文字列を並び替えた後に、それらの前記変換後の文字列を連結して名称設計の出力データとする要素順序決定部と、を有することを特徴とする
名称設計装置。 For an element that is at least part of the character string of the input data, an element extraction rule that defines the converted character string and tag information for each element and an order rule that defines the order information between the tag information are stored. A storage unit,
Extracting a plurality of elements defined in the element extraction rule from the character string of the input data, and creating the converted character string in accordance with the element extraction rule for each extracted element;
For each element extracted by the element extraction unit, corresponding tag information is acquired from the element extraction rule, and the converted character string by the element extraction unit is obtained according to the order information between the tag information defined in the order rule. An element order determination unit comprising: an element order determining unit that, after rearranging, concatenates the converted character strings into output data for name design.
前記要素順序決定部は、前記順序ルールに規定される品詞間の順序情報に従って、前記変換後の文字列を並び替えることを特徴とする
請求項1に記載の名称設計装置。 The element extraction rule is associated with the part of speech of the element as tag information for each element,
The name design apparatus according to claim 1, wherein the element order determination unit rearranges the converted character strings in accordance with order information between parts of speech defined in the order rule.
前記ルール適用部は、前記記憶部に記憶される前記要素抽出ルール、および、前記順序ルールのうちの少なくとも1つのルールを前記名称設計装置の外部から読み書き可能に構成することを特徴とする
請求項1または請求項2に記載の名称設計装置。 The name design device further includes a rule application unit,
The rule application unit is configured to read and write at least one of the element extraction rule and the order rule stored in the storage unit from the outside of the name design device. The name design apparatus of Claim 1 or Claim 2.
前記入力データの文字列から前記要素抽出ルールに規定される複数の要素を抽出し、その抽出した要素ごとに前記要素抽出ルールに従って前記変換後の文字列を作成する要素抽出部と、
前記要素抽出部が抽出した要素ごとに前記要素抽出ルールから対応するタグ情報を取得し、取得したタグ情報が前記階層化ルールにおいて階層化を行う対象であるときに、前記要素抽出部による前記変換後の文字列を連結した連結文字列を階層化した名称設計の出力データとする階層化部と、を有することを特徴とする
名称設計装置。 For elements that are at least part of the character string of the input data, an element extraction rule that specifies the converted character string and tag information for each element, and a layering rule that specifies tag information that is subject to layering A storage unit storing
Extracting a plurality of elements defined in the element extraction rule from the character string of the input data, and creating the converted character string in accordance with the element extraction rule for each extracted element;
For each element extracted by the element extraction unit, corresponding tag information is acquired from the element extraction rule, and when the acquired tag information is a target to be hierarchized in the hierarchization rule, the conversion by the element extraction unit A name design apparatus comprising: a hierarchization unit that outputs output data of name design obtained by hierarchizing a concatenated character string obtained by concatenating subsequent character strings.
前記記憶部には、入力データの文字列の少なくとも一部である要素について、要素ごとに変換後の文字列とタグ情報とを規定する要素抽出ルール、および、タグ情報間の順序情報を規定する順序ルールが記憶されており、
前記要素抽出部は、前記入力データの文字列から前記要素抽出ルールに規定される複数の要素を抽出し、その抽出した要素ごとに前記要素抽出ルールに従って前記変換後の文字列を作成し、
前記要素順序決定部は、前記要素抽出部が抽出した要素ごとに前記要素抽出ルールから対応するタグ情報を取得し、前記順序ルールに規定されるタグ情報間の順序情報に従って、前記要素抽出部による前記変換後の文字列を並び替えた後に、それらの前記変換後の文字列を連結して名称設計の出力データとすることを特徴とする
名称設計方法。 The name design device includes a storage unit, an element extraction unit, and an element order determination unit,
For the element that is at least part of the character string of the input data, the storage unit defines an element extraction rule that defines the converted character string and tag information for each element, and order information between the tag information Order rules are remembered,
The element extraction unit extracts a plurality of elements defined in the element extraction rule from the character string of the input data, creates the converted character string according to the element extraction rule for each extracted element,
The element order determination unit acquires corresponding tag information from the element extraction rule for each element extracted by the element extraction unit, and performs the element extraction unit according to the order information between the tag information defined in the order rule. After rearranging the converted character strings, the converted character strings are connected to form output data for name design.
前記記憶部には、入力データの文字列の少なくとも一部である要素について、要素ごとに変換後の文字列とタグ情報とを規定する要素抽出ルール、および、階層化を行う対象であるタグ情報を規定する階層化ルールが記憶されており、
前記要素抽出部は、前記入力データの文字列から前記要素抽出ルールに規定される複数の要素を抽出し、その抽出した要素ごとに前記要素抽出ルールに従って前記変換後の文字列を作成し、
前記階層化部は、前記要素抽出部が抽出した要素ごとに前記要素抽出ルールから対応するタグ情報を取得し、取得したタグ情報が前記階層化ルールにおいて階層化を行う対象であるときに、前記要素抽出部による前記変換後の文字列を連結した連結文字列を階層化した名称設計の出力データとすることを特徴とする
名称設計方法。 The name design device includes a storage unit, an element extraction unit, and a hierarchization unit.
In the storage unit, with respect to an element that is at least a part of a character string of input data, an element extraction rule that defines a converted character string and tag information for each element, and tag information that is a target of layering The stratification rule that prescribes
The element extraction unit extracts a plurality of elements defined in the element extraction rule from the character string of the input data, creates the converted character string according to the element extraction rule for each extracted element,
The hierarchization unit acquires corresponding tag information from the element extraction rule for each element extracted by the element extraction unit, and when the acquired tag information is a target to be hierarchized in the hierarchization rule, A name design method characterized in that a concatenated character string obtained by concatenating the converted character strings by an element extraction unit is used as name design output data in a hierarchical structure.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017035234A JP2018142126A (en) | 2017-02-27 | 2017-02-27 | Naming device, naming method and naming program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017035234A JP2018142126A (en) | 2017-02-27 | 2017-02-27 | Naming device, naming method and naming program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018142126A true JP2018142126A (en) | 2018-09-13 |
Family
ID=63528068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017035234A Pending JP2018142126A (en) | 2017-02-27 | 2017-02-27 | Naming device, naming method and naming program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018142126A (en) |
-
2017
- 2017-02-27 JP JP2017035234A patent/JP2018142126A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11537552B2 (en) | Rule generation in a data governance framework | |
EP3514694B1 (en) | Query translation | |
US10169471B2 (en) | Generating and executing query language statements from natural language | |
US20170102925A1 (en) | Automatch process and system for software development kit for application programming interface | |
Kuc et al. | Elasticsearch server | |
CN108762743B (en) | Data table operation code generation method and device | |
US10235363B2 (en) | Instant translation of user interfaces of a web application | |
CN104798067B (en) | Dictionary system and dictionary call method | |
CN110554875A (en) | Code conversion method and device, electronic equipment and storage medium | |
WO2008054331A1 (en) | System and method for processing language independent natural language statements | |
US20110307243A1 (en) | Multilingual runtime rendering of metadata | |
EP1909170B1 (en) | Method and system for automatically generating a communication interface | |
Akdogan | Elasticsearch Indexing | |
CN116028062A (en) | Target code generation method, NPU instruction display method and device | |
CN110928896A (en) | Data query method and device | |
JP2018142126A (en) | Naming device, naming method and naming program | |
JP7269244B2 (en) | Systems and methods for providing globalization capabilities in service management application interfaces | |
US20130218928A1 (en) | Information processing device | |
US11061748B2 (en) | Systems, methods, and devices for code distribution and integration within a distributed computing platform | |
Demiliani et al. | Mastering Microsoft Dynamics 365 Business Central: Discover extension development best practices, build advanced ERP integrations, and use DevOps tools | |
Freeman et al. | The model/view/controller pattern | |
González et al. | Voice Control System Through NLP (Natural Language Processing) as an Interactive Model for Scalable ERP Platforms in Industry 4.0 | |
CN115686444A (en) | Variable name translation method, device, equipment and storage medium | |
CN115291851A (en) | Software development kit code generation method, device, equipment and storage medium | |
JP2012113599A (en) | Internationalization-adaptive screen generation system and program |