WO2023233451A1 - システム運用計画装置、表示装置、システム運用計画方法および記録媒体 - Google Patents

システム運用計画装置、表示装置、システム運用計画方法および記録媒体 Download PDF

Info

Publication number
WO2023233451A1
WO2023233451A1 PCT/JP2022/021890 JP2022021890W WO2023233451A1 WO 2023233451 A1 WO2023233451 A1 WO 2023233451A1 JP 2022021890 W JP2022021890 W JP 2022021890W WO 2023233451 A1 WO2023233451 A1 WO 2023233451A1
Authority
WO
WIPO (PCT)
Prior art keywords
configuration
target system
value
variation factor
requirements
Prior art date
Application number
PCT/JP2022/021890
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 PCT/JP2022/021890 priority Critical patent/WO2023233451A1/ja
Publication of WO2023233451A1 publication Critical patent/WO2023233451A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques

Definitions

  • the present invention relates to a system operation planning device, a display device, a system operation planning method, and a recording medium.
  • Non-Patent Document 1 describes a technique related to automatic design of a system.
  • Patent Documents 1 to 3 describe techniques related to a procedure for transitioning the state of a state machine group.
  • Non-Patent Documents 2 to 5 describe techniques related to system or network status monitoring.
  • An example of an object of the present invention is to provide a system operation planning device, a display device, a system operation planning method, and a recording medium that can solve the above-mentioned problems.
  • the system operation planning device determines a value of a variation factor that changes during operation of a target system, which is a system to be operated, and that has a correlation with the operating status of the target system. includes information indicating a variation factor range that is an allowable range during operation of the target system, and determines the variation factor range based on abstract requirements that are information indicating requirements that the target system should satisfy. For each of the plurality of values of the variation factor included in the variable factor, a specific requirement is generated that includes information indicating the value and is information indicating a requirement that the target system should satisfy.
  • the display device includes a variable factor whose value changes during the operation of the target system, which is the system to be operated, and whose value has a correlation with the operating status of the target system.
  • a display means for displaying the list is provided.
  • the display device displays a value that changes during operation of a target system, which is a system to be operated, and a value of a variable factor that has a correlation with the operating status of the target system.
  • a display means is provided for displaying a range that is allowed during operation of the target system.
  • the display device shows a value of a variation factor that changes during operation of the target system, which is a system to be operated, and has a correlation with the operating status of the target system.
  • a display means is provided for displaying points indicating the values of the variation factors for each of the coordinate axes in a coordinate space having coordinate axes for each of the plurality of variation factors.
  • a system operation planning method includes a system operation planning method in which a computer calculates a value that changes during operation of a target system, which is a system to be operated, and that has a correlation with the operating status of the target system. Based on abstract requirements that include information indicating a variation factor range that is an allowable range for the value of the factor to take during operation of the target system, and that is information indicating requirements that the target system should satisfy, For each of the plurality of values of the variation factor included in the variation factor range, the method includes generating specific requirements that include information indicating the value and are information indicating requirements that the target system should satisfy.
  • the recording medium stores, in a computer, a variable factor that changes during operation of a target system, which is a system to be operated, and that has a correlation with the operating status of the target system.
  • the variation factor includes information indicating a variation factor range whose value is an allowable range during operation of the target system, and the variation factor is determined based on abstract requirements that are information indicating requirements that the target system should satisfy.
  • a program for generating specific requirements that include information indicating the values for each of the plurality of values of the variation factor included in the range and that are information indicating requirements that the target system should satisfy. are recorded.
  • a determination criterion can be provided for automatically determining whether or not to change the system configuration during system operation.
  • FIG. 1 is a block diagram showing an example of a functional configuration of a system operation planning device according to a first embodiment
  • FIG. FIG. 2 is a diagram for explaining an overview of a process in which the operation planning unit generates an operation plan according to the first embodiment.
  • FIG. 3 is a diagram illustrating an example of expressing abstract requirements in the first embodiment.
  • FIG. 3 is a diagram showing an example of specific requirements in the first embodiment.
  • FIG. 3 is a diagram illustrating an example of a matrix of specific requirements in the first embodiment.
  • FIG. 3 is a diagram showing an example of definition information of variation factors in the first embodiment.
  • FIG. 6 is a diagram illustrating an example of component type definition information and relationship type definition information in the first embodiment.
  • FIG. 3 is a diagram showing a first example of configuration information in the first embodiment.
  • FIG. 7 is a diagram showing a second example of configuration information in the first embodiment.
  • FIG. 6 is a diagram illustrating an example of difference information derived from configuration pairs in the first embodiment. An example of a state transition system derived from the difference information illustrated in FIG. 10 in the first embodiment is shown.
  • FIG. 6 is a diagram illustrating an example of component type definition information including a state transition system definition in the first embodiment.
  • FIG. 6 is a diagram illustrating an example of a configuration change procedure derived from a state transition system in the first embodiment. It is a diagram showing an example of an operation plan in the first embodiment.
  • 3 is a flowchart illustrating an example of a procedure of processing performed by the operation planning unit according to the first embodiment.
  • FIG. 7 is a flowchart illustrating an example of a procedure of processing performed by the configuration design unit according to the first embodiment.
  • 7 is a flowchart illustrating an example of a procedure of processing performed by a procedure planning unit according to the first embodiment.
  • FIG. 2 is a diagram illustrating an example of a GUI (Graphical User Interface) presented to a user by the operation planning department according to the first embodiment.
  • FIG. 2 is a block diagram illustrating an example of a functional configuration of a system operation planning device according to a second embodiment.
  • FIG. 7 is a diagram illustrating an example of system status information recorded in a status management unit according to the second embodiment.
  • 7 is a flowchart illustrating an example of a procedure of processing performed by the operation execution unit according to the second embodiment.
  • FIG. 12 is a flowchart illustrating an example of a processing procedure in an operation for maintaining the state of the target system in an appropriate state, which is performed by the operation execution unit according to the second embodiment.
  • 7 is a flowchart illustrating an example of a procedure of processing performed by a determination unit according to the second embodiment.
  • FIG. 7 is a block diagram illustrating an example of a functional configuration of a system operation planning device according to a third embodiment.
  • FIG. 7 is a diagram illustrating an example of the configuration of a system operation planning device according to a fourth embodiment. It is a figure which shows the example of the structure of the display apparatus based on 5th Embodiment to 7th Embodiment.
  • FIG. 12 is a diagram illustrating an example of a processing procedure in a system operation planning method according to an eighth embodiment.
  • FIG. 1 is a schematic block diagram showing the configuration of a computer according to at least one embodiment.
  • FIG. 1 is a block diagram showing an example of the functional configuration of a system operation planning device according to the first embodiment.
  • the system operation planning device 1 includes an input/output section 901 and an operation planning section 100.
  • the operation planning section 100 includes a plan control section 101 , a requirement generation section 102 , a configuration design section 103 , and a procedure planning section 104 .
  • the input/output unit 901 includes an input/output device, and functions as an interface with a user.
  • the input/output device may be configured by a combination of an input device such as a keyboard and a mouse, and a display device.
  • the input/output unit 901 may have a communication function with other devices in addition to or in place of the function of an interface with a user.
  • the input/output unit 901 may be configured as an external input/output device of the system operation planning device 1, and the input/output device and the planning control unit 101 may be able to communicate.
  • the operation planning unit 100 receives abstract requirements input from the user via the input/output unit 901 and outputs an operation plan to the input/output unit 901.
  • Abstract requirements are information that abstractly indicates the requirements of the system that the user wants to build.
  • the operation plan is information indicating a series of processes for constructing a system that satisfies abstract requirements and operating the constructed system so as to maintain the abstract requirements.
  • the system for which the system operation planning device 1 generates an operation plan is also referred to as a target system.
  • the operation planning unit 100 generates an operation plan so that the target system satisfies abstract requirements.
  • the plan control unit 101 generates an operation plan based on the received abstract requirements using the functions of the requirement generation unit 102, configuration design unit 103, and procedure planning unit 104, and sends the generated operation plan to the input/output unit 901. Output to.
  • the requirement generation unit 102 converts the abstract requirements received from the planning control unit 101 into a matrix of concrete requirements, and outputs the matrix to the planning control unit 101.
  • the configuration design unit 103 designs configuration information corresponding to each of the plurality of specific requirements received from the plan control unit 101 and outputs it to the plan control unit 101.
  • the configuration information is information indicating the system configuration.
  • the configuration design unit 103 corresponds to an example of configuration design means.
  • the procedure planning unit 104 plans a procedure for changing the system configuration indicated by one piece of configuration information to the system configuration indicated by another piece of configuration information regarding the plural pieces of configuration information received from the plan control unit 101 . Output to.
  • the procedure planning unit 104 corresponds to an example of a procedure planning means.
  • variable factor is a parameter that serves as a criterion for selecting the system configuration of a target system and that changes during operation of the target system. More specifically, a variable factor is an item (item) whose value changes during operation of the target system 911 and whose value has a correlation with the operating status of the target system 911.
  • variable factor is the frequency of access to the target system.
  • the frequency of access increases, it is necessary to increase the computing resources and network resources of the target system so that the target system can withstand higher loads.
  • the frequency of access decreases, it is better to operate the target system with fewer resources to save power and costs and operate more efficiently.
  • variable factor may be a quantity related to a factor that affects the operation of the target system, such as a factor that imposes a load on the target system.
  • variable factor may be a measured value or a calculated value regarding the performance of the target system, such as a CPU (Central Processing Unit) load factor or a turnaround time of the target system.
  • CPU Central Processing Unit
  • each variable factor is specified with a range of allowable values instead of a specific value. This range is also referred to as a variable factor range.
  • the variation factor range is a range within which the value of the variation factor is allowed to take when the target system 911 is operated.
  • the concrete requirements are those in which the values of each variation factor are specifically determined from the abstract requirements. Based on specific requirements, specific specific system configurations can be designed.
  • FIG. 2 is a diagram for explaining an overview of the process by which the operation planning unit 100 generates an operation plan.
  • Part (a) of FIG. 2 shows the variation factors shown in the abstract requirements and the range of values that each variation factor can take (range from the minimum value to the maximum value).
  • the range of values that the variable factor can take is also indicated by abstract requirements.
  • the number of variation factors indicated in the abstract requirements may be one or more and is not limited to a specific number. That is, in the example shown in FIG. 2, for convenience of explanation, a case will be described in which two types of variation factors are represented on a two-dimensional plane, but the number of variation factors handled by the operation planning unit 100 is not limited to two types.
  • Part (b) of FIG. 2 shows an example of setting specific requirements in addition to the range of values that the variation factor can take.
  • specific requirements are indicated by white circles ( ⁇ ) such as white circle a11.
  • the operation planning unit 100 may set specific requirements.
  • the operation planning unit 100 equally divides the range of possible values of each variation factor into a plurality of intervals, and calculates the value of the specific variation factor at the boundary of the interval.
  • the group is set.
  • the method of setting a specific set of variable factor values in setting specific requirements is not limited to a specific method.
  • the specific arrangement of the sets of variation factor values is not limited to a grid-like arrangement as in the example of the part (b) of FIG. 2 .
  • the operation planning unit 100 may thin out a set of specific variable factor values for a portion in which a change in the variable factor value has a relatively small effect on the system configuration among the range of values that the variable factor can take. You can also do this. That is, the operation planning unit 100 may thin out specific requirements.
  • the operation planning unit 100 presents the set set of variable factors to the user and allows the user to edit the specific set of variable factor values. You may accept it.
  • the operation planning unit 100 may accept changes, additions, and deletions in the positions of specific sets of variable factor values.
  • the part (c) in FIG. 2 shows an example of specific configuration information and configuration change procedure settings in addition to the range of values that the variation factor can take.
  • specific configuration information is indicated by black circles ( ⁇ ) like black circle a12
  • configuration change procedure settings between specific configuration information are indicated by arrows like arrow a13. It shows.
  • the operation planning unit 110 designs specific configuration information for each specific requirement. Further, the operation planning unit 110 plans a work procedure for changing the configuration from one of two adjacent pieces of configuration information to the other. The operation planning unit 110 thereby formulates an operation plan.
  • the appropriate system configuration of the target system is determined based on the values of the variable factors within the range of the determined variable factors, and the current system configuration is changed to the appropriate system configuration. It is expected that it will be possible to extract the steps for changing the information. It is expected that the appropriate state of the target system can be maintained by changing the system configuration of the target system according to the extracted procedures.
  • the requirement generation unit 102 inserts the monitoring requirements for each variable factor into the specific requirements.
  • the configuration design unit 103 designs a system configuration of the target system including a monitoring function for each variable factor based on the added monitoring requirements.
  • Abstract configuration information is configuration information in which some or all of the elements are described by abstract elements, and configurations in which the specification of other elements on which some or all of the elements depend is omitted. It is a general term for information.
  • Configuration information is information that indicates the parts that make up the system and the relationships between the parts.
  • component parts The parts that make up the system are called component parts.
  • the relationship between parts is also simply referred to as relationship.
  • component parts and relationships are collectively referred to as component elements.
  • the components include concrete components and abstract components.
  • a specific component is a component whose type can be uniquely identified.
  • a specific example of a component is a component with a fixed product name and model number, such as "Tomcat version 1", which is a type of application server (AppServer).
  • An abstract component is a component that collectively refers to multiple types of components.
  • An example of an abstract component is AppServer.
  • AppServer By specifying abstract components as requirements for the target system, or by omitting the specification of other components on which a certain component depends, for example, "any AppServer product will do”. As such, conditions including degrees of freedom can be expressed concisely and accurately.
  • the configuration information needs to be specific. In other words, all the components must be specific and all the other components upon which they depend must be present.
  • the configuration information can be described using graph-format information in which components are nodes and relationships are edges. Each component further includes related information such as type information indicating its type and properties indicating attribute values.
  • FIG. 3 is a diagram showing an example of expressing abstract requirements. Part (a) of FIG. 3 shows an example of diagrammatic representation of abstract requirements. Part (b) of FIG. 3 shows an example of expressing abstract requirements in text.
  • the configuration of the abstract requirements illustrated in FIG. 3 includes one component whose ID (Identifier, identification information) is "myWebApp.” This indicates the user's intention to request the construction of a system that runs "myWebApp" and the maintenance of the operation of "myWebApp.”
  • each component can have information on any number of variation factors as properties.
  • the type of variation factor and the range of values allowed for the variation factor are specified for each variation factor.
  • myWebApp includes two properties: "number of accesses per second" and "load per request.” In part (a) of FIG. 3, these two properties are shown as variation factors. In the part (b) of FIG. 3, these two properties are designated as variation factors because "it is a variation factor" is set to "True”.
  • the range of allowable values for the "number of accesses per second" is specified as 10 to 1000.
  • the range of allowable values for "load per request” is specified as 100 to 500.
  • the operation planning unit 100 can generate a matrix of concrete requirements based on abstract requirements.
  • the content of each concrete requirement is basically the same as the abstract requirement, but variable factors are replaced with general properties and variable factor monitoring requirements, and property values have a range of values. A specific value is assigned instead.
  • FIG. 4 is a diagram showing an example of specific requirements.
  • the specific requirements shown in FIG. 4 follow the abstract requirements shown in FIG. 3, but the variable factors are replaced with general properties and monitoring requirements.
  • ⁇ Number of accesses per second'' and ⁇ Load per request'' are set as properties derived from variation factors.
  • the specific value of "number of accesses per second" is set to 10.
  • a specific value of 100 is set for "load per request.”
  • number of accesses per second and “load per request” are shown as components that have the function of monitoring each variable factor.
  • the connection relationship between these components and “myWebApp” with “number of accesses per second” and “load per request” as the connection source and “myWebApp” as the connection destination is shown by the relationship of the monitored target type. has been done.
  • a notation such as "$myWebApp” with a "$" in front represents a reference to a component such as "myWebApp".
  • An example of a specific requirement including a component having a function of monitoring a variation factor is a requirement that the target system 911 includes a configuration for performing observation to obtain a value of a variation factor. Applies to.
  • the observation here may be a process for obtaining a value of a variation factor or a value related to it, such as measuring or counting a value of a variation factor or a value related to it.
  • the matrix of specific requirements is a set of specific requirements having different values of variation factors.
  • FIG. 5 is a diagram showing an example of a matrix of specific requirements.
  • the matrix of specific requirements is defined by an array of specific requirements as part of the operation plan. Each element of the array consists of an item "variation factor” and an item “requirement”.
  • the item "variation factor” defines a set of values of the variation factor, and the item “requirement” defines specific requirements.
  • the variation factor value of each element of the array may be generated by dividing the variation factor value range defined in the abstract requirement into multiple intervals.
  • the operation planning unit 100 generates three values for each variable factor by dividing each of the two variable factors into two intervals, and then calculates the combination of the values of the generated variable factors. , nine sets of values and specific requirements are generated.
  • the user defines the type information of the variable factor in advance so that the user can define abstract requirements and the operation planning unit 100 can generate concrete requirements based on the abstract requirements.
  • the type information of a variable factor includes a type name, a value type, a value observation method, a value unit, a basic value that is a value to be used in the configuration at the time of initial construction, and a definition as a component.
  • the value type in the variation factor type information is the value type of the variation factor.
  • An integer Integer
  • Boolean a truth value
  • the method of specifying the range of values and the method of dividing the range of values to generate specific requirements differ depending on the value type. These shall be determined in advance for each value type. In the case of Integer, you can set the maximum and minimum values and divide this into multiple intervals. In the case of Boolean, there is no particular method for specifying the range; it is sufficient to simply indicate true and false when dividing the interval.
  • the observation method in the variation factor type information is the observation method of the variation factor value during operation. “Monitoring” or “user input” may be specified as the observation method. If the observation method is “monitoring”, it indicates that the value is obtained by monitoring the system in operation. When the observation method is "user input”, it indicates that the user specifies the value of the variation factor via the input/output device.
  • the "user input” observation method can be used as a changeover switch for the system configuration of the target system when it is known in advance that the user will change some of the requirements for the target system.
  • the definition as a component is the definition of the component type when converted into a component that indicates monitoring requirements, and needs to be set when the observation method is "monitoring".
  • FIG. 6 is a diagram illustrating an example of definition information of variation factors.
  • Part (a) of FIG. 6 shows an example of definition information of "number of accesses per second type”.
  • Part (b) of FIG. 6 shows an example of definition information of "load type per request.”
  • For both the "number of accesses per second type" and the "load per request type,” "Integer” is set as the "value type,” and “monitoring” is set as the "observation method.”
  • "times/s” is set for the "number of accesses per second type”
  • processing amount/request is set for the "load per request type”.
  • the "$minimum value” is specified as the “base value”.
  • the basic value indicates the value to be used as the value of the variation factor for the system configuration at the time of initial construction of the target system.
  • “$minimum value” indicates that the minimum value of the variation factor defined in the abstract requirements is to be quoted.
  • the notation method for "definition as a component” is generally the same as the notation method for a general component type definition. However, in the “definition as a component”, the notation “$_target” is used to refer to the component for which the original variation factor was set. Using the description of the configuration shown in the "basic configuration” of the “expected peripheral configuration", it is possible to generate a description of the relationship among the component parts of the specific requirements illustrated in FIG.
  • component type definition information and relationship type definition information are used. Both the component type definition information and the relationship type definition information include information on inheritance sources, abstract flags, properties, and definitions of expected peripheral configurations.
  • the relationship type further includes information on the types of components that can be placed at both ends of the relationship.
  • the type of another component may be set as the inheritance source, and when set, the following two effects will be achieved.
  • the first effect is that the type information of the component to be defined is based on the information of the type of the component to be inherited, and this is overwritten by the information shown in the definition of the type of the component to be defined. It is considered that
  • the second effect is that the component to be defined is a type of component of the inheritance source, and when the component of the inheritance source is specified in a requirement, it is one of the options for that specific component. It is considered that there is. That is, when designing configuration information based on the requirements specified by the inheritance source component, the inheritance component may be adopted as a specific component.
  • the abstract flag is a flag indicating whether the component is abstract or concrete. Properties are the types and values of attributes that the constituent elements have.
  • the expected peripheral configuration is a peripheral configuration that must be satisfied in order for the component to function correctly, and multiple variations may be set.
  • FIG. 7 is a diagram illustrating an example of component type definition information and relationship type definition information.
  • definition information of a "MyWebApp" type component is shown as an example of component type definition information.
  • definition information of a “HostedOn ⁇ *, Server>” type relationship is shown as an example of relationship type definition information.
  • “WebApp” is set as the inheritance source of the "MyWebApp” type. Since the abstract flag is set to “false”, components of type “MyWebApp” are treated as concrete components. “Number of accesses per second” and “load per request” are defined as properties of the “MyWebApp” type component. Furthermore, only the “basic configuration” is specified as the expected peripheral configuration. The “basic configuration” indicates that the relevant component (defined component) must be connected to the "AppServer” type component with a HostedOn ⁇ *, VM> type relationship. Note that "$_self” indicates the component itself.
  • the configuration information is information in a graph format expressed by component parts and relationships, and all the components are concrete and the expected peripheral configurations are satisfied.
  • FIG. 8 is a diagram showing a first example of configuration information.
  • MyWebApps is connected to Tomcat, which is a type of ApplicationServer, with a relationship of HostedOn ⁇ *, AppServer>.
  • Tomcat is also connected to Ubuntu, a specific OS.
  • Ubuntu is similarly connected to a specific virtual machine (VM), VM1.
  • VM virtual machine
  • the function to monitor the number of accesses per second is implemented as an access number agent that monitors access_log.txt, which is one of Tomcat's execution logs.
  • the access count agent is connected to access_log.txt and Ubuntu, respectively.
  • the function to monitor the load per request is embodied in the Load Agent, which is an agent that measures the processing amount of a specific process on Ubuntu. Load Agent is connected with Ubuntu.
  • the first example of configuration information shown in FIG. 8 shows a small-scale system configuration in which MyWebApp is realized by a single virtual machine. It is assumed that this system configuration is a system configuration generated from specific requirements, such as a variation factor value of 10 accesses per second and 10 load per request.
  • FIG. 9 is a diagram showing a second example of configuration information.
  • the system configuration shown in the second example of configuration information has the same basic structure as the first example of configuration information, but MyWebApp has a redundant configuration consisting of two virtual machines.
  • a load balancer (LB) is provided at the front stage.
  • the monitoring function measures the number of accesses per second for the load balancer and measures the load per request for each MyWebApp.
  • the operation planning unit 100 first generates configuration difference information that is information regarding the difference between two system configurations.
  • the configuration difference information is also simply referred to as difference information.
  • the operation planning unit 100 generates state transition information based on the system configuration and its differences.
  • the operation planning unit 100 calculates and derives a state transition procedure for transitioning from the current state to the target state with the least number of state transitions, based on state transition system information.
  • the current state indicates the system configuration before the configuration change.
  • the target state indicates the system configuration after the configuration change.
  • Difference information is created by integrating components included in the configuration information indicating the current system configuration and components included in the configuration information indicating the target system configuration, without duplication, into each component in the configuration information. This is information with labels such as newly added, maintaining status quo, and deletion.
  • the current system configuration corresponds to the system configuration before the configuration change.
  • the target system configuration corresponds to the system configuration after the configuration change.
  • the label here displays information such as new addition, maintenance of current status, deletion, etc. Labels are added based on the status of each component in the current system configuration and the status of each component in the target system configuration. For example, a newly added label is added to a component that is not included in the current system configuration but is included in the target system configuration. Components that are included in both the current system configuration and the target system configuration are labeled with the status quo label. Components that are included in the current system configuration but not included in the target system configuration are labeled as deleted.
  • a label such as update may be provided. If an update label is included, components that are included in both the current system configuration and the target system configuration and whose property values are the same are given the status quo label, and the property values are An update label is added to the component that has changed. In the following examples, update labels will not be used to make the explanation easier to understand.
  • FIG. 10 is a diagram illustrating an example of difference information derived from configuration pairs.
  • a configuration pair is a pair of a current system configuration and a target system configuration.
  • FIG. 10 shows an example of difference information when the system configuration shown in FIG. 8 is the current system configuration and the system configuration shown in FIG. 9 is the target system configuration.
  • State transition system information is information that associates states that each component included in the configuration information can take and state transitions that can occur with dependencies, and indicates the current state and target state of each component. .
  • each component has an arbitrary number of states and information on possible transitions between any pair of states.
  • dependencies can be defined for state transitions in each component. Dependency is specified from a state transition in one component to a specific state in another component, and expresses a condition that the former transition can only be executed in the latter state. The conditions for executing one transition may be specified by the states of multiple components.
  • the current state and target state of each component can be determined based on the label of the component.
  • a rule indicating the relationship between a label, a current state, and a target state is determined in advance, and the current state and target state can be determined according to the label according to this rule.
  • FIG. 11 shows an example of a state transition system derived from the difference information illustrated in FIG. 10.
  • all the components have two states: "on” and "off".
  • the relationship does not have a state transition system.
  • a state transition system of one component is shown in one rectangle.
  • Ellipses indicate states.
  • a solid arrow connecting two ellipses indicates a state transition.
  • Dashed arrows drawn from state transitions to states indicate dependencies.
  • the letters inside the oval indicate the name of the state.
  • An underlined state name indicates that the state is the current state.
  • a black oval indicates that the state is the target state.
  • the current state of the newly added component in the difference information is "off” and the target state is "on”.
  • the current state and target state of the component whose status quo is maintained are both “on”.
  • the current state of the deleted component in the difference information is "on” and the target state is "off.”
  • the contents of the state transition system of each component and the dependencies between the state transition systems can be defined in the type information of each component.
  • the type information of a component in addition to the contents of the component type, information on a state transition system and state dependence may be further defined.
  • FIG. 12 is a diagram illustrating an example of component type definition information including a state transition system definition.
  • the "MyWebApp" type component illustrated in FIG. 12 includes the definition of a state transition system, and "off" and “on” are defined as the states.
  • state definition information about the transition destination for each state is shown. “on” is defined as the transition destination from “off”. “off” is defined as the transition destination from “on”.
  • description and work are further defined as information regarding the transition from the original state to the transition destination state.
  • the explanation for the transition from “off” to “on” states “Deploy MyWebApp” and a startup command is set as the task.
  • the explanation for the transition from "on” to “off” states “Remove MyWebApp,” and a stop command is set as the task.
  • state dependence is specified in the item "Expected peripheral configuration”. Specifically, it is specified that the state transition of MyWebApp itself from “off” to “on” depends on the appServer to which the MyWebApp is deployed being in the "on” state. “$_self” represents the component itself to be defined. The description “off->on” represents a state transition from the “off” state to the “on” state. The description of “$appServer.on” expresses the “on” state of the component referenced by “$appServer”. Note that appServer is the deployment destination of the MyWebApp, which is expressed by specifying "$appServer" as the connection destination using the HostedOn ⁇ *, VM> type relationship as the "$_self” relationship.
  • information on the state transition system can be derived from the difference information. That is, it is sufficient to introduce a state transition system included in each component shown in the difference information, and add dependence between the state transition systems based on the designation of state dependence.
  • the configuration change procedure is information in which multiple tasks are connected by dependencies between the tasks, and can be expressed by a directed acyclic graph.
  • FIG. 13 is a diagram showing an example of a configuration change procedure derived from a state transition system. In the example shown in FIG. 13, rectangles indicate tasks, and solid arrows drawn between tasks indicate the order in which the tasks are performed.
  • the operation plan is information that integrates the above-mentioned variable factors, requirements, system configuration, and configuration change procedures.
  • FIG. 14 is a diagram showing an example of an operation plan. Among the elements of the operation plan shown in FIG. 14, the elements whose variable factors and configurations are "none" represent the initial state before the system is constructed.
  • the set of variable factor values shown for each system configuration in the operation plan is unique in one operation plan, and serves as an ID for each system configuration.
  • a set of variable factor values is used as the ID of the system configuration to be changed.
  • FIG. 15 is a flowchart illustrating an example of a procedure of processing performed by the operation planning unit 100.
  • the plan control unit 101 acquires abstract requirements input by the user via the input/output unit 901 (step S101).
  • the plan control unit 101 outputs the acquired abstract requirements to the requirement generation unit 102, and the requirement generation unit 102 generates a matrix of concrete requirements from the acquired abstract requirements (step S102).
  • the requirement generation unit 102 When generating a matrix of concrete requirements from abstract requirements, the requirement generation unit 102 first extracts the variation factors included in the abstract requirements, and divides the range between the minimum and maximum values into a plurality of intervals. do. The section may be divided equally into a predetermined number of sections.
  • the method of setting a specific set of variation factor values is not limited to a specific method.
  • the specific arrangement of the sets of variation factor values is not limited to a grid-like arrangement as in the example of the part (b) of FIG. 2 .
  • the operation planning unit 100 may thin out a set of specific variable factor values for a portion in which a change in the variable factor value has a relatively small effect on the system configuration among the range of values that the variable factor can take. You can also do this. That is, the operation planning unit 100 may thin out specific requirements.
  • the operation planning unit 100 presents the set set of variable factors to the user and allows the user to edit the specific set of variable factor values. You may accept it.
  • the operation planning unit 100 may accept changes, additions, and deletions in the positions of specific sets of variable factor values.
  • the requirement generation unit 102 generates an array consisting of values that serve as boundaries between sections. After performing this for each variation factor, the requirement generation unit 102 generates an array of value sets consisting of a direct product of a plurality of value arrays.
  • the requirement generation unit 102 converts abstract requirements into concrete requirements using each obtained value set. That is, the requirement generation unit 102 converts each variation factor included in the abstract requirement into a general property, and inserts a value corresponding to each variation factor from the value set as a value.
  • the requirement generation unit 102 adds the variation factor to the configuration information defined in the abstract requirement based on the definition as a component defined in the type of each variation factor and information on expected peripheral configurations. Add monitoring requirements.
  • the configuration design unit 103 generates configuration information from each specific requirement (step S103).
  • the procedure planning unit 104 generates a configuration change procedure from each pair of component elements (step S104).
  • the procedure planning unit 104 may pair a set of variable factor values in which one or more of the variable factor values differ by one step from a certain variable factor value set. .
  • the procedure planning unit 104 generates an initial configuration in which the variation factors and components are "none", and also creates a relationship between the basic concrete requirements such as the values of all variation factors being basic values. Plan configuration change procedures.
  • the plan control unit 101 converts each specific requirement in the obtained matrix of specific requirements, configuration information that satisfies the specific requirement, and each other configuration information that is a pair of the configuration information.
  • An operation plan linked with the configuration change procedure is generated and output to the user via the input/output unit 901 (step S105). After step S105, the operation planning unit 100 ends the process of FIG. 15.
  • FIG. 16 is a flowchart illustrating an example of a procedure of processing performed by the configuration design unit 103.
  • the configuration design unit 103 acquires specific requirements from the plan control unit 101 (step S1101).
  • the configuration design unit 103 materializes the specific requirements step by step (steps S1102 to S1108).
  • the configuration design unit 103 outputs the completely specified configuration information to the planning control unit 101 (step S1109).
  • step S1109 the configuration design unit 103 ends the process of FIG. 16.
  • the configuration design unit 103 carries out one-step materialization (steps S1102 to S1105). Then, the configuration design unit 103 determines whether a specific configuration draft is included among the obtained multiple configuration drafts (step S1106).
  • the configuration draft refers to configuration information that is in the process of being materialized.
  • a configuration draft is determined to be concrete if all the constituent elements it contains are concrete.
  • Each component is determined to be concrete if two conditions are satisfied: the value of the abstract flag of the type is "true" and the expected peripheral configuration is satisfied.
  • step S1106 If it is determined in step S1106 that a specific configuration draft is included (step S1106: YES), the configuration design unit 103 outputs the specific configuration draft as configuration information to the planning control unit 101 (step S1109). After step S1109, the configuration design unit 103 ends the process of FIG. 16.
  • step S1106 determines whether any abstract configuration draft remains in the configuration draft tree. (Step S1107).
  • the configuration draft tree is tree-structured data in which configuration drafts are nodes, and when another configuration draft is generated by embodying one configuration draft, the former configuration draft becomes the latter configuration draft. This is data that has as a child.
  • step S1107 If it is determined that an abstract configuration draft remains (step S1107: YES), the configuration design unit 103 appropriately selects the configuration draft to be materialized next (step S1108). After step S1108, the process returns to step S1102, and the configuration design unit 103 performs the first stage of realization again.
  • step S1107 determines that the system design has failed (step S1110). This is because the design cannot be considered any further. After step S1110, the configuration design unit 103 ends the process of FIG. 16.
  • the configuration design unit 103 specifies the specific requirements input in step S1101 or the configuration draft selected to be realized next in step S1108.
  • One or more configuration drafts are generated by selecting any one of the abstract components included in the configuration draft and making it concrete (step S1102).
  • the instantiation of an abstract component is the implementation of either the instantiation of the type of that component or the application of expected peripheral configurations.
  • Materialization of a component type is performed when the component type to be materialized is an abstract component type, and the component type is replaced with a more concrete type. It is a manipulation. At this time, the component type to be replaced is limited to component types that have the component type before replacement as an inherited type.
  • the configuration design unit 103 determines whether one or more configuration drafts have actually been generated in step S1102 (step S1103). If it is determined that no configuration draft has been generated (step S1103: NO), the process advances to step S1107. In this case, since the configuration design unit 103 failed to generate a new configuration draft in step S1102, it determines whether or not another configuration draft remains on the configuration draft tree.
  • step S1103 determines whether it is an abstract configuration draft and Configuration drafts that cannot be further embodied are excluded from the configuration drafts to be processed (step S1104).
  • the configuration design unit 103 determines whether or not there remains a configuration draft to be processed among the configuration drafts generated in step S1103 (step S1105). If the configuration design unit 103 determines that a configuration draft to be processed remains (step S1105: YES), the process advances to step S1106. On the other hand, if the configuration design unit 103 determines that there are no remaining configuration drafts to be processed (step S1105: NO), the process advances to step S1107.
  • FIG. 17 is a flowchart illustrating an example of a processing procedure performed by the procedure planning unit 104.
  • the procedure planning unit 104 acquires a matrix of specific requirements from the planning control unit 101 (step S121). Then, the procedure planning unit 104 generates difference information based on the matrix of specific requirements (step S122).
  • the procedure planning unit 104 selects two sets of variable factor values in which one or more of the variable factor values differ by one step from among the set of variable factor values included in the matrix of specific requirements. Generate a pair consisting of. Then, for the two pieces of configuration information belonging to the generated pair, the procedure planning unit 104 adds new items, maintains the status quo, or Generate difference information by adding a label such as deleted. The procedure planning unit 104 determines, for each pair of two variation factor values in which one or more variation factor values differ by one step, among the variation factor value sets included in the specific requirement matrix. , generate difference information.
  • the procedure planning unit 104 generates a state transition system based on each piece of difference information and the component type information (step S123).
  • the procedure planning unit 104 calculates the shortest state transition procedure for transitioning the states of all state transition systems from the initial state to the target state (step S124).
  • the procedure planning unit 104 generates a configuration change procedure by arranging processes for configuration change according to the calculated state transition procedure (step S125).
  • the procedure planning unit 104 outputs the generated configuration change procedure to the planning control unit 101 (step S126). After step S126, the procedure planning unit 104 ends the process of FIG. 17.
  • FIG. 18 is a diagram showing an example of a GUI (Graphical User Interface) that the operation planning unit 100 presents to the user.
  • the input/output unit 901 displays the operation screen illustrated in FIG. 18 under the control of the operation planning unit 100 and accepts user operations.
  • the input/output unit 901 corresponds to an example of display means. Further, the input/output unit 901 corresponds to an example of an operation input means.
  • the system operation planning device 1 corresponds to an example of a display device.
  • the operation screen shown in FIG. 18 includes a display area for a list of selectable components (area a21), a display area for variable factor selection and value adjustment bars (area a22), and a requirements editing pane (area a23). , an operation plan confirmation pane (area a24), a configuration information confirmation pane (area a25), and a configuration change procedure confirmation pane (area a26).
  • the user can draw an abstract system configuration by dragging and dropping components from the list display area (area a21) of selectable components using the mouse. You can edit the requirements that the target system must meet.
  • Each variation factor included in the component in the system configuration drawn in the requirements editing pane is displayed as a list in the variation factor selection and value adjustment bar display area (area a22).
  • the user must check the checkbox for the variable factors displayed in the variable factor selection and value adjustment bar display area (area a22) that are actually used as variable factors for configuration changes. Select with . Then, the user sets the maximum value and minimum value of the selected variation factor using the adjustment bar.
  • the selection of a variation factor and the display of a list of variation factors in the display area (area a22) of the value adjustment bar correspond to an example of display of a list of variation factors.
  • the display of the maximum and minimum values of the variation factor in the display area of the variation factor selection and value adjustment bar (area a22) is an indication of the range that the variation factor value is allowed to take during operation of the target system 911. This applies to the example below.
  • the summary of the generated operation plan is displayed in the operation plan confirmation pane (area a24).
  • the system configuration corresponding to that specific configuration information is displayed in the configuration information confirmation pane (area a25).
  • specific configuration information is indicated by black circles.
  • the user may be able to adjust the values of the variable factors used as reference values for changing the system configuration. For example, the user may be able to move, add, or delete specific requirements.
  • the number of variation factors is not limited to two.
  • the input/output unit 901 may display the operation plan in a multidimensional manner.
  • the input/output unit 901 may display the operation plan three-dimensionally (three-dimensionally) based on three variable factors.
  • the input/output unit 901 may display the three-dimensional operation plan so that the viewing direction can be changed.
  • the user can select two variable factors from three or more variable factors, and the input/output unit 901 displays the operation plan for the selected two variable factors in a two-dimensional manner. You can do it like this.
  • the input/output unit 901 may display the combination of variable factors and accept editing by the user in the same manner as described above.
  • the operation plan is displayed in the operation plan confirmation pane (area a24) by displaying points indicating the value of the variable factor for each coordinate axis in a coordinate space that has coordinate axes indicating the value of the variable factor for each of a plurality of variable factors. This applies to the example.
  • a series of operation plan formulation tasks including configuration changes according to the values of variable factors are automated. Additionally, since a series of configuration information and configuration change procedures are planned before actual operation begins, configuration changes can be made quickly and reliably when necessary.
  • the user may change the configuration by referring to the configuration change procedure. Alternatively, like the system operation planning device in the second embodiment, the device may automatically or semi-automatically change the configuration.
  • the requirement generation unit 102 calculates the value of the variation factor that changes during the operation of the target system 911, which is the operation target system, and that has a correlation with the operating status of the target system 911. Based on abstract requirements, which are information indicating the requirements that the target system 911 should satisfy, the variation factors included in the variation factor range are For each of the plurality of values, a specific requirement is generated that includes information indicating the value and is information indicating a requirement that the target system 911 should satisfy.
  • the variation factors indicated by each of a plurality of specific requirements are used as criteria for automatically determining whether or not to change the system configuration of the target system 911 during operation of the target system 911.
  • the value of can be used.
  • the target system 911 can be efficiently operated.
  • variable factors are not limited to those in a specific field. According to the system operation planning device 1, it is possible to obtain criteria for automatically determining whether or not to change the system configuration of the target system 911 for target systems 911 in various fields.
  • the requirement generation unit 102 generates specific requirements including the requirement that the target system 911 includes a configuration for performing observation to obtain the value of the variation factor.
  • the target system 911 is configured to acquire the values of the variation factors, and it is expected that the system configuration of the target system 911 can be changed using the values of the variation factors acquired by the target system 911. Ru.
  • the configuration design unit 103 generates configuration information indicating the system configuration of the target system that satisfies the requirement.
  • the system configuration after the system configuration of the target system 911 is changed can be determined based on the value of the variation factor. Specifically, a specific requirement corresponding to the current value of the variation factor can be selected, and a system configuration that satisfies the requirement can be set as the system configuration after the system configuration of the target system 911 is changed.
  • a specific requirement corresponds to the current value of the variation factor means that the value of the variation factor indicated in the above-mentioned specific requirement is larger than the current value of the variation factor.
  • the specific requirement whose variation factor value is the smallest may be selected.
  • the procedure planning unit 104 generates a configuration change procedure that is information indicating a procedure for changing the system configuration indicated by one of the configuration information to the system configuration indicated by another of the configuration information. According to the system operation planning device 1, the system configuration of the target system 911 can be changed according to the configuration change procedure generated by the procedure planning unit 104.
  • the plan control unit 101 also includes information in which each of the specific requirements is associated with a configuration change procedure indicating a procedure for changing the system configuration of the target system 911 to a system configuration that satisfies the requirements. Generate an operational plan that is information.
  • the system configuration of the target system 911 can be changed by referring to the operation information. Specifically, from among the specific requirements included in the operation information, a specific requirement corresponding to the current value of the variation factor is selected, and a system configuration that satisfies that requirement is set as the system configuration of the target system 911.
  • the system configuration can be changed after the following changes.
  • a specific requirement corresponds to the value of the current variation factor if the value of the variation factor indicated by the specific requirement is greater than the value of the current variation factor. It is. As described above, from among the specific requirements whose variation factor value is larger than the current variation factor value, the specific requirement whose variation factor value is the smallest may be selected.
  • the input/output unit 901 displays a list of variable factors whose values change during operation of the target system 911, which is the system to be operated, and whose values have a correlation with the operating status of the target system.
  • the user refers to the list of variable factors and selects a variable factor from among the variable factors to be used as a criterion for determining whether or not to change the system configuration of the target system 911. I can do it.
  • the input/output unit 901 receives a user operation that instructs a variation factor, which is used to determine whether or not to change the system configuration of the target system during operation of the target system, from among the variation factors shown in the list of variation factors. .
  • the user selects a variable factor from among the variable factors shown in the list of variable factors to be used for determining whether or not to change the system configuration of the target system during operation of the target system.
  • a relatively simple operation such as, it is possible to instruct the variable factor used to determine whether or not the system configuration of the target system needs to be changed.
  • the input/output unit 901 is configured such that the value of a variable factor that changes during the operation of the target system 911, which is the system to be operated, and that has a correlation with the operating status of the target system, is determined during the operation of the target system 911. Displays the range that is permissible. According to the system operation planning device 1, the user can refer to the display by the target system 911 and check the range in which the value of the variable factor is allowed to take during operation of the target system 911.
  • the input/output unit 901 also accepts a user operation that instructs to change the range within which the value of the variation factor is allowed to take during operation of the target system 911.
  • the user can relatively easily adjust the range of possible values of the variation factor using the input/output unit 901.
  • the input/output unit 901 connects a plurality of variation factors to coordinate axes indicating values of variation factors that change during operation of the target system 911, which is a system to be operated, and that have a correlation with the operating status of the target system 911. Points indicating the values of the variation factors for each coordinate axis are displayed in the coordinate space for each of the coordinates.
  • the user can visually grasp the values of the plurality of variation factors, and in this respect, the values of the plurality of variation factors can be grasped relatively easily.
  • the user can relatively easily grasp the values of a plurality of variable factors that are set as criteria for determining whether or not the system configuration of the target system 911 needs to be changed.
  • the input/output unit 901 displays, in the coordinate space, a range in which the value of the variation factor is allowed to take during operation of the target system 911.
  • the system operation planning device 1 the user can visually grasp the range in which the values of the plurality of variation factors are allowed to take during operation of the target system 911; It is relatively easy to understand the range of values of .
  • the input/output unit 901 receives a user operation for editing points indicating values of variation factors for each coordinate axis in the coordinate space.
  • the user can specify the value of a variable factor by a relatively simple operation of editing points displayed in the coordinate space and indicating the value of the variable factor.
  • the user can specify the value of the variation factor used as a criterion for determining whether or not the system configuration of the target system 911 needs to be changed.
  • FIG. 19 is a block diagram showing an example of the functional configuration of the system operation planning device according to the second embodiment.
  • the system operation planning device 2 includes an input/output section 901, an operation planning section 100, an operation execution section 200, and a target system 911.
  • the operation planning section 100 includes a plan control section 101 , a requirement generation section 102 , a configuration design section 103 , and a procedure planning section 104 .
  • the operation execution unit 200 includes a synchronization control unit 201, a procedure execution unit 202, a state management unit 204, and a determination unit 206.
  • the target system 911 includes a monitoring unit 205 and a work execution unit 203.
  • the system operation planning device 2 includes an operation execution unit 200 and a target system 911 in addition to the configuration shown in FIG. Thereby, the system operation planning device 2 operates the target system 911 based on the operation plan generated by the operation planning section 100.
  • the system operation planning device is similar to the system operation planning device 1.
  • the target system 911 may be configured outside the system operation planning device 2.
  • the input/output unit 901 may be configured outside the system operation planning device 2.
  • the synchronization control unit 201 controls the target system 911 so that the target system 911 defined in the operation plan always has the desired system configuration according to the variable factors.
  • the state management unit 204 records the operation plan and the current state of the target system 911.
  • the procedure execution unit 202 executes the configuration change procedure by giving instructions to the work execution unit 203 based on instructions from the synchronization control unit 201.
  • the procedure execution unit 202 corresponds to an example of a procedure execution means. Setting the system configuration of the target system 911 to the desired system configuration according to the variable factors is also referred to as synchronization of the target system 911.
  • the work execution unit 203 executes the work based on instructions from the procedure execution unit 202.
  • the monitoring unit 205 monitors the values of the variation factors.
  • the determination unit 206 determines a target factor level, which is the level of the target variation factor value, based on the value of the variation factor obtained from the monitoring unit 205 and records it in the state management unit 204 . Further, if the current factor level and the target factor level are different, the determination unit 206 notifies the synchronization control unit 201 to that effect.
  • the determining unit 206 corresponds to an example of determining means.
  • the factor level is a value (set of values) of a variation factor indicated in the operational information.
  • the factor levels are indicated by discrete values, as in the example shown in part C of FIG.
  • the current factor level is a factor level linked to the current system configuration of the target system 911.
  • the target factor level is a factor level that is linked to a system configuration that can correspond to the current value of the variable factor observed for the target system 911, among the factor levels.
  • the factor level with the smallest value of each variable factor may be selected from among the factor levels that take a value larger than the current value of the variable factor.
  • the factor level with the second smallest value of the variation factor may be selected.
  • the state management unit 204 records the ID of the target system 911, the operational state, the operational plan, the current factor level, and the target factor level as system status information regarding the target system 911.
  • the operational status is a flag indicating whether the system is in operation or stopped.
  • the operation execution unit 200 executes monitoring and synchronization processing only when the operation state of the target system 911 is in operation.
  • FIG. 20 is a diagram showing an example of system status information recorded in the status management unit 204.
  • the system status information shown in FIG. 20 is information regarding the system whose ID is "system001.”
  • the system status information shown in FIG. 20 records the operational status, operational plan, current factor level, and target factor level.
  • the operational status is "in operation”.
  • the contents of the operation plan are similar to the contents of the operation plan shown in FIG. 14, for example, and will not be described here.
  • the current factor level is "none", indicating that the target system 911 is in its initial state.
  • the desired factor level is “ ⁇ Number of accesses per second: 10, Load per request: 10 ⁇ ”.
  • the procedure execution unit 202 needs to execute the configuration change procedure.
  • the configuration change procedure in this case is a work procedure for constructing a basic configuration, which is the basic system configuration of the target system 911, from a state in which the target system 911 has no system configuration.
  • the operation of the system operation planning device 2 will be explained.
  • the user inputs abstract requirements via the input/output unit 901, and the operation planning unit 100 creates an operation plan based on the abstract requirements. Derive.
  • the user confirms the derived operation plan via the input/output unit 901 and instructs the system operation planning device 2 to execute the operation plan.
  • the target system 911 no longer needs to be operated, the user instructs the system operation planning device 2 to stop the operation.
  • the operation execution unit 200 receives operation plan information and instructions from the user, operates the target system 911, and stops the operation.
  • FIG. 21 is a flowchart illustrating an example of a procedure of processing performed by the operation execution unit 200.
  • the synchronization control unit 201 acquires an instruction to execute an operation plan that is performed by the user via the input/output unit 901 (step S201). Then, the synchronization control unit 201 receives the operation plan, generates a new system ID, and registers system status information consisting of the generated system ID and the operation plan in the status management unit 204 (step S202).
  • the current factor level of the system status information at the time of registration can be set to "none”.
  • the target factor level can be a basic factor level such that all the variable factors have the basic value defined in the definition of the variable factor.
  • the operational status is “in operation”.
  • the synchronization control unit 201 starts an operation for maintaining the state of the target system 911 in an appropriate state by executing the operation plan (step S203). Thereafter, when a reason for stopping the operation target system occurs, the user instructs the operation execution unit 200 to stop the operation of the target system 911 via the input/output unit 901 (step S204). As a result, the synchronization control unit 201 sets the operating state of the target system 911 to "stopped” and stops the maintenance operation of the target system 911 (step S205). After step S205, the operation execution unit 200 ends the process of FIG. 21.
  • FIG. 22 is a flowchart illustrating an example of a processing procedure performed by the operation execution unit 200 in an operation for maintaining the state of the target system 911 in an appropriate state.
  • the operation execution unit 200 periodically repeats the process shown in FIG. 22.
  • the synchronization control unit 201 determines whether the target system 911 is in operation (step S201). If it is determined that it is not in operation (step S201: NO), the operation execution unit 200 ends the process of FIG. 22.
  • the synchronization control unit 201 determines whether the target system 911 is synchronized (step S211). Specifically, the synchronization control unit 201 checks the system state information and determines whether the current factor level and the target factor level are the same.
  • step S211: YES If it is determined that the target systems 911 are synchronized (step S211: YES), the operation execution unit 200 ends the process of FIG. 22. On the other hand, if it is determined that the target system 911 is not synchronized (step S211: NO), the synchronization control unit 201 temporarily stops monitoring the target system 911 by the monitoring unit 205 (step S212). Then, the synchronization control unit 201 acquires a configuration change procedure from the system configuration according to the current factor level to the system configuration according to the target factor level from the operation plan recorded in the state management unit 204, The acquired configuration change procedure is sent to the procedure execution unit 202 to be executed (step S213).
  • the procedure execution unit 202 executes the configuration change procedure by instructing the work execution unit 203 to execute each task indicated in the configuration change procedure, thereby synchronizing the system configuration of the target system 911 with the target system configuration. .
  • the synchronization control unit 201 updates the current factor level record in the system state information recorded in the state management unit 204 to the target factor level value.
  • the synchronization control unit 201 causes the monitoring unit 205 to start monitoring the target system 911 after the system configuration change via the determination unit 206 (step S214).
  • the operation execution unit 200 ends the process of FIG. 22.
  • FIG. 23 is a flowchart illustrating an example of a procedure of processing performed by the determination unit 206.
  • the determination unit 206 determines whether the target system is in operation (step S220). If it is determined that the target system is not in operation (step S220: NO), the determination unit 206 ends the process of FIG. 23.
  • step S220 determines whether a certain period of time determined as a synchronization determination cycle has elapsed. If the determination unit 206 determines that the certain period of time has not elapsed (step S221: NO), the process returns to step S220.
  • step S221 YES
  • the determination section 206 acquires the values of the variation factors observed by the monitoring section 205, and selects the desired factor among the factor levels indicated in the operation information. The level is determined and acquired (step S222).
  • the monitoring unit 205 determines the target factor level, it is considered that the monitoring unit 205 determines the factor level that has the minimum value among the factor levels that are larger than the observed variation factor value, as described above. It will be done.
  • the monitoring unit 205 adjusts the desired factor level. It may be decided.
  • the monitoring unit 205 may determine the target factor level without waiting for the elapse of a certain period of time. Furthermore, instead of using the observed value of the variation factor itself, the monitoring unit 205 predicts the future value of the variation factor based on the results of continuously monitoring the value of the variation factor, and uses the prediction result to achieve the objective.
  • the factor level may be determined.
  • the determination unit 206 determines whether the measured value of the variation factor exceeds the upper limit of the factor level that can be selected as the target factor level (step S223). For example, the determination unit 206 determines whether there is a variable factor whose measured value is larger than a value set as the maximum value of the variable factors. The fact that the measured value of the variation factor exceeds the upper limit of the factor level that can be selected as the target factor level indicates that an appropriate system configuration according to the value of the variation factor cannot be selected as the system configuration of the target system 911. means.
  • step S223 If it is determined that the measured value of the variation factor exceeds the upper limit of the factor level that can be selected as the target factor level (step S223: YES), the determination unit 206 An alert is issued to the user (step S224). After step S224, the process returns to step S220.
  • step S223 determines that the measured value of the variation factor does not exceed the upper limit of the factor levels that can be selected as the target factor level (step S223: NO)
  • the determination unit 206 determines that the target factor level is It is determined whether the factor level has changed from the current factor level (step S225).
  • step S225 determines that the target factor level has not changed from the current factor level (step S225: NO). If the determination unit 206 determines that the target factor level has not changed from the current factor level (step S225: NO), the process returns to step S220. On the other hand, if it is determined that the target factor level has changed from the current factor level (step S225: NO), the determination unit 206 changes the target factor level recorded by the state management unit 204 to the one determined in step S222. The value of the target factor level is updated, and the synchronization control unit 201 is instructed to synchronize the target system 911 (step S225). After step S225, the process returns to step S220.
  • a series of operation plan formulation processes including configuration changes according to the values of variable factors and operation processes of the target system 911 based on the operation plans are automated. Furthermore, according to the system operation planning device 2, a series of configuration information and configuration change procedures are planned before starting the operation of the target system 911, so that configuration changes can be made quickly and reliably when necessary. It is expected that this will be implemented.
  • the procedure execution unit 202 configures the system configuration of the target system 911 into a specific system that corresponds to the value of the variation factor obtained using the configuration for performing observation to obtain the value of the variation factor.
  • the system configuration of the target system 911 is changed based on a configuration change procedure indicating a procedure for changing the system configuration to one that satisfies the requirements.
  • the system configuration of the target system 911 can be automatically performed.
  • the determination unit 206 determines the variation factor value indicated by the specific requirements that the current system configuration of the target system 911 satisfies, and the variation obtained using the configuration for performing observation to obtain the variation factor value.
  • the value of the variable factor indicated by the specific requirement corresponding to the value of the factor is compared to determine whether or not the system configuration of the target system 911 needs to be changed. According to the system operation planning device 2, it is possible to automatically determine whether or not the system configuration of the target system 911 needs to be changed.
  • the system operation planning device does not generate an operation plan in advance, but determines the necessity of system configuration changes based on system monitoring results, and plans and executes system configuration changes as necessary. Let's explain the case.
  • the system operation planning device performs system operation planning and operation on the fly, so to speak.
  • FIG. 24 is a block diagram showing an example of the functional configuration of the system operation planning device according to the third embodiment.
  • the system operation planning device 3 includes an input/output section 901, a planning operation section 300, and a target system 911.
  • the planning operation unit 300 includes a planning control unit 101, a requirement generation unit 102, a configuration design unit 103, a procedure planning unit 104, a synchronization control unit 201, a procedure execution unit 202, a state management unit 204, and a determination unit 206.
  • the target system 911 includes a monitoring unit 205 and a work execution unit 203.
  • the planning and operation section 300 has parts corresponding to each section of the operation planning section 100 in FIG. 19 and sections corresponding to each section of the operation execution section 200. Thereby, the system operation planning device 3 performs system operation planning and operation on the fly, so to speak, as described above. In other respects, the system operation planning device 3 is similar to the system operation planning device 2.
  • the state management unit 204 stores, as system state information regarding the target system 911, the ID of the target system 911, the operational state of the target system 911, abstract requirements, current factor level, and target factor level. and the current system configuration.
  • the determination unit 206 determines the value of the observed variation factor when the magnitude of the deviation between the observed value of the variation factor and the current factor level is larger than a predetermined threshold.
  • the target factor level is determined based on the target factor level, and the target factor level recorded by the state management unit 204 is updated. Then, the determination unit 206 notifies the synchronization control unit 201 that the target factor level has changed.
  • the synchronization control unit 201 upon receiving the notification from the determination unit 206, notifies the planning control unit 101 of the abstract requirements, objective factor levels, and current system configuration. Then, the synchronization control unit 201 acquires the target system configuration and configuration change procedure from the planning control unit 101. The synchronization control unit 201 sends the acquired configuration change procedure to the procedure execution unit 202 to execute the configuration change. After the system configuration of the target system 911 is changed, the synchronization control unit 201 updates the record of the current factor level in the system state information recorded in the state management unit 204 to the value of the target factor level.
  • the planning control unit 101 upon acquiring the abstract requirements, the target factor level, and the current system configuration from the synchronization control unit 201, the planning control unit 101 generates requirements using the abstract requirements and the target factor level. 102. The plan control unit 101 then acquires specific requirements from the requirement generation unit 102 and sends the acquired specific requirements to the configuration design unit 103. The planning control unit 101 then acquires the target system configuration from the configuration design unit 103 and sends the current system configuration and the acquired target system configuration to the procedure planning unit 104. Then, the planning control unit 101 acquires the configuration change procedure from the procedure planning unit 104 and outputs the target system configuration and the configuration change procedure to the synchronization control unit 201.
  • the requirement generation unit 102 converts the value of the acquired target factor level into the value of the variation factor in the abstract requirement. Write as. Then, the requirement generation unit 102 generates specific requirements by generating monitoring requirements for the variable factors, and outputs them to the plan control unit 101.
  • the configuration design unit 103 upon acquiring specific requirements from the planning control unit 101, the configuration design unit 103 generates configuration information based on the specific requirements, and outputs the generated configuration information to the planning control unit 101. do.
  • the procedure planning unit 104 upon acquiring the current system configuration and the target system configuration from the planning control unit 101, the procedure planning unit 104 changes the system configuration of the target system 911 from the current system configuration to the target system configuration. Generate configuration change procedures for Then, the procedure planning unit 104 outputs the generated configuration change procedure to the planning control unit 101.
  • the determination unit 206 uses the value of the variation factor indicated by the specific requirements satisfied by the current system configuration of the target system 911 and the configuration for performing observation to obtain the value of the variation factor. If the magnitude of the deviation from the obtained value of the variation factor is larger than a predetermined threshold, the value of the variation factor obtained using the configuration for performing observation to obtain the value of the variation factor is The value of the variation factor indicated by the specific requirement is determined, and it is determined whether the system configuration of the target system 911 needs to be changed. According to the system operation planning device 3, it is possible to automatically determine whether or not the system configuration of the target system 911 needs to be changed.
  • FIG. 25 is a diagram illustrating an example of the configuration of a system operation planning device according to the fourth embodiment.
  • the system operation planning device 610 includes a requirement generation section 611.
  • the requirement generation unit 611 determines the value of the variation factor that changes during operation of the target system, which is the system to be operated, and that has a correlation with the operating status of the target system. Based on abstract requirements, which are information that indicates the requirements that the target system must satisfy, multiple values of the variation factor included in the variation factor range are included. For each, a specific requirement is generated that includes information indicating its value and is information indicating a requirement that the target system should satisfy.
  • the value of the variation factor indicated by each of a plurality of specific requirements is used as a criterion for automatically determining whether or not to change the system configuration of the target system during operation of the target system. can be used.
  • a system configuration that satisfies specific requirements it is possible to obtain a system configuration that is suitable when the value of the variation factor is the value of the variation factor indicated by the specific requirement.
  • variable factors are not limited to those in a specific field. According to the system operation planning device 610, it is possible to obtain criteria for automatically determining whether or not to change the system configuration of a target system for target systems in various fields.
  • FIG. 26 is a diagram illustrating an example of the configuration of a display device according to the fifth embodiment.
  • the display device 620 includes a display section 621.
  • the display unit 621 displays a list of variable factors whose values change during operation of the target system, which is the system to be operated, and whose values have a correlation with the operating status of the target system.
  • the display section 621 corresponds to an example of display means. According to the display device 620, the user can refer to the list of variation factors and select a variation factor from among the variation factors to be used as a criterion for determining whether or not to change the system configuration of the target system.
  • FIG. 26 is a diagram illustrating an example of the configuration of a display device according to the sixth embodiment.
  • the display device 620 includes a display section 621.
  • the display unit 621 displays a value that changes during operation of the target system, which is a system to be operated, and a value of a variation factor that has a correlation with the operating status of the target system. Displays the range within which this is permissible.
  • the display section 621 corresponds to an example of display means. According to the display device 620, the user can refer to the display by the target system and confirm the range in which the value of the variable factor is allowed to take during operation of the target system.
  • FIG. 26 is a diagram illustrating an example of the configuration of a display device according to the seventh embodiment.
  • the display device 620 includes a display section 621.
  • the display unit 621 displays coordinate axes representing values of variation factors that change during operation of the target system, which is the system to be operated, and that have a correlation with the operating status of the target system. Points indicating the values of the variation factors for each coordinate axis are displayed in the coordinate space for each.
  • the user can visually grasp the values of the plurality of variation factors, and in this point, the user can grasp the values of the plurality of variation factors relatively easily.
  • the user can relatively easily grasp the values of a plurality of variable factors that are set as criteria for determining whether or not the system configuration of the target system needs to be changed.
  • FIG. 27 is a diagram illustrating an example of a processing procedure in the system operation planning method according to the eighth embodiment.
  • the system operation planning method shown in FIG. 27 includes generating requirements (step S611).
  • the computer determines the value of the variable factor that changes during operation of the target system, which is the system to be operated, and that has a correlation with the operating status of the target system.
  • a specific requirement is generated that includes information indicating that value and is information indicating a requirement that the target system should satisfy.
  • the fluctuations indicated by each of a plurality of specific requirements are used as criteria for automatically determining whether or not to change the system configuration of the target system during operation of the target system.
  • the value of the factor can be used.
  • variable factors are not limited to those in a specific field. According to the system operation planning method shown in FIG. 27, it is possible to obtain criteria for automatically determining whether or not to change the system configuration of a target system for target systems in various fields.
  • FIG. 28 is a schematic block diagram showing the configuration of a computer according to at least one embodiment.
  • the computer 700 includes a CPU 710, a main storage device 720, an auxiliary storage device 730, an interface 740, and a nonvolatile recording medium 750.
  • any one or more of the above system operation planning device 1, system operation planning device 2, system operation planning device 3, system operation planning device 610, and display device 620, or a part thereof, is implemented in the computer 700. Good too. In that case, the operations of each processing section described above are stored in the auxiliary storage device 730 in the form of a program.
  • the CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program. Further, the CPU 710 secures storage areas corresponding to each of the above-mentioned storage units in the main storage device 720 according to the program. Communication between each device and other devices is performed by the interface 740 having a communication function and performing communication under the control of the CPU 710.
  • the input/output section 901, the operation planning section 100, and the operations of each of these sections are stored in the auxiliary storage device 730 in the form of a program.
  • the CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program.
  • the CPU 710 secures a storage area in the main storage device 720 for the system operation planning device 1 to perform processing according to the program.
  • Communication between the system operation planning device 1 and other devices is performed by the interface 740 having a communication function and operating under the control of the CPU 710.
  • Interaction between the system operation planning device 1 and the user is performed by the interface 740 having a display device and an input device, displaying various images under the control of the CPU 710, and accepting user operations.
  • the operations of the input/output unit 901, the operation planning unit 100, the operation execution unit 200, the target system 911, and each of these units are stored in the auxiliary storage device 730 in the form of a program. is stored in The CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program.
  • the CPU 710 secures a storage area in the main storage device 720 for the system operation planning device 2 to perform processing according to the program.
  • Communication between the system operation planning device 2 and other devices is performed by the interface 740 having a communication function and operating under the control of the CPU 710.
  • Interaction between the system operation planning device 2 and the user is performed by the interface 740 having a display device and an input device, displaying various images under the control of the CPU 710, and accepting user operations.
  • the input/output unit 901, the planning operation unit 300, the target system 911, and the operations of each of these units are stored in the auxiliary storage device 730 in the form of a program.
  • the CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program.
  • the CPU 710 secures a storage area in the main storage device 720 for the system operation planning device 3 to perform processing according to the program.
  • Communication between the system operation planning device 3 and other devices is performed by the interface 740 having a communication function and operating under the control of the CPU 710.
  • Interaction between the system operation planning device 3 and the user is performed by the interface 740 having a display device and an input device, displaying various images under the control of the CPU 710, and accepting user operations.
  • the operations of the requirement generation unit 611 are stored in the auxiliary storage device 730 in the form of a program.
  • the CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program.
  • the CPU 710 secures a storage area in the main storage device 720 for the system operation planning device 610 to perform processing according to the program.
  • Communication between the system operation planning device 610 and other devices is performed by an interface 740 having a communication function and operating under the control of the CPU 710.
  • Interaction between the system operation planning device 610 and the user is performed by the interface 740 having a display device and an input device, displaying various images under the control of the CPU 710, and accepting user operations.
  • the operation of the display section 621 is stored in the auxiliary storage device 730 in the form of a program.
  • the CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program.
  • the CPU 710 secures a storage area in the main storage device 720 for the display device 620 to perform processing according to the program.
  • Communication between the display device 620 and other devices is performed by the interface 740 having a communication function and operating under the control of the CPU 710.
  • Interaction between the display device 620 and the user is performed by the interface 740 having a display device and an input device, displaying various images under the control of the CPU 710, and accepting user operations.
  • any one or more of the programs described above may be recorded on the nonvolatile recording medium 750.
  • the interface 740 may read the program from the nonvolatile recording medium 750. Then, the CPU 710 may directly execute the program read by the interface 740, or may temporarily store the program in the main storage device 720 or the auxiliary storage device 730 and execute it.
  • the program for executing all or part of the processes performed by the system operation planning device 1, system operation planning device 2, system operation planning device 3, system operation planning device 610, and display device 620 is computer readable.
  • the programs may be recorded on a recording medium, and the programs recorded on the recording medium may be read into a computer system and executed to process each part.
  • the "computer system” herein includes hardware such as an OS (Operating System) and peripheral devices.
  • “computer-readable recording media” refers to portable media such as flexible disks, magneto-optical disks, ROM (Read Only Memory), and CD-ROM (Compact Disc Read Only Memory), and hard disks built into computer systems.
  • the above-mentioned program may be one for realizing a part of the above-mentioned functions, or may be one that can realize the above-mentioned functions in combination with a program already recorded in the computer system.
  • the value of a variation factor that changes during operation of a target system that is an operation target system and that has a correlation with the operating status of the target system is within an allowable range when the target system is operated.
  • the value of each of the plurality of values of the variation factor included in the variation factor range based on abstract requirements that include information indicating a variation factor range and indicating requirements that the target system should satisfy.
  • a system operation planning device that generates specific requirements that include information indicating requirements that the target system should satisfy.
  • the system operation planning device according to appendix 1 or 2, further comprising: configuration design means for generating configuration information indicating a system configuration of the target system that satisfies each of the specific requirements.
  • Supplementary note 4 further comprising: a procedure planning means for generating a configuration change procedure that is information indicating a procedure for changing the system configuration indicated by one of the configuration information to the system configuration indicated by another of the configuration information. 3.
  • a procedure planning means for generating a configuration change procedure that is information indicating a procedure for changing the system configuration indicated by one of the configuration information to the system configuration indicated by another of the configuration information.
  • the determination means is obtained by using the value of the variation factor indicated by the specific requirement that the current system configuration of the target system satisfies, and a configuration for performing observation to obtain the value of the variation factor.
  • the value corresponds to the value of the variation factor obtained using a configuration for performing observation to obtain the value of the variation factor.
  • a display device that displays a list of variable factors whose values change during operation of a target system that is an operation target system, and whose values have a correlation with the operating status of the target system.
  • Appendix 10 Further comprising: an operation input means for accepting a user operation for instructing a variation factor among the variation factors shown in the list, which is used to determine whether or not a change in the system configuration of the target system is necessary during operation of the target system;
  • the display device according to appendix 9.
  • a display device comprising a display means for displaying.
  • Appendix 12 12.
  • a display device comprising: display means for displaying points indicating values of the variation factor for each of the coordinate axes.
  • Appendix 15 15. The display device according to appendix 13 or 14, further comprising: operation input means for accepting a user operation for editing a point indicating the value of the variation factor for each of the coordinate axes in the coordinate space.
  • the computer is The value of a variation factor that changes during operation of a target system that is an operation target system and that has a correlation with the operating status of the target system is within an allowable range when the target system is operated.
  • the value of each of the plurality of values of the variation factor included in the variation factor range based on abstract requirements that include information indicating a variation factor range and indicating requirements that the target system should satisfy.
  • a system operation planning method that includes generating specific requirements that are information that indicates requirements that the target system should satisfy.
  • the value of a variation factor that changes during operation of a target system that is an operation target system and that has a correlation with the operating status of the target system is within an allowable range when the target system is operated.
  • the value of each of the plurality of values of the variation factor included in the variation factor range based on abstract requirements that include information indicating a variation factor range and indicating requirements that the target system should satisfy.
  • a recording medium that records a program for generating specific requirements that are information that includes information indicating requirements that the target system should satisfy.
  • the present invention may be applied to a system operation planning device, a display device, a system operation planning method, and a recording medium.

