Information processing apparatus, system, information processing method, and program

The information processing system addresses the issue of inappropriate organizational app recommendations by identifying user organizations and recommending applications based on organizational attributes, ensuring relevance for business use.

JP2025144513APending Publication Date: 2025-10-02RICOH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024206024
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-19
Filing Date
2024-11-27
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

Conventional application recommendation technologies do not adequately consider the organizational context of users, leading to inappropriate application suggestions for business use within organizations.

Method used

An information processing system that identifies the organization a user belongs to and recommends applications based on the organization's attributes, using a multi-tenant system to provide tailored app suggestions.

Benefits of technology

Enables effective recommendation of applications suitable for organizational use by leveraging organization-specific attributes, enhancing the relevance of app suggestions for users within their business context.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025144513000001_ABST
    Figure 2025144513000001_ABST
Patent Text Reader

Abstract

To recommend an application according to an organization to which a user belongs.SOLUTION: An information processing apparatus configured to communicate with a terminal device over a network includes: a user identification unit which identifies a user who operates the terminal device; an organization identification unit which identifies an organization that the user belongs to; an attribute acquisition unit which acquires attribute information regarding an attribute of the identified organization; an extraction unit which extracts one or more applications to be recommended to the user, out of a plurality of applications available to the user, based on the acquired attribute information; and an output unit which transmits, to the terminal device, control information for causing the terminal device to display application information pertaining to the extracted one or more applications and including at least application identification information identifying each of the one or more applications.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing device, a system, an information processing method, and a program. [Background technology]

[0002] There are known technologies for recommending applications to users. For example, Patent Document 1 discloses a recommendation system that classifies the tendency of users' application usage frequencies into clusters and recommends applications to target users based on the usefulness of the applications in the clusters and recommendation conditions. Summary of the Invention [Problem to be solved by the invention]

[0003] However, the conventional technology leaves room for more appropriate application recommendations. For example, the conventional technology does not assume that a user belonging to an organization will recommend an application to be used in the organization's business.

[0004] In view of the above technical problems, an embodiment of the present invention aims to recommend an application according to the organization to which a user belongs. [Means for solving the problem]

[0005] An information processing device according to one embodiment of the present invention is an information processing device capable of communicating with a terminal device via a network, and includes: a user identification unit that identifies a user operating the terminal device; an organization identification unit that identifies the organization to which the user belongs; an attribute acquisition unit that acquires attribute information relating to the attributes of the identified organization; an extraction unit that extracts, based on the acquired attribute information, one or more applications to be recommended to the user from among a plurality of applications available to the user; and an output unit that transmits control information to the terminal device to cause the terminal device to display app information relating to the extracted one or more applications, the app information including at least app identification information that identifies each of the one or more applications. [Effects of the Invention]

[0006] According to one embodiment of the present invention, it is possible to recommend an application according to the organization to which the user belongs. [Brief explanation of the drawings]

[0007] [Figure 1] 1 is a schematic diagram illustrating an example of an overall configuration of an information processing system according to an embodiment. [Figure 2] FIG. 2 is a block diagram illustrating an example of a hardware configuration of a computer according to an embodiment. [Figure 3] FIG. 1 is a block diagram illustrating an example of a functional configuration of an information processing system according to an embodiment. [Figure 4] FIG. 3 is a diagram showing an example of user information according to the first embodiment. [Figure 5] FIG. 3 is a diagram illustrating an example of tenant information according to the first embodiment. [Figure 6] FIG. 4 is a diagram illustrating an example of application information according to the first embodiment. [Figure 7] FIG. 4 is a sequence diagram illustrating an example of a registration process according to the first embodiment. [Figure 8] FIG. 3 is a diagram showing an example of an application management screen according to the first embodiment. [Figure 9] FIG. 4 is a diagram showing an example of an application registration screen according to the first embodiment. [Figure 10] FIG. 4 is a sequence diagram showing an example of a recommendation process according to the first embodiment. [Figure 11] FIG. 4 is a diagram showing an example of a login screen according to the first embodiment. [Figure 12] FIG. 2 is a diagram showing an example of a portal screen according to the first embodiment. [Figure 13] FIG. 4 is a diagram showing an example of an application addition screen according to the first embodiment. [Figure 14] FIG. 3 is a diagram showing an example of a recommendation screen according to the first embodiment. [Figure 15] FIG. 11 is a diagram showing an example of user information according to the second embodiment. [Figure 16] FIG. 11 is a diagram illustrating an example of application information according to the second embodiment. [Figure 17] FIG. 10 is a sequence diagram showing an example of a screen display process according to Modification 2. [Figure 18] FIG. 11 is a diagram showing an example of a recommendation screen according to Modification 2. DETAILED DESCRIPTION OF THE INVENTION

[0008] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, components having the same functions are designated by the same reference numerals, and redundant description will be omitted.

[0009] [First embodiment] One embodiment of the present invention is an information processing system that provides applications to users. The applications may be, for example, web applications executed on a browser or native applications installed and executed on a computer. In this embodiment, an example will be described in which the information processing system provides web applications. Applications include not only applications for performing tasks such as document generation, table management, and video editing, and applications for communication such as telephone calls, video calls, and conferences, but also other general applications and games. Games include online games and games installed and executed on a game console.

[0010] In this embodiment, the information processing system provides applications to users through an online market. The online market is an information and communication service that accepts application registrations and provides registered applications to users via a communication network. The online market may provide applications that are available free of charge, or may provide applications that are available for a fee. Hereinafter, the online market in this embodiment will be referred to as an "app market." App markets include, for example, the Google (registered trademark) Play Store and the Apple (registered trademark) Store.

[0011] In this embodiment, the app market provides applications that users belonging to an organization use in the organization's business. An organization is a group of multiple members who perform specific tasks. An organization may include a department within an organization or a complex of multiple organizations. Examples of organizations include companies, educational institutions, local governments, and unions. In this embodiment, an example will be described in which the organization is a company and the users are employees of that company.

[0012] In this embodiment, the app market has a function of recommending applications to users. Conventionally, there are known technologies that recommend applications suitable for users based on the user's attribute information, user usage history, and the like. However, when recommending applications to users belonging to an organization for use in the organization's business, even if applications are extracted based on the user's personal attribute information or usage history, it may not be possible to recommend an appropriate application. Furthermore, for example, when a user first uses the app market, it may not be possible to obtain the user's usage history, and so on. By extracting applications based on information about the organization, it is possible to recommend applications for use in the organization's business.

[0013] The present embodiment aims to recommend applications according to the organization to which the user belongs. To this end, in the present embodiment, attribute information related to the organization to which the user belongs is acquired, and applications to be recommended to the user are extracted based on the acquired attribute information. In one aspect, according to the present embodiment, applications are extracted based on the attribute information related to the organization to which the user belongs, so that applications used in the organization's business can be recommended to the user.

[0014] Here, recommending an application is not limited to explicitly indicating to the user that the application is a recommended application. Examples of not explicitly indicating to the user that the application is a recommended application include, for example, displaying recommended applications in order from the top of the page without explicitly indicating that they are recommended. Another example includes first displaying only recommended applications without explicitly indicating that they are recommended, and then displaying applications other than the recommended applications through a user operation.

[0015] <Overall configuration of information processing system> The overall configuration of an information processing system according to this embodiment will be described with reference to Fig. 1. Fig. 1 is a schematic diagram showing an example of the overall configuration of an information processing system according to an embodiment.

[0016] 1, the information processing system 1000 includes an information processing device 10, a terminal device 20, and a terminal device 30. The information processing device 10, the terminal device 20, and the terminal device 30 are each connected to a communication network N. The communication network N is configured so that the connected devices can communicate with each other.

[0017] The communication network N is constructed by a network using wired communication, such as the Internet, a local area network (LAN), or a wide area network (WAN). The communication network N may include not only wired communication but also wireless communication, such as a wireless LAN or short-range wireless communication, or a network using mobile communication, such as WiMAX (Worldwide Interoperability for Microwave Access), LTE (Long Term Evolution), or 5G (5th Generation).

