Terminal device, in-house management device, license management system, license management method, and program

A system that manages software usage by transmitting internal and global usage information allows appropriate software management offline, ensuring compliance and privacy, even when the device is disconnected from the global network.

JP7602085B1Active Publication Date: 2024-12-17NTT TECHNOCROSS CORP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2024055308
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-03-29
Publication Date
2024-12-17
Estimated Expiration
2044-03-29

AI Technical Summary

Technical Problem

Conventional software management systems fail to monitor software usage appropriately when the terminal device is not connected to a global communication network.

Method used

Implementing a system where terminal devices transmit first usage information to an internal management device via an internal communication network and second usage information to a global management device when connected to the global network, allowing management of software usage even when the device is offline.

Benefits of technology

Enables effective management of software usage both in real-time and over time, ensuring compliance with usage limits while preventing personal information leakage, even when the terminal device is not connected to the global network.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007602085000001_ABST
    Figure 0007602085000001_ABST
Patent Text Reader

Abstract

To manage whether or not use of software is appropriate when the software is started, even if a terminal device in which the software is installed is not connected to a global communication network. [Solution] When a terminal device launches software, first usage information corresponding to an identifier that uniquely identifies the terminal device is transmitted to an internal management device connected to an internal communication network to which the terminal device is connected.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a technique for managing software licenses. [Background technology]

[0002] There is known a method for managing whether software is being used in accordance with a contract (see, for example, Patent Document 1, etc.). For example, a method is known in which a terminal device transmits usage information including a software identifier to a management device via a global communication network (for example, the Internet), and the management device determines whether the use of the software is appropriate based on the usage information. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] JP 2010-287081 A Summary of the Invention [Problem to be solved by the invention]

[0004] However, conventionally, if the terminal device on which the software is installed is not connected to a global communications network when the software is started, it has not been possible to manage whether the use of the software is appropriate.

[0005] In view of these circumstances, the present invention aims to provide a technology that can manage whether or not the use of software is appropriate when the software is launched, even if the terminal device on which the software is installed is not connected to a global communications network. [Means for solving the problem]

[0006] When the terminal device starts the software, the terminal device transmits first usage information corresponding to an identifier that uniquely identifies the terminal device to an internal management device that is connected to an internal communication network to which the terminal device is connected. Effect of the Invention

[0007] This makes it possible to manage whether or not use of the software is appropriate even if the terminal device on which the software is installed is not connected to a global communications network when the software is started. [Brief description of the drawings]

[0008] [Figure 1] FIG. 1 is a block diagram illustrating a functional configuration of a license management system according to an embodiment. [Diagram 2] FIG. 2 is a block diagram illustrating a functional configuration of the terminal device according to the embodiment. [Diagram 3] FIG. 3 is a block diagram illustrating a functional configuration of the internal management device according to the embodiment. [Figure 4] FIG. 4 is a block diagram illustrating a functional configuration of a global management device according to the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. [First embodiment] First, the first embodiment will be described. <Configuration> As illustrated in FIG. 1, the license management system 1 of this embodiment has N terminal devices 11-1, ..., 11-N, an in-organization management device 12, and a global management device 13. Here, N is an integer of 1 or more, for example, N is an integer of 2 or more. N may be fixed or variable. Each of the terminal devices 11-1, ..., 11-N is expressed as a terminal device 11-n. Here, n=1, ..., N. Also, the terminal devices 11-1, ..., 11-N are collectively expressed as a terminal device 11. The terminal devices 11-1, ..., 11-N and the in-organization management device 12 are communicatively connected through an in-organization communication network 101. The in-organization communication network 101 is a communication network closed to an organization such as a specific company, group, or community. Only terminal devices used in such a specific organization can be connected to the in-organization communication network 101. Examples of the in-organization communication network 101 include an intranet and a local area network (LAN). The terminal device 11-n and the global management device 13 can be communicatively connected through the global communication network 102. The terminal device 11-n may or may not always be connected to the global communication network 102. For example, the terminal device 11-n is not usually connected to the global communication network 102, but may be connected to the global communication network 102 periodically or irregularly. If the terminal device 11-n is connected to the global communication network 102, the terminal device 11-n and the global management device 13 can communicate with each other. If the terminal device 11-n is not connected to the global communication network 102, the terminal device 11-n and the global management device 13 cannot communicate with each other. An example of the global communication network 102 is the Internet.

[0010] 2, the terminal device 11-n of this embodiment has a storage unit 111-n, a processing unit 112-n, an internal communication unit 113-n, a global communication unit 114-n, and a memory 115-n. Information input to the terminal device 11-n and information output from each unit of the terminal device 11-n are stored in the memory 115-n one by one, and are read out and used as necessary.

[0011] 3, the internal management device 12 of this embodiment has a storage unit 121, a processing unit 122, an internal communication unit 123, an output unit 124, and a memory 126. Information input to the internal management device 12 and information output from each unit of the internal management device 12 are stored in the memory 126 one by one, and are read out and used as necessary.

[0012] 4, the global management device 13 of this embodiment has a storage unit 131, a processing unit 132, a global communication unit 135, an output unit 134, and a memory 136. Information input to the global management device 13 and information output from each unit of the global management device 13 are stored in the memory 136 one by one, and are read out and used as necessary.

