Patent Description:
A business model called subscription is sometimes used to provide users with a product or service. A subscription is a product or service usage form where a provider of a product or service collects fees from users at each specified contract period and grants to them the right of access to the product or service during the contract period.

There is, for example, a proposed e-learning apparatus for managing contract information of customers who use Software-as-a-Service (SaaS) e-learning, including contract start months, contract periods, and scheduled end months.

There is also a proposed charging system for creating a policy pertaining to, for example, dynamic or static charging according to contract information stored in a subscription profile repository (SPR) and some local policies set by an operator.

Further, there is a proposed apparatus for grouping network device resources and limiting the access of each user to resources corresponding to group names listed in a user profile associated with the user, to thereby provide a granular view of each network device in a network. According to the proposed apparatus, views of customers are limited only to network device resources to which they have subscriptions.

See, for example, <CIT> and <CIT> and <CIT>.

US Patent Application Publication <CIT> relates to a contract monitoring system and a method for contract monitoring. The contract monitoring system monitors compliance with a contract, receives contract terms and event messages, which describe performance of the contract terms, and presents performance information to the parties to the contract.

An information processing system and services on the information processing system used by a user are sometimes operated by multiple devices rented under rental contracts. It is often the case that individual devices have different rental contract periods. In this case, a device being no longer available due to expiration of the rental contract may affect other devices with the contracts remaining in effect and operations of the services.

One aspect of the embodiments is to provide an operation information management program, operation information management method, and information processing apparatus for preventing devices with the contracts continuing in effect from being affected.

According to one aspect, there is provided an operation information management program. The invention is defined in the independent claims, to which reference should now be made. Specific embodiments are defined in the dependent claims.

Embodiments are set out, by way of example only, with reference to the following drawings, in which:.

Several embodiments will be described below with reference to the accompanying drawings.

A first embodiment is described hereinafter.

<FIG> illustrates an information processor according to the first embodiment.

An information processor <NUM> illustrated in <FIG> manages operation information of multiple devices provided on subscription bases. For example, the information processor <NUM> manages devices included in a system <NUM> operated by a user. The information processor <NUM> is connected to the system <NUM> via a network, which may be a local area network (LAN), a wide area network (WAN), or the Internet. As an example, the system <NUM> includes devices <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and <NUM>. The devices <NUM> to <NUM> are, for example, server computers, storage devices, routers, and switches.

The devices <NUM> to <NUM> are rented to the user by a business operator. With respect to each of the devices <NUM> to <NUM>, the period of the device available to the user is determined by a contract between the user and the business operator. Therefore, the periods of the devices <NUM> to <NUM> available to the user may vary for each device.

The information processor <NUM> includes a storing unit <NUM> and a processing unit <NUM>. The storing unit <NUM> may be a volatile storage device such as random access memory (RAM), or a non-volatile storage device such as a hard disk drive (HDD) or flash memory. The processing unit <NUM> may include, for example, a central processing unit (CPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), and a field programmable gate array (FPGA). The processing unit <NUM> may be a processor for executing programs. The term "processor" here includes a set of multiple processors (i.e., multiprocessor).

The information processor <NUM> is connected to a display unit <NUM> which displays images corresponding to image information output from the information processor <NUM>. The display unit <NUM> may be connected to a different information processor which communicates with the information processor <NUM> via a network.

The storing unit <NUM> stores therein contract information 11a indicating end times of the rental contracts of the individual devices included in the system <NUM>. The contract information 11a is information representing contract contents according to the contracts between the business operator and the user, and is preliminarily stored in the storing unit <NUM>. Here, the devices <NUM> to <NUM> are individually given identification information "n1" to "n6". The contract information 11a indicates, for example, the following end times of the rental contracts (hereinafter referred to simply as "rental contract end times") for the devices <NUM> to <NUM>.

The rental contract end time of the device <NUM> corresponding to the identification information n1 is t1. The rental contract end time of the device <NUM> corresponding to the identification information n2 is t2. The rental contract end time of the device <NUM> corresponding to the identification information n3 is t3. The rental contract end time of the device <NUM> corresponding to the identification information n4 is t4. The rental contract end time of the device <NUM> corresponding to the identification information n5 is t5. The rental contract end time of the device <NUM> corresponding to the identification information n6 is t6.

Assume, for example, that the rental contract end times t1 and t3 to t6 have following relationships with the rental contract end time t2: t1 comes before t2, i.e., t1 < t2; t3 comes after t2, i.e., t3 > t2; t4 comes before t2, i.e., t4 < t2; t5 comes before t2, i.e., t5 < t2; and t6 comes after t2, i.e., t6 > t2.

The storing unit <NUM> also stores therein communication channel information indicating communication channels between the devices in the system <NUM>. In the system <NUM>, the device <NUM> connected to the device <NUM> is subordinate to the device <NUM>. Different devices may also be subordinate to the device <NUM>. Under the device <NUM>, the devices <NUM> and <NUM> are connected. The device <NUM> is subordinate to the device <NUM> while the device <NUM> is subordinate to the device <NUM>. The communication channel information indicates the aforementioned inter-device connection topology. Two devices directly connected to each other are able to communicate. A device located between two devices relays communication between them. Therefore, the communication channel information represents inter-device communication channels. In the network of the system <NUM>, for example, a device with a smaller number of intermediate devices (number of hops) through which communication passes to reach a router or switch on a core system side (e.g., a device closer to the device <NUM>) is superordinate to a device with a larger number of hops (e.g., a device further away from the device <NUM>).

The processing unit <NUM> detects, based on the contract information 11a stored in the storing unit <NUM>, that the contract of a first device amongst the multiple devices ends at a first time point. In this regard, the processing unit <NUM> may identify the first device by receiving a choice of device from the user. For example, the processing unit <NUM> may set a device selected by the user as the first device. Alternatively, with a predetermined period of time, the processing unit <NUM> may periodically perform a process of identifying, in the contract information 11a, a device whose contract expires within a prescribed period from the present time as the first device.

Let us consider the case where the processing unit <NUM> receives user's choice of, for example, the device <NUM>. The processing unit <NUM> may receive a choice of the device <NUM> by causing the display unit <NUM> to display an image <NUM> that includes icons of the devices <NUM> to <NUM> and connection relationships among the devices <NUM> to <NUM> and then receiving the selection of the icon of the device <NUM> made by the user on the image <NUM>. In the image <NUM> of <FIG>, the device <NUM> being selected by the arrow-shaped pointer is depicted by the rectangular box with bold line delineating the icon with the identification information "n2" that corresponds to the device <NUM>. In this case, the processing unit <NUM> sets the device <NUM> as the first device. According to the contract information 11a, the rental contract end time of the device <NUM> is t2.

The processing unit <NUM> determines, based on the contract information 11a and the communication channel information stored in the storing unit <NUM>, a second device to be affected by expiration of the contract of the first device at the first time point. Specifically, the processing unit <NUM> determines whether expiration of the contract of the first device affects one or more different devices by comparing the first time point at which the contract of the first device ends and a second time point at which the contract of each different device ends.