[0018] The information processing device 10 is an example of an information processing device that provides an application market to users U who belong to an organization A. The information processing device 10 may be, for example, a computer such as a personal computer, a workstation, or a server.

[0019] In this embodiment, the application market is a multi-tenant system. In a multi-tenant system, multiple tenants (e.g., service users such as companies or customers) share resources, and an account can be created for each tenant. In an application market based on a multi-tenant system, it is preferable to create a tenant for each organization A to which a user U belongs.

[0020] The application market may set connection destination information for each tenant. The connection destination information may be, for example, a uniform resource locator (URL) or a domain name. As an example, the application market may embed identification information (tenant ID) that identifies the tenant in a URL for connecting to a login screen. The information processing device 10 can identify the tenant to which the user U belongs (i.e., organization A) based on the connection destination information used to connect to the login screen.

[0021] The app market may accept input of identification information (tenant ID) that identifies a tenant on a login screen. The login screen may accept input of the tenant ID as part of authentication information. When user U logs in to the app market, the information processing device 10 can identify the tenant to which user U belongs (i.e., organization A) based on the authentication information entered by user U.

[0022] The terminal device 20 is an example of an information processing terminal operated by a user U. The user U belongs to a specific organization A and performs business for the organization A by operating the terminal device 20. The terminal device 20 may be installed in a facility such as an office where business for the organization A is performed, or may be carried by the user U when performing business for the organization A. The terminal device 20 may be, for example, a computer such as a personal computer, a smartphone, or a tablet terminal.

[0023] The terminal device 30 is an example of an information processing terminal operated by a developer D. The developer D is a user who develops applications and registers the completed applications in an app market. The developer D does not have to belong to a specific organization A. The developer D may be, for example, an administrator of the information processing system 1000. The terminal device 30 may be, for example, a computer such as a personal computer, a smartphone, or a tablet terminal.

[0024] The terminal device 20 and the terminal device 30 are not limited to information processing devices as long as they are devices equipped with a communication function. The terminal device 20 and the terminal device 30 may be, for example, an image forming device (printer, fax machine, MFP (Multifunction Peripheral / Product / Printer: digital multifunction machine), scanner device), PJ (Projector: projector), IWB (Interactive White Board: white board with electronic blackboard function capable of mutual communication), output device such as digital signage, HUD (Head Up Display) device, industrial machinery, imaging device, sound collection device, medical equipment, network home appliance, automobile (Connected Car), notebook PC (Personal Computer), mobile phone, smartphone, tablet terminal, game console, PDA (Personal Digital Assistant), digital camera, wearable PC, desktop PC, etc.

[0025] The overall configuration of the information processing system 1000 shown in Fig. 1 is one example, and various system configuration examples are possible depending on the application and purpose. For example, the information processing system 1000 may include multiple units of one or more of the information processing device 10, the terminal device 20, and the terminal device 30. For example, the information processing device 10 may be realized by multiple computers, or may be realized as a cloud computing service. The classification of devices such as the information processing device 10, the terminal device 20, and the terminal device 30 shown in Fig. 1 is one example.

[0026] <Hardware configuration of information processing system> The hardware configuration of the information processing system 1000 will be described with reference to FIG.

[0027] Computer The information processing device 10, the terminal device 20, and the terminal device 30 may be realized by a computer. Fig. 2 is a block diagram showing an example of the hardware configuration of a computer according to an embodiment.

[0028] As shown in FIG. 2, the computer 500 includes a CPU 501, a ROM 502, a RAM 503, a HD (Hard Disk) 504, a HDD (Hard Disk Drive) controller 505, a display 506, an external device connection I / F (Interface) 508, a network I / F 509, a bus line 510, a keyboard 511, a pointing device 512, a DVD-RW (Digital Versatile Disk Rewritable) drive 514, and a media I / F 516.

[0029] Of these, the CPU 501 controls the overall operation of the computer 500. The ROM 502 stores programs used to drive the CPU 501, such as the IPL. The RAM 503 is used as a work area for the CPU 501. The HD 504 stores various data such as programs. The HDD controller 505 controls the reading and writing of various data from and to the HD 504 under the control of the CPU 501.

[0030] The display 506 displays various types of information such as a cursor, menus, windows, characters, or images. The external device connection I / F 508 is an interface for connecting various types of external devices. In this case, the external devices are, for example, USB (Universal Serial Bus) memories, printers, etc. The network I / F 509 is an interface for data communication using the communication network N. The bus line 510 is an address bus, data bus, etc. for electrically connecting each component such as the CPU 501.

[0031] The keyboard 511 is a type of input means having multiple keys for inputting characters, numbers, various instructions, etc. The pointing device 512 is a type of input means for selecting and executing various instructions, selecting a processing target, moving a cursor, etc. The DVD-RW drive 514 controls reading and writing of various data from a DVD-RW 513, which is an example of a removable recording medium. Note that this is not limited to a DVD-RW, and may be a DVD-R, etc. The media I / F 516 controls reading and writing (storing) of data from a recording medium 515, such as a flash memory.

[0032] <Functional configuration of information processing system> The functional configuration of the information processing system 1000 will be described with reference to Fig. 3 to Fig. 6. Fig. 3 is a block diagram showing an example of the functional configuration of the information processing system according to an embodiment.

[0033] <Information processing device> As shown in FIG. 3, the information processing device 10 includes a user memory unit 101, a tenant memory unit 102, an application memory unit 103, a registration unit 110, a request reception unit 120, a user identification unit 130, an organization identification unit 140, an attribute acquisition unit 150, an extraction unit 160, and an output unit 170.

[0034] The user storage unit 101, the tenant storage unit 102, and the application storage unit 103 are realized, for example, by using the HD 504 shown in Fig. 2. Reading or writing of data stored in the HD 504 is performed via, for example, an HDD controller 505.

[0035] The registration unit 110, request reception unit 120, user identification unit 130, organization identification unit 140, attribute acquisition unit 150, extraction unit 160 and output unit 170 are realized, for example, by processing executed by the CPU 501 and network I / F 509 of a program expanded from ROM 502 shown in Figure 2 onto RAM 503.

[0036] The user storage unit 101 stores user information about the user U for each tenant. The user information includes identification information (user ID) for identifying the user U and authentication information for authenticating the user U.

[0037] (User information) Fig. 4 is a diagram showing an example of user information according to the first embodiment. As shown in Fig. 4, the user information includes data items such as a user ID, a name, and a password. The user ID and password are examples of authentication information.

[0038] The tenant storage unit 102 stores tenant information about organization A. The tenant information includes, as data items, identification information (tenant ID) for identifying organization A and attribute information indicating attributes of organization A. The attribute information of organization A may include information indicating the type of business and information indicating the size of organization A.

[0039] Organizational attributes represent the nature and characteristics of an organization. We will explain the nature and characteristics of an organization using industry as an example. Industry indicates the type of business a company or individual operates. Examples of business types include construction, manufacturing, fishing, agriculture, and finance. Industry types may conform to the Japan Standard Industrial Classification published by the Ministry of Internal Affairs and Communications, for example, or may be based on other unique classifications. In the case of a university or other school, organizational attributes may be majors such as faculties or departments.

[0040] (Tenant information) FIG. 5 is a diagram showing an example of tenant information according to the first embodiment. As shown in FIG. 5, the tenant information has, as data items, a tenant ID, a name, an industry, the number of employees, and annual sales. The name, the industry, the number of employees, and the annual sales are examples of attribute information related to organization A. The industry is an example of information indicating the industry. The number of employees and the annual sales are examples of information indicating the scale. Note that the information indicating the industry may be automatically set by inferring it from a character string included in the name when the tenant information is stored.