Abstract

システム運用計画装置が、運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的数値範囲で示す情報に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成する。

Description

システム運用計画装置、表示装置、システム運用計画方法および記録媒体
 本発明は、システム運用計画装置、表示装置、システム運用計画方法および記録媒体に関する。
 ICT(Information and Communication Technology、情報通信技術)システムなどのシステムの設計または運用に関連する技術が提案されている。
 例えば、非特許文献1には、システムの自動設計に関する技術が記載されている。また、特許文献1から3には、状態マシン群の状態を遷移させる手順に関する技術が記載されている。また、非特許文献2から5には、システムまたはネットワークの状態監視に関する技術が記載されている。
日本国特開2015-215885号公報 日本国特開2015-215886号公報 日本国特開2015-215887号公報
黒田貴之、外7名、"ICTシステムの設計に関する知識の機械学習による獲得"、電子情報通信学会論文誌 B Vol.J104-B No.3 pp.140-151、2021年 Zhaowei Xi、外7名、"Newton: Intent-Driven Network Traffic Monitoring"、IEEE/ACM Transactions on Networking、DOI: 10.1109/TNET.2021.3128557、2021年 寺岡文男、外2名、"ネットワークオントロジBonsaiとその活用法に関する一考察"、信学技報 IA2021-55 (2022-01)、2022年 Kengo Tajiri、外3名、"Dividing deep learning model for continuous anomaly detection of inconsistent ict systems"、NOMS 2020 - 2020 IEEE/IFIP Network Operations and Management Symposium、202年 K. Abbas、外3名、"Network Slice Lifecycle Management for 5G Mobile Networks: An Intent-Based Networking Approach"、IEEE Access, vol. 9、DOI: 10.1109/ACCESS.2021.3084834、2021年
 システムの運用時にシステム構成を変更するか否かを自動で判定するための判定基準を設けられることが好ましい。
 この発明の目的の一例は、上述した課題を解決することのできるシステム運用計画装置、表示装置、システム運用計画方法および記録媒体を提供することである。
 本発明の第一の態様によれば、システム運用計画装置は、運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成する。
 本発明の第二の態様によれば、表示装置は、運用対象のシステムである対象システムの運用時に値が変化し、かつ、その値が前記対象システムの動作状況と相関性を有する変動因子のリストを表示する表示手段を備える。
 本発明の第三の態様によれば、表示装置は、運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲を表示する表示手段を備える。
 本発明の第四の態様によれば、表示装置は、運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値を示す座標軸を複数の前記変動因子のそれぞれについて有する座標空間に、前記座標軸ごとの前記変動因子の値を示す点を表示する表示手段を備える。
 本発明の第五の態様によれば、システム運用計画方法は、コンピュータが、運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成することを含む。
 本発明の第六の態様によれば、記録媒体は、コンピュータに、運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成することを実行させるためのプログラムを記録している。
 本発明によれば、システムの運用時にシステム構成を変更するか否かを自動で判定するための判定基準を設けることができる。