The processing unit <NUM> determines that expiration of the contract of the first device affects the different device when the first time point comes before the second time point. This is because, if the first device becomes no longer available at the first time point although the rental contract of the different device remains valid after the first time point, the different device is not able to communicate via the first device. Thus, expiration of the contract of the first device affects operation of the different device.

On the other hand, the processing unit <NUM> determines that expiration of the contract of the first device has no impact on the different device if the first time point comes at or after the second time point. This is because, even if the first device becomes no longer available at the first time point, the different device is not in use at the first time point because the rental contract of the different device has finished before the first time point. Thus, expiration of the contract of the first device has no effect on operation of the different device.

Note here that the processing unit <NUM> may limit different devices targeted for judgment of influences of rental contract expiration of the first device to those subordinate to the first device, or may instead target devices both superordinate and subordinate to the first device. In the example described in this section, the processing unit <NUM> also determines, with respect to each device superordinate to the first device, whether expiration of the rental contract of the superordinate device affects the first device, and outputs the determination results, as will be discussed later. Therefore, the following illustrates the case where different devices targeted for judgment of influences of rental contract expiration of the first device are limited to those subordinate to the first device.

Note that, if there is one or more devices at even lower tiers than direct subordinates of the first device, the processing unit <NUM> also compares the first time point with the contract end time of each of the lower-tier devices, to determine if there is the effect of contract expiration of the first device. In this manner, the processing unit <NUM> repeats determining the influences by comparing, for each device subordinate to the first device, the contract end time of the subordinate device and the first time point. The processing unit <NUM> continues identifying devices to be affected until reaching terminal devices.

For example, given that the device <NUM> is the first device, the processing unit <NUM> identifies the devices <NUM> to <NUM> subordinate to the device <NUM> based on the communication channel information.

The processing unit <NUM> determines, based on the contract information 11a, the influence of the contract end of the device <NUM> on the device <NUM>. The rental contract end time t3 of the device <NUM> comes after the rental contract end time t2 of the device <NUM>. In this case, the processing unit <NUM> determines that the contract end of the device <NUM> affects the device <NUM>.

The processing unit <NUM> determines, based on the contract information 11a, the effect of the contract end of the device <NUM> on the device <NUM>. The rental contract end time t4 of the device <NUM> comes before the rental contract end time t2 of the device <NUM>. In this case, the processing unit <NUM> determines that the contract end of the device <NUM> has no effect on the device <NUM>.

The processing unit <NUM> also compares t2 against each of the rental contract end times t5 and t6 of the devices <NUM> and <NUM>, to determine whether the contract end of the device <NUM> affects the devices <NUM> and <NUM>. In this case, because of t5 < t2, the processing unit <NUM> determines that there is no effect on the device <NUM>. On the other hand, because of t6 > t2, the processing unit <NUM> determines that the device <NUM> would be affected.

In the example described above, the devices <NUM> and <NUM> are examples of the second device to be affected by expiration of the contract of the first device at the first time point when the device <NUM> is the first device.

Note that the processing unit <NUM> is also able to determine if expiration of the contract of a third device superordinate to the first device affects the first device in a similar manner to determining the effect of expiration of the contract of the first device on a different device. For example, the processing unit <NUM> identifies, based on the communication channel information, the device <NUM> superordinate to the device <NUM>. Then, the processing unit <NUM> determines the effect of contract expiration of the device <NUM> on the device <NUM> by comparing, based on the contract information 11a, the rental contract end time t1 of the device <NUM> and the rental contract end time t2 of the device <NUM>. In this case, because of t1 < t2, the processing unit <NUM> determines that contract expiration of the device <NUM> affects the device <NUM>. If there is a device even superordinate to the device <NUM>, the processing unit <NUM> may also determine the effect of contract expiration of the superordinate device on the device <NUM>.

As has been described above, in response to selection of the device <NUM> by the user, the processing unit <NUM> may detect, not only contract expiration of the device <NUM> affecting the devices <NUM> and <NUM>, but also the device <NUM> being subject to contract expiration of the device <NUM>.

The processing unit <NUM> outputs information about the effect on the second device. The processing unit <NUM> presents messages 31a and 31b to the user indicating that the devices <NUM> and <NUM> are going to be affected by contract expiration of the device <NUM>, for example, by causing the display unit <NUM> to display the image <NUM> with the messages 31a and 31b or transmitting the messages 31a and 31b to a different information processor via a network. At this time, the processing unit <NUM> may output the rental contract end times t2, t3, and t6 of the devices <NUM>, <NUM>, and <NUM>, respectively, to notify the user of the points in time after t2, at which the devices <NUM> and <NUM> become individually affected.

In addition, in the case of having identified the third device that affects the first device, the processing unit <NUM> may output information about the effect on the first device due to contract expiration of the third device, in addition to the information about the effect on the second device. The processing unit <NUM> presents a message 31c to the user indicating that the device <NUM> is subject to contract expiration of the device <NUM>, for example, by causing the display unit <NUM> to display the image <NUM> with the message 31c or transmitting the message 31c to a different information processor via a network. At this time, the processing unit <NUM> may output the contract end times t1 and t2 of the devices <NUM> and <NUM>, respectively, to notify the user of the point in time after t1, at which the device <NUM> becomes affected. A message 31d on the image <NUM> indicates the rental contract end time t1 of the device <NUM>.

According to the information processor <NUM>, the storing unit <NUM> stores contract information indicating rental contract expiration time points of individual devices in a system that includes multiple devices rented to a user; and communication channel information indicating inter-device communication channels of the multiple devices. Based on the contract information and the communication channel information, one or more second devices to be affected by contract expiration of the first device at the first time point are identified amongst the multiple devices, and information about the effect on the second devices is output.

Herewith, it is possible to prevent devices with the contracts remaining in effect from being affected.

For example, in the case where the user has selected the device <NUM>, the processing unit <NUM> presents messages to the user indicating that the devices <NUM> and <NUM> are going to be affected by expiration of the contract of the device <NUM>. In this manner, the information processor <NUM> prompts the user to review, e.g., extend, the expiration of the contract term of the device <NUM> and thus supports the user by preventing the devices <NUM> and <NUM> from being affected by expiration of the contract of the device <NUM>. The information processor <NUM> also supports the user to be able to continue operations of the user's system and services running on the system.

In addition, in the case where the user has selected the device <NUM>, the processing unit <NUM> may present a message to the user indicating that the device <NUM> is going to be affected by expiration of the contract of the device <NUM>. That is, the processing unit <NUM> may output not only information about the effect of the first device on the second device, but also information about the effect of the third device on the first device, thus presenting both devices being affected by the first device and those affecting the first device to the user.

Herewith, the information processor <NUM> is able to prompt the user to review, e.g., extend, the expiration of the contract term of the device <NUM> and thus supports the user by preventing the device <NUM> from being affected by expiration of the contract of the device <NUM>. In addition, the information processor <NUM> is able to collectively present, to the user, the extent of the influences within the entire system <NUM>, where devices bear parent and child relationships with the device <NUM> specified by the user as a starting point. Therefore, the information processor <NUM> is able to support the user to readily comprehend the extent of the influences associated with the device selected by the user.

Next described are further details of the functions of the information processor <NUM>.

