WO2020116044A1 - システム配備装置およびシステム配備方法 - Google Patents

システム配備装置およびシステム配備方法 Download PDF

Info

Publication number
WO2020116044A1
WO2020116044A1 PCT/JP2019/041304 JP2019041304W WO2020116044A1 WO 2020116044 A1 WO2020116044 A1 WO 2020116044A1 JP 2019041304 W JP2019041304 W JP 2019041304W WO 2020116044 A1 WO2020116044 A1 WO 2020116044A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
template
meta information
meta
system deployment
Prior art date
Application number
PCT/JP2019/041304
Other languages
English (en)
French (fr)
Inventor
学 中野谷
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Priority to US17/296,794 priority Critical patent/US20220012066A1/en
Priority to JP2020559776A priority patent/JP7136228B2/ja
Publication of WO2020116044A1 publication Critical patent/WO2020116044A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Definitions

  • the present invention relates to a system deployment device and a system deployment method for automating deployment work in an IT system development process.
  • the construction work of an IT (Information Technology) system composed of servers and network equipment includes, for example, design work (materialization of components, determination of relationships between components, detailed setting items in each component). It includes three procedures: examination), materialization of deployment work, and execution of deployment.
  • Non-Patent Document 1 and Non-Patent Document 2 describe a configuration management tool that can automate the deployment to a server or the like.
  • the users of the tools declaratively describe the desired state of the IT system.
  • These tools change the target IT system to the state desired by the user without making the user aware of the concrete change work.
  • IT system managers can automate tasks related to deployment.
  • a tool for automating deployment defines a notation based on its own grammar for describing the configuration of an IT system.
  • the user of the tool describes the state of the IT system that he/she wants according to this notation.
  • these tools provide a template of configuration description that can be reused for each configuration setting target such as middleware and specific network devices.
  • the user of the tool updates only the parameter values that he/she wants to specify in the template. Therefore, the user of the tool can more easily express the desired IT system status.
  • the parameter variables to be updated need to be specified.
  • the parameter variable is specified manually by the user of the tool by referring to the variable name itself, the information on the reference location of the variable, and the information on the template manual written in natural language.
  • matching by Levenshtein distance or similarity calculation by Word2Vec, which is a kind of machine learning method, is performed. Matching etc.
  • the intended configuration It is necessary to correctly reflect the settings and parameter values in the template of the configuration description.
  • the user of the tool searches for a parameter to be reflected in the template from a design document such as a parameter sheet structured in an original format for each development environment that the user uses. Then, the user updates the corresponding appropriate parameter description location in the template.
  • the description grammar of parameter variables that store setting values etc. is specified for the template of the configuration management tool.
  • there are only rough rules for identifying each parameter For example, like a general programming language, there are only rules such as unique character strings. Therefore, the template developer can freely name the parameter variable, but the template user can use the parameter variable name or location, or the template manual written in natural language. , Need to read the meaning of the parameters.
  • design documents such as parameter sheets that users have are described according to the data description structure and naming rules based on the rules unique to the system and users. Basically, the user is required to understand their rules and structure in order to read the meaning of each set value.
  • a system deployment device is a system deployment device that creates a definition for specific system deployment based on design information in which specific values of system configuration information used for IT system deployment are described.
  • a meta information acquisition unit that acquires meta information about the meaning of setting a variable part in a template that describes system configuration information, and a variable part in the template and setting items in the design information from the acquired meta information and design information.
  • Variable embedding means for creating a definition for IT system deployment by substituting values corresponding to setting items in the design information into the variable parts in the template based on such matching.
  • a system deployment method is a system deployment method that creates a definition for specific system deployment based on design information in which specific values of system configuration information used for IT system deployment are described.
  • Acquire meta information about the meaning of the setting of the variable part in the template that describes the system configuration information and compare the acquired meta information and design information with the variable part in the template and the setting items in the design information.
  • the degree of goodness of fit is scored, based on the degree of goodness of fit, the optimum matching between the variable part in the template and the setting item in the design information is calculated, and the setting item in the design information is handled based on the optimum matching.
  • Create a definition for IT system deployment by substituting values into the variable parts of the template.
  • the system deployment program implements a system deployment method for creating a definition for a specific system deployment based on design information in which a specific value of system configuration information used for IT system deployment is described.
  • the program acquires the meta information about the meaning of the setting of the variable part in the template that describes the system configuration information in the computer, and from the acquired meta information and the design information, the variable part in the template and the design information.
  • the degree of goodness of fit is scored by comparing with the setting items in, and based on the goodness of fit, the optimum matching between the variable part in the template and the setting items in the design information is calculated, and based on the optimum matching.
  • the value corresponding to the setting item in the design information is assigned to the variable part in the template, and the process for creating the definition for IT system deployment is executed. Further, the program stored in the computer-readable recording medium executes each of the above processes when it is executed by the processor.
  • design parameters in IT system deployment can be easily reflected in the deployment tool without human intervention.
  • FIG. 7 is an explanatory diagram showing an example of a calculation result of an attribute comparison score.
  • FIG. 1 is a block diagram showing a configuration example of a first embodiment of a system deployment device.
  • the system deployment apparatus 100 illustrated in FIG. 1 includes a meta information extraction unit 110, a rule management unit 120, a comparison score calculation unit 130, a mapping unit 140, and a variable embedding unit 150.
  • a template 200 of a deployment tool and design information 300 (an example of system configuration information used for IT system deployment) are input to the system deployment apparatus 100.
  • the system deployment device 100 outputs the specific deployment definition 400.
  • the deployment tool template 200 corresponds to a template in which system configuration information used for deploying an IT system is described.
  • the rule management unit 120 can be realized by, for example, a storage unit that stores extraction rules.
  • the meta information extraction unit 110 refers to the extraction rule recorded in advance in the rule management unit 120 and extracts the meta information regarding the meaning of the setting.
  • the comparison score calculation unit 130 compares the meta information with the design information 300 based on the comparison rule, and calculates the score of the goodness of fit. That is, the comparison score calculation unit 130 scores (digitizes) the goodness of fit.
  • the mapping unit 140 calculates the optimum matching (optimal correspondence) between the parameter variable and the design item that maximizes the score by solving the allocation problem.
  • the variable embedding unit 150 embeds the setting value of the corresponding design information 300 in the variable defining unit of the template 200 of the deployment tool according to the optimum matching.
  • the configuration of the template 200 will be described later with reference to FIG.
  • the user of the tool inputs the template 200 of the deployment tool corresponding to the function to be deployed to the system deployment device 100 (step S11).
  • the meta information extraction unit 110 receives the input.
  • the meta information extraction unit 110 refers to the extraction rule recorded in advance in the rule management unit 120 and extracts meta information from the template 200 (step S12).
  • Fig. 3 illustrates a template of a deployment tool that deploys Apache, which is the middleware of an HTTP (Hypertext Transfer Protocol) server.
  • the template illustrated in FIG. 3 is roughly divided into three blocks of a variable definition part, a template part, and a task definition part.
  • variable definition part parameter variable definitions that store the values of the parameters to be set are listed.
  • template section the template of Apache configuration file is specified.
  • some of the parameter variables defined in the variable definition part are referenced.
  • the task definition section defines the operations required to reflect the settings.
  • some of the parameter variables are referenced as needed.
  • variable definition part corresponds to the variable part in the template.
  • meta information (information on the meaning of setting) can also be expressed as information that suggests the structural meaning of the variable portion.
  • FIG. 4 illustrates an extraction rule of meta information recorded in the rule management unit 120.
  • the meta information there are two types of attributes (hereinafter referred to as “Attribute”) corresponding to the character string directly representing the setting item and a category (category: hereinafter referred to as “Category”) representing the related information of the setting item.
  • the extraction rule specifies the extraction method according to the location where the parameter variable is referred to for each of the two types. That is, a parameter variable (which can be referred to by the template part and the task definition part in the template as described above) defined in the variable definition part (an example of the variable part in the template) is defined in the template of the variable part.
  • the extraction rule includes at least a rule indicating what kind of information (for example, Attribute and Category) the meta information is extracted according to the usage pattern. That is, the extraction rule has a rule capable of specifying as what kind of information the meta information is extracted according to the usage form of the variable portion of the template within the template.
  • FIG. 5 shows an extraction result when the extraction rule illustrated in FIG. 4 is applied to the template illustrated in FIG.
  • the user inputs the design information 300 in which the setting values of the deployment target are described to the system deployment apparatus 100 (step S13).
  • the design information 300 may be input at the same time when the template 200 of the deployment tool is input.
  • the comparison score calculation unit 130 receives the input design information 300.
  • the comparison score calculation unit 130 compares the meta information extracted by the meta information extraction unit 110 with the design information 300 according to a comparison rule defined in advance, and calculates a comparison score representing the comparison result (step S14).
  • a comparison rule defined in advance
  • FIG. 6 shows an input example of the design information 300.
  • setting items having a hierarchical structure also referred to as structural positioning
  • setting values having a hierarchical structure also referred to as structural positioning
  • FIG. 7 is an explanatory diagram showing an example of the comparison rule.
  • the comparison rule defines which item in the design information should be compared for each of the Attribute and Category, which are types of meta information.
  • the setting item (bottom layer) in the comparison rule illustrated in FIG. 7 represents a setting item for which there is no lower layer.
  • the setting items (bottom layer) correspond to keepalive, maxrequest, and timeout.
  • the setting item (upper layer) represents a setting item existing in a higher layer that does not belong to the setting item (lowermost layer) among the setting items.
  • the comparison score calculation unit 130 first specifies the comparison target according to the structural positioning of the setting item. For example, according to the comparison rule shown in FIG. 7, the setting item (upper layer) is associated with the Category of the meta information, and the setting item (lowermost layer) is associated with the Attribute of the meta information.
  • the comparison score calculation unit 130 classifies the meta information into three types of variable name, Attribute, and Category.
  • the comparison score calculation unit 130 calculates the similarity of each character string for the meta information classified into these three types.
  • the comparison score calculation unit 130 calculates the degree of similarity between the character string of the variable name in the meta information and the character string of the variable name in the design information 300. Similarly, the comparison score calculation unit 130 calculates the similarity between the character string of Attribute in the meta information and the character string of Attribute in the design information 300. Similarly, the comparison score calculation unit 130 calculates the degree of similarity between the character string of Category in the meta information and the character string of Category in the design information 300.
  • the similarity is a numerical value (comparison score) indicating the degree of relevance between the character strings calculated by an arbitrary character string similarity calculation technique such as Word2Vec.
  • FIG. 8 is an explanatory diagram showing an example of a calculation result of a comparison score regarding a variable name.
  • the comparison score calculation unit 130 compares the parameter variables defined by the template variable definition unit (see FIG. 3) with the setting items (bottom layer) described in the design information 300 (see FIG. 6). Are compared, and the result of the comparison (comparison score) is calculated (see FIG. 8).
  • the comparison score calculation unit 130 uses, for comparison, an arbitrary comparison algorithm capable of calculating a comparison score in consideration of not only simple word matching but also difference in uppercase and lowercase letters and synonyms.
  • FIG. 9 is an explanatory diagram showing an example of the calculation result of the comparison score of Attribute.
  • FIG. 10 is an explanatory diagram illustrating an example of a Category calculation result. That is, the comparison score calculation unit 130 also compares the parameter variable and the setting item (bottom layer) (see FIG. 6) for Attribute and Category, and calculates the comparison result (comparison score).
  • the comparison score calculation unit 130 averages the respective comparison scores by an arbitrary method to calculate a comprehensive score (total score).
  • FIG. 11 shows the total score obtained by harmonically averaging the comparison score calculation results for variable names (see FIG. 8), the Attribute comparison score calculation results (see FIG. 9), and the Category calculation results (see FIG. 10). Is illustrated.
  • the calculated total score is sent to the mapping unit 140.
  • the mapping unit 140 calculates the optimum matching by solving the matching between the parameter variable and the design item that maximizes the total score as shown in FIG. 11 as an assignment problem (step S15).
  • mapping section 140 is the highest.
  • Adopt that matching as the optimum matching.
  • the optimum matching result is sent to the variable embedding unit 150.
  • the variable embedding unit 150 embeds the setting value of the corresponding design information 300 in the variable defining unit of the template 200 of the deployment tool according to the optimum matching (step S16).
  • FIG. 12 is an explanatory diagram showing an example of the variable definition unit in which the setting value desired by the user is embedded.
  • the variable embedding unit 150 uses the template of the deployment tool in which the setting values illustrated in FIG. 12 are incorporated as a deployment definition (specific deployment definition 400) that can be used for the specific IT system deployment of the user.
  • Output step S17).
  • the specific deployment definition 400 in which the setting values described in the design information 300 are appropriately embedded in the template 200 of the deployment tool is generated. That is, a specific deployment definition applicable to the deployment tool, which reflects the setting values that are individually and specifically designed, is automatically generated from the template of the general-purpose deployment tool.
  • FIG. 13 is a block diagram showing a configuration example of the second embodiment of the system deployment device.
  • the system deployment apparatus 101 shown in FIG. 13 includes a comparison score calculation unit 130, a mapping unit 140, and a variable embedding unit 150, like the system deployment apparatus 100 of the first embodiment.
  • a meta information selection unit 160 and a meta information accumulation unit 170 are included.
  • the deployment tool template 200 and the design information 300 are input to the system deployment apparatus 100, but the system deployment apparatus 101 of this embodiment is extracted from the IT system (verification environment) 600.
  • the configuration information 500 is input.
  • a parameter sheet which is an example of design information, is created from configuration information.
  • the parameter sheet describes the concrete value of the configuration information.
  • the meta information accumulating unit 170 stores meta information extracted in advance from a template of a plurality of deployment tools, that is, each meta information extracted from a template group.
  • the meta information storage unit 170 stores, for example, the meta information as shown in FIG. 5 as the meta information extracted from the template. That is, the meta information extracted by the extraction unit having the same function as the function of the meta information extraction unit 110 (see FIG. 1) not included in the system deployment apparatus 101 is stored.
  • the extraction unit having the same function as the meta information extraction unit 110 exists outside the system deployment apparatus 101, but may be included in the system deployment apparatus 101.
  • the meta information selection unit 160 selects, from the meta information storage unit 170, meta information that matches the deployment target component described in the configuration information.
  • the meta information selection unit 160 sends the meta information and the configuration information 500 to the comparison score calculation unit 130.
  • the configuration information 500 is input to the system deployment device 101 (step S21).
  • the configuration information 500 is information extracted from an IT system (IT system (verification environment) 600) that is a verification environment.
  • the meta information selection unit 160 selects the meta information corresponding to the input configuration information 500 from the plurality of meta information stored in the meta information storage unit 170 (step S22). In the process of step S22, the meta information selection unit 160 selects meta information corresponding to the deployment target component handled in the configuration information 500.
  • the comparison score calculation unit 130, the mapping unit 140, and the variable embedding unit 150 execute the same processing as the processing in the first embodiment. However, the comparison score calculation unit 130 determines the design information 300 from the configuration information 500, compares the meta information with the design information 300, and calculates the score of the goodness of fit.
  • the specific deployment definition 400 output from the variable embedding unit 150 is executed by the configuration management tool in the IT system (operating environment) 700, and the settings based on the specific deployment definition 400 are set in the IT system (operating environment). Reflected in 700. As described above, the parameters set in the IT system (verification environment) 600 are automatically reflected in the IT system (operation environment) 700.
  • settings between a plurality of different environments can be automatically synchronized.
  • the comparison score calculation unit 130 compares the meta information extracted from the input template with the input design information 300 in the first embodiment, and is stored in advance in the second embodiment.
  • the meta information selected from the plurality of existing meta information and the input configuration information 500 were compared.
  • the comparison score calculation unit 130 may be configured to compare the meta information selected from the plurality of pre-stored meta information with the input design information 300.
  • a meta information selecting unit 160 and a meta information accumulating unit 170 are provided in the first embodiment shown in FIG. 1, instead of the meta information extracting unit 110 and the rule managing unit 120.
  • a meta information selecting unit 160 and a meta information accumulating unit 170 are provided. Is provided.
  • the template 200 of the deployment tool is not input to the system deployment apparatus 100.
  • FIG. 15 is a block diagram showing an example of a computer having a CPU (Central Processing Unit).
  • the computer is installed in the system deployment devices 100 and 101.
  • the CPU 1000 realizes each function in the above-described embodiment by executing processing according to a program stored in the storage device 1001. That is, the functions of the meta information extraction unit 110, the rule management unit 120, the comparison score calculation unit 130, the mapping unit 140, and the variable embedding unit 150 in the system deployment apparatus 100 shown in FIG. 1 are realized.
  • the rule management unit 120 may be realized by the storage device 1001 or the memory 1002.
  • the CPU 1000 realizes the functions of the meta information selection unit 160, the comparison score calculation unit 130, the mapping unit 140, and the variable embedding unit 150 illustrated in FIG. 13.
  • the storage device 1001 is, for example, a non-transitory computer readable medium.
  • Non-transitory computer readable media include various types of tangible storage media. Specific examples of the non-transitory computer-readable medium include magnetic recording media (eg, flexible disk, magnetic tape, hard disk drive), magneto-optical recording media (eg, magneto-optical disk), CD-ROM (Compact-Disc-Read-Only Memory). ), CD-R (Compact Disc-Recordable), CD-R/W (Compact Disc-ReWritable), and semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM).
  • magnetic recording media eg, flexible disk, magnetic tape, hard disk drive
  • magneto-optical recording media eg, magneto-optical disk
  • CD-ROM Compact-Disc-Read-Only Memory
  • CD-R Compact Disc-Recordable
  • CD-R/W Compact Disc-ReWritable
  • semiconductor memory for
  • the program may be stored in various types of transitory computer readable media.
  • the program is supplied to the transitory computer-readable medium via, for example, a wired communication path or a wireless communication path, that is, via an electric signal, an optical signal or an electromagnetic wave.
  • the memory 1002 is realized by, for example, a RAM (Random Access Memory), and is a storage unit that temporarily stores data when the CPU 1000 executes processing.
  • a form in which the program held in the storage device 1001 or a temporary computer-readable medium is transferred to the memory 1002, and the CPU 1000 executes processing based on the program in the memory 1002 can also be assumed.
  • the meta information storage unit 170 shown in FIG. 13 is realized by the memory 1002 or the storage device 1001.
  • FIG. 16 is a block diagram showing the main part of the system deployment device.
  • the system deployment apparatus 10 illustrated in FIG. 16 acquires the meta information acquisition unit 11 (in the embodiment, the meta information extraction unit 110 or the meta information) that acquires the meta information about the meaning of the setting of the variable part in the template that describes the system configuration information. This is realized by the selection unit 160) and the acquired meta information and design information, and the comparison score calculation unit 13 (which compares the variable part in the template with the setting item in the design information to score the conformity degree). In the embodiment, it is realized by the comparison score calculation unit 130.) and the mapping unit 14 (implementation) that calculates the optimum matching between the variable part in the template and the setting item in the design information based on the scored goodness of fit.
  • variable embedding unit 15 (which is realized by the variable embedding unit 150 in the embodiment).
  • FIG. 17 is a block diagram showing a configuration example of the meta information acquisition unit 11.
  • the meta information acquisition unit 11 illustrated in FIG. 17 extracts meta information from the input template by referring to the extraction rule to extract meta information (in the embodiment, realized by the meta information extraction unit 110). including.
  • the rule management unit 12 (which is realized by the rule management unit 120 in the embodiment) manages the extraction rule for extracting the meta information.
  • FIG. 18 is a block diagram showing another configuration example of the meta information acquisition unit 11.
  • the meta information acquisition unit 11 illustrated in FIG. 18 is described in the configuration information from a plurality of pieces of meta information stored in the meta information storage unit 17 (which is realized by the meta information storage unit 170 in the embodiment).
  • the meta information selecting unit 11B (which is realized by the meta information selecting unit 160 in the embodiment) that selects meta information by using the information on the deployment target is included.
  • the meta information storage unit 17 stores the meta information extracted from the template group that describes the system configuration information used for deploying the IT system.
  • a system deployment device that creates a definition for specific system deployment based on design information in which specific values of system configuration information used for IT system deployment are described.
  • a meta information acquisition unit that acquires meta information about the meaning of setting a variable part in a template that describes system configuration information; From the obtained meta information and the design information, a comparison score calculation means for scoring the goodness of fit by comparing the variable part in the template and the setting items in the design information, Mapping means for calculating the optimum matching of the variable part in the template and the setting items in the design information, based on the scored conformity.
  • a variable embedding unit that creates a definition for IT system deployment by substituting a value corresponding to a setting item in the design information into a variable part in a template based on the optimum matching.
  • a rule management means for managing extraction rules for extracting meta information is provided, The system deployment device according to appendix 1, wherein the meta information acquisition unit includes a meta information extraction unit that extracts meta information from the input template by referring to the extraction rule.
  • the rule management means has a rule capable of specifying as what kind of information the meta information is to be extracted, in accordance with the form of use of the variable portion of the prototype within the template. System deployment device.
  • a meta information accumulating unit that stores a plurality of meta information extracted from a template group that describes system configuration information used for IT system deployment
  • the meta information acquisition unit includes a meta information selection unit that selects meta information from among a plurality of pieces of meta information stored in the meta information storage unit by using information about a deployment target described in configuration information.
  • the comparison score calculation means specifies the comparison target according to the type of the meta information acquired by the meta information acquisition means and the structural position of the setting item in the design information, and compares each comparison target. Score the goodness of fit between the objects, average the goodness of fit scored to calculate the overall goodness of fit, The mapping means calculates an optimum matching by using the comprehensive fitness.
  • the system deployment device according to any one of appendices 1 to 5.
  • the comparison target is specified according to the type of meta information and the structural positioning of the setting item in the design information, the degree of compatibility between the comparison targets is scored for each comparison target, and they are scored.
  • the system matching method according to any one of appendixes 7 to 11, wherein optimal matching is calculated by using the comprehensive fitness.
  • a program for implementing a system deployment method that creates a definition for specific system deployment based on design information in which specific values of system configuration information used for IT system deployment are described.
  • On the computer Acquires meta information about the meaning of the setting of the variable part in the template that describes the system configuration information, From the acquired meta information and the design information, a variable part in the template and a setting item in the design information are compared to score the suitability, Based on the goodness of fit scored, calculate the optimal matching of the variable part in the template and the setting items in the design information,
  • the configuration is selected from a plurality of meta information stored in the meta information storage unit that stores the meta information extracted from the template group that describes the system configuration information used for deploying the IT system.
  • the system deployment program according to attachment 13 which selects meta information by using the information about the deployment target described in the information.
  • the type of meta-information and the comparison target is specified according to the structural position of the setting item in the design information, and the goodness-of-fit between the comparison targets is scored for each comparison target. Average and calculate the overall fitness, The system deployment program according to any one of appendices 13 to 17, in which an optimum matching is calculated using the comprehensive fitness.
  • the program stored in the computer-readable recording medium corresponding to each of supplements 13 to 18 executes each process in each of supplements 13 to 18 when executed by the processor.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

