WO2013179468A1 - 運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置 - Google Patents
運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置 Download PDFInfo
- Publication number
- WO2013179468A1 WO2013179468A1 PCT/JP2012/064223 JP2012064223W WO2013179468A1 WO 2013179468 A1 WO2013179468 A1 WO 2013179468A1 JP 2012064223 W JP2012064223 W JP 2012064223W WO 2013179468 A1 WO2013179468 A1 WO 2013179468A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- candidate
- screen
- nodes
- information
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Definitions
- the present invention relates to an operation process creation program, an operation process creation method, and an information processing apparatus.
- an operation component that suits the operation purpose from the hundreds of operation components set in advance. Arrange operation components on the screen according to the operation procedure.
- the operation component refers to various components that perform operations such as server activation and human intervention during operation, for example.
- Each operation operation component described above needs to be manually defined. Further, when creating an operation process, it is necessary to manually place each selected operation component on the screen and to combine the arranged operation components according to the operation procedure.
- a palette is displayed in the corner of the operation process creation development environment (editor), and the operation component is placed on the palette and presented to the user.
- Conventionally there is a method for searching for operation components by inputting a keyword in order to acquire operation components close to the operation purpose.
- Conventionally there are methods for comparing and determining a past input pattern and a current input pattern, extracting a predicted pattern of the next input, or predicting a next user input to the Graphical User Interface (GUI).
- GUI Graphical User Interface
- the conventional operation process creation environment the number of operation parts defined in advance is very large, and besides the operation parts, there are various parts such as process start and end, sending and receiving e-mails, etc. There are many. Therefore, in the conventional method, it is difficult to quickly find a variety of operation operation parts for various purposes from a pallet or the like.
- a search function based on keyword input is used, but even in that case, the number of operation operation parts obtained as a search result is large, and the difficulty of searching for a target part from there is improved. I can't say that.
- the target part may not be displayed. Therefore, it is necessary to input an appropriate keyword in order to search for an appropriate part. Therefore, the conventional method has a problem that the creation time of the operation process creator (user) is significantly consumed.
- an object of the present invention is to provide an operation process creation program, an operation process creation method, and an information processing apparatus for quickly creating an operation process.
- An operation process creation program is configured to create at least one of a predetermined process definition, operation target node type, and past creation history when creating an operation process by arranging a plurality of nodes on a screen. Is used to estimate a subsequent candidate node for a node whose arrangement has been determined, and generate a display area that displays a predetermined number of candidate nodes in a predetermined order among the estimated candidate nodes, A computer is caused to execute processing for displaying a display area at a predetermined position on the screen.
- Operation process can be created quickly.
- FIG. 3 is a flowchart illustrating an example of an estimation process according to the first embodiment. It is a figure which shows an example of the candidate table in Example 1.
- FIG. 12 is a flowchart illustrating an example of an estimation process in the second embodiment. It is a figure which shows an example of the data corresponding to the estimation process in Example 2.
- FIG. 10 is a flowchart illustrating an example of an estimation process in the third embodiment. It is a figure which shows an example of the candidate table in Example 3.
- 12 is a flowchart illustrating an example of an estimation process in the fourth embodiment. It is a figure which shows an example of the candidate table in Example 4.
- 10 is a flowchart illustrating an example of an estimation process in the fifth embodiment. It is a figure which shows an example of the candidate table in Example 5.
- FIG. 18 is a flowchart illustrating an example of an estimation process in the sixth embodiment. It is a figure which shows an example of the candidate table in Example 6. It is FIG. (1) which shows the example of a display screen in the operation process creation environment in this embodiment. It is FIG. (2) which shows the example of a display screen in the operation process creation environment in this embodiment. It is FIG. (3) which shows the example of a display screen in the operation process creation environment in this embodiment.
- FIG. 1 is a diagram illustrating an example of an operation system according to the present embodiment.
- 1 includes a personal computer (PC) 11, which is an example of an information processing apparatus, a management server 12, and one or a plurality of operation target servers 13-1 to 13-n (hereinafter referred to as necessary). Generically referred to as “operation target server 13”).
- the management server 12 and the operation target server 13 are connected by a communication network 14 typified by a local area network (LAN) or the Internet.
- LAN local area network
- the Internet the Internet
- PC11 and the management server 12 may be connected via the communication network 14.
- a PC 11 is a development environment for creating an operation process in the present embodiment.
- a user operation process creator
- the management server 12 executes an operation process that automates the operation work and manages the execution result.
- the management server 12 also manages information (for example, host name, IP address, password, etc.) of the operation target server 13 that is an example of the operation target for executing the operation process as configuration information.
- the management server 12 causes the operation process corresponding to each operation target server 13 to be executed based on the configuration information described above. Further, the management server 12 confirms the execution status by a system administrator or the like, and outputs a screen for performing operations such as starting and stopping of an operation process.
- the management server 12 can use, for example, Configuration Management Database (CMDB, configuration management database).
- CMDB Configuration Management Database
- the CMDB centrally manages information on all configuration items (CIs, configuration items) that constitute the information technology (IT) system. Since the management server 12 has the CMDB, it can manage each configuration item (for example, a hierarchical structure) in the operation process in association with each other.
- the IT system mentioned above means, for example, an information processing system constructed for executing corporate activities, but is not limited to this.
- the operation target server 13 is a target device that executes an operation process instructed by the management server 12.
- the operation target server 13 includes various devices such as a business server, for example.
- Data transmission / reception between the operation target server 13 and the management server 12 is performed by, for example, Secure Shell (SSH), HyperText Transfer Protocol (HTTP), Hypertext Transfer Protocol Secure Socket Layer (HTTP), and the like.
- SSH Secure Shell
- HTTP HyperText Transfer Protocol
- HTTP Hypertext Transfer Protocol Secure Socket Layer
- a plurality of PCs 11 may be connected to the management server 12, whereby the contents of the operation processes created by a plurality of users (operation process creators) are stored in the management server 12. Can be managed.
- the PC 11 and the management server 12 are separate bodies, but the present invention is not limited to this, and the PC 11 and the management server 12 may be integrally formed. Accordingly, the PC 11 or the management server 12 may be used as an example of the information processing apparatus.
- the information processing apparatus in the present embodiment is not limited to the PC 11, and may be a portable communication terminal such as a smartphone or a tablet terminal.
- FIG. 2 is a diagram illustrating an example of a functional configuration of the PC. 2 includes an input unit 21, an output unit 22, a storage unit 23, a candidate node estimation unit 24, a palette generation unit 25, a screen generation unit 26, a transmission / reception unit 27, and a control unit 28.
- the input means 21 accepts input such as start and end of various instructions related to operation process creation processing from a user (operation process creator) of the operation system 10 using the PC 11.
- the input means 21 is composed of, for example, a keyboard or a mouse.
- the input means 21 may be input by voice or the like. In that case, the input means 21 has voice input means such as a microphone.
- the output unit 22 outputs the content input by the input unit 21 and the content executed based on the input content.
- the output unit 22 includes a display unit such as a display if the output is performed by, for example, a screen display, and an audio output unit such as a speaker if the output is performed by voice.
- the storage unit 23 stores various information necessary for the present embodiment. Specifically, the storage unit 23 includes process definition information 31, operation target type information 32, creation history information 33, and a candidate table 34.
- the process definition information 31 includes, for example, information in which subsequent candidate nodes are set in correspondence with a state in which an operation process is being created. This information is a fixed rule set in advance.
- the candidate node indicates, for example, the entire component used when creating the operation process. Specifically, the candidate node is not only a part (operation operation part) for a predetermined execution instruction (for example, start and stop) for the system, but also a work instruction for a person who actually performs work based on an operation process. Parts are also included. Further, candidate nodes include the start and end of processes and the like, and parts for sending and receiving e-mails.
- process definition information 31 may include combination information of paired operations and information such as a hierarchical structure of operation targets. Furthermore, the process definition information 31 includes, for example, operation process information already registered in the system in order to automate daily operation procedures performed in the operation system 10 such as a data center.
- the process definition information 31 includes information for automating the execution of the operation management process by calling, for example, the functions of the workflow tool and IT operation management tool used in the operation system 10 as necessary.
- the process definition information 31 includes information for automating the execution of the operation management process using various management tools for server and storage settings, backups, and the like.
- the operation target type information 32 includes information for acquiring the type of the operation target being created from a node (preceding node) that has already been arranged.
- the creation history information 33 includes history information such as a data log and an operation log in the operation process creation performed by the user in the past.
- the creation history information 33 may statistically store history information when an operation process is created by a plurality of users. Further, the creation history information 33 may include time information, for example. Further, the creation history information may include usage frequency (use count) information for each node within a predetermined time.
- the candidate table 34 includes information of estimated candidate nodes in the present embodiment. Specifically, for example, a component group displayed on a palette on the screen of a development environment (editor) in creating an operation process. Further, the candidate table 34 may include not only operation parts but also nodes such as parts for instructing work for humans, parts for starting and ending processes, etc., parts for sending and receiving e-mails, and the like. .
- the storage unit 23 may store information other than the information described above, and can store, for example, various setting information for executing the present embodiment.
- the storage unit 23 can read out various stored information at a predetermined timing as necessary, and can write an execution result related to the operation process creation process.
- the storage means 23 is a collection of various types of information as described above, and is a database systematically configured so that such information can be searched and extracted using, for example, keywords. You may also have the function of.
- Candidate node estimation means 24 is a node that has already been established in the operation process that is currently being created (for example, various components such as operation operation parts, work instruction parts, start and end parts, and e-mail transmission / reception parts). Estimate subsequent node candidates. Specifically, the candidate node estimation unit 24 uses, for example, at least one of a process definition being created, a type of a node to be operated, a past creation history, and the like as a subsequent candidate for a node that has already been determined. Estimate the node. An example of candidate node estimation in candidate node estimation means 24 will be described later. The estimated candidate node information may be stored in the storage unit 23 or may be output to the palette generation unit 25.
- the palette generation unit 25 generates a palette for displaying the contents of one or more nodes estimated by the candidate node estimation unit 24 at a predetermined position on the operation process creation screen.
- the palette is a display area that exists on, for example, an editor screen of the operation process creation environment and displays a predetermined number of candidate nodes. That is, the palette generation unit 25 is an example of a display area generation unit. In this embodiment, for example, a display area other than the palette (for example, another window screen) may be generated.
- the user selects a subsequent node from at least one candidate node arranged in the palette, and arranges the selected node at a predetermined position on the screen to create an operation process.
- the selection and arrangement of the nodes described above can be realized, for example, when the user operates a cursor or the like displayed on the screen using the input means 21 such as a mouse.
- the cursor is a kind of pointer displayed in the display area of the screen, and the position movement and position are determined by a user operation.
- the palette generating means 25 adjusts the arrangement, display position, number, etc. of a plurality of nodes displayed in the palette. Thereby, in this embodiment, a candidate node with high possibility of using can be provided to a user.
- the screen generation unit 26 generates a development environment (editor) screen for creating an operation process in this embodiment, an input screen for various setting information, and a screen for displaying the contents of the created operation process.
- the nodes displayed on the development environment (editor) screen generated by the screen generation means 26 may be represented by icons, names, etc. set for each node on the screen, as well as symbols, patterns, It may be represented by a mark, a character string, or the like.
- the screen generation unit 26 sets the display position on the screen of the pallet on which one or more candidate nodes generated by the pallet generation unit 25 are arranged.
- the screen generation unit 26 sets the display position of the palette based on, for example, the position information of the cursor on the screen or the position information of the node arranged last.
- the screen generation means 26 sets the display position of the palette near the cursor on the screen operated by the user. This is because the position where the subsequent node is placed is likely to be near the last placed node, and the position of the cursor operated by the user is also likely to be near the last placed node. Because. Thereby, each distance of the cursor by the user, the pallet, and the subsequent node can be shortened, and the moving distance and moving time of the cursor by the user can be reduced, and the operation burden on the user can be reduced.
- the screen generating means 26 can set the display position of the palette generated by the palette generating means 25 using, for example, the position information of the nodes already arranged on the screen.
- the screen generation unit 26 sets the display position of the pallet generated by the pallet generation unit 25, for example, at a position that does not overlap with a node already arranged on the screen. Thereby, in this embodiment, it can prevent that the node already arrange
- the arranged nodes may be hidden depending on the screen size or the like.
- the pallet so as to hide those that have a long elapsed time since the arrangement.
- it is possible to prevent the node immediately after being arranged on the screen from being hidden by the palette, and to prevent the palette from being displayed in an area where there is a high possibility of arranging the next node. it can.
- the display position of the palette is not limited to the above-described contents, and may be set based on, for example, the above-described cursor position information and the already-positioned node position information.
- the screen generated by the screen generation unit 26 is output to the display of the output unit 22 or the like.
- the transmission / reception means 27 is a communication interface capable of transmitting / receiving information necessary for each process executed in the present embodiment, an execution program (for example, an operation process creation program) for realizing an operation process creation process, and the like. is there. Further, the transmission / reception means 27 can transmit various execution results executed by the PC 11 to another external device such as the management server 12.
- the control means 28 controls the entire configuration of the PC 11.
- the control unit 28 controls at least one of, for example, estimation of candidate nodes, processing in palette generation, screen generation, transmission / reception, and the like.
- FIG. 3 is a diagram illustrating an example of a hardware configuration of the PC. 3 includes an input device 41, an output device 42, a drive device 43, an auxiliary storage device 44, a main storage device 45, a central processing unit (CPU) 46 that performs various controls, A network connection device 47 is connected to each other via a system bus B.
- CPU central processing unit
- the input device 41 has a pointing device such as a keyboard or a mouse operated by a user of the PC 11, for example, and inputs various operation signals such as execution of a program from the user.
- a pointing device such as a keyboard or a mouse operated by a user of the PC 11, for example, and inputs various operation signals such as execution of a program from the user.
- the output device 42 has a display that displays various windows, data, and the like necessary for operating the computer main body that performs the processing in the present embodiment, and displays the execution progress and results of the control program executed by the CPU 46.
- the execution program (operation process creation program) installed in the computer main body of the PC 11 is provided by the recording medium 48, for example.
- the drive device 43 reads various data such as an execution program recorded on the recording medium 48. That is, the recording medium 48 can be set in the drive device 43, and the execution program included in the recording medium 48 is installed in the auxiliary storage device 44 from the recording medium 48 via the drive device 43.
- the drive device 43 can also write data such as an execution result obtained by executing a program, for example, when the set recording medium 48 is writable.
- the auxiliary storage device 44 is a storage means such as a hard disk drive or Solid State Drive (SSD), stores an execution program, a control program, and the like in the present embodiment, and performs input / output as necessary.
- SSD Solid State Drive
- the main storage device 45 stores an execution program read from the auxiliary storage device 44 by the CPU 46.
- the main storage device 45 includes, for example, a Read Only Memory (ROM), a Random Access Memory (RAM), and the like.
- the CPU 46 performs processing of the entire computer, such as various operations and data input / output with each hardware component, based on a control program such as an operating system (OS) and an execution program stored in the main storage device 45. By controlling, each process in creating the operation process is realized. Various information necessary during the program execution is acquired from the auxiliary storage device 44 by the CPU 46. The execution result and the like are stored in the auxiliary storage device 44 and the like by the CPU 46.
- OS operating system
- the network connection device 47 is a communication interface that enables transmission and reception of data by connecting to the management server 12. Further, the network connection device 47 is connected to the management server 12 to acquire an execution program and various data, or to manage an execution result obtained by executing the program or the execution program itself corresponding to the present embodiment. Or can be provided to the server 12 or the like. In the present embodiment, various types of data may be transmitted and received by connecting to the operation target server 13 via the network connection device 47.
- the recording medium 48 is a computer-readable recording medium that stores an execution program and the like as described above.
- the recording medium 48 may be a portable recording medium such as a Universal Serial Bus (USB) memory, a CD-ROM, or a DVD disk, or may be a semiconductor memory such as a flash memory.
- USB Universal Serial Bus
- FIG. 4 is a flowchart illustrating an example of an operation process creation process in the present embodiment.
- the operation process creation processing first displays an operation process creation screen in accordance with an execution instruction from the user or the like (S01), and by arrangement of nodes instructed by the user using the displayed screen, etc.
- the operation process (operation flow) is edited (S02).
- a subsequent candidate node is estimated from the operation process being created (S03).
- a subsequent candidate node is estimated from the type of operation target (S04).
- a subsequent candidate node is estimated from the past creation history (S05).
- the operation process creation process in the present embodiment may be performed by performing at least one of the processes of S03 to S05 described above, and the process order is not limited to the order shown in FIG. You may go on.
- the estimated candidate nodes are arranged on the palette and displayed on the screen (S06).
- the palette displaying the candidate nodes is arranged at a predetermined position on the screen described above.
- the predetermined position is, for example, as described above, the vicinity of the node arranged last on the screen, the vicinity of the cursor operated by the user, the position not overlapping with the node already arranged on the screen, etc. It is not limited to this.
- the operation process creation process information on the candidate node selected by the user from the candidate nodes arranged in the palette displayed by the process of S06 and arranged at a predetermined position is acquired (S07).
- it is determined whether or not the operation process creation is continued (S08).
- the process returns to S02.
- the creation process creation process when the creation is completed in the process of S08 (NO in S08), the created operation process is saved (S09), the creation history of the operation process is accumulated (S10), and the process Exit.
- candidate node estimation means 24 for example, candidates for nodes (for example, subsequent nodes) to be placed next to the already determined node (preceding node), the process definition being created, the type of operation target, and the past creation history Are estimated using at least one of them.
- candidates for nodes for example, subsequent nodes
- the process definition being created for example, the process definition being created
- the type of operation target for example, the process definition being created
- the past creation history are estimated using at least one of them.
- a candidate is estimated from a fixed rule predefined in the process being created, a candidate is estimated from a paired operation, or the same target is operated continuously.
- a candidate is estimated or a candidate is estimated in consideration of the operation target hierarchy.
- node candidates are estimated using at least one of the above-described candidate estimation methods. Each estimation method will be described below.
- FIG. 5 is a diagram illustrating an example of data when candidates are estimated based on a fixed rule.
- the fixed rule is information included in the operation target type information 32 described above.
- a candidate node to be placed is estimated from the correspondence between the state in which an operation process is being created as shown in FIG. 5 and the subsequent nodes.
- Examples of the fixed rule items shown in FIG. 5 include, but are not limited to, “currently being created” and “candidate node”.
- the state being created includes information on a preceding node whose arrangement has already been determined and a connecting line (arrow) connecting the preceding node and the succeeding node.
- “Activity” is estimated as a candidate node.
- “Activity” is a component that indicates a work instruction to a person who executes an operation work that actually performs an operation based on an operation process, for example. Further, when the configuration information related to the preceding node is acquired, the “operation part” related as the candidate node is estimated.
- an abnormal route when an abnormal route is being created, “Exit (for example, process termination)”, “Email (for example, e-mail transmission)”, “incident issue (for example, via a predetermined management tool) as candidate nodes A notification signal is transmitted to the user) ".
- the abnormal route, the approved route, and the rejected route shown in FIG. 5 can be grasped by, for example, the contents of transition arrows (joining lines) connecting the nodes, and the candidate nodes can also be estimated by the transition arrows.
- a plurality of candidate nodes can be set for one state being created.
- the types and contents of the fixed rules are not limited to those shown in FIG.
- FIG. 6 is a diagram illustrating an example of data when a candidate is estimated from a paired operation.
- “operation 1”, “operation 2”, and the like are included in the paired operation data items illustrated in FIG. 6, but are not limited thereto.
- a pair of operations between nodes is defined in advance, and when one node is arranged, the other node is estimated as a candidate node.
- a node for operating the same target such as “apply patch to server”, “restart service”, “confirm service status”, etc. is estimated as a candidate.
- a node for operating the same target such as “apply patch to server”, “restart service”, “confirm service status”, etc.
- a candidate nodes displayed as candidate nodes.
- the hierarchical structure can be obtained from a one-to-N relationship using, for example, the relation of CMDB CI (configuration item) included in the management server 12 or the like.
- a one-to-N relationship can be derived from a relationship such as “N applications exist on one service” or “N services exist on one server”.
- the present invention is not limited to this.
- operation components should be arranged as “application stop ⁇ service stop ⁇ server stop” in a hierarchical structure such as “application> service> server”.
- the operation component to be placed next can be estimated from the type of the operation target.
- the candidate node can be estimated from the one indicating the operation target of the input parameter of the operation component already arranged (for example, hostname, service, etc.).
- candidate nodes can be estimated from search results of search parts at the time of creating an operation process.
- the configuration information corresponding to the operation target is searched from the CMDB, the type of the operation target is specified, and if the type can be specified, the operation component corresponding to the type is estimated as a candidate.
- the history information includes, but is not limited to, the number of times the operation component is used, the context of the operation component node, and the set of operation components.
- operation components having a high use frequency (use count) in the past are preferentially displayed.
- history information of “context relationship of operation component nodes” or the like can also be used. In this case, as a successor of the operation component already arranged, what operation component is likely to be arranged is obtained from the history information, and the one with the highest possibility is preferentially displayed.
- candidate nodes are estimated using a set of operation components that are often used simultaneously from the past operation process creation history. For example, in the present embodiment, a set to which an operation component already arranged at the time of creation of an operation process belongs is obtained, and the operation components included in the obtained set are preferentially displayed.
- candidate nodes for example, those estimated from the state of the process definition being created, those estimated from the type of the operation target, and those estimated from the past creation history can be displayed in this order.
- the present invention is not limited to this.
- an operation component to be arranged in an operation process can be easily found. Specifically, when the operation process is created, the operation component to be arranged next is automatically displayed (without using the filter function), and the operation component to be arranged next can be efficiently found. In addition, since the palette is displayed in a pop-up at a predetermined position on the editor, it is easy to select an operation component. Thereby, in this embodiment, an operation process can be created quickly.
- FIG. 7 is a flowchart illustrating an example of an operation process creation history accumulation process.
- CMDB management server
- the processes in S21 to S30 are repeated until, for example, the processes for all the operation components of the process definition included in the operation process after creation are completed.
- the processing is repeatedly performed until the processing of all the operation components is completed, but the present invention is not limited to this, and other components (nodes) may be included.
- the relationship (correspondence relationship) of the extracted configuration items related to the operation target is acquired, and the same type of related items are extracted (S25), and the extracted configuration items are used as child configuration items. Add (S26).
- the usage count of the operation component is incremented by 1 (S27), and the preceding node and the subsequent node of the operation component are stored as history information of the preceding and following nodes (S28).
- a new additional part is added as an operation part that can be used corresponding to the process definition name as an operation part set (S29).
- the target operation component is not a new additional component (NO in S22) in the process of S22 described above, the next operation component is processed.
- the creation history information used for creating the operation process after the next time can be acquired by the above-described processing.
- FIG. 8 is a diagram illustrating an example of operation process creation history data.
- 8A shows a data example of the hierarchical structure of the configuration item
- FIG. 8B shows a data example of the usage frequency of the operation component
- FIG. 8C shows history information of the preceding and following nodes.
- a data example is shown
- FIG. 8D shows a data example of the operation component set.
- FIG. 8A is associated with, for example, “configuration item”, “child configuration item”, and the like, but is not limited thereto. Note that the data in FIG. 8A is data obtained by the process of S26 described above, for example.
- a configuration item associated in advance as a relation is stored as a child configuration item from the configuration item of the operation component used at the time of creating the operation process.
- “service” is stored as a child configuration item of “logical server”
- “work unit” and “job net” are stored as child configuration items of “service”.
- the work unit indicates an operation unit of an application, for example.
- a job net is a collection of one or more jobs that specify the execution order.
- FIG. 8B includes, for example, “operation part name”, “use count (1 month)”, “use count (6 months)”, “use count (1 year)”, and the like.
- the present invention is not limited to this.
- the data in FIG. 8B is data obtained by the process of S27 described above, for example.
- the operation component name is “service activation confirmation”
- the number of times of use in one month is 10 times and the number of times of use in 6 months. 50 times, showing that the number of times of use in one year is 98 times.
- examples of the items in FIG. 8C include “operation component name”, “preceding node”, “successive node”, and the like, but are not limited thereto.
- the data in FIG. 8C is data obtained by the process of S28 described above, for example.
- the operation component name is “stop server”
- information such as “service stop” for the preceding node and “Email” for the succeeding node is stored. Is done.
- FIG. 8D for example, “process definition name”, “used operation component”, and the like are associated, but it is not limited thereto.
- the data in FIG. 8D is data obtained by the process of S29 described above, for example.
- the process definition name is “Apply patch application”
- Activity, service stop, patch application, service start, Service activation confirmation and the like are stored.
- the used operation component indicates, for example, an operation component that can be used for each process definition.
- a node such as the next operation component can be estimated from the operation process being created using the information as described above.
- FIG. 9 is a flowchart illustrating an example of the estimation process according to the first embodiment.
- the preceding node is specified from the nodes that have already been determined (S41).
- S41 the position of the cursor displayed on the screen is used as a reference, and the nodes arranged on the left side and the upper side thereof are set as the preceding nodes.
- a subsequent node is specified (S42).
- S42 the nodes arranged on the right side and the lower side of the cursor displayed on the screen are set as subsequent nodes.
- the estimation process according to the first embodiment acquires the content of the transition arrow (connection line) from the preceding node to the subsequent node (S43), and uses a preset fixed rule from the acquired transition arrow.
- a candidate node for the corresponding state being created is estimated (S44).
- the contents of the arrow are acquired from the source and name of the arrow that is output from the preceding node.
- the content of the preceding node and the transition arrow (the state being created) is compared with the data shown in FIG. 5 described above, and a subsequent candidate node corresponding to the current state being created is estimated.
- the estimated candidate node is added to the candidate table or the like (S45).
- candidate nodes for the corresponding state being created are estimated from the combination rules of the paired operations as shown in FIG. 6 (S46). Thereafter, in the estimation process in the first embodiment, the candidate node is added to the candidate table (S47), and the process ends.
- FIG. 10 is a diagram illustrating an example of a candidate table in the first embodiment.
- a plurality of candidate nodes are stored in a predetermined order in the candidate table as shown in FIG. 10 by the estimation process shown in FIG. 9, and the contents are displayed at a predetermined position on the screen by a palette or the like. Is done.
- the candidate table described above may be stored in the storage unit 23 or the like.
- estimation of candidate nodes from a fixed rule and estimation of candidate nodes from a paired operation are continuously performed.
- the present invention is not limited to this. It may be performed individually.
- the processes of S41 to S45 are performed, and as a candidate node estimation process from a paired operation, for example, after the process of S41, S46, The process of S47 is performed.
- FIG. 11 is a flowchart illustrating an example of the estimation process according to the second embodiment.
- an example of candidate estimation processing using operations for the same target in succession is shown.
- the preceding and subsequent operation parts are extracted (S51), and then the processes of S52 to S55 are repeated until the processes for all extracted operation parts are completed (loop).
- I do for example, operation components arranged in a predetermined direction (at least one direction set in advance, up, down, left, and right) with respect to the position information of the cursor on the screen are extracted as the preceding operation components. To do.
- the operation target type of the target operation component is specified (S53).
- the operation target type information on the operation target type corresponding to each operation component is set in advance, and the operation target type is specified by referring to the information.
- the setting information described above may be stored in the storage unit 23.
- an operation component targeted for the same type is added to the candidate node (S54).
- candidate nodes may be added to the above-described candidate table. Note that the above-described processing of FIG. 11 is not limited to operation operation components, and may be performed on nodes including other components.
- FIG. 12 is a diagram illustrating an example of data corresponding to the estimation processing in the second embodiment.
- 12A illustrates an example of the operation target type
- FIG. 12B illustrates an example of the candidate table in the second embodiment.
- an operation target type corresponding to each operation component name is set, but the content, type, and the like are not limited to this.
- the operation component names are “server stop”, “server start”, “OS restart”, “server power status acquisition”, and “server normal operation check”.
- the operation target type Are both “servers”.
- the operation target type corresponding to the operation component name in advance, for example, when the preceding node is “stop server”, the same with reference to FIG. Operation operation parts of the operation target type can be set as candidate nodes. Therefore, in this embodiment, as shown in FIG. 12B, operation operation components of the same operation target type can be presented together.
- FIG. 13 is a flowchart illustrating an example of the estimation process according to the third embodiment.
- the third embodiment an example of the estimation process based on the hierarchical structure is shown.
- the preceding and subsequent operation parts are extracted (S61), and then the processes of S62 to S66 are repeated until the processes for all the extracted operation parts are completed (loop) )I do.
- an operation component arranged in a predetermined direction at least one direction set in advance, up, down, left, and right
- the position information of the cursor on the screen is extracted as a preceding operation component.
- the operation target type of the preceding operation component is specified (S63), and the type of configuration item that can be a parent or a child of the operation target type is specified (S64).
- S64 for example, a type having a parent-child hierarchical structure is specified using information as shown in FIG.
- the estimation process in the third embodiment adds an operation component targeted for the specified type to the candidate table (S65).
- FIG. 14 is a diagram illustrating an example of a candidate table in the third embodiment.
- one or a plurality of candidate nodes can be estimated as shown in FIG. 14 by performing the estimation process shown in FIG. 13 described above.
- “service” is included as a child configuration item of “logical server”. Therefore, in the third embodiment, when FIG. 8 is applied, one or a plurality of service (child) candidate nodes can be stored under the candidate node for the server (parent) as in the candidate table shown in FIG.
- candidate nodes for “service start”, “service stop”, and “service start confirmation” are added as lower (child) layers.
- FIG. 15 is a flowchart illustrating an example of the estimation process according to the fourth embodiment.
- the fourth embodiment an example in which an operation component is estimated from the type of operation target is shown.
- the preceding operation component is extracted (S71)
- the processing of S72 to S78 is repeated (loop) until the processing for all extracted operation components is completed.
- the process of S71 extracts, for example, an operation component arranged in a predetermined direction (at least one direction set in advance, up, down, left, and right) with respect to the position information of the cursor on the screen as the preceding operation component. To do.
- the component is a configuration information acquisition component (S73).
- S73 it is determined whether or not the configuration information has been acquired for only the preceding node whose arrangement has already been determined.
- a CMDB provided in the management server 12 is temporarily searched to extract an operation target (S74).
- an operation component that targets the operation target specified by the extraction is added as a candidate (S75).
- the component when the component is not a component for acquiring configuration information in the above-described process of S73 (NO in S73), for example, the type of the operation target is determined from a preset input parameter or the like (S76). Then, an operation component that targets the operation target specified by the determination is added as a candidate (S77). Note that the processes of S75 and S77 may be added as the above-described candidate table, for example.
- FIG. 16 is a diagram illustrating an example of a candidate table in the fourth embodiment.
- the operation component of the preceding node is an acquisition component of configuration information (configuration item)
- configuration item configuration information
- the operation target is specified as a work unit from the result of a temporary search using CMDB or the like.
- one or a plurality of operation components set in advance for work units are stored as candidate nodes in the candidate table.
- “work unit start”, “work unit stop”, and “work unit restart” are stored as candidate nodes by the processing of the fourth embodiment. It is not something.
- FIG. 17 is a flowchart illustrating an example of the estimation process according to the fifth embodiment.
- an example of an estimation process for estimating an operation component from a past creation history is shown.
- the candidate can be estimated from the context of the operation component, or the candidate can be estimated from the set of operation components.
- the preceding and subsequent operation parts are extracted (S81).
- the process of S81 extracts, for example, an operation component arranged in a predetermined direction (at least one direction set in advance, up, down, left, and right) with respect to the position information of the cursor on the screen as the preceding operation component. To do.
- the processing from S82 to S91 is repeated (loop A) until the processing for all extracted operation components is completed. Further, in the estimation process in the fifth embodiment, after the process of S82 to S91 is completed, the process of S92 to S96 is repeated (loop B) until the process for all the extracted operation components is completed.
- the processing target node is a preceding node (S84). It is determined whether or not a part is included (S85).
- a part is included (S85).
- a subsequent node corresponding to the preceding node is estimated as a candidate node (S86), and the estimated node is a candidate. It adds to the table (S87).
- the part name is not included in the process of S85 (NO in S85)
- no process is performed.
- the processing target node is a subsequent node. Therefore, in the estimation process in the fifth embodiment, it is determined whether or not the subsequent node to be processed is included in the part names in the history table of the preceding and following nodes (S88). Further, in the estimation process in the fifth embodiment, when the subsequent node is included in the part name of the history table (YES in S88), the preceding node corresponding to the subsequent node is estimated as a candidate node (S89). The added node is added to the candidate table (S90).
- the estimation process in the fifth embodiment does nothing if it is not included in the part name in the process of S88 (NO in S88).
- the above-described table shown in FIG. 8C can be used as the preceding and following node history tables, but is not limited thereto.
- the estimation process in the fifth embodiment as a process of loop B, it is determined whether or not a part to be processed is included in a history table of a preset part set (S93).
- a part to be processed is included in a history table of a preset part set (S93).
- all corresponding other nodes in the history table are estimated as candidate nodes (S94).
- the estimation process in Example 5 adds the estimated node to the candidate table (S95).
- no process is performed.
- the above-described table as shown in FIG. 8D can be used as the component set history table, but the present invention is not limited to this.
- FIG. 18 is a diagram illustrating an example of a candidate table in the fifth embodiment.
- FIG. 18A illustrates an example of the candidate node estimated from the context of the operation component and the candidate node estimated from the set of the operation component
- FIG. 18B illustrates the candidate node estimated from the context of the operation component
- FIG. 18C is a diagram illustrating an example of a candidate node estimated from a set of operation components.
- different candidate nodes suitable for the user can be presented according to the respective conditions as shown in FIGS. 18 (A) to (C).
- candidate tables as shown in FIGS. 18A to 18C obtained under a plurality of preset conditions can be acquired, and the acquired candidate tables can be displayed on the screen.
- a plurality of candidate tables may be displayed at different positions on the screen, and any one candidate table may be repeatedly displayed at a predetermined time interval.
- FIG. 19 is a flowchart illustrating an example of the estimation process according to the sixth embodiment.
- an example of an estimation process for estimating a candidate node from the number of times of use of operation components is shown.
- a node having the highest use frequency (the most frequently used) is first estimated as a candidate node from a preset use frequency table (S101), and the estimated node is added to the candidate table (S101). S102).
- the usage frequency table for example, the table shown in FIG. 8B described above can be used, but the table is not limited to this.
- the frequency of use is based on a predetermined period (for example, 1 month, 6 months, 1 year, etc.).
- FIG. 20 is a diagram illustrating an example of a candidate table in the sixth embodiment.
- the sixth embodiment for example, by performing the estimation process illustrated in FIG. 19, one or a plurality of candidate nodes can be presented as illustrated in FIG. 20.
- the specific example of the estimation process in the present embodiment is not limited to the above-described first to sixth examples.
- a combination of a plurality of examples is selected as a candidate node. May be estimated.
- twelve candidate nodes are presented.
- the number of candidate nodes is not limited to this.
- the number of candidate nodes displayed on the screen may vary depending on the size of the palette. Can be adjusted. Note that the candidate nodes displayed on the palette are displayed in a predetermined number from the highest candidate node in the candidate table, that is, the candidate nodes with high priority.
- 21 to 23 are diagrams (Nos. 1 to 3) illustrating display screen examples in the operation process creation environment according to the present embodiment.
- the first start component 51 is arranged on the operation process creation screen 50 as an example of the operation process creation editor, and then the “server stop (server A)” component. 52-1 is arranged.
- the subsequent candidate nodes of the component 52-1 are displayed on the screen.
- a palette 54-1 in which candidate nodes are arranged is displayed near the current position of the cursor 53 on the screen as a reference.
- the cursor 53 is a kind of pointer displayed in the display area of the screen. In the present embodiment, not only the cursor 53 but also various pointers are moved and determined by user operations.
- the palette 54-1 is arranged so that the displayed part (for example, the part arranged last) is not hidden from the position information of the parts 51 and 52-1 already determined. It may be displayed. Further, the display position of the palette 54-1 may be set based on the position information of both the cursor 53 and the parts 51 and 52-1. As a result, in this embodiment, the distance between the arrangement position of the subsequent node, the cursor 53, and the palette 54-1 can be shortened, and the user can select and arrange the next part with a simple operation. Therefore, in this embodiment, the creation time can be reduced.
- the candidate node can acquire a candidate node appropriate for the user by performing the above-described embodiment using the component 52-1 whose arrangement has been determined as the preceding node.
- the candidate node can also be acquired based on the state (for example, abnormality, approval, rejection) of the connection line (transition arrow) between the component 51 and the component 52-2.
- the content (meaning) of the arrow is displayed on the operation process creation screen 50, and the content of the arrow can be acquired from the displayed content.
- the number of candidate nodes 55 arranged on the palette 54-1 is not particularly limited, but is preferably about 10, for example, and can be changed according to the screen size and the like.
- the component 52-2 “get configuration information” when the component 52-2 “get configuration information” is arranged after the start component 51, the component 52-2 is replaced with the preceding node by the estimation process described above.
- Candidate nodes are estimated.
- the estimated number of candidate nodes 55 is arranged on the palette 54-2 in a predetermined order, and the parts 51, 52-2, etc. in which the position and arrangement of the cursor 53 are fixed as described above are used as a reference.
- the palette 54-2 is displayed on the operation process creation screen 50.
- by performing the above-described candidate node estimation processing as shown in FIGS. 22 and 23, it is possible to present different appropriate nodes as subsequent nodes, and the palette 54 is also easy for the user to operate.
- the user moves the cursor 53 from the candidate node 55 displayed on the palettes 54-1 and 54-2 shown in FIGS. 22 and 23, selects a subsequent node, and selects a predetermined position on the operation process creation screen 50. Can be placed quickly.
- components are represented by icons or names set for each node.
- the present invention is not limited to this.
- symbols and patterns set in advance are used. Etc. may be displayed.
- FIGS. 21 to 23 in this embodiment, since the palette is displayed in a pop-up at a predetermined position on the editor, it becomes easy to select the operation component, and the creation time can be greatly reduced.
- an operation process can be created quickly. Therefore, according to the present embodiment, the cost for creating the operation process can be greatly reduced.
- Smart technology refers to technology that determines the status of hardware and software by itself and optimizes it so that it can be used more easily and safely.
- it refers to a technology that autonomously predicts based on the relevance of operation components, but is not limited to this.
- the present embodiment can be applied to, for example, Systemwalker Runbook Automation (SRA) manufactured by Fujitsu Limited, but is not limited thereto.
- SRA Systemwalker Runbook Automation
- Operation system 11 PC DESCRIPTION OF SYMBOLS 12 Management server 13 Operation target server 14 Communication network 21 Input means 22 Output means 23 Storage means 24 Candidate node estimation means 25 Pallet generation means 26 Screen generation means 27 Transmission / reception means 28 Control means 31 Process definition information 32 Operation target type information 33 Creation history Information 34 Candidate table 41 Input device 42 Output device 43 Drive device 44 Auxiliary storage device 45 Main storage device 46 CPU 47 Network connection device 48 Storage means 50 Operation process creation screen 51, 52 Parts 53 Cursor 54 Palette 55 Candidate node
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
Abstract
運用プロセス作成プログラムにおいて、複数のノードを画面上に配置して運用プロセスを作成する際、予め設定されたプロセス定義、操作対象ノードの種別、及び過去の作成履歴のうち、少なくとも1つを用いて、配置が確定されたノードに対する後続の候補ノードを推定し、推定された前記候補ノードのうち、所定数の候補ノードを所定の順序で表示する表示領域を生成し、生成された前記表示領域を前記画面の所定位置に表示させる、処理をコンピュータに実行させる。
Description
本発明は、運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置に関する。
従来では、これまで運用手順書に従って人が行っていた運用作業の多くを自動化し、大規模かつ多様なシステムの運用作業を実施する必要性が高まっている。そこで、従来では、運用作業の自動化に必要な運用プロセス(運用フロー)を事前に作成し、作成した運用プロセスに従ってデータセンタ等にある各種の操作対象サーバ等を動作させる手法が存在する。
運用プロセスを作成する場合には、例えば専用の開発環境(エディタ)を用いて、予め設定された数百個程度の運用操作部品の中から運用目的に合った運用操作部品を選択し、選択した運用操作部品を運用手順に合わせて画面上に配置する。ここで、運用操作部品とは、例えば運用時のサーバの起動や人の介在等の操作を行う各種部品のことをいう。なお、上述した各運用操作部品は、手操作で定義する必要がある。また、運用プロセスを作成する際には、選択した運用操作部品の1つ1つを手作業で画面上に配置し、更に配置した運用操作部品を運用手順に従って結合する必要がある。
また、運用プロセス作成においては、運用操作部品を選択する際、運用プロセス作成の開発環境(エディタ)の画面の隅にパレットを表示し、そのパレット上に運用操作部品を配置してユーザに提示する仕組みが存在する。また、従来では、運用目的に近い運用操作部品を取得するために、キーワードを入力して運用操作部品の検索を行う手法が存在する。また、従来では、過去の入力パターンと現時点の入力パターンを比較判断し、次の入力の予測パターンを抽出したり、Graphical User Interface(GUI)に対する次のユーザ入力を予測する手法が存在する。更に、従来では、入力された設計図から詳細な設計部品毎の情報を取り出し、設計者が入力したクラス図及びシーケンス図から必要情報を抽出し、ソフトウェアデザインパターンが適用可能かどうかを判定する手法が存在する(例えば、特許文献1~3参照)。
しかしながら、従来の運用プロセスの作成環境では、予め定義されている運用操作部品の数が非常に多く、更に運用操作部品の他にもプロセスの開始や終了、電子メールの送受信等といった多種の部品も多く存在する。そのため、従来手法では、パレット等から多種にわたる目的の運用操作部品を迅速に探し当てるのが困難であった。なお、上述した従来手法では、キーワード入力による検索機能を用いているが、その場合であっても検索結果として得られる運用操作部品等の数が多く、そこから目的の部品を探す困難性が改善しているとはいえない。更に、入力したキーワードによっては、目的の部品が表示されない可能性があるため、適切な部品を検索するために適切なキーワードを入力しなければならない。そのため、従来手法では、運用プロセス作成者(ユーザ)の作成時間を大幅に消費してしまう問題がある。
そこで、1つの側面では、本発明は、運用プロセスを迅速に作成するための運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置を提供することを目的とする。
一態様の運用プロセス作成プログラムは、複数のノードを画面上に配置して運用プロセスを作成する際、予め設定されたプロセス定義、操作対象ノードの種別、及び過去の作成履歴のうち、少なくとも1つを用いて、配置が確定されたノードに対する後続の候補ノードを推定し、推定された前記候補ノードのうち、所定数の候補ノードを所定の順序で表示する表示領域を生成し、生成された前記表示領域を前記画面の所定位置に表示させる、処理をコンピュータに実行させる。
運用プロセスを迅速に作成することができる。
以下、図面に基づいて実施形態を説明する。
<運用システム例>
図1は、本実施形態における運用システムの一例を示す図である。図1に示す運用システム10は、情報処理装置の一例であるPersonal Computer(PC)11と、管理サーバ12と、1又は複数の操作対象サーバ13-1~13-n(以下、必要に応じて「操作対象サーバ13」と総称する)とを有する。なお、図1に示す運用システム10の例において、管理サーバ12と操作対象サーバ13とは、Local Area Network(LAN)やインターネット等に代表される通信ネットワーク14により接続されている。また、本実施形態においては、これに限定されるものではなく、例えばPC11と管理サーバ12とが通信ネットワーク14を介して接続されていてもよい。
図1は、本実施形態における運用システムの一例を示す図である。図1に示す運用システム10は、情報処理装置の一例であるPersonal Computer(PC)11と、管理サーバ12と、1又は複数の操作対象サーバ13-1~13-n(以下、必要に応じて「操作対象サーバ13」と総称する)とを有する。なお、図1に示す運用システム10の例において、管理サーバ12と操作対象サーバ13とは、Local Area Network(LAN)やインターネット等に代表される通信ネットワーク14により接続されている。また、本実施形態においては、これに限定されるものではなく、例えばPC11と管理サーバ12とが通信ネットワーク14を介して接続されていてもよい。
図1に示す運用システム10では、一例として、データセンタ等に集約された操作対象サーバ13に対し、本実施形態により作成された運用プロセス(運用フロー)に基づいて、それぞれの業務に係る運用作業等の自動化を実現するものである。
図1において、PC11は、本実施形態における運用プロセスを作成するための開発環境である。ユーザ(運用プロセス作成者)は、例えばPC11で作成した運用プロセスを管理サーバ12へ登録することで操作対象サーバ13等を用いた運用作業の自動化を行うことができる。
管理サーバ12は、運用作業を自動化する運用プロセスの実行と実行結果等の管理を行う。また、管理サーバ12は、運用プロセスを実行させる操作対象の一例である操作対象サーバ13の情報(例えば、ホスト名、IPアドレス、パスワード等)も構成情報として管理する。また、管理サーバ12は、上述した構成情報等に基づいて各操作対象サーバ13に対応する運用プロセスを実行させる。更に、管理サーバ12は、システム管理者等による実行状況の確認や、運用プロセスの起動や停止等の操作を実施するための画面出力等を行う。
なお、管理サーバ12は、例えばConfiguration Management Database(CMDB、構成管理データベース)等を用いることができる。CMDBは、Information Technology(IT)システムを構成する全てのConfiguration Item(CI、構成アイテム)の情報を一元的に管理するものである。管理サーバ12は、CMDBを有することで、運用プロセスにおける各構成アイテム(例えば、階層構造等)を関連付けて管理することができる。なお、上述したITシステムとは、例えば企業活動を実行するために構築された情報処理システムを意味するがこれに限定されるものではない。
操作対象サーバ13は、管理サーバ12により指示された運用プロセスを実行する対象機器である。なお、操作対象サーバ13は、例えば業務サーバ等の各種機器等を含む。操作対象サーバ13と管理サーバ12間におけるデータの送受信は、例えばSecure SHell(SSH)や、HyperText Transfer Protocol(HTTP)、Hypertext Transfer Protocol over Secure Socket Layer(HTTPS)等の通信によって行われる。
なお、上述した運用システム10において、管理サーバ12には、複数のPC11が接続されていてもよく、これにより複数のユーザ(運用プロセス作成者)がそれぞれ作成した運用プロセスの内容を管理サーバ12で管理することができる。また、上述した運用システム10では、PC11と管理サーバ12とが別体であるが、これに限定されるものではなく、PC11と管理サーバ12とが一体に形成されていてもよい。したがって、情報処理装置の一例としては、PC11であってもよく、管理サーバ12であってもよい。更に、本実施形態における情報処理装置は、PC11に限定されるものではなく、例えばスマートフォンやタブレット端末等のような携帯型の通信端末等であってもよい。
<PC11:機能構成例>
次に、PC11の機能構成例について図を用いて説明する。図2は、PCの機能構成の一例を示す図である。図2に示すPC11は、入力手段21と、出力手段22と、記憶手段23と、候補ノード推定手段24と、パレット生成手段25と、画面生成手段26と、送受信手段27と、制御手段28とを有する。
次に、PC11の機能構成例について図を用いて説明する。図2は、PCの機能構成の一例を示す図である。図2に示すPC11は、入力手段21と、出力手段22と、記憶手段23と、候補ノード推定手段24と、パレット生成手段25と、画面生成手段26と、送受信手段27と、制御手段28とを有する。
入力手段21は、PC11を使用する運用システム10のユーザ(運用プロセス作成者)等からの運用プロセス作成処理に関する各種指示の開始や終了等の入力を受け付ける。なお、入力手段21は、例えばキーボードやマウス等からなる。また、入力手段21は、音声等による入力であってもよく、その場合には、マイク等の音声入力手段等を有する。
出力手段22は、入力手段21により入力された内容や、入力内容に基づいて実行された内容等の出力を行う。なお、出力手段22は、例えば画面表示により出力するのであればディスプレイ等の表示手段を有し、音声により出力するのであれば、スピーカ等の音声出力手段を有する。
記憶手段23は、本実施形態において必要となる各種情報を記憶する。具体的には、記憶手段23には、プロセス定義情報31と、操作対象種別情報32と、作成履歴情報33と、候補テーブル34とを有する。
プロセス定義情報31は、例えば運用プロセスの作成中の状態に対応させて後続の候補ノードが設定された情報を含む。この情報は、予め設定される固定的なルールである。なお、候補ノードとは、例えば運用プロセスの作成時に使用される部品全体を示す。具体的には、候補ノードは、例えばシステムに対する所定の実行命令(例えば、起動、停止)に対する部品(運用操作部品)だけでなく、運用プロセスに基づいて実際に作業を行う人に対する作業指示用の部品も含まれる。更に、候補ノードには、プロセス等の開始や終了、電子メールの送受信用の部品等も含まれる。
また、プロセス定義情報31には、対となる操作の組み合わせ情報や、操作対象の階層構造等の情報を含めていてもよい。更に、プロセス定義情報31には、例えば、データセンタ等の運用システム10で行う日々の運用手順を自動化するために、システム内にすでに登録されている運用プロセス情報等を含む。
更に、プロセス定義情報31は、例えば運用システム10内で使用されるワークフローツールやIT運用管理ツールが有する機能を必要に応じて呼び出し、運用管理プロセスの実行を自動化するための情報を含む。また、プロセス定義情報31は、サーバやストレージの設定、バックアップ等を対象とする各種管理ツールを用いて運用管理プロセスの実行を自動化するための情報を含む。
操作対象種別情報32は、すでに配置されているノード(先行ノード)等から作成中の操作対象の種別を取得するための情報を含む。
作成履歴情報33は、例えばユーザが過去に行った運用プロセス作成におけるデータログ及び操作ログ等の履歴情報を含む。なお、作成履歴情報33は、複数のユーザにおける運用プロセス作成時の履歴情報が統計的に記憶されていてもよい。また、作成履歴情報33には、例えば時間情報が含まれていてもよい。また、作成履歴情報は、所定時間内におけるノード毎の使用頻度(使用回数)情報が含まれていてもよい。
候補テーブル34は、本実施形態において、推定される候補ノードの情報を含む。具体的には、例えば運用プロセス作成における開発環境(エディタ)の画面上のパレットに表示される部品群である。また、候補テーブル34には、運用操作部品だけでなく、人に対する作業指示用の部品や、プロセス等の開始や終了の部品、電子メールの送受信用の部品等のノードも含まれていてもよい。
また、記憶手段23は、上述した情報以外の情報を記憶してもよく、例えば本実施形態を実行するための各種設定情報等を記憶することができる。また、記憶手段23は、記憶された各種情報を必要に応じて所定のタイミングで読み出したり、運用プロセス作成処理に関する実行結果等を書き込んだりすることができる。なお、記憶手段23は、上述したような多種の情報の集合物であり、それらの情報を、例えばキーワード等を用いて検索し、抽出することができるように体系的に構成されているデータベースとしての機能も有していてもよい。
候補ノード推定手段24は、現在作成中の運用プロセスにおいて、すでに確定したノード(例えば、運用操作部品、作業指示用の部品、開始や終了の部品、電子メールの送受信用の部品等の各種部品)の後続のノードの候補を推定する。具体的には、候補ノード推定手段24は、例えば作成中のプロセス定義、操作対象のノードの種別、及び過去の作成履歴等のうち、少なくとも1つを用いて、すでに確定したノードの後続の候補ノードを推定する。なお、候補ノード推定手段24における候補ノードの推定例については、後述する。また、推定された候補ノードの情報は、記憶手段23に記憶されてもよく、パレット生成手段25に出力されてもよい。
パレット生成手段25は、候補ノード推定手段24により推定された1又は複数のノードの内容を運用プロセス作成画面の所定位置に表示するためのパレットを生成する。なお、パレットとは、例えば運用プロセス作成環境のエディタ画面等に存在するものであり、所定数の候補ノードを表示する表示領域である。つまり、パレット生成手段25は、表示領域生成手段の一例であり、本実施形態では例えばパレット以外の表示領域(例えば、別ウィンドウ画面)を生成してもよい。
本実施形態では、ユーザがパレットに配列されている少なくとも1つの候補ノードから後続のノードを選択し、選択したノードを画面上の所定位置に配置して運用プロセスを作成する。また、上述したノードの選択や配置は、例えばユーザがマウス等の入力手段21を用いて画面上に表示されたカーソル等を操作することで実現することができる。なお、カーソルとは、画面の表示領域に表示されるポインタの一種であり、ユーザの操作によって位置移動や位置が決定される。
更に、パレット生成手段25は、パレット内に表示される複数のノードの配置や表示位置、数等を調整する。これにより、本実施形態では、使用する可能性が高い候補ノードをユーザに提供することができる。
画面生成手段26は、本実施形態における運用プロセスを作成するための開発環境(エディタ)画面や各種設定情報の入力画面、作成後の運用プロセスの内容等を表示するための画面を生成する。なお、画面生成手段26で生成された開発環境(エディタ)画面に表示されるノードは、画面上ではノード毎に設定されたアイコンや名称等により表されていてもよく、その他、記号や模様、マーク、文字列等により表されていてもよい。
更に、画面生成手段26は、パレット生成手段25により生成された1又は複数の候補ノードが配置されたパレットの画面上の表示位置の設定を行う。ここで、画面生成手段26は、パレットの表示位置を、例えば画面上のカーソルの位置情報又は最後に配置されたノードの位置情報に基づいて設定する。具体的には、画面生成手段26は、ユーザが操作する画面上のカーソルの近辺にパレットの表示位置を設定する。これは、後続のノードを配置する位置は、最後に配置されたノードの近辺になる可能性が高く、ユーザが操作したカーソルの位置も、最後に配置されたノードの近辺にある可能性が高いからである。これにより、ユーザによるカーソルと、パレットと、後続ノードとのそれぞれの距離を短くすることができ、ユーザによるカーソルの移動距離及び移動時間を軽減すると共に、ユーザの操作負担も軽減することができる。
また、画面生成手段26は、パレット生成手段25により生成されるパレットの表示位置を、例えばすでに画面に配置されているノードの位置情報を用いて設定することができる。この場合、画面生成手段26は、パレット生成手段25により生成されるパレットの表示位置を、例えば画面上にすでに配置されたノードと重ならない位置に設定される。これにより、本実施形態では、すでに画面上に配置されたノードがパレットの表示により隠れてしまうのを防止することができる。なお、パレットを表示する場合には、画面サイズ等の関係により配置されたノードが隠れてしまう場合がある。そこで、本実施形態では、例えばすでに配置したノードが複数ある場合に、配置してからの経過時間が長いものが隠れるようにパレットを表示させることが好ましい。これにより、本実施形態では、画面に配置した直後のノードがパレットにより隠れるのを防止することができ、次のノードを配置する可能性が高い領域にパレットが表示されるのを防止することができる。
なお、パレットの表示位置については、上述した内容に限定されるものではなく、例えば、上述したカーソルの位置情報と、すでに配置されたノードの位置情報とに基づいて設定してもよい。画面生成手段26で生成された画面は、出力手段22のディスプレイ等に出力される。
送受信手段27は、本実施形態で実行される各処理に必要な情報や、運用プロセス作成処理を実現するための実行プログラム(例えば、運用プロセス作成プログラム)等を送受信することが可能な通信インターフェースである。また、送受信手段27は、PC11により実行された各種の実行結果等を、管理サーバ12等の他の外部装置に送信することができる。
制御手段28は、PC11の各構成全体の制御を行う。例えば、制御手段28は、例えば、候補ノードの推定や、パレット生成、画面生成、送受信等における処理等のうち、少なくとも1つを制御する。
<PC11:ハードウェア構成例>
次に、PC11のハードウェア構成例について図を用いて説明する。図3は、PCのハードウェア構成の一例を示す図である。図3に示すハードウェア構成例は、入力装置41と、出力装置42と、ドライブ装置43と、補助記憶装置44と、主記憶装置45と、各種制御を行うCentral Processing Unit(CPU)46と、ネットワーク接続装置47とを有し、これらはシステムバスBで相互に接続されている。
次に、PC11のハードウェア構成例について図を用いて説明する。図3は、PCのハードウェア構成の一例を示す図である。図3に示すハードウェア構成例は、入力装置41と、出力装置42と、ドライブ装置43と、補助記憶装置44と、主記憶装置45と、各種制御を行うCentral Processing Unit(CPU)46と、ネットワーク接続装置47とを有し、これらはシステムバスBで相互に接続されている。
入力装置41は、例えばPC11のユーザ等が操作するキーボードやマウス等のポインティングデバイスを有しており、例えばユーザ等からのプログラムの実行等、各種操作信号を入力する。
出力装置42は、本実施形態における処理を行うコンピュータ本体を操作するのに必要な各種ウィンドウやデータ等を表示するディスプレイを有し、CPU46が実行する制御プログラムの実行経過や結果等を表示する。
ここで、PC11のコンピュータ本体にインストールされる実行プログラム(運用プロセス作成プログラム)は、例えば記録媒体48等により提供される。ドライブ装置43は、記録媒体48に記録された実行プログラム等の各種データを読み込む。つまり、記録媒体48は、ドライブ装置43にセット可能であり、記録媒体48に含まれる実行プログラムが、記録媒体48からドライブ装置43を介して補助記憶装置44にインストールされる。なお、ドライブ装置43は、セットされた記録媒体48が書き込み可能である場合に、例えばプログラムを実行することで得られた実行結果等のデータを書き込むこともできる。
補助記憶装置44は、ハードディスクドライブやSolid State Drive(SSD)等のストレージ手段であり、本実施形態における実行プログラムや制御プログラム等を記憶し、必要に応じて入出力を行う。
主記憶装置45は、CPU46により補助記憶装置44から読み出された実行プログラム等を格納する。なお、主記憶装置45は、例えばRead Only Memory(ROM)やRandom Access Memory(RAM)等を含む。
CPU46は、Operating System(OS)等の制御プログラム、及び主記憶装置45に格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御することで、運用プロセス作成における各処理を実現する。なお、プログラム実行中に必要な各種情報等は、CPU46により補助記憶装置44等から取得される。また、実行結果等は、CPU46により補助記憶装置44等に格納される。
ネットワーク接続装置47は、管理サーバ12と接続することにより、データの送受信を可能とする通信インターフェースである。また、ネットワーク接続装置47は、管理サーバ12と接続することにより、実行プログラムや各種データを取得したり、プログラムを実行することで得られた実行結果又は本実施形態に対応する実行プログラム自体を管理サーバ12等に提供したりすることができる。なお、本実施形態においては、ネットワーク接続装置47を介して操作対象サーバ13と接続して各種データの送受信を行ってもよい。
記録媒体48は、上述したように実行プログラム等を格納するコンピュータで読み取り可能な記録媒体である。記録媒体48は、例えばUniversal Serial Bus(USB)メモリやCD-ROM、DVDディスク等の可搬型記録媒体であってもよく、フラッシュメモリ等の半導体メモリであってもよい。
<運用プロセス作成処理例>
ここで、本実施形態における運用プロセス作成処理例について、フローチャートを用いて説明する。図4は、本実施形態における運用プロセス作成処理の一例を示すフローチャートである。図4の例において、運用プロセス作成処理は、まず、ユーザ等の実行指示により、運用プロセス作成用画面を表示し(S01)、表示された画面を用いてユーザにより指示されたノードの配置等により運用プロセス(運用フロー)を編集する(S02)。
ここで、本実施形態における運用プロセス作成処理例について、フローチャートを用いて説明する。図4は、本実施形態における運用プロセス作成処理の一例を示すフローチャートである。図4の例において、運用プロセス作成処理は、まず、ユーザ等の実行指示により、運用プロセス作成用画面を表示し(S01)、表示された画面を用いてユーザにより指示されたノードの配置等により運用プロセス(運用フロー)を編集する(S02)。
ここで、運用プロセス作成処理は、作成中の運用プロセスから後続の候補ノードを推定する(S03)。また、運用プロセス作成処理は、操作対象の種別から後続の候補ノードを推定する(S04)。更に、運用プロセス作成処理は、過去の作成履歴から後続の候補ノードを推定する(S05)。なお、本実施形態における運用プロセス作成処理は、上述したS03~S05の処理のうち、少なくとも1つの処理を行えばよく、処理の順序も図4に示す順序に限定されるものではなく、どの順序で行ってもよい。
次に、運用プロセス作成処理は、推定された候補ノードをパレットに配置して画面に表示する(S06)。なお、S06の処理では、候補ノードが表示されたパレットを、上述した画面上の所定の位置に配置する。所定の位置とは、例えば上述したように、画面上に最後に配置されたノードの近辺や、ユーザが操作したカーソルの近辺、画面上にすでに配置されたノードと重ならない位置等であるが、これに限定されるものではない。
ここで、運用プロセス作成処理は、S06の処理により表示されたパレットに配置された候補ノードの中から、ユーザにより選択され、所定の位置に配置した候補ノードの情報を取得する(S07)。次に、運用プロセス作成処理は、運用プロセスの作成を続けるか否かを判断し(S08)、作成を続ける場合(S08において、YES)、S02の処理に戻る。また、運用プロセス作成処理は、S08の処理において、作成を終了する場合(S08において、NO)、作成した運用プロセスを保存し(S09)、運用プロセスの作成履歴を集積して(S10)、処理を終了する。
<候補ノード推定手段24における推定処理の具体例>
次に、上述した候補ノード推定手段24における推定処理の具体例について説明する。候補ノード推定手段24では、例えばすでに確定したノード(先行ノード)の次に配置すべきノード(例えば、後続ノード等)の候補を、作成中のプロセス定義、操作対象の種別、及び過去の作成履歴のうち、少なくとも1つを用いて推定する。以下に、それぞれの具体例について説明する。
次に、上述した候補ノード推定手段24における推定処理の具体例について説明する。候補ノード推定手段24では、例えばすでに確定したノード(先行ノード)の次に配置すべきノード(例えば、後続ノード等)の候補を、作成中のプロセス定義、操作対象の種別、及び過去の作成履歴のうち、少なくとも1つを用いて推定する。以下に、それぞれの具体例について説明する。
<(1)作成中のプロセス定義から候補を推定する場合>
本実施形態では、例えば作成中のプロセスに予め定義された固定的なルールから候補を推定したり、対となる操作から候補を推定したり、連続して同じ対象を操作することを考慮して候補を推定したり、操作対象の階層を考慮して候補を推定する。なお、本実施形態では、上述した候補の推定手法のうち、少なくとも1つを用いてノードの候補を推定する。以下に各推定手法について説明する。
本実施形態では、例えば作成中のプロセスに予め定義された固定的なルールから候補を推定したり、対となる操作から候補を推定したり、連続して同じ対象を操作することを考慮して候補を推定したり、操作対象の階層を考慮して候補を推定する。なお、本実施形態では、上述した候補の推定手法のうち、少なくとも1つを用いてノードの候補を推定する。以下に各推定手法について説明する。
<(a)固定的なルールから候補を推定する場合>
図5は、固定的なルールに基づいて候補を推定する場合のデータの一例を示す図である。なお、固定的にルールは、上述する操作対象種別情報32に含まれる情報である。固定的なルールから候補を推定する場合には、図5に示すような運用プロセスの作成中の状態と、その後続のノードの対応関係から、配置すべき候補ノードを推定する。図5に示す固定的なルールの項目としては、例えば「作成中の状態」、「候補ノード」等があるが、これに限定されるものではない。また、作成中の状態には、すでに配置が確定した先行ノードと、先行ノードと後続ノードとを結ぶ結合線(矢印)の情報を含む。
図5は、固定的なルールに基づいて候補を推定する場合のデータの一例を示す図である。なお、固定的にルールは、上述する操作対象種別情報32に含まれる情報である。固定的なルールから候補を推定する場合には、図5に示すような運用プロセスの作成中の状態と、その後続のノードの対応関係から、配置すべき候補ノードを推定する。図5に示す固定的なルールの項目としては、例えば「作成中の状態」、「候補ノード」等があるが、これに限定されるものではない。また、作成中の状態には、すでに配置が確定した先行ノードと、先行ノードと後続ノードとを結ぶ結合線(矢印)の情報を含む。
例えば、図5において、先行ノードとして運用操作部品ノードが配置されている場合には、候補ノードとして「Activity」が推定される。なお、「Activity」とは、例えば運用プロセスに基づいて実際に動作を行う運用業務を実行する人に対する作業指示を示す部品である。また、先行ノードに関する構成情報を取得している場合には、候補ノードとして関連する「運用操作部品」が推定される。
また、異常ルートを作成中の場合には、候補ノードとして「Exit(例えば、プロセス終了)」、「Email(例えば、電子メール送信)」、「インシデント発行(例えば、所定の管理ツールを介して対象者に通知信号を送信)」が推定される。図5に示す異常ルート、承認ルート、及び却下ルートは、例えばノード間を結ぶ遷移矢印(結合線)の内容によって把握することができ、その遷移矢印によっても候補ノードを推定することができる。
このように、本実施形態では、1つの作成中の状態に対して、複数の候補ノードを設定しておくことができる。なお、固定的なルールの種類や内容については、図5に限定されるものではない。
<(b)対となる操作から候補を推定する場合>
図6は、対となる操作から候補を推定する場合のデータの一例を示す図である。図6に示す対となる操作のデータの項目としては、例えば「操作1」、「操作2」等があるが、これに限定されるものではない。図6の例では、ノード間で対となる操作を予め定義しておき、一方のノードが配置されたときに、他方のノードを候補ノードとして推定する。
図6は、対となる操作から候補を推定する場合のデータの一例を示す図である。図6に示す対となる操作のデータの項目としては、例えば「操作1」、「操作2」等があるが、これに限定されるものではない。図6の例では、ノード間で対となる操作を予め定義しておき、一方のノードが配置されたときに、他方のノードを候補ノードとして推定する。
具体的には、図6に示すように、操作1と操作2との関係において、例えば「起動」操作の対として「停止」、「組み込み」操作の対として「切り離し」、「作成」操作の対として「削除」等がある。本実施形態では、例えば、サービスの「停止」が行った後に、バックアップ等の何らかの操作を行い、その後にサービスの「起動」を行う可能性がある。また、本実施形態では、例えば負荷分散装置等から「切り離し」、パッチの適用等の何らかの操作をした後に、再度負荷分散装置等へ「組み込み」を行う可能性がある。また、本実施形態では、例えばファイルを「作成」の場合には、その作成したファイルを後段の処理で「削除」する処理を行う可能性がある。したがって、本実施形態では、上述したような対となる操作を予め設定しておくことで、候補ノードの適切な推定を実現する。
<(c)連続して同じ対象を操作することを考慮して候補を推定する場合>
また、本実施形態では、ある特定の機器に操作を行う際に、連続して複数の同じ操作を行う可能性が高い。したがって、本実施形態では、例えばすでに配置されている運用操作部品と同じ対象を操作する運用操作部品を後続に配置すべきものとしてノードを推定する。
また、本実施形態では、ある特定の機器に操作を行う際に、連続して複数の同じ操作を行う可能性が高い。したがって、本実施形態では、例えばすでに配置されている運用操作部品と同じ対象を操作する運用操作部品を後続に配置すべきものとしてノードを推定する。
例えば、「サービス停止」の場合には、「サーバにパッチの適用」、「サービスの再起動」、「サービスの状態確認」等の同一対象を操作するためのノードを候補として推定する。また、同様に、例えば「ファイルの存在確認」の場合には、「ファイルの転送」、「ファイルの削除」等を候補ノードとして表示する。
<(d)操作対象の階層を考慮して候補を推定する場合>
また、本実施形態では、構成アイテムの階層構造の順序で操作を実施する可能性がある。したがって、本実施形態では、この階層構造の順序に基づいて、後続に配置すべき運用操作部品を提案する。
また、本実施形態では、構成アイテムの階層構造の順序で操作を実施する可能性がある。したがって、本実施形態では、この階層構造の順序に基づいて、後続に配置すべき運用操作部品を提案する。
なお、階層構造は、例えば管理サーバ12等が有するCMDBのCI(構成アイテム)のリレーションを用いて、1対Nの関係から求めることができる。例えば、1対Nの関係は、「1個のサービス上にN個のアプリケーションが存在する」、「1個のサーバの上にN個のサービスが存在する」等の関係より、階層構造が導き出せるが、これに限定されるものではない。本実施形態では、例えば、「アプリケーション>サービス>サーバ」のような階層構造により、「アプリケーションの停止→サービスの停止→サーバの停止」のように運用操作部品を配置すべきと推定される。
<(2)操作対象の種別から候補を推定する場合>
また、本実施形態では、例えば操作対象の種別から次に配置すべき運用操作部品を推定することができる。具体的には、本実施形態では、すでに配置されている運用操作部品の入力パラメータの操作対象を示すもの(例えば、hostname,service等)から候補ノードを推定することができる。また、本実施形態では、例えば運用プロセス作成時の検索部品の検索結果等から候補ノードを推定することができる。この場合には、例えば、操作対象に対応する構成情報をCMDBから検索し、操作対象がどのような種別なのかを特定し、種別が特定できたらそれに対応した運用操作部品を候補として推定する。また、本実施形態では、例えば「機器種別(サーバ、PC、ネットワーク機器)」、「ソフトウェア種別(クラスタ、アプリサーバ、仮想サーバ)」、「ファイル、ディレクトリ等」、「OSの種類」等からも推定が可能である。
また、本実施形態では、例えば操作対象の種別から次に配置すべき運用操作部品を推定することができる。具体的には、本実施形態では、すでに配置されている運用操作部品の入力パラメータの操作対象を示すもの(例えば、hostname,service等)から候補ノードを推定することができる。また、本実施形態では、例えば運用プロセス作成時の検索部品の検索結果等から候補ノードを推定することができる。この場合には、例えば、操作対象に対応する構成情報をCMDBから検索し、操作対象がどのような種別なのかを特定し、種別が特定できたらそれに対応した運用操作部品を候補として推定する。また、本実施形態では、例えば「機器種別(サーバ、PC、ネットワーク機器)」、「ソフトウェア種別(クラスタ、アプリサーバ、仮想サーバ)」、「ファイル、ディレクトリ等」、「OSの種類」等からも推定が可能である。
<(3)過去の作成履歴から候補を推定する場合>
また、本実施形態では、過去の作成履歴から候補を推定する場合に、例えば過去の運用プロセスの開発時の履歴を保存しておき、その履歴に基づいて後続の運用操作部品等のノードを推定する。なお、履歴情報には、運用操作部品の使用回数や運用操作部品ノードの前後関係、運用操作部品のセット等があるが、これに限定されるものではない。
また、本実施形態では、過去の作成履歴から候補を推定する場合に、例えば過去の運用プロセスの開発時の履歴を保存しておき、その履歴に基づいて後続の運用操作部品等のノードを推定する。なお、履歴情報には、運用操作部品の使用回数や運用操作部品ノードの前後関係、運用操作部品のセット等があるが、これに限定されるものではない。
<(a)運用操作部品の使用回数>
本実施形態では、例えば過去に使用頻度(使用回数)の高い運用操作部品を優先的に表示する。また、本実施形態では、「運用操作部品ノードの前後関係」の履歴情報等も用いることができる。この場合には、すでに配置されている運用操作部品の後続として、どのような運用操作部品が配置される可能性が高いかを履歴情報から求め、可能性の高いものを優先的に表示する。
本実施形態では、例えば過去に使用頻度(使用回数)の高い運用操作部品を優先的に表示する。また、本実施形態では、「運用操作部品ノードの前後関係」の履歴情報等も用いることができる。この場合には、すでに配置されている運用操作部品の後続として、どのような運用操作部品が配置される可能性が高いかを履歴情報から求め、可能性の高いものを優先的に表示する。
<(b)運用操作部品のセット>
また、本実施形態では、過去の運用プロセスの作成履歴からよく同時に利用される運用操作部品のセットを用いて候補ノードを推定する。例えば、本実施形態では、運用プロセスの作成時に既に配置している運用操作部品が所属するセットを求め、求めたセットに含まれる運用操作部品を優先的に表示する。
また、本実施形態では、過去の運用プロセスの作成履歴からよく同時に利用される運用操作部品のセットを用いて候補ノードを推定する。例えば、本実施形態では、運用プロセスの作成時に既に配置している運用操作部品が所属するセットを求め、求めたセットに含まれる運用操作部品を優先的に表示する。
なお、候補ノードを表示する場合には、例えば上述した作成中のプロセス定義の状態から推定したもの、操作対象の種別から推定したもの、過去の作成履歴から推定したものの順で表示することができるが、これに限定されるものではない。
上述したように、本実施形態によれば、運用プロセスに配置すべき運用操作部品が容易に見つけられる。具体的には、運用プロセスの作成時に、次に配置すべき運用操作部品が自動(フィルタ機能を用いずに)で表示され、次に配置する運用操作部品効率的に見つけることができる。また、パレットがエディタ上の所定の位置にポップアップで表示されるため、運用操作部品が選択しやすい。これにより、本実施形態では、迅速に運用プロセスを作成することができる。
<S10:運用プロセスの作成履歴の集積処理>
ここで、上述したS10に示す運用プロセスの作成履歴の集積処理について、フローチャートを用いて説明する。図7は、運用プロセスの作成履歴の集積処理の一例を示すフローチャートである。図7に示す集積処理では、運用プロセス定義の保存時に操作対象の階層構造を管理サーバ(CMDB)から導き出す処理と運用プロセスの保存時に作成履歴を蓄積する処理を実行する。
ここで、上述したS10に示す運用プロセスの作成履歴の集積処理について、フローチャートを用いて説明する。図7は、運用プロセスの作成履歴の集積処理の一例を示すフローチャートである。図7に示す集積処理では、運用プロセス定義の保存時に操作対象の階層構造を管理サーバ(CMDB)から導き出す処理と運用プロセスの保存時に作成履歴を蓄積する処理を実行する。
具体的には、図7に示す集積処理では、S21~S30の処理により、例えば、作成後の運用プロセスに含まれるプロセス定義の全ての運用操作部品に対する処理が完了するまで繰り返し処理が行われる。なお、図7の例では、全ての運用操作部品の処理が完了するまで繰り返し処理が行われるが、これに限定されるものではなく、他の部品(ノード)を含んでいてもよい。
まず、集積処理は、前回の保存時の内容と比較し、新規の追加部品があるか否かを判断する(S21)。追加部品がある場合(S22において、YES)、運用操作部品の操作対象を特定し(S23)、管理サーバ12のCMDB等から操作対象を抽出する(S24)。
次に、集積処理では、抽出した操作対象に関する構成アイテムのリレーション(対応関係)を取得し、同種のものが複数関連づいているものを抽出し(S25)、抽出した構成アイテムを子構成アイテムとして追加する(S26)。次に、集積処理では、運用操作部品の使用回数を1プラスし(S27)、運用操作部品の先行ノードと、後続ノードとを前後ノードの履歴情報として記憶する(S28)。
次に、集積処理では、運用操作部品セットとして、新規の追加部品をプロセス定義名に対応して使用可能な運用操作部品として追加する(S29)。また、集積処理では、上述したS22の処理において、対象の運用操作部品が新規の追加部品でない場合(S22において、NO)、次の運用操作部品に対して処理を行う。本実施形態では、上述した処理により、次回以降の運用プロセス作成に利用される作成履歴情報を取得することができる。
ここで、図8は、運用プロセスの作成履歴のデータの一例を示す図である。図8(A)では、構成アイテムの階層構造のデータ例を示し、図8(B)では、運用操作部品の使用頻度のデータ例を示し、図8(C)では、前後ノードの履歴情報のデータ例を示し、図8(D)では、運用操作部品セットのデータ例を示している。
図8(A)の項目としては、例えば「構成アイテム」、「子構成アイテム」等が関連づけられているが、これに限定されるものではない。なお、図8(A)のデータは、例えば上述したS26の処理で得られるデータである。
具体的には、本実施形態では、運用プロセス作成時に使用した運用操作部品の構成アイテムから、そのリレーションとして予め関連づけられている構成アイテムを子構成アイテムとして記憶する。例えば、図8(A)の例では、「論理サーバ」の子構成アイテムとして「サービス」が記憶され、「サービス」の子構成アイテムとして「ワークユニット」、「ジョブネット」が記憶される。なお、ワークユニットとは、例えばアプリケーションの運用単位を示す。また、ジョブネットとは、実行順序を指定した、1つ以上のジョブの集まりを示す。
また、図8(B)の項目としては、例えば「運用操作部品名」、「使用回数(1ヶ月)」、「使用回数(6ヶ月)」、「使用回数(1年)」等があるが、これに限定されるものではない。なお、図8(B)のデータは、例えば上述したS27の処理で得られるデータである。具体的には、図8(B)の例では、例えば運用操作部品名が「サービスの起動確認」である場合に、1ヶ月間での使用回数が10回、6ヶ月間での使用回数が50回、1年間での使用回数が98回であることを示している。
また、図8(C)の項目としては、例えば「運用操作部品名」、「先行ノード」、「後続ノード」等があるが、これに限定されるものではない。なお、図8(C)のデータは、例えば上述したS28の処理で得られるデータである。具体的には、図8(C)の例では、例えば、運用操作部品名が「サーバの停止」である場合に、先行ノードが「サービスの停止」、後続ノードが「Email」といった情報が記憶される。
また、図8(D)の項目としては、例えば「プロセス定義名」、「使用運用操作部品」等が関連づけられているが、これに限定されるものではない。なお、図8(D)のデータは、例えば上述したS29の処理で得られるデータである。具体的には、図8(D)の例では、プロセス定義名が「アプリのパッチの適用」である場合に、使用運用操作部品として、Activity、サービスの停止、パッチの適用、サービスの開始、サービスの起動確認等が記憶される。なお、使用運用操作部品とは、例えば、プロセス定義毎に使用可能な運用操作部品を示す。本実施形態では、上述したような情報を用いて作成中の運用プロセスから次の運用操作部品等のノードを推定することができる。
<作成中の運用プロセスから運用操作部品を推定する処理の具体的な実施例>
次に、作成中の運用プロセスから運用操作部品を推定する処理の具体的な実施例について説明する。
次に、作成中の運用プロセスから運用操作部品を推定する処理の具体的な実施例について説明する。
<実施例1>
図9は、実施例1における推定処理の一例を示すフローチャートである。なお、実施例1では、上述した固定的なルールと対となる操作とを用いた候補の推定処理の一例を示している。実施例1における推定処理は、まず作成中の運用プロセスにおいて、すでに確定したノードの中から先行ノードを特定する(S41)。S41の処理では、例えば画面に表示されたカーソルの位置を基準とし、その左側及び上側に配置されているノードを先行ノードとする。次に、実施例1における推定処理は、後続ノードを特定する(S42)。S42の処理では、例えば画面に表示されたカーソルの右側及び下側に配置されているノードを後続ノードとする。
図9は、実施例1における推定処理の一例を示すフローチャートである。なお、実施例1では、上述した固定的なルールと対となる操作とを用いた候補の推定処理の一例を示している。実施例1における推定処理は、まず作成中の運用プロセスにおいて、すでに確定したノードの中から先行ノードを特定する(S41)。S41の処理では、例えば画面に表示されたカーソルの位置を基準とし、その左側及び上側に配置されているノードを先行ノードとする。次に、実施例1における推定処理は、後続ノードを特定する(S42)。S42の処理では、例えば画面に表示されたカーソルの右側及び下側に配置されているノードを後続ノードとする。
次に、実施例1における推定処理は、先行ノードから後続ノードまでの遷移矢印(結合線)の内容を取得し(S43)、取得した遷移矢印から、予め設定された固定的なルールを用いて該当する作成中の状態に対する候補ノードを推定する(S44)。なお、S43の処理では、例えば先行ノードから出ている矢印の出元や名前から矢印の内容を取得する。また、S44の処理では、例えば先行ノードと遷移矢印の内容(作成中の状態)と上述した図5に示すデータを比較して現在の作成中の状態に対応する後続の候補ノードを推定する。なお、実施例1における推定処理は、推定した候補ノードを候補テーブル等に追加する(S45)。
次に、実施例1における推定処理は、上述した図6に示すような対となる操作の組み合わせルールから該当する作成中の状態に対する候補ノードを推定する(S46)。その後、実施例1における推定処理は、候補ノードを候補テーブルに追加し(S47)、処理を終了する。
ここで、図10は、実施例1における候補テーブルの一例を示す図である。本実施形態では、上述した図9に示す推定処理により、図10に示すような候補テーブルに複数の候補ノードが所定の順序で記憶され、この内容がパレット等により画面上の所定の位置に表示される。なお、上述した候補テーブルは、記憶手段23等に記憶されてもよい。
なお、上述した実施例1における推定処理では、固定的なルールからの候補ノードの推定と、対となる操作からの候補ノードの推定とを連続して行ったが、これに限定されるものではなく、個々に行ってもよい。その場合には、固定的なルールからの候補ノードの推定処理として、例えばS41~S45の処理を行い、また対となる操作からの候補ノードの推定処理として、例えばS41の処理の後、S46、S47の処理を行う。
<実施例2>
図11は、実施例2における推定処理の一例を示すフローチャートである。なお、実施例2では、連続して同じ対象に対する操作を用いた候補の推定処理の一例を示している。
図11は、実施例2における推定処理の一例を示すフローチャートである。なお、実施例2では、連続して同じ対象に対する操作を用いた候補の推定処理の一例を示している。
実施例2における推定処理は、例えば先行及び後続の運用操作部品を抽出し(S51)、その後、S52~S55の処理を、抽出した全ての運用操作部品に対する処理が終了するまで繰り返す処理(ループ)を行う。なお、S51の処理は、例えば画面上のカーソルの位置情報に対して所定の方向(上下左右のうち予め設定された少なくとも1つの方向)に配置されている運用操作部品を先行運用操作部品として抽出する。
実施例2における推定処理は、対象の運用操作部品の操作対象種別を特定する(S53)。なお、操作対象種別は、予め各運用操作部品に対応する操作対象種別の情報を設定しておき、その情報を参照することで、操作対象種別を特定する。なお、上述した設定情報は、記憶手段23に記憶されていてもよい。また、図11に示す推定処理は、同じ種別を対象とする運用操作部品を候補ノードに追加する(S54)。S54の処理では、例えば上述した候補テーブルに候補ノードを追加してもよい。なお、上述した図11の処理は、運用操作部品に限定されるものではなく、他の部品を含むノードに対して行ってもよい。
ここで、図12は、実施例2における推定処理に対応するデータの一例を示す図である。なお、図12(A)は、操作対象種別の一例を示し、図12(B)は、実施例2における候補テーブルの一例を示している。図12(A)では、各運用操作部品名に対応する操作対象種別が設定されているが、内容や種類等についてはこれに限定されるものではない。例えば、運用操作部品名が、「サーバの停止」、「サーバの開始」、「OSの再起動」、「サーバの電源状態取得」、及び「サーバの正常動作確認」であれば、操作対象種別は何れも「サーバ」となる。このように、本実施形態では、運用操作部品名に対応する操作対象種別を予め設定することで、例えば先行ノードが「サーバの停止」である場合に、図12(A)を参照して同一の操作対象種別の運用操作部品を候補ノードとすることができる。したがって、本実施形態では、図12(B)に示すように、同一の操作対象種別の運用操作部品を纏めて提示することができる。
<実施例3>
図13は、実施例3における推定処理の一例を示すフローチャートである。なお、実施例3では、階層構造に基づく推定処理の一例を示している。実施例3における推定処理は、例えば先行及び後続の運用操作部品を抽出し(S61)、その後、S62~S66の処理を、抽出した全ての運用操作部品に対する処理が終了するまで、繰り返す処理(ループ)を行う。なお、S61の処理は、例えば画面上のカーソルの位置情報に対して所定の方向(上下左右のうち予め設定された少なくとも1つの方向)に配置されている運用操作部品を先行運用操作部品として抽出する。
図13は、実施例3における推定処理の一例を示すフローチャートである。なお、実施例3では、階層構造に基づく推定処理の一例を示している。実施例3における推定処理は、例えば先行及び後続の運用操作部品を抽出し(S61)、その後、S62~S66の処理を、抽出した全ての運用操作部品に対する処理が終了するまで、繰り返す処理(ループ)を行う。なお、S61の処理は、例えば画面上のカーソルの位置情報に対して所定の方向(上下左右のうち予め設定された少なくとも1つの方向)に配置されている運用操作部品を先行運用操作部品として抽出する。
実施例3における推定処理は、先行運用操作部品の操作対象種別を特定し(S63)、操作対象種別の親や子になりえる構成アイテムの種別を特定する(S64)。なお、S64の処理では、例えば、図8(A)に示すような情報を用いて親子の階層構造を有する種別を特定する。次に、実施例3における推定処理は、特定した種別を対象とする運用操作部品を候補テーブルに追加する(S65)。
ここで、図14は、実施例3における候補テーブルの一例を示す図である。実施例3では、上述した図13に示す推定処理を行うことにより、図14に示すように、1又は複数の候補ノードを推定することができる。例えば、上述した図8では、「論理サーバ」の子構成アイテムとして「サービス」を有している。したがって、実施例3では、図8を適用すると図14に示す候補テーブルのように、サーバ(親)に対する候補ノードの下にサービス(子)の候補ノードを1又は複数記憶させることができる。なお、図14の例では、下位(子)の階層として「サービスの開始」、「サービスの停止」、「サービスの起動確認」の候補ノードが追加されている。
<実施例4>
図15は、実施例4における推定処理の一例を示すフローチャートである。なお、実施例4では、操作対象の種別から運用操作部品を推定する例を示している。実施例4における推定処理は、まず先行運用操作部品を抽出し(S71)、その後、S72~S78の処理を、抽出した全ての運用操作部品に対する処理が終了するまで繰り返す処理(ループ)を行う。なお、S71の処理は、例えば画面上のカーソルの位置情報に対して所定の方向(上下左右のうち予め設定された少なくとも1つの方向)に配置されている運用操作部品を先行運用操作部品として抽出する。
図15は、実施例4における推定処理の一例を示すフローチャートである。なお、実施例4では、操作対象の種別から運用操作部品を推定する例を示している。実施例4における推定処理は、まず先行運用操作部品を抽出し(S71)、その後、S72~S78の処理を、抽出した全ての運用操作部品に対する処理が終了するまで繰り返す処理(ループ)を行う。なお、S71の処理は、例えば画面上のカーソルの位置情報に対して所定の方向(上下左右のうち予め設定された少なくとも1つの方向)に配置されている運用操作部品を先行運用操作部品として抽出する。
実施例4における推定処理は、構成情報の取得部品か否かを判断する(S73)。なお、S73の処理では、すでに配置が確定された先行ノードのみに対して、構成情報が取得された部品かどうかを判断する。ここで、構成情報の取得部品である場合(S73において、YES)、例えば管理サーバ12に設けられたCMDB等を仮検索し、操作対象を抽出する(S74)。また、実施例4における推定処理は、抽出により特定した操作対象を対象とする運用操作部品を候補に追加する(S75)。
また、実施例4における推定処理は、上述したS73の処理において、構成情報の取得部品でない場合(S73において、NO)、例えば予め設定された入力パラメータ等から操作対象の種別を決定し(S76)、決定により特定した操作対象を対象とする運用操作部品を候補に追加する(S77)。なお、S75及びS77の処理は、例えば上述した候補テーブルとして追加されてもよい。
図16は、実施例4における候補テーブルの一例を示す図である。実施例4では、例えば先行ノードの運用操作部品が構成情報(構成アイテム)の取得部品である場合に、CMDB等を用いた仮検索の結果から、操作対象がワークユニットであると特定したとする。その場合に、実施例4では、ワークユニットを対象とする予め設定された1又は複数の運用操作部品を候補ノードとして候補テーブルに記憶する。なお、図16の例では、実施例4の処理により、候補ノードとして「ワークユニットの起動」、「ワークユニットの停止」、「ワークユニットを再起動」が記憶されているが、これに限定されるものではない。
<実施例5>
図17は、実施例5における推定処理の一例を示すフローチャートである。なお、実施例5では、過去の作成履歴から運用操作部品を推定する推定処理の一例を示している。なお、実施例5では、例えば過去の作成履歴から運用操作部品を推定する例として、例えば運用操作部品の前後関係から候補を推定したり、運用操作部品のセットから候補を推定することができる。
図17は、実施例5における推定処理の一例を示すフローチャートである。なお、実施例5では、過去の作成履歴から運用操作部品を推定する推定処理の一例を示している。なお、実施例5では、例えば過去の作成履歴から運用操作部品を推定する例として、例えば運用操作部品の前後関係から候補を推定したり、運用操作部品のセットから候補を推定することができる。
実施例5における推定処理は、まず先行及び後続の運用操作部品を抽出する(S81)。なお、S81の処理は、例えば画面上のカーソルの位置情報に対して所定の方向(上下左右のうち予め設定された少なくとも1つの方向)に配置されている運用操作部品を先行運用操作部品として抽出する。
次に、実施例5における推定処理は、S82~S91までの処理を、抽出した全ての運用操作部品に対する処理が終了するまで繰り返す処理(ループA)を行う。また、実施例5における推定処理は、S82~S91の処理が終了後、S92~S96までの処理を、抽出した全ての運用操作部品に対する処理が終了するまで繰り返す処理(ループB)を行う。
実施例5における推定処理は、処理対象のノードが先行ノードか否かを判断し(S84)、先行ノードである場合(S84において、YES)、前後ノードの履歴テーブルの部品名にその先行ノードの部品が含まれているか否かを判断する(S85)。実施例5における推定処理は、部品名に含まれていると判断した場合(S85において、YES)、その先行ノードに対応する後続ノードを候補ノードとして推定し(S86)、推定されたノードを候補テーブルに追加する(S87)。また、実施例5における推定処理は、S85の処理において、部品名に含まれていない場合(S85において、NO)、何も処理を行わない。
また、実施例5における推定処理は、S84の処理において、先行ノードでない場合(S84において、NO)、処理対象のノードは後続ノードである。したがって、実施例5における推定処理は、処理対象の後続ノードが前後ノードの履歴テーブルの部品名に含まれているか否かを判断する(S88)。また、実施例5における推定処理は、後続ノードが履歴テーブルの部品名に含まれている場合(S88において、YES)、その後続ノードに対応する先行ノードを候補ノードとして推定し(S89)、推定されたノードを候補テーブルに追加する(S90)。また、実施例5における推定処理は、S88の処理において、部品名に含まれていない場合(S88)において、NO)、何もしない。なお、上述した前後ノードの履歴テーブルとしては、例えば上述した図8(C)に示すようなテーブルを用いることができるが、これに限定されるものではない。
次に、実施例5における推定処理は、ループBの処理として、処理対象の部品が予め設定された部品セットの履歴テーブルに含まれているか否かを判断する(S93)。実施例5における推定処理は、処理対象の部品が部品セットの履歴テーブルに含まれている場合(S93において、YES)、履歴テーブルにて対応する他ノードを全て候補ノードとして推定する(S94)。また、実施例5における推定処理は、推定されたノードを候補テーブルに追加する(S95)。なお、実施例5における推定処理は、S93の処理において、処理対象の部品が部品セットの履歴テーブルに含まれていない場合(S93において、NO)、何も処理を行わない。なお、上述した部品セットの履歴テーブルとしては、例えば上述した図8(D)に示すようなテーブルを用いることができるが、これに限定されるものではない。
ここで、図18は、実施例5における候補テーブルの一例を示す図である。図18(A)では、運用操作部品の前後関係と、運用操作部品のセットから推定された候補ノードの一例を示し、図18(B)は、運用操作部品の前後関係から推定された候補ノードの一例を示し、図18(C)は、運用操作部品のセットから推定された候補ノードの一例を示す図である。
実施例5では、上述した図17に示す処理を行うことで、図18(A)~(C)に示すように、それぞれの条件に応じてユーザに適切な異なる候補ノードを提示することができる。また、実施例5では、予め設定された複数の条件により得られた図18(A)~(C)に示すような候補テーブルを取得し、取得した各候補テーブルを画面に表示することができる。この場合には、複数の候補テーブルをそれぞれ画面の異なる位置に表示してもよく、また何れか1つの候補テーブルを所定の時間間隔で繰り返し表示させてもよい。
<実施例6>
図19は、実施例6における推定処理の一例を示すフローチャートである。なお、実施例6では、運用操作部品の使用回数から候補ノードを推定する推定処理の一例を示している。
図19は、実施例6における推定処理の一例を示すフローチャートである。なお、実施例6では、運用操作部品の使用回数から候補ノードを推定する推定処理の一例を示している。
実施例6における推定処理は、まず予め設定された使用頻度テーブルから最も使用頻度の高い(使用回数の多い)ノードを候補ノードとして推定し(S101)、推定されたノードを候補テーブルに追加する(S102)。なお、使用頻度テーブルとしては、例えば上述した図8(B)に示すテーブルを用いることができるが、これに限定されるものではない。なお、使用頻度は、所定期間(例えば、1ヶ月、6ヶ月、1年等)を基準とする。
図20は、実施例6における候補テーブルの一例を示す図である。実施例6では、例えば図19に示す推定処理を行うことで、図20に示すように1又は複数の候補ノードを提示することができる。なお、図20の例では、候補ノードとして「activity」、「サーバを起動」、「サーバの電源状態取得」、「サーバの正常動作確認」、「OSの再起動」、「サービスの開始」、「サービスの停止」、「サービスの起動確認」、「Email」、「ワークユニットを停止」、「任意のコマンドを実行」、「インシデント発行」の順序でテーブルに格納される。
なお、本実施形態における推定処理の具体例は、上述した上述した実施例1~実施例6に限定されるものでなく、例えば上述した各実施例のうち、複数の実施例を組み合わせて候補ノードの推定を行ってもよい。
<候補ノードの数について>
ここで、例えば上述した図20の例では、12個の候補ノードが提示されているが、これに限定されるものではなく、例えば画面に表示する候補ノードのパレットの大きさ等に応じて数を調整することができる。なお、パレットに表示される候補ノードは、候補テーブルの最上位のもの、すなわち優先度の高い候補ノードから所定数だけ表示される。
ここで、例えば上述した図20の例では、12個の候補ノードが提示されているが、これに限定されるものではなく、例えば画面に表示する候補ノードのパレットの大きさ等に応じて数を調整することができる。なお、パレットに表示される候補ノードは、候補テーブルの最上位のもの、すなわち優先度の高い候補ノードから所定数だけ表示される。
<候補ノードの画面表示例(パレット例)>
次に、上述した各実施例により推定された候補ノードの画面表示例について図を用いて説明する。図21~図23は、本実施形態における運用プロセス作成環境における表示画面例を示す図(その1~その3)である。
次に、上述した各実施例により推定された候補ノードの画面表示例について図を用いて説明する。図21~図23は、本実施形態における運用プロセス作成環境における表示画面例を示す図(その1~その3)である。
図21では、例えば運用プロセス作成用のエディタの一例としての運用プロセス作成用画面50に最初のスタート(Start)の部品51が配置され、その後、「サーバの停止(hostname:サーバA)」の部品52-1が配置されている。
このとき、本実施形態では、部品52-1の後続の候補ノードを画面に表示する。具体的には、図22に示すように、画面上の現時点のカーソル53の位置情報を基準として、その近辺に、候補ノードが配列されたパレット54-1を表示する。なお、カーソル53は、画面の表示領域に表示されるポインタの一種である。本実施形態では、カーソル53に限らず、各種ポインタがユーザの操作によって位置移動、や位置が決定される。
また、本実施形態では、すでに確定した部品51,52-1の位置情報を基準にして表示されている部品(例えば、最後に配置された部品)が隠れることがないようにパレット54-1を表示させてもよい。また、カーソル53と部品51,52-1の両方の位置情報に基づいてパレット54-1の表示位置を設定してもよい。これにより、本実施形態では、後続ノードの配置位置と
カーソル53と、パレット54-1との距離を短くできることになり、ユーザは簡単な操作で次の部品を選択し、配置することができる。したがって、本実施形態では、作成時間を削減することができる。
カーソル53と、パレット54-1との距離を短くできることになり、ユーザは簡単な操作で次の部品を選択し、配置することができる。したがって、本実施形態では、作成時間を削減することができる。
なお、候補ノードは、配置が確定された部品52-1を先行ノードとして、上述した実施例を行うことで、ユーザに適切な候補ノードを取得することができる。また、図22の例では、部品51と部品52-2との結合線(遷移矢印)の状態(例えば、異常、承認、却下)等により候補ノードを取得することもできる。その場合には、矢印の内容(意味)が運用プロセス作成用画面50上に表示され、その表示されている内容から矢印の内容を取得することができる。
また、パレット54-1に配置される候補ノード55の数については、特に限定されるものでないが、例えば10個程度が好ましく、また画面サイズ等に応じて変更することができる。
また、本実施形態では、例えば図23に示すようにスタートの部品51の後に「構成情報を取得」の部品52-2が配置された場合に、上述した推定処理により部品52-2を先行ノードとした候補ノードが推定される。また、推定された候補ノード55は、所定数が所定の順序でパレット54-2上に配置され、上述したようにカーソル53の位置や配置が確定された部品51,52-2等を基準にして運用プロセス作成用画面50上にパレット54-2が表示される。本実施形態では、上述した候補ノードの推定処理を行うことで、図22、図23に示すように、後続ノードとして適切な異なるノードを提示することができ、またパレット54もユーザが操作し易い適切な位置に表示することができる。したがって、ユーザは、図22、図23に示すパレット54-1,54-2に表示された候補ノード55からカーソル53を移動させて後続のノードを選択し、運用プロセス作成用画面50の所定位置に迅速に配置することができる。
なお、上述した図21~23の例では、部品(ノード)をノード毎に設定されたアイコンや名称等により表しているが、これに限定されるものではなく、例えば予め設定された記号や模様等により表示されてもよい。図21~23に示すように、本実施形態では、パレットがエディタ上の所定の位置にポップアップで表示されるため、運用操作部品が選択しやすくなり、作成時間を大幅に軽減することができる。
上述したように、本実施形態によれば、迅速に運用プロセスを作成することができる。したがって、本実施形態によれば、運用プロセス作成時のコストも大幅に軽減することができる。
なお、本実施形態は、例えばスマート・テクノロジ等の分野に適用することができる。スマート・テクノロジとは、ハードウェアやソフトウェアの状況を自ら判断し、より簡単・安心に利用できるための最適化を図る技術を指す。また、具体的には、運用操作部品の関連性に基づいて自律的に予測する技術のことを指すが、これに限定されるものではない。また、本実施形態は、例えば富士通株式会社製のSystemwalker Runbook Automation(SRA)等に適用することができるが、これに限定されるものではない。
以上、実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、上述した実施例の構成要素を全部又は複数を組み合わせることも可能である。
10 運用システム
11 PC
12 管理サーバ
13 操作対象サーバ
14 通信ネットワーク
21 入力手段
22 出力手段
23 記憶手段
24 候補ノード推定手段
25 パレット生成手段
26 画面生成手段
27 送受信手段
28 制御手段
31 プロセス定義情報
32 操作対象種別情報
33 作成履歴情報
34 候補テーブル
41 入力装置
42 出力装置
43 ドライブ装置
44 補助記憶装置
45 主記憶装置
46 CPU
47 ネットワーク接続装置
48 記憶手段
50 運用プロセス作成用画面
51,52 部品
53 カーソル
54 パレット
55 候補ノード
11 PC
12 管理サーバ
13 操作対象サーバ
14 通信ネットワーク
21 入力手段
22 出力手段
23 記憶手段
24 候補ノード推定手段
25 パレット生成手段
26 画面生成手段
27 送受信手段
28 制御手段
31 プロセス定義情報
32 操作対象種別情報
33 作成履歴情報
34 候補テーブル
41 入力装置
42 出力装置
43 ドライブ装置
44 補助記憶装置
45 主記憶装置
46 CPU
47 ネットワーク接続装置
48 記憶手段
50 運用プロセス作成用画面
51,52 部品
53 カーソル
54 パレット
55 候補ノード
Claims (7)
- 複数のノードを画面上に配置して運用プロセスを作成する際、予め設定されたプロセス定義、操作対象ノードの種別、及び過去の作成履歴のうち、少なくとも1つを用いて、配置が確定されたノードに対する後続の候補ノードを推定し、
推定された前記候補ノードのうち、所定数の候補ノードを所定の順序で表示する表示領域を生成し、
生成された前記表示領域を前記画面の所定位置に表示させる、
処理をコンピュータに実行させるための運用プロセス作成プログラム。 - 前記候補ノードを推定する処理は、
前記プロセス定義に含まれる前記運用プロセスの作成中の状態に対応する候補ノードの情報、対となる操作情報、同じ対象に対する連続した操作情報、及び操作対象の階層構造のうち、少なくとも1つを用いて前記候補ノードを推定することを特徴とする請求項1に記載の運用プロセス作成プログラム。 - 前記候補ノードを推定する処理は、
前記ノード間を結合する遷移矢印の内容を用いて前記候補ノードを推定することを特徴とする請求項1又は2に記載の運用プロセス作成プログラム。 - 前記表示領域を前記所定位置に表示させる処理は、
前記画面に表示されるポインタの位置情報に基づいて前記所定位置を設定することを特徴とする請求項1乃至3の何れか1項に記載の運用プロセス作成プログラム。 - 前記表示領域を前記所定位置に表示させる処理は、
前記画面に配置されているノードが存在する場合に、前記ノードの位置情報に基づいて前記所定位置を設定することを特徴とする請求項1乃至4の何れか1項に記載の運用プロセス作成プログラム。 - 複数のノードを画面上に配置して運用プロセスを作成する際、予め設定されたプロセス定義、操作対象ノードの種別、及び過去の作成履歴のうち、少なくとも1つを用いて、配置が確定されたノードに対する後続の候補ノードを推定する候補ノード推定ステップと、
推定された前記候補ノードのうち、所定数の候補ノードを所定の順序で表示する表示領域を生成する表示領域生成ステップと、
生成された前記表示領域を前記画面の所定位置に表示させる表示ステップと、
を有することを特徴とする運用プロセス作成方法。 - 複数のノードを画面上に配置して運用プロセスを作成する際、予め設定されたプロセス定義、操作対象ノードの種別、及び過去の作成履歴のうち、少なくとも1つを用いて、配置が確定されたノードに対する後続の候補ノードを推定する候補ノード推定手段と、
推定された前記候補ノードのうち、所定数の候補ノードを所定の順序で表示する表示領域を生成する表示領域生成手段と、
生成された前記表示領域を前記画面の所定位置に表示させる画面生成手段と、
を有することを特徴とする情報処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014518192A JP5915735B2 (ja) | 2012-05-31 | 2012-05-31 | 運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置 |
PCT/JP2012/064223 WO2013179468A1 (ja) | 2012-05-31 | 2012-05-31 | 運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置 |
US14/551,380 US20150082215A1 (en) | 2012-05-31 | 2014-11-24 | Operation process creating method and information processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2012/064223 WO2013179468A1 (ja) | 2012-05-31 | 2012-05-31 | 運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/551,380 Continuation US20150082215A1 (en) | 2012-05-31 | 2014-11-24 | Operation process creating method and information processing apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013179468A1 true WO2013179468A1 (ja) | 2013-12-05 |
Family
ID=49672720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2012/064223 WO2013179468A1 (ja) | 2012-05-31 | 2012-05-31 | 運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20150082215A1 (ja) |
JP (1) | JP5915735B2 (ja) |
WO (1) | WO2013179468A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018174163A1 (ja) | 2017-03-23 | 2018-09-27 | 日本電気株式会社 | 開発運用支援システム、開発管理サーバ、運用管理サーバ、それらの方法及びプログラムを格納した非一時的なコンピュータ可読媒体 |
US10617952B2 (en) | 2015-03-13 | 2020-04-14 | Square Enix Co., Ltd. | Information processing apparatus, information processing method, non-transitory computer-readable storage medium |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12067836B1 (en) * | 2023-12-11 | 2024-08-20 | Game Server Services, Inc. | Control system, server, and control method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004054854A (ja) * | 2002-07-24 | 2004-02-19 | Fujitsu Ltd | ポインティングデバイスによる入力方法および入力システム |
JP2007047862A (ja) * | 2005-08-05 | 2007-02-22 | Canon Inc | 情報処理装置及び方法 |
JP2007065724A (ja) * | 2005-08-29 | 2007-03-15 | Nikon Corp | 情報処理プログラム、および情報処理装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6381644B2 (en) * | 1997-09-26 | 2002-04-30 | Mci Worldcom, Inc. | Integrated proxy interface for web based telecommunications network management |
US7137071B2 (en) * | 2001-12-12 | 2006-11-14 | National Instruments Corporation | System and method for providing suggested graphical programming operations |
US7447667B2 (en) * | 2002-12-11 | 2008-11-04 | International Business Machines Corporation | Method and knowledge structures for reasoning about concepts, relations, and rules |
US7415033B2 (en) * | 2002-12-19 | 2008-08-19 | International Business Machines Corporation | Dynamic time division multiplexing circuit without a shadow table |
JP2007272809A (ja) * | 2006-03-31 | 2007-10-18 | Oki Data Corp | エディタプログラム、該エディタプログラムを記録したコンピュータ読取可能な記録媒体、及び該エディタプログラムを用いた機器操作支援システム |
CA2681075A1 (en) * | 2007-03-12 | 2008-09-18 | Vortex Technology Services Limited | Intentionality matching |
US7937395B2 (en) * | 2008-02-22 | 2011-05-03 | Tigerlogic Corporation | Systems and methods of displaying and re-using document chunks in a document development application |
US20110125667A1 (en) * | 2009-11-24 | 2011-05-26 | Sap Ag | Process Pattern Automation in Tools for Business Process Modeling |
US8429548B2 (en) * | 2010-02-18 | 2013-04-23 | National Instruments Corporation | Automatically suggesting graphical program elements for inclusion in a graphical program |
US8346795B2 (en) * | 2010-03-10 | 2013-01-01 | Xerox Corporation | System and method for guiding entity-based searching |
-
2012
- 2012-05-31 WO PCT/JP2012/064223 patent/WO2013179468A1/ja active Application Filing
- 2012-05-31 JP JP2014518192A patent/JP5915735B2/ja active Active
-
2014
- 2014-11-24 US US14/551,380 patent/US20150082215A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004054854A (ja) * | 2002-07-24 | 2004-02-19 | Fujitsu Ltd | ポインティングデバイスによる入力方法および入力システム |
JP2007047862A (ja) * | 2005-08-05 | 2007-02-22 | Canon Inc | 情報処理装置及び方法 |
JP2007065724A (ja) * | 2005-08-29 | 2007-03-15 | Nikon Corp | 情報処理プログラム、および情報処理装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10617952B2 (en) | 2015-03-13 | 2020-04-14 | Square Enix Co., Ltd. | Information processing apparatus, information processing method, non-transitory computer-readable storage medium |
WO2018174163A1 (ja) | 2017-03-23 | 2018-09-27 | 日本電気株式会社 | 開発運用支援システム、開発管理サーバ、運用管理サーバ、それらの方法及びプログラムを格納した非一時的なコンピュータ可読媒体 |
CN110447011A (zh) * | 2017-03-23 | 2019-11-12 | 日本电气株式会社 | 开发操作支持系统、开发管理服务器、操作管理服务器及其方法以及存储有其程序的非暂时性计算机可读介质 |
US11184229B2 (en) | 2017-03-23 | 2021-11-23 | Nec Corporation | Development operation support system, development management server, operation management server, method thereof, and non-transitory computer readable medium storing program thereof |
CN110447011B (zh) * | 2017-03-23 | 2023-02-17 | 日本电气株式会社 | 开发操作支持系统、开发管理服务器、操作管理服务器及其方法以及存储有其程序的非暂时性计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
JP5915735B2 (ja) | 2016-05-11 |
JPWO2013179468A1 (ja) | 2016-01-14 |
US20150082215A1 (en) | 2015-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11099816B2 (en) | Workflow development system with ease-of-use features | |
CN112068936B (zh) | 一种工作流管理平台及工作流管理系统 | |
US11314820B2 (en) | Systems and methods for web collaboration | |
US20170140318A1 (en) | Automatic extraction and completion of tasks associated with communications | |
US10509641B2 (en) | Optimizing feature deployment based on usage pattern | |
US11704532B2 (en) | Dynamic region based application operations | |
WO2016127577A1 (zh) | 一种处理事件的方法及装置 | |
CN110633120A (zh) | 组态软件控件处理方法、装置、服务器、用户终端及系统 | |
JP5915735B2 (ja) | 運用プロセス作成プログラム、運用プロセス作成方法、及び情報処理装置 | |
US8621550B1 (en) | Information technology resource compliance templates | |
CN114500549B (zh) | 在公共云中为用户部署k8s托管集群的方法、设备和介质 | |
US9787552B2 (en) | Operation process creation program, operation process creation method, and information processing device | |
JP2014191422A (ja) | ログ関連性提示システム、ログ関連性提示方法及びコンピュータプログラム | |
US10803465B2 (en) | Enabling hierarchical structure representation of entities | |
WO2022037627A1 (zh) | 一种人工智能应用的集成管理方法、装置及系统 | |
CN113064673A (zh) | 一种多应用环境的配置方法、装置、设备及介质 | |
JP2009134511A (ja) | サイジング装置、サイジング方法、サイジング用プログラム及び記録媒体 | |
CN115145555A (zh) | 数据处理方法和装置 | |
WO2011111055A1 (en) | Data protection | |
US20140195481A1 (en) | Content managing apparatus and content managing method | |
WO2018067420A1 (en) | Perform graph traversal with graph query language | |
JP2016177391A (ja) | 知識抽出装置、知識抽出方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 12878024 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014518192 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 12878024 Country of ref document: EP Kind code of ref document: A1 |