A second embodiment is described hereinafter.

<FIG> illustrates an example of an information processing system according to the second embodiment.

The information processing system of the second embodiment includes a contract management server <NUM>, a device management server <NUM>, routers <NUM>, <NUM>, and <NUM>, storage devices <NUM> and <NUM>, servers <NUM>, <NUM>, and <NUM>, and a terminal device <NUM>. Among these, the device management server <NUM>, the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, the servers <NUM>, <NUM>, and <NUM>, and the terminal device <NUM> form a system operated by a user.

The routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, the servers <NUM>, <NUM>, and <NUM>, and the terminal device <NUM> are equipment rented to the user on subscription bases.

The contract management server <NUM> is a server computer run by a business operator who rents various types of equipment to the user through subscription. The contract management server <NUM> manages, for example, information on contracts of devices rented to the user and charging information. The contract management server <NUM> is an example of the information processor <NUM> of the first embodiment. The contract management server <NUM> is connected to a network <NUM>, which is, for example, a WAN or the Internet.

The device management server <NUM> is a server computer for managing the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM>. The device management server <NUM> is connected to a network <NUM>, which is, for example, a LAN set up at a base of the user. The network <NUM> is connected to the network <NUM>.

The routers <NUM>, <NUM>, and <NUM> are communication devices for relaying communication between the devices. The storage devices <NUM> and <NUM> are network attached storage (NAS) devices for storing data used by the servers <NUM> and <NUM>, respectively, for their processing. The servers <NUM>, <NUM>, and <NUM> are server computers for providing the user with services by running predetermined applications.

The routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM> have the following connection relationship with each other. Note that the router <NUM> is a first-tier device amongst those rented out, and each device at a lower tier needs to go through a larger number of devices to reach the network <NUM>. The router <NUM> is connected to the network <NUM>.

The storage device <NUM>, the server <NUM>, and the router <NUM> are connected to the router <NUM>. The storage device <NUM>, the server <NUM>, and the router <NUM> are subordinate to the router <NUM>, and thus regarded as child devices of the router <NUM>. The router <NUM> is superordinate to the storage device <NUM>, the server <NUM>, and the router <NUM>, and thus regarded as a parent device of the storage device <NUM>, the server <NUM>, and the router <NUM>.

The server <NUM> is connected to the router <NUM>. The server <NUM> is subordinate to the router <NUM>, and thus regarded as a child device of the router <NUM>. The router <NUM> is superordinate to the server <NUM>, and thus regarded as a parent device of the server <NUM>.

The terminal device <NUM> is a client computer operated by the user.

<FIG> is a block diagram illustrating an example of hardware of the contract management server.

The contract management server <NUM> includes a CPU <NUM>, a RAM <NUM>, an HDD <NUM>, a graphics processing unit (GPU) <NUM>, an input device interface <NUM>, a media reader <NUM>, and a network interface card (NIC) <NUM>. Note that the CPU <NUM> is an example of the processing unit <NUM> of the first embodiment. The RAM <NUM> or the HDD <NUM> is an example of the storing unit <NUM> of the first embodiment.

The CPU <NUM> is a processor configured to execute program instructions. The CPU <NUM> reads out at least part of programs and data stored in the HDD <NUM>, loads them into the RAM <NUM>, and executes the loaded programs. Note that the CPU <NUM> may include two or more processor cores. The contract management server <NUM> may include two or more processors. Processes described below may be run in parallel using multiple processors or processor cores. The term "multiprocessor", or simply "processor", may be used to refer to a set of processors.

The RAM <NUM> is volatile semiconductor memory for temporarily storing therein programs to be executed by the CPU <NUM> and data to be used by the CPU <NUM> for its computation. The contract management server <NUM> may be provided with a different type of memory other than RAM, or may be provided with two or more memory devices.

The HDD <NUM> is a non-volatile storage device to store therein software programs, such as an operating system (OS), middleware, and application software, and various types of data. The contract management server <NUM> may be provided with a different type of storage device, such as flash memory or a solid state drive (SSD), or may be provided with two or more non-volatile storage devices.

The GPU <NUM> produces video images in accordance with drawing commands from the CPU <NUM> and displays them on a screen of a display <NUM> coupled to the contract management server <NUM>. The display <NUM> may be any type of display, such as a cathode ray tube (CRT) display; a liquid crystal display (LCD); a plasma display; or an organic electro-luminescence (OEL) display.

The input device interface <NUM> receives an input signal from an input device <NUM> connected to the contract management server <NUM> and supplies the input signal to the CPU <NUM>. Various types of input devices may be used as the input device <NUM>, for example, a pointing device, such as a mouse, a touch panel, a touch-pad, and a trackball; a keyboard; a remote controller; and a button switch. Multiple types of input devices may be connected to the contract management server <NUM>.

The media reader <NUM> is a reading device for reading out programs and data encoded on a storage medium <NUM>. The storage medium <NUM> may be, for example, a magnetic disk, an optical disk, a magnetooptical disk (MO), or semiconductor memory. Examples of the magnetic disk are a flexible disk (FD) and an HDD. Examples of the optical disk are a compact disc (CD) and a digital versatile disc (DVD).

The media reader <NUM> copies the programs and data read out from the storage medium <NUM> to a different storage medium, for example, the RAM <NUM> or the HDD <NUM>. The read programs are executed, for example, by the CPU <NUM>. Note that the storage medium <NUM> may be a portable storage medium and used to distribute the programs and data. In addition, the storage medium <NUM> and the HDD <NUM> are sometimes referred to as computer-readable storage media.

The NIC <NUM> is an interface connected to the network <NUM> and used to communicate with different computers, including the device management server <NUM>, via the network <NUM>. The NIC <NUM> is connected, for example, to communication devices such as switches and routers by cables. Alternatively, the NIC may be wirelessly connected to such communication devices.

The same hardware configuration of the contract management server <NUM> of <FIG> may similarly be applied to the device management server <NUM>, the servers <NUM>, <NUM>, and <NUM>, and the terminal device <NUM>.

<FIG> is a block diagram illustrating an example of functions of the contract management server and the device management server.

The contract management server <NUM> includes a storing unit <NUM> and a contract managing unit <NUM>. The storing unit <NUM> is implemented with the use of a storage area of the RAM <NUM> or the HDD <NUM>. The contract managing unit <NUM> is implemented by the CPU <NUM> executing a program stored in the RAM <NUM>.

The storing unit <NUM> stores therein network path information, contract information, and an influence judgment information table. The network path information indicates connection relationships of the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM>. The network path information is notified by the device management server <NUM>.

The contract information indicates details of contracts of the individual devices rented to the user. The contract information includes information on an expiration time point of the rental contract of each device. The expiration time point of the rental contract is expressed, for example, as a contract ending date. The contract ending date indicates that the rental contract expires at the end of the day, i.e., midnight of the following day of the expiration date. Continuing use of a device by the user after the rental contract of the device has expired is a breach of the contract. Therefore, the user is not able to keep using a device for which the rental contract has ended. The contract information is preliminarily stored in the storing unit <NUM>.