第1の実施形態に係るシステム運用計画装置の機能構成の例を示すブロック図である。 第1の実施形態に係る運用計画部が運用計画を生成する処理の概要を説明するための図である。 第1の実施形態における、抽象的な要件の表現例を示す図である。 第1の実施形態における、具体的な要件の例を示す図である。 第1の実施形態における、具体的な要件の行列の例を示す図である。 第1の実施形態における、変動因子の定義情報の例を示す図である。 第1の実施形態における、構成部品型の定義情報および関係性型の定義情報の例を示す図である。 第1の実施形態における、構成情報の第1の例を示す図である。 第1の実施形態における、構成情報の第2の例を示す図である。 第1の実施形態における、構成ペアから導出された差分情報の例を示す図である。 第1の実施形態における、図10に例示されている差分情報から導出される状態遷移系の例を示す。 第1の実施形態における、状態遷移系の定義を含む構成部品型の定義情報の例を示す図である。 第1の実施形態における、状態遷移系から導出された構成変更手順の例を示す図である。 第1の実施形態における、運用計画の例を示す図である。 第1の実施形態に係る運用計画部が行う処理の手順の例を示すフローチャートである。 第1の実施形態に係る構成設計部が行う処理の手順の例を示すフローチャートである。 第1の実施形態に係る手順計画部が行う処理の手順の例を示すフローチャートである。 第1の実施形態に係る運用計画部が利用者に提示するGUI(Graphical User Interface)の例を示す図である。 第2の実施形態に係るシステム運用計画装置の機能構成の例を示すブロック図である。 第2の実施形態に係る状態管理部に記録されたシステム状態情報の例を示す図である。 第2の実施形態に係る運用実行部が行う処理の手順の例を示すフローチャートである。 第2の実施形態に係る運用実行部が行う、対象システムの状態を適切な状態に維持するための動作における処理の手順の例を示すフローチャートである。 第2の実施形態に係る判定部が行う処理の手順の例を示すフローチャートである。 第3の実施形態に係るシステム運用計画装置の機能構成の例を示すブロック図である。 第4の実施形態に係るシステム運用計画装置の構成の例を示す図である。 第5の実施形態から第7の実施形態に係る表示装置の構成の例を示す図である。 第8の実施形態にかかるシステム運用計画方法における処理の手順の例を示す図である。 少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
 以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
