Information processing device, development support system and program

The information processing apparatus addresses inefficiencies in development support by using SDK usage history and preferences to provide tailored, mechanical development proposals, reducing man-hours and personalization.

JP2025103242APending Publication Date: 2025-07-09RICOH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023220498
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-27
Publication Date
2025-07-09

AI Technical Summary

Technical Problem

Existing development support systems face issues with increased man-hours and personalized proposals when providing development support to partners, as they lack a systematic approach to utilize SDK usage history and preferences.

Method used

An information processing apparatus that stores SDK availability and usage history tables, extracts relevant information for a specific partner, and makes development proposals based on this data, including user preferences and past usage.

Benefits of technology

Enables mechanical and efficient development proposals tailored to partner needs, reducing man-hours and personalization, by leveraging SDK usage history and preferences.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025103242000001_ABST
    Figure 2025103242000001_ABST
Patent Text Reader

Abstract

To provide an information processing device, a development support system, and a program that, when receiving a consult from a partner about product development contents, receive a declaration of types of software development kits (SDKs) to be used from the partner and propose product development contents to the partner.SOLUTION: An information processing device comprises: an information storage unit for storing a table that stores at least one or more SDKs in association with the availability and usage history of the SDKs for each user; an extraction unit for, based on the table stored by the information storage unit, extracting first information indicating SDKs available to one user and second information indicating a usage history that the one user has used so far; an acquisition unit for acquiring third information indicating an SDK which the one user wishes to use; and a development proposal unit for making a development proposal to the one user based on at least the first information, the second information, and the third information.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing apparatus, a development support system, and a program.

Background Art

[0002] Conventionally, in developing products such as applications provided to device users who use devices, a business partner (hereinafter referred to as a partner) as a developer for development supporters such as device manufacturers participates in a development support program provided by the development supporter, and a business model is known in which the development supporter provides development support or development proposals to the partner.

[0003] Patent Document 1 discloses a technique of downloading and using a software development kit (SDK) in application development.

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, according to the prior art, when a partner develops a product such as an application, when the development supporter provides development support or a development proposal, there are problems that the development support by the development supporter is a personal proposal or the man-hours of the development supporter increase.

[0005] The present invention has been made in view of the above, and an object thereof is to propose product development content to a partner by receiving a declaration of the type of SDK to be used from the partner when receiving a consultation on the product development content from the partner.

Means for Solving the Problems

[0006] In order to solve the above-described problems and achieve the object, the present invention includes an information storage unit that stores a table associating and storing at least one or more SDKs with the availability and usage history of the SDK for each user, and based on the table stored by the information storage unit, an extraction unit that extracts first information indicating an SDK available to one user and second information indicating the user's usage history so far, an acquisition unit that acquires third information indicating an SDK that the one user wishes to use, and a development proposal unit that makes a development proposal to the one user based on at least the first information, the second information, and the third information.

Advantages of the Invention

[0007] According to the present invention, when receiving a consultation on product development content from a partner, it is possible to receive a declaration of the type of SDK used from the partner and propose product development content to the partner.

Brief Description of the Drawings

[0008]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Embodiments for Carrying Out the Invention

[0009] Hereinafter, embodiments of the information processing apparatus, the development support system, and the program will be described in detail with reference to the accompanying drawings.

[0010] FIG. 1 is a block diagram showing the configuration of a development support system 100 according to an embodiment. As shown in FIG. 1, the development support system 100 includes an information processing apparatus 50 used by a development supporter such as an equipment manufacturer, and a client terminal 10 used by a business partner (hereinafter referred to as a partner) for the development supporter, which is connected to the information processing apparatus 50 via a communication network N such as the Internet.

[0011] In FIG. 1, only one information processing apparatus 50 and one client terminal 10 are shown, but the present invention is not limited thereto, and a plurality of information processing apparatuses 50 and client terminals 10 may exist.

[0012] The information processing apparatus 50 is a so-called server or the like. The information processing apparatus 50 stores various tables described later. Note that the information processing apparatus 50 may store the various tables in an external storage server that can communicate with the information processing apparatus 50.

