IP Library Granted Patent US 11,977,875
Granted Patent B2
US 11,977,875 · App. 17/652,808 · Granted May 7, 2024

Update management system and method

Inventors: Mark Edward Molander (Cary, NC); Andrew James Palay (Chapel Hill, NC)
Assignee: LENOVO (SINGAPORE) PTE. LTD.
G06F8/65G06F8/61
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,977,875
App. No.
17/652,808
Filed
Feb 28, 2022
Granted
May 7, 2024
Kind
B2
Examiner
LEE, MARINA
Art Unit
2192
USPC
717/168
Abstract

An update management system includes one or more processors that obtain collective data compiled from a group of computer devices that run an updated version of a software program. The collective data includes at least one of usage data of the computer devices in the group or user feedback directed to operation of the updated version of the software program. The one or more processors determine, based at least on an analysis of the collective data, that the updated version of the software program should be installed on a first computer device controlled by a first user, and generate a control signal to at least one of notify the first user that the updated version is recommended, schedule installation of the updated version, or automatically install the updated version on the first computer device.

Claims (33)

1. An update management system comprising:

a memory configured to store program instructions; and

one or more processors operably connected to the memory, wherein the program instructions are executable by the one or more processors to:

obtain collective data compiled from a group of computer devices that run an updated version of a software program, the collective data including usage data of the computer devices in the group and user feedback directed to operation of the updated version of the software program, the user feedback including at least one of ratings or reviews of the updated version provided by users that control at least some of the computer devices in the group;

determine, based at least on an analysis of the collective data, to install the updated version of the software program on a first computer device that operates a previous version of the software program; and

generate a control signal to automatically install the updated version on the first computer device based on the determination to install the updated version on the first computer device.

2. The update management system of claim 1 , wherein the one or more processors obtain at least some of the user feedback from posts generated and submitted by the users via a network.

3. The update management system of claim 1 , wherein the usage data of the collective data includes one or more of performance parameters of the computer devices that run the updated version of the software program, failure events of the computer devices that run the updated version, or penetration data indicative of a prevalence of the updated version of the software program within a community of computer devices broader than the group.

4. The update management system of claim 1 , wherein the software program includes firmware, and the first computer device and at least some of the computer devices in the group are servers.

5. The update management system of claim 1 , wherein the one or more processors further execute the program instructions to obtain single user data that is specific to a first user that controls the first computer device, the one or more processors configured to determine to install the updated version of the software program on the first computer device based on both the analysis of the collective data and an analysis of the single user data.

6. The update management system of claim 5 , wherein the single user data comprises at least one of user preference settings selected by the first user or usage data of the first computer device while operating the previous version of the software program.

7. The update management system of claim 1 , wherein the one or more processors further execute the program instructions to analyze the collective data by assigning point values to different elements of the collective data and compiling the point values to produce a score associated with the updated version of the software program, wherein the one or more processors determine to install the updated version of the software program on the first computer device based on the score.

8. The update management system of claim 7 , wherein the one or more processors are configured to determine to install the updated version of the software program on the first computer device in response to the score being within a first designated range, and atoll determine not to install the updated version of the software program on the first computer device in response to the score being within a second designated range that is discrete from the first designated range.

9. The update management system of claim 8 , wherein the one or more processors are configured to determine to install the updated version of the software program on the first computer device within a first period of time in response to the score being within a first portion of the first designated range, and to install the updated version of the software program on the first computer device within a different, second period of time in response to the score being within a second portion of the first designated range.

10. The update management system of claim 1 , wherein the one or more processors further execute the program instructions to analyze the collective data by inputting the collective data into an artificial neural network trained to generate, as an output, a recommendation whether or not to install the updated version of the software program on the first computer device.

11. The update management system of claim 1 , wherein the one or more processors are configured to generate the control signal to automatically install the updated version of the software program on the first computer device one of (i) immediately or (ii) at a designated future time.