<第1の実施形態>
 第1の実施形態では、システム運用計画装置が、システムの運用計画までを実施する場合について説明する。一方、第2の実施形態および第3の実施形態では、システム運用計画装置が、システムの運用計画に加えて、システムの運用も実施する場合について説明する。
 第1の実施形態におけるシステム運用計画装置の構成を説明する。
 図1は、第1の実施形態に係るシステム運用計画装置の機能構成の例を示すブロック図である。
 図1に示す構成で、システム運用計画装置1は、入出力部901と、運用計画部100とを備える。運用計画部100は、計画制御部101と要件生成部102と構成設計部103と手順計画部104を備える。
 入出力部901は、入出力装置を含んで構成され、利用者(ユーザ)とのインタフェースとして機能する。入出力装置は、例えばキーボードおよびマウスなどの入力装置と、表示装置との組み合わせにて構成されていてもよい。入出力部901が、利用者とのインタフェースの機能に加えて、あるいは代えて、他の装置との通信機能を有していてもよい。
 入出力部901が、システム運用計画装置1の外部の入出力装置として構成され、入出力装置と計画制御部101とが通信可能となっていてもよい。
 運用計画部100は、入出力部901を介して利用者から入力された抽象的な要件を受け付けて、入出力部901へ運用計画を出力する。抽象的な要件とは、利用者が構築したいシステムの要件を抽象的に示す情報である。運用計画とは、抽象的な要件を満たすシステムを構築し、構築したシステムが抽象的な要件を維持するように運用するための、一連の処理を示す情報である。
 システム運用計画装置1が運用計画を生成する対象とするシステムを、対象システムとも称する。運用計画部100は、対象システムが抽象的な要件を満たすように、運用計画を生成する。
 計画制御部101は、受け付けた抽象的な要件に基づいて要件生成部102と構成設計部103と手順計画部104との機能を用いて運用計画を生成し、生成した運用計画を入出力部901へ出力する。要件生成部102は、計画制御部101から受け付けた抽象的な要件を具体的な要件の行列に変換して計画制御部101へ出力する。
 構成設計部103は、計画制御部101から受け付けた複数の具体的な要件のそれぞれに対応する構成情報を設計して計画制御部101へ出力する。構成情報は、システム構成を示す情報である。構成設計部103は、構成設計手段の例に該当する。
 手順計画部104は、計画制御部101から受け付けた複数の構成情報について、ある構成情報が示すシステム構成から別のある構成情報が示すシステム構成へ変更するための手順を計画して計画制御部101へ出力する。手順計画部104は、手順計画手段の例に該当する。
 運用計画部100への入力情報である抽象的な要件は、上記のように、利用者が構築したいシステムの要件を示す情報であり、特に変動因子を含む情報である。変動因子とは、対象システムのシステム構成の選択の基準となり、かつ、対象システムの運用中に変動するようなパラメタのことである。さらに言えば、変動因子は、対象システム911の運用時に値が変化し、かつ、その値が対象システム911の動作状況と相関性を有するもの(項目)である。
 変動因子の例として、対象システムへのアクセスの頻度を挙げることができる。アクセスの頻度が高まった場合には、対象システムが、より高負荷に耐え得るように、対象システムの計算資源やネットワーク資源を増強する必要がある。一方で、アクセスの頻度が低下した場合には、対象システムを少ない資源で稼働させた方が、電力およびコストを節約して効率的に運用できる。
 このように、変動因子は、対象システムに負荷をかける要因など、対象システムの動作に影響を及ぼす要因に関する数量であってもよい。
 あるいは、変動因子は、対象システムのCPU(Central Processing Unit;中央処理装置)負荷率またはターンアラウンドタイム(Turn Around Time)など、対象システムのパフォーマンスに関する測定値または計算値であってもよい。
 抽象的な要件において、各変動因子には特定の値が指定される代わりに、許容される値の範囲が指定される。この範囲を変動因子範囲とも称する。変動因子範囲は、対象システム911の運用時に変動因子の値がとることが許容される範囲である。
 一方、具体的な要件とは、抽象的な要件から、各変動因子の値が具体的に定まったものである。具体的な要件に基づいて、特定の具体的なシステム構成を設計することができる。
 図2は、運用計画部100が運用計画を生成する処理の概要を説明するための図である。
 図2の(a)の部分は、抽象的な要件に示される変動因子と、それぞれの変動因子が採り得る値の範囲(最小値から最大値までの範囲)を示している。上記のように、変動因子が採り得る値の範囲も、抽象的な要件にて示される。
 なお、抽象的な要件に示される変動因子の個数は、1つ以上であればよく、特定の個数に限定されない。即ち、図2に示す例では、説明の便宜上2種類の変動因子を2次元平面上に表した場合を例に説明するが、運用計画部100が扱う変動因子は2種類には限定されない。
 図2の(b)の部分は、変動因子が採り得る値の範囲に加えて、具体的な要件の設定の例を示している。図2の(b)の部分は、具体的な要件を、白丸a11のように白丸(○)で示している。
 運用計画部100が、具体的な要件の設定を行うようにしてもよい。図2の(b)の部分に示す例で、運用計画部100は、それぞれの変動因子の採り得る値の範囲を複数の区間に等分割し、区間の境界にあたる具体的な変動因子の値の組を設定している。具体的な変動因子の値の組の設定により、設定された変動因子の値を元の抽象的な要件の変動因子の値とする、具体的な要件の行列を得られる。
 ただし、具体的な要件の設定における、具体的な変動因子の値の組の設定方法は、特定の方法に限定されない。また、具体的な変動因子の値の組の配置は、図2の(b)の部分の例のような、格子状の配置に限定されない。
 例えば、変動因子が採り得る値の範囲のうち、変動因子の値の変化がシステム構成に及ぼす影響が比較的小さい部分について、運用計画部100が、具体的な変動因子の値の組を間引くようにしてもよい。すなわち、運用計画部100が、具体的な要件を間引くようにしてもよい。
 また、運用計画部100が、具体的な変動因子の値の組を設定した後、設定した変動因子の組を利用者に提示し、具体的な変動因子の値の組の利用者による編集を受け付けるようにしてもよい。例えば、運用計画部100が、具体的な変動因子の値の組の位置の変更、追加、および、削除を受け付けるようにしてもよい。
 図2の(c)の部分は、変動因子が採り得る値の範囲に加えて、具体的な構成情報、および、構成変更手順の設定の例を示している。図2の(c)の部分は、具体的な構成情報を、黒丸a12のように黒丸(●)で示し、具体的な構成情報間における構成変更手順の設定を、矢印a13のように矢印で示している。
 図2の(c)の部分に示す例で、運用計画部110は、それぞれの具体的な要件に対して具体的な構成情報を設計している。さらに、運用計画部110は、隣り合った2つの構成情報の一方からもう一方へと構成変更するための作業手順を計画している。運用計画部110は、これにより、運用計画を策定している。
 運用計画部110が生成する運用計画によれば、定められた変動因子の範囲において、変動因子の値に基づいて対象システムの適切なシステム構成を判断し、現在のシステム構成から適切なシステム構成へと変更するための手順を抽出できると期待される。抽出された手順に従って対象システムのシステム構成を変更することで、対象システムの適切な状態を維持できると期待される。
 運用計画部110が生成する運用計画に基づいてシステムを運用するには、変動因子の値を継続的に監視する必要がある。そこで、要件生成部102は、各変動因子の監視要件を具体的な要件に挿入する。構成設計部103は、追加された監視要件に基づいて各変動因子の監視機能を含む対象システムのシステム構成を設計する。
 次に、システム運用計画装置1が使用するデータについて説明する。
 第一の実施形態では、対象システムの要件は、例えば、抽象的な構成情報によって記述される。抽象的な構成情報とは、一部または全部の要素が、抽象的な要素によって記述されている構成情報、および、一部または全部の要素が依存する他の要素の指定が省略されている構成情報の総称である。構成情報とは、システムを構成する部品と部品間の関係性を示す情報である。
 システムを構成する部品を構成部品と称する。部品間の関係性を単に関係性とも称する。また構成部品と関係性を総称して、構成要素とも表記する。構成要素には、具体的な構成要素と抽象的な構成要素とがある。
 具体的な構成要素は、その種類が一意に特定できる構成要素である。具体的な構成要素の例として、アプリケーションサーバ(AppServer)の一種である”Tomcatのバージョン1”のように、製品名および型番が定まった構成部品を挙げることができる。
 抽象的な構成要素は、複数の種類の構成要素を総称した構成要素である。抽象的な構成要素の例として、AppServerを挙げることができる。
 対象システムの要件として、抽象的な構成要素を指定すること、または、ある構成要素が依存する他の構成要素の指定を省略することで、例えば”AppServerであればどのような製品でもよい”というように、自由度を含む条件を簡潔かつ正確に表現できる。
 一方、システムが構築されるにあたっては、構成情報は具体的である必要がある。すなわち、全ての構成要素が具体的であり、かつ依存する他の構成要素が揃っている必要がある。
 構成情報は、構成部品をノード、関係性をエッジとするグラフ形式の情報によって記述できる。各構成要素はその種類を示す型情報や属性値を示すプロパティなどの関連情報を更に含む。
 図3は、抽象的な要件の表現例を示す図である。図3の(a)の部分は、抽象的な要件の図による表現例を示す。図3の(b)の部分は、抽象的な要件のテキストによる表現例を示す。
 図3に例示する抽象的な要件の構成には、”myWebApp”をID(Identifier、識別情報)とする構成部品が1つ含まれている。これは”myWebApp”が稼働するシステムの構築と”myWebApp”の稼働の維持とを要求するという利用者の意図を示している。
 また、抽象的な要件において、各構成要素がプロパティとして任意個の変動因子の情報を持つことができる。抽象的な要件では、変動因子ごとに、その変動因子の種類と、その変動因子に許容する値の範囲とが指定される。
 図3に示される抽象的な要件の例では、”myWebApp”が”秒間アクセス数”と”要求当たりの負荷”という2つのプロパティを含んでいる。図3の(a)の部分では、これら2つのプロパティが変動因子として示されている。図3の(b)の部分では、これら2つのプロパティは、”変動因子である”が”True”となっていることで変動因子に指定されている。”秒間アクセス数”に許容される値の範囲として、10から1000が指定されている。”要求当たりの負荷”に許容される値の範囲として、100から500が指定されている。
 上述したように、運用計画部100は、抽象的な要件を元に、具体的な要件の行列を生成することができる。各具体的な要件の内容は、抽象的な要件と基本的には同様であるが、変動因子は、一般的なプロパティと変動因子の監視要件とに置き換えられ、プロパティの値には値の範囲ではなく特定の値が割り当てられる。
 図4は、具体的な要件の例を示す図である。
 図4に示す具体的な要件は、図3に示す抽象的な要件を踏襲しているが、変動因子は一般的なプロパティおよび監視要件に置き換えられている。変動因子に由来するプロパティとして”秒間アクセス数”と”要求当たりの負荷”が設定されている。”秒間アクセス数”の具体的な値として10が設定されている。”要求当たりの負荷”の具体的な値として100が設定されている。
 各変動因子の監視要件に関しては、各変動因子を監視する機能を有する構成部品として”秒間アクセス数”と”要求当たりの負荷”とが示されている。これらの構成部品と”myWebApp”とについて、”秒間アクセス数”および”要求当たりの負荷”のそれぞれを接続元とし、”myWebApp”を接続先とする接続関係が、監視対象型の関係性によって示されている。頭に”$”のついた”$myWebApp”のような表記は、”myWebApp”のような構成部品への参照を表している。
 変動因子を監視する機能を有する構成部品を含む具体的な要件は、対象システム911が、変動因子の値を取得するための観測を行うための構成を含むという要件を含む具体的な要件の例に該当する。すなわち、変動因子を監視する機能を有する構成部品を含む具体的な要件を満たすように対象システム911のシステム構成を設計することで、変動因子の値を取得するための観測を行うための構成を含むシステム構成が得られる。ここでいう観測は、変動因子の値またはそれに関連する値を測定または計数することなど、変動因子の値またはそれに関連する値を取得するための処理であってもよい。
 具体的な要件の行列は、変動因子の値の異なる各具体的な要件の集合である。
 図5は、具体的な要件の行列の例を示す図である。
 図5に示す例で、具体的な要件の行列は、運用計画の一部として、具体的な要件の配列によって定義されている。配列の各要素は、項目”変動因子”と項目”要件”とからなる。項目”変動因子”には変動因子の値の組が定義され、項目”要件”には具体的な要件が定義されている。
 上述したように、配列の各要素が持つ変動因子の値は、抽象的な要件に定義された変動因子の値の範囲を複数の区間に分割することで生成されてもよい。図5に示す例で、運用計画部100は、2つの変動因子をそれぞれ2区間に分割することで、変動因子ごとに3通りの値を生成し、生成された各変動因子の値の組み合わせによって、9通りの値の組および具体的な要件を生成している。
 利用者による抽象的な要件の定義、および、運用計画部100による抽象的な要件に基づく具体的な要件の生成を行えるように、利用者は、変動因子の型情報を事前に定義しておく。変動因子の型情報は、型名、値型、値の観測方法、値の単位、最初の構築時の構成に用いるべき値である基本値、および構成部品としての定義などを含む。
 変動因子の型情報における値型は、その変動因子の値の型である。値型として、整数(Integer)または真偽値(Boolean)などが指定されてもよい。
 値の範囲の指定方法と具体的な要件を生成するための値の区間の分割方法とは、値型ごとに異なる。これらは、値型ごとに予め定められるものとする。Integerの場合には、最大値と最小値を設定して、これを複数の区間に分割すればよい。Booleanの場合には、範囲の指定方法は特になく、区間の分割では単にtrueとfalseとが示されればよい。
 変動因子の型情報における観測方法は、運用時における変動因子の値の観測方法である。観測方法として、”監視”または”利用者入力”などが指定されてもよい。観測方法が”監視”の場合、運用中のシステムを監視することで値を獲得することを示す。観測方法が”利用者入力”の場合、利用者が入出力装置を介して変動因子の値を指定することを示す。
 ”利用者入力”との観測方法は、利用者が対象システムに要求する要件の一部を変更することが予め分かっている場合に、対象システムのシステム構成の切り替えスイッチとして利用することができる。
 構成部品としての定義は、監視要件を示す構成部品に変換された際の構成部品型の定義であり、観測方法が”監視”の場合に設定する必要がある。
 図6は、変動因子の定義情報の例を示す図である。
 図6の(a)の部分は、”秒間アクセス数型”の定義情報の例を示す。図6の(b)の部分は、”要求当たりの負荷型”の定義情報の例を示す。
 ”秒間アクセス数型”および”要求当たりの負荷型”のいずれでも、”値型”として”Integer”が設定され、”観測方法”として”監視”が設定されている。
 値の”単位”としては、”秒間アクセス数型”では”回/s”が設定され、”要求当たりの負荷型”では”処理量/要求”が設定されている。
 ”秒間アクセス数型”および”要求当たりの負荷型”のいずれでも、”基本値”として”$最小値”が指定されている。上述したように、基本値は、対象システムの最初の構築時のシステム構成に対して、変動因子の値として用いるべき値を示す。”$最小値”は、抽象的な要件で定義されている、変動因子の最小値を引用することを示している。
 ”構成部品としての定義”の表記方法は、一般的な構成部品型の定義の表記方法と概ね同様である。但し、”構成部品としての定義”では、元々の変動因子が設定されていた構成部品を参照するために”$_target”という表記が用いられる。
 ”期待する周辺構成”の”基本構成”に示される構成の記述を用いて、図4に例示される具体的な要件の、構成部品における関係性の記述を生成できる。
 図4の”秒間アクセス数”の”関係性”の記述のうち”-型:監視対象”との記述は、図6の(a)の部分に示される、変動因子”秒間アクセス数”の定義情報の、”関係性”における”-型:監視対象”との記述をコピーすることで生成できる。また、図4の”接続先:$myWebApp”との記述は、図6の(a)の部分の”接続先:$_target”との記述における”$_target”を、図4に示される具体的な要件での、秒間アクセス数の対象を示す”$myWebApp”に置き換えることで生成できる。
 具体的な要件から構成情報を設計するために、構成部品型の定義情報、および、関係性型の定義情報を用いる。構成部品型の定義情報、および、関係性型の定義情報の何れも、継承元、抽象フラグ、プロパティ、および、期待する周辺構成の定義の各情報を含む。関係性型については、関係性の両端に配置可能な構成部品の型の情報を更に含む。
 継承元には、他の構成要素の型を設定してもよく、設定した場合には次に示す2つの効果を発揮する。1つ目の効果は、定義対象の構成要素の型の情報は、継承元の構成要素の型の情報をベースとし、これを定義対象の構成要素の型の定義に示される情報によって上書きしたものであるとみなされることである。2つ目の効果は、定義対象の構成要素は継承元の構成要素の一種であって、要件に継承元の構成要素が指定された場合における、その具体的な構成要素の選択肢の1つであるとみなされることである。すなわち、継承元の構成要素が指定された要件に基づいて構成情報を設計する際に、継承する側の構成要素が具体的な構成要素として採用される場合が生じる。抽象フラグは、その構成要素が抽象的であるか具体的であるかを示すフラグである。プロパティはその構成要素が持つ属性の種類や値である。期待する周辺構成は、その構成要素が正しく機能するために満たされるべき周辺の構成であり、複数のバリエーションが設定されていてもよい。
 図7は、構成部品型の定義情報および関係性型の定義情報の例を示す図である。
 図7の(a)の部分には、構成部品型の定義情報の例として、”MyWebApp”型の構成部品の定義情報が示されている。図7の(b)の部分には、関係性型の定義情報の例として、”HostedOn<*, Server>”型の関係性の定義情報が示されている。
 図7の(a)の部分に示す例で、”MyWebApp”型の継承元として”WebApp”が設定されている。抽象フラグに”false”が設定されているため、”MyWebApp”型の構成部品は、具体的な構成要素として扱われる。”MyWebApp”型の構成部品のプロパティとして、”秒間アクセス数”と”要求当たりの負荷”とが定義されている。また、期待する周辺構成として、”基本構成”のみが指定されている。”基本構成”では、当該構成要素(定義される構成部品)が”AppServer”型の構成要素とHostedOn<*, VM>型の関係性で接続されている必要がある旨が示されている。なお”$_self”は、当該構成要素自体を示している。
 図7の(b)の部分に示す例で、”HostedOn<*, Server>”型の関係性は、接続元の型を”*”、接続先の型を”Server”と規定されている。”*”は任意の型を示している。”抽象フラグ”は”false”となっている。また、”継承元”と”プロパティ”と”期待する周辺構成”とは、いずれも”なし”となっている。
 構成情報は、構成部品と関係性によって表現されたグラフ形式の情報であり、全ての構成要素が具体的であり、かつ期待する周辺構成が満たされたものである。
 図8は、構成情報の第1の例を示す図である。
 図8に示す例で、MyWebAppsは、ApplicationServerの一種であるTomcatに、HostedOn<*, AppServer>の関係性で接続されている。Tomcatも、具体的なOSであるUbuntuに、同様に接続されている。更にUbuntuは、具体的なバーチャルマシン(Virtual Machine;VM)であるVM1に、同様に接続されている。
 秒間アクセス数を監視する機能は、Tomcatの実行ログの1つであるaccess_log.txtを監視するアクセス数Agentとして具体化されている。アクセス数Agentは、access_log.txtおよびUbuntuとそれぞれ接続されている。
 要求当たりの負荷を監視する機能は、Ubuntu上で特定のプロセスの処理量を計測するAgentである負荷Agentとして具体化されている。負荷Agentは、Ubuntuと接続されている。
 図8に示す、構成情報の第1の例は、MyWebAppが単一のバーチャルマシンによって実現された小規模なシステム構成を示す。このシステム構成は、例えば変動因子の値が秒間アクセス数は10で要求当たりの負荷は10であるなど、具体的な要件から生成されたシステム構成であるとする。
 図9は、構成情報の第2の例を示す図である。
 構成情報の第2の例が示すシステム構成は、基本的な構造は構成情報の第1の例との場合と同様であるが、MyWebAppは2台のバーチャルマシンからなる構成に冗長化されており、前段にロードバランサ(Load Balancer;LB)が設けられている。監視機能は、ロードバランサについて秒間アクセス数を計測し、それぞれのMyWebAppについて要求当たりの負荷を計測する構成となっている。
 次に、あるシステム構成から他のシステム構成へ変更する手順の計画に関連するデータについて説明する。
 運用計画部100は、構成変更手順を計画するにあたって、まず2つのシステム構成間の差分に関する情報である構成の差分情報を生成する。構成の差分情報を、単に差分情報とも称する。
 次に、運用計画部100は、システム構成とその差分とに基づいて状態遷移系の情報を生成する。運用計画部100は、状態遷移系の情報に基づいて、最も少ない状態遷移で現在の状態から目的の状態に遷移する状態遷移手順を計算して導出する。現在の状態は、構成変更前のシステム構成を示す。目的の状態は、構成変更後のシステム構成を示す。
 差分情報は、現在のシステム構成を示す構成情報に含まれる構成要素と、目的のシステム構成を示す構成情報に含まれる構成要素とを、重複なく統合してできる構成情報内の各構成要素に、新規追加、現状維持、削除などのラベルを付加した情報である。現在のシステム構成は、構成変更前のシステム構成に該当する。目的のシステム構成は、構成変更後のシステム構成に該当する。
 ここでいうラベルは、新規追加、現状維持、削除などの情報を表示するものである。ラベルは、現在のシステム構成における各構成要素の状態と、目的のシステム構成における各構成要素の状態とに基づいて付加される。例えば、現在のシステム構成には含まれていないが目的のシステム構成に含まれている構成要素には、新規追加のラベルが付加される。現在のシステム構成にも目的のシステム構成にも含まれている構成要素には、現状維持のラベルが付加される。現在のシステム構成には含まれているが、目的のシステム構成には含まれていない構成要素には、削除のラベルが付加される。
 さらに、更新などのラベルが設けられていてもよい。更新のラベルが含まれる場合、現在のシステム構成にも目的のシステム構成にも含まれている構成要素のうち、プロパティの値までが同じ構成要素には現状維持のラベルを付加し、プロパティの値が変化した構成要素には更新のラベルを付加する。以降の例では、説明を分かり易くするために、更新のラベルは扱わない。
 図10は、構成ペアから導出された差分情報の例を示す図である。
 構成ペアは、現在のシステム構成と目的のシステム構成とのペアである。図10は、図8に示されるシステム構成を現在のシステム構成とし、図9に示されるシステム構成を目的のシステム構成とした場合の差分情報の例を示す。
 図10では、ラベルの違いを線種の違いで表現している。実線の単線で描画されている構成要素は現状維持の構成要素である。実線の二重線で描画されている構成要素は新規追加の構成要素である。点線で描画されている構成要素は削除の構成要素である。
 状態遷移系の情報は、構成情報に含まれる各構成要素が採り得る状態、および、発生し得る状態遷移を依存性で関連付けた情報であり、各構成要素の現在状態と目的状態とが示される。状態遷移系の情報では、各構成要素は、任意個の状態と、任意の状態のペアの間に採り得る遷移の情報とを持つ。
 また、各構成要素における状態遷移に依存性を定義することができる。依存性は、ある構成要素における状態遷移から、別のある構成要素の特定の状態に対して指定され、前者の遷移は後者の状態にある場合においてのみ実行できるという条件を表現する。ある1つの遷移が実行される条件が、複数の構成要素の状態によって指定されていてもよい。
 各構成要素の現在状態と目的状態とは、当該構成要素のラベルに基づいて決定できる。ラベルと現在状態および目的状態との関係を示す規則を予め定めておき、この規則に従って、ラベルに応じて現在状態および目的状態を決定することができる。
 例えば、ある構成部品が”on”および”off”の2種類の状態を持っている場合、それが新規追加の構成部品であれば、現在状態が”off”で目的状態が”on”であるとする。現状維持の構成部品であれば、現在状態および目的状態が共に”on”であるとする。削除の構成部品であれば、現在状態が”on”で目的状態が”off”であるとする。
 図11は、図10に例示されている差分情報から導出される状態遷移系の例を示す。図11に示す例では、全ての構成部品が”on”および”off”の2種類の状態を持っている。一方、図11に示す例では、関係性は状態遷移系を持たない。
 図11において、1つの長方形に1つの構成要素の状態遷移系が示されている。楕円は状態を示している。2つの楕円を結ぶ実線の矢印は、状態遷移を示している。状態遷移から状態に引かれた破線の矢印は依存性を示している。
 楕円の中の文字は、状態の名前を示している。状態の名前に下線がある場合には、その状態が現在状態であることを示している。黒い楕円は、その状態が目的状態であることを示している。差分情報において新規追加とされた構成要素の現在状態は”off”で目的状態は”on”となっている。差分情報において現状維持とされた構成要素の現在状態と目的状態は共に”on”となっている。差分情報において削除とされた構成要素の現在状態は”on”で目的状態は”off”となっている。
 各構成要素の状態遷移系の内容、および、状態遷移系の間の依存性は、各構成要素の型情報において定義できる。例えば、構成要素の型情報において、構成要素型の内容に加えて、状態遷移系と状態依存性の情報を更に定義するようにしてもよい。
 図12は、状態遷移系の定義を含む構成部品型の定義情報の例を示す図である。
 図12に例示した”MyWebApp”型の構成部品は、状態遷移系の定義を含んでおり、状態として”off”と”on”とが定義されている。状態の定義では、それぞれの状態について遷移先の情報が示されている。”off”からの遷移先として”on”が定義されている。”on”からの遷移先として”off”が定義されている。
 それぞれの遷移先について、元の状態から遷移先の状態への遷移に関する情報として、説明と作業とが更に定義されている。例えば、”off”から”on”への遷移の説明には”MyWebAppの配備”と記されており、作業として起動コマンドが設定されている。同様に”on”から”off”への遷移の説明には”MyWebAppの除去”と記されており、作業として停止コマンドが設定されている。
 また、項目”期待する周辺構成”内に状態依存性が指定されている。具体的には、MyWebApp自身の”off”から”on”への状態遷移が、当該MyWebAppの配備先のappServerが”on”の状態にあることに依存している旨が指定されている。”$_self”は、定義される構成部品自身を表現している。”off->on”の記述は、”off”状態から”on”状態への状態遷移を表している。”$appServer.on”の記述は、”$appServer”で参照される構成要素の”on”状態を表現している。なお、appServerが当該MyWebAppの配備先であることは、”$_self”の関係性としてHostedOn<*, VM>型の関係性による接続先として”$appServer”を指定することによって表現されている。
 各構成要素の状態遷移系の内容および状態遷移系の間の依存性の情報を用いれば、差分情報から状態遷移系の情報を導出できる。すなわち、差分情報に示される各構成要素が備える状態遷移系を導入し、状態依存性の指定に基づいて状態遷移系の間に依存性を付加すればよい。
 構成変更手順は、複数の作業を作業間の依存性によって連結した情報であり、有向非循環グラフによって表現できる。
 図13は、状態遷移系から導出された構成変更手順の例を示す図である。
 図13に示す例において、長方形は作業を示しており、作業間に引かれた実線の矢印は作業間の実施順序を示している。
 図13に示す例では、”NW1の起動”を最初に実施することが指示されている。続いて、各バーチャルマシンに関連する作業を順次実施することが指示されている。各バーチャルマシンに関連する作業の間には依存性が示されていないため、これらの作業を並列実行可能であることがわかる。
 状態遷移系の情報を用いれば、現在のシステム構成から目的のシステム構成に変換する手順を計算できる。すなわち、全ての構成要素の状態遷移系の状態を、依存性を満たしつつ現在状態から目的状態に遷移させる最短の状態遷移手順を計算すればよい。この問題はある種の最短経路探索問題に帰着することが特許文献2に示されている。
 導出された状態遷移手順に登場する各遷移に定義された作業をそれぞれ導入し、状態遷移系の情報において依存性で関連付けられた状態遷移系の間の作業に、構成変更手順の情報でも依存性を付加する。
 運用計画は、上記の変動因子、要件、システム構成、および、構成変更手順を統合した情報である。
 図14は、運用計画の例を示す図である。
 図14に示す運用計画の要素のうち、変動因子および構成が”なし”となっている要素は、システムが構築される前の初期状態を表している。
 運用計画では、変動因子の値の組とシステム構成とが一対一で紐付けられる。したがって、運用計画にて各システム構成に示される変動因子の値の組は、1つの運用計画においてユニークであり、各システム構成のIDの役割を果たしている。
 各システム構成から変更先となる別のシステム構成を指定する際には、変更先のシステム構成のIDとして変動因子の値の組が用いられている。変更元のシステム構成のIDとなる変動因子の値の組と、変更先のシステム構成のIDとなる変動因子の値の組とを特定することで、その変更に用いられるべき構成変更手順を、運用計画から読み取ることができる。
 以上のデータのうち、人が入力するデータは、抽象的な要件と、構成要素型の定義情報と、変動因子の定義情報とであり、それ以外のデータは自動的に生成されるデータである。
 次に、システム運用計画装置1の動作を説明する。
 図15は、運用計画部100が行う処理の手順の例を示すフローチャートである。
 図15に示す処理で、計画制御部101は、利用者が入出力部901を介して入力する抽象的な要件を取得する(ステップS101)。計画制御部101は、取得した抽象的な要件を要件生成部102に出力し、要件生成部102は、取得した抽象的な要件から具体的な要件の行列を生成する(ステップS102)。
 要件生成部102は、抽象的な要件から具体的な要件の行列を生成するにあたって、まず抽象的な要件に含まれる変動因子を抽出し、その最小値と最大値の間を複数の区間に分割する。区間の分割は予め決められた数の区間に均等に分割すればよい。
 ただし、上述したように、具体的な変動因子の値の組の設定方法は、特定の方法に限定されない。また、具体的な変動因子の値の組の配置は、図2の(b)の部分の例のような、格子状の配置に限定されない。
 例えば、変動因子が採り得る値の範囲のうち、変動因子の値の変化がシステム構成に及ぼす影響が比較的小さい部分について、運用計画部100が、具体的な変動因子の値の組を間引くようにしてもよい。すなわち、運用計画部100が、具体的な要件を間引くようにしてもよい。
 また、運用計画部100が、具体的な変動因子の値の組を設定した後、設定した変動因子の組を利用者に提示し、具体的な変動因子の値の組の利用者による編集を受け付けるようにしてもよい。例えば、運用計画部100が、具体的な変動因子の値の組の位置の変更、追加、および、削除を受け付けるようにしてもよい。
 次に、要件生成部102は、区間の境目となる値からなる配列を生成する。要件生成部102は、これを各変動因子について実施した後に、複数の値の配列の直積からなる値の組の配列を生成する。要件生成部102は、得られた各値の組を用いて、抽象的な要件を具体的な要件に変換する。すなわち、要件生成部102は、抽象的な要件に含まれている各変動因子を一般的なプロパティに変換し、値として、値の組から各変動因子に該当する値を挿入する。また、要件生成部102は、各変動因子の型に定義された構成要素としての定義と、期待される周辺構成の情報とに基づいて、抽象的な要件に定義された構成情報に当該変動因子の監視要件を追記する。
 次に、構成設計部103が、各具体的な要件から構成情報を生成する(ステップS103)。手順計画部104は、各構成要素のペアから構成変更手順を生成する(ステップS104)。
 手順計画部104は、構成要素のペアを抽出するにあたって、ある変動因子の値の組に対して、一つ以上の変動因子の値が一段階異なる変動因子の値の組をペアとすればよい。また、手順計画部104は、変動因子と構成要素が”なし”である初期構成を生成し、全ての変動因子の値が基本値であるような基本となる具体的な要件との間にも構成変更手順を計画する。
 そして、計画制御部101は、得られた具体的な要件の行列内の各具体的な要件と、その具体的な要件を満たす構成情報と、その構成情報のペアにあたる各他の構成情報への構成変更手順とが紐付けられた運用計画を生成し、入出力部901を介して利用者へ出力する(ステップS105)。
 ステップS105の後、運用計画部100は、図15の処理を終了する。
 図16は、構成設計部103が行う処理の手順の例を示すフローチャートである。
 図16の処理で、構成設計部103は、計画制御部101から具体的な要件を取得する(ステップS1101)。次に、構成設計部103は、具体的な要件を段階的に具体化する(ステップS1102からS1108)。構成設計部103は、完全に具体化された構成情報を計画制御部101へ出力する(ステップS1109)。
 ステップS1109の後、構成設計部103は、図16の処理を終了する。
 具体的な要件を段階的に具体化する処理では、構成設計部103は、1段階の具体化(ステップS1102~S1105)を実施する。そして、構成設計部103は、得られた複数の構成ドラフトの中に具体的な構成ドラフトが含まれているか否かを判定する(ステップS1106)。
 ここで、構成ドラフトとは、具体化途中の構成情報のことである。構成ドラフトは、内包する全ての構成要素が具体的である場合に、具体的であると判断される。各構成要素は、その型の抽象フラグの値が”true”であることと、期待する周辺構成が満たされることの2つが満たされる場合に、具体的であると判断される。
 ステップS1106で、具体的な構成ドラフトが含まれていると判定した場合(ステップS1106:YES)、構成設計部103は、その具体的な構成ドラフトを構成情報として計画制御部101へ出力する(ステップS1109)。
 ステップS1109の後、構成設計部103は、図16の処理を終了する。
 一方、ステップS1106で、具体的な構成ドラフトが含まれていないと判定した場合(ステップS1106:NO)、構成設計部103は、構成ドラフトツリーの中に、抽象的な構成ドラフトが残っているか否かを判定する(ステップS1107)。
 ここで、構成ドラフトツリーとは、構成ドラフトをノードする木構造のデータであって、ある構成ドラフトを具体化することで他の構成ドラフトが生成されるとき、前者の構成ドラフトが後者の構成ドラフトを子として持つようなデータである。
 抽象的な構成ドラフトが残っていると判定した場合(ステップS1107:YES)、構成設計部103は、次に具体化する構成ドラフトを適宜選択する(ステップS1108)。ステップS1108の後、処理がステップS1102に戻り、構成設計部103は、1段階の具体化を再度実施する。
 一方、ステップS1107で、抽象的な構成ドラフトが残っていないと判定した場合(ステップS1107:NO)、構成設計部103は、システムの設計に失敗したと判定する(ステップS1110)。それ以上設計を検討できないためである。
 ステップS1110の後、構成設計部103は、図16の処理を終了する。
 1段階の具体化においては、構成設計部103は、ステップS1101で入力された具体的な要件、又は、ステップS1108で次に具体化すると選択された構成ドラフトに対して、その具体的な要件または構成ドラフトに含まれる抽象的な構成要素のうち何れか1つを選択して具体化することで、1つまたは複数の構成ドラフトを生成する(ステップS1102)。
 抽象的な構成要素の具体化とは、その構成要素の型の具体化、または、期待する周辺構成の適用のいずれかを実施することである。構成要素の型の具体化とは、具体化する対象の構成要素の型が抽象的な構成要素型である場合に実施するものであって、その構成要素の型をより具体的な型に置き換える操作である。このとき、置き換える先の構成要素型は、置き換える前の構成要素型を継承型に持つような構成要素型に限定される。
 次に、構成設計部103は、ステップS1102で、実際に1つ以上の構成ドラフトが生成されたか否かを判定する(ステップS1103)。構成ドラフトが生成されなかったと判定した場合(ステップS1103:NO)、処理がステップS1107へ進む。この場合、構成設計部103は、ステップS1102で新たな構成ドラフトの生成に失敗しているため、構成ドラフトツリー上に、他の構成ドラフトが残っているか否かを判定するものである。
 一方、ステップS1103で、1つ以上の構成ドラフトが生成されたと判定した場合(S1103:YES)、構成設計部103は、生成された各構成ドラフトを評価し、抽象的な構成ドラフトで、かつ、それ以上具体化できない構成ドラフトを、処理対象の構成ドラフトから除外する(ステップS1104)。
 そして、構成設計部103は、ステップS1103で生成された構成ドラフトのうち、処理対象の構成ドラフトが残っているか否かを判定する(ステップS1105)。
 処理対象の構成ドラフトが残っていると構成設計部103が判定した場合(ステップS1105:YES)、処理がステップS1106へ進む。一方、処理対象の構成ドラフトが残っていないと構成設計部103が判定した場合(ステップS1105:NO)、処理がステップS1107へ進む。
 図17は、手順計画部104が行う処理の手順の例を示すフローチャートである。
 図17の処理で、手順計画部104は、計画制御部101から具体的な要件の行列を取得する(ステップS121)。そして、手順計画部104は、具体的な要件の行列に基づいて差分情報を生成する(ステップS122)。
 具体的には、手順計画部104は、具体的な要件の行列に含まれる変動因子の値の組のうち、1つ以上の変動因子の値が一段階異なる、2つの変動因子の値の組からなるペアを生成する。そして、手順計画部104は、生成したペアに属する2つの構成情報について、上述したように、これらの2つの構成情報を統合してできる構成情報内の各構成要素に、新規追加、現状維持、削除などのラベルを付加して、差分情報を生成する。手順計画部104は、具体的な要件の行列に含まれる変動因子の値の組のうち、1つ以上の変動因子の値が一段階異なる、2つの変動因子の値の組からなる各ペアについて、差分情報を生成する。
 次に、手順計画部104は、差分情報のそれぞれと構成要素型の情報とに基づいて、状態遷移系を生成する(ステップS123)。
 次に、手順計画部104は、全ての状態遷移系の状態を初期状態から目的状態へと遷移させる最短の状態遷移手順を計算する(ステップS124)。そして、手順計画部104は、計算された状態遷移手順に従って、構成変更のための処理を並べることで、構成変更手順を生成する(ステップS125)。手順計画部104は、生成した構成変更手順を計画制御部101へ出力する(ステップS126)。
 ステップS126の後、手順計画部104は、図17の処理を終了する。
 図18は、運用計画部100が利用者に提示するGUI(Graphical User Interface)の例を示す図である。入出力部901が、運用計画部100による制御に従って、図18に例示される操作画面を表示し、ユーザ操作を受け付ける。
 入出力部901は、表示手段の例に該当する。また、入出力部901は、操作入力手段の例に該当する。システム運用計画装置1は、表示装置の例に該当する。
 図18に示される操作画面は、選択可能な構成部品の一覧の表示領域(領域a21)と、変動因子の選択および値の調整バーの表示領域(領域a22)と、要件編集ペイン(領域a23)と、運用計画確認ペイン(領域a24)と、構成情報確認ペイン(領域a25)と、構成変更手順確認ペイン(領域a26)とを含む。
 要件編集ペイン(領域a23)では、利用者は、選択可能な構成部品の一覧の表示領域(領域a21)から構成部品をマウス操作でドラッグアンドドロップして抽象的なシステム構成を描画することで、対象システムが満たすべき要件を編集できる。
 要件編集ペイン(領域a23)に描画されたシステム構成内の構成部品が含む各変動因子は、変動因子の選択および値の調整バーの表示領域(領域a22)に一覧として表示される。利用者は、変動因子の選択および値の調整バーの表示領域(領域a22)に表示される変動因子のうち、実際に構成変更のための変動因子として用いるものについて、チェックボックスにチェックを入れることで選択する。そして、利用者は、選択した変動因子の最大値と最小値とを調整バーで設定する。
 変動因子の選択および値の調整バーの表示領域(領域a22)における変動因子の一覧の表示は、変動因子のリストの表示の例に該当する。
 変動因子の選択および値の調整バーの表示領域(領域a22)における変動因子の最大値と最小値の表示は、変動因子の値が、対象システム911の運用時にとることが許容される範囲の表示の例に該当する。
 生成された運用計画の概要は、運用計画確認ペイン(領域a24)に表示される。運用計画内の任意の具体的な構成情報をクリックすると、その具体的な構成情報に対応するシステム構成が、構成情報確認ペイン(領域a25)に表示される。図2の場合と同様、具体的な構成情報は黒丸で示されている。
 利用者が運用計画確認ペイン(領域a24)に表示される具体的な要件を編集することで、システム構成変更の基準値として用いられる変動因子の値を調整できるようにしてもよい。例えば、利用者が、具体的な要件を移動させる、追加する、あるいは削除することができるようにしてもよい。
 ここで、上述したように、変動因子の個数は2つに限定されない。変動因子の個数が3つ以上の場合、入出力部901が、運用計画を多次元的に表示するようにしてもよい。例えば、入出力部901が、3つの変動因子に基づいて運用計画を立体的(3次元的)に表示するようにしてもよい。この場合、入出力部901が、視線方向を変更可能に、立体の運用計画を表示するようにしてもよい。
 あるいは、3つ以上の変動因子のうち2つの変動因子を利用者が選択できるようにし、入出力部901が、選択された2つの変動因子について運用計画を平面的(2次元的)に表示するようにしてもよい。
 構成設計部103がシステム設計を行う前の段階で、入出力部901が、変動因子の組み合わせを表示し、上記と同様に、利用者による編集を受け付けるようにしてもよい。
 運用計画確認ペイン(領域a24)に表示される運用計画内の任意の構成変更手順をクリックすると、その構成変更手順の内容が構成変更手順確認ペイン(領域a26)に表示される。図2の場合と同様、構成変更手順は矢印で示されている。
 運用計画確認ペイン(領域a24)における運用計画の表示は、変動因子の値を示す座標軸を複数の変動因子のそれぞれについて有する座標空間に、座標軸ごとの変動因子の値を示す点を表示することの例に該当する。
 次に、第1の実施形態の効果を説明する。
 第1の実施形態によれば、変動因子の値に応じて構成変更を含む一連の運用計画の策定作業が自動化される。また、実際の運用を開始する前に、一連の構成情報や構成変更手順が計画されるため、対応が必要となった際に迅速かつ確実に構成変更を実施できる。
 利用者が、構成変更手順を参照して構成変更を実施するようにしてもよい。あるいは、第2の実施形態にシステム運用計画装置のように、装置が自動的あるいは半自動的に構成変更を実施するようにしてもよい。
 以上のように、要件生成部102は、運用対象のシステムである対象システム911の運用時に変化する値であって、対象システム911の動作状況と相関性を有する変動因子の値が、対象システム911の運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、対象システム911が満たすべき要件を示す情報である抽象的な要件に基づいて、変動因子範囲に含まれる変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、対象システム911が満たすべき要件を示す情報である具体的な要件を生成する。
 システム運用計画装置1によれば、対象システム911の運用時に対象システム911のシステム構成を変更するか否かを自動で判定するための判定基準として、複数の具体的な要件のそれぞれが示す変動因子の値を用いることができる。具体的な要件を満たすシステム構成を設計することで、現在の変動因子の値が、その具体的な要件が示す変動因子の値、または、それ以下の値であるときに適したシステム構成を得ることができる。したがって、現在の変動因子の値よりも、変動因子の値が大きい具体的な要件を選択し、その具体的な要件を満たすシステム構成を設計することで、現在の変動因子の値に適したシステム構成を得ることができる。
 さらに、現在の変動因子の値よりも、変動因子の値が大きい具体的な要件のうち、変動因子の値が最も小さい具体的な要件を選択し、その具体的な要件を満たすシステム構成を設計することで、現在の変動因子の値に適したシステム構成のうち最小のシステム構成を得ることができる。このシステム構成に従って対象システム911を構築または更新することで、対象システム911を効率的に運用することができる。
 なお、ここでは、変動因子の値が大きいほど、対象システム911の性能が高いものとしている。変動因子の値が小さいほど、対象システム911の性能が高い変動因子については、因子水準の選択の説明について、「大きい」と「小さい」とを読み替えるものとする。
 システム運用計画装置1では、変動因子は特定の分野のものに限定されない。システム運用計画装置1によれば、いろいろな分野の対象システム911について、対象システム911のシステム構成を変更するか否かを自動で判定するための判定基準を得ることができる。
 また、要件生成部102は、対象システム911が、変動因子の値を取得するための観測を行うための構成を含むという要件を含む具体的な要件を生成する。
 システム運用計画装置1によれば、対象システム911が変動因子の値を取得するように構成され、対象システム911取得する変動因子の値を用いて対象システム911のシステム構成の変更を行えると期待される。
 また、構成設計部103は、具体的な要件のそれぞれについて、その要件を満たす対象システムのシステム構成を示す構成情報を生成する。
 システム運用計画装置1によれば、変動因子の値に基づいて、対象システム911のシステム構成の変更後のシステム構成を決定することができる。具体的には、現在の変動因子の値に対応している具体的な要件を選択し、その要件を満たすシステム構成を、対象システム911のシステム構成の変更後のシステム構成とすることができる。
 具体的な要件が現在の変動因子の値に対応しているとは、上述した、その具体的な要件に示される変動因子の値が、現在の変動因子の値よりも大きいことである。上述したように、さらに、現在の変動因子の値よりも、変動因子の値が大きい具体的な要件のうち、変動因子の値が最も小さい具体的な要件を選択するようにしてもよい。
 上記と同様、ここでも、変動因子の値が大きいほど、対象システム911の性能が高いものとしている。変動因子の値が小さいほど、対象システム911の性能が高い変動因子については、因子水準の選択の説明について、「大きい」と「小さい」とを読み替えるものとする。
 また、手順計画部104は、構成情報のうちの1つが示すシステム構成から、構成情報のうちのもう1つが示すシステム構成に変更するための手順を示す情報である構成変更手順を生成する。
 システム運用計画装置1によれば、手順計画部104が生成した構成変更手順に従って、対象システム911のシステム構成を変更することができる。
 また、計画制御部101は、具体的な要件のそれぞれと、対象システム911のシステム構成を、その要件を満たすシステム構成に変更するための手順を示す構成変更手順とが紐付けられた情報を含む情報である運用計画を生成する。
 システム運用計画装置1によれば、運用情報を参照して、対象システム911のシステム構成を変更することができる。具体的には、運用情報に含まれる具体的な要件のうち、現在の変動因子の値に対応している具体的な要件を選択し、その要件を満たすシステム構成を、対象システム911のシステム構成の変更後のシステム構成とすることができる。
 上記と同様、ここでも、具体的な要件が現在の変動因子の値に対応しているとは、その具体的な要件に示される変動因子の値が、現在の変動因子の値よりも大きいことである。上述したように、さらに、現在の変動因子の値よりも、変動因子の値が大きい具体的な要件のうち、変動因子の値が最も小さい具体的な要件を選択するようにしてもよい。
 上記と同様、ここでも、変動因子の値が大きいほど、対象システム911の性能が高いものとしている。変動因子の値が小さいほど、対象システム911の性能が高い変動因子については、因子水準の選択の説明について、「大きい」と「小さい」とを読み替えるものとする。
 また、入出力部901は、運用対象のシステムである対象システム911の運用時に値が変化し、かつ、その値が対象システムの動作状況と相関性を有する変動因子のリストを表示する。
 システム運用計画装置1によれば、利用者は、変動因子のリストを参照して、変動因子のうち、対象システム911のシステム構成を変更するか否かの判定基準に用いる変動因子を選択することができる。
 また、入出力部901は、変動因子のリストに示される変動因子のうち、対象システムの運用時における対象システムのシステム構成の変更の要否の判定に用いられる変動因子を指示するユーザ操作を受け付ける。
 システム運用計画装置1によれば、利用者は、変動因子のリストに示される変動因子のうち、対象システムの運用時における対象システムのシステム構成の変更の要否の判定に用いられる変動因子を選択するといった比較的簡単な操作によって、対象システムのシステム構成の変更の要否の判定に用いられる変動因子を指示することができる。
 また、入出力部901は、運用対象のシステムである対象システム911の運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、対象システム911の運用時にとることが許容される範囲を表示する。
 システム運用計画装置1によれば、利用者は、対象システム911による表示を参照して、変動因子の値が対象システム911の運用時にとることが許容されている範囲を確認することができる。
 また、入出力部901は、変動因子の値が、対象システム911の運用時にとることが許容される範囲の変更を指示するユーザ操作を受け付ける。
 利用者は、入出力部901を用いて比較的容易に、変動因子の値がとり得る範囲を調整することができる。
 また、入出力部901は、運用対象のシステムである対象システム911の運用時に変化する値であって、対象システム911の動作状況と相関性を有する変動因子の値を示す座標軸を複数の変動因子のそれぞれについて有する座標空間に、座標軸ごとの前記変動因子の値を示す点を表示する。
 システム運用計画装置1によれば、利用者は、複数の変動因子の値を視覚的に把握することができ、この点で、複数の変動因子の値を比較的容易に把握することができる。例えば、利用者は、対象システム911のシステム構成の変更の要否の判定の基準に設定されている複数の変動因子の値を比較的容易に把握することができる。
 また、入出力部901は、変動因子の値が、対象システム911の運用時にとることが許容される範囲を、座標空間に表示する。
 システム運用計画装置1によれば、利用者は、複数の変動因子の値が、対象システム911の運用時にとることが許容される範囲を視覚的に把握することができる、この点で、変動因子の値の範囲を比較的容易に把握することができる。
 また、入出力部901は、上記の座標空間における、座標軸ごとの変動因子の値を示す点を編集するユーザ操作を受け付ける。
 システム運用計画装置1によれば、利用者は、座標空間に表示されて変動因子の値を示す点を編集するという比較的簡単な操作で、変動因子の値を指示することができる。例えば、利用者は、対象システム911のシステム構成の変更の要否の判定基準として用いられる変動因子の値を指定することができる。