[0013] The information processing apparatus 50 may generate various information stored in various tables by the learning effect of machine learning. Here, machine learning is a technology for enabling a computer to acquire learning capabilities like those of humans. It refers to a technology in which a computer autonomously generates algorithms necessary for judgments such as data identification from pre-imported learning data and applies this to new data to make predictions. The learning method for machine learning may be any one of supervised learning, unsupervised learning, semi-supervised learning, reinforcement learning, and deep learning. Furthermore, a learning method that combines these learning methods may also be used, and the learning method for machine learning is not limited.

[0014] The client terminal 10 is an information terminal such as a PC (personal computer) or a smartphone. The client terminal 10 is a device that transmits and receives various data to and from the information processing apparatus 50. A browser 10A for operating the development support software 50A, which is a WEB application managed by the information processing apparatus 50, is pre-installed in the client terminal 10. The development support software 50A managed by the information processing apparatus 50 is a program for executing a proposal for the product development content to a partner when receiving a consultation on the product development content from the partner.

[0015] For example, the partner inputs various information such as the type of SDK to be used, which will be described later, to the development support software 50A managed by the information processing apparatus 50 via the browser 10A of the client terminal 10.

[0016] FIG. 2 is a diagram showing the system overview of the development support system 100.

[0017] As shown in FIG. 2, the information processing apparatus 50 of the development support system 100 generally provides a service that, when receiving a consultation on product development content from a partner, identifies a function using the SDK type as a development target function based on the SDK type received from the partner via the client terminal 10 and the SDK history information used by the partner in the past, and proposes the product development content to the client terminal 10 used by the partner.

[0018] Next, the hardware configurations of the information processing apparatus 50 and the client terminal 10 will be described.

[0019] FIG. 3 is a block diagram showing the hardware configurations of the information processing apparatus 50 and the client terminal 10. Here, the hardware configuration of the information processing apparatus 50 will be described.

[0020] As shown in FIG. 3, the information processing apparatus 50 is constructed by a computer and includes, as shown in FIG. 3, a CPU 501, a ROM 502, a RAM 503, an HD 504, an HDD (Hard Disk Drive) controller 505, a display 506 as a display unit, an external device connection I / F (Interface) 508, a network I / F 509, a data bus 510, a keyboard 511, a pointing device 512, a DVD-RW (Digital Versatile Disk Rewritable) drive 514, and a media I / F 516.

[0021] Among these, the CPU 501 controls the operation of the entire information processing apparatus 50. The ROM 502 stores programs used for driving 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 HD 504 of the information processing apparatus 50 stores the development support software 50A which is a web application as a program. Note that the HD 504 of the client terminal 10 stores the browser 10A (program) that executes the development support software 50A which is a web application. The HDD controller 505 controls the reading or writing of various data to and from the HD 504 according to the control of the CPU 501.

[0022] The display 506 displays various information such as a cursor, menu, window, characters, or images. The external device connection I / F 508 is an interface for connecting various external devices. The external devices in this case are, for example, a USB (Universal Serial Bus) memory, a printer, etc. The network I / F 509 is an interface for data communication using the communication network N. The data bus 510 is an address bus, a data bus, etc. for electrically connecting each component such as the CPU 501 shown in FIG. 3.

[0023] Also, the keyboard 511 is a type of input means having a plurality of keys for input such as characters, numerical values, and various instructions. 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 the reading or writing of various data to and from the DVD-RW 513 which is an example of a removable recording medium. Note that it is not limited to DVD-RW and may be DVD-R or the like. The media I / F 516 controls the reading or writing (storage) of data to and from the recording medium 515 such as a flash memory.

[0024] Next, the functions realized by the operation of the CPU 501 of the information processing apparatus 50 based on the development support software 50A stored in the HD 504 of the information processing apparatus 50 will be described.

[0025] Here, FIG. 4 is a functional block diagram showing the functions of the information processing apparatus 50. As shown in FIG. 4, when the CPU 501 of the information processing apparatus 50 operates based on the development support software 50A, the information processing apparatus 50 includes an information storage unit 551, an extraction unit 552, an acquisition unit 553, and a development proposal unit 554.

[0026] The information storage unit 551 stores at least one or more software development kits (SDKs: Software Development Kits). An SDK is a package of programs, APIs, sample codes, etc. to enable the development of applications with less effort.

[0027] Also, the information storage unit 551 stores various tables such as an information table T1 specific to the target partner and an information table T2 not specific to the partner in the HD 504 or the like, although details will be described later.