システム配備装置10は、システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得するメタ情報取得部11と、取得されたメタ情報と設計情報から、ひな形における可変部分と設計情報における設定項目との比較を行って適合度をスコア化する比較スコア計算部13と、スコア化された適合度に基づいて、ひな形における可変部分と設計情報における設定項目の最適なマッチングを算出するマッピング部14と、最適なマッチングに基づいて、設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する変数埋め込み部15とを含む。

Description

システム配備装置およびシステム配備方法
 本発明は、ITシステムの開発工程における配備作業を自動化するためのシステム配備装置およびシステム配備方法に関する。
 サーバやネットワーク機器等で構成されるIT(Information Technology)システムの構築作業は、例えば、設計作業(構成要素の具体化、構成要素間の関係性の決定、各構成要素内の詳細な設定項目の検討)、配備(デプロイ)作業の具体化、デプロイの実行の3つの手続きを含む。
 それぞれの手続きは、技術者である人間による手作業で行われていた。しかし、デプロイに係る2つ目の作業と3つ目の作業とを自動的に行うツールの使用が広まりつつある。
 非特許文献1や非特許文献2には、サーバなどに対するデプロイ等を自動化できる構成管理ツールが記載されている。それらのツールが用いられるとき、ツールの利用者は、ITシステムの望むべき状態を宣言的に記述する。それらのツールは、利用者に具体的な変更作業を意識させることなく、対象のITシステムを利用者が望む状態に変更する。それらのツールを活用することによって、ITシステムの管理者は、デプロイに関する作業を自動化することができる。
 デプロイを自動化するツールでは、ITシステムの構成を記述するために独自の文法に基づく記法が規定されている。ツールの利用者は、この記法に従って、自身が望むITシステムの状態を記述する。
 また、それらのツールは、ミドルウェアや特定のネットワーク機器など構成設定対象ごとに再利用可能な構成記述のひな形を提供している。ツールの利用者は、自身が独自に指定したいパラメータ値のみをそのひな形において更新する。したがって、ツールの利用者は、所望のITシステムの状態をより簡便に表現することができる。
 ひな形を更新するときに、更新対象となるパラメータ変数が特定される必要がある。パラメータ変数の特定は、変数名そのものや変数の参照箇所の情報、および、自然言語で記述されたひな形のマニュアルの情報などを参考にして、ツールの利用者によって人手で行われる。また、一般に、変数名などの単語や単語列(文)を対象として、関連がある単語同士をマッチングする手法として、レーベンシュタイン距離によるマッチングや、機械学習手法の一種であるWord2Vecによる類似度計算によるマッチングなどがある。