[0013] <Premise> In this embodiment, a contract (license contract) is made between a provider A (corporation or individual) of the software α and a recipient B (corporation or individual) who receives the software α, in which the provider A grants the recipient B the use of the software α. For example, the provider A is the administrator of the global management device 13, and the recipient B is the administrator of the intra-organizational communication network 101 and the intra-organizational management device 12. In the contract of this embodiment, an upper limit γ of the number of terminal devices 11 that can use the software α is determined. For example, in this contract, an upper limit γ of the number of terminal devices 11 that can install the software α is determined. The software α operates even if the terminal device 11 is not always connected to the global communication network 102, for example. The software α is installed in at least one of the terminal devices 11-n. That is, the software α is set in the processing unit 112-n of the terminal device 11-n (FIG. 2) in which the software α is installed, and the processing unit 112-n can start the software α.

[0014] An identifier ID-n that uniquely identifies the terminal device 11-n is set in each terminal device 11-n (n∈{1,...,N}). Examples of the identifier ID-n include a universally unique identifier (UUID), a globally unique identifier (GUID) (e.g., Machine GUID), an international mobile equipment identity (IMEI number), a unique device identifier (UDID), an Android ID (SSAID), and the like. In addition, an identifier ID-n that uniquely identifies each terminal device 11-n within a specific organization may be set. The identifier ID-n is preferably information that uniquely identifies each terminal device 11-n but does not specify a user of the terminal device 11-n (e.g., a user who has logged in to the terminal device 11-n) (e.g., information that does not include information of the user). The identifier ID-n is stored in the storage unit 111-n of the terminal device 11-n (FIG. 2).

[0015] <Processing of terminal device 11-n (FIG. 2)> When the software α is installed in the terminal device 11-n (FIG. 2), the processing unit 112-n of the terminal device 11-n extracts the identifier ID-n from the storage unit 111-n when starting the software α, and generates and outputs the usage information U1(ID-n) (first usage information) corresponding to the identifier ID-n. The usage information U1(ID-n) may be any information that corresponds to the identifier ID-n. For example, the usage information U1(ID-n) may be a file that includes the identifier ID-n in its file name, a file that includes a function value (e.g., a hash function value) of the identifier ID-n in its file name, text information that includes the identifier ID-n, or text that includes a function value (e.g., a hash function value) of the identifier ID-n. The usage information U1(ID-n) may include additional information A(ID-n) other than the identifier ID-n. Examples of the additional information A(ID-n) may include information on the date and time when the software α was installed, information on the date and time when the software α was started, or information on the number of times the software α was started. However, it is preferable that the usage information U1(ID-n) is information that does not identify the user of the terminal device 11-n. The usage information U1(ID-n) is sent to the in-organization communication unit 113-n and the global communication unit 114-n (step S112).

[0016] The intra-organization communication unit 113-n transmits the usage information U1(ID-n) to the intra-organization management device 12 through the intra-organization communication network 101. That is, the intra-organization communication unit 113-n transmits the usage information U1(ID-n) to the intra-organization management device 12 connected to the intra-organization communication network 101 to which the terminal device 11-n is connected. When the intra-organization communication unit 113-n cannot connect to the intra-organization communication network 101, the usage information U1(ID-n) may be stored in the memory 115-n. In this case, when the intra-organization communication unit 113-n can connect to the intra-organization communication network 101, the intra-organization communication unit 113-n may transmit the usage information U1(ID-n) to the intra-organization management device 12 via the intra-organization communication network 101. Alternatively, the next time the processing unit 112-n starts the software α, the processing unit 112-n may send the usage information U1(ID-n) stored in the memory 115-n as is to the intra-organization communication unit 113-n, and the intra-organization communication unit 113-n may transmit the usage information U1(ID-n) to the intra-organization management device 12 via the intra-organization communication network 101. Alternatively, the processing unit 112-n may send new usage information U1(ID-n) obtained by adding the latest additional information A(ID-n) to the usage information U1(ID-n) stored in the memory 115-n to the intra-organization communication unit 113-n, and the intra-organization communication unit 113-n may transmit the usage information U1(ID-n) to the intra-organization management device 12 via the intra-organization communication network 101 (step S113).

[0017] The global communication unit 114-n judges whether the terminal device 11-n can connect to the global communication network 102. In other words, the global communication unit 114-n judges whether the terminal device 11-n is permitted to connect to the global communication network 102. Whether the terminal device 11-n can connect to the global communication network 102 may be set in advance or may be set by input. When the terminal device 11-n can connect to the global communication network 102, the global communication unit 114-n transmits the usage information U1(ID-n) as the usage information U2(ID-n) (second usage information) to the global management device 13 through the global communication network 102. That is, when the processing unit 112-n starts the software α and the terminal device 11-n can connect to the global communication network 102, the global communication unit 114-n transmits the usage information U2(ID-n) (second usage information) to the global management device 13 through the global communication network 102. In addition, the usage information U2(ID-n) in this embodiment is the same as the usage information U1(ID-n). If the terminal device 11-n cannot connect to the global communication network 102, the usage information U2(ID-n) is not transmitted to the global management device 13.

[0018] <Processing of the in-house management device 12 (FIG. 3)> The intra-organization communication unit 123 of the intra-organization management device 12 (FIG. 3) receives the transmitted usage information U1(ID-n). That is, the intra-organization communication unit 123 is connected to the intra-organization communication network 101, and when the terminal device 11-n starts the software α, it receives the usage information U1(ID-n) (first usage information) corresponding to the identifier ID-n that uniquely identifies the terminal device 11-n from the terminal device 11-n connected to the intra-organization communication network 101. The usage information U1(ID-n) is stored in the storage unit 121. As a result, the storage unit 121 accumulates the usage information U1(ID-n) transmitted from the terminal device 11-n (n∈{1, ..., N}) that started the software α (step S123).