[0041] The application storage unit 103 stores applications provided in the application market and application information related to the applications. The application information includes identification information (application ID) that identifies the application, classification information that indicates the classification of the application, and recommendation conditions that indicate conditions for recommending the use of the application. The recommendation conditions may include conditions related to attribute information included in the tenant information. The application information is an example of setting information that associates an application with recommendation conditions.

[0042] (App information) Fig. 6 is a diagram showing an example of application information according to the first embodiment. As shown in Fig. 6, the application information includes, as data items, an application ID, a name, an industry, a purpose, a registration date and time, a registrant, a status, etc. The industry is an example of a recommendation condition, and is a condition related to the industry of the tenant information. The purpose is an example of classification information.

[0043] The registration date and time is the date and time when the application was registered in the application market. If an application stored in the application storage unit 103 is updated, the registration date and time may be the date and time when the application was updated to the latest version. The registrant is identification information that identifies the developer D who registered the application. The status is information that indicates the registration status of the application. The registration status may include, for example, registered, awaiting review, deleted, etc.

[0044] In response to a request from the terminal device 30, the registration unit 110 stores the application and application information related to the application in the application storage unit 103. The application and application information are input to the terminal device 30 by the developer D.

[0045] The request receiving unit 120 receives a request from the terminal device 20 or the terminal device 30. The request receiving unit 120 may receive a request for authentication of the user U and a request for acquiring various screens from the terminal device 20. The request receiving unit 120 may receive a request for registration of an application and a request for acquiring various screens from the terminal device 30.

[0046] The user identification unit 130 identifies the user U who operates the terminal device 20. The user identification unit 130 may identify the user U based on authentication information input by the user U to the terminal device 20. The authentication information may be, for example, a user ID and a password. The authentication information may include a tenant ID. The user identification unit 130 authenticates the user U by comparing the authentication information input by the user U with the authentication information included in the user information read from the user storage unit 101. The user identification unit 130 identifies the user U who has been successfully authenticated as the user U who operates the terminal device 20.

[0047] The user identification unit 130 stores information (e.g., a user ID) indicating the identified user U in the terminal device 20. As an example, the user identification unit 130 may store the user ID in a session storage of a browser of the terminal device 20. The user identification unit 130 may store the user ID in a storage device such as the RAM 503 or HDD 504 of the terminal device 20.

[0048] The organization identification unit 140 identifies the organization A to which the user U identified by the user identification unit 130 belongs. The organization identification unit 140 may identify the organization A based on the connection destination information of the terminal device 20. The organization identification unit 140 may also identify the organization A based on the authentication information input by the user U to the terminal device 20.

[0049] The organization identification unit 140 stores information indicating the identified organization A (for example, a tenant ID) in the terminal device 20. As an example, the organization identification unit 140 may store the tenant ID in a session storage of a browser of the terminal device 20. The organization identification unit 140 may store the tenant ID in a storage device such as the RAM 503 or HDD 504 of the terminal device 20.

[0050] The attribute acquiring unit 150 acquires attribute information about the organization A identified by the organization identifying unit 140. The attribute acquiring unit 150 may read the attribute information about the organization A identified by the organization identifying unit 140 from the tenant storage unit 102.

[0051] The extraction unit 160 extracts applications to be recommended to the user U based on the attribute information related to the organization A acquired by the attribute acquisition unit 150. For example, the extraction unit 160 extracts one or more applications to be recommended to the user U from among applications available to the user U, based on the attribute information related to the organization A. Specifically, the extraction unit 160 extracts one or more pieces of app information, of which attribute information related to the organization A satisfies a recommendation condition, from among the app information read from the app storage unit 103.

[0052] The output unit 170 outputs control information for causing the terminal device 20 to display information about applications recommended to the user U, based on the app information extracted by the extraction unit 160. The output unit 170 may transmit the output control information to the terminal device 20.

[0053] The control information is, for example, screen data for displaying a screen on the display 506 of the terminal device 20. The screen data is, for example, electronic data written in HTML (HyperText Markup Language) or the like, and may include a program written in a script language such as JavaScript (registered trademark). A list of applications recommended for the user U may be embedded in the screen data.

[0054] The control information may cause the terminal device 20 to display information related to applications based on predetermined display rules. The display rules may be rules indicating the number and order of applications to be displayed on the terminal device 20. The display rules may include rules related to the registration dates and times of applications. For example, the display rules may be rules for displaying the 10 applications in descending order of the most recently registered dates and times. For another example, the display rules may be rules for displaying the 10 applications in descending order of the number of applications offered in the app market.

[0055] Terminal Device As shown in FIG. 3, the terminal device 20 and the terminal device 30 include a display control unit 210 and a communication control unit 220.

[0056] The display control unit 210 and the communication control unit 220 are realized by, for example, processing that is executed by the CPU 501 and the network I / F 509 in accordance with a program loaded from the ROM 502 onto the RAM 503 shown in FIG.

[0057] The display control unit 210 controls the display of a screen provided by the application market on the display 506 based on the screen data received from the information processing device 10. The display control unit 210 may be an application having a browser function. The application having a browser function may be a web browser pre-installed in the terminal device 20, or an application that displays web content using a WebView function.

[0058] The display control unit 210 of the terminal device 20 may display, for example, a login screen, a portal screen, an application addition screen, and a recommendation screen on the display 506. The login screen, the portal screen, the application addition screen, and the recommendation screen may be displayed, for example, in an application having a browser function that is pre-installed on the terminal device 20.

[0059] The display control unit 210 of the terminal device 30 may, for example, display an application management screen and an application registration screen on the display 506. The application management screen and the application registration screen may, for example, be displayed on an application having a browser function that is pre-installed on the terminal device 30.

[0060] The communication control unit 220 controls communication with the information processing device 10. The communication control unit 220 of the terminal device 20 may transmit authentication information to the information processing device 10. The communication control unit 220 of the terminal device 30 may transmit application information to the information processing device 10. The communication control unit 220 may receive screen data from the information processing device 10.

[0061] <Information processing system processing procedure> The processing procedure of the information processing method executed by the information processing system 1000 will be described with reference to Fig. 7 to Fig. 14. The information processing method includes a registration process (see Fig. 7) and a recommendation process (see Fig. 10).

[0062] <<Registration process>> 7 is a sequence diagram showing an example of registration processing according to the first embodiment. The registration processing is processing for registering an application in the application market.

[0063] In step S1, developer D creates an application to be registered in the app market. As one example, developer D may create the application by operating a development screen provided by information processing device 10. As another example, developer D may create the application by using a development tool pre-installed in terminal device 30.

[0064] In step S2, developer D performs an operation to open the application management screen on the terminal device 30. Prior to the operation to open the application management screen, developer D may perform an operation to log in to the application market. In response to the operation by developer D, the communication control unit 220 of the terminal device 30 transmits a request to acquire the application management screen to the information processing device 10.

[0065] The request receiving unit 120 of the information processing device 10 receives a request to acquire an app management screen from the terminal device 30. The request receiving unit 120 notifies the output unit 170 of the request to acquire the app management screen. In response to the request to acquire the app management screen, the output unit 170 transmits screen data for displaying the app management screen to the terminal device 30. App information stored in the app storage unit 103 is embedded in the screen data. The display control unit 210 of the terminal device 30 displays the app management screen on the display 506 based on the screen data received from the information processing device 10.

[0066] (App management screen) Fig. 8 is a diagram showing an example of an application management screen according to the first embodiment. As shown in Fig. 8, the application management screen 600 has a list display area 601, a status selection field 602, an add button 603, and a cancel button 604.

[0067] The list display area 601 displays a list of applications registered in the app market. The list display area 601 displays the registration date, name, industry, purpose, summary, etc. for each registered application. The registration date, name, industry, purpose, and summary correspond to the registration date and time, name, industry, purpose, and summary included in the app information, respectively.

[0068] The app information of the application may be updated by an operation on the list display area 601. As an example, when developer D performs an operation to select an application in the list display area 601 (for example, double-clicking), the screen may transition to an app registration screen for updating the application.