"Puppet"、[online]、「平成30年10月29日検索]、インターネット<URL: https://puppet.com/> "Ansible"、[online]、「平成30年10月29日検索]、インターネット<URL: https://www.ansible.com/>
 システムの配備を実施する利用者(システム開発者または運用者)が、上述した構成管理ツールおよびそのツール用の構成記述のひな形を利用してITシステムのデプロイを行う場合、自身が意図した構成や設定(パラメータ)値を正しく構成記述のひな形に反映する必要がある。具体的には、ツールの利用者は、自身が担う開発環境ごとに、独自のフォーマットで構造化されたパラメータシートなどの設計ドキュメントから、ひな形に反映すべきパラメータを探し出す。そして、利用者は、ひな形における対応する適切なパラメータ記述箇所を更新する。
 一般に、構成管理ツールのひな形について、設定値などを格納するパラメータ変数の記述文法は規定されている。しかし、各パラメータの識別に関して大雑把な規則しか存在しない。例えば、一般的なプログラミング言語と同様に、一意な文字列であることといった程度の規則しか存在しない。したがって、ひな形の開発者は、自由にパラメータ変数の命名を行えるが、ひな形の利用者は、そのパラメータ変数の名称や記述箇所、または、自然言語で記述されたそのひな形のマニュアルなどから、パラメータの意味を読み取る必要がある。
 また、利用者が持っているパラメータシートなどの設計ドキュメントは、そのシステムや利用者にとっての固有のルールに基づくデータの記述構造や命名規則に従って記述されている。基本的に、利用者は、各設定値の意味を読み取るために、それらの規則や構造を理解することが求められる。
 上記のような言語理解に基づくパラメータ変数と設計項目とのマッチングは、レーベンシュタイン距離に基づくマッチングやWord2Vecによるマッチングなどの単純な処理では実現できない。したがって、設定対象についての知識を有する人間が、手作業で1つ1つのパラメータ変数について検討する必要がある。そのような手作業が介在することは、大規模システムへの構成管理ツールの適用の妨げになる。また、デプロイのサイクルを短くしてデプロイ回数を増やすITシステムの運用スタイル(例えば、DevOpsと呼ばれる開発手法)に、構成管理ツールを適用することに対する妨げになっている。
 そこで、本発明は、人手を介さずに、ITシステムのデプロイにおける設計パラメータを容易に配備ツールに反映することを可能にするシステム配備装置およびシステム配備方法を提供することを主たる目的とする。
 本発明によるシステム配備装置は、ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備装置であって、システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得するメタ情報取得手段と、取得されたメタ情報と設計情報から、ひな形における可変部分と設計情報における設定項目との比較を行って適合度をスコア化する比較スコア計算手段と、スコア化された適合度に基づいて、ひな形における可変部分と設計情報における設定項目の最適なマッチングを算出するマッピング手段と、最適なマッチングに基づいて、設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する変数埋め込み手段とを備える。
 本発明によるシステム配備方法は、ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備方法であって、システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得し、取得されたメタ情報と設計情報から、ひな形における可変部分と設計情報における設定項目との比較を行って適合度をスコア化し、スコア化された適合度に基づいて、ひな形における可変部分と設計情報における設定項目の最適なマッチングを算出し、最適なマッチングに基づいて、設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する。
 本発明によるシステム配備プログラムは、ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備方法を実施するためのプログラムであって、コンピュータに、システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得し、取得されたメタ情報と設計情報から、ひな形における可変部分と設計情報における設定項目との比較を行って適合度をスコア化し、スコア化された適合度に基づいて、ひな形における可変部分と設計情報における設定項目の最適なマッチングを算出し、最適なマッチングに基づいて、設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する処理を実行させる。また、コンピュータ読み取り可能な記録媒体に格納されたプログラムは、プロセッサによって実行されるときに、上記の各処理を実行する。
 本発明によれば、人手を介さずに、ITシステムのデプロイにおける設計パラメータを容易に配備ツールに反映することが可能になる。
