Targeted user notification of bug fixes

US10289528B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10289528-B2
Application numberUS-201715467905-A
CountryUS
Kind codeB2
Filing dateMar 23, 2017
Priority dateMar 23, 2017
Publication dateMay 14, 2019
Grant dateMay 14, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems and methods for sending in-product notifications to individual users of a software product or a specifically identified subset of users of the software product selected via their previously observed interactions with the software product. In addition, targeted notifications of bug fixes can be sent to specific users who have encountered an error condition or performance issue that a particular bug fix is designed to correct.

First claim

Opening claim text (preview).

What is claimed is: 1. A system for sending in-product notifications to individual users of a software product or a specifically identified subset of users of the software product selected via their previously observed interactions with the software product, the system comprising: one or more processors; and one or more computer-readable media having stored thereon instructions that are executable by the one or more processors, including instructions that are executable to configure the computer system to perform at least the following: collect telemetry data associated with each user of the software product relating to the user's interactions with or use of the software product and store the telemetry data in a telemetry data database; identify an error condition in the software product that requires correction; traverse a database of existing updates to identify any prior update that relates to the error condition and, if no prior update exists, create an update to correct the error condition; query the telemetry data database to identify all users of the software product that have encountered the error condition and to create an identified subset of users associated with that error condition; and provide an in-product notification of the update to the identified subset of users to correct the error condition in the software product. 2. The system of claim 1 , wherein one or more computer-readable media further have stored thereon instructions that are executable by the one or more processors to configure the computer system to perform at least the following: track, in the telemetry data database, which users have received an in-product notification for a particular update. 3. The system of claim 2 , wherein one or more computer-readable media further have stored thereon instructions that are executable by the one or more processors to configure the computer system to perform at least the following: associate each update with its corresponding error condition; and store each update and its corresponding error condition in a notification database. 4. The system of claim 3 , wherein one or more computer-readable media further have stored thereon instructions that are executable by the one or more processors to configure the computer system to perform at least the following: for each update stored in the notification database, periodically query the telemetry data database to identify any additional users who have encountered the error condition associated with that update and have not previously been notified of the update; and provide additional in-product notifications of the update to the additional users. 5. The system of claim 4 , wherein the telemetry data database is part of a connected cloud service that exposes an API that the software product calls and collects data indicative of current client side configuration and user information. 6. The system of claim 5 , wherein the API returns to the user any new in-product notifications identified for a particular user. 7. The system of claim 6 , wherein the telemetry data associated with a user further comprises user information including any one or more of userID online user ID, machine ID, instance ID or similar ID used by the system to identify a particular user. 8. The system of claim 7 , wherein the telemetry data associated with a user comprises client side configuration data including any one or more of version, locale or SKU. 9. The system of claim 8 , wherein the telemetry data associated with a user further comprises usage data indicative of the user's use of and interaction with the software product or portions thereof. 10. The system of claim 9 , wherein usage data further comprises error condition data indicative of the occurrence of a software error and conditions existing at the time of the occurrence of the software error. 11. The system of claim 10 , wherein the software product incorporates a notification hub and the notification is provided to each user via the notification hub. 12. The system of claim 10 , wherein notification is provided to each user via a pop-up modal dialog within the software product. 13. The system of claim 10 , wherein one or more computer-readable media further have stored thereon instructions that are executable by the one or more processors to configure the computer system to perform at least the following: track, in the notification database, each time a particular notification is returned to any user; and periodically query the notification database and delete any notifications that have not been provided to any user for a time interval that equals or exceeds a predetermined period of time. 14. A method for sending in-product notifications to individual users of a software product or a specifically identified subset of users of the software product selected via their previously observed interactions with the software product, the method comprising: collecting telemetry data associated with each user of the software product relating to the user's interactions with or use of the software product and store the telemetry data in a telemetry data database; identifying an error condition in the software product that requires correction; traversing a database of existing updates to identify any prior update that relates to the error condition and, if no prior update exists, creating an update to correct the error condition; querying the telemetry data database to identify all users of the software product that have encountered the error condition and to create an identified subset of users associated with that error condition; and providing an in-product notification of the update to the identified subset of users to correct the error condition in the software product. 15. The method of claim 14 further comprising tracking, in the telemetry data database, which users have received an in-product notification for a particular update. 16. The method of claim 15 further comprising: associating each update with its corresponding error condition; and storing each update and its corresponding error condition in a notification database. 17. The method of claim 16 , further comprising: for each update stored in the notification database, periodically querying the telemetry data database to identify any additional users who have encountered the error condition associated with that update and have not previously been notified of the update; and providing additional in-product notifications of the update to the additional users. 18. The method of claim 17 , wherein the telemetry data database is part of a connected cloud service that exposes an API that the software product calls and collects data indicative of current client side configuration and user information. 19. The method of claim 18 , wherein the API returns to the user any new in-product notifications identified for a particular user. 20. A system for sending in-product notifications to individual users or a specifically identified subset of users of a software product selected via their previously observed interactions with the software product, the system comprising: one or more processors; and one or more computer-readable media having stored thereon instructions that are executable by the one or more processors, including instructions that are executable to configure the computer system to perform at least the following: store a collection of notifications to be sent to one or more identified users of the software product and their selected configuration in a cloud

Assignees

Inventors

Classifications

  • Electricity · mapped topic

  • G06F11/366Primary

    using diagnostics (G06F11/0703 takes precedence) · CPC title

  • by keeping history of different configuration generations or by rolling back to previous configuration versions · CPC title

  • Targeted advertisements · CPC title

  • After-sales · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10289528B2 cover?
Systems and methods for sending in-product notifications to individual users of a software product or a specifically identified subset of users of the software product selected via their previously observed interactions with the software product. In addition, targeted notifications of bug fixes can be sent to specific users who have encountered an error condition or performance issue that a par…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/366. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 14 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).