[0069] The status selection field 602 is a screen component for selecting the status of an application to be displayed in the list display area 601. When a status is selected in the status selection field 602, only the applications with the selected status are displayed in the list display area 601. While Fig. 8 shows an example in which the status selection field 602 is configured as a combo box from which one option can be selected, the status selection field 602 may also be configured as a screen component from which multiple options can be selected.

[0070] The add button 603 is a button for adding an application. When the developer D presses the add button 603, an application registration screen for registering a new application is displayed on the display 506.

[0071] The cancel button 604 is a button for closing the application management screen 600. When developer D presses the cancel button 604, the application management screen 600 closes.

[0072] (App registration screen) Fig. 9 is a diagram showing an example of an application registration screen according to Embodiment 1. As shown in Fig. 9, an application registration screen 610 has a name input field 611, a summary input field 612, an industry selection field 613, a use selection field 614, a register button 615, and a cancel button 616.

[0073] The name input field 611 accepts input of the name of the application, and the summary input field 612 accepts input of a summary of the application.

[0074] The industry selection field 613 accepts the selection of an industry for which the use of the application is recommended. The industry selection field 613 displays options for predetermined industries. The industry selection field 613 accepts the selection of one or more options from the displayed options. The industry selection field 613 may also accept the selection of multiple options from the displayed options. While FIG. 9 shows an example in which the industry selection field 613 is configured as a list box from which multiple options can be selected, the industry selection field 613 may be configured as any screen component as long as it is a screen component from which multiple options can be selected.

[0075] The purpose selection field 614 accepts the selection of the purpose of the application. The purpose selection field 614 displays options for predetermined purposes. The purpose selection field 614 accepts the selection of one or more options from the displayed options. The purpose selection field 614 may also accept the selection of multiple options from the displayed options. While FIG. 9 shows an example in which the purpose selection field 614 is configured as a list box from which multiple options can be selected, the purpose selection field 614 may be configured as any screen component that allows multiple options to be selected.

[0076] When registering a new application, the name input field 611, summary input field 612, industry selection field 613, and use selection field 614 are displayed in their initial states. When updating an existing application, the name input field 611, summary input field 612, industry selection field 613, and use selection field 614 display the name, summary, industry, and use of the existing application.

[0077] The registration button 615 is a button for requesting registration of an application. When developer D presses the registration button 615, the request to register the application is accepted. The registration button 615 may be controlled so that it becomes pressable when the required input items have been entered.

[0078] The cancel button 616 is a button for closing the application registration screen 610. When developer D presses the cancel button 616, the application registration screen 610 closes and the screen returns to the application management screen 600. At this time, the information entered on the application registration screen 610 is discarded.

[0079] 7, in step S3, the communication control unit 220 of the terminal device 30 transmits an application registration request to the information processing device 10 in response to an operation by the developer D. The application registration request includes the application information entered on the application registration screen 610.

[0080] In step S4, the request receiving unit 120 of the information processing device 10 receives an application registration request from the terminal device 30. The request receiving unit 120 notifies the registration unit 110 of the application registration request. The registration unit 110 acquires application information from the application registration request. The registration unit 110 stores the acquired application information in the application storage unit 103. At this time, the registration unit 110 sets the current date and time as the registration date and time, and sets the user ID of developer D as the registrant.

[0081] When adding a new application, registration unit 110 issues a new application ID and stores application information including the issued application ID in application storage unit 103. When updating an existing application, registration unit 110 updates the existing application information stored in application storage unit 103 with the application information acquired from the registration request.

[0082] Recommended Action 10 is a sequence diagram showing an example of the recommendation process according to the first embodiment. The recommendation process is a process for recommending to the user U an application that has been registered in the application market.

[0083] In step S11, the user U performs an operation to connect to the application market on the terminal device 20. The operation to connect to the application market may be, for example, an operation to input connection destination information into a login screen in a web browser pre-installed in the terminal device 20. In response to the operation by the user U, the communication control unit 220 of the terminal device 20 transmits a request to acquire a login screen to the information processing device 10. The request to acquire a login screen includes the connection destination information input into the web browser.

[0084] The request receiving unit 120 of the information processing device 10 receives a request to acquire a login screen from the terminal device 20. The request receiving unit 120 notifies the output unit 170 of the request to acquire a login screen. The output unit 170 transmits screen data for displaying the login screen to the terminal device 20. The display control unit 210 of the terminal device 20 displays the login screen on the display 506 based on the screen data received from the information processing device 10.

[0085] (Login screen) Fig. 11 is a diagram showing an example of a login screen according to the first embodiment. As shown in Fig. 11, a login screen 700 is displayed on a browser B. The browser B has an address bar B1 for inputting a URL, which is an example of connection destination information.

[0086] The login screen 700 has a tenant input field 701, a login name input field 702, a password input field 703, and a login button 704. The tenant input field 701 accepts input of a tenant ID. The login name input field 702 accepts input of a user ID. The password input field 703 accepts input of a password. Note that FIG. 11 shows an example in which the tenant ID is input as part of the authentication information. If the tenant ID is embedded in the URL input in the address bar B1, the tenant input field 701 may be omitted.

[0087] The login button 704 is a button for requesting authentication of the user U. When the user U presses the login button 704, the authentication request of the user U is accepted.

[0088] 10, in step S12, the communication control unit 220 of the terminal device 20 transmits an authentication request for the user U to the information processing device 10 in response to an operation by the user U. The authentication request includes the authentication information entered on the login screen 700.

[0089] In step S13, the request receiving unit 120 of the information processing device 10 receives an authentication request from the terminal device 20. The request receiving unit 120 notifies the user identification unit 130 of the authentication request. The user identification unit 130 reads out user information from the user storage unit 101. The user identification unit 130 authenticates the user U based on the authentication information included in the user information and the authentication information included in the authentication request. Here, the explanation will continue assuming that the authentication of the user U is successful. If the authentication of the user U is successful, the user identification unit 130 identifies the user U operating the terminal device 20 based on the user ID included in the authentication request.

[0090] In step S14, the organization identification unit 140 of the information processing device 10 identifies the organization A to which the user U identified by the user identification unit 130 belongs. The organization identification unit 140 may acquire the tenant ID included in the connection destination information received in step S11. The organization identification unit 140 may acquire the tenant ID included in the authentication request received in step S13. The organization identification unit 140 identifies the organization A to which the user U belongs based on the acquired tenant ID.

[0091] Subsequently, the output unit 170 transmits the authentication result of the user U to the terminal device 20. The authentication result includes the user ID identified in step S13 and the tenant ID identified in step S14.

[0092] In step S15, the communication control unit 220 of the terminal device 20 receives the authentication result of the user U from the information processing device 10. If the authentication result indicates successful authentication, the communication control unit 220 stores the user ID and tenant ID included in the authentication result in the session storage of the browser B.

[0093] Next, the communication control unit 220 of the terminal device 20 transmits a request to acquire a portal screen to the information processing device 10. The request receiving unit 120 of the information processing device 10 receives the request to acquire a portal screen from the terminal device 20. The request receiving unit 120 notifies the output unit 170 of the request to acquire a portal screen. The output unit 170 transmits screen data for displaying the portal screen to the terminal device 20. The display control unit 210 of the terminal device 20 displays the portal screen on the display 506 based on the screen data received from the information processing device 10.

[0094] (Portal screen) Fig. 12 is a diagram showing an example of a portal screen according to the first embodiment. As shown in Fig. 12, a portal screen 710 has a user display field 711, a notice display area 712, a notification display area 713, an unprocessed item display area 714, a space display area 715, and an app display area 716.

[0095] The user display field 711 displays information (e.g., name) about the user U who was successfully authenticated in step S13. The notice display area 712 displays notice information for the user U. The notification display area 713 displays notices about tasks that the user U has. The unprocessed task display area 714 displays unprocessed tasks that the user U has. The space display area 715 displays information about spaces in which the user U is participating.