システム配備装置の第1の実施形態の構成例を示すブロック図である。 第1の実施形態のシステム配備装置の動作を示すフローチャートである。 配備ツールのひな形の一例を示す説明図である。 抽出ルールの一例を示す説明図である。 ひな形に抽出ルールが適用されたときの抽出結果を示す説明図である。 設計情報の入力例を示す説明図である。 比較ルールの一例を示す説明図である。 変数名に関する比較スコアの計算結果の一例を示す説明図である。 Attribute の比較スコアの計算結果の一例を示す説明図である。 Categoryの計算結果の一例を示す説明図である。 総合スコアの一例を示す説明図である。 利用者が望んだ設定値が埋め込まれた変数定義部の一例を示す説明図である。 システム配備装置の第2の実施形態の構成例を示すブロック図である。 第2の実施形態のシステム配備装置の動作を示すフローチャートである。 コンピュータシステムの一例を示すブロック図である。 システム配備装置の主要部を示すブロック図である。 メタ情報取得手段の構成例を示すブロック図である。 メタ情報取得手段の他の構成例を示すブロック図である。
 以下、本発明の実施形態を図面を参照して説明する。
実施形態1.
 図1は、システム配備装置の第1の実施形態の構成例を示すブロック図である。図1に示すシステム配備装置100は、メタ情報抽出部110、ルール管理部120、比較スコア計算部130、マッピング部140、および変数埋め込み部150を含む。システム配備装置100には、配備ツールのひな形200および設計情報300(ITシステムの配備に用いられるシステム構成情報の一例)が入力される。システム配備装置100は、具体配備定義400を出力する。配備ツールのひな形200は、ITシステムの配備に用いられるシステム構成情報が記述されるひな形に相当する。
 ルール管理部120は、例えば、抽出ルールを記憶する記憶部で実現可能である。メタ情報抽出部110は、ルール管理部120に事前に記録された抽出ルールを参照して、設定に関しての意味に関するメタ情報の抽出を行う。比較スコア計算部130は、比較ルールに基づいてメタ情報と設計情報300とを比較し、適合度のスコアを算出する。すなわち、比較スコア計算部130は、適合度をスコア化(数値化)する。
 マッピング部140は、割当問題として解くことによって、スコアが最大になるようなパラメータ変数と設計項目との最適なマッチング(最適な対応)を計算する。
 変数埋め込み部150は、最適なマッチングに従って、配備ツールのひな形200の変数定義部に、対応する設計情報300の設定値を埋め込む。ひな形200の構成については、図3を参照して後述する。
 次に、システム配備装置100の動作を、図2のフローチャート、および図3~図12の説明図を参照して説明する。
 ツールの利用者は、デプロイしたい機能に対応する配備ツールのひな形200をシステム配備装置100に入力する(ステップS11)。配備ツールのひな形200が入力されると、メタ情報抽出部110がその入力を受け取る。メタ情報抽出部110は、ルール管理部120に事前に記録された抽出ルールを参照して、ひな形200からメタ情報を抽出する(ステップS12)。
 図3には、HTTP(Hypertext Transfer Protocol )サーバのミドルウェアであるApacheを配備する配備ツールのひな形が例示されている。図3に例示されたひな形は、大別すると、変数定義部、テンプレート部およびタスク定義部の3つのブロックで構成される。
 変数定義部には、設定対象のパラメータの値を格納するパラメータ変数定義が列挙されている。テンプレート部では、Apacheの設定ファイルのテンプレートが規定されている。テンプレート部では、変数定義部で定義されたパラメータ変数の一部が参照されている。タスク定義部では、設定を反映するために必要な操作が規定されている。タスク定義部において、テンプレート部と同様に、必要に応じてパラメータ変数の一部が参照されている。
 なお、変数定義部は、ひな形における可変部分に相当する。また、メタ情報(設定に関しての意味に関する情報)は、可変部分の構成上の意味を示唆する情報であるとも表現できる。
 図4には、ルール管理部120に記録されているメタ情報の抽出ルールが例示されている。メタ情報として、設定項目を直接表す文字列に対応する属性(以下、“Attribute ”という。)と、設定項目の関連情報を表す部類(カテゴリ:以下、“Category”という。)との2種類の情報が存在する。抽出ルールは、2種類それぞれについてパラメータ変数が参照されている箇所に応じた抽出方法を指定する。すなわち、変数定義部(ひな形における可変部分の一例)で定義されたパラメータ変数(上述したように、ひな形におけるテンプレート部およびタスク定義部で参照されうる。)を可変部分のひな形内での利用形態に位置づけると、抽出ルールには、少なくとも、利用形態に応じて、どのような種類(例えば、Attribute およびCategory)の情報としてメタ情報を抽出するのかを示すルールが含まれる。すなわち、抽出ルールには、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを特定可能なルールを有する。
 図5には、図4に例示された抽出ルールが図3に例示されたひな形に適用されたときの抽出結果が示されている。
 メタ情報が抽出されると、利用者は、配備対象の設定値が記述された設計情報300をシステム配備装置100に入力する(ステップS13)。なお、設計情報300の入力は、配備ツールのひな形200の入力と同時に実行されてもよい。比較スコア計算部130は、入力された設計情報300を受け取る。
 比較スコア計算部130は、あらかじめ規定された比較ルールに従って、メタ情報抽出部110が抽出したメタ情報と設計情報300とを比較して、比較結果を表す比較スコアを算出する(ステップS14)。以下、ステップS14における比較スコアの求め方について詳述する。
 図6には、設計情報300の入力例が示されている。図6に示す例では、設計情報300において、階層構造(構造上の位置づけともいう。)を持つ設定項目が設定値とともに列挙されている。図7は、比較ルールの一例を示す説明図である。図7に示す例では、比較ルールは、メタ情報の種類であるAttribute とCategoryとのそれぞれについて、設計情報におけるどの項目と比較されるべきかを規定する。
 図7に例示された比較ルールおける設定項目(最下層)は、それ以上下位の階層が存在しない設定項目を表す。図5に示された例では、設定項目(最下層)は、keepalive 、maxrequest、timeout が該当する。設定項目(上位階層)は、設定項目のうち設定項目(最下層)に属しない上位の階層に存在する設定項目を表す。
 比較スコア計算部130は、ステップS14の処理で、まず、設定項目の構造上の位置づけに応じて比較対象を特定する。例えば、図7に示す比較ルールにより、設定項目(上位階層)はメタ情報のCategoryに対応付けられ、設定項目(最下層)はメタ情報のAttribute に対応付けられる。比較スコア計算部130は、メタ情報を、変数名、Attribute 、Categoryの3種類に分類する。
 そして、比較スコア計算部130は、これら3種類に分類したメタ情報を対象として、それぞれの文字列の類似度を計算する。
 すなわち、比較スコア計算部130は、メタ情報における変数名の文字列と、設計情報300における変数名の文字列との類似度を計算する。比較スコア計算部130は、同様に、メタ情報におけるAttribute の文字列と、設計情報300におけるAttribute の文字列との類似度を計算する。比較スコア計算部130は、同様に、メタ情報におけるCategoryの文字列と、設計情報300におけるCategoryの文字列との類似度を計算する。なお、類似度は、Word2Vecなどの任意の文字列類似度計算技術によって算出された文字列間の関連性の度合いを表す数値(比較スコア)である。これら3種類の比較スコアの算出手順の一例を、図8から図10を参照して説明する。
 図8は、変数名に関する比較スコアの計算結果の一例を示す説明図である。比較スコア計算部130は、変数名の比較では、ひな形の変数定義部(図3参照)で定義されたパラメータ変数と設計情報300に記載された設定項目(最下層)(図6参照)との比較を行い、その比較の結果(比較スコア)を計算する(図8参照)。比較スコア計算部130は、比較に、単純な単語の一致だけでなく大文字小文字の差異や類義語なども考慮して比較スコアを計算できる任意の比較アルゴリズムを用いる。
 図9は、Attribute の比較スコアの計算結果の一例を示す説明図である。図10は、Categoryの計算結果の一例を示す説明図である。すなわち、比較スコア計算部130は、Attribute およびCategoryに関しても、パラメータ変数と設定項目(最下層)(図6参照)との比較を行い、その比較の結果(比較スコア)を計算する。
 比較スコア計算部130は、3種類の比較スコアが計算されたら、それぞれの比較スコアを任意の方法で平均化して総合的なスコア(総合スコア)を算出する。図11には、変数名に関する比較スコアの計算結果(図8参照)と、Attribute の比較スコアの計算結果(図9参照)と、Categoryの計算結果(図10参照)とを調和平均した総合スコアが例示されている。
 算出された総合スコアは、マッピング部140に送られる。マッピング部140は、図11で示されたような総合スコアが最大になるようなパラメータ変数と設計項目とのマッチングを割当問題として解くことによって、最適なマッチングを計算する(ステップS15)。
 図11に示された例では、表の対角成分を対応させるマッチング(Apache_dest と配置場所、VAR_APACHE_KEEPALIVEとkeepalive 、VAR_APACHE_MAX_KEEPALIVE_REQUESTとmaxrequest、VAR_APACHE_KEEPALIVE_TIMEOUTとtimeout )が最も全体のスコアが高くなるので、マッピング部140は、そのマッチングを最適なマッチングとして採用する。
 最適なマッチング結果は、変数埋め込み部150に送られる。変数埋め込み部150は、最適なマッチングに従って、配備ツールのひな形200の変数定義部に、対応する設計情報300の設定値を埋め込む(ステップS16)。図12は、利用者が望んだ設定値が埋め込まれた変数定義部の一例を示す説明図である。変数埋め込み部150は、図12に例示されたような設定値が組み込まれた配備ツールのひな形を、利用者の具体的なITシステムの配備に利用可能な配備定義(具体配備定義400)として出力する(ステップS17)。
 以上のように、本実施形態では、設計情報300に記載された設定値が配備ツールのひな形200に適切に埋め込まれた具体配備定義400が生成される。すなわち、汎用的に作られた配備ツールのひな形から、個別具体的に設計された設定値が反映された、配備ツールに適用可能な具体配備定義が自動的に生成される。