<第2の実施形態>
 第2の実施形態では、システム運用計画装置が、システムの運用計画の後、さらにシステムの運用を行う場合について説明する。
 第2の実施形態に係るシステム運用計画装置の構成を説明する。
 図19は、第2の実施形態に係るシステム運用計画装置の機能構成の例を示すブロック図である。図19に示す構成で、システム運用計画装置2は、入出力部901と、運用計画部100と、運用実行部200と、対象システム911とを備える。運用計画部100は、計画制御部101と要件生成部102と構成設計部103と手順計画部104を備える。運用実行部200は、同期制御部201と、手順実行部202と、状態管理部204と、判定部206とを備える。対象システム911は、監視部205と、作業実行部203とを備える。
 図19に示す構成の各部のうち、図1に示す部分に対応して同様の機能を有する部分には、同一の符号(100、101、102、103、104、901)を付し、ここでは詳細な説明を省略する。
 システム運用計画装置2は、図1に示す構成に加えて運用実行部200と、対象システム911とを備える。これにより、システム運用計画装置2は、運用計画部100が生成する運用計画に基づいて、対象システム911の運用を行う。それ以外の点では、システム運用計画装置は、システム運用計画装置1と同様である。
 対象システム911が、システム運用計画装置2の外部の構成となっていてもよい。また、システム運用計画装置1の場合と同様、入出力部901が、システム運用計画装置2の外部の構成となっていてもよい。
 同期制御部201は、運用計画で定義された対象システム911が、常に変動因子に応じたあるべきシステム構成となるように、対象システム911を制御する。状態管理部204は、運用計画と現状の対象システム911の状態とを記録する。手順実行部202は同期制御部201の指示に基づき、作業実行部203に指示を与えることで、構成変更手順を実行する。手順実行部202は、手順実行手段の例に該当する。
 対象システム911のシステム構成を、変動因子に応じたあるべきシステム構成にすることを、対象システム911の同期とも称する。
 作業実行部203は、手順実行部202の指示に基づいて作業を実行する。監視部205は、変動因子の値を監視する。判定部206は監視部205から取得した変動因子の値に基づいて、目標となる変動因子の値の水準である目的の因子水準を判断して状態管理部204に記録する。また、現在の因子水準と目的の因子水準とが異なっている場合、判定部206は、その旨を同期制御部201に通知する。判定部206は、判定手段の例に該当する。
 ここで、因子水準とは、運用情報に示される変動因子の値(の組)である。因子水準は、図2のCの部分が示す例のように、離散値で示される。
 現在の因子水準とは、対象システム911の現在のシステム構成に紐付けられている因子水準である。
 目的の因子水準とは、因子水準のうち、対象システム911について観測される変動因子の現在値に対応可能なシステム構成に紐付けられている因子水準である。
 目的の因子水準として、各変動因子について、変動因子の現在値よりも大きい値をとる因子水準のうち、各変動因子の値が最も小さい因子水準を選択するようにしてもよい。あるいは、変動因子の値が現在の因子水準に示される値を超えることが対象システム911にとって致命的であるような変動因子については、その変動因子の現在値よりも大きい値をとる因子水準のうち、その変動因子の値が2番目に小さい因子水準を選択するようにしてもよい。
 なお、ここでは、変動因子の値が大きいほど、対象システム911の性能が高いものとしている。変動因子の値が小さいほど、対象システム911の性能が高い変動因子については、因子水準の選択の説明について、「大きい」と「小さい」とを読み替えるものとする。
 状態管理部204は、対象システム911に関するシステム状態情報として、対象システム911のIDと共に、運用状態と運用計画と現在の因子水準と目的の因子水準とを記録する。運用状態は運用中であるか運用を停止しているかを示すフラグである。運用実行部200は、対象システム911の運用状態が運用中である場合のみ、監視および同期の処理を実行する。
 図20は、状態管理部204に記録されたシステム状態情報の例を示す図である。図20に示すシステム状態情報は、”system001”をIDとするシステムに関する情報である。図20に示すシステム状態情報には、運用状態と運用計画と現在の因子水準と目的の因子水準とが記録されている。運用状態は”運用中”となっている。運用計画の内容は、例えば図14に記載の運用計画の内容と同様であり、ここでは記載を省略する。現在の因子水準は”なし”となっており、対象システム911が初期状態にあることを示している。目的の因子水準は“{秒間アクセス数: 10, 要求当たりの負荷: 10}”となっている。
 現在の因子水準と目的の因子水準が異なっているため、手順実行部202が構成変更手順を実行する必要がある。なお、この場合の構成変更手順は、対象システム911のシステム構成が何もない状態から、対象システム911の基本となるシステム構成である基本構成を構築するための作業手順となる。
 次に、システム運用計画装置2の動作を説明する。
 システム運用計画装置2では、システム運用計画装置1の場合と同様、利用者が入出力部901を介して抽象的な要件を入力し、運用計画部100が抽象的な要件に基づいて運用計画を導出する。利用者は、入出力部901を介して、導出された運用計画を確認し、その運用計画の実行をシステム運用計画装置2に指示する。対象システム911の運用の必要がなくなった場合、利用者は、システム運用計画装置2に対して運用の停止を指示する。運用実行部200は、運用計画の情報および利用者からの指示を受け付けて、対象システム911を運用し、運用を停止する。
 図21は、運用実行部200が行う処理の手順の例を示すフローチャートである。
 図21に示す処理で、同期制御部201は、利用者が入出力部901を介して行う運用計画の実行指示を取得する(ステップS201)。そして、同期制御部201は、運用計画を受け付けて、新規のシステムIDを生成し、生成したシステムIDと運用計画とからなるシステム状態情報を状態管理部204に登録する(ステップS202)。
 なお、登録時のシステム状態情報の現在の因子水準は”なし”とすることができる。また、目的の因子水準は、全ての変動因子の値が当該変動因子の定義にて規定された基本値の値を持つような基本の因子水準とすることができる。運用状態は”運用中”とする。
 次に、同期制御部201は、運用計画の実行により対象システム911の状態を適切な状態に維持するための動作を開始する(ステップS203)。
 その後、運用対象のシステムを停止する事由が生じた場合、利用者は、入出力部901を介して対象システム911の運用の停止を運用実行部200に指示する(ステップS204)。これにより同期制御部201は、対象システム911の運用状態を”停止中”とし、対象システム911の維持の動作を停止する(ステップS205)。
 ステップS205の後、運用実行部200は、図21の処理を終了する。
 図22は、運用実行部200が行う、対象システム911の状態を適切な状態に維持するための動作における処理の手順の例を示すフローチャートである。運用実行部200は、例えば、図22に示す処理を定期的に繰り返す。
 図22に示す処理で、同期制御部201は、対象システム911の運用状態が運用中であるか否かを判定する(ステップS201)。運用中でないと判定した場合(ステップS201:NO)、運用実行部200は、図22の処理を終了する。
 一方、対象システム911の運用状態が運用中であると判定した場合(ステップS201:YES)、同期制御部201は、対象システム911が同期されているか否かを判定する(ステップS211)。具体的には、同期制御部201は、システム状態情報を確認し、現在の因子水準と目的の因子水準が同じであるか否かを判定する。
 対象システム911が同期されていると判定した場合(ステップS211:YES)、運用実行部200は、図22の処理を終了する。
 一方、対象システム911が同期されていないと判定した場合(ステップS211:NO)、同期制御部201は、監視部205による対象システム911の監視を一旦停止させる(ステップS212)。そして、同期制御部201は、現在の因子水準に応じたシステム構成から目的の因子水準に応じたシステム構成への構成変更手順を、状態管理部204に記録された運用計画の中から取得し、取得した構成変更手順を手順実行部202に送付して実行させる(ステップS213)。
 手順実行部202は、構成変更手順に示される各タスクの実行を作業実行部203に指示することで構成変更手順を実行させ、これによって対象システム911のシステム構成を、目的のシステム構成と同期させる。対象システム911の同期がとられた後、同期制御部201は、状態管理部204に記録されたシステム状態情報における現在の因子水準の記録を、目的の因子水準の値に更新する。
 そして、同期制御部201は、判定部206を介して監視部205に、システム構成変更後の対象システム911の監視を開始させる(ステップS214)。
 ステップS214の後、運用実行部200は、図22の処理を終了する。
 図23は、判定部206が行う処理の手順の例を示すフローチャートである。
 図23に示す処理で、判定部206は、対象システムの運用状態が運用中であるか否かを判定する(ステップS220)。対象システムが運用中ではないと判定した場合(ステップS220:NO)、判定部206は、図23の処理を終了する。
 一方、対象システムが運用中あると判定した場合(ステップS220:NO)、判定部206は、同期の判定の周期として定められている一定時間が経過したか否かを判定する(ステップS221)。一定時間が経過していないと判定部206が判定した場合(ステップS221:NO)、処理がステップS220へ戻る。
 一方、一定時間が経過したと判定した場合(ステップS221:YES)、判定部206は、監視部205が観測する変動因子の値を取得し、運用情報に示される因子水準のうち、目的の因子水準を判定し取得する(ステップS222)。
 ここで、対象システム911を安定して動作させるためには、対象システム911のシステム構成を、十分な性能のシステム構成とすることが必要である。一方、対象システム911が余剰の資源を持つことは、対象システム911の消費電力の増大など、対象システム911の効率の悪化につながる。
 そこで、監視部205が目的の因子水準を決定するにあたって、上述したように、観測された変動因子の値よりも大きい因子水準のうち、最小の値を持つような因子水準に決定することが考えられる。
 一方、観測される因子水準が、区間の境目を行き来した場合に、運用実行部200が頻繁な構成変更を繰り返すことは得策ではない。そこで、観測される変動因子の値が一定時間特定の因子水準に留まっている場合、すなわち、目的の因子水準の変動が一定時間生じないような場合のみ、監視部205が、目的の因子水準を決定するようにしてもよい。
 一方、因子水準の大幅な変動が発生した場合、監視部205が、一定時間の経過を待たずに目的の因子水準を決定するようにしてもよい。また、監視部205が、観測された変動因子の値そのものを用いる代わりに、変動因子の値を継続的に監視した結果に基づいて、変動因子の将来値を予測し、予測結果を用いて目的の因子水準を決定するようにしてもよい。
 ステップS222の後、判定部206は、変動因子の測定値が、目的の因子水準として選択可能な因子水準の上限を超えているか否かを判定する(ステップS223)。例えば、判定部206は、変動因子のうち、測定値が変動因子の最大値に設定されている値よりも大きいものがあるか否かを判定する。
 変動因子の測定値が、目的の因子水準として選択可能な因子水準の上限を超えていることは、対象システム911のシステム構成として、変動因子の値に応じた適切なシステム構成を選択できないことを意味する。
 変動因子の測定値が、目的の因子水準として選択可能な因子水準の上限を超えていると判定した場合(ステップS223:YES)、判定部206は、同期制御部201および入出力部901を介して利用者にアラートを発する(ステップS224)。
 ステップS224の後、処理がステップS220へ戻る。
 一方、ステップS223で、変動因子の測定値が、目的の因子水準として選択可能な因子水準の上限を超えていないと判定した場合(ステップS223:NO)、判定部206は、目的の因子水準が現在の因子水準から変化しているか否かを判定する(ステップS225)。
 目的の因子水準が現在の因子水準から変化していないと判定部206が判定した場合(ステップS225:NO)、処理がステップS220へ戻る。
 一方、目的の因子水準が現在の因子水準から変化していると判定した場合(ステップS225:NO)、判定部206は、状態管理部204が記録する目的の因子水準を、ステップS222で決定した目的の因子水準の値に更新し、同期制御部201に対象システム911の同期を指示する(ステップS225)。
 ステップS225の後、処理がステップS220へ戻る。
 次に、第2の実施形態の効果を説明する。
 システム運用計画装置2によれば、変動因子の値に応じた構成変更を含む一連の運用計画の策定処理、および、運用計画に基づく対象システム911の運用処理が自動化される。また、システム運用計画装置2によれば、対象システム911の運用を開始する前に、一連の構成情報および構成変更手順が計画されるため、対応が必要となった際に迅速かつ確実に構成変更を実施できると期待される。
 以上のように、手順実行部202は、対象システム911のシステム構成を、変動因子の値を取得するための観測を行うための構成を用いて得られる変動因子の値に対応している具体的な要件を満たすシステム構成に変更するための手順を示す構成変更手順に基づいて対象システム911のシステム構成を変更する。
 システム運用計画装置2によれば、対象システム911のシステム構成を自動的に行うことができる。
 また、判定部206は、対象システム911の現在のシステム構成が満たす具体的な要件が示す変動因子の値と、変動因子の値を取得するための観測を行うための構成を用いて得られる変動因子の値に対応している前記具体的な要件が示す前記変動因子の値とを比較して、対象システム911のシステム構成の変更の要否を判定する。
 システム運用計画装置2によれば、対象システム911のシステム構成の変更の要否を自動的に判定することができる。
