This application claims the benefit of priority from Japanese Patent Application No. 2008-331496 filed on Dec. 25, 2008, which is herein incorporated by reference in its entirety.
1. Field
The present invention relates to a resource distribution system, a computer-readable recording medium having a resource distribution program, and a resource distribution method of distributing a computer resource, such as a program or data, to terminal apparatus(es) via a network.
2. Description of the Related Art
In a typical resource distribution system, a resource (a program or data) is simultaneously distributed to terminal apparatuses as distribution targets and the distributed resource is installed thereto, whereby laborsaving in maintenance related works on the respective terminal apparatuses is realized (see FIG. 28 in Japanese Unexamined Patent Application Publication No. 2002-16645).
According to an aspect of an embodiment described bellow, a resource distribution system and method distributes resource(s) such as a software resource to terminal apparatuses. The resource distribution system receives a distribution instruction including resource information indicating a software resource to be distributed to terminal apparatuses and terminal information indicating the terminal apparatuses which are destinations of the resource. The system specifies some of the terminal apparatuses indicated by the terminal information included in the distribution instruction, where the some of the terminal apparatuses are specified as targets of distribution executed on the basis of the resource information included in the distribution instruction. The system distributes the software resource indicated by the resource information included in the distribution instruction to the specified terminal apparatuses. The system receives, from the terminal apparatuses to which the software resource has been distributed, control information used to control the distribution of the software resource. The system makes a determination whether distribution to other terminal apparatuses can be executed on the basis of the received control information. The system specifies distribution targets among the terminal apparatuses indicated by the terminal information included in the distribution instruction when determining that distribution to other terminal apparatuses can be executed, and distributes the software resource to the specified terminal apparatuses.
Additional aspects and/or advantages will be set forth in part in the description which follows and, in part, will be apparent from the description, or may be learned by practice of the invention.
These and/or other aspects and advantages will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments are described below to explain the present invention by referring to the figures.
Installation of a new resource may affect an existing function.
In an ordinary developing process, a regression test is performed to confirm that a malfunction of an existing function due to a developed item does not occur, in addition to a test of the developed item itself.
However, a sufficient time to perform the test is not necessarily acquired. Even if a sufficient time is acquired to perform the test, all failures are not necessarily found in advance.
For this reason, in the case where a new resource is simultaneously installed to all terminal apparatuses, an unexpected failure such as a malfunction of an existing function may occur, resulting in an increase in burden of maintenance related works.
Accordingly, the present invention includes providing a system and method capable of selecting a range of terminal apparatuses as targets of distribution of a software resource in stages when distributing the software resource to the terminal apparatuses. The disclosed system and method enable distribution of a resource to be adjusted or modified including based on control information resulting from distribution of the resource to at least some of the terminal apparatuses.
An embodiment described in the present application enables selecting a range of terminal apparatuses as targets of distribution of a software resource in stages on the basis of control information received from other terminal apparatuses to which the software resource has been installed when distributing the software resource to the terminal apparatuses, so that a load of maintenance works of the system can be reduced.
The system described in detail below is a resource distribution system that distributes a software resource to terminal apparatuses. The resource distribution system includes a distribution instruction receiving unit configured to receive a distribution instruction including resource information indicating a software resource to be distributed to terminal apparatuses and terminal information indicating the terminal apparatuses which are destinations of the resource, a distribution target specifying unit configured to specify at least some of the terminal apparatuses indicated by the terminal information included in the distribution instruction received by the distribution instruction receiving unit, at least some of the terminal apparatuses being specified as targets of distribution executed on the basis of the resource information included in the distribution instruction and a distribution executing unit configured to distribute the software resource indicated by the resource information included in the distribution instruction to the terminal apparatuses specified by the distribution target specifying unit.
The system includes a control information receiving unit configured to receive, from the terminal apparatuses to which the software resource has been distributed by the distribution executing unit, control information used to control the distribution of the software resource; and a distribution control unit configured to determine whether distribution to other terminal apparatuses can be executed on the basis of the received control information, allow the distribution target specifying unit to specify distribution targets among the terminal apparatuses indicated by the terminal information included in the distribution instruction when determined that distribution to other terminal apparatuses can be executed, and allow the distribution executing unit to distribute the software resource to the specified terminal apparatuses.
With this configuration, when a software resource is to be distributed to terminal apparatuses, a range of terminal apparatuses as targets of distribution of the software resource can be selected in stages on the basis of the control information received from other terminal apparatuses to which the software resource has been installed, so that a load of maintenance related works of the terminal apparatuses can be reduced.
In the above-described system, the control information receiving unit receives, when receiving the control information, authentication information indicating validity of the control information from the terminal apparatuses that transmit the control information. The distribution control unit makes the determination by using control information the validity of which has been verified on the basis of the received authentication information and does not use control information the validity of which has not been verified on the basis of the received authentication information.
With this configuration, the validity of the control information can be determined by using the authentication information received from the terminal apparatus, and the control information that is determined not to have validity can be eliminated.
That is, the terminal apparatus can be used by a general user other than a maintenance worker, administrator, or other user with a certain privilege of use. By eliminating an undesirable input by a user other than the maintenance worker, a malfunction due to distribution of a software resource can be effectively suppressed, so that a load of maintenance related works can be reduced.
In the above-described system, the distribution instruction received by the distribution instruction receiving unit includes authentication information that is used to verify the validity of the control information received by the control information receiving unit. The distribution control unit compares the authentication information received by the control information receiving unit with the authentication information received by the distribution instruction receiving unit, and determines that the control information has validity when a comparison result satisfies a predetermined condition.
With this configuration, the validity of the control information can be determined by using the authentication information received from the terminal apparatus, and the control information that is determined not to have validity can be eliminated.
That is, the terminal apparatus can be used by a general user other than a maintenance worker. By eliminating an undesirable input by a user other than the maintenance worker, a malfunction due to distribution of a software resource can be effectively suppressed, so that a load of maintenance works can be reduced.
In the above-described system, the control information received by the control information receiving unit includes an installation result including information about whether installation of the software resource has successfully been performed in the terminal apparatuses to which the software resource has been distributed by the distribution executing unit. When the number of pieces of the control information including an installation result indicating that installation of the resource has successfully been performed in the control information received by the control information receiving unit satisfies a predetermined condition, the distribution control unit determines that the software resource can be distributed to other terminal apparatuses.
With this configuration, when a software resource is to be distributed to terminal apparatuses, a range of terminal apparatuses as targets of distribution of the software resource can be selected in stages on the basis of the control information received from other terminal apparatuses to which the software resource has been-installed, so that a load of maintenance works of the terminal apparatuses can be reduced.
The resource distribution system includes an apparatus configuration DB configured to store configuration information that includes hardware configuration information indicating information of hardware provided in terminal apparatuses and software configuration information indicating information of software provided in the terminal apparatuses where the configuration information is associated with terminal IDs identifying the respective terminal apparatuses. The control information received by the control information receiving unit may include a terminal ID identifying the terminal apparatus that has transmitted the control information.
The distribution control unit obtains, from the apparatus configuration DB, the configuration information associated with the terminal ID that is the same as (matches) the terminal ID included in the control information received by the control information receiving unit, compares the configuration information associated with the terminal ID that is the same as the terminal ID included in the control information having an installation result indicating that installation of the software resource has not successfully been performed with the configuration information associated with the terminal ID that is the same as the terminal ID included in the control information having an installation result indicating that installation of the software resource has successfully been performed, compares configuration information associated with another terminal apparatus stored in the apparatus configuration DB with a different item which is different from an item in the configuration information associated with the terminal apparatus that has succeeded in installation of the software resource among items in the configuration information associated with the terminal apparatus that has not succeeded in installation of the software resource obtained from a comparison result, and eliminates the other terminal apparatus associated with the configuration information having an item that matches the different item from the targets of distribution executed by the distribution executing unit.
With this configuration, when a software resource is to be distributed to terminal apparatuses, a range of terminal apparatuses as targets of distribution of the software resource can be selected in stages on the basis of the control information received from other terminal apparatuses to which the software resource has been installed, so that a load of maintenance related works of the terminal apparatuses can be reduced.
The resource distribution system includes a candidate distribution target transmitting unit configured to transmit, to the terminal apparatuses to which the resource has been distributed by the distribution executing unit, candidate distribution targets that indicate terminal apparatuses to which the software resource has not been distributed by the distribution executing unit among the terminal apparatuses indicated by the terminal information included in the received distribution instruction. The control information received by the control information receiving unit includes a selection result indicating terminal apparatuses as present distribution targets among the candidate distribution targets. The distribution control unit allows the distribution executing unit to distribute the software resource to the terminal apparatuses indicated in the received selection result.
With this configuration, when a software resource is to be distributed to terminal apparatuses, a range of terminal apparatuses as targets of distribution of the software resource can be selected in stages on the basis of the control information received from other terminal apparatuses to which the software resource has been installed, so that a load of maintenance related works (tasks) of the terminal apparatuses can be reduced.
The program described in detail below is used in a terminal apparatus that installs a software resource distributed by a distribution apparatus and can be stored in a computer-readable medium, the program causing a computer functioning as the terminal apparatus to execute operations including receiving a software resource distributed by the distribution apparatus, executing installment of the received software resource, requesting an operator of the terminal apparatus to input information used to control distribution of the resource after completing the installment, and transmitting the input control information to the distribution apparatus.
With this configuration, after the software resource received from the distribution apparatus has been installed, an installation result of the software resource can be confirmed by operating the terminal apparatus, and a next distribution target can be indicated from the terminal apparatus. Accordingly, a load of maintenance related works can be reduced.
The program described in detail below causes the computer operating along the above-described program to execute requesting an input of information indicating whether installment of the resource has successfully been performed in the request to the operator of the terminal apparatus for inputting the control information.
With this configuration, after the software resource received from the distribution apparatus has been installed, an installation result of the software resource can be confirmed by operating the terminal apparatus, and a next distribution target can be indicated from the terminal apparatus. Accordingly, a load of maintenance related works can be reduced.
The program described in detail below causes the computer operating along the above-described program to execute receiving a list of terminal apparatuses from the distribution apparatus; and requesting the operator to select terminal apparatuses as next distribution targets from the received list in the request to the operator of the terminal apparatus for inputting the control information.
With this configuration, after the software resource received from the distribution apparatus has been installed, an installation result of the software resource can be confirmed by operating the terminal apparatus, and a next distribution target can be indicated from the terminal apparatus. Accordingly, a load of maintenance related works can be reduced.
The program described in detail below causes the computer operating along the above-described program to execute requesting the operator to input a password used for authentication in the distribution apparatus in the request to the operator of the terminal apparatus for inputting the control information.
With this configuration, the distribution apparatus is allowed to determined the validity of the control information by using the authentication information transmitted from the terminal apparatus, so that the control information that is determined not to have validity can be eliminated.
That is, the terminal apparatus can be used by a general user other than a maintenance worker. By eliminating an undesirable input by a user other than the maintenance worker, a malfunction due to distribution of a software resource can be effectively suppressed, so that a load of maintenance related works can be reduced.
The system according to an embodiment of the present invention includes a management apparatus 100, a distribution apparatus 200, and terminal apparatuses 300.
The management apparatus 100 and the distribution apparatus 200 can communicate with each other via a network 400 by using a predetermined protocol, such as TCP/IP (Transmission Control Protocol/Internet Protocol) or UDP/IP (User Datagram Protocol/Internet Protocol), etc.
The distribution apparatus 200 and the plurality of terminal apparatuses 300 can communicate with each other via the network 400 by using a predetermined protocol, such as TCP/IP or UDP/IP, etc.
The management apparatus 100 may be placed, for example, in an information department that operates this system and is operated by an operator to register a resource to be installed to the terminal apparatuses 300 in the distribution apparatus 200.
The distribution apparatus 200 manages a resource registered in accordance with a registration request transmitted from the management apparatus 100 and distributes the resource to the terminal apparatuses 300 in accordance with settings made by the management apparatus 100.
Each of the terminal apparatuses 300 installs the resource distributed by the distribution apparatus 200 and then transmits a result of the installation process to the distribution apparatus 200.
In the above-described system configuration, an operator who operates the management apparatus 100 moves to the places where the respective terminal apparatuses 300 exist and operates the terminal apparatuses 300 as necessary after registering a resource in the distribution apparatus 200, in order to confirm an installation status of the resource in the terminal apparatuses 300.
For example, in the case where the maintenance worker, administrator, or other user with certain right(s) has recognized to some extent that no malfunction occurs in the terminal apparatuses 300 after a resource has been installed to the terminal apparatuses 300, the maintenance worker determines that installation of the resource has successfully been performed.
Then, the maintenance worker may have the necessity of providing instruction(s) to the distribution apparatus 200 to distribute the resource to other terminal apparatuses.
In such a case, the maintenance worker goes back to the place where the management apparatus 100 exists and operates the management apparatus 100 to input instruction(s) to the distribution apparatus 200 in a typical case.
For example, the maintenance worker performs an operation on the management apparatus 100 to allow the distribution apparatus 200 to distribute the resource to other terminal apparatuses.
This is because, in the case where a resource is to be distributed in stages by using a typical manner, where a resource is simultaneously distributed to set distribution targets, it has been necessary to set the terminal apparatuses to which the resource is to be distributed in each stage.
Furthermore, inputting instructions to the distribution apparatus 200 has typically been a function provided mainly by the management apparatus 100, and the terminal apparatuses 300 have not had a function of inputting instruction(s) to the distribution apparatus 200. Accordingly, the maintenance worker has typically had the necessity of operating the management apparatus 100 in each stage.
The system described in an embodiment performs a process procedure of determining whether installation of a resource to other terminal apparatuses 300 is to be performed on the basis of result(s) of installation of the resource to the terminal apparatuses 300, thereby enabling easy distribution in stages.
The management apparatus 100 illustrated in
The CPU 110 connects to the respective hardware units of the management apparatus 100 via the communication line 190 and realizes predetermined functions in accordance with a procedure of a program.
The CPU 110 includes, for example, an instruction register that temporarily stores instructions read from the main storage unit 120, an instruction decoder that decodes machine instructions (binary number) stored in the instruction register and that controls respective units of the management apparatus 100 in response to the instructions, an arithmetic logic unit that performs arithmetic operations, such as addition, subtraction, and comparison of values, under control by the instruction decoder, an accumulator that temporarily stores data to be operated and results of arithmetic operations, an address register that stores addresses of storage areas in the main storage unit 120 from/on which the CPU 110 reads/writes data; and a program counter that indicates the address of the storage area in the main storage unit storing an instruction to be executed next.
The main storage unit 120 stores data generated through execution by the CPU 110 and data read from the auxiliary storage unit 150.
For example, a semiconductor memory, such as an SDRAM (Synchronous Dynamic Random Access Memory) or an SRAM (Static Random Access Memory), can be used as the main storage unit 120.
The BIOS unit 130 stores a BIOS program that causes the CPU 110 to execute a process executed first at power-on of the management apparatus 100, such as initialization of the respective hardware units in the management apparatus 100.
For example, a nonvolatile semiconductor memory, such as a flash memory or an EEPROM (Electrically Erasable Programmable Read Only Memory), can be used as the BIOS unit 130.
The communication unit 140 transmits/receives signals to/from the distribution apparatus 200 via the network 400 in a wired or wireless manner.
The auxiliary storage unit 150 stores information in the nonvolatile storage medium 180 in response to a write instruction received from the CPU 110, and reads information stored in the nonvolatile storage medium 180 in response to a read instruction received from the CPU 110 and outputs the information.
For example, a magnetic recording device such as an HDD (Hard Disk Drive) or a nonvolatile semiconductor storage device such as an SSD (Solid State Disk) can be used as the auxiliary storage unit 150.
The nonvolatile storage medium 180 is a magnetic recording medium or a nonvolatile semiconductor memory, for example.
The nonvolatile storage medium 180 may be stored inside the auxiliary storage unit 150, or may be a portable nonvolatile storage medium that is inserted from the outside of the management apparatus 100.
The operation unit 160 accepts operation(s) performed by a user.
The operation unit 160 outputs signals according to operation(s) performed by the user to the CPU 110 via the communication line 190.
For example, a keyboard, a pointing device such as a mouse or a touch pad, and an input button can be used as the operation unit 160.
The display unit 170 allows a display device, such as a liquid crystal display device, to output information according to a control instruction provided from the CPU 110.
The display device may be integrated with the management apparatus 100 by being connected to the management apparatus 100 through the communication line included in the management apparatus 100, or may be connected to the management apparatus 100 by using a D-Sub (D-Subminiature) 15 pin cable or the like.
The program illustrated in
The distribution instruction inputting unit PG101 illustrated in
The distribution instruction transmitting unit PG102 illustrated in
The distribution apparatus 200 illustrated in
The CPU 210 connects to respective hardware units of the distribution apparatus 200 via the communication line 290 and realizes predetermined function(s) in accordance with a procedure of a program.
The CPU 210 includes, for example, an instruction register that temporarily stores instructions read from the main storage unit 220; an instruction decoder that decodes machine instructions (binary number) stored in the instruction register and that controls the respective units of the distribution apparatus 200 in response to the instructions; an arithmetic logic unit that performs arithmetic operations, such as addition, subtraction, and comparison of values, under control by the instruction decoder; an accumulator that temporarily stores data to be operated and results of arithmetic operations; an address register that stores addresses of storage areas in the main storage unit 220 from/on which the CPU 210 reads/writes data; and a program counter that indicates the address of the storage area in the main storage unit storing an instruction to be executed next.
The main storage unit 220 stores data generated through execution by the CPU 210 and data read from the auxiliary storage unit 250.
For example, a semiconductor memory, such as an SDRAM or an SRAM, can be used as the main storage unit 220.
The BIOS unit 230 stores a BIOS program that causes the CPU 210 to execute a process executed first at power-on of the distribution apparatus 200, such as initialization of the respective hardware units in the distribution apparatus 200.
For example, a nonvolatile semiconductor memory, such as a flash memory or an EEPROM, can be used as the BIOS unit 230.
The communication unit 240 transmits/receives signals to/from the management apparatus 100 or the terminal apparatus 300 via the network 400 in a wired or wireless manner.
The auxiliary storage unit 250 stores information in the nonvolatile storage medium 280 in response to a write instruction received from the CPU 210, and reads information stored in the nonvolatile storage medium 280 in response to a read instruction received from the CPU 210 and outputs the information.
For example, a magnetic recording device such as an HDD or a nonvolatile semiconductor storage device such as an SSD can be used as the auxiliary storage unit 250.
The nonvolatile storage medium 280 is a magnetic recording medium or a nonvolatile semiconductor memory, for example.
The nonvolatile storage medium 280 may be stored inside the auxiliary storage unit 250, or may be a portable nonvolatile storage medium that is inserted from the outside of the distribution apparatus 200.
The operation unit 260 accepts operation(s) performed by a user.
The operation unit 260 outputs signals according to operation(s) performed by the user to the CPU 210 via the communication line 290.
For example, a keyboard, a pointing device such as a mouse or a touch pad, and an input button can be used as the operation unit 260.
The display unit 270 allows a display device, such as a liquid crystal display device, to output information according to a control instruction provided from the CPU 210.
The display device may be integrated with the distribution apparatus 200 by being connected to the distribution apparatus 200 through the communication line included in the distribution apparatus 200, or may be connected to the distribution apparatus 200 by using a D-Sub 15 pin cable or the like.
The configuration of the program illustrated in
The distribution instruction receiving unit PG201 illustrated in
The distribution target specifying unit PG202 illustrated in
The distribution executing unit PG203 illustrated in
The result receiving unit PG204 illustrated in
The result registering unit PG205 illustrated in
The distribution control unit PG206 illustrated in
The resource distribution DB (T201) illustrated in
The distribution ID (T2011) illustrated in
The resource name (T2012) illustrated in
The candidate distribution target (T2013) illustrated in
The distribution target (T2014) illustrated in
The confirmation password (T2015) illustrated in
The installation result (T2016) illustrated in
The terminal apparatus 300 illustrated in
The CPU 310 connects to respective hardware units of the terminal apparatus 300 via the communication line 390 and realizes predetermined functions in accordance with a procedure of a program.
The CPU 310 includes, for example, an instruction register that temporarily stores instructions read from the main storage unit 320; an instruction decoder that decodes machine instructions (binary number) stored in the instruction register and that controls the respective units of the terminal apparatus 300 in response to the instructions; an arithmetic logic unit that performs arithmetic operations, such as addition, subtraction, and comparison of values, under control by the instruction decoder; an accumulator that temporarily stores data to be operated and results of arithmetic operations; an address register that stores addresses of storage areas in the main storage unit 320 from/on which the CPU 310 reads/writes data; and a program counter that indicates the address of the storage area in the main storage unit storing an instruction to be executed next.
The main storage unit 320 stores data generated through execution by the CPU 310 and data read from the auxiliary storage unit 350.
For example, a semiconductor memory, such as an SDRAM or an SRAM, can be used as the main storage unit 320.
The BIOS unit 330 stores a BIOS program that causes the CPU 310 to execute a process executed first at power-on of the terminal apparatus 300, such as initialization of the respective hardware units in the terminal apparatus 300.
For example, a nonvolatile semiconductor memory, such as a flash memory or an EEPROM, can be used as the BIOS unit 330.
The communication unit 340 transmits/receives signals to/from the distribution apparatus 200 via the network 400 in a wired or wireless manner.
The auxiliary storage unit 350 stores information in the nonvolatile storage medium 380 in response to a write instruction received from the CPU 310, and reads information stored in the nonvolatile storage medium 380 in response to a read instruction received from the CPU 310 and outputs the information.
For example, a magnetic recording device such as an HDD or a nonvolatile semiconductor storage device such as an SSD can be used as the auxiliary storage unit 350.
The nonvolatile storage medium 380 is a magnetic recording medium or a nonvolatile semiconductor memory, for example.
The nonvolatile storage medium 380 may be stored inside the auxiliary storage unit 350, or may be a portable nonvolatile storage medium that is inserted from the outside of the terminal apparatus 300.
The operation unit 360 accepts operation(s) performed by a user.
The operation unit 360 outputs signals according to operations performed by the user to the CPU 310 via the communication line 390.
For example, a keyboard, a pointing device such as a mouse or a touch pad, and an input button can be used as the operation unit 360.
The display unit 370 allows a display device, such as a liquid crystal display device, to output information according to a control instruction provided from the CPU 310.
The display device may be integrated with the terminal apparatus 300 by being connected to the terminal apparatus 300 through the communication line included in the terminal apparatus 300, or may be connected to the terminal apparatus 300 by using a D-Sub 15 pin cable or the like.
The program illustrated in
The installation instruction receiving unit PG301 illustrated in
The installation executing unit PG302 illustrated in
The installation result inputting unit PG303 illustrated in
The installation result transmitting unit PG304 illustrated in
First, the management apparatus 100 accepts an input operation of a distribution instruction (S100), whereby the process in the system starts.
The example of the screen illustrated in
The distributed resource input field 1011 accepts an input of information identifying the resource to be distributed.
In the example illustrated in
The distribution target input field 1012 accepts an input of information identifying terminal apparatuses as targets to which the resource is to be distributed.
For example, an IP address of the terminal apparatus or a MAC address set in the communication unit 340 in the terminal apparatus can be used as the information identifying the terminal apparatus.
In the example illustrated in
The initial distribution target input filed 1013 accepts an input of information identifying the terminal apparatuses as distribution targets in an initial distribution stage (initial distribution targets) among the above-described distribution targets.
For example, an IP address of the terminal apparatus or a MAC address set in the communication unit 340 in the terminal apparatus can be used as the information identifying the terminal apparatus.
In the example illustrated in
The confirmation password input field 1014 accepts an input of a password that is used to input an installation result in the terminal apparatus to which a resources has been installed.
In the example illustrated in
The CPU 110 of the management apparatus 100 transmits a telegram indicating the distribution instruction (T101) to the distribution apparatus 200 by using the communication unit 140 on the basis of the above-described input information.
The distribution instruction (T101) illustrated in
The distribution instruction identifying information (T1011) illustrated in
Before transmitting a distribution instruction, the management apparatus 100 generates information identifying the distribution instruction and sets the information as the distribution instruction identifying information (T1011).
The number of distribution targets (T1012) illustrated in
For example, the number of distribution targets (T1012) indicates the number of pieces of terminal identifying information input to the distribution target input field 1012 illustrated in
The terminal identifying information (T1013) illustrated in
The distribution instruction includes pieces of the terminal identifying information (T1013) illustrated in
A value corresponding to the terminal identifying information input to the distribution target input field 1012 illustrated in
The number of initial distribution targets (T1014) illustrated in
For example, the number of initial distribution targets (T1014) indicates the number of pieces of terminal identifying information input to the initial distribution target input field 1013 illustrated in
The terminal identifying information (T1015) illustrated in
The distribution instruction includes pieces of the terminal identifying information (T1015) illustrated in
A value corresponding to the terminal identifying information input to the initial distribution target input field 1013 illustrated in
The confirmation password (T1016) illustrated in
A value corresponding to the confirmation password input to the confirmation password input field 1014 illustrated in
As an alternative to the confirmation password (T1016), an account ID on the system of a user who inputs a distribution instruction may be included in the distribution instruction.
In this case, an account ID on the system may be input by using a screen of the distribution instruction inputting unit illustrated in
The resource name (T1017) illustrated in
For example, a value corresponding to the information input to the distributed resource input field 1011 illustrated in
The data length (T1018) illustrated in
The data (T1019) illustrated in
The distribution apparatus 200 receives the distribution instruction transmitted from the management apparatus 100 connected via the network 400 (S200), and registers resource distribution information in the resource distribution DB (T201) on the basis of the received distribution instruction (S201).
The resource distribution information illustrated in
The distribution ID (T2011) illustrated in
In the example illustrated in
The resource name (T2012) illustrated in
The CPU 210 of the distribution apparatus 200 stores a resource file specified by the data length (T1018) and the data (T1019) included in the received distribution instruction in a storage area on the nonvolatile storage medium 280 specified by a resource name (T2012).
In the example illustrated in
The candidate distribution target (T2013) illustrated in
In the example illustrated in
The distribution target (T2014) illustrated in
In the example illustrated in
The confirmation password (T2015) illustrated in
In the example illustrated in
Alternatively, the confirmation password (T2015) may be preset separately from the distribution instruction received from the management apparatus 100.
For example, a password can be registered by associating the password with an account ID on the system of a user who inputs the distribution instruction.
In this case, a value used as the confirmation password (T2015) can be specified by allowing the account ID of the user to be included in the distribution instruction received from the management apparatus 100.
By registering the password while associating the password with the account ID, the confirmation password input field 1014 can be omitted in the screen of the distribution instruction inputting unit illustrated in
The installation result (T2016) illustrated in
In the stage of operation S201, a corresponding value is not included in the received distribution instruction, and thus it is unnecessary that a value is set in the installation result (T2016) of the resource distribution information.
In the example illustrated in
Then, the CPU 210 of the distribution apparatus 200 specifies distribution targets in the initial distribution stage by referring to the distribution target (T2014) in the resource distribution information (S202).
In the example illustrated in
The CPU 210 of the distribution apparatus 200 transmits an installation instruction to the specified distribution targets (S203).
The installation instruction (T203) illustrated in
The distribution instruction identifying information (T2031) illustrated in
The resource name (T2032) illustrated in
The data length (T2033) illustrated in
The data (T2034) illustrated in
Each of the terminal apparatuses 300 receives the installation instruction transmitted from the distribution apparatus 200 connected via the network 400 (S301) and executes the received installation instruction (S302).
That is, the CPU 310 of the terminal apparatus 300 executes a process of installing the resource indicated by the received installation instruction.
After completing the installation process, the CPU 310 of the terminal apparatus 300 accepts an input of an installation result (S303).
The example of the screen illustrated in
In the case of having recognized to some extent that a malfunction does not occur in the terminal apparatus due to installation of the resource, a maintenance worker inputs the confirmation password to the password input field 3031 and presses the installation OK button 3032.
On the other hand, in the case of having recognized that a malfunction occurs in the terminal apparatus due to installation of the resource, the maintenance worker inputs the confirmation password to the password input field 3031 and presses the installation NG button 3033.
The CPU 310 of the terminal apparatus 300 transmits the installation result (3032 or 3033) input in operation S303 together with the password input to the password input filed 3031 by using the communication unit 340 (S340).
The installation result report illustrated in
The distribution instruction identifying information (T3011) illustrated in
The terminal identifying information (T3012) illustrated in
The CPU 310 of the terminal apparatus 300 can obtain the terminal identifying information preset in a predetermined storage area of the terminal apparatus 300 and set the terminal identifying information as the terminal identifying information (T3012) in the installation result report.
In the case where the terminal identifying information identifying a destination terminal apparatus is included in the installation instruction transmitted in operation S203, the CPU 310 of the terminal apparatus 300 can set the terminal identifying information included in the installation instruction received from the distribution apparatus 200 as the terminal identifying information (T3012) in the installation result report.
The resource name (T3013) illustrated in
The password (T3014) illustrated in
The installation result (T3015) illustrated in
That is, a press of the installation OK button (3032) illustrated in
On the other hand, a press of the installation NG button (3033) illustrated in
The distribution apparatus 200 receives the installation result reports transmitted from the respective terminal apparatuses 300 connected via the network (S204) and executes an authentication process on the received installation result reports (S205).
The CPU 210 of the distribution apparatus 200 specifies the resource distribution information including the distribution ID (T2011) corresponding to the distribution instruction identifying information (T3011) indicated in each of the received installation result reports by referring to the resource distribution DB (T201).
The CPU 210 determines whether authentication has successfully been performed (S205) on the basis of the confirmation password (T2015) indicated in the specified resource distribution information and the password (T3014) indicated in the received installation result report.
If the received password matches the confirmation password (T2015) in the resource distribution information, the CPU 210 of the distribution apparatus 200 can determine that the authentication has successfully been performed (YES in operation S205).
On the other hand, if the received password does not match the confirmation password (T2015) in the resource distribution information, the CPU 210 of the distribution apparatus 200 can determine that the authentication has not successfully been performed (NO in operation S205).
If it is determined in operation S205 that the authentication has successfully been performed (YES in operation S205), the CPU 210 updates the installation result (T2016) in the resource distribution information on the basis of the received installation result report.
The CPU 210 registers the terminal identifying information (T3012) indicated in the installation result reports received in the above-described operation S204 and the installation result (T3015) indicated in the installation result reports in the installation result (T2016) of the resource distribution information.
Alternatively, on the basis of the installation result (T3015) indicated in the received installation result reports, the number of terminal apparatuses that have transmitted an installation result report indicating that installation has successfully been performed and/or the number of terminal apparatuses that have transmitted an installation result report indicating that installation has not successfully been performed may be registered as the installation result (T2016) in the resource distribution information.
In the example illustrated in
After the above-described operation S206 (
If it is determined in operation S205 that authentication has not successfully been performed (NO in operation S205), operation S206 is not performed in order to prevent the reference to the installation result in the following determining process because the installation result can be an installation result transmitted by a wrong operation by a user other than the maintenance worker.
If it is determined in operation S205 that the authentication has not successfully been performed (NO in operation S205), the CPU 210 may transmit a control signal for requesting a re-input of an installation result to the terminal apparatus 300 that has transmitted the installation result by using the communication unit 240.
Accordingly, the terminal apparatus 300 that has received the control signal is allowed to display the input screen illustrated in
If the installation result reports received from all the terminal apparatuses as distribution targets specified in the above-described operation S202 (distribution-target terminals) have been registered in the installation result (T2016) of the resource distribution information, the CPU 210 determines that installation results from all the distribution targets have been received (YES in operation S207).
If the CPU 210 determines that installation result reports from all the distribution targets have been received (YES in operation S207), the CPU 210 determines whether distribution of the resource to other terminal apparatuses should be permitted by referring to the installation result (T2016) of the resource distribution information (S208).
If the CPU 210 determines that distribution of the resource to other terminal apparatuses can be permitted (YES in operation S208), the CPU 210 specifies distribution targets in the next stage (S209) and transmits an installation instruction to the specified distribution targets as in the above-described operation S203.
Note that the installation instruction may include a control signal that does not request an input of an installation result by the maintenance worker in the terminal apparatus.
Accordingly, a confirmation work by the maintenance worker can be omitted.
A certain degree of confirmation of installation results can be performed in the execution of the installation instruction in the above-described operation S302 (
Each of the terminal apparatuses 300 receives the installation instruction transmitted from the distribution apparatus 200 connected via the network 400 (S305) (
Here, the installation result is not input by the maintenance worker but may be an execution result of the execution process in the above-described operation S306.
The terminal apparatus 300 can transmit, as an installation result, information indicating whether the execution process of the installation instruction has normally been completed.
The distribution apparatus 200 collects the installation results transmitted from the terminal apparatuses 300 connected via the network 400 (S211) and transmits the collected installation results to the management apparatus 100 (S212) (
On the other hand, if it is determined in operation S208 that distribution of the resource to other terminal apparatuses is not permitted (NO in operation S208), an installation result report indicating that installation has not successfully been performed is transmitted to the management apparatus 100 (S213).
The installation result report illustrated in
The distribution instruction identifying information (T2041) illustrated in
The number of lists (T2042) illustrated in
The pairs of the terminal identifying information (T2043) and the installation result (T2044) illustrated in
The management apparatus 100 receives the installation result report transmitted from the distribution apparatus 200 connected via the network 400 and displays the report in the display unit (S102).
The flow of the process in the entire system according to an embodiment of the present invention has been described.
Next, details of operation S208 illustrated in
In operation S208, the CPU 210 determines whether distribution of the resource to other terminal apparatuses should be permitted by referring to the installation result (T2016) of the resource distribution information registered in the resource distribution DB (S208).
In the installation result (T2016) of the resource distribution information, the installation result reports received in the above-described operation S204 are registered.
In the example illustrated in
Also, as the installation result (T2016), “terminal A: OK” indicating that installation of the resource has successfully been performed in “terminal A” (terminal apparatus A) is registered. Also, “terminal B: NG” indicating that installation of the resource has not successfully been performed in “terminal B” (terminal apparatus B) is registered.
For example, a higher importance may be put on eliminating an abnormal operation that can be caused by installing a resource than an effect obtained by installing the resource.
In this case, in the example illustrated in
That is, the CPU 210 can determine to permit installation of the resource to other terminal apparatuses when the CPU 210 determines to have received installation result reports including the installation result (T3015) indicating that installation has successfully been performed from all the terminal apparatuses to which the installation instruction was transmitted in the above-described operation S203, by referring to the installation result (T2016) of the resource distribution information.
Otherwise, the CPU 210 can determine not to permit installation of the resource before receiving installation results from other terminal apparatuses when the installation result (T3015) in any of the installation result reports received in the above-described operation S204 (
On the other hand, a higher importance may be put on an effect obtained by installing a resource than eliminating an abnormal operation that can be caused by installing the resource.
In this case, in the example illustrated in
For example, in the case where the resource to be installed is vaccine software for emergency countermeasures against computer virus or improvement software for emergency countermeasures to prevent unauthorized accesses, damages may occur due to infection with computer virus or unauthorized accesses if the resource is not installed.
Therefore, in such a case where the degree of risk is high, even if installation has not successfully been performed in part of terminal apparatuses but if installation has successfully been performed in the other terminals, installation of the resource to all the other terminals may be executed.
In such a case, the CPU 210 can determine to permit installation of the resource to other terminal apparatuses if the CPU 210 determines to have received an installation result indicating that installation has successfully been performed from any of the terminal apparatuses as destinations of the installation instruction in the above-described operation S203 (
Alternatively, the CPU 210 can determine to permit installation of the resource before receiving an installation result from other terminal apparatuses if the installation result (T3015) of the installation result reports received in the above-described operation S204 indicates that installation has successfully been performed, by referring to the installation result (T3015).
Also, the CPU 210 can determine to permit installation of the resource to other terminal apparatuses if the CPU 210 determines that there exist a predetermined number or more of installation results indicating that installation has successfully been performed received from the terminal apparatuses to which the installation instruction was transmitted in operation S203, by referring to the installation result (T2016) of the resource distribution information.
For example, if an installation result indicating that installation has successfully been performed is received from 50% or more of the terminal apparatuses to which the installation instruction was transmitted in operation S203, the CPU 210 can determine to permit installation of the resource to other terminal apparatuses.
In the above-described determining process, switching may be performed on the basis of the installation instruction transmitted from the management apparatus 100 between a determination made by putting a higher importance on an effect obtained by installing the resource and a determination made by putting a higher importance on eliminating an abnormal operation that can be caused by installing the resource.
For example, in the distribution instruction inputting unit 101 of the management apparatus 100, an input field for inputting a control signal for selecting any of the above-described determination(s) may be provided, and the input control signal may be transmitted as an information element of the distribution instruction to the distribution apparatus 200.
In the above-described configuration, in the case where the control signal included in the distribution instruction indicates a determination made by putting a higher importance on an effect obtained by applying the resource, the CPU 210 refers to the installation result received in operation S204, and can determine to permit installation of the resource before receiving an installation result from other terminal apparatuses if the installation result that has been referred to indicates that installation has successfully been performed.
On the other hand, in the case where the control signal included in the distribution instruction indicates a determination made by putting a higher importance on eliminating an abnormal operation that can be caused by applying the resource, the CPU 210 refers to the installation result received in operation S204, and can determine not to permit installation of the resource before receiving installation results from other terminal apparatuses if the installation result that has been referred to indicates that installation has not successfully been performed.
Next, details of operation S209 illustrated in
In operation S209, after it has been determined in operation S208 that installation of the resource to other terminal apparatuses is permitted, the CPU 210 specifies distribution targets in the next stage by referring to the candidate distribution target (T2013) and the distribution target (T2014) in the resource distribution information registered in the resource distribution DB (S209).
In the candidate distribution target (T2013) and the distribution target (T2014) in the resource distribution information, the data registered in the resource distribution DB in operation S201 on the basis of the distribution instruction received in operation S200 is set.
In the example illustrated in
Also, “terminals A and B”, that is, the terminal apparatuses A and B, are registered as the distribution target (T2014).
The CPU 210 can specify, as the distribution targets in the next stage, all the terminal apparatuses indicated in the candidate distribution target (T2013) except the terminal apparatuses indicated in the distribution target (T2014).
Specifically, in the example illustrated in
Furthermore, the CPU 210 may narrow down the distribution targets on the basis of the installation result (T2016) indicated in the resource distribution information.
That is, the CPU 210 may refer to the installation result (T2016) indicated in the resource distribution information, specify the terminal apparatus that has transmitted an installation result indicating that installation has not successfully been performed, and eliminate a terminal apparatus having the same configuration as that of the specified terminal apparatus from the distribution targets.
A further description is given by using the examples illustrated in
First, assume that the CPU 210 refers to the installation result in the resource distribution information and specifies the terminal apparatus B as the terminal apparatus that has transmitted the installation result indicating that installation has not successfully been performed.
Also, assume that the CPU 210 specifies the terminal apparatus A as the terminal apparatus that has transmitted the installation result indicating that installation has successfully been performed.
The CPU 210 refers to the configuration information of the terminal apparatus B registered in the apparatus configuration DB (T202) and specifies the apparatus configuration of the terminal apparatus that has transmitted the installation result indicating that installation has not successfully been performed (first apparatus configuration).
Also, the CPU 210 refers to the configuration information of the terminal apparatus A registered in the apparatus configuration DB (T202) and specifies the apparatus configuration of the terminal apparatus that has transmitted the installation result indicating that installation has successfully been performed (second apparatus configuration).
The CPU 210 compares the first apparatus configuration with the second apparatus configuration and specifies a different item therebetween.
In the example illustrated in
As a result, the CPU 210 specifies a difference therebetween: the free space of the auxiliary storage device of the terminal apparatus A is 50 GB, whereas the free space of the auxiliary storage device of the terminal apparatus B is 80 MB.
Additionally, in the example illustrated in
As a result, the CPU 210 specifies a difference therebetween: the version of Soft 2 of the terminal apparatus A is “V02L20”, whereas the version of Soft 2 of the terminal apparatus B is “V01L01”.
Accordingly, the CPU 210 can eliminate, from the distribution targets, a terminal apparatus in which the value of “free space in auxiliary storage device” indicated in the hardware configuration information (T2022) is “80 MB” or less.
In addition, the CPU 210 can eliminate, from the distribution targets, a terminal apparatus in which the value of Soft 2 indicated in the software configuration information (T2023) is “V01L01”.
In the example illustrated in
In the example illustrated in
As a result, in the example illustrated in
The CPU 210 may specify a terminal apparatus to be eliminated on the basis of only one of the hardware configuration information (T2022) and the software configuration information (T2023) in the information registered in the apparatus configuration DB (T202).
Also, an item that is not referred to may be provided in items of each piece of the configuration information.
That is, the CPU 210 may refer to “free space in auxiliary storage device” without referring to “CPU” and “main storage” in the items of the hardware configuration information (T2022).
The flow of narrowing down distribution targets has been described.
In an embodiment, an operation of selecting terminal apparatuses as distribution targets in the next stage is accepted in addition to accepting an input of an installation result in the terminal apparatus 300.
In the configuration of the program illustrated in
The configuration of the program illustrated in
The description about the same configuration is partly omitted for simplification.
The candidate distribution target receiving unit PG305 illustrated in
The distribution target inputting unit PG306 illustrated in
The selection result transmitting unit PG307 illustrated in
The example of the screen illustrated in
In the example illustrated in
In the example illustrated in
In the example illustrated in
In the example illustrated in
In the configuration of the program illustrated in
The configuration of the program illustrated in
For simplifying the description, a description about the same configuration is partly omitted.
The candidate distribution target transmitting unit PG207 illustrated in
The selection result receiving unit PG208 illustrated in
The distribution control unit PG206 illustrated in
In the flow of the process in the system illustrated in
The flow of the process in the system illustrated in
The first half of the flow of the process in the system according to an embodiment is the same as that according to the embodiment illustrated in
Also, a description about the same part as the process procedure illustrated in
First, if the CPU 210 of the distribution apparatus 200 has successfully authenticated a received installation result, (YES in operation S205), the CPU 210 specifies candidate distribution targets on the basis of the candidate distribution target (T2013) and the distribution target (T2014) in the resource distribution information and transmits the specified candidate distribution targets to the terminal apparatuses by using the communication unit 240 (S214).
For example, the CPU 210 specifies, as candidate distribution targets, the terminal apparatuses indicated in the candidate distribution target (T2013) in the resource distribution information except the terminal apparatuses indicated in the distribution target (T2014).
The candidate distribution target illustrated in
The distribution instruction identifying information (T2051) illustrated in
The number of candidates (T2052) illustrated in
The terminal identifying information (T2053) illustrated in
For example, an IP address of the terminal apparatus or a MAC address set in the communication unit 340 of the terminal apparatus can be used as the terminal identifying information (T2053).
Each of the terminal apparatuses 300 receives the candidate distribution targets transmitted from the distribution apparatus 200 connected via the network (S308) and accepts an input of distribution targets (S309).
Also,
The CPU 310 of the terminal apparatus 300 detects a press of the transmission execution button (3052) illustrated in
In the example illustrated in
Additionally, the information of terminal apparatuses transmitted in operation S310 may include the data input to the confirmation input selection inputting field (T30513).
That is, information of “terminal apparatus C” selected as a distribution target may include information indicating requesting a confirmation input.
Also, information of “terminal apparatus D” selected as a distribution target may include information indicating not requesting a confirmation input.
The selection result report illustrated in
The distribution instruction identifying information (T3021) illustrated in
The number of distribution selections (T3022) illustrated in
In the example illustrated in
The terminal identifying information (T3023) illustrated in
For example, an IP address of the terminal apparatus or a MAC address set in the communication unit 340 in the terminal apparatus can be used as the terminal identifying information (T3023).
The number of confirmation selections (T3024) illustrated in
In the example illustrated in
The terminal identifying information (T3025) illustrated in
For example, an IP address of the terminal apparatus or a MAC address set in the communication unit 340 in the terminal apparatus can be used as the terminal identifying information (T3025).
The password (T3026) illustrated in
The CPU 210 of the distribution apparatus 200 receives selection result reports transmitted from the respective terminal apparatuses 300 by using the communication unit 240 (S215).
In the same process procedure as that according to an embodiment, the CPU 210 determines whether installation results from all the distribution targets have been received (S207) and determines whether execution of next distribution can be permitted on the basis of the installation result (T2016) (S208).
As in operation S205, an authentication process of determining the validity of a received selection result report may be performed in operation S215.
In this case, the CPU 210 can perform the authentication process on the basis of the password (T3026) indicated in the selection result report and the confirmation password (T2015) in the resource distribution information registered in the resource distribution DB (T201).
If the selection result report is determined to have no validity as a result of the authentication process, the CPU 210 invalidates the received selection result report.
If The CPU 210 determines in operation S208 that execution of next distribution can be permitted (YES in operation S208), the CPU 210 specifies distribution targets on the basis of the information of the distribution targets received in operation S215 (S216).
In the example illustrated in
Then, the CPU 210 transmits an installation instruction to the terminal apparatuses specified as distribution targets (S217), as in an embodiment.
In the case where information indicating whether a confirmation input is to be requested is received in operation S215, a control signal for requesting or not requesting a maintenance worker for a confirmation input of an installation result may be included in the installation instruction transmitted in operation S217 on the basis of the information (S217).
In the example illustrated in
In this case, the CPU 210 allows the installation instruction to be transmitted to “terminal apparatus C” to include a control signal for requesting a maintenance worker for a confirmation input of an installation result in the terminal apparatus.
On the other hand, the CPU 210 does not allow the installation instruction to be transmitted to “terminal apparatus D” to include a control signal for requesting a maintenance worker for a confirmation input of an installation result in the terminal apparatus.
The installation instruction illustrated in
The distribution instruction identifying information (T2031) illustrated in
The confirmation request (T2035) illustrated in
The resource name (T2032) illustrated in
The data length (T2033) illustrated in
The data (T2034) illustrated in
The terminal apparatus 300 that has received the installation instruction from the distribution apparatus 200 performs control to request or not request an input of an installation result in accordance with the presence/absence of the control signal for a confirmation request.
That is, the CPU 310 of the terminal apparatus 300 refers to the confirmation request (T2035) indicated in the received installation instruction, accepts an input of an installation result (S312) if it is determined that the control signal for requesting an input of an installation result is included (YES in S311) as in operation S303 illustrated in
On the other hand, if the CPU 310 determines that the control signal for requesting an input of an installation result is not included in the received installation instruction (NO in operation S311), the CPU 310 transmits the installation result to the distribution apparatus 200 without executing operation S312.
The same technical configuration as that of the distribution target inputting unit 305 included in the terminal apparatus 300 according to an embodiment can be applied to the management apparatus 100.
In the example illustrated in
Furthermore,
A system and method is provided including distributing a resource to a selected range of terminal apparatuses as specified by an instruction and selectively controlling distribution of the resource to a remaining of the terminal apparatuses based on information resulting subsequent to distribution of the resource to the selected range terminal apparatuses.
The embodiments can be implemented in computing hardware (computing apparatus) and/or software, such as (in a non-limiting example) any computer that can store, retrieve, process and/or output data and/or communicate with other computers. The results produced can be displayed on a display of the computing hardware. A program/software implementing the embodiments may be recorded on computer-readable media comprising computer-readable recording media. The program/software implementing the embodiments may also be transmitted over transmission communication media. Examples of the computer-readable recording media include a magnetic recording apparatus, an optical disk, a magneto-optical disk, and/or a semiconductor memory (for example, RAM, ROM, etc.). Examples of the magnetic recording apparatus include a hard disk device (HDD), a flexible disk (FD), and a magnetic tape (MT). Examples of the optical disk include a DVD (Digital Versatile Disc), a DVD-RAM, a CD-ROM (Compact Disc-Read Only Memory), and a CD-R (Recordable)/RW. An example of communication media includes a carrier-wave signal.
Further, according to an aspect of the embodiments, any combinations of the described features, functions and/or operations can be provided.
Although a few embodiments have been shown and described, it would be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the invention, the scope of which is defined in the claims and their equivalents.
Number | Date | Country | Kind |
---|---|---|---|
2008-331496 | Dec 2008 | JP | national |