12. The update management system of claim 1 , wherein the one or more processors are configured to obtain the user feedback including the at least one of ratings or reviews by generating a graphical user interface for display on the computer devices in the group, the graphical user interface prompting the corresponding users that control the computer devices in the group to submit independent observations of the respective users regarding the operation of the updated version of the software program.

13. A method comprising:

obtaining, via one or more processors, collective data compiled from a group of computer devices that run an updated version of a software program, the collective data including usage data of the computer devices in the group and user feedback directed to operation of the updated version of the software program, the user feedback including at least one of ratings or reviews of the updated version provided by users that control at least some of the computer devices in the group;

determining, based at least on an analysis of the collective data, to install the updated version of the software program on a first computer device that operates a previous version of the software program; and

generating a control signal to automatically install the updated version on the first computer device based on determining to install the updated version on the first computer device.

14. The method of claim 13 , further comprising obtaining single user data that is specific to a first user that controls the first computer device, the single user data comprising at least one of user preference settings selected by the first user or usage data of the first computer device while operating the previous version of the software program, wherein determining to install the updated version of the software program on the first computer device is based on both the analysis of the collective data and an analysis of the single user data.

15. The method of claim 13 , further comprising analyzing the collective data by inputting the collective data into an artificial neural network trained to generate, as an output, a recommendation as to whether or not to install the updated version of the software program on the first computer device, wherein the determining step is based on the recommendation of the artificial neural network.

16. The method of claim 13 , further comprising:

assigning point values to different elements of the collective data; and

compiling the point values to produce a score associated with the updated version of the software program, wherein the determining step is based on a comparison of the score to one or more designated ranges.

17. The method of claim 13 , wherein the at least one of ratings or reviews of the updated version of the software program are independently generated and submitted by a plurality of the users that control at least some of the computer devices in the group, each rating or review of the user feedback being based on an observation of the operation of the updated version by the respective user that generates the rating or review.

18. A computer program product comprising a non-transitory computer readable storage medium, the non-transitory computer readable storage medium comprising computer executable code configured to be executed by one or more processors to:

obtain collective data compiled from a group of computer devices that run an updated version of a software program, the collective data including usage data of the computer devices in the group and user feedback directed to operation of the updated version of the software program, the user feedback including at least one of ratings or reviews of the updated version provided by users that control at least some of the computer devices in the group;

determine, based at least on an analysis of the collective data, to install the updated version of the software program on a first computer device that operates a previous version of the software program; and

generate a control signal to automatically install the updated version on the first computer device based on the determination to install the updated version on the first computer device.

19. The program product of claim 18 , wherein the computer executable code is further configured to be executed by the one or more processors to obtain single user data that is specific to a first user that controls the first computer device, the one or more processors configured to determine to install the updated version of the software program on the first computer device based on both the analysis of the collective data and an analysis of the single user data.

20. The program product of claim 18 , wherein the computer executable code is further configured to be executed by the one or more processors to analyze the collective data by assigning values to different elements of the collective data and compiling the values to produce a score associated with the updated version of the software program, wherein the one or more processors determine to install the updated version of the software program on the first computer device based on the score.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2025
From: LENOVO (SINGAPORE) PTE LTD.
To: LENOVO PC INTERNATIONAL LIMITED
Reel/Frame 070269/0077 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2025
From: LENOVO PC INTERNATIONAL LIMITED
To: LENOVO SWITZERLAND INTERNATIONAL GMBH
Reel/Frame 070269/0092 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2022
From: LENOVO (UNITED STATES) INC.
To: LENOVO (SINGAPORE) PTE. LTD.
Reel/Frame 061880/0110 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2022
From: MOLANDER, MARK EDWARD; PALAY, ANDREW JAMES
To: LENOVO (UNITED STATES) INC.
Reel/Frame 059120/0971 →
Continuity (1)
Related Publication 20230273783A1 · Aug 31, 2023