[0096] The tasks owned by user U are tasks being processed by the applications used by user U. Tasks may include tasks related to the business of organization A. A space is a virtual space where information can be shared with other users.

[0097] The application display area 716 displays information about applications used by the user U. The application display area 716 includes an add button 717. The add button 717 is a button for adding an application. When the user U presses the add button 717, an application addition screen is displayed on the display 506.

[0098] (Add app screen) Fig. 13 is a diagram showing an example of an application addition screen according to Embodiment 1. As shown in Fig. 13, an application addition screen 720 has a user display field 721, a search condition input field 722, a category selection area 723, and a recommendation display button 724.

[0099] The user display field 721 displays information about user U who was successfully authenticated in step S13. The search condition input field 722 accepts input of search conditions. When search conditions are input in the search condition input field 722, the application addition screen 720 displays a list of applications that match the search conditions. The category selection area 723 accepts selection of a category. The category selection area 723 displays options for predetermined categories. When a category is selected in the category selection area 723, the application addition screen 720 displays a list of applications included in the selected category.

[0100] The recommendation display button 724 is a button for displaying a recommendation screen. When the user U presses the recommendation display button 724, a request to acquire the recommendation screen is accepted.

[0101] Returning to Fig. 10, in step S16, the communication control unit 220 of the terminal device 30 transmits a request to acquire a recommendation screen to the information processing device 10 in response to an operation by the user U. The request to acquire a recommendation screen includes a tenant ID. For example, the communication control unit 220 may read out the tenant ID stored in the session storage of browser B and include it in the request to acquire a recommendation screen.

[0102] In step S17, the request receiving unit 120 of the information processing device 10 receives a request to acquire a recommendation screen from the terminal device 20. The request receiving unit 120 notifies the attribute acquisition unit 150 of the request to acquire a recommendation screen. The attribute acquisition unit 150 acquires a tenant ID from the request to acquire a recommendation screen. The attribute acquisition unit 150 reads tenant information from the tenant storage unit 102 based on the acquired tenant ID. The attribute acquisition unit 150 acquires attribute information related to organization A from the read tenant information. The attribute acquisition unit 150 sends the acquired attribute information to the extraction unit 160.

[0103] In step S18, the extraction unit 160 of the information processing device 10 receives the attribute information from the attribute acquisition unit 150. The extraction unit 160 reads out the application information from the application storage unit 103. The extraction unit 160 may read out only the application information whose status is registered from the application storage unit 103. The extraction unit 160 extracts application information whose attribute information satisfies the recommendation conditions from the read application information. Specifically, the extraction unit 160 extracts application information whose business type matches the business type of organization A from the application information read out from the application storage unit 103. The extraction unit 160 sends the extracted application information to the output unit 170.

[0104] In step S19, the output unit 170 of the information processing device 10 receives the application information from the extraction unit 160. The output unit 170 generates screen data for displaying a recommendation screen based on the application information. A list of applications indicated in the application information is embedded in the screen data. The output unit 170 transmits the generated screen data to the terminal device 20.

[0105] The output unit 170 may transmit screen data without an application list embedded therein to the terminal device 20. In this case, a script for asynchronously acquiring the application list may be embedded in the screen data. Furthermore, link information referencing the script for asynchronously acquiring the application list may be embedded in the screen data. The script may be executed when the recommendation screen is displayed on the terminal device 30, and may control the display of the acquired application list on the recommendation screen. The program may be written in a script language such as JavaScript (registered trademark).

[0106] The output unit 170 may generate a list of applications to be embedded in the recommendation screen in accordance with a predetermined display rule. Here, it is assumed that a display rule is defined to display 10 applications in order of most recent registration date and time. First, the output unit 170 sorts the app information in descending order of registration date and time. Next, the output unit 170 acquires the top 10 pieces of app information from the sorted app information. Next, the output unit 170 generates a list of applications in the order in which the app information was acquired. Then, the output unit 170 embeds the generated list of applications in the screen data.

[0107] In step S20, the communication control unit 220 of the terminal device 30 receives screen data of the recommendation screen from the information processing device 10. The display control unit 210 displays the recommendation screen on the display 506 based on the screen data received from the information processing device 10.

[0108] (Recommendation screen) 14 is a diagram showing an example of a recommendation screen according to Embodiment 1. As shown in FIG. 14, a recommendation screen 800 has a pickup area 810, an attribute selection area 820, and a list display area 830.

[0109] The pickup area 810 displays a menu that extracts applications based on predetermined criteria. The menu may include, for example, a recommended menu and a menu for beginners. The recommended menu is a menu that extracts applications recommended for user U. The beginners menu is a menu that extracts applications that are recommended for users who have just started using the app market. In the initial state, the pickup area 810 selects the recommended menu. When a menu is selected in the pickup area 810, a list of the extracted applications is displayed in the list display area 830.

[0110] The attribute selection area 820 accepts the selection of attribute information. The attribute selection area 820 displays predetermined attribute information options. The attribute information options may be options for the industry of the organization. When attribute information is selected in the attribute selection area 820, a list of applications whose selected attribute information meets the recommendation conditions is displayed in the list display area 830.

[0111] The list display area 830 is a display area that displays a list of applications. When a recommended menu is selected in the pickup area 810, a list of applications extracted based on attribute information of the organization A to which the user U belongs is displayed in the list display area 830.

[0112] The list display area 830 displays application display areas 831-840, each displaying information about an application. The layout of the application display areas 831-840 within the list display area 830 is determined according to a display rule. In the example shown in FIG. 14, the application display areas 831-840 are arranged from left to right and from top to bottom on the screen in an order according to the display rule. The application display areas 831-840 may be displayed with greater emphasis on applications that appear earlier in the display order. When highlighting, for example, the area size, background color, text color, text thickness, etc. may be changed to a display mode that is easier to see. However, the display mode of the application display areas 831-840 shown in FIG. 14 is merely an example, and their layout, highlighting, etc. may be changed as desired.

[0113] Each of the application display areas 831 to 840 has an icon field 841, a name field 842, an additional link 843, and a summary field 844. The icon field 841 may display a default icon set for the application. The name field 842 and the summary field 844 may display the name and summary of the application information.

[0114] The add link 843 is a link that allows the user U to use an application. When the user U selects the add link 843 of an application that the user U wishes to use, the selected application is provided to the user U. Once the application is provided, the user U can use the application. The user U can launch the application from, for example, the app display area 716 on the portal screen 710.

[0115] If the selected application is provided for a fee, the app market may display a payment screen and provide the application to user U after user U has completed payment of the usage fee.

[0116] <Effects of the first embodiment> The information processing device 10 in this embodiment identifies the user U operating the terminal device 20 and the organization A to which the user U belongs, and extracts one or more applications to recommend to the user U based on attribute information related to the attributes of the organization A. By using the attribute information related to the organization A, it is possible to appropriately extract applications that the user U will use in the business of the organization A. In one aspect, according to this embodiment, it is possible to recommend applications that are appropriate for the organization A to which the user U belongs.

[0117] Based on the app information in which recommendation conditions related to the attributes of the organization that recommends the use of the application are associated with each application, the information processing device 10 may extract one or more applications for which attribute information related to the attributes of organization A satisfies the recommendation conditions. According to this embodiment, it is possible to recommend applications for which attribute information related to organization A satisfies the predetermined recommendation conditions.

[0118] The attribute information may include information indicating the industry of organization A. The attribute information may include information indicating the scale of organization A. According to this embodiment, it is possible to recommend an application according to the industry or scale of organization A to which user U belongs.

[0119] The information processing device 10 may identify the organization A based on authentication information input by the user U. The information processing device 10 may identify the organization A based on connection destination information of the terminal device 20. According to this embodiment, the organization A to which the user U belongs can be identified by various methods.