[0019] The processing unit 122 of the in-house management device 12 extracts the usage information U1(ID-n) (n ∈ {1, ..., N}) stored in the storage unit 121 during a period T1(t) on a regular or irregular basis, and obtains and outputs usage information US1(t) representing the usage of the software α based on the extracted usage information U1(ID-n). t is an integer index representing the period T1(t). For example, t is an integer equal to or greater than 1. The period T1(t) may be a regular period or an irregular period. Examples of regular periods include one hour, one day, and one week. Examples of irregular periods include, for example, an arbitrarily designated period, a period during which a specific process was performed, a period during which a specific process was not performed, and a period from the generation of the previous usage information until a specific input is performed. In this embodiment, the newer the period T1(t), the larger the value of t, and the period following the period T1(t-1) is expressed as T1(t). The usage status information US1(t) may be any information based on the usage information U1(ID-n) and indicating the usage status of the software α. For example, the usage status information US1(t) indicates at least the number x(t) of terminal devices 11-n identified by the identifier ID-n corresponding to the usage information U1(ID-n) (first usage information). The number x(t) indicates the number of terminal devices 11 that started the software α during the period T1(t). The number x(t) is obtained by counting the types of identifiers ID-n corresponding to the usage information U1(ID-n) stored in the storage unit 121 during the period T1(t). For example, when the identifiers corresponding to the usage information stored in the storage unit 121 during the period T1(t) are ID-1, ID-1, ID-2, and ID-3, the number x(t) is 3. When the usage information U1(ID-n) includes additional information A(ID-n), the usage information US1(t) may include information based on the additional information A(ID-n) (n∈{1, ..., N}). For example, the usage information US1(t) may include statistical information on the additional information A(ID-n). For example, the usage information US1(t) may include statistical information on the date and time when the software α was started. The usage information US1(t) is sent to the output unit 124 (step S122).

[0020] The output unit 124 outputs the usage status information US1(t). For example, the output unit 124 outputs the usage status information US1(t) to a display unit (not shown) such as a display, and the display unit visually displays the usage status information US1(t). For example, the display unit may display the number x(t) or may display statistical information of the additional information A(ID-n) (step S124).

[0021] <Processing of the global management device 13 (FIG. 4)> The global communication unit 135 of the global management device 13 (FIG. 4) receives the transmitted usage information U2(ID-n). That is, when the terminal device 11-n that has started the software α is connected to the global communication network 102, the global communication unit 135 receives the usage information U2(ID-n) (second usage information) corresponding to the identifier ID-n that uniquely identifies the terminal device 11-n from the terminal device 11-n connected to the global communication network 102. The usage information U2(ID-n) is stored in the storage unit 131. As a result, the storage unit 131 accumulates the usage information U2(ID-n) transmitted from the terminal device 11-n (n∈{1, ..., N}) that has started the software α (step S135).

[0022] The processing unit 132 of the global management device 13 extracts the usage information U2(ID-n) (n∈{1, ..., N}) stored in the storage unit 131 during the period T2(u) on a regular or irregular basis, and obtains and outputs the usage information US2(u) representing the usage status of the software α based on the extracted usage information U2(ID-n). u is an integer index representing the period T2(u). For example, u is an integer equal to or greater than 1. The period T2(u) may be a regular period or an irregular period. However, it is desirable that the length of the period T2(u) is longer than the length of the period T1(t). For example, it is desirable that the length of the period T2(u) is z times or more the length of the period T1(t). z is an integer equal to or greater than 2. This is because the frequency at which the usage information U2(ID-n) is sent to the global management device 13 is lower than the frequency at which the usage information U1(ID-n) is sent to the in-house management device 12, and if the length of the period T2(u) is shorter than the length of the period T1(t), sufficient information cannot be obtained to grasp the usage status of the software α. In this embodiment, the newer the period T2(u), the larger the value of u, and the period next to the period T2(u-1) is expressed as T2(u). The usage status information US2(u) may be any information based on the usage information U2(ID-n) and indicating the usage status of the software α. For example, the usage status information US2(u) indicates at least the number y(u) of terminal devices 11-n identified by the identifier ID-n corresponding to the usage information U2(ID-n) (second usage information). The number y(t) indicates the number of terminal devices 11 that started the software α in the period T2(u). The number y(u) is obtained by counting the types of identifiers ID-n corresponding to usage information U2(ID-n) stored in storage unit 131 during period T2(u). When usage information U2(ID-n) includes additional information A(ID-n), usage information US2(u) may include information based on additional information A(ID-n) (n∈{1,...,N}). For example, usage information US2(u) may include statistical information of additional information A(ID-n). Usage information US2(u) may be sent to output unit 134 (step S132).

[0023] The output unit 134 outputs the usage status information US2(u). For example, the output unit 134 outputs the usage status information US2(u) to a display unit (not shown) such as a display, and the display unit visually displays the usage status information US2(u). For example, the display unit displays the number y(u) (step S134).

[0024] <Features of this form> In this embodiment, when the terminal device 11-n starts the software α, the usage information U1(ID-n) (first usage information) corresponding to the identifier ID-n that uniquely identifies the terminal device 11-n is transmitted to the in-organization management device 12 connected to the in-organization communication network 101 to which the terminal device 11-n is connected. The in-organization management device 12 outputs usage status information US1(t) that indicates the usage status of the software α based on the received usage information U1(ID-n). As a result, even if the terminal device 11-n in which the software α is installed is not connected to the global communication network 102 at the time of starting the software α, it is possible to manage whether or not the use of the software α is appropriate. For example, even if the software α operates without being connected to the global communication network 102, it is possible to manage whether or not the use of the software α is appropriate. For example, this management can be performed in real time.