<第3の実施形態>
 第3の実施形態では、システム運用計画装置が、事前の運用計画を生成せず、システムの監視結果に応じてシステム構成変更の必要性を判定し、必要に応じてシステム構成変更を計画し実行する場合について説明する。第3の実施形態では、システム運用計画装置は、いわば、オンザフライ(On The Fly)でシステム運用計画および運用を行う。
 第3の実施形態に係るシステム運用計画装置の構成を説明する。
 図24は、第3の実施形態に係るシステム運用計画装置の機能構成の例を示すブロック図である。図24に示す構成で、システム運用計画装置3は、入出力部901と、計画運用部300と、対象システム911とを備える。計画運用部300は、計画制御部101と要件生成部102と構成設計部103と手順計画部104と、同期制御部201と、手順実行部202と、状態管理部204と、判定部206とを備える。対象システム911は、監視部205と、作業実行部203とを備える。
 図24に示す構成の各部のうち、図10に示す部分に対応して同様の機能を有する部分には、同一の符号(101、102、103、104、201、202、203、204、205、206、901、911)を付し、ここでは詳細な説明を省略する。
 システム運用計画装置3では、計画運用部300が、図19の運用計画部100の各部に相当する部分と、運用実行部200の各部に相当する部分とを併せ持つ。これにより、システム運用計画装置3は、上記のように、いわば、オンザフライでシステム運用計画および運用を行う。それ以外の点では、システム運用計画装置3は、システム運用計画装置2と同様である。
 次に、システム運用計画装置3が扱うデータ、および、システム運用計画装置3の動作について説明する。
 システム運用計画装置3では、状態管理部204は、対象システム911に関するシステム状態情報として、対象システム911のIDと共に、対象システム911の運用状態と抽象的な要件と現在の因子水準と目的の因子水準と現在のシステム構成とを記録する。
 システム運用計画装置3では、判定部206は、観測された変動因子の値と現在の因子水準との乖離の大きさが、予め定められた閾値よりも大きい場合に、観測された変動因子の値に基づいて目的の因子水準を決定し、状態管理部204が記録する目的の因子水準を更新する。そして、判定部206は、目的の因子水準が変化した旨を、同期制御部201に通知する。
 システム運用計画装置3では、同期制御部201は、判定部206からの通知を受け付けると、抽象的な要件と目的の因子水準と現在のシステム構成とを計画制御部101に通知する。そして、同期制御部201は、計画制御部101から目的のシステム構成と構成変更手順とを取得する。同期制御部201は、取得した構成変更手順を手順実行部202に送付して構成変更を実行させる。対象システム911のシステム構成が変更された後、同期制御部201は、状態管理部204に記録されたシステム状態情報における現在の因子水準の記録を、目的の因子水準の値に更新する。
 システム運用計画装置3では、計画制御部101は、同期制御部201から抽象的な要件と目的の因子水準と現在のシステム構成とを取得すると、抽象的な要件と目的の因子水準とを要件生成部102に送付する。そして、計画制御部101は、要件生成部102から具体的な要件を取得し、取得した具体的な要件を構成設計部103に送付する。そして、計画制御部101は、構成設計部103から目的のシステム構成を取得し、現在のシステム構成と取得した目的のシステム構成とを手順計画部104に送付する。そして、計画制御部101は、手順計画部104から構成変更手順を取得し、目的のシステム構成と構成変更手順とを同期制御部201へ出力する。
 システム運用計画装置3では、要件生成部102は、計画制御部101から抽象的な要件と目的の因子水準を取得すると、取得した目的の因子水準の値を抽象的な要件内の変動因子の値として書き込む。そして、要件生成部102は、変動因子の監視要件を生成することで、具体的な要件を生成して、計画制御部101へ出力する。
 システム運用計画装置3では、構成設計部103は、計画制御部101から具体的な要件を取得すると、具体的な要件に基づいて構成情報を生成し、生成した構成情報を計画制御部101へ出力する。
 システム運用計画装置3では、手順計画部104は、計画制御部101から現在のシステム構成と目的のシステム構成とを取得すると、対象システム911のシステム構成を現在のシステム構成から目的のシステム構成に変更するための構成変更手順を生成する。そして、手順計画部104は、生成した構成変更手順を計画制御部101へ出力する。
 次に、第3の実施形態の効果を説明する。