The influence judgment information table includes information indicating, with respect to each of the rented devices, the results of judging the effect on one or more child devices due to contract expiration of the device, as well as the effect on the device due to contract expiration of one or more parent devices of the device.

The contract managing unit <NUM> manages the contracts of the devices rented to the user. The contract managing unit <NUM> also manages the effect on other devices due to contract expiration of each of the devices rented to the user. The contract managing unit <NUM> includes an influence judgment information managing unit <NUM>, an influence judgment controlling unit <NUM>, and an influence extent outputting unit <NUM>.

The influence judgment information managing unit <NUM> maps information of each device included in the network path information stored in the storing unit <NUM> to a corresponding contract ending date included in the contract information, and adds the mappings to the influence judgment information table.

The influence judgment controlling unit <NUM> judges, with respect to each of the devices, the effect on a different device due to contract expiration of the device based on a parent and child relationship of the device in the network path information and the contract ending date of the device mapped by the influence judgment information managing unit <NUM>. The influence judgment controlling unit <NUM> adds the results of the influence judgment to the influence judgment information table. For example, when the rental contract of a device is over, communication between the device and a different device is no longer available. As a result, the different device is unable not only to cooperate with the device whose contract has expired, but also to communicate with yet another device via the device with the expired contract. Consequently, the different device suffers from failing to deliver its services and the like properly.

The influence extent outputting unit <NUM> outputs, based on the influence judgment information table, information on the effect on a different device due to contract expiration of a particular device. For example, the influence extent outputting unit <NUM> may select the particular device according to a device selected by a business operator-side administrator operating the contract management server <NUM> or a user-side administrator operating the terminal device <NUM>. The influence extent outputting unit <NUM> may cause the display <NUM> to display details of the influences for the different device due to contract expiration of the particular device, or may transmit the information on the influences to the terminal device <NUM>, which then displays the details.

The device management server <NUM> includes a storing unit <NUM> and a device managing unit <NUM>. The storing unit <NUM> is implemented with the use of a storage area in RAM or HDD of the device management server <NUM>. The device managing unit <NUM> is implemented by a CPU of the device management server <NUM> executing a program stored in the RAM of the device management server <NUM>.

The storing unit <NUM> stores therein configuration information on the devices rented on subscription bases, i.e., the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM>. The configuration information may include, with respect to each of the devices, identification information; address information, such as a media access control (MAC) address and an Internet Protocol (IP) address; operation logs including operation start and end times; and information on operating times.

The address information may include a MAC address table held by each of the devices. The MAC address tables describe inter-device connection relationships at layer <NUM> of the Open Systems Interconnection (OSI) reference model. The storing unit <NUM> also stores therein the network path information. For example, the network path information may be generated based on the address information included in the configuration information.

The device managing unit <NUM> manages the devices rented to the user on subscription bases. The device managing unit <NUM> includes a configuration information collecting unit <NUM> and a notifying unit <NUM>.

The configuration information collecting unit <NUM> regularly collects the configuration information of the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM> and then stores it in the storing unit <NUM>. The configuration information collecting unit <NUM> generates the network path information based on the collected configuration information and then stores it in the storing unit <NUM>. In response to modification of the configuration information, the configuration information collecting unit <NUM> updates the network path information.

The notifying unit <NUM> periodically transmits, to the contract management server <NUM>, the configuration information and the network path information generated by the configuration information collecting unit <NUM>.

Note that the contract management server <NUM> may manage charging for the user according to each device rented to the user. For example, the contract management server <NUM> may charge a certain amount of fees for the user according to each rental device and the rental contract period of the device. Alternatively, the contract management server <NUM> may adopt a pay-as-you-go billing system, which charges for the operating time of each device rented to the user, based on the configuration information received from the device management server <NUM>.

<FIG> illustrates an example of the network path information.

Network path information <NUM> is acquired from the device management server <NUM> and then stored in the storing unit <NUM>. The network path information <NUM> includes the following items: DEVICE NAME; SERIAL NUMBER; and PARENT DEVICE NAME.

Under "DEVICE NAME", the names of the devices are registered. Under "SERIAL NUMBER", serial numbers are registered, which are identification information for identifying the corresponding devices. Under "PARENT DEVICE NAME", parent device names are registered.

The router <NUM> is given a device name of "R1" and a serial number of "A". The storage device <NUM> is given a device name of "ST1" and a serial number of "B". The server <NUM> is given a device name of "SV1" and a serial number of "C". The router <NUM> is given a device name of "R2" and a serial number of "D". The storage device <NUM> is given a device name of "ST2" and a serial number of "F". The server <NUM> is given a device name of "SV2" and a serial number of "G". The router <NUM> is given a device name of "R3" and a serial number of "E". The server <NUM> is given a device name of "SV3" and a serial number of "H".

For example, the network path information <NUM> includes a registered record with the device name "R1"; the serial number "A"; and the parent device name "-" (not assigned). This record refers to the router <NUM>. The router <NUM> has no parent device because it is a first-tier device in the network configuration made up of the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM>.

The network path information <NUM> also includes a registered record with the device name "ST1"; the serial number "B"; and the parent device name "R1". This record refers to the storage device <NUM> and indicates that the router <NUM> is the parent device of the storage device <NUM>.

In the network path information <NUM>, records individually referring to the routers <NUM> and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM> are also registered in the same way.

Thus, the network path information <NUM> represents the connection relationships of the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM>.

<FIG> illustrates an example of the contract information.

Contract information <NUM> is preliminarily stored in the storing unit <NUM>. For example, once a rental contract of a device is signed between the user and the business operator, information on the contract is input to the contract management server <NUM>. Based on the information on the contract, the contract management server <NUM> adds a record on the device to the contract information <NUM>. The contract information <NUM> includes the following items: SERIAL NUMBER; and ENDING DATE. Under "SERIAL NUMBER", serial numbers of devices are registered. Under "ENDING DATE", contract ending dates of the corresponding devices are registered.

For example, the contract information <NUM> includes a registered record with a serial number of "A"; and an ending date of "<NUM>/<NUM>/<NUM>". This record indicates that the rental contract of the router <NUM> expires on January <NUM>st, <NUM>.

In the contract information <NUM>, records indicating the ending dates of the individual rental contracts of the routers <NUM> and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM> are also registered in the same way.

<FIG> illustrates an example of an influence judgment information table.

An influence judgment information table <NUM> is generated by the influence judgment information managing unit <NUM> and the influence judgment controlling unit <NUM> based on the network path information <NUM> and the contract information <NUM>, and then stored in the storing unit <NUM>. The influence judgment information table <NUM> includes the following items: DEVICE NAME; SERIAL NUMBER; PARENT DEVICE NAME; ENDING DATE; PARENT DEVICE INFORMATION; and CHILD DEVICE INFORMATION.

Under "DEVICE NAME", the names of the devices are registered. Under "SERIAL NUMBER", the serial numbers of the devices are registered. Under "PARENT DEVICE NAME", each field contains the name of a device immediately above the corresponding device. Under "ENDING DATE", each field contains the ending date of the rental contract of the corresponding device.