実施形態2.
 図13は、システム配備装置の第2の実施形態の構成例を示すブロック図である。図13に示すシステム配備装置101は、第1の実施形態のシステム配備装置100と同様、比較スコア計算部130、マッピング部140、および変数埋め込み部150を含む。しかし、メタ情報抽出部110およびルール管理部120に代えて、メタ情報選択部160およびメタ情報蓄積部170を有する。
 第1の実施形態では、システム配備装置100に配備ツールのひな形200および設計情報300が入力されるが、本実施形態のシステム配備装置101には、ITシステム(検証環境)600から抽出された構成情報500が入力される。
 一般に、設計情報の一例であるパラメータシートは、構成情報から作成される。例えば、パラメータシートには、構成情報の具体値が記述される。
 メタ情報蓄積部170は、あらかじめ複数の配備ツールのひな形から抽出されたメタ情報、すなわち、ひな形群から抽出されたそれぞれのメタ情報を記憶する。メタ情報蓄積部170は、ひな形から抽出されたメタ情報として、例えば図5に示されたようなメタ情報を記憶する。すなわち、システム配備装置101には含まれていないメタ情報抽出部110(図1参照)の機能と同様の機能を有する抽出部によって抽出されたメタ情報を記憶する。なお、メタ情報抽出部110の機能と同様の機能を有する抽出部は、システム配備装置101の外部に存在するが、システム配備装置101に内包されていてもよい。
 メタ情報選択部160は、構成情報500が入力されると、構成情報に記述されている配備対象コンポーネントに合致するメタ情報をメタ情報蓄積部170から選択する。メタ情報選択部160は、メタ情報と構成情報500とを比較スコア計算部130に送る。
 次に、システム配備装置101の動作を、図14のフローチャートを参照して説明する。
 まず、システム配備装置101に構成情報500が入力される(ステップS21)。構成情報500は、検証環境であるITシステム(ITシステム(検証環境)600)から抽出される情報である。メタ情報選択部160は、入力された構成情報500に対応するメタ情報を、メタ情報蓄積部170に記憶されている複数のメタ情報から選択する(ステップS22)。ステップS22の処理において、メタ情報選択部160は、構成情報500で扱われている配備対象コンポーネントに対応するメタ情報を選択する。
 比較スコア計算部130、マッピング部140、および変数埋め込み部150は、第1の実施形態における処理と同様の処理を実行する。ただし、比較スコア計算部130は、構成情報500から設計情報300を判定し、メタ情報と設計情報300とを比較して、適合度のスコアを算出する。
 また、本実施形態では、変数埋め込み部150から出力される具体配備定義400は、ITシステム(運用環境)700において構成管理ツールによって実行され、具体配備定義400に基づく設定がITシステム(運用環境)700に反映される。以上のようにして、ITシステム(検証環境)600で設定されていたパラメータが自動的にITシステム(運用環境)700に反映される。
 本実施形態では、複数の異なる環境間の設定を自動的に同期させることができる。
 なお、比較スコア計算部130は、第1の実施形態では、入力されたひな形から抽出されたメタ情報と入力された設計情報300とを比較し、第2の実施形態では、あらかじめ記憶されている複数のメタ情報から選択されたメタ情報と入力された構成情報500とを比較した。しかし、比較スコア計算部130が、あらかじめ記憶されている複数のメタ情報から選択されたメタ情報と入力された設計情報300とを比較するよう構成されてもよい。そのように構成される場合には、図1に示された第1の実施形態において、メタ情報抽出部110とルール管理部120とに代えて、メタ情報選択部160とメタ情報蓄積部170とが設けられる。また、システム配備装置100に、配備ツールのひな形200は入力されない。
 図15は、CPU(Central Processing Unit )を有するコンピュータの一例を示すブロック図である。コンピュータは、システム配備装置100,101に実装される。CPU1000は、記憶装置1001に格納されたプログラムに従って処理を実行することによって、上記の実施形態における各機能を実現する。すなわち、図1に示されたシステム配備装置100におけるメタ情報抽出部110、ルール管理部120、比較スコア計算部130、マッピング部140、および変数埋め込み部150の機能を実現する。なお、ルール管理部120は、記憶装置1001またはメモリ1002で実現されてもよい。また、CPU1000は、図13に示されたメタ情報選択部160、比較スコア計算部130、マッピング部140、および変数埋め込み部150の機能を実現する。
 記憶装置1001は、例えば、非一時的なコンピュータ可読媒体(non-transitory computer readable medium )である。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium )を含む。非一時的なコンピュータ可読媒体の具体例として、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Compact Disc-Read Only Memory )、CD-R(Compact Disc-Recordable )、CD-R/W(Compact Disc-ReWritable )、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM )、フラッシュROM)がある。
 また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium )に格納されてもよい。一時的なコンピュータ可読媒体には、例えば、有線通信路または無線通信路を介して、すなわち、電気信号、光信号または電磁波を介して、プログラムが供給される。
 メモリ1002は、例えばRAM(Random Access Memory)で実現され、CPU1000が処理を実行するときに一時的にデータを格納する記憶手段である。メモリ1002に、記憶装置1001または一時的なコンピュータ可読媒体が保持するプログラムが転送され、CPU1000がメモリ1002内のプログラムに基づいて処理を実行するような形態も想定しうる。また、図13に示されたメタ情報蓄積部170は、メモリ1002または記憶装置1001で実現される。
 図16は、システム配備装置の主要部を示すブロック図である。図16に示すシステム配備装置10は、システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得するメタ情報取得部11(実施形態では、メタ情報抽出部110またはメタ情報選択部160で実現される。)と、取得されたメタ情報と設計情報から、ひな形における可変部分と設計情報における設定項目との比較を行って適合度をスコア化する比較スコア計算部13(実施形態では、比較スコア計算部130で実現される。)と、スコア化された適合度に基づいて、ひな形における可変部分と設計情報における設定項目の最適なマッチングを算出するマッピング部14(実施形態では、マッピング部140で実現される。)と、最適なマッチングに基づいて、設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する変数埋め込み部15(実施形態では、変数埋め込み部150で実現される。)とを備える。
 図17は、メタ情報取得部11の構成例を示すブロック図である。図17に示すメタ情報取得部11は、入力されたひな形から、抽出ルールを参照してメタ情報を抽出するメタ情報抽出部11A(実施形態では、メタ情報抽出部110で実現される。)を含む。なお、ルール管理部12(実施形態では、ルール管理部120で実現される。)は、メタ情報を抽出するための抽出ルールを管理する。
 図18は、メタ情報取得部11の他の構成例を示すブロック図である。図18に示すメタ情報取得部11は、メタ情報蓄積部17(実施形態では、メタ情報蓄積部170で実現される。)に記憶されている複数のメタ情報の中から、構成情報に記述された配備対象に関する情報を利用してメタ情報を選択するメタ情報選択部11B(実施形態では、メタ情報選択部160で実現される。)を含む。なお、メタ情報蓄積部17は、ITシステムの配備に用いられるシステム構成情報を記述するひな形群から抽出したメタ情報を記憶する。
 上記の実施形態の一部または全部は以下の付記のようにも記載されうるが、本発明の構成は以下の構成に限定されない。