[0120] The information processing device 10 may display information about applications on the terminal device 20 based on predetermined rules. The rules may indicate the number and order of applications to be displayed on the terminal device 20. The rules may include rules regarding the registration date and time of the applications. According to this embodiment, applications can be recommended in a display format that is easy for the user U to understand.

[0121] [Second embodiment] In the first embodiment, a configuration has been described in which applications are extracted based on attribute information about an organization A to which a user U belongs. In the second embodiment, a configuration will be described in which applications are extracted based on attribute information about the user U in addition to attribute information about the organization A.

[0122] <Functional configuration of information processing system> The functional configuration of the information processing device according to the second embodiment will be described, focusing on the differences from the first embodiment.

[0123] (User information) The user information according to the second embodiment includes identification information (user ID) for identifying user U, authentication information for authenticating user U, and attribute information indicating the attributes of user U. The attribute information of user U may include attribute information related to the business of organization A.

[0124] 15 is a diagram showing an example of user information according to the second embodiment. As shown in FIG. 15, the user information has data items such as a user ID, name, password, gender, age, occupation, and position. The name, password, gender, age, occupation, and position are examples of attribute information related to user U. The occupation and position are examples of attribute information related to the work of organization A.

[0125] (App information) The application information according to the second embodiment includes identification information (application ID) for identifying an application, classification information indicating the classification of the application, and recommendation conditions indicating conditions for recommending the application. The recommendation conditions may include conditions related to attribute information included in user information in addition to conditions related to attribute information included in tenant information.

[0126] Fig. 16 is a diagram showing an example of application information according to the second embodiment. As shown in Fig. 16, the application information includes, as data items, an application ID, a name, an industry, a purpose, an occupation, a position, a registration date and time, a registrant, etc. The occupation and the position are examples of recommendation conditions, and are conditions related to the occupation and the position of the user information.

[0127] The attribute acquisition unit 150 according to the second embodiment further acquires attribute information (an example of second attribute information) about the user U identified by the user identification unit 130, in addition to the attribute information about the organization A identified by the organization identification unit 140. The attribute acquisition unit 150 may read out the attribute information about the user U identified by the user identification unit 130 from the user storage unit 101.

[0128] The extraction unit 160 according to the second embodiment extracts applications to be recommended to the user U based on both the attribute information about the organization A and the attribute information about the user U acquired by the attribute acquisition unit 150. Specifically, first, the extraction unit 160 extracts app information for which the attribute information about the organization A satisfies the recommendation conditions from the app information read from the app storage unit 103. Next, the extraction unit 160 further extracts app information for which the attribute information about the user U satisfies the recommendation conditions from the app information extracted based on the attribute information about the organization A.

[0129] <Effects of the second embodiment> The information processing device 10 according to this embodiment acquires attribute information about user U, and extracts applications for which attribute information about organization A and attribute information about user U satisfy recommendation conditions. The attribute information about user U may include attribute information related to the business of organization A. By using both the attribute information about organization A and the attribute information about user U, it is possible to appropriately extract applications that user U will use in the business of organization A. In one aspect, according to this embodiment, it is possible to recommend applications that are appropriate for organization A to which user U belongs.

[0130] [Variation 1] In each of the above embodiments, an example has been described in which the user interface of the information processing system 1000 is provided by the information processing device 10. However, the user interface of the information processing system 1000 may be provided by another information processing device different from the information processing device 10. For example, the user interface of the information processing system 1000 may be provided by another information processing device, and the information processing device 10 may provide a list of applications recommended to the user U in response to a request from the other information processing device. Furthermore, for example, the other information processing device may provide some screens including a login screen, a portal screen, an application addition screen, etc., and the information processing device 10 may provide some screens including a recommendation screen.

[0131] [Variation 2] The display control unit 210 of the terminal device 20 may display various screens through asynchronous communication. As an example, asynchronous communication may be a technique such as Ajax. The display control unit 210 may be an application capable of asynchronous communication and having a function for displaying web content data. The function for displaying web content data may be a web browser function, a WebView function, or the like. As an example, the display control unit 210 may be a web browser application, an application having a web browser function, or an application that displays web content using a WebView function. The display control unit 210 is an example of a terminal-side application.

[0132] A screen display process for displaying a recommendation screen through asynchronous communication will be specifically described with reference to Fig. 17. Fig. 17 is a sequence diagram showing an example of the screen display process according to Modification 2. Here, an example will be described in which the display control unit 210 is a web browser application.

[0133] In step S101, browser B generates an HTTP request specifying the URL of a web page in response to an operation by user U. The operation by user U may be an operation to press recommendation display button 724 on application addition screen 720 shown in FIG.

[0134] In step S102, the browser B transmits the HTTP request generated in step S101 to the information processing device 10. Note that step S102 corresponds to step S16 shown in FIG.

[0135] In step S103, when the information processing device 10 receives the HTTP request from the browser B, it transmits an HTTP response including Web content data to the browser B. At this time, the information processing device 10 generates Web content data according to the URL specified in the HTTP request.

[0136] The web content data is, for example, data written in HTML. The web content data may include JavaScript (an example of a first JavaScript) in which a process for acquiring application information is described. The web content data may also include link information that references JavaScript (an example of a second JavaScript) in which a process for acquiring application information is described.

[0137] Below is an example where a first JavaScript is written in web content data, and an example where link information referencing a second JavaScript is written. Note that the following GetRecommendAppData() is an example of the first JavaScript and second JavaScript in which processing to obtain app information is written.

[0138] <First example of JavaScript> Directly in the HTML: <script>function GetRecommendAppData(){···}< / script> This JavaScript is loaded when HTML is parsed by browser B, for example.

[0139] <Example of link information referencing a second JavaScript> In the HTML, <script type="text / javascript" src="http: / / www.xxx.jp / scripts / GetRecommendAppData.js">< / script> In this way, the reference link "http: / / www.xxx.jp / scripts / GetRecommendAppData.js" is written. In the file (GetRecommendAppData.js) of this link, just like the first JavaScript description, <script>function GetRecommendAppData(){···}< / script> When parsing the HTML, browser B accesses the link destination and loads, for example, GetRecommendAppData() included in the GetRecommendAppData.js file.

[0140] In step S104, browser B receives the HTTP response from information processing device 10. Browser B interprets (parses) the Web content data included in the HTTP response. At this time, if the Web content data includes link information that references JavaScript, browser B accesses the link destination indicated in the link information and reads the JavaScript.

[0141] In step S105, browser B loads the web content data parsed in step S104. As a result, a recommendation screen is displayed in the display area of ​​browser B. At this time, since the web content data does not include app information, only the frame of the recommendation screen is displayed.

[0142] FIG. 18 is a diagram showing an example of a recommendation screen according to Modification Example 2. FIG. 18 shows an example of a recommendation screen displaying web content data that does not include app information. As shown in FIG. 18, when the web content data does not include app information, the recommendation screen 800 displays only the shapes of app display areas 831 to 840 in the list display area 830. Note that in the example shown in FIG. 18, the icon column 841, the name column 842, the additional link 843, and the summary column 844 are not displayed in the app display areas 831 to 840, but the icon column 841, the name column 842, the additional link 843, and the summary column 844 may be displayed as blank columns (or with default values).

[0143] In step S106, browser B executes JavaScript included in the Web content data loaded in step S105. The JavaScript generates an HTTP request including a GET method for acquiring, from the information processing device 10, application information to be displayed on the recommendation screen.

[0144] In step S107, the browser B transmits the HTTP request generated in step S106 to the information processing device 10.

[0145] In step S108, the information processing device 10 receives an HTTP request from the browser B. In response to the HTTP request, the information processing device 10 generates a response including application information. The response may be written in JSON (JavaScript Object Notation), for example.

[0146] 10 to acquire application information to be included in the response. However, the information processing device 10 may execute step S17 to acquire attribute information before step S108. Alternatively, the information processing device 10 may execute steps S17 and S18 to acquire application information before step S108. For example, the information processing device 10 may acquire application information before transmitting Web content data in step S103.