[0025] The usage status information US1(t) represents, for example, the number x(t) of terminal devices 11-n identified by the identifier ID-n corresponding to the usage information U1(ID-n) (first usage information). This number x(t) represents the number of terminal devices 11 that have started the software α in the period T1(t). As a result, even if an upper limit γ of the number of terminal devices 11 on which the software α can be installed is set by contract, the usage status information US1(t) can be used to manage whether the use of the software α is appropriate. If the usage status information US1(t) includes statistical information on the additional information A(ID-n), such as date and time information on when the software α was started, the usage status information US1(t) can manage the status of use of the software α represented by the additional information A(ID-n). If the usage information U1(ID-n) and the identifier ID-n are information that do not identify the user of the terminal device 11-n, the usage status information US1(t) also does not identify the user of the terminal device 11-n. In this case, it is possible to manage whether the use of the software α is appropriate while preventing leakage of personal information of the user of the terminal device 11-n. In this case, it is not necessary to encrypt the usage status information US1(t).

[0026] Furthermore, in this embodiment, when the terminal device 11-n starts the software and is connectable to the global communication network 102, it transmits usage information U2(ID-n) (second usage information) corresponding to the identifier ID-n to the global management device 13 connected to the global communication network 102. The global management device 13 outputs usage status information US2(u) indicating the usage status of the software α based on the received usage information U2(ID-n). This allows an outsider who cannot connect to the intra-organization communication network 101 (for example, provider A of the software α) to manage whether the use of the software α is appropriate in the long term, although they cannot manage whether the use of the software α is appropriate in real time.

[0027] Preferably, the usage status information US2(u) represents the number y(u) of terminal devices 11-n identified by the identifier ID-n corresponding to the usage information U2(ID-n) (second usage information). This number y(t) represents the number of terminal devices 11 that have started the software α in the period T2(u). As a result, even if an upper limit γ of the number of terminal devices on which the software α can be installed is set by contract, the usage status information US2(u) can be used to manage whether the use of the software α is appropriate. If the usage status information US2(u) includes statistical information on the additional information A(ID-n) such as date and time information on when the software α was started, the usage status information US2(u) can manage the status of use of the software α represented by the additional information A(ID-n). If the usage information U2(ID-n) and the identifier ID-n are information that does not identify the user of the terminal device 11-n, the usage status information US2(u) also does not identify the user of the terminal device 11-n. In this case, it is possible to manage whether the use of the software α is appropriate while preventing leakage of personal information of the user of the terminal device 11-n. In this case, it is not necessary to encrypt the usage status information US2(u).

[0028] [Modification 1 of the first embodiment] In the first embodiment, an example was shown in which the usage status information US1(t) represents at least the number x(t) of terminal devices 11-n identified by an identifier ID-n corresponding to the usage information U1(ID-n) (first usage information). However, the usage status information US1(t) may represent the time-series information of the numbers x(t1), x(t1+1), …, x(t-1), x(t) of the terminal devices 11-n identified by the identifier ID-n corresponding to the usage information U1(ID-n) (first usage information). That is, the usage status information US1(t) may represent the time-series information of the numbers x(t1), x(t1+1), …, x(t-1), x(t) of the terminal devices 11 that have started the software α in the periods T1(t1), T1(t1+1), …, T1(t-1), T1(t). Here, t1 < t1+1 < … < t-1 < t, and t1 is an integer index representing the period T1(t1). For example, t1 is an integer of 1 or more. The time-series information of the numbers x(t1), x(t1+1), …, x(t-1), x(t) represents how the number of the terminal devices 11 that have started the software α has changed in each of the periods T1(t1), T1(t1+1), …, T1(t-1), T1(t).

[0029] For example, when the upper limit γ of the number of terminal devices 11 that can use the software α is limited to 3, it is assumed that in the periods T1(1), T1(2), T1(3), T1(4), T1(5), the number x(t) of the terminal devices 11 that have started the software α has changed as 2, 3, 3, 4, 3 (Example 1-1). [Table 1] Here, in period T1(4), the number of terminal devices 11-n which have started the software α is four, and the number x(t) of terminal devices 11 which have started the software α temporarily exceeds the upper limit γ=3. However, in the next period T1(5), the number x(t) of terminal devices 11 which have started the software α is three, and the number x(t) does not exceed the upper limit γ. In such a case, it can be predicted that the software α which was installed in one of the terminal devices 11 in period T1(4) was deleted, and the software α was installed in another terminal device 11 instead. In such a case, it can be presumed that the software α was used appropriately.

[0030] On the other hand, for example, if the upper limit γ of the number of terminal devices 11 that can use the software α is limited to 3, suppose that the number x(t) of terminal devices 11-n that have launched the software α changes to 2, 3, 3, 4, and 4 during periods T1(1), T1(2), T1(3), T1(4), and T1(5) (Example 1-2). [Table 2] Here, in the period T1(4), the number of terminal devices 11 which have started the software α is four, and the number of terminal devices 11 which have started the software α exceeds the upper limit γ=3. Furthermore, in the next period T1(5), the number of terminal devices 11 which have started the software α is also four, and the number of terminal devices 11 which have started the software α exceeds the upper limit γ. In such a case, it can be predicted that the software α which was installed in the terminal device 11 in the period T1(4) was not deleted, and the software α was newly installed in another terminal device 11. Therefore, in such a case, it can be presumed that the software α was used inappropriately.

[0031] In this way, when the usage status information US1(t) represents time series information of the numbers x(t1), x(t1+1), ..., x(t-1), x(t) of terminal devices 11-n identified by identifiers ID-n corresponding to the usage information U1(ID-n) (first usage information) received by the in-house management device 12 in multiple periods T1(t1), T1(t1+1), ..., T1(t-1), T1(t), respectively, it is possible to manage how the numbers x(t1), x(t1+1), ..., x(t-1), x(t) of terminal devices 11 that have started the software α have changed. As a result, it is possible to more accurately manage whether the software α has been used appropriately.