[0028] The extraction unit 552 extracts first information indicating an SDK that can be used by a partner who is a single user, and second information indicating the past usage history of the single partner, based on the various tables stored by the information storage unit 551. Note that the second information also includes empty information considering a partner who is a new user.

[0029] Note that the extraction unit 552 extracts the second information without including information regarding other partners different from one partner. That is, the extraction unit 552 extracts only the information associated with the partner based on the information managed for each partner in the information storage unit 551. When a partner conducts product development such as an application, a development supporter may conduct a development proposal (development consultation session). Also, there may be a plurality of partners for the development supporter. At this time, when previously making a product development proposal to a partner, if a person is to handle it, the person handling it has consciously excluded the information of other partners and made a proposal (to prevent the leakage of information of other partners). When realizing this in a mechanical method, from the viewpoint of preventing information leakage, it is necessary to extract the second information without including information regarding other partners different from one partner.

[0030] The acquisition unit 553 acquires third information indicating an SDK that one user wishes to use.

[0031] The development proposal unit 554 makes a development proposal to one user based on at least the first information, the second information, and the third information.

[0032] Here, various tables stored in the information storage unit 551 will be described.

[0033] First, the information table T1 specific to the target partner will be described.

[0034] FIG. 5 is a diagram showing an example of the information table T1 specific to the target partner. The information table T1 specific to the target partner stores information specific to the target partner. As shown in FIG. 5, the information specific to the target partner is the user (partner name) (a), past development environment information (used language) (b), past developed product information (SDK table) (c), SDK I / F information used and SDK I / F information not used in past product development (d).

[0035] The user (partner name) (a) is the name of the partner with respect to the development supporter.

[0036] The past development environment information (b) is the programming language used by the partner for the developer in past development.

[0037] The past development product information (c) is the SDK table T11 (see FIG. 6) that stores information about the partner's past development products for the developer.

[0038] The SDK I / F information used and not used in past product development (d) is the SDK I / F information used and not used by the partner for the developer in past product development. Examples of SDK I / F information include system information (model name, serial number, etc.) and network interface information.

[0039] Next, the SDK table T11 will be described in detail.

[0040] FIG. 6 is a diagram showing an example of the SDK table T11. As shown in FIG. 6, the SDK table T11 stores past development product information such as user ID (f), available SDK (g), SDK usage history (h), product name (i), installed functions (j), problems and targets solved by the product (k), customer layer (l), sales (m), release date and sales period (n), etc., in association with the user (partner name) (e).

[0041] The user ID (f) is identification information for identifying the partner.

[0042] The available SDK (g) is the software development kit (SDK) that was available to the partner in the past. Note that depending on the contract, the content of the SDK available to the partner may change.

[0043] The SDK usage history (h) is the usage history of the software development kit (SDK) used by the partner in the past.

[0044] That is, in the present embodiment, the availability and usage history of the SDK for each partner are managed in association with the software development kit (SDK).

[0045] The product name (i) is the name given by the partner to the product developed by the partner in the past. Here, the product is, for example, an application.

[0046] When a partner releases an application, the application can be provided using the platform provided by a development supporter such as a device manufacturer that provides devices. Therefore, when providing an application on the platform, the partner can register information such as the user ID, available SDK, used SDK history, product name, installed functions, problems, and sales start date.

[0047] The installed function (j) is a function installed in the product developed by the partner in the past.

[0048] The problems and the targets to be solved by the product (k) are the problems of the customers (device users) who use the product developed by the partner in the past, and the targets to be solved by the product developed by the partner in the past.

[0049] The customer (device user) layer (l) is the target for using the product developed by the partner in the past. For example, the customer (device user) layer is classified by office scale, job type, industry type, etc. Note that the customer (device user) layer can be calculated based on the attribute information of the customers (device users) who purchased the application on the platform.

[0050] The sales (m) are the number of sales and the sales amount of the product developed by the partner in the past. Note that by aggregating the purchase information of the application on the platform, the number of sales and the sales amount of the application can be calculated.

[0051] The sales start period and the sales period (n) are the sales start period of the products developed by the partner in the past and the sales period of the products developed by the partner in the past.

[0052] Next, the information table T2 that is not partner-specific will be described. Examples of the information table T2 that is not partner-specific include the newly installed SDK I / F information table T21 and the technical information table T22 obtained from the Internet.