Under "PARENT DEVICE INFORMATION", each field contains a pointer indicating a list that enumerates, amongst devices at higher tiers than the corresponding device, those with contract ending dates coming before the contract ending date of the corresponding device. This list is referred to as a parent device list, and stored in the storing unit <NUM>.

Note that the devices with the contract ending dates coming before the contract ending date of the corresponding device amongst devices at higher tiers than the corresponding device may be rephrased as "devices having older contract ending dates than that of the corresponding device amongst devices superordinate to the corresponding device".

Under "CHILD DEVICE INFORMATION", each field contains a pointer indicating a list that enumerates, amongst devices at lower tiers than the corresponding device, those with contract ending dates coming after the contract ending date of the corresponding device. This list is referred to as a child device list, and stored in the storing unit <NUM>.

Note that the devices with the contract ending dates coming after the contract ending date of the corresponding device amongst devices at lower tiers than the corresponding device may be rephrased as "devices having later contract ending dates than that of the corresponding device amongst devices subordinate to the corresponding device".

For example, the influence judgment information table <NUM> includes a registered record with the device name "R1"; the serial number "A"; the parent device name "-" (not assigned); the ending date "<NUM>/<NUM>/<NUM>"; the parent device information "-"; and the child device information "P1". This record indicates that the rental contract of the router <NUM> expires on January <NUM>st, <NUM>, and also indicates that a child device list 113a is associated with this record by the pointer P1. No parent device information is assigned because there are no devices above (i.e., superordinate to) the router <NUM>.

The child device list 113a enumerates, amongst the devices subordinate to the router <NUM>, devices with the contract ending dates coming after the contract ending date of the router <NUM>. The child device list 113a includes the following items: ENDIGN DATE OF CHILD; and DEVICE NAME OF CHILD. Under "ENDIGN DATE OF CHILD", each field contains the ending date of the rental contract of the corresponding child device. Under "DEVICE NAME OF CHILD", each field contains the name of the corresponding child device.

For example, amongst the devices subordinate to the router <NUM>, the storage devices <NUM> and <NUM>, the router <NUM>, and the server <NUM> are those with contract ending dates coming after the contract ending date of the router <NUM>. Therefore, the contract ending dates of the storage device <NUM> (device name: ST1); the router <NUM> (device name: R2), the storage device <NUM> (device name: ST2), and the server <NUM> (device name: SV3) are registered in the child device list 113a.

The influence judgment information table <NUM> also includes a registered record with the device name "ST1"; the serial number "B"; the parent device name "R1"; the ending date "<NUM>/<NUM>/<NUM>"; the parent device information "P2"; and the child device information "-". This record indicates that the rental contract of the storage device <NUM> expires on March <NUM>st, <NUM>, and the parent device of the storage device <NUM> is the router <NUM>, and also indicates that a parent device list 113b is associated with this record by the pointer P2. No child device information is assigned because there are no devices below (i.e., subordinate to) the storage device <NUM>.

The parent device list 113b enumerates, amongst the devices superordinate to the storage device <NUM>, devices with the contract ending dates coming before the contract ending date of the storage device <NUM>. The parent device list 113b includes the following items: ENDIGN DATE OF PARENT; and DEVICE NAME OF PARENT. Under "ENDING DATE OF PARENT", each field contains the ending date of the rental contract of the corresponding parent device. Under "PARENT DEVICE NAME", each field contains the name of the corresponding parent device.

For example, the contract ending date of the router <NUM> superordinate to the storage device <NUM> comes before that of the storage device <NUM>. Therefore, the ending date of the rental contract of the router <NUM> (device name: R1) is registered in the parent device list 113b.

The influence judgment information table <NUM> also includes records including the same items as those of the router <NUM> and the storage device <NUM>, individually associated with the routers <NUM> and <NUM>, the storage device <NUM>, and the servers <NUM>, <NUM>, and <NUM>.

For example, a record corresponding to the router <NUM> (device name: R2) is associated with a parent device list 113c by a pointer P3 under "PARENT DEVICE INFORMATION" and with a child device list 113d by a pointer P4 under "CHILD DEVICE INFORMATION".

Similarly, a record corresponding to the router <NUM> (device name: R3) is associated with a child device list 113e by a pointer P5 under "CHILD DEVICE INFORMATION". A record corresponding to the storage device <NUM> (device name: ST2) is associated with a parent device list 113f by a pointer P6 under "PARENT DEVICE INFORMATION". Further, a record corresponding to the server <NUM> (device name: SV3) is associated with a parent device list <NUM> by a pointer P7 under "PARENT DEVICE INFORMATION".

Note that data of the parent device lists 113c, 113f, and <NUM> are structured in the same manner as the parent device list 113b. In addition, data of the child device lists 113d and 113e are structured in the same manner as the child device list 113a.

The influence extent outputting unit <NUM> is able to output, based on the influence judgment information table <NUM>, an influence extent which indicates the effect of each device on its subordinate devices and the effect of its superordinate devices on the device.

For example, the record of the router <NUM> (device name: R1) in the influence judgment information table <NUM> is associated with the child device list 113a by the pointer P1. Therefore, the influence extent outputting unit <NUM> detects, based on the child device list 113a, that the storage device <NUM> (device name: ST1), the router <NUM> (device name: R2), the storage device <NUM> (device name: ST2), and the server <NUM> (device name: SV3) are going to be affected when the rental contract of the router <NUM> expires on January <NUM>st, <NUM>.

The influence extent outputting unit <NUM> also detects, based on the child device list 113a, that the effect on the storage devices <NUM> and <NUM>, the router <NUM>, and the server <NUM> may be circumvented by changing the contract ending date of the router <NUM> to December <NUM>st, <NUM>, or later.

The record of the router <NUM> (device name: R2) in the influence judgment information table <NUM> is associated with the parent device list 113c by the pointer P3 and the child device list 113d by the pointer P4. Therefore, the influence extent outputting unit <NUM> detects, based on the child device list 113d, the storage device <NUM> (device name: ST2) and the server <NUM> (device name: SV3) are going to be affected when the rental contract of the router <NUM> expires on March <NUM>st, <NUM>.

The influence extent outputting unit <NUM> also detects, based on the child device list 113d, that the effect on the storage device <NUM> and the server <NUM> may be circumvented by changing the contract ending date of the router <NUM> to December <NUM>st, <NUM>, or later.

Further, the influence extent outputting unit <NUM> detects, based on the parent device list 113c, that the router <NUM> is going to be affected when the rental contract of the router <NUM> (device name: R1) expires on January <NUM>st, <NUM>.

The influence extent outputting unit <NUM> displays, based on the influence judgment information table <NUM>, an influence extent display screen on the display <NUM> or the like to present the detected influence extent.

<FIG> illustrates an example of the influence extent display screen.

An influence extent display screen <NUM> is presented on the display <NUM>. The influence extent outputting unit <NUM> generates screen information representing the influence extent display screen <NUM> based on the influence judgment information table <NUM>, and outputs the generated screen information to the display <NUM>, to thereby display the influence extent display screen <NUM> on the display <NUM>. Note however that the influence extent outputting unit <NUM> may transmit the screen information to the terminal device <NUM> and cause the terminal device <NUM> to present the influence extent display screen <NUM> on its display.