[0032] In such a case, the processing unit 122 of the internal management device 12 (FIG. 3) may further use time-series information on the number of terminal devices 11 to estimate whether the software α has been used appropriately or not, and output usage status information US1(t) representing the estimation result. For example, when none of the numbers x(t1), x(t1+1), ..., x(t-1), x(t) exceeds the upper limit γ, the processing unit 122 outputs usage status information US1(t) representing the estimation result that the software α has been used appropriately. For example, when the number x(t2) exceeds the upper limit γ in any period T1(t2) ∈ {T1(t1), T1(t1+1), ..., T1(t-1), T1(t)} among the numbers x(t1), x(t1+1), ..., x(t-1), x(t), and the number x(t3) does not exceed the upper limit γ in a subsequent period T1(t3) ∈ {T1(t1), T1(t1+1), ..., T1(t-1), T1(t)}, the processing unit 122 outputs the usage status information US1(t) indicating the estimation result that the software α has been used appropriately. For example, the period T1(t3) is the period following the period T1(t2). · For example, among the quantities x(t1), x(t1+1), …, x(t-1), x(t), if the quantity x(t2) exceeds the upper limit γ during any period T1(t2) ∈ {T1(t1), T1(t1+1), …, T1(t-1), T1(t)}, and the quantity x(t3) also exceeds the upper limit γ during a subsequent period T1(t3) ∈ {T1(t1), T1(t1+1), …, T1(t-1), T1(t)}, the processing unit 122 outputs usage status information US1(t) indicating an estimation result that the software α has not been appropriately used.

[0033] [Modification Example 2 of the First Embodiment] Similarly, in the first embodiment, an example was shown in which the usage status information US2(u) represents at least the number y(u) of the terminal device 11-n identified by the identifier ID-n corresponding to the usage information U2(ID-n) (second usage information). However, the usage status information US2(u) may represent the time-series information of the numbers y(u1), y(u1+1), …, y(u-1), y(u) of the terminal device 11-n identified by the identifier ID-n corresponding to the usage information U2(ID-n) (second usage information). That is, the usage status information US2(u) may represent the time-series information of the numbers y(u1), y(u1+1), …, y(u-1), y(u) of the terminal device 11 that has activated the software α during the periods T2(u1), T2(u1+1), …, T2(u-1), T2(u). Here, u1 < u1+1 < … < u-1 < u, and u1 is an integer index representing the period T2(u1). For example, u1 is an integer of 1 or more. It is desirable that each of the periods T2(u1), T2(u1+1), …, T2(u-1), T2(u) is longer than any of the periods T1(t1), T1(t1+1), …, T1(t-1), T1(t). The time-series information of the numbers y(u1), y(u1+1), …, y(u-1), y(u) represents how the number of the terminal devices 11 that have activated the software α has changed during each of the periods T2(u1), T2(u1+1), …, T2(u-1), T2(u).

[0034] When the usage status information US2(u) represents time series information of the numbers y(u1), y(u1+1), ..., y(u-1), y(u) of the terminal devices 11-n identified by the identifier ID-n corresponding to the usage information U2(ID-n) (second usage information) received by the global management device 13 during each of the periods T2(u1), T2(u1+1), ..., T2(u-1), T2(u), it is possible to manage how the numbers y(u1), y(u1+1), ..., y(u-1), y(u) of the terminal devices 11 that have started the software α have changed. As a result, it is possible to more accurately manage whether the software α has been used appropriately.

[0035] In such a case, the processing unit 132 of the global management device 13 (FIG. 4) may further use time-series information on the number of terminal devices 11 to estimate whether the software α has been used appropriately, and output usage status information US2(u) representing the estimation result. For example, if none of the numbers y(u1), y(u1+1), ..., y(u-1), y(u) exceeds the upper limit γ, the processing unit 132 outputs usage status information US2(u) indicating an estimation result that the software α has been used appropriately. For example, when the quantity y(u2) exceeds the upper limit γ in any of the periods T2(u2) ∈ {T2(u1), T2(u1+1), ..., T2(u-1), T2(u)} among the quantities y(u1), y(u1+1), ..., y(u-1), y(u), and the quantity y(u3) does not exceed the upper limit γ in the subsequent period T2(u3) ∈ {T2(u1), T2(u1+1), ..., T2(u-1), T2(u)}, the processing unit 132 outputs the usage status information US2(u) indicating the estimation result that the software α has been appropriately used. For example, the period T2(u3) is the period following the period T2(u2). For example, when the quantity y(u2) exceeds the upper limit γ in any one of the periods T2(u2) ∈ {T2(u1), T2(u1+1), ..., T2(u-1), T2(u)} among the quantities y(u1), y(u1+1), ..., y(u-1), y(u)} and the quantity y(u3) also exceeds the upper limit γ in a subsequent period T2(u3) ∈ {T2(u1), T2(u1+1), ..., T2(u-1), T2(u)}, the processing unit 132 outputs usage status information US2(u) indicating an estimation result that the software α has not been used appropriately.