(付記1)ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備装置であって、
 システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得するメタ情報取得手段と、
 取得されたメタ情報と前記設計情報から、ひな形における可変部分と前記設計情報における設定項目との比較を行って適合度をスコア化する比較スコア計算手段と、
 スコア化された前記適合度に基づいて、ひな形における可変部分と前記設計情報における設定項目の最適なマッチングを算出するマッピング手段と、
 前記最適なマッチングに基づいて、前記設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する変数埋め込み手段と
 を備えたシステム配備装置。
(付記2)メタ情報を抽出するための抽出ルールを管理するルール管理手段を備え、
 前記メタ情報取得手段は、入力されたひな形から、前記抽出ルールを参照してメタ情報を抽出するメタ情報抽出手段を含む
 付記1のシステム配備装置。
(付記3)メタ情報抽出手段は、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを決める
 付記2のシステム配備装置。
(付記4)ルール管理手段は、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを特定可能なルールを有する
 付記3のシステム配備装置。
(付記5)ITシステムの配備に用いられるシステム構成情報を記述するひな形群から抽出した複数のメタ情報を記憶するメタ情報蓄積手段を備え、
 前記メタ情報取得手段は、前記メタ情報蓄積手段に記憶されている複数のメタ情報の中から、構成情報に記述された配備対象に関する情報を利用してメタ情報を選択するメタ情報選択手段を含む
 付記1のシステム配備装置。
