Using machine learning for security anomaly detection and user experience inference
AssigneeAT&T Intellectual Property I, L.P.
InventorWei Wang
Life of this patent
Estimating the term…
Abstract
The system may obtain log data and other device/statistical information and automatically identify a normal user experience, positive user experience, negative user experience, or the like. For the negative user experience, different groups of anomalies can be further identified as different types of negative user experiences. Such a system can initiate more targeted user experience study, identify software bugs, configuration issues, or security risks.
Claims20
A method comprising:
- determining, by a processing system including a processor, a plurality of state flows according to a graph of a software service, the graph comprising nodes interconnected by edges, the nodes corresponding to states of the software service and the edges corresponding to transitions between the nodes, wherein the plurality of state flows comprises a first state flow and a second state flow, the first state flow comprises a first group of nodes interconnected by a first group of edges and the second state flow comprises a second group of nodes interconnected by a second group of edges;
- determining, by the processing system, a plurality of sessions for the software service, wherein the plurality of sessions comprise a first group of sessions that executed the first state flow and a second group of sessions that executed the second state flow;
- receiving, by the processing system, information regarding the plurality of state flows and the plurality of sessions for the software service;
- sending, by the processing system and based on the information, an indication that the second state flow is likely causing a negative user experience;
- and
- in response to the indication that the second state flow is likely causing the negative user experience, sending, by the processing system, an alert to a user profile associated with a session of the second group of sessions.
An apparatus comprising:
- a processing system including a processor;
- and
- a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations, the operations comprising:
- determining a plurality of state flows according to a graph of a software service, the graph comprising nodes interconnected by edges, the nodes corresponding to states of the software service and the edges corresponding to transitions between the nodes, wherein the plurality of state flows comprises a first state flow and a second state flow, the first state flow comprises a first group of nodes interconnected by a first group of edges and the second state flow comprises a second group of nodes interconnected by a second group of edges;
- determining a plurality of sessions for the software service, wherein the plurality of sessions comprise a first group of sessions that executed the first state flow and a second group of sessions that executed the second state flow;
- receiving information regarding the plurality of state flows and the plurality of sessions for the software service;
- sending, based on the information, an indication that the second state flow is likely causing a negative user experience;
- and
- in response to the indication that the second state flow is likely causing the negative user experience, sending an alert to a user profile associated with a session of the second group of sessions.
A non-transitory, computer readable storage medium storing computer executable instructions that when executed by a processing system including a processor, facilitate performance of operations, the operations comprising:
- determining a plurality of state flows according to a graph of a software service, the graph comprising nodes interconnected by edges, the nodes corresponding to states of the software service and the edges corresponding to transitions between the nodes, wherein the plurality of state flows comprises a first state flow and a second state flow, the first state flow comprises a first group of nodes interconnected by a first group of edges and the second state flow comprises a second group of nodes interconnected by a second group of edges;
- determining a plurality of sessions for the software service, wherein the plurality of sessions comprise a first group of sessions that executed the first state flow and a second group of sessions that executed the second state flow;
- receiving information regarding the plurality of state flows and the plurality of sessions for the software service;
- sending, based on the information, an indication that the second state flow is likely causing a negative user experience;
- and
- in response to the indication that the second state flow is likely causing the negative user experience, sending an alert to a user profile associated with a session of the second group of sessions.
Dependencies are inferred from the claim text.