[0036] [Third Modification of the First Embodiment] In the first embodiment, the usage information U2(ID-n) transmitted from the terminal device 11-n to the global management device 13 was the same as the usage information U1(ID-n) transmitted to the in-house management device 12. However, the usage information U2(ID-n) may be any information as long as it corresponds to the identifier ID-n, and may not be the same as the usage information U1(ID-n). For example, the usage information U2(ID-n) may be a file with the identifier ID-n as the file name, a file with the function value of the identifier ID-n as the file name, text information including the identifier ID-n, or text including the function value of the identifier ID-n. The usage information U2(ID-n) may include additional information other than the identifier ID-n. Examples of the additional information are as described above. In addition, it is preferable that the usage information U2(ID-n) is information that does not identify the user of the terminal device 11-n. For example, even if the usage information U1(ID-n) is information that identifies the user of the terminal device 11-n, it is preferable that the usage information U2(ID-n) is information that does not identify the user of the terminal device 11-n. Since the usage information U1(ID-n) is information that is transmitted to the intra-organization communication network 101, even if the usage information U1(ID-n) is information that identifies the user of the terminal device 11-n, the range of information leakage is limited to the intra-organization communication network 101. In contrast, since the usage information U2(ID-n) is information that is transmitted to the global communication network 102, if the usage information U1(ID-n) is information that identifies the user of the terminal device 11-n, the range of information leakage will expand to the global communication network 102.

[0037] [Second embodiment] When the internal management device is connectable to the global communication network, the usage status information US1(t) obtained by the internal management device may be transmitted to the global management device connected to the global communication network. In the following, the differences from the first embodiment will be mainly described, and the same reference numbers will be used to simplify the description of common matters.

[0038] <Configuration> As illustrated in FIG. 1, the license management system 2 of this embodiment includes N terminal devices 11-1, . . . , 11-N, an in-house management device 22, and a global management device .

[0039] 3, the in-organization management device 22 of this embodiment has a storage unit 121, a processing unit 222, an in-organization communication unit 123, an output unit 124, a global communication unit 225, and a memory 126. Information input to the in-organization management device 22 and information output from each unit of the in-organization management device 22 are stored in the memory 126 one by one, and are read out and used as necessary.

[0040] 4, the global management device 23 of this embodiment has a storage unit 131, a processing unit 232, a global communication unit 135, an output unit 134, and a memory 136. Information input to the global management device 23 and information output from each unit of the global management device 23 are stored in the memory 136 one by one, and are read out and used as necessary.

[0041] <Premise> The premise is the same as that of the first embodiment, except that the in-house management device 12 and the global management device 13 are replaced with an in-house management device 22 and a global management device 23, respectively.

[0042] <Processing of terminal device 11-n (FIG. 2)> The processing is the same as that of the terminal device 11-n in the first embodiment, except that the in-house management device 12 and the global management device 13 are replaced with an in-house management device 22 and a global management device 23, respectively.

[0043] <Processing of the in-house management device 22 (FIG. 3)> The internal management device 22 executes the process of step S123 instead of the internal management device 12. As a result, the usage information U1(ID-n) is stored in the memory unit 121 of the internal management device 22 (step S123). The processing unit 222 of the internal management device 22 periodically or irregularly extracts the usage information U1(ID-n) (n∈{1, ..., N}) stored in the memory unit 121 during the period T1(t), and obtains and outputs the usage status information US1(t) representing the usage status of the software α based on the extracted usage information U1(ID-n). The details are as explained in the first embodiment. The usage status information US1(t) is sent to the global communication unit 225 and the output unit 124 (step S222).

[0044] The internal management device 22 executes the process of step S124 described in the first embodiment instead of the internal management device 12. As a result, the output unit 124 of the internal management device 22 outputs the usage status information US1(t) (step S124). In addition, when the internal management device 22 is connectable to the global communication network 102, the global communication unit 225 transmits the usage status information US1(t) to the global management device 23 through the global communication network 102 (step S225).

[0045] <Processing of the global management device 23 (FIG. 4)> The global management device 23 executes the process of step S135 described in the first embodiment instead of the global management device 13. As a result, the usage information U2(ID-n) is stored in the memory unit 131 of the global management device 23 (step S135). In addition, the global communication unit 135 of the global management device 23 receives, via the global communication network 102, the usage information US1(t) transmitted from the in-organization management device 22 connected to the global communication network 102. The received usage information US1(t) is stored in the memory unit 131 (step S235).

[0046] The processing unit 132 of the global management device 23 periodically or irregularly extracts the usage information U2(ID-n) (n∈{1, ..., N}) stored in the storage unit 131 during the period T2(u), and obtains the usage status information US2(u) indicating the usage status of the software α based on the extracted usage information U2(ID-n). The details are as explained in the first embodiment. The usage status information US2(u) is sent to the output unit 134 (step S132).

[0047] In the second embodiment, the processing unit 132 further extracts the usage information US1(t) from the storage unit 132, and obtains and outputs the usage information US3 (third usage information) based on the usage information US1(t) and the usage information US2(u). The usage information US3 may represent, for example, both the usage information US1(t) and the usage information US2(u). For example, when the usage information US1(t) represents the number x(t) in a period T1(t) and the usage information US2(u) represents the number y(u) in a period T2(u), the usage information US3 may represent the number x(t) and the number y(t). For example, if usage information US1(t) represents time series information of quantities x(t1), x(t1+1), ..., x(t-1), x(t) in periods T1(t1), T1(t1+1), ..., T1(t-1), T1(t), and usage information US2(u) represents time series information of quantities y(u1), y(u1+1), ..., y(u-1), y(u) in periods T2(u1), T2(u1+1), ..., T2(u-1), T2(u), usage information US3 may represent quantities x(t1), x(t1+1), ..., x(t-1), x(t) and quantities y(u1), y(u1+1), ..., y(u-1), y(u).