(付記6)比較スコア計算手段は、前記メタ情報取得手段が取得したメタ情報の種類と、前記設計情報における設定項目の構造上の位置づけとに応じて比較対象を特定し、比較対象ごとに比較対象間の適合度をスコア化し、スコア化されたそれらの適合度を平均化して総合的な適合度を算出し、
 前記マッピング手段は、前記総合的な適合度を用いて最適なマッチングを算出する
 付記1から付記5のいずれかのシステム配備装置。
(付記7)ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備方法であって、
 システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得し、
 取得されたメタ情報と前記設計情報から、ひな形における可変部分と前記設計情報における設定項目との比較を行って適合度をスコア化し、
 スコア化された前記適合度に基づいて、ひな形における可変部分と前記設計情報における設定項目の最適なマッチングを算出し、
 前記最適なマッチングに基づいて、前記設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する
 システム配備方法。
(付記8)メタ情報を抽出するための抽出ルールを管理し、
 メタ情報を取得するために、入力されたひな形から、前記抽出ルールを参照してメタ情報を抽出する
 付記7のシステム配備方法。
(付記9)メタ情報を抽出するときに、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを決める
 付記8のシステム配備方法。
(付記10)抽出ルールとして、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを特定可能なルールを管理する
 付記9のシステム配備方法。
(付記11)メタ情報を取得するために、ITシステムの配備に用いられるシステム構成情報を記述するひな形群から抽出したメタ情報を記憶するメタ情報蓄積手段に記憶されている複数のメタ情報の中から、構成情報に記述された配備対象に関する情報を利用してメタ情報を選択する
 付記7のシステム配備方法。
(付記12)メタ情報の種類と、前記設計情報における設定項目の構造上の位置づけとに応じて比較対象を特定し、比較対象ごとに比較対象間の適合度をスコア化し、スコア化されたそれらの適合度を平均化して総合的な適合度を算出し、
 前記総合的な適合度を用いて最適なマッチングを算出する
 付記7から付記11のいずれかのシステム配備方法。
(付記13)ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備方法を実施するためのプログラムであって、
 コンピュータに、
 システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得し、
 取得されたメタ情報と前記設計情報から、ひな形における可変部分と前記設計情報における設定項目との比較を行って適合度をスコア化し、
 スコア化された前記適合度に基づいて、ひな形における可変部分と前記設計情報における設定項目の最適なマッチングを算出し、
 前記最適なマッチングに基づいて、前記設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する
 処理を実行させるためのシステム配備プログラム。
(付記14)コンピュータに、
 メタ情報を抽出するための抽出ルールを管理させ、
 メタ情報を取得するために、入力されたひな形から、前記抽出ルールを参照してメタ情報を抽出させる
 付記13のシステム配備プログラム。
(付記15)コンピュータに、
 メタ情報を抽出するときに、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを決めさせる
 付記14のシステム配備プログラム。
(付記16)コンピュータに、
 抽出ルールとして、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを特定可能なルールを管理させる
 付記15のシステム配備プログラム。
(付記17)コンピュータに、
 メタ情報を取得するために、ITシステムの配備に用いられるシステム構成情報を記述するひな形群から抽出したメタ情報を記憶するメタ情報蓄積手段に記憶されている複数のメタ情報の中から、構成情報に記述された配備対象に関する情報を利用してメタ情報を選択させる
 付記13のシステム配備プログラム。
(付記18)コンピュータに、
 メタ情報の種類と、前記設計情報における設定項目の構造上の位置づけとに応じて比較対象を特定し、比較対象ごとに比較対象間の適合度をスコア化し、スコア化されたそれらの適合度を平均化して総合的な適合度を算出させ、
 前記総合的な適合度を用いて最適なマッチングを算出させる
 付記13から付記17のいずれかのシステム配備プログラム。
 なお、付記13から付記18のそれぞれに対応するコンピュータ読み取り可能な記録媒体に格納されたプログラムは、プロセッサによって実行されるときに、付記13から付記18のそれぞれにおける各処理を実行する。
 以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
 この出願は、2018年12月6日に出願された日本特許出願2018-228704を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 10   システム配備装置
 11   メタ情報取得部
 11A  メタ情報抽出部
 11B  メタ情報選択部
 12   ルール管理部
 13   比較スコア計算部
 14   マッピング部
 15   変数埋め込み部
 17   メタ情報蓄積部
 100,101 システム配備装置
 110  メタ情報抽出部
 120  ルール管理部
 130  比較スコア計算部
 140  マッピング部
 150  変数埋め込み部
 160  メタ情報選択部
 170  メタ情報蓄積部
 200  ひな形
 300  設計情報
 400  具体配備定義
 500  構成情報
 600  ITシステム(検証環境)
 700  ITシステム(運用環境)