[0053] FIG. 7 is a diagram showing an example of the newly installed SDK I / F information table T21. The newly installed SDK I / F information table T21 stores the newly installed SDK I / F information. As shown in FIG. 7, the newly installed SDK I / F information stores the installed version (p) and the function details (q) in association with the SDK I / F name (o). Note that for each SDK I / F name (o), information on the installation (release to the market) date and time may be stored in association.

[0054] FIG. 8 is a diagram showing an example of the technical information table T22 obtained from the Internet. The technical information table T22 obtained from the Internet stores the technical information obtained from the Internet. As shown in FIG. 8, the technical information obtained from the Internet stores the technical content (s) in association with the technical name (r).

[0055] Subsequently, the development support process in the development support system 100 will be described.

[0056] Here, FIG. 9 is a flowchart showing the flow of the development support process in the development support system 100. As shown in FIG. 9, the partner of the client terminal 10 sends a request to the information processing device 50 (step S1). Note that the partner of the client terminal 10 performs an authentication process in the information processing device 50 in advance. Thus, it is assumed that the information processing device 50 identifies the partner (partner name).

[0057] Next, when the extraction unit 552 of the information processing apparatus 50 receives a request from the client terminal 10 (step S11), it extracts list information of available SDKs according to the request (step S12). Specifically, the extraction unit 552 of the information processing apparatus 50 extracts first information indicating an SDK available to one user and second information indicating the previous usage history of the one user based on various tables stored by the information storage unit 551.

[0058] Then, the extraction unit 552 of the information processing apparatus 50 returns the list information of available SDKs including the first information and the second information to the client terminal 10 (step S13).

[0059] Next, when the client terminal 10 receives the list information of SDKs from the information processing apparatus 50 (step S2), it displays the list information of SDKs on the display 506 which is a display unit (step S3).

[0060] Next, the client terminal 10 accepts the selection (type of SDK to be used) of one SDK by the partner from the list of SDKs displayed on the display 506.

[0061] For example, in the present embodiment, it is assumed that the target devices are a multifunction peripheral and a PC (personal computer) that cooperates with the multifunction peripheral.

[0062] Examples of the SDK group on the PC side include printer languages, device monitoring APIs, document management APIs, etc. On the other hand, examples of the SDK group on the multifunction peripheral side include multifunction peripheral APIs, etc.

[0063] In the following, for example, it is described that the partner selects "Device Monitoring API" from the "PC - side SDK group" as the type of SDK to be used.

[0064] For example, the "Device Monitoring API" is an API having the following functions for an application on a PC that cooperates with a multifunction peripheral. The "Device Monitoring API" can acquire various types of information (SDK I / F) from the multifunction peripheral as follows. · System information (model name, serial number, etc.) · Paper feed tray information · Paper output tray information · Network interface information · Toner information · Print job information

[0065] Returning to FIG. 9, the client terminal 10 transmits a proposal report including the type of SDK selected by the partner as described above to the information processing apparatus 50 (step S4).

[0066] The acquisition unit 553 of the information processing apparatus 50 receives and acquires a proposal report including the type of SDK selected from the client terminal 10 (step S14). Specifically, the acquisition unit 553 of the information processing apparatus 50 acquires third information that is the type of SDK indicating the SDK that one partner wishes to use.

[0067] The development proposal unit 554 of the information processing apparatus 50 generates proposal information for one partner based on the first information and the second information in response to the proposal report including the acquired type of SDK (step S15). The proposal information generation process in step S15 will be described in detail below.

[0068] Here, FIG. 10 is a flowchart showing the flow of the proposal information generation process. As shown in FIG. 10, first, the information processing apparatus 50 determines whether product information developed by the partner who is the applicant for the proposal is stored in the SDK table T11 (step S151).