[0048] For example, the usage information US3 may indicate whether the usage information US1(t) and the usage information US2(u) are consistent. For example, when the usage information US1(t) indicates the number x(t) in a period T1(t), the usage information US2(u) indicates the number y(u) in a period T2(u), and the period T1(t) is included in the period T2(u), the usage information US3 may indicate whether the number x(t) and the number y(u) match, or may indicate whether the difference between the number x(t) and the number y(u) is equal to or less than a reference value. For example, when the usage information US1(t) represents time series information of the numbers x(t1), x(t1+1), ..., x(t-1), x(t) in the periods T1(t1), T1(t1+1), ..., T1(t-1), T1(t), and the usage information US2(u) represents at least the number y(u) in the period T2(u), and the periods T1(t1), T1(t1+1), ..., T1(t-1), T1(t) are included in the period T2(u), the usage information US3 may represent whether the total value of the numbers x(t1), x(t1+1), ..., x(t-1), x(t) matches the number y(u) or whether the difference between the total value and the number y(u) is equal to or smaller than a reference value. The usage information US3 is sent to the output unit 134.

[0049] The output unit 134 outputs the usage status information US2(u) and the usage status information US3. For example, the output unit 134 outputs the usage status information US2(u) and the usage status information US3 to a display unit (not shown), which visually displays the usage status information US2(u) and the usage status information US3. Alternatively, the output unit 134 may output the usage status information US3 without outputting the usage status information US2(u). For example, the output unit 134 may output the usage status information US3 to a display unit (not shown), which visually displays the usage status information US3 (step S234).

[0050] <Features of this form> In this embodiment, the same effect as in the first embodiment can be obtained. Furthermore, in this embodiment, when the in-house management device 22 is connectable to the global communication network 102, the usage information U1(ID-n) (first usage information) output from the in-house management device 22 is transmitted to the global management device 23 connected to the global communication network 102. This allows the global management device 23 to more accurately manage whether the software α has been used appropriately.

[0051] [Modification of the second embodiment] In the second embodiment, the same modifications as the first, second and third modifications of the first embodiment are possible.

[0052] [Hardware configuration] The functions performed by the components described herein may be implemented in circuitry or processing circuitry, including general purpose processors, application specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), a CPU (a Central Processing Unit), conventional circuits, and / or combinations thereof, programmed to perform the functions described. Processors include transistors and other circuits and are considered to be circuitry or processing circuitry. A processor may be a programmed processor that executes a program stored in a memory.

[0053] In this specification, a circuitry, unit, or means is hardware that is programmed to realize or performs the described functions, which may be any hardware disclosed in this specification or any hardware known to be programmed to realize or perform the described functions.

[0054] If the hardware is a processor considered to be a type of circuitry, the circuitry, means, or unit is a combination of the hardware and software used to configure the hardware and / or processor.

[0055] For example, the terminal device 11-n, the in-house management devices 12 and 22, and the global management devices 13 and 23 in each embodiment are devices configured by a general-purpose or dedicated computer having a processor (hardware processor) such as a CPU (central processing unit), a memory such as a RAM (random-access memory) and a ROM (read-only memory), a communication device, a display device, etc., executing a predetermined program. That is, the terminal device 11-n, the in-house management devices 12 and 22, and the global management devices 13 and 23 in each embodiment have, for example, a processing circuit configured to implement each unit possessed by each of them. This computer may have one processor and memory, or may have multiple processors and memories. This program may be installed in the computer, or may be recorded in a ROM or the like in advance. In addition, some or all of the processing units may be configured using electronic circuits that realize processing functions by themselves, rather than electronic circuits that realize functional configurations by reading programs like a CPU. In addition, the electronic circuits that configure one device may include multiple CPUs.

[0056] The program describing the processing contents can be recorded on a computer-readable recording medium. An example of a computer-readable recording medium is a non-transitory recording medium. Examples of such recording media include a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory.

[0057] The program may be distributed, for example, by selling, transferring, lending, etc. portable recording media such as DVDs and CD-ROMs on which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of a server computer and transferring the program from the server computer to other computers via a network.

[0058] A computer that executes such a program, for example, first stores the program recorded on a portable recording medium or the program transferred from a server computer in its own storage device. Then, when executing a process, the computer reads the program stored in its own recording medium and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from the portable recording medium and execute a process according to the program, or may execute a process according to the received program each time a program is transferred from the server computer to the computer. The server computer may not transfer the program to the computer, but may execute the process by a so-called ASP (Application Service Provider) type service that realizes the processing function only by issuing an execution instruction and obtaining the result. Furthermore, the server computer may execute the process of the terminal by using a so-called SaaS (Software as a Service) type service that allows a user to use a part of the server computer together with the program. The program in this embodiment includes information used for processing by an electronic computer that is equivalent to a program (data that is not a direct command to the computer but has a nature that specifies the processing of the computer, etc.).

[0059] In addition, in this embodiment, the present device is configured by executing a specific program on a computer, but at least a part of the processing contents may be realized by hardware.

[0060] [Other variations] The present invention is not limited to the above-mentioned embodiment. For example, the global communication unit 135 of the global management device 13, 23 may notify the terminal device 11 and / or the in-house management device 12, 22 of the evaluation result based on the usage information US2(u) and the usage information US3 (for example, the number of terminal devices 11 in which the software α is installed and whether or not the number exceeds the upper limit γ set by the contract) by e-mail or the like via the global communication network 102.

[0061] Moreover, the identifier ID-n may not be transmitted from the terminal device 11-n to the global management device 13, 23. Even in this case, it is possible for the in-house management devices 12, 22 to manage whether or not the software α is being used correctly, and the in-house management devices 12, 22 may notify the global management devices 13, 23 of the result by e-mail or the like via the global communication network 102.