The influence extent display screen <NUM> includes an image representing the connection relationships of the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM>. On the image, icons individually representing the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM> are connected by lines reflecting actual connections. In this manner, the image represents connection relationships of the individual devices.

The business operator-side administrator operating the contract management server <NUM> or the user-side administrator operating the terminal device <NUM> selects an icon on the image using, for example, the input device <NUM> to thereby enter the selection of a device corresponding to the icon into the contract management server <NUM>. The influence extent outputting unit <NUM> receives the entry and causes, based on the identification information of the selected device and the influence judgment information table <NUM>, the influence extent display screen <NUM> to highlight subordinate devices affected by the selected device and superordinate devices affecting the selected device.

The influence extent display screen <NUM> of <FIG> illustrates a case where the router <NUM> has been selected. According to the influence judgment information table <NUM>, the child device list 113d is associated with the router <NUM>. The child device list 113d includes records of the storage device <NUM> (device name: ST2) and the server <NUM> (device name: SV3). Therefore, the influence extent outputting unit <NUM> highlights the icons of the storage device <NUM> and the server <NUM> on the influence extent display screen <NUM>.

The influence extent outputting unit <NUM> displays, based on the child device list 113d, a message <NUM> indicating the contract ending date of the storage device <NUM> and a message <NUM> indicating the contract ending date of the server <NUM> on the influence extent display screen <NUM>.

The parent device list 113c is also associated with the router <NUM> according to the influence judgment information table <NUM>. The parent device list 113c includes a record of the router <NUM> (device name: R1). Therefore, the influence extent outputting unit <NUM> highlights the icon of the router <NUM> on the influence extent display screen <NUM>.

The influence extent outputting unit <NUM> displays, based on the parent device list 113c, a message <NUM> indicating the contract ending date of the router <NUM> on the influence extent display screen <NUM>.

Further, the influence extent outputting unit <NUM> displays, on the influence extent display screen <NUM>, a message <NUM> indicating the contract ending date of the selected router <NUM> and details of the influences for its superordinate and subordinate devices.

For example, the message <NUM> associated with the router <NUM> (device name: R2) includes a statement of the effect on the router <NUM> due to contract expiration of its superordinate device, reading "R2 becomes unavailable after the contract ending date of R1. " The message <NUM> also includes a statement of the effect on subordinate devices due to contract expiration of the router <NUM>, reading "ST2 and SV3 become unavailable after the contract ending date of R2.

The message <NUM> may also include a reminder to prompt the user to set the contract ending dates of all the router <NUM>, the storage device <NUM>, and the server <NUM> to the same date. For example, the influence extent outputting unit <NUM> may output the message <NUM> including a statement urging a review of the contract ending dates, reading "ST2 and SV3 become unavailable after the contract ending date of R1. Please review their contract ending dates. " Alternatively, the message <NUM> output by the influence extent outputting unit <NUM> may include a suggestion on extending the end time in a contract renewal, reading "It is recommended to extend the contract of the router <NUM> to December <NUM>st, <NUM>, or later.

Next described are processing procedures conducted by the contract management server <NUM> and the device management server <NUM>. The processing procedure of the device management server <NUM> is described first.

<FIG> is a flowchart illustrating an example of processes run by the device management server.

The device management server <NUM> regularly performs the following process.

(Step S1) The configuration information collecting unit <NUM> collects the configuration information of the routers <NUM>, <NUM>, and <NUM>, the storage devices <NUM> and <NUM>, and the servers <NUM>, <NUM>, and <NUM> and then stores it in the storing unit <NUM>. The configuration information collecting unit <NUM> generates, based on the configuration information, the network path information <NUM> and then stores it in the storing unit <NUM>. Upon update of the configuration information, the configuration information collecting unit <NUM> also updates the network path information <NUM>.

(Step S2) The notifying unit <NUM> transmits the configuration information and the network path information <NUM> generated by the configuration information collecting unit <NUM> to the contract management server <NUM>.

The processing procedure of the contract management server <NUM> is described next.

<FIG> is a flowchart illustrating an example of processes run by the contract management server.

(Step S10) The influence judgment information managing unit <NUM> receives the configuration information and the network path information <NUM> from the device management server <NUM> and stores them in the storing unit <NUM>.

(Step S11) The influence judgment information managing unit <NUM> performs an influence judgment information management process. Specifically, the influence judgment information managing unit <NUM> performs a process of mapping the contract ending dates included in the contract information <NUM> to the information of devices included in the received network path information <NUM>, using the serial numbers of the devices as keys. The influence judgment information managing unit <NUM> adds records indicating the mapping results to the influence judgment information table <NUM>. At step S11, the parent device information and the child device information have yet to be registered in the records.

(Step S12) The influence judgment controlling unit <NUM> performs an influence judgment control process. Specifically, the influence judgment controlling unit <NUM> judges the effect on other devices due to contract expiration of each device based on the parent and child relationship of the device included in the influence judgment information table <NUM> and the contract ending date of the device. The influence judgment controlling unit <NUM> generates a parent device list and a child device list for each device based on the results of the influence judgment, and adds, to a record of the device in the influence judgment information table <NUM>, pointers that indicate association of the device with the generated parent device list and child device list. The procedure of the influence judgment control is described in detail below.

(Step S13) The influence extent outputting unit <NUM> performs an influence extent output process. Specifically, the influence extent outputting unit <NUM> outputs, based on the influence judgment information table <NUM>, information about the effect on other devices due to contract expiration of a particular device. For example, with respect to a device selected by the business operator-side administrator operating the contract management server <NUM>, the influence extent outputting unit <NUM> displays the influence extent display screen <NUM> on the display <NUM>. Alternatively, the influence extent outputting unit <NUM> may transmit, with respect to a device selected by the user-side administrator operating the terminal device <NUM>, screen information of the influence extent display screen <NUM> to the terminal device <NUM> and cause the terminal device <NUM> to present the influence extent display screen <NUM> on its display. Subsequently, the process of the contract management server <NUM> ends.

Note that step S13 may be executed in asynchronous with steps S10 to S12. It may be considered that, for example, the influence extent outputting unit <NUM> regularly detects, based on the influence judgment information table <NUM>, a device with the contract end time coming after a predetermined time from the present time, then performs the influence extent outputting process of step S13, and presents the effect of contract expiration of the device to the user. Here, "a predetermined time from the present time" is, for example, one week or one month from the present time.

<FIG> is a flowchart illustrating an example of the influence judgment control process.

The influence judgment control process corresponds to step S12.

(Step S20) The influence judgment controlling unit <NUM> repeats steps S21 to S24 for all the devices from the first tier to the lowest tier. In this example, the first-tier device is the router <NUM>, and the first processing target device is, therefore, the router <NUM>. A processing target device in the following procedure is referred to as the "device in question".

(Step S21) The influence judgment controlling unit <NUM> determines whether there is one or more contract ending dates coming before that of the device in question amongst the contract ending dates of all devices superordinate to the device in question. If the determination is affirmative, the influence judgment controlling unit <NUM> moves to step S22. If the determination is negative, the influence judgment controlling unit <NUM> moves to step S23.