[0147] Here, the information processing device 10 may embed information for acquiring application information when generating the Web content data in step S103. For example, the information processing device 10 may generate Web content data including a tenant ID. In this case, the JavaScript describing the process for acquiring the application information may describe the following process: (1) read the tenant ID included in the Web content data; and (2) include the read tenant ID in a GET method for acquiring application information to be displayed on the recommendation screen from the information processing device 10. Then, the information processing device 10 may use the tenant ID included in the HTTP request when executing step S17 shown in FIG. 10 to acquire the application information. This eliminates the need for the information processing device 10 to subsequently retain the tenant ID acquired in step S14 shown in FIG. 10.

[0148] Furthermore, if the information processing device 10 executes step S17 before step S108 to acquire attribute information, the information processing device 10 may generate Web content data including the attribute information. In this case, the JavaScript describing the process of acquiring the application information may describe the following process: (1) reads the attribute information included in the Web content data; and (2) includes the read attribute information in a GET method that acquires application information to be displayed on the recommendation screen from the information processing device 10. Then, the information processing device 10 may use the attribute information included in the HTTP request when executing step S18 shown in FIG. 10 to acquire the application information.

[0149] In step S109, the information processing device 10 transmits to the browser B an HTTP response including the response generated in step S108.

[0150] In step S110, browser B receives an HTTP response from the information processing device 10. Browser B displays application information on the recommendation screen based on the response included in the HTTP response. In the case of recommendation screen 800 shown in Fig. 14, the icon column 841, name column 842, additional link 843, and summary column 844 of application display areas 831 to 840 displayed in step S105 are updated based on the application information.

[0151] In asynchronous communication, the display of a web page and the acquisition of a portion of the content to be displayed on the web page are performed at different times. The web page that was displayed first is then updated with the portion of the content that was acquired later. When the screen is displayed using asynchronous communication, the web page can be displayed quickly because only the portion of the content that needs to be updated needs to be acquired when updating the displayed content of the web page.

[0152] <Technical issues> An example will be described using the recommendation screen 800 shown in FIG. 14. Here, it is assumed that there are 30 applications recommended to user U. If asynchronous communication is not used, it is necessary to first obtain information about all 30 applications and generate screen data including the information about the 30 applications. This results in a technical problem in that it takes a long time to display the recommendation screen 800.

[0153] <Solving technical issues> On the other hand, when asynchronous communication is used, when the recommendation screen 800 is initially displayed, for example, only information on 10 apps is obtained from the information processing device 10 and displayed in the list display area 830. The remaining 20 app information items can be obtained when updating the display content by scrolling the recommendation screen 800, for example. When displaying the recommendation screen 800, only information on 10 apps is obtained initially, and screen data including the 10 app information items is generated, so the recommendation screen 800 can be displayed quickly. Therefore, by using this asynchronous communication mechanism, the technical problem of it taking a long time to display the recommendation screen 800 can be solved.

[0154] [supplement] Each function of the above-described embodiments can be realized by one or more processing circuits. Here, the term "processing circuit" in this specification includes a processor programmed to perform each function by software, such as a processor implemented by an electronic circuit, as well as devices such as an ASIC (Application Specific Integrated Circuit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), and conventional circuit modules designed to perform each of the above-described functions.

[0155] The devices described in the example are merely one of several computing environments for implementing the embodiments disclosed herein. In one embodiment, information processing apparatus 10 includes multiple computing devices, such as a server cluster, configured to communicate with each other via any type of communication link, including a network, shared memory, etc., and to perform the processes disclosed herein.

[0156] For example, aspects of the present invention are as follows.

[0157] (Appendix 1) An information processing device capable of communicating with a terminal device through a network, a user identification unit for identifying a user who operates the terminal device; an organization identification unit that identifies an organization to which the user belongs; an attribute acquisition unit that acquires attribute information related to the attributes of the identified organization; an extraction unit that extracts one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; an output unit that transmits, to the terminal device, control information for causing the terminal device to display application information related to the extracted one or more applications, the application information including at least application identification information that identifies each of the one or more applications; An information processing device comprising:

[0158] (Appendix 2) a storage unit configured to store setting information in which, for each of the plurality of applications, recommendation conditions related to attributes of an organization that recommends use of the application are associated; the extraction unit extracts one or more applications whose attributes related to the acquired attribute information satisfy the recommendation conditions from among a plurality of applications available to the user; 2. The information processing device according to claim 1.

[0159] (Appendix 3) The setting information further associates, for each of the plurality of applications, recommendation conditions relating to attributes of users for whom use of the application is recommended, the attribute acquisition unit further acquires second attribute information related to the user; the extraction unit extracts the application whose attribute information and second attribute information satisfy the recommendation condition. 3. The information processing device according to claim 2.

[0160] (Appendix 4) the control information is web content data that can be displayed by an application having a browser function installed in the terminal device; An information processing device according to any one of Supplementary Note 1 to Supplementary Note 3.

[0161] (Appendix 5) An information processing device capable of communicating with a terminal device including a terminal-side application having a function of displaying web content data via a network, a user identification unit for identifying a user who operates the terminal device; an organization identification unit that identifies an organization to which the user belongs; an attribute acquisition unit that acquires attribute information related to the attributes of the identified organization; an extraction unit that extracts one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; a first transmission unit that, upon receiving a first HTTP request transmitted from the terminal device, transmits the web content data described in HTML (Hypertext Markup Language) to the terminal device; and the web content data includes link information that references a first JavaScript (registered trademark) that acquires application information from the information processing device, the application information including at least application identification information that identifies each of the one or more extracted applications, or a second JavaScript (registered trademark) that acquires the application information from the information processing device; the information processing device further includes a second transmission unit that, when receiving a second HTTP request transmitted from the terminal device as a result of the first JavaScript included in the Web content data being executed by the terminal-side application or the second JavaScript specified by the link information included in the Web content data being executed by the terminal-side application, transmits the app information to the terminal device; the web content data is web content data that causes the terminal device to display, on a screen, the application identification information included in the application information acquired from the information processing device by executing the first JavaScript or the second JavaScript in the terminal-side application. Information processing device.

[0162] (Appendix 6) the extraction unit extracts the one or more applications to be recommended to the user based on the acquired attribute information in response to receiving the second HTTP request. 6. The information processing device according to claim 5.

[0163] (Appendix 7) a storage unit configured to store setting information in which, for each of the plurality of applications, recommendation conditions related to attributes of an organization that recommends use of the application are associated; the extraction unit extracts, from the plurality of applications available to the user, the one or more applications whose attributes related to the acquired attribute information satisfy the recommendation conditions. 7. The information processing device according to claim 5 or 6.

[0164] (Appendix 8) The setting information further associates, for each of the plurality of applications, recommendation conditions relating to attributes of users for whom use of the application is recommended, the attribute acquisition unit further acquires second attribute information related to the user; the extraction unit extracts the one or more applications whose attribute information and second attribute information satisfy the recommendation conditions. 8. The information processing device according to claim 7.

[0165] (Appendix 9) The attribute information includes information indicating the business type of the organization. An information processing device according to any one of Supplementary Note 1 to Supplementary Note 8.

[0166] (Appendix 10) the attribute information includes information indicating the scale of the organization; An information processing device according to any one of Supplementary Note 1 to Supplementary Note 8.

[0167] (Appendix 11) the second attribute information includes information related to the business of the organization; 4. The information processing device according to claim 3.

[0168] (Appendix 12) the organization identification unit identifies the organization based on authentication information input by the user. An information processing device according to any one of Supplementary Note 1 to Supplementary Note 11.

[0169] (Appendix 13) the organization identification unit identifies the organization based on connection destination information of the terminal device. An information processing device according to any one of Supplementary Note 1 to Supplementary Note 11.