Claims (18)

  1.  ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備装置であって、
     システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得するメタ情報取得手段と、
     取得されたメタ情報と前記設計情報から、ひな形における可変部分と前記設計情報における設定項目との比較を行って適合度をスコア化する比較スコア計算手段と、
     スコア化された前記適合度に基づいて、ひな形における可変部分と前記設計情報における設定項目の最適なマッチングを算出するマッピング手段と、
     前記最適なマッチングに基づいて、前記設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する変数埋め込み手段と
     を備えたシステム配備装置。
  2.  メタ情報を抽出するための抽出ルールを管理するルール管理手段を備え、
     前記メタ情報取得手段は、入力されたひな形から、前記抽出ルールを参照してメタ情報を抽出するメタ情報抽出手段を含む
     請求項1に記載のシステム配備装置。
  3.  前記メタ情報抽出手段は、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを決める
     請求項2に記載のシステム配備装置。
  4.  前記ルール管理手段は、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを特定可能なルールを有する
     請求項3に記載のシステム配備装置。
  5.  ITシステムの配備に用いられるシステム構成情報を記述するひな形群から抽出した複数のメタ情報を記憶するメタ情報蓄積手段を備え、
     前記メタ情報取得手段は、前記メタ情報蓄積手段に記憶されている複数のメタ情報の中から、構成情報に記述された配備対象に関する情報を利用してメタ情報を選択するメタ情報選択手段を含む
     請求項1に記載のシステム配備装置。
  6.  前記比較スコア計算手段は、前記メタ情報取得手段が取得したメタ情報の種類と、前記設計情報における設定項目の構造上の位置づけとに応じて比較対象を特定し、比較対象ごとに比較対象間の適合度をスコア化し、スコア化されたそれらの適合度を平均化して総合的な適合度を算出し、
     前記マッピング手段は、前記総合的な適合度を用いて最適なマッチングを算出する
     請求項1から請求項5のうちのいずれか1項に記載のシステム配備装置。
  7.  ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備方法であって、
     システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得し、
     取得されたメタ情報と前記設計情報から、ひな形における可変部分と前記設計情報における設定項目との比較を行って適合度をスコア化し、
     スコア化された前記適合度に基づいて、ひな形における可変部分と前記設計情報における設定項目の最適なマッチングを算出し、
     前記最適なマッチングに基づいて、前記設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する
     システム配備方法。
  8.  メタ情報を抽出するための抽出ルールを管理し、
     メタ情報を取得するために、入力されたひな形から、前記抽出ルールを参照してメタ情報を抽出する
     請求項7に記載のシステム配備方法。
  9.  メタ情報を抽出するときに、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを決める
     請求項8に記載のシステム配備方法。
  10.  抽出ルールとして、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを特定可能なルールを管理する
     請求項9に記載のシステム配備方法。
  11.  メタ情報を取得するために、ITシステムの配備に用いられるシステム構成情報を記述するひな形群から抽出したメタ情報を記憶するメタ情報蓄積手段に記憶されている複数のメタ情報の中から、構成情報に記述された配備対象に関する情報を利用してメタ情報を選択する
     請求項7に記載のシステム配備方法。
  12.  メタ情報の種類と、前記設計情報における設定項目の構造上の位置づけとに応じて比較対象を特定し、比較対象ごとに比較対象間の適合度をスコア化し、スコア化されたそれらの適合度を平均化して総合的な適合度を算出し、
     前記総合的な適合度を用いて最適なマッチングを算出する
     請求項7から請求項11のうちのいずれか1項に記載のシステム配備方法。
  13.  ITシステムの配備に用いられるシステム構成情報の具体値が記述された設計情報に基づいて、具体的なシステム配備のための定義を作成するシステム配備方法を実施するためのプログラムが格納されたコンピュータ読み取り可能な記録媒体であって、
     前記プログラムは、プロセッサによって実行されるときに、
     システム構成情報を記述するひな形における可変部分の設定についての意味に関するメタ情報を取得し、
     取得されたメタ情報と前記設計情報から、ひな形における可変部分と前記設計情報における設定項目との比較を行って適合度をスコア化し、
     スコア化された前記適合度に基づいて、ひな形における可変部分と前記設計情報における設定項目の最適なマッチングを算出し、
     前記最適なマッチングに基づいて、前記設計情報における設定項目に対応する値をひな形における可変部分に代入して、ITシステム配備のための定義を作成する
     記録媒体。
  14.  前記プログラムは、プロセッサによって実行されるときに、
     メタ情報を抽出するための抽出ルールを管理し、
     メタ情報を取得するために、入力されたひな形から、前記抽出ルールを参照してメタ情報を抽出する
     請求項13に記載の記録媒体。
  15.  前記プログラムは、プロセッサによって実行されるときに、
     メタ情報を抽出するときに、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを決める
     請求項14に記載の記録媒体。
  16.  前記プログラムは、プロセッサによって実行されるときに、
     抽出ルールとして、ひな形の可変部分のひな形内での利用の形態に応じて、どのような種類の情報としてメタ情報を抽出するのかを特定可能なルールを管理する
     請求項15に記載の記録媒体。
  17.  前記プログラムは、プロセッサによって実行されるときに、
     メタ情報を取得するために、ITシステムの配備に用いられるシステム構成情報を記述するひな形群から抽出したメタ情報を記憶するメタ情報蓄積手段に記憶されている複数のメタ情報の中から、構成情報に記述された配備対象に関する情報を利用してメタ情報を選択する
     請求項13に記載の記録媒体。
  18.  前記プログラムは、プロセッサによって実行されるときに、
     メタ情報の種類と、前記設計情報における設定項目の構造上の位置づけとに応じて比較対象を特定し、比較対象ごとに比較対象間の適合度をスコア化し、スコア化されたそれらの適合度を平均化して総合的な適合度を算出し、
     前記総合的な適合度を用いて最適なマッチングを算出する
     請求項13から請求項17のうちのいずれか1項に記載の記録媒体。
PCT/JP2019/041304 2018-12-06 2019-10-21 システム配備装置およびシステム配備方法 WO2020116044A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/296,794 US20220012066A1 (en) 2018-12-06 2019-10-21 System deployment device and system deployment method
JP2020559776A JP7136228B2 (ja) 2018-12-06 2019-10-21 システム配備装置およびシステム配備方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-228704 2018-12-06
JP2018228704 2018-12-06

Publications (1)

Publication Number Publication Date
WO2020116044A1 true WO2020116044A1 (ja) 2020-06-11

Family

ID=70975299

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/041304 WO2020116044A1 (ja) 2018-12-06 2019-10-21 システム配備装置およびシステム配備方法

Country Status (3)

Country Link
US (1) US20220012066A1 (ja)
JP (1) JP7136228B2 (ja)
WO (1) WO2020116044A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012124018A1 (ja) * 2011-03-11 2012-09-20 富士通株式会社 情報処理装置、情報処理方法、および情報処理プログラム
JP2014130448A (ja) * 2012-12-28 2014-07-10 Canon Marketing Japan Inc 情報処理装置、情報処理方法、及び、コンピュータプログラム
JP2018109843A (ja) * 2016-12-28 2018-07-12 富士通フロンテック株式会社 比較プログラム、比較方法、情報端末装置、設定情報比較システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110177266B (zh) * 2017-12-18 2021-02-26 西安交通大学 一种结构光3d深度相机的自校正方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012124018A1 (ja) * 2011-03-11 2012-09-20 富士通株式会社 情報処理装置、情報処理方法、および情報処理プログラム
JP2014130448A (ja) * 2012-12-28 2014-07-10 Canon Marketing Japan Inc 情報処理装置、情報処理方法、及び、コンピュータプログラム
JP2018109843A (ja) * 2016-12-28 2018-07-12 富士通フロンテック株式会社 比較プログラム、比較方法、情報端末装置、設定情報比較システム

Also Published As

Publication number Publication date
JP7136228B2 (ja) 2022-09-13
JPWO2020116044A1 (ja) 2021-12-02
US20220012066A1 (en) 2022-01-13

Similar Documents

Publication Publication Date Title
JP6764779B2 (ja) 同義カラム候補選出装置、同義カラム候補選出方法、及び同義カラム候補選出プログラム
US10970673B2 (en) Bill of material synchronization
JPWO2008093569A1 (ja) 情報抽出規則作成支援システム、情報抽出規則作成支援方法及び情報抽出規則作成支援プログラム
US11176184B2 (en) Information retrieval
CN110543950A (zh) 一种工业大数据建模平台
WO2020116044A1 (ja) システム配備装置およびシステム配備方法
JP7003749B2 (ja) 生成プログラム、生成装置、および、生成方法
JP6502816B2 (ja) 計画支援システム及び計画支援方法
JP2007087268A (ja) コマンド生成システムと方法およびコマンド実行制御システムと方法ならびにプログラムと業務処理システム
KR20190033821A (ko) 폴더 추천 방법 및 폴더 추천 장치
US11327994B2 (en) Arranging converted operation history information
JP6365070B2 (ja) 検索プログラム、装置、及び方法
JP6705482B2 (ja) システム構築パラメータ管理装置、システム構築パラメータ管理システム、システム構築パラメータ管理方法、及び、システム構築パラメータ管理プログラム
JP2016126575A (ja) データ関連度算出プログラム、装置、および方法
JP5641901B2 (ja) Sql検証システムとその方法およびプログラム
JPWO2007072567A1 (ja) 並列処理支援装置
US20240135332A1 (en) Rule-based design scheduling system for processing build project schedules
JP2020205012A (ja) 文書画像処理装置、情報処理方法及びプログラム
KR20190114916A (ko) 전자문서의 관계기반 저작관리방법 및 저작관리시스템
JP4905989B2 (ja) メタデータ検索装置
JP4767633B2 (ja) 設計支援システム及びプログラム
JP2010218459A (ja) 情報処理装置、情報処理方法及びプログラム
JP2024049751A (ja) 文書管理装置及びプログラム
JPWO2021059460A1 (ja) エンジニアリングツール、学習装置、およびデータ収集システム
JP2015045939A (ja) 非構造化データ処理システム、非構造化データ処理方法およびプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19894213

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020559776

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19894213

Country of ref document: EP

Kind code of ref document: A1