[0062] The above-mentioned various processes may be executed not only in chronological order as described, but also in parallel or individually depending on the processing capacity of the device executing the processes or as necessary. Needless to say, other modifications are possible without departing from the spirit of the present invention.

[0063] [Note] The above contents are listed below. [Appendix 1] A terminal device, a processing unit having software installed therein; an internal communication unit that transmits, when the processing unit starts the software, first usage information corresponding to an identifier that uniquely identifies the terminal device to an internal management device that is connected to an internal communication network to which the terminal device is connected; a global communication unit that transmits second usage information corresponding to the identifier to a global management device connected to the global communication network when the processing unit starts the software and the terminal device is connectable to a global communication network; A terminal device having the above configuration.

[0064] [Appendix 2] An in-house management device, an intra-organization communication unit that is connected to an intra-organization communication network and receives, when a terminal device starts software, first usage information corresponding to an identifier that uniquely identifies the terminal device from the terminal device that is connected to the intra-organization communication network; an output unit that outputs usage status information representing a usage status of the software based on the first usage information; An internal management device having the above configuration.

[0065] [Appendix 3] 3. An internal management device according to claim 2, comprising: The usage status information indicates at least the number of the terminal devices identified by the identifier corresponding to the first usage information.

[0066] [Appendix 4] 3. An internal management device according to claim 2, comprising: The usage status information represents at least time-series information on the number of the terminal devices that have activated the software during each of a plurality of periods.

[0067] [Appendix 5] 5. An internal management device according to claim 4, a processing unit that uses the time-series information of the number to estimate whether the software has been used appropriately, The usage status information indicates an estimation result as to whether the software has been used appropriately.

[0068] [Appendix 6] 3. An internal management device according to claim 2, comprising: an internal management device having a global communication unit that transmits the usage information to a global management device connected to the global communication network when the internal management device is connectable to a global communication network;

[0069] [Appendix 7] A global management device, comprising: a global communication unit that receives, via a global communication network, the usage status information transmitted from the internal management device of Supplementary Note 6 and second usage information transmitted from the terminal device that started the software and corresponding to an identifier that uniquely identifies the terminal device; an output unit that outputs third usage information based on the usage information and second usage information that represents a usage status of the software based on the second usage information; A global management device having:

[0070] [Appendix 8] 8. The global management device of claim 7, The third usage status information indicates whether the usage status information and the second usage status information are consistent with each other. [Explanation of symbols]

[0071] 1,2 License Management System 11 Terminal Equipment 12,22 Internal management device 13,23 Global Management Device 101 Internal communication network 102 Global Communication Network 113,122 Internal Communications Department 114,135,225 Global Communications Department 122,132,222,232 Processing section

Claims

1. A terminal device, a processing unit having software installed therein; when the processing unit starts the software and the terminal device is not connectable to a global communication network, transmitting first usage information corresponding to an identifier that uniquely identifies the terminal device to an internal management device connected to the internal communication network to which the terminal device is connected without transmitting second usage information corresponding to the identifier to a global management device connected to the global communication network; a communication unit that, when the processing unit starts up the software and the terminal device is connectable to a global communication network, transmits the first usage information to the internal management device connected to the internal communication network to which the terminal device is connected, and transmits the second usage information to the global management device connected to the global communication network; A terminal device having the above configuration.

2. A license management system having a terminal device and an internal management device, The terminal device a processing unit having software installed therein; when the processing unit starts up the software and the terminal device is not connectable to a global communication network, transmitting first usage information corresponding to an identifier that uniquely identifies the terminal device to the internal management device connected to the internal communication network to which the terminal device is connected without transmitting second usage information corresponding to the identifier to a global management device connected to the global communication network; a communication unit that, when the processing unit starts up the software and the terminal device is connectable to a global communication network, transmits the first usage information to the internal management device connected to the internal communication network to which the terminal device is connected, and transmits the second usage information to the global management device connected to the global communication network, The internal management device includes: an internal communication unit that receives the first usage information from the terminal device connected to the internal communication network; a global communication unit that transmits usage status information representing a usage status of the software based on the first usage information to the global management device connected to the global communication network when the internal management device is connectable to the global communication network; A license management system having:

3. An in-house management device, comprising: an intra-organization communication unit that is connected to an intra-organization communication network and receives, when a terminal device starts software, first usage information corresponding to an identifier that uniquely identifies the terminal device from the terminal device that is connected to the intra-organization communication network; a processing unit that obtains time-series information on the number of the terminal devices that have activated the software during each of a plurality of periods based on the first usage information, and estimates whether the software has been used appropriately using the time-series information on the number, The processing unit includes: outputting usage status information indicating an estimation result that the software has been used appropriately when, in the time-series information of the number, the number in a first period exceeds the upper limit and the number in a second period after the first period does not exceed the upper limit; an internal management device that outputs usage status information indicating an inference that the software was not used appropriately when, in the time series information of the number, the number in the first period exceeds an upper limit and the number in the second period exceeds the upper limit.

4. A license management method which executes processing of a terminal device according to claim 1, processing of a license management system according to claim 2, or processing of an internal management device according to claim 3.

5. A program for causing a computer to execute the processing of the terminal device of claim 1 or the processing of the in-organization management device of claim 3.

Citation Information

Patent Citations

  • Data processor and storage medium

    JP2000250751A

  • Management and introduction supporting method of software program, its executing equipment, and recording medium recorded its transaction program

    JP2002006975A

  • License managing method for software and storage medium

    JP2002222021A

  • System environment management program and system environment management device

    JP2004341650A

  • Method and system for instrumenting software

    JP2008520051A