[0170] (Appendix 14) the control information causes the terminal device to display the application information based on a predetermined rule; 5. An information processing device according to any one of Supplementary Note 1 to Supplementary Note 4.

[0171] (Appendix 15) The rule indicates the number and order of the applications to be displayed on the terminal device. 15. The information processing device according to claim 14.

[0172] (Appendix 16) The rules include rules regarding the registration date and time of the application. 15. The information processing device according to claim 14.

[0173] (Appendix 17) A system in which a terminal device and an information processing device can communicate with each other via a network, The information processing device includes: a user identification unit for identifying a user who operates the terminal device; an organization identification unit that identifies an organization to which the user belongs; an attribute acquisition unit that acquires attribute information related to the attributes of the identified organization; an extraction unit that extracts one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; an output unit that transmits, to the terminal device, control information for causing the terminal device to display application information related to the extracted one or more applications, the application information including at least application identification information that identifies each of the one or more applications; Equipped with The terminal device a display control unit that displays the application information on a display device based on the control information received from the information processing device; system.

[0174] (Appendix 18) A computer that can communicate with a terminal device through a network, a step of identifying a user who operates the terminal device; identifying an organization to which the user belongs; acquiring attribute information relating to attributes of the identified organization; extracting one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; transmitting, to the terminal device, control information for causing the terminal device to display, on the terminal device, application information related to the one or more extracted applications, the application information including at least application identification information for identifying each of the one or more applications; An information processing method that performs the above.

[0175] (Appendix 19) A computer that can communicate with the terminal device through a network, a step of identifying a user who operates the terminal device; identifying an organization to which the user belongs; acquiring attribute information relating to attributes of the identified organization; extracting one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; transmitting, to the terminal device, control information for causing the terminal device to display, on the terminal device, application information related to the one or more extracted applications, the application information including at least application identification information for identifying each of the one or more applications; A program to execute.

[0176] Although the embodiments of the present invention have been described in detail above, the present invention is not limited to these embodiments, and various modifications and changes are possible within the scope of the gist of the present invention described in the claims. [Explanation of symbols]

[0177] 10: Information processing device 20: Terminal device 101: User storage section 102: Tenant storage unit 103: Application memory section 110: Registration Department 120: Request reception unit 130: User identification section 140:Organization Identification Department 150: Attribute acquisition part 160: Extraction part 170: Output section 210: Display control unit 220: Communication control unit 1000: Information Processing Systems [Prior art documents] [Patent documents]

[0178] [Patent Document 1] Japanese Patent Application Publication No. 2018-190154

Claims

1. An information processing device capable of communicating with a terminal device through a network, a user identification unit for identifying a user who operates the terminal device; an organization identification unit that identifies an organization to which the user belongs; an attribute acquisition unit that acquires attribute information related to the attributes of the identified organization; an extraction unit that extracts one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; an output unit that transmits, to the terminal device, control information for causing the terminal device to display application information related to the extracted one or more applications, the application information including at least application identification information that identifies each of the one or more applications; An information processing device comprising:

2. a storage unit configured to store setting information in which, for each of the plurality of applications, recommendation conditions related to attributes of an organization that recommends use of the application are associated; the extraction unit extracts one or more applications whose attributes related to the acquired attribute information satisfy the recommendation conditions from among a plurality of applications available to the user; The information processing device according to claim 1 .

3. The setting information further associates, for each of the plurality of applications, recommendation conditions relating to attributes of users for whom use of the application is recommended, the attribute acquisition unit further acquires second attribute information related to the user; the extraction unit extracts the application whose attribute information and second attribute information satisfy the recommendation condition. The information processing device according to claim 2 .

4. the control information is web content data that can be displayed by an application having a browser function installed in the terminal device; The information processing device according to claim 1 .

5. An information processing device capable of communicating with a terminal device including a terminal-side application having a function of displaying web content data via a network, a user identification unit for identifying a user who operates the terminal device; an organization identification unit that identifies an organization to which the user belongs; an attribute acquisition unit that acquires attribute information related to the attributes of the identified organization; an extraction unit that extracts one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; a first transmitting unit that, upon receiving a first HTTP request transmitted from the terminal device, transmits the web content data described in HTML (Hypertext Markup Language) to the terminal device; and the web content data includes link information referencing a first JavaScript (registered trademark) for acquiring application information from the information processing device, the application information including at least application identification information for identifying each of the extracted one or more applications, or a second JavaScript (registered trademark) for acquiring the application information from the information processing device; the information processing device further includes a second transmission unit that transmits the application information to the terminal device when a second HTTP request transmitted from the terminal device is received as a result of the first JavaScript included in the Web content data being executed by the terminal-side application or the second JavaScript specified by the link information included in the Web content data being executed by the terminal-side application; the web content data is web content data that causes the terminal device to display, on a screen, the application identification information included in the application information acquired from the information processing device by executing the first JavaScript or the second JavaScript in the terminal-side application; Information processing device.

6. the extraction unit extracts the one or more applications to be recommended to the user based on the acquired attribute information in response to receiving the second HTTP request. The information processing device according to claim 5 .

7. a storage unit configured to store setting information in which, for each of the plurality of applications, recommendation conditions related to attributes of an organization that recommends use of the application are associated; the extraction unit extracts, from the plurality of applications available to the user, the one or more applications whose attributes related to the acquired attribute information satisfy the recommendation conditions. The information processing device according to claim 5 .

8. The setting information further associates, for each of the plurality of applications, recommendation conditions relating to attributes of users for whom use of the application is recommended, the attribute acquisition unit further acquires second attribute information related to the user; the extraction unit extracts the one or more applications whose attribute information and second attribute information satisfy the recommendation conditions. The information processing device according to claim 7 .

9. The attribute information includes information indicating the business type of the organization.

9. The information processing device according to claim 1.

10. the attribute information includes information indicating the scale of the organization; 9. The information processing device according to claim 1.

11. the second attribute information includes information related to the business of the organization; The information processing device according to claim 3 .

12. the organization identification unit identifies the organization based on authentication information input by the user.

9. The information processing device according to claim 1.

13. the organization identification unit identifies the organization based on connection destination information of the terminal device.

9. The information processing device according to claim 1.

14. the control information causes the terminal device to display the application information based on a predetermined rule; 5. The information processing device according to claim 1.

15. The rule indicates the number and order of the applications to be displayed on the terminal device. The information processing device according to claim 14.

16. The rules include rules regarding the registration date and time of the application. The information processing device according to claim 14.

17. A system in which a terminal device and an information processing device can communicate with each other via a network, The information processing device includes: a user identification unit for identifying a user who operates the terminal device; an organization identification unit that identifies an organization to which the user belongs; an attribute acquisition unit that acquires attribute information related to the attributes of the identified organization; an extraction unit that extracts one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; an output unit that transmits, to the terminal device, control information for causing the terminal device to display application information related to the extracted one or more applications, the application information including at least application identification information that identifies each of the one or more applications; Equipped with The terminal device a display control unit that displays the application information on a display device based on the control information received from the information processing device; system.

18. A computer that can communicate with a terminal device through a network, a step of identifying a user who operates the terminal device; identifying an organization to which the user belongs; acquiring attribute information relating to attributes of the identified organization; extracting one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; transmitting, to the terminal device, control information for causing the terminal device to display, on the terminal device, application information related to the extracted one or more applications, the application information including at least application identification information for identifying each of the one or more applications; An information processing method that performs the above.

19. A computer that can communicate with the terminal device through a network, a step of identifying a user who operates the terminal device; identifying an organization to which the user belongs; acquiring attribute information relating to attributes of the identified organization; extracting one or more applications recommended to the user from among a plurality of applications available to the user based on the acquired attribute information; transmitting, to the terminal device, control information for causing the terminal device to display, on the terminal device, application information related to the extracted one or more applications, the application information including at least application identification information for identifying each of the one or more applications; A program to execute.

Citation Information

Patent Citations

  • Recommendation system, device, and program

    JP2018190154A