System operation planning device, display device, system operation planning method and program
Patent Information
- Application Number
- JP2024524517
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-05-30
- Filing Date
- 2022-05-30
- Publication Date
- 2025-02-14
- Estimated Expiration
- 2042-05-30
Abstract
Description
System operation planning device, display device, system operation planning method and recording medium
[0001] The present invention relates to a system operation planning device, a display device, a system operation planning method, and a recording medium.
[0002] Technologies related to the design or operation of systems such as ICT (Information and Communication Technology) systems have been proposed. For example, Non-Patent Document 1 describes a technology related to automatic system design. Furthermore, Patent Documents 1 to 3 describe technologies related to procedures for transitioning the states of a group of state machines. Furthermore, Non-Patent Documents 2 to 5 describe technologies related to system or network status monitoring.
[0003] Japanese Patent Publication No. 2015-215885 Japanese Patent Publication No. 2015-215886 Japanese Patent Publication No. 2015-215887
[0004] Takayuki Kuroda and seven others, "Acquiring knowledge for ICT system design using machine learning," IEICE Transactions on Information and Communication Engineers, Vol. J104-B, No. 3, pp. 140-151, 2021. Zhaowei Xi and seven others, "Newton: Intent-Driven Network Traffic Monitoring," IEEE / ACM Transactions on Networking, DOI: 10.1109 / TNET.2021.3128557, 2021. Fumio Teraoka and two others, "Network Ontology Bonsai and a Study on Its Applications," IEICE Technical Report IA2021-55 (2022-01), 2022. Kengo Tajiri and three others, "Dividing deep learning model for continuous anomaly detection of inconsistent ICT systems," NOMS 2020 - 2020 IEEE / IFIP Network Operations and Management Symposium, 2020. K. Abbas, and 3 others, "Network Slice Lifecycle Management for 5G Mobile Networks: An Intent-Based Networking Approach", IEEE Access, vol. 9, DOI: 10.1109 / ACCESS.2021.3084834, 2021.
[0005] It is preferable to provide a criterion for automatically determining whether or not to change the system configuration during system operation.
[0006] 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.
[0007] According to a first aspect of the present invention, a system operation planning device generates specific requirements, which are information indicating the requirements that the target system must satisfy, based on abstract requirements that include information indicating a variable factor range, which is a range within which values of variable factors that change during operation of a target system, which is a system to be operated and are correlated with the operating status of the target system, are acceptable to take during operation of the target system, and which include information indicating the values of the variable factors for each of multiple values included in the variable factor range.
[0008] According to a second aspect of the present invention, the display device comprises a display means for displaying a list of variable factors whose values change during operation of a target system, which is a system to be operated, and whose values are correlated with the operating status of the target system.
[0009] According to a third aspect of the present invention, the display device comprises a display means for displaying the range of values of 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, within which the value of the variable factor is permissible during operation of the target system.
[0010] According to a fourth aspect of the present invention, the display device comprises a display means for displaying points indicating the values of the variable factors for each of a plurality of variable factors in a coordinate space having coordinate axes for each of the variable factors, the coordinate axes indicating the values of the variable factors that change during operation of a target system, which is a system to be operated, and that have a correlation with the operating status of the target system.
[0011] According to a fifth aspect of the present invention, a system operation planning method includes a computer generating, based on abstract requirements that indicate requirements that the target system must satisfy, specific requirements that include information indicating the values of each of a plurality of values of the variable factors included in the variable factor range, the specific requirements being information indicating the requirements that the target system must satisfy, and including information indicating the values of the variable factors that change during operation of a target system, which is a system to be operated, and that have a correlation with the operating status of the target system.
[0012] According to a sixth aspect of the present invention, a recording medium records a program for causing a computer to execute the following: generating specific requirements, which are information indicating the requirements that the target system must satisfy, based on abstract requirements that are information indicating the requirements that the target system must satisfy, and which include information indicating the values of each of multiple values of the variable factors included in the variable factor range, and which include information indicating the values of the variable factors that change during operation of a target system, which is a system to be operated and which are correlated with the operating status of the target system, within which the values are acceptable during operation of the target system;
[0013] According to the present invention, it is possible to set a criterion for automatically determining whether or not to change the system configuration during system operation.
[0014] 1 is a block diagram showing an example of a functional configuration of a system operation planning device according to the first embodiment. FIG. 1 is a diagram for explaining an overview of a process in which an operation plan unit according to the first embodiment generates an operation plan. FIG. 2 is a diagram showing an example of an expression of abstract requirements according to the first embodiment. FIG. 3 is a diagram showing an example of a specific requirement according to the first embodiment. FIG. 4 is a diagram showing an example of a matrix of specific requirements according to the first embodiment. FIG. 5 is a diagram showing an example of definition information of a variation factor according to the first embodiment. FIG. 6 is a diagram showing examples of component type definition information and relationship type definition information according to the first embodiment. FIG. 7 is a diagram showing a first example of configuration information according to the first embodiment. FIG. 8 is a diagram showing a second example of configuration information according to the first embodiment. FIG. 9 is a diagram showing an example of difference information derived from a configuration pair according to the first embodiment. FIG. 10 is a diagram showing an example of a state transition system derived from the difference information exemplified in FIG. 10. FIG. 11 is a diagram showing an example of component type definition information including a definition of a state transition system according to the first embodiment. FIG. 12 is a diagram showing an example of a configuration change procedure derived from a state transition system according to the first embodiment. FIG. 13 is a diagram showing an example of an operation plan according to the first embodiment. FIG. 14 is a flowchart showing an example of a processing procedure performed by the operation planning unit according to the first embodiment. FIG. 15 is a flowchart showing an example of a processing procedure performed by the configuration design unit according to the first embodiment. FIG. 1 is a diagram showing an example of a GUI (Graphical User Interface) presented to a user by an operation planner according to the first embodiment. FIG. 2 is a block diagram showing an example of the functional configuration of a system operation planning device according to a second embodiment. FIG. 3 is a diagram showing an example of system state information recorded in a state management unit according to the second embodiment. FIG. 4 is a flowchart showing an example of a processing procedure performed by an operation execution unit according to the second embodiment. FIG. 5 is a flowchart showing an example of a processing procedure in an operation for maintaining the state of a target system in an appropriate state, performed by an operation execution unit according to the second embodiment. FIG. 6 is a flowchart showing an example of a processing procedure performed by a determination unit according to the second embodiment. FIG. 7 is a block diagram showing an example of the functional configuration of a system operation planning device according to a third embodiment. FIG. 8 is a diagram showing an example of the configuration of a system operation planning device according to a fourth embodiment.FIG. 10 is a diagram illustrating an example of the configuration of a display device according to a fifth to seventh embodiments. FIG. 11 is a diagram illustrating an example of a processing procedure in a system operation planning method according to an eighth embodiment. FIG. 12 is a schematic block diagram illustrating the configuration of a computer according to at least one embodiment.
[0015] The following describes embodiments of the present invention, but the following embodiments do not limit the scope of the invention as claimed. Furthermore, not all of the combinations of features described in the embodiments are necessarily essential to the solution of the invention.
[0016] In the first embodiment, a case where a system operation planning device implements up to a system operation plan will be described. On the other hand, in the second and third embodiments, a case where a system operation planning device implements not only a system operation plan but also system operation will be described.
[0017] The configuration of a system operation planning device according to a first embodiment will be described. Fig. 1 is a block diagram showing an example of the functional configuration of the system operation planning device according to the first embodiment. In the configuration shown in Fig. 1, the system operation planning device 1 includes an input / output unit 901 and an operation planning unit 100. The operation planning unit 100 includes a plan control unit 101, a requirements generation unit 102, a configuration design unit 103, and a procedure planning unit 104.
[0018] 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 as a combination of an input device such as a keyboard and a mouse with a display device. In addition to or instead of the function of interfacing with the user, the input / output unit 901 may have a communication function with other devices. The input / output unit 901 may be configured as an input / output device external to the system operation planning apparatus 1, and the input / output device and the planning control unit 101 may be able to communicate with each other.
[0019] The operation planning unit 100 accepts abstract requirements input by a 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. An operation plan is information that indicates a series of processes for building a system that satisfies the abstract requirements and operating the built system so that it maintains the abstract requirements. The system for which the system operation planning device 1 generates an operation plan is also referred to as the target system. The operation planning unit 100 generates an operation plan so that the target system satisfies the abstract requirements.
[0020] The plan control unit 101 generates an operation plan using the functions of the requirements generation unit 102, the configuration design unit 103, and the procedure planning unit 104 based on the received abstract requirements, and outputs the generated operation plan to the input / output unit 901. The requirements generation unit 102 converts the abstract requirements received from the plan control unit 101 into a matrix of specific requirements and outputs the matrix to the plan control unit 101.
[0021] The configuration design unit 103 designs configuration information corresponding to each of the multiple specific requirements received from the plan control unit 101 and outputs the configuration information to the plan control unit 101. The configuration information is information indicating the system configuration. The configuration design unit 103 is an example of a configuration design means.
[0022] The procedure planning unit 104 plans a procedure for changing a system configuration indicated by one piece of configuration information to a system configuration indicated by another piece of configuration information for a plurality of pieces of configuration information received from the planning control unit 101, and outputs the plan to the planning control unit 101. The procedure planning unit 104 corresponds to an example of a procedure planning means.
[0023] As described above, the abstract requirements that are input information to the operation planner 100 are information indicating the requirements for the system that the user wants to build, and in particular, information that includes variable factors. Variable factors are parameters that serve as criteria for selecting the system configuration of the target system and that vary during operation of the target system. Furthermore, variable factors are items (items) whose values change during operation of the target system 911 and whose values correlate with the operating status of the target system 911.
[0024] An example of a variable factor is the frequency of access to the target system. If the frequency of access increases, the target system's computing and network resources must be increased so that it can withstand a higher load. On the other hand, if the frequency of access decreases, the target system can be operated more efficiently by running it with fewer resources, saving power and costs.
[0025] Thus, the variable factor may be a quantity related to a factor affecting the operation of the target system, such as a factor that places a load on the target system, or a measured or calculated value related to the performance of the target system, such as a CPU (Central Processing Unit) load factor or turnaround time of the target system.
[0026] In abstract requirements, instead of specifying a specific value for each variation factor, a range of allowable values is specified. This range is also called a variation factor range. The variation factor range is the range of allowable values that a variation factor can take when the target system 911 is in operation. On the other hand, specific requirements are abstract requirements in which the values of each variation factor are specifically determined. Based on the specific requirements, a specific system configuration can be designed.
[0027] FIG. 2 is a diagram for explaining an overview of the process by which the operation planner 100 generates an operation plan. Part (a) of FIG. 2 shows the variation factors indicated in the abstract requirements and the range of values (range from minimum to maximum) that each variation factor can take. As described above, the range of values that each variation factor can take is also indicated in the abstract requirements. Note that 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, an example is described in which two types of variation factors are represented on a two-dimensional plane, but the variation factors handled by the operation planner 100 are not limited to two types.
[0028] Part (b) of FIG. 2 shows an example of setting specific requirements in addition to the range of values that the variation factors can take. In part (b) of FIG. 2, specific requirements are indicated by white circles (○), such as white circle a11. The operation planner 100 may set the specific requirements. In the example shown in part (b) of FIG. 2, the operation planner 100 equally divides the range of values that each variation factor can take into multiple intervals, and sets sets of specific variation factor values that correspond to the boundaries of the intervals. By setting sets of specific variation factor values, a matrix of specific requirements can be obtained in which the set variation factor values are the variation factor values of the original abstract requirement.
[0029] However, the method for setting the sets of specific variation factor values in setting the specific requirements is not limited to a specific method. Furthermore, the arrangement of the sets of specific variation factor values is not limited to a grid-like arrangement such as the example of part (b) of FIG. 2. For example, the operation planner 100 may thin out the sets of specific variation factor values for a portion of the range of values that the variation factors can take where the impact of changes in the values of the variation factors on the system configuration is relatively small. That is, the operation planner 100 may thin out the specific requirements.
[0030] Furthermore, after the operation planning unit 100 sets a set of specific variable factor values, it may present the set of variable factors that has been set to a user and accept editing of the set of specific variable factor values by the user. For example, the operation planning unit 100 may accept changes to the position of, addition to, and deletion of the set of specific variable factor values.
[0031] Part (c) of Fig. 2 shows an example of specific configuration information and configuration change procedure settings, in addition to the range of values that the variation factors can take. Part (c) of Fig. 2 shows specific configuration information with black circles (●) such as black circle a12, and configuration change procedure settings between specific configuration information with arrows such as arrow a13.
[0032] In the example shown in part (c) of Figure 2, the operation planner 110 designs specific configuration information for each specific requirement. Furthermore, the operation planner 110 plans a work procedure for changing the configuration from one of two adjacent pieces of configuration information to the other. In this way, the operation planner 110 formulates an operation plan.
[0033] It is expected that the operation plan generated by the operation planner 110 will determine an appropriate system configuration for the target system based on the values of the variable factors within a specified range of the variable factors, and extract procedures for changing the current system configuration to an appropriate system configuration. 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.
[0034] To operate a system based on the operation plan generated by the operation plan unit 110, it is necessary to continuously monitor the values of the fluctuation factors. Therefore, the requirements generation unit 102 inserts monitoring requirements for each fluctuation factor into specific requirements. The configuration design unit 103 designs the system configuration of the target system, including monitoring functions for each fluctuation factor, based on the added monitoring requirements.
[0035] Next, the data used by the system operation planning apparatus 1 will be described. In the first embodiment, the requirements of the target system are described, for example, by abstract configuration information. Abstract configuration information is a general term for configuration information in which some or all elements are described by abstract elements, and configuration information in which the specification of other elements on which some or all elements depend is omitted. Configuration information is information that indicates the components that make up the system and the relationships between the components.
[0036] The parts that make up a system are called component parts. The relationships between parts are also simply called relationships. Component parts and relationships are also collectively referred to as components. Component parts can be concrete or abstract.
[0037] A concrete component is a component whose type can be uniquely identified. An example of a concrete 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).
[0038] An abstract component is a component that collectively refers to multiple types of components. An example of an abstract component is AppServer. By specifying an abstract component as a requirement for the target system, or by omitting to specify other components on which a component depends, it is possible to concisely and accurately express conditions that include flexibility, such as "any AppServer product will do." On the other hand, when building a system, the configuration information must be concrete. In other words, all components must be concrete, and other dependent components must be present.
[0039] The configuration information can be described in a graph format with components as nodes and relationships as edges. Each component further includes related information such as type information indicating its type and properties indicating its attribute values.
[0040] FIG. 3 shows an example of expressing abstract requirements. Part (a) of FIG. 3 shows an example of expressing abstract requirements graphically. Part (b) of FIG. 3 shows an example of expressing abstract requirements textually. The configuration of abstract requirements shown in FIG. 3 includes one component with "myWebApp" as its ID (Identifier). This indicates the user's intent to request the construction of a system on which "myWebApp" runs and the maintenance of the operation of "myWebApp."
[0041] Furthermore, in abstract requirements, each component can have information on any number of variation factors as properties. In abstract requirements, the type of variation factor and the range of values allowed for that variation factor are specified for each variation factor. In the example abstract requirement shown in Figure 3, "myWebApp" includes two properties: "accesses per second" and "load per request." In part (a) of Figure 3, these two properties are shown as variation factors. In part (b) of Figure 3, these two properties are designated as variation factors by setting "Is a variation factor" to "True." The range of values allowed for "accesses per second" is specified as 10 to 1000. The range of values allowed for "load per request" is specified as 100 to 500.
[0042] As described above, the operation planner 100 can generate a matrix of specific requirements based on abstract requirements. The content of each specific requirement is basically the same as the abstract requirement, but the variation factors are replaced with general properties and variation factor monitoring requirements, and specific values are assigned to the property values instead of ranges.
[0043] Figure 4 is a diagram showing examples of specific requirements. The specific requirements shown in Figure 4 follow the abstract requirements shown in Figure 3, but the variation factors have been replaced with general properties and monitoring requirements. "Accesses per second" and "Load per request" are set as properties derived from variation factors. 10 is set as the specific value for "Accesses per second." 100 is set as the specific value for "Load per request."
[0044] Regarding the monitoring requirements for each variable factor, "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" is shown by a monitored-target relationship, with "accesses per second" and "load per request" as the connection source and "myWebApp" as the connection destination. A notation with a "$" at the beginning, such as "$myWebApp", represents a reference to a component such as "myWebApp".
[0045] The specific requirement including a component having a function of monitoring a variation factor corresponds to an example of a specific requirement including a requirement that the target system 911 include a configuration for performing observation to obtain the value of the variation factor. In other words, by designing the system configuration of the target system 911 so as to satisfy the specific requirement including a component having a function of monitoring a variation factor, a system configuration including a configuration for performing observation to obtain the value of the variation factor can be obtained. The observation here may be a process for obtaining the value of a variation factor or a value related thereto, such as measuring or counting the value of the variation factor or a value related thereto.
[0046] The matrix of specific requirements is a set of specific requirements with different values of the variation factors. FIG. 5 is a diagram showing an example of the matrix of specific requirements. In the example shown in FIG. 5, the matrix of specific requirements is defined by an array of specific requirements as part of an operational plan. Each element of the array consists of an item "variation factor" and an item "requirement." A set of values of the variation factors is defined in the item "variation factor," and a specific requirement is defined in the item "requirement."
[0047] As described above, the values of the variation factors of each element of the array may be generated by dividing the range of values of the variation factors defined in the abstract requirements into multiple intervals. In the example shown in Fig. 5, the operation planner 100 divides each of the two variation factors into two intervals, thereby generating three values for each variation factor, and then generates nine sets of values and specific requirements by combining the generated values of each variation factor.
[0048] The user defines type information of the variation factors in advance so that the user can define abstract requirements and the operation planning unit 100 can generate specific requirements based on the abstract requirements. The type information of the variation factors includes the type name, value type, value observation method, value unit, base value that is the value to be used in the configuration at the time of initial construction, and definition as a component part.
[0049] The value type in the type information for a variation factor is the type of the value of that variation factor. An integer or a boolean value may be specified as the value type. The method for specifying the value range and the method for dividing the value intervals to generate specific requirements differ for each value type. These are determined in advance for each value type. In the case of an integer, a maximum and minimum value can be set and then divided into multiple intervals. In the case of a Boolean, there is no particular method for specifying the range; the interval division simply needs to indicate true and false.
[0050] The observation method in the type information of a variation factor is the method for observing the value of the variation factor during operation. The observation method may be specified as "monitoring" or "user input". If the observation method is "monitoring", it indicates that the value is obtained by monitoring the system during operation. If the observation method is "user input", it indicates that the user specifies the value of the variation factor via an input / output device.
[0051] The observation method of "user input" can be used as a switch to change 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 the monitoring requirements, and must be set when the observation method is "monitoring."
[0052] FIG. 6 is a diagram showing an example of definition information for a variation factor. Part (a) of FIG. 6 shows an example of definition information for the "accesses per second type." Part (b) of FIG. 6 shows an example of definition information for the "load per request type." For both the "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." As the "unit" of the value, "times / s" is set for the "accesses per second type," and "processing volume / request" is set for the "load per request type."
[0053] For both the "accesses per second type" and the "load per request type," "$minimum value" is specified as the "base value." As mentioned above, the base value indicates the value that should be used as the value of the variation factor for the system configuration when the target system is first built. "$minimum value" indicates that the minimum value of the variation factor defined in the abstract requirements is quoted.
[0054] The notation for "Component Definition" is generally similar to that for general component type definitions. However, the notation "$_target" is used in "Component Definition" to refer to the component to which the original variable factors were 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 relationships among the components for the specific requirements exemplified in Figure 4.
[0055] The description "-type: monitored target" in the description of "relationship" for "access count per second" in Fig. 4 can be generated by copying the description "-type: monitored target" in the "relationship" of the definition information for the variable factor "access count per second" shown in part (a) of Fig. 6. Also, the description "destination: $myWebApp" in Fig. 4 can be generated by replacing "$_target" in the description "destination: $_target" in part (a) of Fig. 6 with "$myWebApp" which indicates the target of access count per second in the specific requirements shown in Fig. 4.
[0056] To design configuration information based on specific requirements, component type definition information and relationship type definition information are used. Both component type definition information and relationship type definition information include information on the inheritance source, abstract flag, properties, and expected peripheral configuration definition. Relationship types also include information on the types of components that can be placed at both ends of the relationship.
[0057] The type of another component may be set as the inheritance source, which has the following two effects. First, the type information of the component being defined is considered to be based on the type information of the inheritance source component, overwritten by the information specified in the type definition of the component being defined. Second, the component being defined is considered to be a type of inheritance source component, and is considered to be one of the options for that specific component when the inheritance source component is specified in a requirement. In other words, when designing configuration information based on requirements specifying the inheritance source component, the inheriting component may be adopted as a specific component. The abstract flag is a flag indicating whether the component is abstract or concrete. The properties are the types and values of the attributes that the component has. The expected peripheral configuration is the peripheral configuration that must be met for the component to function correctly, and multiple variations may be set.
[0058] 7A and 7B are diagrams showing examples of component type definition information and relationship type definition information. Part (a) of Fig. 7 shows definition information of a component of type "MyWebApp" as an example of component type definition information. Part (b) of Fig. 7 shows definition information of a relationship of type "HostedOn<*, Server>" as an example of relationship type definition information.
[0059] In the example shown in part (a) of Figure 7, "WebApp" is set as the inheritance source of the "MyWebApp" type. Because the abstract flag is set to "false", components of the "MyWebApp" type are treated as concrete components. "Accesses per second" and "Load per request" are defined as properties of the "MyWebApp" type component. In addition, only "Basic Configuration" is specified as the expected peripheral configuration. "Basic Configuration" indicates that the component (the component being defined) must be connected to a component of the "AppServer" type via a HostedOn<*, VM> type relationship. Note that "$_self" indicates the component itself.
[0060] In the example shown in part (b) of Figure 7, the "HostedOn<*, Server>" type relationship specifies the source type as "*" and the destination type as "Server". "*" indicates any type. The "abstract flag" is "false". Furthermore, the "inheritance source", "properties", and "expected peripheral configuration" are all "none".
[0061] Configuration information is a graph-formatted representation of components and their relationships, with all components concrete and the expected peripheral configurations met. Figure 8 shows a first example of configuration information. In the example shown in Figure 8, MyWebApps is connected to Tomcat, a type of Application Server, through the HostedOn<*, AppServer> relationship. Tomcat is similarly connected to Ubuntu, a specific OS. Ubuntu is similarly connected to VM1, a specific Virtual Machine (VM).
[0062] The function to monitor the number of accesses per second is embodied as an Access Count Agent that monitors access_log.txt, one of Tomcat's execution logs. The Access Count Agent is connected to access_log.txt and Ubuntu. The function to monitor the load per request is embodied as a Load Agent that measures the processing volume of a specific process on Ubuntu. The Load Agent is connected to Ubuntu.
[0063] 8 shows a small-scale system configuration in which MyWebApp is implemented using a single virtual machine. This system configuration is generated based on specific requirements, such as a fluctuation factor value of 10 for the number of accesses per second and a load per request of 10.
[0064] 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 is configured to be redundant with two virtual machines, and a load balancer (LB) is provided in front of it. The monitoring function is configured to measure the number of accesses per second to the load balancer and the load per request for each MyWebApp.
[0065] Next, we will explain data related to planning procedures for changing from one system configuration to another. When planning a configuration change procedure, the operation planner 100 first generates configuration difference information, which is information about the differences between two system configurations. The configuration difference information is also simply referred to as difference information.
[0066] Next, the operation planner 100 generates information about a state transition system based on the system configuration and the difference between them. Based on the information about the state transition system, the operation planner 100 calculates and derives a state transition procedure that transitions from the current state to the target state with the fewest number of state transitions. The current state indicates the system configuration before the configuration change. The target state indicates the system configuration after the configuration change.
[0067] The difference information is information in which labels such as newly added, maintained as is, or deleted are added to each component in the configuration information that is created by integrating, without overlap, the components included in the configuration information that indicates the current system configuration and the components included in the configuration information that indicates the target system configuration. 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.
[0068] The labels referred to here indicate information such as newly added, maintain status quo, or deleted. Labels are assigned 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 assigned to a component that is not included in the current system configuration but is included in the target system configuration. A maintain status quo label is assigned to a component that is included in both the current and target system configurations. A delete label is assigned to a component that is included in the current system configuration but not in the target system configuration.
[0069] Furthermore, labels such as "update" may be provided. When the "update" label is included, among the components included in both the current system configuration and the target system configuration, components that have the same property values are labeled "maintain status quo," and components whose property values have changed are labeled "update." In the following examples, to make the explanation easier to understand, the "update" label is not used.
[0070] Fig. 10 is a diagram showing an example of difference information derived from a configuration pair. 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.
[0071] In Fig. 10, differences in labels are expressed by different line types. Components drawn with a single solid line are components that will remain as they are. Components drawn with a double solid line are components that will be newly added. Components drawn with a dotted line are components that will be deleted.
[0072] The state transition system information is information that associates the states that each component included in the configuration information can take and the state transitions that can occur with dependencies, and indicates the current state and the target state of each component. In the state transition system information, each component has any number of states and information on the transitions that can be taken between any pair of states.
[0073] Dependencies can also be defined for state transitions in each component. Dependencies are specified from a state transition in one component to a specific state of another component, and express a condition that the former transition can only be executed when the latter state is in effect. The condition for executing a particular transition may be specified by the states of multiple components.
[0074] The current state and the destination state of each component can be determined based on the label of the component. Rules that define the relationship between the label and the current and destination states can be defined in advance, and the current and destination states can be determined according to the label in accordance with these rules.
[0075] For example, if a component has two states, "on" and "off," then if it is a newly added component, the current state is "off" and the target state is "on." If it is a component that will remain as is, both the current state and the target state are "on." If it is a component that will be deleted, the current state is "on" and the target state is "off."
[0076] FIG. 11 shows an example of a state transition system derived from the difference information exemplified in FIG. 10. In the example shown in FIG. 11, all components have two states: "on" and "off." On the other hand, in the example shown in FIG. 11, the relationships do not have a state transition system. In FIG. 11, one rectangle shows the state transition system of one component. An ellipse represents a state. A solid arrow connecting two ellipses represents a state transition. A dashed arrow drawn from a state transition to a state represents a dependency.
[0077] The text inside the oval indicates the name of the state. If the state name is underlined, it indicates that the state is the current state. A black oval indicates that the state is the target state. The current state of a component that is newly added in the difference information is "off" and the target state is "on". The current and target states of a component that is maintained as is in the difference information are both "on". The current state of a component that is deleted in the difference information is "on" and the target state is "off".
[0078] The content 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. For example, in addition to the content of the component type, the type information of the component may further define information on the state transition system and state dependencies.
[0079] Fig. 12 is a diagram showing an example of component type definition information including a definition of a state transition system. The "MyWebApp" type component shown in Fig. 12 includes a definition of a state transition system, with "off" and "on" defined as states. The state definition indicates information about the transition destination for each state. "on" is defined as the transition destination from "off". "off" is defined as the transition destination from "on".
[0080] For each transition, a description and an action are further defined as information about the transition from the original state to the destination state. For example, the description for the transition from "off" to "on" is "Deploy MyWebApp" and the action is set to start. Similarly, the description for the transition from "on" to "off" is "Remove MyWebApp" and the action is set to stop.
[0081] Additionally, a state dependency is specified in the "Expected Peripheral Configuration" item. Specifically, it specifies that the state transition of MyWebApp itself from "off" to "on" depends on the appServer, on which MyWebApp is deployed, being in the "on" state. "$_self" represents the component being defined. The description "off->on" represents the state transition from the "off" state to the "on" state. The description "$appServer.on" represents the "on" state of the component referenced by "$appServer". The fact that appServer is the deployment destination of MyWebApp is expressed by specifying "$appServer" as the connection destination in the HostedOn<*, VM> type relationship for "$_self".
[0082] By using the contents of the state transition system of each component and the information on the dependencies between the state transition systems, it is possible to derive information on the state transition system from the difference information. In other words, it is possible to introduce the state transition system of each component shown in the difference information and add dependencies between the state transition systems based on the state dependency specifications.
[0083] A configuration change procedure is information that links multiple tasks based on their dependencies, and can be expressed using a directed acyclic graph. Figure 13 is a diagram showing an example of a configuration change procedure derived from a state transition system. In the example shown in Figure 13, rectangles represent tasks, and solid arrows drawn between tasks indicate the order in which the tasks are performed.
[0084] 13, it is instructed that "Starting NW1" be performed first. Then, it is instructed that tasks related to each virtual machine be performed sequentially. Since no dependency is indicated between the tasks related to each virtual machine, it can be seen that these tasks can be performed in parallel.
[0085] Using information about the state transition system, it is possible to calculate a procedure for converting the current system configuration to a target system configuration. That is, it is necessary to calculate the shortest state transition procedure that transitions the states of the state transition systems of all components from the current state to the target state while satisfying dependencies. Patent Document 2 shows that this problem reduces to a type of shortest path search problem. Operations defined for each transition appearing in the derived state transition procedure are introduced, and dependencies are also added in the information about the configuration change procedure to the operations between state transition systems that are related by dependencies in the information about the state transition system.
[0086] 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, elements with "none" for variable factors and configuration represent the initial state before the system is built.
[0087] In an operation plan, a set of variation factor values is associated with a system configuration on a one-to-one basis. Therefore, the set of variation factor values shown for each system configuration in an operation plan is unique within that operation plan and serves as the ID of that system configuration. When specifying a different system configuration to be changed from a system configuration, the set of variation factor values is used as the ID of the destination system configuration. By identifying the set of variation factor values that will serve as the ID of the source system configuration and the set of variation factor values that will serve as the ID of the destination system configuration, the configuration change procedure to be used for that change can be read from the operation plan. Of the above data, the data that is entered manually is the abstract requirements, the component type definition information, and the variation factor definition information; the other data is automatically generated.
[0088] Next, the operation of the system operation planning apparatus 1 will be described. Fig. 15 is a flowchart showing an example of the procedure of processing performed by the operation planning unit 100. In the processing shown in Fig. 15, the plan control unit 101 acquires abstract requirements input by a user via the input / output unit 901 (step S101). The plan control unit 101 outputs the acquired abstract requirements to the requirements generation unit 102, and the requirements generation unit 102 generates a matrix of specific requirements from the acquired abstract requirements (step S102).
[0089] When generating a matrix of specific requirements from abstract requirements, the requirements 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. The intervals may be equally divided into a predetermined number of intervals.
[0090] However, as described above, the method for setting the sets of specific variation factor values is not limited to a specific method. Furthermore, the arrangement of the sets of specific variation factor values is not limited to a grid-like arrangement such as the example of part (b) of FIG. 2. For example, the operation planner 100 may thin out the sets of specific variation factor values for a portion of the range of values that the variation factors can take where the impact of changes in the values of the variation factors on the system configuration is relatively small. That is, the operation planner 100 may thin out the specific requirements.
[0091] Furthermore, after the operation planning unit 100 sets a set of specific variable factor values, it may present the set of variable factors that has been set to a user and accept editing of the set of specific variable factor values by the user. For example, the operation planning unit 100 may accept changes to the position of, addition to, and deletion of the set of specific variable factor values.
[0092] Next, the requirements generation unit 102 generates an array consisting of values that define the boundaries of the intervals. After performing this for each variation factor, the requirements generation unit 102 generates an array of value pairs consisting of a Cartesian product of multiple value arrays. The requirements generation unit 102 uses the obtained value pairs to convert the abstract requirements into specific requirements. That is, the requirements generation unit 102 converts each variation factor included in the abstract requirements into general properties and inserts a value corresponding to each variation factor from the value pair as a value. Furthermore, the requirements generation unit 102 adds a monitoring requirement for the variation factor to the configuration information defined in the abstract requirement based on the definition of each variation factor as a component defined in its type and information on the expected peripheral configuration.
[0093] Next, the configuration design unit 103 generates configuration information from each specific requirement (step S103), and the procedure planning unit 104 generates a configuration change procedure from each pair of components (step S104).
[0094] When extracting pairs of components, the procedure planning unit 104 may pair a set of values of a certain variation factor with a set of values of one or more variation factors that differ by one level. The procedure planning unit 104 also generates an initial configuration in which there are no variation factors and no components, and plans a configuration change procedure between the initial configuration and a specific requirement that serves as a base in which all variation factors have basic values.
[0095] Then, the plan control unit 101 generates an operation plan in which each specific requirement in the obtained matrix of specific requirements, configuration information that satisfies the specific requirement, and a configuration change procedure for each other configuration information that is paired with the specific requirement are linked, and outputs the operation plan to the user via the input / output unit 901 (step S105). After step S105, the operation plan unit 100 ends the processing of FIG.
[0096] Fig. 16 is a flowchart showing an example of the processing procedure performed by the configuration design unit 103. In the processing of Fig. 16, the configuration design unit 103 acquires specific requirements from the plan control unit 101 (step S1101). Next, the configuration design unit 103 gradually specifies the specific requirements (steps S1102 to S1108). The configuration design unit 103 outputs the completely specified configuration information to the plan control unit 101 (step S1109). After step S1109, the configuration design unit 103 ends the processing of Fig. 16.
[0097] In the process of gradually concretizing specific requirements, the configuration design unit 103 performs one concretization step (steps S1102 to S1105). Then, the configuration design unit 103 determines whether a specific configuration draft is included in the multiple configuration drafts obtained (step S1106).
[0098] Here, a configuration draft refers to configuration information that is in the process of being instantiated. A configuration draft is considered concrete if all of its contained components are concrete. Each component is considered concrete if two conditions are met: the value of its type's abstract flag is "true" and the expected peripheral configuration is satisfied.
[0099] 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 plan control unit 101 (step S1109). After step S1109, the configuration design unit 103 ends the processing of FIG.
[0100] On the other hand, if it is determined in step S1106 that no specific configuration draft is included (step S1106: NO), the configuration design unit 103 determines whether or not any abstract configuration drafts remain in the configuration draft tree (step S1107).
[0101] Here, a configuration draft tree is data with a tree structure in which configuration drafts are nodes, and when another configuration draft is generated by concretizing a certain configuration draft, the former configuration draft has the latter configuration draft as a child.
[0102] If it is determined that an abstract configuration draft remains (step S1107: YES), the configuration design unit 103 appropriately selects the next configuration draft to be instantiated (step S1108). After step S1108, the process returns to step S1102, and the configuration design unit 103 performs one stage of instantiation again.
[0103] On the other hand, if it is determined in step S1107 that no abstract configuration drafts remain (step S1107: NO), the configuration design unit 103 determines that the system design has failed (step S1110). This is because the design cannot be further considered. After step S1110, the configuration design unit 103 ends the processing of FIG. 16.
[0104] In one stage of concretization, the configuration design unit 103 generates one or more configuration drafts by selecting and concretizing one of the abstract components included in the specific requirements input in step S1101 or the configuration draft selected to be concretized next in step S1108 (step S1102).
[0105] The reification of an abstract component is the process of either reifying the component type or applying the desired surrounding configuration. The reification of a component type is performed when the type of the component to be reified is an abstract component type, and is an operation to replace the component type with a more concrete type. In this case, the component type to be replaced is limited to component types that have the previous component type as an inheritance type.
[0106] Next, the configuration design unit 103 determines whether or not one or more configuration drafts have actually been generated in step S1102 (step S1103). If it is determined that no configuration drafts have been generated (step S1103: NO), the process proceeds 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 other configuration drafts remain on the configuration draft tree.
[0107] On the other hand, if it is determined in step S1103 that one or more configuration drafts have been generated (S1103: YES), the configuration design unit 103 evaluates each of the generated configuration drafts and excludes abstract configuration drafts that cannot be further specified from the configuration drafts to be processed (step S1104).
[0108] The configuration design unit 103 then determines whether any configuration drafts to be processed remain among the configuration drafts generated in step S1103 (step S1105). If the configuration design unit 103 determines that any configuration drafts to be processed remain (step S1105: YES), the process proceeds to step S1106. On the other hand, if the configuration design unit 103 determines that no configuration drafts to be processed remain (step S1105: NO), the process proceeds to step S1107.
[0109] Fig. 17 is a flowchart showing an example of the processing procedure performed by the procedure planning unit 104. In the processing of Fig. 17, the procedure planning unit 104 acquires a matrix of specific requirements from the plan control unit 101 (step S121). Then, the procedure planning unit 104 generates difference information based on the matrix of specific requirements (step S122).
[0110] Specifically, the procedure planning unit 104 generates pairs of two sets of variation factor values, among the sets of variation factor values included in the matrix of specific requirements, in which the values of one or more variation factors differ by one level.The procedure planning unit 104 then generates difference information for the two pieces of configuration information belonging to the generated pair by adding labels such as newly added, maintained as is, or deleted to each component in the configuration information obtained by integrating these two pieces of configuration information, as described above.The procedure planning unit 104 generates difference information for each pair of two sets of variation factor values, among the sets of variation factor values included in the matrix of specific requirements, in which the values of one or more variation factors differ by one level.
[0111] Next, the procedure planning unit 104 generates a state transition system based on each piece of difference information and the component type information (step S123). Next, the procedure planning unit 104 calculates the shortest state transition procedure that transitions all states of the state transition system from the initial state to the target state (step S124). Then, 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 processing of FIG. 17.
[0112] Fig. 18 is a diagram showing an example of a GUI (Graphical User Interface) presented to a user by the operation planner 100. The input / output unit 901 displays the operation screen shown in Fig. 18 and accepts user operations in accordance with control by the operation planner 100. The input / output unit 901 corresponds to an example of a display means. The input / output unit 901 also corresponds to an example of an operation input means. The system operation planning device 1 corresponds to an example of a display device.
[0113] The operation screen shown in Figure 18 includes a display area (area a21) for a list of selectable component parts, a display area (area a22) for selecting variable factors and for adjusting their values, 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).
[0114] In the requirements editing pane (area a23), users can edit the requirements that the target system must satisfy by using the mouse to drag and drop components from the display area (area a21) that lists the selectable components and drawing an abstract system configuration.
[0115] Each variation factor included in the components in the system configuration drawn in the requirements editing pane (area a23) is displayed as a list in the display area (area a22) for the variation factor selection and value adjustment bar. The user selects the variation factors displayed in the display area (area a22) for the variation factor selection and value adjustment bar to actually use as variation factors for the configuration change by checking the checkbox. The user then sets the maximum and minimum values of the selected variation factor using the adjustment bar.
[0116] The display of a list of variation factors in the display area (area a22) for the variation factor selection and value adjustment bar corresponds to an example of displaying a list of variation factors. The display of the maximum and minimum values of the variation factors in the display area (area a22) for the variation factor selection and value adjustment bar corresponds to an example of displaying the range of values that the variation factors are allowed to take when the target system 911 is in operation.
[0117] An overview of the generated operation plan is displayed in the operation plan confirmation pane (area a24). When any specific configuration information in the operation plan is clicked, the system configuration corresponding to that specific configuration information is displayed in the configuration information confirmation pane (area a25). As in Figure 2, the specific configuration information is indicated by a black circle.
[0118] The user may be able to adjust the values of the variation factors used as the reference values for system configuration changes by editing the specific requirements displayed in the operation plan confirmation pane (area a24). For example, the user may be able to move, add, or delete specific requirements.
[0119] Here, as described above, the number of fluctuation factors is not limited to two. When the number of fluctuation factors is three or more, the input / output unit 901 may be configured to display the operation plan multidimensionally. For example, the input / output unit 901 may be configured to display the operation plan stereoscopically (three-dimensionally) based on three fluctuation factors. In this case, the input / output unit 901 may be configured to display the stereoscopic operation plan so that the line of sight direction is changeable.
[0120] Alternatively, the user may be allowed to select two of the three or more variable factors, and the input / output unit 901 may display a planar (two-dimensional) operation plan for the two selected variable factors. At a stage before the configuration design unit 103 performs system design, the input / output unit 901 may display a combination of variable factors and accept editing by the user in the same manner as above.
[0121] When any configuration change procedure in the operation plan displayed in the operation plan confirmation pane (area a24) is clicked, the contents of that configuration change procedure are displayed in the configuration change procedure confirmation pane (area a26). As in Figure 2, configuration change procedures are indicated by arrows.
[0122] The display of the operation plan in the operation plan confirmation pane (area a24) is an example of displaying points indicating the values of the variation factors for each coordinate axis in a coordinate space having coordinate axes indicating the values of the variation factors for each of multiple variation factors.
[0123] Next, the effects of the first embodiment will be described. According to the first embodiment, the task of formulating a series of operation plans including configuration changes according to the values of variable factors is automated. Furthermore, because a series of configuration information and configuration change procedures are planned before the start of actual operation, configuration changes can be implemented quickly and reliably when necessary. A user may implement configuration changes by referring to the configuration change procedures. Alternatively, like the system operation planning device in the second embodiment, a device may implement configuration changes automatically or semi-automatically.
[0124] As described above, the requirements generation unit 102 generates specific requirements, which are information indicating the requirements that the target system 911 must satisfy, based on abstract requirements that include information indicating the variable factor range, which is the range within which the values of variable factors that are values that change during operation of the target system 911, which is the system to be operated and are correlated with the operating status of the target system 911, are acceptable to take during operation of the target system 911, and which include information indicating the values of each of the multiple values of the variable factors included in the variable factor range.
[0125] According to the system operation planning device 1, the values of the variation factors indicated by each of a plurality of specific requirements can be used as a determination criterion for automatically determining whether or not to change the system configuration of the target system 911 during operation of the target system 911. By designing a system configuration that satisfies the specific requirements, it is possible to obtain a system configuration that is suitable when the current value of the variation factor is the value of the variation factor indicated by the specific requirement or a value lower than that. Therefore, by selecting a specific requirement whose value of the variation factor is larger than the current value of the variation factor and designing a system configuration that satisfies the specific requirement, it is possible to obtain a system configuration that is suitable for the current value of the variation factor.
[0126] Furthermore, by selecting a specific requirement with the smallest value of the variation factor from among the specific requirements with variation factor values greater than the current value of the variation factor and designing a system configuration that satisfies that specific requirement, it is possible to obtain the smallest system configuration that is suitable for the current value of the variation factor. By constructing or updating the target system 911 according to this system configuration, the target system 911 can be operated efficiently.
[0127] It should be noted that, here, the larger the value of the variation factor, the higher the performance of the target system 911. For variation factors in which the smaller the value of the variation factor, the higher the performance of the target system 911, the terms "large" and "small" should be read interchangeably in the explanation of the selection of factor levels.
[0128] The variable factors are not limited to those in a specific field in the system operation planning device 1. According to the system operation planning device 1, it is possible to obtain a determination criterion for automatically determining whether or not to change the system configuration of the target system 911 for the target systems 911 in various fields.
[0129] Furthermore, the requirement generating unit 102 generates specific requirements including a requirement that the target system 911 include a configuration for performing observation to acquire values of variation factors. According to the system operation planning device 1, the target system 911 is configured to acquire values of 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.
[0130] Furthermore, the configuration design unit 103 generates, for each specific requirement, configuration information indicating a system configuration of the target system that satisfies that requirement. The system operation planning device 1 can determine a system configuration after a change to the system configuration of the target system 911 based on the value of the variation factor. Specifically, a specific requirement that corresponds to the current value of the variation factor can be selected, and a system configuration that satisfies that requirement can be set as the system configuration after the change to the system configuration of the target system 911.
[0131] A specific requirement corresponds to the current value of the variation factor when the value of the variation factor indicated in the specific requirement is greater than the current value of the variation factor. As described above, it is also possible to select the specific requirement with the smallest value of the variation factor from among the specific requirements with variation factor values greater than the current value of the variation factor.
[0132] As above, here too, the larger the value of the variation factor, the higher the performance of the target system 911. For variation factors whose values are smaller, the higher the performance of the target system 911, the terms "large" and "small" should be read interchangeably in the explanation of the selection of factor levels.
[0133] Furthermore, the procedure planning unit 104 generates a configuration change procedure, which is information indicating a procedure for changing from a system configuration indicated by one of the configuration information to a 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.
[0134] Furthermore, the plan control unit 101 generates an operation plan that is information including information linking each specific requirement with a configuration change procedure that indicates a procedure for changing the system configuration of the target system 911 to a system configuration that satisfies the requirement. The system operation planning device 1 can refer to the operation information to change the system configuration of the target system 911. Specifically, from the specific requirements included in the operation information, a specific requirement that corresponds 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 of the target system 911 after the change.
[0135] As in the above, a specific requirement corresponds to the current value of a variation factor when the value of the variation factor indicated in the specific requirement is greater than the current value of the variation factor. As described above, it is also possible to select the specific requirement with the smallest value of the variation factor from among the specific requirements with variation factor values greater than the current value of the variation factor.
[0136] As above, here too, the larger the value of the variation factor, the higher the performance of the target system 911. For variation factors whose values are smaller, the higher the performance of the target system 911, the terms "large" and "small" should be read interchangeably in the explanation of the selection of factor levels.
[0137] The input / output unit 901 also displays a list of variable factors whose values change during operation of the target system 911, which is a system to be operated, and whose values have a correlation with the operating status of the target system. The system operation planning device 1 allows a user to refer to the list of variable factors and select, from the variable factors, a variable factor to be used as a criterion for determining whether or not to change the system configuration of the target system 911.
[0138] The input / output unit 901 also accepts a user operation to designate a variable factor, from among the variable factors shown in the list of variable factors, that is used to determine whether or not a change in the system configuration of the target system is required when the target system is in operation.
[0139] According to the system operation planning device 1, a user can indicate the variable factor to be used to determine whether or not a change is required for the system configuration of the target system by a relatively simple operation of selecting, from the list of variable factors, the variable factor to be used to determine whether or not a change is required for the system configuration of the target system when the target system is in operation.
[0140] Furthermore, the input / output unit 901 displays a range of values that change during operation of a target system 911, which is a system to be operated, and that are correlated with the operating status of the target system, within which the value of a variable factor is allowed to be during operation of the target system 911. According to the system operation planning device 1, the user can refer to the display by the target system 911 and confirm the range within which the value of the variable factor is allowed to be during operation of the target system 911.
[0141] Furthermore, the input / output unit 901 accepts a user operation to instruct a change in the range within which the value of the variation factor is allowed to be during operation of the target system 911. Using the input / output unit 901, the user can relatively easily adjust the range within which the value of the variation factor can be allowed.
[0142] In addition, the input / output unit 901 displays points indicating the values of the variable factors for each coordinate axis in a coordinate space having coordinate axes for each of a plurality of variable factors, the coordinate axes indicating the values of the variable factors that are correlated with the operating status of the target system 911, which is a value that changes during operation of the target system 911, which is the system to be operated.
[0143] The system operation planning device 1 allows a user to visually grasp the values of a plurality of variation factors, and in this respect, the values of a plurality of variation factors can be grasped relatively easily. For example, the user can relatively easily grasp the values of a plurality of variation factors that are set as criteria for determining whether or not a change in the system configuration of the target system 911 is necessary.
[0144] Furthermore, the input / output unit 901 displays in the coordinate space the ranges that the values of the variation factors are allowed to take when the target system 911 is operated. According to the system operation planning device 1, the user can visually grasp the ranges that the values of multiple variation factors are allowed to take when the target system 911 is operated, and in this respect, the ranges of the values of the variation factors can be grasped relatively easily.
[0145] The input / output unit 901 also accepts a user operation for editing points indicating values of variation factors for each coordinate axis in the coordinate space. According to the system operation planning device 1, a user can specify values of variation factors with a relatively simple operation of editing points displayed in the coordinate space indicating values of variation factors. For example, the user can specify values of variation factors used as criteria for determining whether or not a change in the system configuration of the target system 911 is necessary.
[0146] Second Embodiment In a second embodiment, a case will be described in which a system operation planning device further operates a system after planning the system operation. The configuration of a system operation planning device according to the second embodiment will be described.
[0147] Fig. 19 is a block diagram showing an example of the functional configuration of a system operation planning device according to the second embodiment. In the configuration shown in Fig. 19, the system operation planning device 2 includes an input / output unit 901, an operation planning unit 100, an operation execution unit 200, and a target system 911. The operation planning unit 100 includes a plan control unit 101, a requirements generation unit 102, a configuration design unit 103, and a procedure planning unit 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 an operation execution unit 203.
[0148] Of the components shown in FIG. 19, those having the same functions as those shown in FIG. 1 are given the same reference numerals (100, 101, 102, 103, 104, 901) and will not be described in detail here.
[0149] 1 , the system operation planning device 2 includes an operation execution unit 200 and a target system 911. As a result, the system operation planning device 2 operates the target system 911 based on the operation plan generated by the operation planner 100. In other respects, the system operation planning device is similar to the system operation planning device 1. The target system 911 may be configured externally to the system operation planning device 2. Furthermore, as in the case of the system operation planning device 1, the input / output unit 901 may be configured externally to the system operation planning device 2.
[0150] The synchronization control unit 201 controls the target system 911 so that the target system 911 defined in the operation plan always has a desired system configuration that corresponds 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 a configuration change procedure by issuing 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. Changing the system configuration of the target system 911 to a desired system configuration that corresponds to the variable factors is also referred to as synchronizing the target system 911.
[0151] The task execution unit 203 executes tasks 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 the target factor level, which is the target level of the value of the variation factor, based on the value of the variation factor acquired from the monitoring unit 205, and records this in the state management unit 204. Furthermore, if the current factor level and the target factor level differ, the determination unit 206 notifies the synchronization control unit 201 of this fact. The determination unit 206 is an example of a determination means.
[0152] Here, the factor level refers to a value (set of values) of the variation factor indicated in the operational information. The factor level is indicated by a discrete value, as in the example shown in part C of FIG. 2 . The current factor level refers to a factor level linked to the current system configuration of the target system 911. The target factor level refers to a factor level, among the factor levels, linked to a system configuration that can correspond to the current value of the variation factor observed for the target system 911.
[0153] As the target factor level, for each variation factor, the factor level with the smallest value for each variation factor may be selected from among the factor levels with a value greater than the current value of the variation factor. Alternatively, for a variation factor whose value exceeding the value indicated by the current factor level would be fatal to the target system 911, the factor level with the second smallest value for that variation factor may be selected from among the factor levels with a value greater than the current value of that variation factor.
[0154] It should be noted that, here, the larger the value of the variation factor, the higher the performance of the target system 911. For variation factors in which the smaller the value of the variation factor, the higher the performance of the target system 911, the terms "large" and "small" should be read interchangeably in the explanation of the selection of factor levels.
[0155] The status management unit 204 records the ID of the target system 911, as well as the operational status, operational plan, current factor level, and target factor level as system status information related to the target system 911. The operational status is a flag indicating whether the system is in operation or has stopped operation. The operation execution unit 200 executes monitoring and synchronization processing only when the operational status of the target system 911 is in operation.
[0156] FIG. 20 is a diagram showing an example of system state information recorded in the state management unit 204. The system state information shown in FIG. 20 is information about a system having an ID of "system001". The system state information shown in FIG. 20 records the operation state, operation plan, current factor level, and target factor level. The operation state is "in operation". The contents of the operation plan are the same as those 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 an initial state. The target factor level is "{number of accesses per second: 10, load per request: 10}".
[0157] Since the current factor level and the target factor level are different, the procedure execution unit 202 needs to execute a configuration change procedure. Note that the configuration change procedure in this case is a work procedure for constructing a basic configuration, which is a system configuration that serves as the basis for the target system 911, from a state in which the target system 911 does not have any system configuration.
[0158] Next, the operation of the system operation planning device 2 will be described. In the system operation planning device 2, as in the case of the system operation planning device 1, a user inputs abstract requirements via the input / output unit 901, and the operation plan unit 100 derives an operation plan based on the abstract requirements. The user checks the derived operation plan via the input / output unit 901 and instructs the system operation planning device 2 to execute the operation plan. When operation of the target system 911 is no longer necessary, the user instructs the system operation planning device 2 to stop operation. The operation execution unit 200 accepts information on the operation plan and instructions from the user, operates the target system 911, and stops operation.
[0159] Fig. 21 is a flowchart showing an example of the procedure of processing performed by the operation execution unit 200. In the processing shown in Fig. 21, the synchronization control unit 201 acquires an instruction to execute an operation plan given by a user via the input / output unit 901 (step S201). Then, the synchronization control unit 201 accepts 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).
[0160] 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 set to the basic factor level at which all variable factors have the basic value specified in the definition of the variable factor. The operational status is set to "in operation."
[0161] Next, the synchronization control unit 201 starts operations to maintain the target system 911 in an appropriate state by executing the operation plan (step S203). Thereafter, if a reason arises to stop the target system, the user instructs the operation execution unit 200 to stop operation of the target system 911 via the input / output unit 901 (step S204). This causes the synchronization control unit 201 to change the operation status of the target system 911 to "stopped" and stop operations to maintain the target system 911 (step S205). After step S205, the operation execution unit 200 ends the processing of FIG. 21.
[0162] Fig. 22 is a flowchart showing an example of a processing procedure in an operation performed by the operation execution unit 200 to maintain the target system 911 in an appropriate state. The operation execution unit 200, for example, periodically repeats the processing shown in Fig. 22. In the processing shown in Fig. 22, the synchronization control unit 201 determines whether the operation status of the target system 911 is in operation (step S201). If it is determined that the target system 911 is not in operation (step S201: NO), the operation execution unit 200 ends the processing of Fig. 22.
[0163] On the other hand, if it is determined that the operation status of the target system 911 is in operation (step S201: YES), the synchronization control unit 201 determines whether the target system 911 is synchronized (step S211). Specifically, the synchronization control unit 201 checks the system status information and determines whether the current factor level and the target factor level are the same.
[0164] If it is determined that the target system 911 is synchronized (step S211: YES), the operation execution unit 200 ends the processing in 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 of 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 corresponding to the current factor level to a system configuration corresponding to the target factor level from the operation plan recorded in the state management unit 204, and sends the acquired configuration change procedure to the procedure execution unit 202 to have it executed (step S213).
[0165] 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. After the target system 911 is synchronized, 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 value of the target factor level. Then, 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). After step S214, the operation execution unit 200 ends the processing of FIG. 22 .
[0166] Fig. 23 is a flowchart showing an example of the procedure of the process performed by the determination unit 206. In the process shown in Fig. 23, the determination unit 206 determines whether the operation status of 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.
[0167] On the other hand, if it is determined that the target system is in operation (step S220: NO), the determination unit 206 determines whether a certain period of time defined as a cycle for determining synchronization has elapsed (step S221).If the determination unit 206 determines that the certain period of time has not elapsed (step S221: NO), the process returns to step S220.
[0168] On the other hand, if it is determined that a certain period of time has elapsed (step S221: YES), the determination unit 206 acquires the values of the fluctuation factors observed by the monitoring unit 205, and determines and acquires the target factor level from among the factor levels indicated in the operational information (step S222).
[0169] Here, in order to stably operate the target system 911, it is necessary to configure the target system 911 with sufficient performance. On the other hand, if the target system 911 has surplus resources, this will lead to a decrease in the efficiency of the target system 911, such as an increase in the power consumption of the target system 911. Therefore, when the monitoring unit 205 determines the target factor level, it is possible to determine the factor level having the smallest value among the factor levels greater than the value of the observed variation factor, as described above.
[0170] On the other hand, when the observed factor level crosses the boundary between intervals, it is not advisable for the operation execution unit 200 to frequently repeat configuration changes. Therefore, the monitoring unit 205 may determine the target factor level only when the observed value of the fluctuation factor remains at a specific factor level for a certain period of time, that is, when no fluctuation in the target factor level occurs for a certain period of time.
[0171] On the other hand, when a significant fluctuation in the factor level occurs, the monitoring unit 205 may determine the target factor level without waiting for a certain period of time to elapse.In addition, instead of using the observed value of the variation factor itself, the monitoring unit 205 may predict the future value of the variation factor based on the result of continuously monitoring the value of the variation factor, and determine the target factor level using the prediction result.
[0172] After step S222, 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 any variation factor whose measured value is greater than the value set as the maximum value of the variation factor. If the measured value of the variation factor exceeds the upper limit of the factor level that can be selected as the target factor level, it means that an appropriate system configuration corresponding to the value of the variation factor cannot be selected as the system configuration of the target system 911.
[0173] 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 issues an alert to the user via the synchronization control unit 201 and the input / output unit 901 (step S224). After step S224, the process returns to step S220.
[0174] On the other hand, if it is determined in step S223 that the measured value of the variable factor does not exceed the upper limit of the factor level that can be selected as the target factor level (step S223: NO), the judgment unit 206 judges whether the target factor level has changed from the current factor level (step S225).
[0175] 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 the determination unit 206 determines that the target factor level has changed from the current factor level (step S225: NO), the determination unit 206 updates the target factor level recorded by the state management unit 204 to the target factor level value determined in step S222, and instructs the synchronization control unit 201 to synchronize the target system 911 (step S225). After step S225, the process returns to step S220.
[0176] Next, the effects of the second embodiment will be described. The system operation planning device 2 automates the process of formulating a series of operation plans including configuration changes according to the values of variable factors, and the operation process of the target system 911 based on the operation plans. Furthermore, the system operation planning device 2 plans a series of configuration information and configuration change procedures before starting operation of the target system 911, so it is expected that configuration changes can be implemented quickly and reliably when a response is required.
[0177] As described above, the procedure execution unit 202 changes the system configuration of the target system 911 based on the configuration change procedure that indicates the procedure for changing the system configuration of the target system 911 to a system configuration that satisfies specific requirements that correspond to the value of the variation factor obtained using a configuration for performing observation to acquire the value of the variation factor. The system operation planning device 2 can automatically perform the system configuration of the target system 911.
[0178] Furthermore, the determination unit 206 compares the value of a variation factor indicated by a specific requirement satisfied by the current system configuration of the target system 911 with the value of the variation factor indicated by the specific requirement corresponding to the value of the variation factor obtained using a configuration for performing observation to acquire the value of the variation factor, and determines whether or not a change in the system configuration of the target system 911 is necessary. The system operation planning device 2 can automatically determine whether or not a change in the system configuration of the target system 911 is necessary.
[0179] In the third embodiment, a case will be described in which a system operation planning device determines the necessity of a system configuration change based on the system monitoring results, without generating a prior operation plan, and plans and executes the system configuration change as needed. In the third embodiment, the system operation planning device performs system operation planning and operation on the fly, so to speak.
[0180] The configuration of a system operation planning device according to the third embodiment will be described. Fig. 24 is a block diagram showing an example of the functional configuration of the system operation planning device according to the third embodiment. In the configuration shown in Fig. 24, the system operation planning device 3 includes an input / output unit 901, a plan operation unit 300, and a target system 911. The plan operation unit 300 includes a plan control unit 101, a requirements 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 an operation execution unit 203.
[0181] Of the components shown in FIG. 24, those components having the same functions as those shown in FIG. 10 are given the same reference numerals (101, 102, 103, 104, 201, 202, 203, 204, 205, 206, 901, 911), and detailed description thereof will be omitted here.
[0182] In the system operation planning device 3, the planning operation unit 300 has both parts corresponding to the parts of the operation planning unit 100 in Fig. 19 and parts corresponding to the parts of the operation execution unit 200. As a result, the system operation planning device 3, as described above, performs system operation planning and operation on the fly, so to speak. In other respects, the system operation planning device 3 is similar to the system operation planning device 2.
[0183] Next, we will explain the data handled by the system operation planning device 3 and the operation of the system operation planning device 3. In the system operation planning device 3, the state management unit 204 records the ID of the target system 911 as system state information related to the target system 911, as well as the operational state of the target system 911, abstract requirements, current factor levels, target factor levels, and current system configuration.
[0184] In the system operation planning device 3, when the magnitude of the deviation between the observed value of the variation factor and the current factor level is greater than a predetermined threshold, the determination unit 206 determines a target factor level based on the observed value of the variation factor and updates the target factor level recorded by the state management unit 204. Then, the determination unit 206 notifies the synchronization control unit 201 that the target factor level has changed.
[0185] In the system operation planning device 3, upon receiving a notification from the determination unit 206, the synchronization control unit 201 notifies the plan control unit 101 of the abstract requirements, the target factor levels, and the current system configuration. Then, the synchronization control unit 201 acquires the target system configuration and a configuration change procedure from the plan 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 levels in the system state information recorded in the state management unit 204 to the value of the target factor level.
[0186] In the system operation planning device 3, the plan control unit 101 acquires abstract requirements, target factor levels, and the current system configuration from the synchronization control unit 201, and sends the abstract requirements and target factor levels to the requirements generation unit 102. The plan control unit 101 then acquires specific requirements from the requirements generation unit 102 and sends the acquired specific requirements to the configuration design unit 103. The plan 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. The plan control unit 101 then acquires a 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.
[0187] In the system operation planning device 3, the requirement generation unit 102, upon acquiring abstract requirements and target factor levels from the plan control unit 101, writes the acquired target factor level values as values of variation factors within the abstract requirements. The requirement generation unit 102 then generates monitoring requirements for the variation factors to generate specific requirements and outputs them to the plan control unit 101.
[0188] In the system operation planning device 3, when the configuration design unit 103 acquires specific requirements from the plan control unit 101, it generates configuration information based on the specific requirements and outputs the generated configuration information to the plan control unit 101. In the system operation planning device 3, when the procedure planning unit 104 acquires the current system configuration and the target system configuration from the plan control unit 101, it generates a configuration change procedure for changing the system configuration of the target system 911 from the current system configuration to the target system configuration. Then, the procedure planning unit 104 outputs the generated configuration change procedure to the plan control unit 101.
[0189] Next, the effects of the third embodiment will be described. According to the third embodiment, a series of operational tasks including configuration changes according to the values of the fluctuation factors are automated.
[0190] As described above, when the magnitude of deviation between the value of a variation factor indicated by a specific requirement satisfied by the current system configuration of the target system 911 and the value of a variation factor obtained using a configuration for performing observations to obtain the value of the variation factor is greater than a predetermined threshold, the determination unit 206 determines the value of a variation factor indicated by a specific requirement that corresponds to the value of the variation factor obtained using a configuration for performing observations to obtain the value of the variation factor, and determines whether or not a change in the system configuration of the target system 911 is necessary. The system operation planning device 3 can automatically determine whether or not a change in the system configuration of the target system 911 is necessary.
[0191] 25 is a diagram showing an example of the configuration of a system operation planning device according to a fourth embodiment. In the configuration shown in FIG. 25, a system operation planning device 610 includes a requirement generation unit 611.
[0192] In this configuration, the requirements generation unit 611 generates specific requirements, which are information indicating the requirements that the target system must satisfy, based on abstract requirements that include information indicating the value of each of the multiple values of the variable factors included in the variable factor range, and which are information indicating the requirements that the target system must satisfy, and which include information indicating the value of the variable factors that change during operation of the target system, which is the system to be operated and which have a correlation with the operating status of the target system.
[0193] According to the system operation planning device 610, the values of the variation factors indicated by each of a plurality of specific requirements can be 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. By designing a system configuration that satisfies the specific requirements, it is possible to obtain a system configuration that is appropriate when the value of the variation factor is the value of the variation factor indicated by the specific requirement.
[0194] In particular, the variable factors are not limited to those in a specific field in the system operation planning device 610. The system operation planning device 610 can obtain criteria for automatically determining whether or not to change the system configuration of target systems in various fields.
[0195] <Fifth Embodiment> Fig. 26 is a diagram showing an example of the configuration of a display device according to a fifth embodiment. In the configuration shown in Fig. 26, a display device 620 includes a display unit 621. In this configuration, the display unit 621 displays a list of variable factors whose values change during operation of a target system, which is a system to be operated, and whose values have a correlation with the operating status of the target system.
[0196] The display unit 621 corresponds to an example of a display means. The display device 620 allows a user to refer to a list of variation factors and select, from among the variation factors, a variation factor to be used as a criterion for determining whether or not to change the system configuration of the target system.
[0197] Sixth Embodiment The configuration of a display device according to a sixth embodiment is similar to that of the display device according to the fifth embodiment. In the description of the sixth embodiment, reference will be made to FIG. 26 . FIG. 26 is a diagram showing an example of the configuration of a display device according to the sixth embodiment. In the configuration shown in FIG. 26 , a display device 620 includes a display unit 621.
[0198] In this configuration, the display unit 621 displays the range of values of the variable factors that change during operation of the target system, which is the system to be operated, and that are correlated with the operating status of the target system. The display unit 621 corresponds to an example of a display means. The display device 620 allows the user to refer to the display by the target system and confirm the range of values of the variable factors that are permitted during operation of the target system.
[0199] Seventh Embodiment The configuration of a display device according to a seventh embodiment is similar to that of the display device according to the fifth embodiment. In the description of the seventh embodiment, reference will be made to FIG. 26 . FIG. 26 is a diagram showing an example of the configuration of a display device according to the seventh embodiment. In the configuration shown in FIG. 26 , a display device 620 includes a display unit 621.
[0200] In this configuration, the display unit 621 displays points indicating the values of the variable factors for each coordinate axis in a coordinate space having coordinate axes for each of a plurality of variable factors, the coordinate axes indicating the values of the variable factors that change during operation of the target system, which is the system being operated, and that have a correlation with the operating status of the target system.
[0201] The display device 620 allows the user to visually grasp the values of multiple variation factors, and in this respect, the user can grasp the values of multiple variation factors relatively easily. For example, the user can relatively easily grasp the values of multiple variation factors that are set as criteria for determining whether or not a change in the system configuration of the target system is necessary.
[0202] Eighth Embodiment Fig. 27 is a diagram showing an example of processing steps in a system operation planning method according to an eighth embodiment. The system operation planning method shown in Fig. 27 includes generating requirements (step S611). In generating requirements (step S611), a computer generates specific requirements, which are information indicating the requirements to be satisfied by the target system, based on abstract requirements that include information indicating a variation factor range, which is a range within which values of variation factors that change during operation of a target system (a system to be operated and that are correlated with the operating status of the target system) are allowed to take during operation of the target system. The specific requirements include information indicating the values of each of a plurality of values of the variation factors included in the variation factor range, based on abstract requirements that are information indicating the requirements to be satisfied by the target system.
[0203] According to the system operation planning method shown in Fig. 27, the values of the variation factors indicated by each of a plurality of specific requirements can be 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. By designing a system configuration that satisfies the specific requirements, it is possible to obtain a system configuration that is appropriate when the value of the variation factor is the value of the variation factor indicated by the specific requirement.
[0204] In particular, according to the system operation planning method shown in Fig. 27, the 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 a criterion for automatically determining whether or not to change the system configuration of a target system for target systems in various fields.
[0205] 28 is a schematic block diagram illustrating the configuration of a computer according to at least one embodiment. In the configuration shown in FIG. 28, a computer 700 includes a CPU 710, a main memory device 720, an auxiliary memory device 730, an interface 740, and a non-volatile recording medium 750.
[0206] One or more of the above-described 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, may be implemented in the computer 700. In this case, the operation of each of the above-described processing units 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, loads it into the main storage device 720, and executes the above-described processing in accordance with the program. The CPU 710 also allocates storage areas in the main storage device 720 corresponding to each of the above-described storage units in accordance with the program. Communication between each device and other devices is executed by the interface 740, which has a communication function, and performs communication under the control of the CPU 710.
[0207] When the system operation planning device 1 is implemented in a computer 700, the input / output unit 901, the operation planning unit 100, and the operations of each of these units are stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-mentioned processing in accordance with the program.
[0208] Furthermore, the CPU 710, in accordance with the program, reserves a storage area in the main storage device 720 for the system operation planning device 1 to perform processing. Communication between the system operation planning device 1 and other devices is performed by the interface 740, which has a communication function and operates under the control of the CPU 710. Interaction between the system operation planning device 1 and a user is performed by the interface 740, which has a display device and an input device, displaying various images under the control of the CPU 710 and accepting user operations.
[0209] When the system operation planning device 2 is implemented in a computer 700, the input / output unit 901, the operation planning unit 100, the operation execution unit 200, the target system 911, and the operations of each of these units are stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-mentioned processing in accordance with the program.
[0210] Furthermore, the CPU 710, in accordance with the program, reserves a storage area in the main storage device 720 for the system operation planning device 2 to perform processing. Communication between the system operation planning device 2 and other devices is performed by the interface 740, which has a communication function and operates under the control of the CPU 710. Interaction between the system operation planning device 2 and a user is performed by the interface 740, which has a display device and an input device, displaying various images under the control of the CPU 710 and accepting user operations.
[0211] When the system operation planning device 3 is implemented in the computer 700, 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 form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-mentioned processing in accordance with the program.
[0212] Furthermore, the CPU 710, in accordance with the program, reserves a storage area in the main storage device 720 for the system operation planning device 3 to perform processing. Communication between the system operation planning device 3 and other devices is performed by the interface 740, which has a communication function and operates under the control of the CPU 710. Interaction between the system operation planning device 3 and a user is performed by the interface 740, which has a display device and an input device, displaying various images under the control of the CPU 710 and accepting user operations.
[0213] When the system operation planning device 610 is implemented in the computer 700, the operation of the requirement generation unit 611 is stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-described processing in accordance with the program.
[0214] Furthermore, the CPU 710, in accordance with the program, allocates a storage area in the main storage device 720 for the system operation planning device 610 to perform processing. Communication between the system operation planning device 610 and other devices is performed by the interface 740, which has a communication function and operates under the control of the CPU 710. Interaction between the system operation planning device 610 and a user is performed by the interface 740, which has a display device and an input device, displaying various images under the control of the CPU 710 and accepting user operations.
[0215] When the display device 620 is implemented in the computer 700, the operation of the display unit 621 is stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-described processing in accordance with the program.
[0216] Furthermore, the CPU 710 allocates a storage area in the main memory device 720 for the display device 620 to perform processing in accordance with the program. Communication between the display device 620 and other devices is performed by the interface 740, which has a communication function and operates under the control of the CPU 710. Interaction between the display device 620 and a user is performed by the interface 740, which has a display device and an input device, displaying various images under the control of the CPU 710 and accepting user operations.
[0217] One or more of the above-described programs may be recorded on nonvolatile recording medium 750. In this case, interface 740 may read the programs from nonvolatile recording medium 750. Then, CPU 710 may directly execute the programs read by interface 740, or may temporarily store the programs in main storage device 720 or auxiliary storage device 730 and then execute them.
[0218] Note that a program for executing all or part of the processing performed by the system operation planning device 1, the system operation planning device 2, the system operation planning device 3, the system operation planning device 610, and the display device 620 may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be loaded into a computer system and executed to perform the processing of each unit. Note that the term "computer system" here includes hardware such as an operating system (OS) and peripheral devices. Furthermore, the term "computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, read-only memories (ROMs), and compact disc read-only memories (CD-ROMs), as well as storage devices such as hard disks built into the computer system. The program may be for implementing part of the aforementioned functions, or may be capable of implementing the aforementioned functions in combination with a program already recorded on the computer system.
[0219] Although an embodiment of the present invention has been described in detail above with reference to the drawings, the specific configuration is not limited to this embodiment, and includes designs within the scope of the gist of the present invention.
[0220] A part or all of the above-described embodiments can be described as, but not limited to, the following supplementary notes.
[0221] (Supplementary Note 1) A system operation planning device that generates specific requirements, which are information indicating the requirements that the target system must satisfy, based on abstract requirements that include information indicating a variation factor range, which is a range within which values of variation factors that are correlated with the operating status of the target system and change during operation of the target system, and which include information indicating the values of the variation factors for each of multiple values included in the variation factor range.
[0222] (Supplementary Note 2) The system operation planning device according to Supplementary Note 1, wherein when generating the specific requirements, the specific requirements are generated including a requirement that the target system includes a configuration for performing observations to obtain values of the fluctuation factors.
[0223] (Supplementary Note 3) The system operation planning device according to Supplementary Note 1 or Supplementary Note 2, further comprising: a configuration design means for generating, for each of the specific requirements, configuration information indicating a system configuration of the target system that satisfies the requirement.
[0224] (Supplementary Note 4) The system operation planning device according to Supplementary Note 3 further comprises a procedure planning means for generating a configuration change procedure, which is information indicating a procedure for changing from a system configuration indicated by one of the configuration information to a system configuration indicated by another of the configuration information.
[0225] (Supplementary Note 5) The system operation planning device described in Supplementary Note 4 further comprises a planning control unit that generates an operation plan that is information including information that links each of the specific requirements with the configuration change procedure that indicates the procedure for changing the system configuration of the target system to a system configuration that satisfies the requirement.
[0226] (Supplementary Note 6) The system operation planning device according to Supplementary Note 4 or Supplementary Note 5, further comprising a procedure execution means for changing the system configuration of the target system based on the configuration change procedure indicating a procedure for changing the system configuration of the target system to a system configuration that satisfies the specific requirements corresponding to the value of the variation factor obtained using a configuration for performing observation to obtain the value of the variation factor.
[0227] (Supplementary Note 7) A system operation planning device according to any one of Supplementary Notes 1 to 6, further comprising a determination means for determining whether or not a change to the system configuration of the target system is necessary by comparing the value of the variation factor indicated by the specific requirement satisfied by the current system configuration of the target system with the value of the variation factor indicated by the specific requirement corresponding to the value of the variation factor obtained using a configuration for performing observations to obtain the value of the variation factor.
[0228] (Supplementary Note 8) The system operation planning device described in Supplementary Note 7, wherein the determination means, when the magnitude of deviation between the value of the variation factor indicated by the specific requirement satisfied by the current system configuration of the target system and the value of the variation factor obtained using a configuration for performing observation to obtain the value of the variation factor is greater than a predetermined threshold, determines the need for a change to the system configuration of the target system by determining the value of the variation factor indicated by the specific requirement that corresponds to the value of the variation factor obtained using a configuration for performing observation to obtain the value of the variation factor.
[0229] (Supplementary Note 9) A display device comprising a display means for displaying a list of variable factors whose values change during operation of a target system, which is a system to be operated, and whose values have a correlation with the operating status of the target system.
[0230] (Supplementary Note 10) The display device described in Supplementary Note 9 further comprises an operation input means for accepting a user operation to indicate a variable factor, among the variable factors shown in the list, that 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.
[0231] (Supplementary Note 11) A display device comprising a display means for displaying the range of values of 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, within which the value of the variable factor is allowed to take during operation of the target system.
[0232] (Supplementary Note 12) The display device according to Supplementary Note 11, further comprising: an operation input means for receiving a user operation that instructs a change in a range that the value of the fluctuation factor is allowed to take during operation of the target system.
[0233] (Supplementary Note 13) A display device comprising: a display means for displaying points indicating values of a variation factor for each of a plurality of coordinate axes in a coordinate space having, for each of the plurality of variation factors, a value that changes during operation of a target system, which is a system to be operated, and which has a correlation with the operating status of the target system.
[0234] (Supplementary Note 14) The display device according to Supplementary Note 13, wherein the display means displays, in the coordinate space, a range that the value of the variation factor is allowed to take during operation of the target system.
[0235] (Supplementary Note 15) The display device according to Supplementary Note 13 or 14, further comprising: an operation input means for accepting a user operation for editing a point indicating a value of the variation factor for each of the coordinate axes in the coordinate space.
[0236] (Supplementary Note 16) A system operation planning method including: a computer generating specific requirements, which are information indicating the requirements to be satisfied by the target system, based on abstract requirements, which include information indicating a variation factor range, which is a range within which values of variation factors that change during operation of a target system, the target system being a system to be operated and which are correlated with the operating status of the target system, are acceptable during operation of the target system, and which include information indicating the values of the variation factors for each of a plurality of values included in the variation factor range.
[0237] (Supplementary Note 17) A recording medium having recorded thereon a program for causing a computer to execute the following: based on abstract requirements, which are information indicating requirements that the target system must satisfy, the specific requirements include information indicating the values of each of a plurality of values of the variable factors included in the variable factor range, the specific requirements being information indicating requirements that the target system must satisfy, and include information indicating the values of the variable factors, which are values that change during operation of a target system, which is a system to be operated, and which have a correlation with the operating status of the target system, within the range of values that the variable factors are allowed to take during operation of the target system.
[0238] The present invention may be applied to a system operation planning device, a display device, a system operation planning method, and a recording medium.
[0239] 1, 2, 3, 610 System operation planning device 100 Operation planning unit 101 Plan control unit 102, 611 Requirement generation unit 103 Configuration design unit 104 Procedure planning unit 200 Operation execution unit 201 Synchronization control unit 202 Procedure execution unit 203 Work execution unit 204 Status management unit 205 Monitoring unit 206 Determination unit 300 Plan operation unit 620 Display device 621 Display unit 901 Input / output unit 911 Target system
Claims
1. A system operation planning device that generates specific requirements, which are information indicating the requirements that the target system must satisfy, based on abstract requirements, which include information indicating a variation factor range, which is a range within which values of a variation factor that correlates with the operating status of the target system are acceptable to take during operation of the target system, and which includes information indicating the values of each of a plurality of values of the variation factor included in the variation factor range, and which is information indicating the requirements that the target system must satisfy.
2. In generating the specific requirements, the specific requirements are generated including a requirement that the target system includes a configuration for performing an observation to obtain a value of the variable factor. The system operations planning device according to claim 1 .
3. A configuration design means for generating configuration information indicating a system configuration of the target system that satisfies each of the specific requirements. The system operation planning device according to claim 1 or 2, further comprising:
4. a procedure planning means for generating a configuration change procedure which is information indicating a procedure for changing a system configuration indicated by one of the configuration information to a system configuration indicated by another of the configuration information; The system operation planning device according to claim 3 , further comprising:
5. a planning control unit that generates an operation plan that is information including information linking each of the specific requirements with the configuration change procedure that indicates a procedure for changing the system configuration of the target system to a system configuration that satisfies the requirements; The system operation planning device according to claim 4 , further comprising:
6. A display means for displaying a list of variable factors whose values change during operation of a target system, which is a system to be operated, and whose values have a correlation with the operating status of the target system. A display device comprising:
7. A display means for displaying a range within which a value of a variable factor that changes during operation of a target system, which is a system to be operated, and that has a correlation with an operating status of the target system, is allowed to take during operation of the target system. A display device comprising:
8. A display means for displaying a point indicating the value of a variation factor for each of a plurality of variation factors in a coordinate space having a coordinate axis indicating the value of the variation factor, the value being a value that changes during operation of a target system that is a system to be operated and having a correlation with the operating status of the target system, for each of the variation factors. A display device comprising:
9. The computer Based on abstract requirements, which are information indicating requirements to be satisfied by the target system, the abstract requirements include information indicating a variation factor range, which is a range within which values of a variation factor that is a value that changes during operation of a target system and has a correlation with the operating status of the target system are allowed to take during operation of the target system, and the abstract requirements include information indicating the values of each of a plurality of values of the variation factor included in the variation factor range, and are information indicating the requirements to be satisfied by the target system. A system operation planning method comprising:
10. On the computer, A specific requirement is generated based on an abstract requirement, which is information indicating requirements to be satisfied by the target system, and includes information indicating a variation factor range, which is a range within which values of a variation factor that is correlated with the operating status of the target system and changes during operation of the target system, and includes information indicating the values of the variation factor for each of a plurality of values included in the variation factor range, and is information indicating the requirements to be satisfied by the target system. A program for executing the above.