(Step S22) The influence judgment controlling unit <NUM> generates a parent device list that includes device names and contract ending dates of devices with the contract ending dates coming before that of the device in question amongst the contract ending dates of all devices superordinate to the device in question. The influence judgment controlling unit <NUM> registers a pointer pointing to the generated parent device list in a record corresponding to the device in question under "PARENT DEVICE INFORMATION" of the influence judgment information table <NUM>.

(Step S23) The influence judgment controlling unit <NUM> performs child device information addition control. Specifically, the influence judgment controlling unit <NUM> generates a child device list of the device in question by comparing the contract ending date of the device in question with those of devices subordinate to the device in question. The procedure of the child device information addition control is described in detail below.

(Step S24) The influence judgment controlling unit <NUM> performs a child device determination process. Specifically, the influence judgment controlling unit <NUM> determines whether there is a child device of the device in question and decides a next device in question according to the determination. The child device determination process is described in detail below.

(Step S25) Upon the completion of steps S21 to S24 for all the devices from the first tier to the lowest tier, the influence judgment controlling unit <NUM> ends the repetition and finishes the influence judgment control process.

<FIG> is a flowchart illustrating an example of a child device information addition control process.

The child device information addition control process corresponds to step S23.

(Step S30) The influence judgment controlling unit <NUM> determines whether there is one or more contract ending dates coming after that of the device in question amongst the contract ending dates of all devices subordinate to the device in question. If the determination is affirmative, the influence judgment controlling unit <NUM> moves to step S31. If the determination is negative, the influence judgment controlling unit <NUM> moves to step S32.

(Step S31) The influence judgment controlling unit <NUM> generates a child device list that includes device names and contract ending dates of devices with the contract ending dates coming after that of the device in question amongst the contract ending dates of all devices subordinate to the device in question. The influence judgment controlling unit <NUM> registers a pointer pointing to the generated child device list in a record corresponding to the device in question under "CHILD DEVICE INFORMATION" of the influence judgment information table <NUM>.

(Step S32) The influence judgment controlling unit <NUM> further determines whether the device in question has a further parent device. If the determination is affirmative, the influence judgment controlling unit <NUM> moves to step S33. If the determination is negative, the influence judgment controlling unit <NUM> ends the child device information addition control process. Here, the "parent device" is a parent device of the device in question, whose first-tier device is not the router <NUM>.

(Step S33) The influence judgment controlling unit <NUM> performs the child device information addition control process using the parent device of the device currently in question as a device in question.

Note that in the case where a first-tier device of a set of devices exists while a first-tier device of a different set of devices also exists, it may be considered appropriate that the influence judgment controlling unit <NUM> performs the influence judgment control process on the first-tier device of each of the sets. In this case, the influence judgment controlling unit <NUM> may skip steps S32 and S33.

<FIG> is a flowchart illustrating an example of a child device determination process.

The child device determination process corresponds to step S24.

(Step S40) The influence judgment controlling unit <NUM> determines, based on the influence judgment information table <NUM>, whether the device in question has a child device. If the determination is affirmative, the influence judgment controlling unit <NUM> moves to step S41. If the determination is negative, the influence judgment controlling unit <NUM> moves to step S42.

(Step S41) The influence judgment controlling unit <NUM> decides a relevant child device as the next device in question. The influence judgment controlling unit <NUM> then ends the child device determination process.

(Step S42) The influence judgment controlling unit <NUM> decides, as the next device in question, an outstanding one of child devices of a superordinate device of the device currently in question, that is, a device having yet undergone the influence judgment control process. Then, the influence judgment controlling unit <NUM> ends the child device determination process. No relevant device being found in step S42 means that the influence judgment control process has been performed on all devices targeted for the influence judgment control process. In this case, the influence judgment controlling unit <NUM> decides no next device in question and ends the child device determination process, and then finishes the influence judgment control process of <FIG>.

Thus, the influence judgment controlling unit <NUM> makes influence judgments by selecting a device in question preferentially in the depth direction from the first tier toward the lowest tier. Then, when reaching a terminal device at the lowest tier, the influence judgment controlling unit <NUM> traces back to select a next device in question and makes influence judgments. Herewith, the influence judgment controlling unit <NUM> sequentially generates a parent device list and a child device list with respect to a record of each device listed in the influence judgment information table <NUM>. Based on the influence judgment information table <NUM>, the parent device list, and the child device list, the influence extent outputting unit <NUM> presents, to the user, the extent of the influences of the rental contract expiration with a device selected by the user as a starting point.

For example, in response to selection of the router <NUM> made by the user, the influence extent outputting unit <NUM> displays the influence extent display screen <NUM> on the display <NUM> or on a display of the terminal device <NUM>. That is, the influence extent outputting unit <NUM> informs the user of the storage device <NUM> and the server <NUM> being affected by contract expiration of the router <NUM>.

Herewith, the contract management server <NUM> is able to prompt the user to review, e.g., extend, the expiration of the contract term of the router <NUM> and thus supports the user by preventing the storage device <NUM> and the server <NUM> from being affected by expiration of the contract of the router <NUM>. The contract management server <NUM> also supports the user to be able to continue operations of the user's system and services running on the system.

In addition, in response to selection of the router <NUM> made by the user, the influence extent outputting unit <NUM> indicates the user that the router <NUM> is going to be affected by expiration of the contract of the router <NUM>.

Herewith, the contract management server <NUM> is able to prompt the user to review, e.g., extend, the expiration of the contract term of the router <NUM> and thus supports the user to prevent the router <NUM> from being affected by expiration of the contract of the router <NUM>. In addition, the contract management server <NUM> is able to collectively present, to the user, the extent of the influences within the system of the user, where devices bear parent and child relationships with the router <NUM> specified by the user as a starting point. Therefore, the contract management server <NUM> is able to support the user to readily comprehend the extent of the influences associated with the device selected by the user. Especially, the contract management server <NUM> is able to help the user to collectively review contract periods of multiple devices.

As has been described above, the contract management server <NUM> performs, for example, the following processes.

The storing unit <NUM> stores contract information indicating, with respect to each of multiple devices rented to a user and constituting a system, when the rental contract of the device expires; and communication channel information indicating inter-device communication channels among the multiple devices. Based on the contract information and the communication channel information, the influence judgment controlling unit <NUM> identifies, amongst the multiple devices, a second device which is going to be affected by expiration of the contract of a first device at a first time point. The influence extent outputting unit <NUM> outputs information about the effect on the second device.

Herewith, it is possible to prevent devices with the contracts continuing in effect from being affected. The router <NUM>, the storage devices <NUM> and <NUM>, the servers <NUM>, <NUM>, and <NUM>, and the routers <NUM> and <NUM> are an example of the multiple devices rented to the user. The network path information <NUM> is an example of the communication channel information.

Note that the processes of the influence judgment controlling unit <NUM> and the influence extent outputting unit <NUM> may be rephrased as follows. Based on the contract information and the communication channel information, the influence judgment controlling unit <NUM> determines whether, amongst the multiple devices, there is a second device which is going to be affected by expiration of the contract of a first device at a first time point. Based on the determination results of the influence judgment controlling unit <NUM>, the influence extent outputting unit <NUM> outputs information about the effect on the second device when the second device exists. On the other hand, when there is no such a second device, the influence extent outputting unit <NUM> does not output this information.