[0069] When the information processing apparatus 50 determines that the past product information is not stored in the SDK table T11 (No in step S151), it generates proposal information (including at least one or more of the development target function, use case, product price, price system, customer (device user) layer as the partner's customer information, and development environment information) based on similar product information obtained from the Internet (step S152).

[0070] More specifically, based on the identified product information, the information processing apparatus 50 identifies, from the Internet (or a database within the information processing apparatus 50), information on functions already existing in the market among the functions installed in the product, and provides the identified functions as proposals to the partner. For example, a function using an API (here, the "device monitoring API") selected by the partner can be identified as a target function for development. For example, functions such as the following can be cited. · Obtain the status of the device and notify the administrator when an error occurs. · Periodically collect the counters of the device and perform a graph display.

[0071] On the other hand, when past product information is stored in the SDK table T11 in the information processing apparatus 50 (Yes in step S151), based on the usage history SDK of the SDK table T11 and similar product information obtained from the Internet, proposal information (including at least one or more of the target function for development, use case, product price, price system, customer (device user) layer, development environment information) is generated (step S153). Although details will be described later, compared with the case where no past product information is stored in the SDK table T11 (No in step S151), based on the usage history SDK of the SDK table T11, the partner who is the applicant for the proposal can preferentially propose the target function for development in the form they are good at.

[0072] Returning to FIG. 9, the development proposal unit 554 of the information processing apparatus 50 returns the proposal information generated in response to the proposal declaration to the client terminal 10 (step S16).

[0073] When the client terminal 10 receives the proposal information from the information processing apparatus 50 (step S5), it displays the received proposal information on the display 506 which is a display unit (step S6).

[0074] Note that the information processing apparatus 50 may be able to identify a plurality of proposal information (including at least one or more of the development target function, use case, product price, price system, customer (device user) layer, and development environment information). In this case, the information processing apparatus 50 can prioritize the plurality of proposal information and propose it to the partner. For example, it can be proposed by displaying the proposal information to the partner in a list in the order according to the priority. Here, the priority can be determined according to information such as the appearance frequency and relevance on the Internet, for example.

[0075] Also, when there is a recently added SDK I / F, it is conceivable to raise the proposal priority of the functions using it (here, raising the proposal priority means displaying it higher in the list of functions proposed to the partner). For example, when there is an SDK I / F added within the past few months, the proposal priority of the function can be raised.

[0076] Also, referring to the history information (usage history SDK, installed functions) of the partner who is the proposal declarant from the SDK table T11, identifying the information of the SDK I / F released after the partner provided a product (such as an application) based on the newly installed SDK I / F information in the newly installed SDK I / F information table T21, and raising the proposal priority of the functions using the function.

[0077] Thus, the development support process in the development support system 100 ends.

[0078] Here, an embodiment of the above-described development support process will be described.

[0079] First, the case of the first development consultation will be described.

[0080] In the case of the initial development consultation, the product functions that can be realized using the SDK I / F equipped with the "Device Monitoring API" are listed. Based on the product functions listed in this way and the same kind of product information obtained from the Internet, a proposal for the function to be developed is made.

[0081] Here, the case where the partner of the proposal applicant selects the "Device Monitoring API" from the "PC-side SDKs" is described. In this case, as the "same kind of product information" obtained from the Internet, for example, an application that uses the "Device Monitoring API" can be identified. That is, an application that uses the "Device Monitoring API" selected by the partner or an API similar to the "Device Monitoring API" can be identified.

[0082] Note that here, not only the PC application that uses the "Device Monitoring API", but also an application that uses the "Device Monitoring API" and operates on other types of devices similar to the PC (for example, an information terminal such as a smartphone) may be identified.

[0083] Also, at this time, the information processing device 50 may be configured to define in advance the similarity relationship between devices and the similarity relationship between APIs.

[0084] Note that as proposal information, as described above, in addition to the installed functions, information such as use cases, product prices, price systems, customer (device user) layers, and development environment information should also be included in the proposal. For those, they are also extracted from the same kind of product information obtained from the Internet and proposed. That is, when an application is identified as the "same kind of product information" as shown above, information such as the use case, product price, price system, customer (device user) layer, and development environment information of the application can be extracted and proposed to the partner.

[0085] Next, the case of the second development consultation will be described. The second development consultation refers to the case where a proposal declaration is received from a partner who has history information (usage history SDK, installed functions, etc.) in the SDK table T11.

[0086] In the case of the second development consultation, when the "Device Monitoring API" is selected, for the product developed in the previous time, based on the SDK table T11, the partner who is the source of the proposal declaration identifies the "installed functions" in the products developed in the past.

[0087] Here, if the information processing device 50 has provided functions as shown below in the past, for example, it may be excluded from the proposal. · Obtain the status of the device and notify the administrator when an error occurs.

[0088] On the other hand, the information processing device 50 may preferentially propose functions that expand the previous provided functions.

[0089] As described above, whether to exclude from the proposal or propose an extended function may be set by the partner at the time of proposal declaration.

[0090] Also, the information processing device 50 may propose an extended function only when a predetermined condition is satisfied, such as when there is an SDK I / F added within the past few months, or when there is an SDK I / F released after the partner who is the source of the proposal declaration provides a product (such as an application). For example, in the status monitoring of the device, the information processing device 50 may not only notify of an error but also add information on the occurrence frequency of the same error in the past as notification, and use it as information on the prediction of the occurrence of a failure.

[0091] Note that the content of the proposal varies depending on the differences in the technologies held by the partners. For example, as an example of the SDK type used, the case where the partner selects the "MFP API" from the "MFP-side SDK group" will be described.

[0092] The "Multifunction Device API" is an API that has the following functions for applications on the multifunction device side. The "Multifunction Device API" can obtain various information (SDK I / F) from the multifunction device.

[0093] Also, in the "Multifunction Device API", the following three types of forms can be considered as the types of applications. · Embedded application · Web application · Remote application

[0094] An embedded application is a JAVA (registered trademark) application that operates on the control panel of the multifunction device. An embedded application is, for example, a native application, which is an application installed and used on devices such as multifunction devices. A web application is a web application that operates on the browser of the control panel of the multifunction device. A web application is an application in which a program on a cloud server, a program on a web browser, and a native application cooperate to perform processing, and it does not require installation on devices such as multifunction devices. A remote application is a remote application that uses the functions of the multifunction device from an external terminal, for example, an application that cooperates with an application or a browser on the external terminal.

[0095] Among the "Multifunction Device APIs", the APIs that can be used differ depending on the form of the application. Therefore, there will also be differences in the proposed installed functions.

[0096] For example, if a partner who has selected the "Multifunction Machine API" has previously developed in the form of a "Web application" and is proficient in developing in the form of a "Web application" (when it is determined that an SDK corresponding to a Web application is stored as a used SDK in the SDK table T11), in the next proposal (when a proposal declaration is received from the partner), a product proposal in the form of a "Web application" will be given priority.

[0097] For example, if it is determined that a Web application that realized a scanning function was developed last time (when it is determined that a scanning-related function is stored as a mounted function in the SDK table T11), in this case, a Web application that realizes a printing function will be proposed.

[0098] Conventionally, a service that mechanically makes development proposals to partners has not been provided, and there are problems such as personalized proposals for development support and an increase (not a decrease) in the man-hours of the supporters. In this regard, according to this embodiment, when consulting with a partner about the content of product development, by receiving a declaration of the type of SDK used from the partner, it is possible to mechanically propose the content of product development to the partner, which has the effect of.

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

[0100] The device group described in the embodiments merely represents one of the multiple computing environments for implementing the embodiments disclosed in this specification. In one embodiment, the information processing apparatus 50 includes a plurality of computing devices such as a server cluster. The plurality of computing devices are configured to communicate with each other via any type of communication link including a network or a shared memory, and implement the processes disclosed in this specification. Similarly, the client terminal 10 can include a plurality of computing devices configured to communicate with each other.

[0101] Note that the client terminal 10 is not limited to a PC or a smartphone as long as it is a device equipped with a communication function. The client terminal 10 can be, for example, an output device such as a PJ (Projector), an IWB (Interactive White Board), a digital signage, a HUD (Head Up Display) device, an industrial machine, an imaging device, a sound collection device, a medical device, a network home appliance, a connected car, a notebook PC (Personal Computer), a mobile phone, a tablet terminal, a game machine, a PDA (Personal Digital Assistant), a digital camera, a wearable PC, or a desktop PC.

[0102] Aspects of the present invention are as follows, for example. <1> An information storage unit that stores a table associating at least one or more SDKs with the availability and usage history of the SDKs for each user; An extraction unit that extracts first information indicating the SDKs available to a user and second information indicating the user's previous usage history based on the table stored by the information storage unit; An acquisition unit that acquires third information indicating the SDKs that the user wishes to use; A development proposal unit that makes a development proposal to the user based on at least the first information, the second information, and the third information; An information processing apparatus characterized by comprising <2> The extraction unit extracts the second information without including information regarding another user different from the one user. The information processing apparatus according to <1>, characterized by this. <3> The extraction unit extracts only the information associated with the user based on the information managed for each user in the information storage unit. The information processing apparatus according to <1> or <2>, characterized by this. <4> The information storage unit further has an information table not belonging to the user. The development proposal unit makes the development proposal based also on the information table. The information processing apparatus according to any one of <1> to <3>, characterized by this. <5> The development proposal unit includes, in the development proposal, at least one or more of the functions to be mounted, use cases, customer information of the one user, price, and development environment information. The information processing apparatus according to any one of <1> to <4>, characterized by this. <6> In a development support system including a client terminal and an information processing apparatus, the information processing apparatus an information storage unit that stores a table associating at least one or more SDKs with the availability and usage history of the SDK for each user; an extraction unit that extracts first information indicating an SDK available to one user and second information indicating the usage history of the one user so far based on the table stored by the information storage unit in response to a request transmission from the client terminal; an acquisition unit that acquires third information indicating an SDK that the one user wishes to use in response to a proposal declaration from the client terminal; a development proposal unit that makes a development proposal to the one user via the client terminal based on at least the first information, the second information, and the third information; A development support system characterized by comprising. <7> Cause a computer to store an information storage unit that stores a table associating at least one or more SDKs with the availability and usage history of the SDK for each user; an extraction unit that extracts first information indicating an SDK that can be used by one user and second information indicating the previous usage history of the one user based on the table stored by the information storage unit; an acquisition unit that acquires third information indicating an SDK that the one user wishes to use; a development proposal unit that makes a development proposal to the one user based on at least the first information, the second information, and the third information; A program for causing the above to function. [Explanation of Signs]

[0103] 10 Client terminal 50 Information processing device 100 Development support system 551 Information storage unit 552 Extraction unit 553 Acquisition unit 554 Development proposal unit [Prior Art Documents] [Patent Documents]

[0104] [Patent Document 1] Japanese Patent Application Publication No. 2018-522317

Claims

1. An information storage unit that stores a table associating at least one or more SDKs with the availability and usage history of the SDKs for each user; An extraction unit that extracts first information indicating SDKs available to one user and second information indicating the user's usage history so far based on the table stored by the information storage unit; An acquisition unit that acquires third information indicating an SDK that the one user wishes to use; A development proposal unit that makes a development proposal to the one user based on at least the first information, the second information, and the third information; An information processing apparatus, characterized by comprising the above.

2. The extraction unit extracts the second information without including information regarding other users different from the one user. The information processing apparatus according to claim 1, characterized by the above.

3. The extraction unit extracts only information associated with the user based on information managed for each user in the information storage unit. The information processing apparatus according to claim 1, characterized by the above.

4. The information storage unit further has an information table that does not belong to the user. The development proposal unit makes the development proposal based also on the information table. The information processing apparatus according to claim 1, characterized by the above.

5. The development proposal unit includes at least one or more of functions to be installed, use cases, customer information of the one user, price, and development environment information in the development proposal. The information processing apparatus according to claim 1, characterized by the above.

6. In a development support system including a client terminal and an information processing apparatus, The information processing apparatus is An information storage unit that stores a table associating at least one or more SDKs with the availability and usage history of the SDKs for each user; An extraction unit that extracts first information indicating SDKs available to one user and second information indicating the user's usage history so far based on the table stored by the information storage unit in response to a request transmission from the client terminal; An acquisition unit that acquires third information indicating an SDK that the one user wishes to use in response to a proposal declaration from the client terminal; A development proposal unit that makes a development proposal to the one user via the client terminal based on at least the first information, the second information, and the third information; A development support system characterized by comprising [

7. ] a computer, an information storage unit that stores a table associating and storing at least one or more SDKs with the availability and usage history of the SDKs for each user; an extraction unit that extracts first information indicating SDKs available to a user and second information indicating the user's usage history so far, based on the table stored by the information storage unit; an acquisition unit that acquires third information indicating an SDK that the user wishes to use; a development proposal unit that makes a development proposal to the user based on at least the first information, the second information, and the third information; a program for causing the computer to function as such.

Citation Information

Patent Citations

  • Software Development and Distributed Platform

    JP2018522317A