This application is based on and claims the benefit of priority from Japanese Patent Application No. 2017-139712, filed on 19 Jul. 2017, the content of which is incorporated herein by reference.
The present invention relates to an application sales management server system.
In recent years, pieces of data from various devices are collected via a communication network and analysis or the like is performed using the collected pieces of data so that data can be utilized in various fields. Applications corresponding to respective uses are required analysis and the like the collected pieces of data. It may be convenient if customers can purchase applications by themselves. As a method for allowing customers to purchase applications by themselves, a user accesses a site called a “store” that provides an application distribution and sales service using a smartphone or the like of the user and downloads a desired application.
In such an online store, there is a case in which the identity of a user is verified, and when the user satisfies predetermined requirements, the user is authorized to access an application library. For example, Patent Document 1 discloses a company application store which allows a user who is determined to be authorized to access the company application store using the authentication credentials of the user to browse and/or download applications. Patent Document 2 discloses an application store that asks a user to present valid qualification information before authorizing an access to applications stored in an application library and authorizes the user to access the application library when the user presents valid qualification information. Patent Document 3 discloses an online shopping site in which users are authenticated using user IDs, and, for example, a user having a low reliability level can browse applications but cannot purchase applications, a user having an intermediate reliability level can purchase applications only when money is transferred to a bank, and a user having a high reliability level can purchase applications by all payment methods.
Patent Document 1: Japanese Unexamined Patent Application (Translation of PCT Application), Publication No. 2016-522472 Patent Document 2: Japanese Unexamined Patent Application (Translation of PCT Application), Publication No. 2016-513851 Patent Document 3: Japanese Unexamined Patent Application, Publication No. 2008-152596
On the other hand, in a manufacturing site such as a plant in a field of a manufacturing apparatus including a CNC machine tool, an industrial apparatus, and an industrial robot, an application of an edge server (hereinafter also referred to as an “application”) collects and utilizes data indicating an operation state of a manufacturing apparatus, data indicating a production state of the manufacturing apparatus, data indicating a quality state of a product manufactured by the manufacturing apparatus, data indicating an operating state of the manufacturing apparatus, and the like to take countermeasures such as machine learning or preventive maintenance, for example. Therefore, it will be convenient if users can access a “store site” directed for B2B (Business-to-Business) that provides an application distribution and sales service in a manufacturing site including a CNC machine tool, an industrial apparatus, an industrial robot, and the like to see which application is available and purchase an application for collecting and utilizing various pieces of data generated in the manufacturing site easily by downloading the application to an edge server if an appropriate application is present. Moreover, when this technique is applied to B2B, there are needs that a user (a company) having developed or being developing a certain application may want to allow a specific user (company) such as a customer thereof to use or test the application to obtain evaluation feedbacks or the like for the application and, further, alter and improve the application. By doing so, the user (the company) having developed the application can build a WIN-WIN relationship with the user (the company) who purchased the application. Due to this, it may be necessary for a developer itself, for example, to be able to designate a specific user who can browse an arbitrary application provided by the developer. However, the application stores disclosed in Patent Documents 1 to 3 do not allow a developer itself, for example, to be able to designate a specific user who can browse an arbitrary application (for example, regardless of whether the application has been developed, is in development, or is a beta version) provided by the developer in a field of a manufacturing apparatus including a CNC machine tool, an industrial apparatus, an industrial robot, and the like.
An object of the present invention is to provide an application sales management server system which allows a developer itself, for example, to be able to designate a specific user who can browse and purchase a predetermined application (for example, regardless of whether the application has been developed, is in development, or is a beta version) while making use of a conventional business practice related to B2B particularly in a field of a manufacturing apparatus including a CNC machine tool, an industrial apparatus, an industrial robot, and the like.
(1) An application sales management server system (for example, a “sales management server system 100” to be described later) according to the present invention manages sales of applications operated by an edge server (for example, an “edge server 200” to be described later) communicably connected to one or more edge devices (for example, an “edge device 300” to be described later), the system including: a communication unit (for example, a “communication unit 130” to be described later); a control unit (for example, a “control unit 110” to be described later); and a storage unit (for example, a “storage unit 120” to be described later), wherein the system is communicably connected to a user terminal (for example, a “terminal 400” to be described later) of a user via the communication unit, the control unit (110) includes: an application product information providing unit (for example, a “browsing information providing unit 111” to be described later) that provides application product information in response to an application product information browse request including an application name transmitted from the user terminal; and a user setting unit (for example, a “mall processing unit 114” to be described later) that correlates a predetermined user with an application group including one or more pre-selected applications, and the application product information providing unit is further configured to: provide application product information related to the application included in the application group including the one or more pre-selected applications in response to an application information browse request transmitted from the user via the user terminal only when the user is correlated with the application group including the one or more pre-selected applications by the user setting unit; and do not provide any information related to the application included in the application group including the one or more pre-selected applications when the user is not correlated with the application group including the one or more pre-selected applications by the user setting unit.
(2) In the application sales management server system (for example, a “sales management server system 100” to be described later) according to (1), the control unit (for example, a “control unit 110” to be described later) may include: a distribution authorization information notification unit (for example, an “ordering processing unit 112” to be described later) that notifies the user terminal of information related to authorization of distribution or distribution authorization information (for example, a “serial number” to be described later) corresponding to the application on the basis of an application purchase request from the user terminal (for example, a “terminal 400” to be described later), and the distribution authorization information notification unit (for example, an “ordering processing unit 112” to be described later) may notify the user terminal of the information related to authorization of distribution or the distribution authorization information corresponding to the application included in the application group including the one or more pre-selected applications on the basis of the application purchase request transmitted from the user via the user terminal only when the user is correlated with the application group including the one or more pre-selected applications by the user setting unit.
(3) In the application sales management server system (for example, a “sales management server system 100” to be described later) according to (1) or (2), the control unit (for example, a “control unit 110” to be described later) may include: an administrator setting unit (for example, a “mall processing unit 114” to be described later) that correlates a predetermined administrator with the application group including the one or more pre-selected applications, the user setting unit (for example, a “mall processing unit 114” to be described later) may correlate a predetermined user with the application group including the one or more pre-selected applications when the user is the administrator correlated with the application group including the one or more pre-selected applications by the administrator setting unit, and the application product information providing unit (for example, a “browsing information providing unit 111” to be described later) may further do not provide any information related to the application included in the application group including the one or more pre-selected applications to users other than the administrator correlated with the application group including the one or more pre-selected applications by the administrator setting unit.
According to the present invention, it is possible to provide an application sales management server system which allows a developer itself, for example, to be able to designate a specific user who can browse and purchase a predetermined application (for example, regardless of whether the application has been developed, is in development, or is a beta version) while making use of a conventional business practice related to B2B particularly in a field of a manufacturing apparatus including a CNC machine tool, an industrial apparatus, an industrial robot, and the like.
A configuration of an application sales management system 1000 according to the present embodiment will be described.
The application sales management system 1000 is an online system for assisting an end user related to sales and distribution of a server application operating in the edge server 200 and an intermediary dealer including a specialized dealer such as a system integrator and a machine tool manufacturer in executing online processing of B2B related to sales and distribution of the application using the respective terminals 400. An example of the server application operating in the edge server 200 is an application that collects data indicating an operation state related to the edge device 300, data indicating a production state, data indicating a quality state of a product, and data indicating an operating state to perform information processing, but an example thereof is not limited thereto. In the following description, a server application of which the sales is managed by the application sales management system 1000 is also referred to simply as an application.
The sales management server system 100 and the edge server 200 are connected via a network N1. The sales management server system 100 is communicably connected to the terminal 400 via the network N1. The network N1 is the Internet, a virtual private network (VPN), a public telephone network, or the like, for example. A specific communication method of the network N1 and whether the network is a cable connection or a wireless connection are not particularly limited. The edge server 200 and one or more edge devices 300 are provided in a plant facility or the like of an end user, for example, and are communicably connected via a network N2 such as a local area network (LAN). The network N2 may include a network switch or the like.
The sales management server system 100 is operated and managed by a company (hereinafter also referred to as an operating company) that performs sales and management of applications operating in the edge server 200. As illustrated in
The edge server 200 is a server that executes an application purchased from the sales management server system 100 to thereby collect data indicating the operation state related to one or more edge devices 300, data indicating the production state, data indicating the quality state of a product, and data indicating the operating state, for example, from the edge devices 300 to perform predetermined information processing related to the application. As described above, the edge device 300 is a manufacturing apparatus such as a CNC machine tool, an industrial apparatus, or an industrial robot provided in a manufacturing site such as a plant. One or more edge devices 300 form a line or a cell of a plant, for example.
The terminal 400 is a personal computer (PC), for example. The terminal 400 is a terminal which is communicably connected to the sales management server system 100 and is used by an end user related to sales and distribution by B2B of an application and an intermediary dealer including a specialized dealer such as a system integrator and a machine tool manufacturer, for example. Here, the terminal 400 used by an end user may be provided inside a plant facility and may be provided outside a plant facility. An end user can access the sales management server system 100 via the terminal 400 and browse the contents of applications that the end user can purchase. Moreover, an intermediary dealer or the like including a specialized dealer such as a system integrator or a machine tool manufacturer who relays the purchase of applications for an end user can order an application via the terminal 400.
The application sales management system 1000 can be used only by a user (an end user and an intermediary dealer) who is evaluated by an operating company in advance to satisfy necessary requirements (qualifications or the like) for using the application sales management system 1000 and is assigned with a user identification (ID) for accessing the application sales management system 1000. The details will be described later.
Next, a configuration of the sales management server system 100 will be described.
In the present embodiment, the control unit 110 includes a browsing information providing unit 111, an ordering processing unit 112, a distribution processing unit 113, a mall processing unit 114, a contract renewal processing unit 115 as functional units based on the programs stored in the storage unit 120. Prior to description of the respective functional units of the control unit 110, the storage unit 120 will be described first. The storage unit 120 includes an application storage unit 121, a user storage unit 122, a mall storage unit 123, and a distribution management storage unit 124 in addition to the programs executed by the control unit 110.
The application storage unit 121 is a storage area that stores applications sold by the application sales management system 1000. An application traded in the application sales management system 1000 is an application operated by the edge server 200. The application storage unit 121 illustrated in
The user storage unit 122 is a storage area that stores information on a user who is authorized to access the application sales management system 1000. As described above, in order to access the application sales management system 1000, it is necessary to satisfy predetermined requirements (qualifications or the like), and a user who satisfies the predetermined requirements (qualifications or the like) is assigned with a user ID for accessing the application sales management system 1000. Here, a user includes an end user and an intermediary dealer including a specialized dealer such as a system integrator and a machine tool manufacturer.
The user storage unit 122 illustrated in
The mall storage unit 123 is a storage area that stores information on a mall. Prior to description of the mall storage unit 123, a mall will be described.
An application 170 illustrated in
In the example illustrated in
By providing the application sales management system 1000 with a grouping function using such a mall, an higher intermediary dealer can provide applications developed by itself (or applications in development) to only end users who are customers thereof for browsing or sales purposes. Moreover, the higher intermediary dealer may not be also known to an operating company since the higher intermediary dealer manages applications included in the exclusive mall 173. Furthermore, since each user can access (browse, purchase, or distribute) the exclusive application 172 only included in the exclusive mall 173 correlated with the user ID thereof, each user has no way to know the presence of the exclusive application 172 included in the exclusive mall 173 which is not correlated with the user ID thereof.
As described above, the mall storage unit 123 stores the name of a mall, an administrator ID for identifying an administrator (for example, an administrator of the mall in the higher intermediary dealer such as a machine tool manufacturer), and an authorized user ID or the like for identifying a user who is authorized to access the mall, which is set by the administrator of the mall in correlation with a predetermined mall ID for identifying the mall. Moreover, the mall storage unit 123 may store a description on an application group included in the mall and/or an application ID for identifying applications included in the mall, the number of applications, and the like in correlation with the mall ID.
In this embodiment, although the exclusive application 172 included in the exclusive mall 173 has been described, an application to which access is restricted is not limited thereto. For example, an administrator ID and an authorized user ID may be set for each application so that an access restriction may be applied to these respective applications. More specifically, by adding the items of an administrator ID and an authorized user ID, for example, to the application storage unit 121, it is possible to secure confidentiality of the application to persons other than an administrator and an authorized user similarly to the exclusive mall 173.
The distribution management storage unit 124 is a storage area that stores information on an application distributed to an arbitrary edge server 200 in correlation with a distribution destination edge server 200. The distribution management storage unit 124 illustrated in
The serial number (a license key) is a serial number corresponding to a purchased application. The license is information on the edge device 300 which is authorized to perform connection and/or input/output to the application in relation to the license of an application distributed to the edge server 200. The purchase date is the date on which a serial number of the application is notified of. The distribution date is the date on which the application is distributed to the edge server 200. The next contract renewal date is the next contract scheduled date when the present license contract is continuously maintained. The next contract renewal notification date is a candidate date on which a confirmation notification whether the present license contract is continuously maintained is transmitted to a specialized dealer (an intermediary dealer) who is a purchaser of the application and/or a license destination end user of the application. The next contract renewal notification destination address is the address of the terminal 400 of a specialized dealer (an intermediary dealer) who is a purchaser of the application and/or a license destination end user of the application and/or an email address of a specialized dealer (an intermediary dealer) who is a purchaser of the application and/or a license destination end user of the application. The notification completion flag is a flag indicating whether a confirmation notification on whether a present license contract is continuously maintained or not is transmitted to a specialized dealer (an intermediary dealer) who is a purchaser of the application and/or the license destination end user of the application, and when the notification is transmitted, the flag is set to ON, for example, in order to indicate that a notification has been transmitted.
By doing so, users can easily retrieve information on the edge server 200 to which each application has been distributed and when the contract of the application is to be renewed in the edge server 200. Moreover, users can easily retrieve information on which application and when the contract of the application is renewed among applications distributed to each of the edge servers 200. Furthermore, a confirmation notification of the renewal of the contract of an application can be transmitted to the next contract notification destination address (for example, the terminal 400 and/or the email address or the like) on the next contract renewal notification date previous to the next contract update date for each application and/or each edge server 200. Next, the respective functional units of the control unit 110 illustrated in
The browsing information providing unit 111 has functions corresponding to an application product information providing unit and a sales price information providing unit. More specifically, the browsing information providing unit 111 provides application information (application product information) that an end user or a specialized dealer (an intermediary dealer) can browse in response to a browse request for application information (application product information) from the end user or the specialized dealer (an intermediary dealer) or the like, received from the terminal 400. The browsing information providing unit 111 may extract application product information on an application (the general application 171) provided to all logged-in users by referring to the application storage unit 121 and provide the application product information to the terminal 400.
A case in which an authorization to access a predetermined mall is set to a logged-in user will be described. In this case, first, the browsing information providing unit 111 may provide mall information in which an access authorization is set to a logged-in user to the terminal 400 in a list form. More specifically, the browsing information providing unit 111 acquires a mall ID in which an access authorization is set to the user by referring to the mall storage unit 123. The browsing information providing unit 111 acquires a mall name, an administrator name of the mall, and the number of applications included in the mall from the mall storage unit 123 on the basis of the acquired mall ID and provides the mall information to the terminal 400 in a list form on the basis of the acquired data. The browsing information providing unit 111 may provide information on the exclusive application 172 included in an application group correlated with a mall selected via the terminal 400 in a list form. More specifically, the browsing information providing unit 111 may extract application product information of the exclusive application 172 by referring to the application storage unit 121 and provide the application product information to the terminal 400.
As another processing method for providing the application product information of the exclusive application 172 correlated with the mall, first, the browsing information providing unit 111 may specify a mall ID including an authorized user ID and an administrator ID on the basis of the user ID included in a received browse request by referring to the mall storage unit 123. When the mall ID is specified, the browsing information providing unit 111 may extract the application product information of the exclusive application 172 correlated with the specified mall ID by referring to the application storage unit 121 and provide the application product information to the terminal 400. In this manner, when an authorization to access a predetermined mall is set to a logged-in user, the browsing information providing unit 111 may provide first the mall information in which an access authorization is set to the user and then provide the information on the general application 171. The browsing information providing unit 111 may provide the general application 171 and the exclusive application 172 which is a mall application simultaneously.
The browsing information providing unit 111 provide price information corresponding to a user level set in advance to an end user or a specialized dealer (an intermediary dealer) in response to an inquiry or browsing of price information (application sales price information) of an application from the end user or the specialized dealer (an intermediary dealer), received from the terminal 400. Specifically, end user price information only is provided to the end user whereas end user price information and wholesale price information for the specialized dealer (an intermediary dealer) are provided to the specialized dealer (an intermediary dealer) or the like. Due to this, the browsing information providing unit 111 checks the user level of a user corresponding to the user ID included in the received browse request by referring to the user storage unit 122.
Here, the user level and the provided price information will be described.
The ordering processing unit 112 has functions corresponding to a distribution authorization notification unit, an ordering screen output unit, and an application distribution information management unit. The ordering processing unit 112 outputs an ordering screen used for ordering an application to the terminal 400 in response to a request from a specialized dealer (an intermediary dealer) or an end user who is authorized to placing an online order, received from the terminal 400, for example. Due to this, the ordering processing unit 112 checks an ordering right of the user ID included in the received ordering request by referring to the user storage unit 122. The ordering processing unit 112 provides the ordering screen only when the user has the ordering right. Here, an ordering process may be executed by the terminal 400 of the higher intermediary dealer (user level 3) only, for example. For example, the ordering processing unit 112 may display a menu screen displayed when a user logs in so that, on the basis of the ID of the logged-in user, only the user who is a higher intermediary dealer, can select ordering. Upon receiving an ordering screen request, the ordering processing unit 112 may determine whether a subsequent process is to be performed on the basis of the user ID. As described above, as for a user having an ordering right, an ordering button or the like may be displayed on the browsing screen 160 so that the user can place an order.
Upon receiving, from the terminal 400, an application purchase request (that is, an edge server ID of the edge server 200 serving as a distribution destination of the application and a license request corresponding to the number of client target edge devices 300) from a user having an ordering right, the ordering processing unit 112 transmits the serial number (a license key) of the application corresponding to the purchase request to the terminal 400. Here, the serial number (a license key) is information for identifying an application to be distributed and indicating that distribution of the application is authorized. More specifically, the ordering processing unit 112 generates a serial number (a license key) of an application corresponding to the purchase request. The ordering processing unit 112 stores ordering processing data including an application ID, an edge server ID of a distribution destination edge server 200, a serial number (a license key) in the distribution management storage unit 124. The ordering processing unit 112 transmits a serial number (a license key) to the terminal 400 of the higher intermediary dealer that has transmitted the purchase request, for example. The serial number (a license key) received from the sales management server system 100 is displayed on the terminal 400 of the higher intermediary dealer that has executed this processing. By doing so, the application sales management system 1000 can notify the higher intermediary dealer that has transmitted the purchase request of the serial number (a license key) for distributing the purchased application.
A lower intermediary dealer or an end user who does not have an ordering right is not notified of the serial number (a license key) from the application sales management system 1000. Therefore, the application sales management system 1000 can prevent a lower intermediary dealer or an end user from downloading applications without paying for the applications. In the present embodiment, although the serial number (a license key) is described as an example of distribution authorization information, the distribution authorization information is not limited to the serial number (a license key).
It has been described that, when the ordering processing unit 112 receives an application purchase request transmitted from the terminal 400 of a user having an ordering right, the ordering processing unit 112 transmits the serial number (a license key) of the application corresponding to the purchase request to the terminal 400. However, a method in which the serial number (a license key) of the application is not transmitted immediately may be considered. For example, when the ordering processing unit 112 receives, from the terminal 400, an application purchase request from the terminal 400 of the user having an ordering right, the ordering processing unit 112 may transmit an email including an ID and a password for logging in an exclusive screen (not illustrated) displaying the serial number (a license key) of an application, for example, to the user who has transmitted the application purchase request as information related to a distribution authorization. When the user displays the exclusive screen and then logs in using the ID and the password described in the email, the ordering processing unit 112 displays the serial number (a license key) on the exclusive screen. The email may include a URL for displaying the exclusive screen in addition to the ID and the password. It is assumed that the address of an email corresponding to a user is registered in the storage unit 120. By doing so, for example, when a third party fraudulently uses the terminal 400 of the user having an ordering right, the serial number is left unknown to the third party and the system can be operated in a mechanism with improved security.
It has been described that the ordering processing unit 112 receives the application purchase request (that is, an edge server ID of the edge server 200 serving as a distribution destination of the application and a license request corresponding to the number of client target edge devices 300) from the user having an ordering right from the terminal 400. However, the application purchase request may not include a license request corresponding to the number of client target edge devices 300. In this case, the control unit 110 of the sales management server system 100 may designate a necessary license based on the number of client target edge devices 300 by referring to the edge server information stored in the storage unit 120 (the user storage unit 122) from the edge server ID.
The distribution processing unit 113 has functions corresponding to an application distribution unit and an application distribution information management unit. Upon receiving an application distribution request together with the serial number (a license key) from the terminal 400, the distribution processing unit 113 specifies an application to be distributed and the distribution destination edge server 200 by referring to the distribution management storage unit 124 on the basis of the serial number (the license key) and distributes the application to the distribution destination edge server 200. More specifically, the distribution processing unit 113 specifies the edge server 200 that distributes the application from the serial number (the license key) in response to an application distribution request from an end user or a specialized dealer (an intermediary dealer), received from the terminal 400. The distribution processing unit 113 distributes the application corresponding to the serial number (the license key) and the license to the specified edge server 200. Here, the license is use authorization information on the edge device 300 serving as a client (that is, a connection and/or input/output target) of the application. The license may be distributed to the edge server 200 in a state of being included in the application. The license may be distributed to the edge server 200 separately from the application.
By doing so, an end user or a lower intermediary dealer can download a purchased application to the specified edge server 200. In this manner, since the distribution processing unit 113 specifies the application and the edge server 200 on the basis of the serial number (the license key) included in the distribution request, a specific user who knows the serial number only can transmit a distribution request. That is, even when a third party transmits a distribution request, an application is not distributed since the third party does not know the serial number. Since the serial number specifies the edge server 200 serving as the application distribution destination, even if a third party happens to know the serial number, the application cannot be distributed to a server other than the specified edge server 200.
The mall processing unit 114 has functions corresponding to a user setting unit and an administrator setting unit. The mall processing unit 114 performs processing on a mall. The mall processing unit 114 creates a mall on the basis of a creation request from the terminal 400 by a specialized dealer such as a machine tool manufacturer, for example, sets a user who is authorized to access the mall, and stores information on the mall in the mall storage unit 123.
[Generation of Mall]
The mall processing unit 114 generates a mall in correlation with an intermediary dealer ID on the basis of a creation request from the terminal 400 of a higher intermediary dealer by a specialized dealer such as a machine tool manufacturer. As described above, a mall is a virtual store that includes an application group including one or more applications and can be created for each application group. By doing so, a specialized dealer (a higher intermediary dealer) such as a machine tool manufacturer can designate a user who is authorized to access the application group for each of the related application groups. Due to this, a specialized dealer (a higher intermediary dealer) such as a machine tool manufacturer can segment users for each application group and can promote sales effectively.
A developer of an application may set an authorization to generate a mall and access the mall. Here, the developer is not limited to a specialized dealer such as a machine tool manufacturer but may be an end user such as an automobile company. Moreover, the developer may be a person who carried out entrusted development (in-house development) on the basis of a request from a specialized dealer such as a machine tool manufacturer.
[User Authorized to Access Mall]
More specifically, the mall processing unit 114 correlates a mall created on the basis of a creation request from a specialized dealer (a higher intermediary dealer) such as a machine tool manufacturer with a user ID authorized to access the mall. For example, the mall processing unit 114 may correlate the exclusive mall 173 with a user authorized to access the mall on the basis of an input from the terminal 400 of a specialized dealer (a higher intermediary dealer) such as a machine tool manufacturer using a mall setting screen or the like (not illustrated). For example, the terminal 400 of the higher intermediary dealer selects a user registration to the exclusive mall 173, for example, from a menu screen (not illustrated). By doing so, the mall processing unit 114 can add a user ID of a user authorized to access to an exclusive mall correlated with a user ID indicating an administrator of the higher intermediary dealer.
As described above, by providing an application grouping function using a mall, a specialized dealer (a higher intermediary dealer) such as a machine tool manufacturer can sell applications developed by itself or in development to end users who are customers thereof. Moreover, the specialized dealer (a higher intermediary dealer) such as a machine tool manufacturer manages the content of the exclusive mall 173 by itself. Due to this, it is possible to secure confidentiality such that users, even an operating company, other than a user who is authorized to access a mall cannot access the exclusive application 172 correlated with the mall (that is, cannot browse applications included in the mall). Moreover, a user who is authorized to access the mall can obtain application information more preferentially than other users who are not authorized to access the mall. Due to this, a user who is authorized to access the mall can use data indicating the operation state related to the edge device 300, data indicating the production state, data indicating the quality state of a product, and data indicating the operating state, for example, earlier than other users. For example, it is particularly effective for the user to obtain information on applications in development earlier than other users.
The contract renewal processing unit 115 has a function corresponding to a contract renewal notification unit. The contract renewal processing unit 115 transmits a notification for renewing the contract of an application downloaded to the edge server 200 to a specialized dealer (an intermediary dealer) who is a purchaser of the application and/or an end user of a license destination of the application, for example, by referring to the distribution management storage unit 124. The terminal notified of by the contract renewal processing unit 115 may be the terminal 400 of a specialized dealer (an intermediary dealer) who is a purchaser of the application and/or the end user of a license destination of the application and may be another terminal (for example, a portable terminal) of a specialized dealer (an intermediary dealer) who is a purchaser of the application and/or the end user of a license destination of the application. As for a notification method, the notification may be displayed on the menu screen and may be transmitted via an email or the like, for example. More specifically, the contract renewal processing unit 115 extracts an edge server ID and an application ID of the edge server 200 of which the next contract renewal notification date has arrived and which is not notified of by a notification completion flag by referring to the distribution management storage unit 124 at predetermined timings (for example, once a week or once a month). The contract renewal processing unit 115 notifies a specialized dealer (an intermediary dealer) who is a purchaser of the application and/or an end user corresponding to the edge server ID of the edge server 200 of a license destination of the application of the fact that renewal of the contract of the application corresponding to the application ID is necessary. Therefore, the contract renewal processing unit 115 can prevent omission of the contract renewal of the user and cause the user to update the contract without forgetting.
The communication unit 130 is a communication control device that transmits and receives data to and from an external device (for example, the edge server 200, the terminal 400, and the like) via the network N1.
Next, a configuration of the edge server 200 will be described.
In the present embodiment, the control unit 210 includes a license control unit 211 as a functional unit based on an application stored in the storage unit 220. The license control unit 211 controls connection and/or input/output to an application and the edge device 300 on the basis of a license related to the application.
More specifically, when an application stored in the application storage unit 221 is activated by the control unit 210, the license control unit 211 reads a license corresponding to the application. The license control unit 211 specifies an edge device 300 which is authorized as a client which is an input/output destination of the application on the basis of the read license. More specifically, for example, the license control unit 211 determines whether the edge device 300 that requests connection to the application satisfies requirements defined in the license on the basis of the license. When the edge device 300 satisfies the requirements defined in the license, the license control unit 211 authorizes the request for connection to the application and controls input/output to the application. When the edge device 300 does not satisfy the requirements defined in the license (for example, exceeds the license), the license control unit 211 rejects the request for connection to the application and prohibits input/output to the application. By doing so, the license control unit 211 can control connection and/or input/output between the edge device 300 and the application distributed to the edge server 200 according to the distributed license.
The storage unit 220 includes an application storage unit 221 that stores applications to be executed by the control unit 210. The application storage unit 221 stores applications distributed from the sales management server system 100 and licenses related to the applications. The communication unit 230 is a communication control device that transmits and receives data to and from an external device (for example, the sales management server system 100 and the like) via the network N1 and transmits and receives data to and from an external device (the edge device 300) via the network N2.
[Modification]
Although it has been described that the edge server 200 stores applications and licenses related to the applications in the application storage unit 221, applications and licenses may be distributed from the sales management server system 100 and be stored separately. Next, a configuration of an edge server 200-2 that stores applications and licenses separately will be described.
The license control unit 211-2 controls connection and/or input/output between the application and the edge device 300 on the basis of the license related to the application stored in a license storage unit 222.
More specifically, when an application stored in the application storage unit 221-2 is activated by the control unit 210-2, the license control unit 211-2 extracts a license corresponding to the application from the license storage unit 222. The license control unit 211-2 specifies the edge device 300 authorized as a client which is an input/output destination of the application on the basis of the extracted license, authorizes the request for connection to the application so as to satisfy the requirements defined in the license, and controls input/output to the application. By doing so, the license control unit 211-2 can control connection and/or input/output between the edge device 300 and the application distributed to the edge server 200 according to the distributed license.
The storage unit 220-2 includes an application storage unit 221-2 that stores an application to be executed by the control unit 210-2 and the license storage unit 222. The application storage unit 221-2 stores an application distributed from the sales management server system 100. The license storage unit 222 stores a license related to the application distributed simultaneously with the application from the sales management server system 100.
Hereinabove, the functional blocks included in the sales management server system 100 and the edge server 200 have been described. The respective devices included in the application sales management system 1000 can be realized by hardware, software, or a combination thereof. Here, a device being realized by software means that a computer reads and executes a program (an application) whereby the device is realized. As a specific example, the sales management server system 100 and the edge server 200 can be realized by incorporating a program (an application) for realizing the present embodiment in an ordinary server.
Next, the flow of a process of purchasing an application using the application sales management system 1000 on the basis of a conventional business practice will be described on the basis of
In step S1 (hereinafter step S will be referred to simply as “S”) in
Next, the relationship between each user and the application sales management system 1000 in each step will be described.
In correspondence to S1 in
The end user browses application information output from the terminal 400 as a response to the browse request. After browsing the application information, the end user determines an application to be purchased on the basis of a configuration of the edge device 300 provided in a plant facility thereof, the price information of the application, and the like. After that, the end user asks for an estimation to a lower intermediary dealer who is in direct transaction with the end user according to a conventional business practice. The end user may ask for competitive bids to a plurality of lower intermediary dealers. The estimation is not the target of processing of the application sales management system 1000. The end user receives an estimate sheet from the lower intermediary dealer. The end user determines an application to be purchased.
The lower intermediary dealer browses the application information output to the terminal 400 as a response to the browse request in response to an estimation request from the end user or in order to find an application useful for the end user. Moreover, the lower intermediary dealer receives an estimation request from the end user and asks for an estimation to a higher intermediary dealer who is in direct transaction. The lower intermediary dealer receives an estimate from the higher intermediary dealer. The lower intermediary dealer creates an estimate for the end user and provides an estimate sheet to the end user. Furthermore, the lower intermediary dealer may provide information on an application useful for the end user to the end user.
The higher intermediary dealer browses the application information output to the terminal 400 as a response to the browse request in response to the estimation request from the lower intermediary dealer or in order to find an application useful for the lower intermediary dealer. Moreover, the higher intermediary dealer receives an estimation request from the lower intermediary dealer, creates an estimate sheet for the lower intermediary dealer, and provides the estimate sheet to the lower intermediary dealer. Furthermore, the higher intermediary dealer may provide information on an application useful for the lower intermediary dealer to the lower intermediary dealer.
In correspondence to S2 in
As illustrated in
When an order is placed, the sales management server system 100 may transmit an email including an ID and a password for logging in an exclusive screen (not illustrated) for displaying the serial number of an application, for example, on another terminal (or the terminal 400) of the higher intermediary dealer to the higher intermediary dealer. In this manner, the serial number of the ordered application may not be informed of directly by the higher intermediary dealer as a response to the ordering process. When a user logs in from the exclusive screen using the ID and the password included in the email, the sales management server system 100 displays the serial number on the exclusive screen. The email may include a URL for displaying the exclusive screen in addition to the ID and the password for logging in the exclusive screen.
In correspondence to S3 in
In correspondence to S4 in
Next, a process flow of the sales management server system 100 in the respective steps will be described. First, the flow of an application browsing process will be described.
In order to browse the application information, each user operates the terminal 400 to log in the sales management server system 100. Here, login is performed using an existing method, and user authentication is performed using such as a password management file including personal information of a user, an ID, a password, and the like, for example, to ascertain that the user is an authorized user. The user selects browsing of applications from the menu screen (not illustrated) displayed on the terminal 400. In S10, the browsing information providing unit 111 of the sales management server system 100 receives a browse request transmitted by the terminal 400. In S11, the browsing information providing unit 111 checks the user level of the user ID included in the received browse request by referring to the user storage unit 122. In S12, the browsing information providing unit 111 specifies a mall ID in which the received user ID is included in an authorized user ID or an administrator ID by referring to the mall storage unit 123.
In S13, the browsing information providing unit 111 extracts an application including the mall ID specified in S12 by referring to the application storage unit 121. The browsing information providing unit 111 extracts an application in which the mall ID is blank by referring to the application storage unit 121. In S14, the browsing information providing unit 111 extracts information on the extracted application from the application storage unit 121 and generates the browsing screen 160. In this case, the browsing information providing unit 111 extracts the price information corresponding to the user level ascertained in S11 from the application storage unit 121. In S15, the browsing information providing unit 111 transmits the generated browsing screen 160 to the terminal 400 that has transmitted the browse request. After that, the sales management server system 100 ends this process.
Next, the flow of an application ordering process will be described.
In S21, the ordering processing unit 112 transmits an ordering screen to the terminal 400 that has transmitted the request. The ordering screen may be similar to the browsing screen 160 illustrated in
In S23, the ordering processing unit 112 generates a serial number of an application corresponding to the purchase request. The ordering processing unit 112 stores data corresponding to respective items including the serial number in the distribution management storage unit 124. In S24, the ordering processing unit 112 transmits the serial number to the terminal 400 of the higher intermediary dealer who has transmitted the purchase request. After that, the ordering processing unit 112 ends this process.
In the above-described flowchart, although the serial number is transmitted directly in response to an ordering request, an ID and a password for logging in the exclusive screen for displaying the serial number may be transmitted.
Next, the flow of an application distribution process will be described.
In S30, the distribution processing unit 113 of the sales management server system 100 receives the distribution request from the terminal 400. Here, an end user may transmit the distribution request using the terminal 400 of the end user, or the lower intermediary dealer may transmit the distribution request using the terminal 400 of the lower intermediary dealer. S31, the distribution processing unit 113 specifies an application and the edge server 200 to which the application is distributed by referring to the distribution management storage unit 124 on the basis of the serial number included in the distribution request.
In S32, the distribution processing unit 113 distributes the specified application to the specified edge server 200. In this case, the distribution processing unit 113 sets a next contract renewal notification date on the basis of the calculated next contract renewal date and at an appropriate date (for example, one month before an expiration date). When an application is sold out (that is, when renewal of a contract is not necessary), the next contract renewal notification date is left blank. In S33, the distribution processing unit 113 transmits a notification of completion of distribution to the terminal 400 that has transmitted the distribution request when distribution of an application to the edge server 200 is completed. After that, the distribution processing unit 113 ends this process.
Next, the flow of an application renewal process will be described.
In S41, the contract renewal processing unit 115 notifies a user (an application purchaser and an application user) corresponding to the edge server ID of a fact that renewal of the contract of an application corresponding to the application ID is necessary using a notification destination address. After that, the contract renewal processing unit 115 ends this process.
Next, a process flow in the edge server 200 in which a downloaded application is activated will be described.
In S50 in
In S52, the license control unit 211 designates an authorized edge device 300 on the basis of the read license 250. In the example illustrated in
In S53, the license control unit 211 determines whether the edge device 300 corresponding to the received data is a designated device. In the case of
In S55, the control unit 210 determines whether an application termination command has been received. The control unit 210 determines that an application termination command has been received when an operation of turning off the edge server 200 is received or an operation of forcibly terminating the application is received, for example. When an application termination command is received (S55: YES), the control unit 210 terminates the application. On the other hand, when an application termination command is not received (S55: NO), the license control unit 211 proceeds to S52. In the case of
Next, the process in the edge server 200-2 in which a downloaded application operates will be described.
In this way, the application sales management system 1000 can purchase and download an application to be operated in the edge server 200 from the sales management server system 100.
In this case, since the sales management server system 100 control the executability of a process related to purchase of applications and the like on the basis of the user level and an ordering right of a user, it is possible to facilitate the purchase of applications using the application sales management system 1000 while making use of a conventional business practice.
The programs as well as the applications used in the present invention may be stored using various types of non-transitory computer readable media and be supplied to a computer. The non-transitory computer readable media include various types of tangible storage media. Examples of the non-transitory computer readable media include a magnetic recording medium (for example, a flexible disk, magnetic tape, or a hard disk drive), a magneto-optical recording medium (for example, a magneto-optical disk), a CD read only memory (CD-ROM), a CD-R, a CD-R/W, and a semiconductor memory (for example, a mask ROM, a programmable ROM (PROM), an erasable PROM (EPROM), a flash ROM, or a random access memory (RAM)). Moreover, the programs may be supplied to a computer in a form of various types of transitory computer readable media. Examples of transitory computer readable media include electrical signals, optical signals, and electromagnetic waves. The transitory computer readable media can supply programs to a computer via a wired communication path such as an electric wire and an optical fiber or a wireless communication path.
The above-described embodiment is a preferred embodiment of the present invention. However, the scope of the present invention is not limited to the embodiment only but the present invention can be embodied in various modifications without departing from the spirit of the present invention.
In the above-described embodiment, the number of edge devices 300 authorized as a client which is an input/output destination of an application distributed to the edge server 200 is the number of edge devices 300 communicably connected to the edge server 200, set by the license. However, the present invention is not limited thereto. For example, when a plurality of edge devices 300 is connected to the edge server 200 via a controller, the use of the plurality of edge devices 300 connected to the controller may be authorized using the controller as one license, and each of the plurality of edge devices 300 connected to the controller may be authorized as the controller as one license. Such control may be designated for respective applications.
In the above-described embodiment, a user is correlated with a user level and the price information displayed to a user is controlled according to the user level. Moreover, an ordering right is set in advance to a user and an ordering process is controlled. However, the present invention is not limited thereto. For example, users who can purchase applications may be managed by a purchaser management unit, and during execution of an ordering process, when a user is determined to be authorized to place an order on the basis of the purchaser management unit, ordering of applications may be authorized. Moreover, the purchaser management unit may manage password information (specific password information) known to a user only, and a comparing unit that compares password information received by a receiving unit when a user places an order with the password information managed by the purchaser management unit may be provided so that ordering of applications is authorized when both pieces of password information match to thereby prevent fraud of other persons.
In the embodiment based on the conventional business practice, the user level is classified into three levels (an end user, a lower intermediary dealer, and a higher intermediary dealer), and a person capable of performing an application ordering process (that is, a person having an ordering right) is the higher intermediary dealer only. However, the present invention is not limited thereto. For example, the ordering right may be set for respective users on the basis of the creditability of individual users regardless of the user level. Moreover, the ordering right may be set to all higher intermediary dealers, and the ordering right may be set to the end user and the lower intermediary dealer on the basis of the creditability or the like of the individual users. Similarly, the ordering right may be set to all higher intermediary dealers and all lower intermediary dealers, and the ordering right may be set to an end user on the basis of the creditability or the like of individual users. Moreover, since a user ID for accessing the application sales management system 1000 is assigned to users who satisfy predetermined requirements (qualifications or the like), the ordering right may be set to all users assigned with user IDs. In any case, an end user transmits an application ordering request to an intermediary dealer such as a system integrator, for example, so that the end user does not place an order directly to the sales management server system 100. By doing so, the end user can ask an intermediary dealer such as a system integrator to set environments of hardware and software when using applications.
In the embodiment described above, the user level is classified into three levels (an end user, a lower intermediary dealer, and a higher intermediary dealer).
However, the present invention is not limited thereto. The user level may be classified into two levels or four or more levels according to a business practice.
In the embodiment described above, a serial number (a license key) is used as distribution authorization information. However, the present invention is not limited thereto. The distribution authorization information may be information for authorizing distribution of applications.
In the embodiment described above, various pieces of information are stored in the storage unit 120 of the sales management server system 100. The pieces of information stored in the storage unit are examples only, and other pieces of information may be included. Moreover, a data retention method is an example only.
Number | Date | Country | Kind |
---|---|---|---|
2017-139712 | Jul 2017 | JP | national |