In determining the second device, the influence judgment controlling unit <NUM> identifies, amongst the multiple devices, each device with the contract expiring after the first time point as the second device.

The second device with the contract remaining valid after expiration of the contract of the first device is affected because of not being able to communicate with the first device once the contract of the first device expires. Therefore, the influence judgment controlling unit <NUM> identifies, amongst the multiple devices, the second device with the contract expiring after the first time point, to thereby appropriately identify the second device.

The influence extent outputting unit <NUM> may also output the time when the second device becomes affected by expiration of the contract of the first device.

For example, in the influence extent display screen <NUM> of <FIG>, the router <NUM> (device name: R2) is an example of the first device while the storage device <NUM> (device name: ST2) and the server <NUM> (device name: SV3) are individually examples of the second device. In this case, the influence extent outputting unit <NUM> outputs the contract ending dates of the router <NUM>, the storage device <NUM>, and the server <NUM>, as depicted by the messages <NUM>, <NUM>, and <NUM>, respectively, to thereby output the times when the storage device <NUM> and the server <NUM> become affected.

For example, the messages <NUM> and <NUM> help the user to understand that the storage device <NUM> becomes affected from the next day of the contract ending date of the router <NUM> (March <NUM>st, <NUM>) until the contract ending date of the storage device <NUM> (December <NUM>st, <NUM>). Further, the messages <NUM> and <NUM> help the user to understand that the server <NUM> becomes affected from the next day of the contract ending date of the router <NUM> (March <NUM>st, <NUM>) until the contract ending date of the server <NUM> (July <NUM>st, <NUM>).

Herewith, the contract management server <NUM> is able to support the user to have a proper understanding of how much extension or shortening needs to be made to the contract period of a device affecting a different device or affected by a different device.

Further, the influence judgment controlling unit <NUM> detects that the first device is affected when the contract of a third device amongst the multiple devices expires at a second time point. The influence extent outputting unit <NUM> outputs, not only information about the effect on the second device, but also information about the effect on the first device.

Thus, the contract management server <NUM> collectively presents, to the user, not only the effect of the first device on a different device, but also the effect of a different device on the first device, to thereby support the user to have a proper understanding of a device of which contract needs to be revised. Note that the influence extent outputting unit <NUM> may also output the period during which the first device is affected by expiration of the contract of the third device.

Note that the processes of the influence judgment controlling unit <NUM> and the influence extent outputting unit <NUM> may be rephrased as follows. Based on the contract information and the communication channel information, the influence judgment controlling unit <NUM> determines whether, amongst the multiple devices, there is a third device which is going to affect the first device due to the rental contract of the third device expiring at the second time point. Based on the determination results of the influence judgment controlling unit <NUM>, the influence extent outputting unit <NUM> outputs information about the effect on the first device when the third device exists. On the other hand, when there is no such a third device, the influence extent outputting unit <NUM> does not output this information.

In detecting the effect on the first device, the influence judgment controlling unit <NUM> identifies, amongst the multiple devices, each device with the contract expiring before the first time point as the third device.

In the case where the contract of the first device is valid after expiration of the contract of the third device, the first device is affected because of not being able to communicate with the third device once the contract of the third device expires. Therefore, the influence judgment controlling unit <NUM> identifies, amongst the multiple devices, the third device with the contract expiring before the first time point, to thereby appropriately identify the third device.

In response to selection of the first device, the influence judgment controlling unit <NUM> may identify the second device out of devices subordinate to the first device amongst the multiple devices, and also identify the third device out of devices superordinate to the first device amongst the multiple devices.

Herewith, using a single screen as illustrated, for example, by the influence extent display screen <NUM>, the contract management server <NUM> is able to readily present, to the user, the effect associated with each device having a parent and child relationship with the first device. Therefore, it is possible to support the user to have a proper understanding of a device of which contract needs to be revised amongst the first device and the devices individually having a parent and child relationship with the first device.

The influence extent outputting unit <NUM> may cause a display unit to present an image with the multiple devices and inter-device communication channels among them. Further, the influence extent outputting unit <NUM> may cause the display unit to present a message indicating that the second device is affected by expiration of the contract of the first device and the first device is affected by expiration of the contract of the third device.

Herewith, the contract management server <NUM> is able to support the user to have a proper understanding of the effect on each device having a parent and child relationship with the first device. The message <NUM> is an example of messages displayed by the display unit. The display <NUM> and the display of the terminal device <NUM> are examples of the display unit.

In addition, the influence extent outputting unit <NUM> may receive selection of a first device from the user. In this case, the influence extent outputting unit <NUM> acquires the judgment results of a second device and a third device corresponding to the first device selected by the user, obtained by the influence judgment controlling unit <NUM>, and then outputs information about the effect associated with the second device and the third device.

This allows the contract management server <NUM> to support the user to check the second device and the third device of the device selected by the user.

Alternatively, the influence extent outputting unit <NUM> may select a device of which contract is going to expire after a predetermined time from the present time as the first device. In this case, the influence extent outputting unit <NUM> acquires the judgment results of a second device and a third device corresponding to the selected first device, obtained by the influence judgment controlling unit <NUM>, and then outputs information about the effect associated with the second device and the third device.

In this manner, the contract management server <NUM> is able to properly remind the user of the effect associated with upcoming expiration of the contract of the device.

Note that the information processing of the first embodiment is implemented by causing the processing unit <NUM> to execute a program. In addition, the information processing of the second embodiment is implemented by causing the CPU <NUM> to execute a program. Such a program may be recorded in the computer-readable storage medium <NUM>.

For example, the storage media <NUM> on which the program is recorded are distributed in order to deliver the program to individual recipients. In addition, the program may be stored in a different computer and then distributed via a network. A computer stores, or installs, the program recorded in the storage medium <NUM> or received from the different computer in a storage device, such as the RAM <NUM> or the HDD <NUM>, and reads the program from the storage device to execute it.

Claim 1:
An operation information management program that causes a computer to execute a process comprising:
determining, based on contract information (11a) indicating, with respect to each of a plurality of devices (<NUM> to <NUM>) rented to a user and included in a system (<NUM>), an expiration time point at which a rental contract of the each of the plurality of devices expires and communication channel information indicating inter-device communication channels between the plurality of devices, a second device (<NUM>, <NUM>) to experience effect of expiration of the rental contract of a first device (<NUM>) at a first time point amongst the plurality of devices;
detecting that the first device (<NUM>) experiences effect of expiration of the rental contract of a third device (<NUM>) at a second time point, the third device being among the plurality of devices (<NUM> to <NUM>);
identifying, in response to selection of the first device (<NUM>), the second device (<NUM>, <NUM>) out of devices subordinate to the first device amongst the plurality of devices (<NUM> to <NUM>) and the third device (<NUM>) out of devices superordinate to the first device amongst the plurality of devices; and
outputting information indicating the effect on the first device (<NUM>) together with information indicating the effect on the second device (<NUM>, <NUM>).