第3の実施形態によれば、変動因子の値に応じた構成変更を含む一連の運用作業が自動化される。
 以上のように、判定部206は、対象システム911の現在のシステム構成が満たす具体的な要件が示す変動因子の値と、変動因子の値を取得するための観測を行うための構成を用いて得られる変動因子の値との乖離の大きさが所定の閾値よりも大きい場合に、変動因子の値を取得するための観測を行うための構成を用いて得られる変動因子の値に対応している具体的な要件が示す変動因子の値を求めて、対象システム911のシステム構成の変更の要否を判定する。
 システム運用計画装置3によれば、対象システム911のシステム構成の変更の要否の判定を自動的に行うことができる。
<第4の実施形態>
 図25は、第4の実施形態に係るシステム運用計画装置の構成の例を示す図である。図25に示す構成で、システム運用計画装置610は、要件生成部611を備える。
 かかる構成で、要件生成部611は、運用対象のシステムである対象システムの運用時に変化する値であって、対象システムの動作状況と相関性を有する変動因子の値が、対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、変動因子範囲に含まれる変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、対象システムが満たすべき要件を示す情報である具体的な要件を生成する。
 システム運用計画装置610によれば、対象システムの運用時に対象システムのシステム構成を変更するか否かを自動で判定するための判定基準として、複数の具体的な要件のそれぞれが示す変動因子の値を用いることができる。具体的な要件を満たすシステム構成を設計することで、変動因子の値が、その具体的な要件が示す変動因子の値であるときに適したシステム構成を得ることができる。
 特に、システム運用計画装置610では、変動因子は特定の分野のものに限定されない。システム運用計画装置610によれば、いろいろな分野の対象システムについて、対象システムのシステム構成を変更するか否かを自動で判定するための判定基準を得ることができる。
<第5の実施形態>
 図26は、第5の実施形態に係る表示装置の構成の例を示す図である。図26に示す構成で、表示装置620は、表示部621を備える。
 かかる構成で、表示部621は、運用対象のシステムである対象システムの運用時に値が変化し、かつ、その値が対象システムの動作状況と相関性を有する変動因子のリストを表示する。
 表示部621は、表示手段の例に該当する。
 表示装置620によれば、利用者は、変動因子のリストを参照して、変動因子のうち、対象システムのシステム構成を変更するか否かの判定基準に用いる変動因子を選択することができる。
<第6の実施形態>
 第6実施形態に係る表示装置の構成は、第5実施形態に係る表示装置の構成と同様である。第6実施形態の説明では、図26を参照する。
 図26は、第6の実施形態に係る表示装置の構成の例を示す図である。図26に示す構成で、表示装置620は、表示部621を備える。
 かかる構成で、表示部621は、運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、対象システムの運用時にとることが許容される範囲を表示する。
 表示部621は、表示手段の例に該当する。
 表示装置620によれば、利用者は、対象システムによる表示を参照して、変動因子の値が対象システムの運用時にとることが許容されている範囲を確認することができる。
<第7の実施形態>
 第7実施形態に係る表示装置の構成は、第5実施形態に係る表示装置の構成と同様である。第7実施形態の説明では、図26を参照する。
 図26は、第7の実施形態に係る表示装置の構成の例を示す図である。図26に示す構成で、表示装置620は、表示部621を備える。
 かかる構成で、表示部621は、運用対象のシステムである対象システムの運用時に変化する値であって、対象システムの動作状況と相関性を有する変動因子の値を示す座標軸を複数の変動因子のそれぞれについて有する座標空間に、座標軸ごとの前記変動因子の値を示す点を表示する。
 表示装置620によれば、利用者は、複数の変動因子の値を視覚的に把握することができ、この点で、複数の変動因子の値を比較的容易に把握することができる。例えば、利用者は、対象システムのシステム構成の変更の要否の判定の基準に設定されている複数の変動因子の値を比較的容易に把握することができる。
<第8の実施形態>
 図27は、第8の実施形態にかかるシステム運用計画方法における処理の手順の例を示す図である。図27に示すシステム運用計画方法は、要件を生成すること(ステップS611)を含む。
 要件を生成すること(ステップS611)では、コンピュータが、運用対象のシステムである対象システムの運用時に変化する値であって、対象システムの動作状況と相関性を有する変動因子の値が、対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、変動因子範囲に含まれる変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、対象システムが満たすべき要件を示す情報である具体的な要件を生成する。
 図27に示すシステム運用計画方法によれば、対象システムの運用時に対象システムのシステム構成を変更するか否かを自動で判定するための判定基準として、複数の具体的な要件のそれぞれが示す変動因子の値を用いることができる。具体的な要件を満たすシステム構成を設計することで、変動因子の値が、その具体的な要件が示す変動因子の値であるときに適したシステム構成を得ることができる。
 特に、図27に示すシステム運用計画方法によれば、変動因子は特定の分野のものに限定されない。図27に示すシステム運用計画方法によれば、いろいろな分野の対象システムについて、対象システムのシステム構成を変更するか否かを自動で判定するための判定基準を得ることができる。
 図28は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
 図28に示す構成で、コンピュータ700は、CPU710と、主記憶装置720と、補助記憶装置730と、インタフェース740と、不揮発性記録媒体750とを備える。
 上記のシステム運用計画装置1、システム運用計画装置2、システム運用計画装置3、システム運用計画装置610、および、表示装置620のうち何れか1つ以上またはその一部が、コンピュータ700に実装されてもよい。その場合、上述した各処理部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。また、CPU710は、プログラムに従って、上述した各記憶部に対応する記憶領域を主記憶装置720に確保する。各装置と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って通信を行うことで実行される。
 システム運用計画装置1がコンピュータ700に実装される場合、入出力部901、運用計画部100、および、それらの各部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
 また、CPU710は、プログラムに従って、システム運用計画装置1が処理を行うための記憶領域を主記憶装置720に確保する。システム運用計画装置1と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。システム運用計画装置1とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを備え、CPU710の制御に従って各種画像の表示を行い、ユーザ操作を受け付けることで実行される。
 システム運用計画装置2がコンピュータ700に実装される場合、入出力部901、運用計画部100、運用実行部200、対象システム911、および、それらの各部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
 また、CPU710は、プログラムに従って、システム運用計画装置2が処理を行うための記憶領域を主記憶装置720に確保する。システム運用計画装置2と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。システム運用計画装置2とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを備え、CPU710の制御に従って各種画像の表示を行い、ユーザ操作を受け付けることで実行される。
 システム運用計画装置3がコンピュータ700に実装される場合、入出力部901、計画運用部300、対象システム911、および、それらの各部の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
 また、CPU710は、プログラムに従って、システム運用計画装置3が処理を行うための記憶領域を主記憶装置720に確保する。システム運用計画装置3と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。システム運用計画装置3とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを備え、CPU710の制御に従って各種画像の表示を行い、ユーザ操作を受け付けることで実行される。
 システム運用計画装置610がコンピュータ700に実装される場合、要件生成部611の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
 また、CPU710は、プログラムに従って、システム運用計画装置610が処理を行うための記憶領域を主記憶装置720に確保する。システム運用計画装置610と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。システム運用計画装置610とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを備え、CPU710の制御に従って各種画像の表示を行い、ユーザ操作を受け付けることで実行される。
 表示装置620がコンピュータ700に実装される場合、表示部621の動作は、プログラムの形式で補助記憶装置730に記憶されている。CPU710は、プログラムを補助記憶装置730から読み出して主記憶装置720に展開し、当該プログラムに従って上記処理を実行する。
 また、CPU710は、プログラムに従って、表示装置620が処理を行うための記憶領域を主記憶装置720に確保する。表示装置620と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。表示装置620とユーザとのインタラクションは、インタフェース740が表示装置および入力デバイスを備え、CPU710の制御に従って各種画像の表示を行い、ユーザ操作を受け付けることで実行される。
 上述したプログラムのうち何れか1つ以上が不揮発性記録媒体750に記録されていてもよい。この場合、インタフェース740が不揮発性記録媒体750からプログラムを読み出すようにしてもよい。そして、CPU710が、インタフェース740が読み出したプログラムを直接実行するか、あるいは、主記憶装置720または補助記憶装置730に一旦保存して実行するようにしてもよい。
 なお、システム運用計画装置1、システム運用計画装置2、システム運用計画装置3、システム運用計画装置610、および、表示装置620が行う処理の全部または一部を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OS(Operating System)や周辺機器等のハードウェアを含むものとする。
 また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
 以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
 上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
 運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成するシステム運用計画装置。
(付記2)
 前記具体的な要件を生成するに際して、前記対象システムが、前記変動因子の値を取得するための観測を行うための構成を含むという要件を含む前記具体的な要件を生成する、
 付記1に記載のシステム運用計画装置。
(付記3)
 前記具体的な要件のそれぞれについて、その要件を満たす前記対象システムのシステム構成を示す構成情報を生成する構成設計手段
 をさらに備える、付記1または付記2に記載のシステム運用計画装置。
(付記4)
 前記構成情報のうちの1つが示すシステム構成から、前記構成情報のうちのもう1つが示すシステム構成に変更するための手順を示す情報である構成変更手順を生成する手順計画手段
 を更に備える、付記3に記載のシステム運用計画装置。
(付記5)
 前記具体的な要件のそれぞれと、前記対象システムのシステム構成を、その要件を満たすシステム構成に変更するための手順を示す前記構成変更手順とが紐付けられた情報を含む情報である運用計画を生成する計画制御部
 を更に備える、付記4に記載のシステム運用計画装置。
(付記6)
 前記対象システムのシステム構成を、前記変動因子の値を取得するための観測を行うための構成を用いて得られる前記変動因子の値に対応している前記具体的な要件を満たすシステム構成に変更するための手順を示す前記構成変更手順に基づいて前記対象システムのシステム構成を変更する手順実行手段
 をさらに備える、付記4または付記5に記載のシステム運用計画装置。
(付記7)
 前記対象システムの現在のシステム構成が満たす前記具体的な要件が示す前記変動因子の値と、前記変動因子の値を取得するための観測を行うための構成を用いて得られる前記変動因子の値に対応している前記具体的な要件が示す前記変動因子の値とを比較して、前記対象システムのシステム構成の変更の要否を判定する判定手段
 をさらに備える、付記1から6の何れか一つに記載のシステム運用計画装置。
(付記8)
 前記判定手段は、前記対象システムの現在のシステム構成が満たす前記具体的な要件が示す前記変動因子の値と、前記変動因子の値を取得するための観測を行うための構成を用いて得られる前記変動因子の値との乖離の大きさが所定の閾値よりも大きい場合に、前記変動因子の値を取得するための観測を行うための構成を用いて得られる前記変動因子の値に対応している前記具体的な要件が示す前記変動因子の値を求めて、前記対象システムのシステム構成の変更の要否を判定する、
 付記7に記載のシステム運用計画装置。
(付記9)
 運用対象のシステムである対象システムの運用時に値が変化し、かつ、その値が前記対象システムの動作状況と相関性を有する変動因子のリストを表示する表示手段
 を備える表示装置。
(付記10)
 前記リストに示される前記変動因子のうち、前記対象システムの運用時における前記対象システムのシステム構成の変更の要否の判定に用いられる変動因子を指示するユーザ操作を受け付ける操作入力手段
 をさらに備える、付記9に記載の表示装置。
(付記11)
 運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲を表示する表示手段
 を備える表示装置。
(付記12)
 前記変動因子の値が、前記対象システムの運用時にとることが許容される範囲の変更を指示するユーザ操作を受け付ける操作入力手段
 をさらに備える、付記11に記載の表示装置。
(付記13)
 運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値を示す座標軸を複数の前記変動因子のそれぞれについて有する座標空間に、前記座標軸ごとの前記変動因子の値を示す点を表示する表示手段
 を備える表示装置。
(付記14)
 前記表示手段は、前記変動因子の値が、前記対象システムの運用時にとることが許容される範囲を、前記座標空間に表示する
 付記13に記載の表示装置。
(付記15)
 前記座標空間における、前記座標軸ごとの前記変動因子の値を示す点を編集するユーザ操作を受け付ける操作入力手段
 をさらに備える、付記13または14に記載の表示装置。
(付記16)
 コンピュータが、
 運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成する
 ことを含むシステム運用計画方法。
(付記17)
 コンピュータに、
 運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成すること
 を実行させるためのプログラムを記録している記録媒体。
 本発明は、システム運用計画装置、表示装置、システム運用計画方法および記録媒体に適用してもよい。
 1、2、3、610 システム運用計画装置
 100 運用計画部
 101 計画制御部
 102、611 要件生成部
 103 構成設計部
 104 手順計画部
 200 運用実行部
 201 同期制御部
 202 手順実行部
 203 作業実行部
 204 状態管理部
 205 監視部
 206 判定部
 300 計画運用部
 620 表示装置
 621 表示部
 901 入出力部
 911 対象システム

Claims (17)

  1.  運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成するシステム運用計画装置。
  2.  前記具体的な要件を生成するに際して、前記対象システムが、前記変動因子の値を取得するための観測を行うための構成を含むという要件を含む前記具体的な要件を生成する、
     請求項1に記載のシステム運用計画装置。
  3.  前記具体的な要件のそれぞれについて、その要件を満たす前記対象システムのシステム構成を示す構成情報を生成する構成設計手段
     をさらに備える、請求項1または請求項2に記載のシステム運用計画装置。
  4.  前記構成情報のうちの1つが示すシステム構成から、前記構成情報のうちのもう1つが示すシステム構成に変更するための手順を示す情報である構成変更手順を生成する手順計画手段
     を更に備える、請求項3に記載のシステム運用計画装置。
  5.  前記具体的な要件のそれぞれと、前記対象システムのシステム構成を、その要件を満たすシステム構成に変更するための手順を示す前記構成変更手順とが紐付けられた情報を含む情報である運用計画を生成する計画制御部
     を更に備える、請求項4に記載のシステム運用計画装置。
  6.  前記対象システムのシステム構成を、前記変動因子の値を取得するための観測を行うための構成を用いて得られる前記変動因子の値に対応している前記具体的な要件を満たすシステム構成に変更するための手順を示す前記構成変更手順に基づいて前記対象システムのシステム構成を変更する手順実行手段
     をさらに備える、請求項4または請求項5に記載のシステム運用計画装置。
  7.  前記対象システムの現在のシステム構成が満たす前記具体的な要件が示す前記変動因子の値と、前記変動因子の値を取得するための観測を行うための構成を用いて得られる前記変動因子の値に対応している前記具体的な要件が示す前記変動因子の値とを比較して、前記対象システムのシステム構成の変更の要否を判定する判定手段
     をさらに備える、請求項1から6の何れか一項に記載のシステム運用計画装置。
  8.  前記判定手段は、前記対象システムの現在のシステム構成が満たす前記具体的な要件が示す前記変動因子の値と、前記変動因子の値を取得するための観測を行うための構成を用いて得られる前記変動因子の値との乖離の大きさが所定の閾値よりも大きい場合に、前記変動因子の値を取得するための観測を行うための構成を用いて得られる前記変動因子の値に対応している前記具体的な要件が示す前記変動因子の値を求めて、前記対象システムのシステム構成の変更の要否を判定する、
     請求項7に記載のシステム運用計画装置。
  9.  運用対象のシステムである対象システムの運用時に値が変化し、かつ、その値が前記対象システムの動作状況と相関性を有する変動因子のリストを表示する表示手段
     を備える表示装置。
  10.  前記リストに示される前記変動因子のうち、前記対象システムの運用時における前記対象システムのシステム構成の変更の要否の判定に用いられる変動因子を指示するユーザ操作を受け付ける操作入力手段
     をさらに備える、請求項9に記載の表示装置。
  11.  運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲を表示する表示手段
     を備える表示装置。
  12.  前記変動因子の値が、前記対象システムの運用時にとることが許容される範囲の変更を指示するユーザ操作を受け付ける操作入力手段
     をさらに備える、請求項11に記載の表示装置。
  13.  運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値を示す座標軸を複数の前記変動因子のそれぞれについて有する座標空間に、前記座標軸ごとの前記変動因子の値を示す点を表示する表示手段
     を備える表示装置。
  14.  前記表示手段は、前記変動因子の値が、前記対象システムの運用時にとることが許容される範囲を、前記座標空間に表示する
     請求項13に記載の表示装置。
  15.  前記座標空間における、前記座標軸ごとの前記変動因子の値を示す点を編集するユーザ操作を受け付ける操作入力手段
     をさらに備える、請求項13または14に記載の表示装置。
  16.  コンピュータが、
     運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成する
     ことを含むシステム運用計画方法。
  17.  コンピュータに、
     運用対象のシステムである対象システムの運用時に変化する値であって、前記対象システムの動作状況と相関性を有する変動因子の値が、前記対象システムの運用時にとることが許容される範囲である変動因子範囲を示す情報を含み、前記対象システムが満たすべき要件を示す情報である抽象的な要件に基づいて、前記変動因子範囲に含まれる前記変動因子の複数通りの値のそれぞれについて、その値を示す情報を含み、前記対象システムが満たすべき要件を示す情報である具体的な要件を生成すること
     を実行させるためのプログラムを記録している記録媒体。
PCT/JP2022/021890 2022-05-30 2022-05-30 システム運用計画装置、表示装置、システム運用計画方法および記録媒体 WO2023233451A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/021890 WO2023233451A1 (ja) 2022-05-30 2022-05-30 システム運用計画装置、表示装置、システム運用計画方法および記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/021890 WO2023233451A1 (ja) 2022-05-30 2022-05-30 システム運用計画装置、表示装置、システム運用計画方法および記録媒体

Publications (1)

Publication Number Publication Date
WO2023233451A1 true WO2023233451A1 (ja) 2023-12-07

Family

ID=89025889

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/021890 WO2023233451A1 (ja) 2022-05-30 2022-05-30 システム運用計画装置、表示装置、システム運用計画方法および記録媒体

Country Status (1)

Country Link
WO (1) WO2023233451A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007323401A (ja) * 2006-06-01 2007-12-13 Kagawa Univ データ処理装置,データ復元装置,データ処理方法及びデータ復元方法
WO2015008378A1 (ja) * 2013-07-19 2015-01-22 株式会社日立製作所 設計支援システム、設計支援方法及びそのプログラムが格納された記憶媒体
JP2018128866A (ja) * 2017-02-08 2018-08-16 富士通株式会社 情報処理装置、情報処理プログラム、情報処理方法及び情報処理システム
WO2018230352A1 (ja) * 2017-06-14 2018-12-20 日本電気株式会社 変更手順生成装置、変更手順生成方法および変更手順生成プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007323401A (ja) * 2006-06-01 2007-12-13 Kagawa Univ データ処理装置,データ復元装置,データ処理方法及びデータ復元方法
WO2015008378A1 (ja) * 2013-07-19 2015-01-22 株式会社日立製作所 設計支援システム、設計支援方法及びそのプログラムが格納された記憶媒体
JP2018128866A (ja) * 2017-02-08 2018-08-16 富士通株式会社 情報処理装置、情報処理プログラム、情報処理方法及び情報処理システム
WO2018230352A1 (ja) * 2017-06-14 2018-12-20 日本電気株式会社 変更手順生成装置、変更手順生成方法および変更手順生成プログラム

Similar Documents

Publication Publication Date Title
CN110050257B (zh) 可执行数据流图的差分
AU2015292700B2 (en) Data lineage summarization
JP2020507157A (ja) システムの自動化および制御に対するコグニティブエンジニアリング技術のためのシステムおよび方法
KR100934866B1 (ko) 전력 계통의 감시데이터 수집 및 운영 시스템과 그 방법
US8316305B2 (en) Configuring a service based on manipulations of graphical representations of abstractions of resources
US20130173324A1 (en) System And Method For Workflow Management With Configurable States And Extensibility
US11314554B2 (en) System and method for grouping nodes by analyzing and associating nodes of a computer system by shared characteristics
US11409809B2 (en) Visualizing data center inventory and entity relationships
JP5514643B2 (ja) 障害原因判定ルール変化検知装置及びプログラム
KR101888472B1 (ko) BPM 기반의 IoT DIY 시스템 및 이의 구현방법
WO2023233451A1 (ja) システム運用計画装置、表示装置、システム運用計画方法および記録媒体
JP2845618B2 (ja) エキスパートシステム
CN114528186A (zh) 一种模型管理方法、装置及模型管理服务器
JP2013206368A (ja) 仮想環境運用支援システム
US20180018364A1 (en) Common analytic framework and environment for big data analytics
CN109062772A (zh) 集群指标告警的实现方法及集群指标告警系统
KR102300005B1 (ko) 소프트웨어 컴포넌트를 표현하는 각각의 그래픽 객체 간의 연결 조작을 이용한 소프트웨어 개발 어시스트 방법 및 그 시스템
Henning Prototype of a scalable monitoring infrastructure for Industrial DevOps
Poinet et al. Web-based distributed design to fabrication workflows
CN202584128U (zh) It运维系统知识库的修改管理系统
Papakostas et al. A flexible agent based framework for manufacturing decision-making
De Pauw et al. Visualizing large-scale streaming applications
CN103383684A (zh) It运维系统知识库的修改管理系统
JPS62197826A (ja) システムフロ−仕様生成方式
JP2019205080A (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: 22944741

Country of ref document: EP

Kind code of ref document: A1