Patents Examined by Erika Kretzmer
  • Patent number: 10592396
    Abstract: Presenting historical state associated with prior execution of an entity. Based on replaying segment(s) of execution of an entity based on a trace, embodiments could present an indication of whether a value of a code element is, at a first execution time point, unknown, known, previously known, and/or known in the future. Additionally, or alternatively, embodiments could present an indication of a value relied upon by simulated execution of a function at a second execution time point, along with an indication of a timing of knowledge of the value in relation to the second execution time point. Additionally, or alternatively, embodiments could present an indication that a return value of a function would be known if the function had executed at a third execution time point, or an indication that the return value would be unknown if the function had executed at the third execution time point.
    Type: Grant
    Filed: April 23, 2018
    Date of Patent: March 17, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Henry Gabryjelski, Jackson Michael Davis, Patrick Lothian Nelson, Del Myers, Thomas Lai, Jordi Mola
  • Patent number: 10474562
    Abstract: An online system ranks test cases run in connection with check-in of sets of software files in a software repository. The online system ranks the test cases higher if they are more likely to fail as a result of defects in the set of files being checked in. Accordingly, the online system informs software developers of potential defects in the files being checked in early without having to run the complete suite of test cases. The online system determines a vector representation of the files and test cases based on a neural network. The online system determines an aggregate vector representation of the set of files. The online system determines a measure of similarity between the test cases and the aggregate vector representation of the set of files. The online system ranks the test cases based on the measures of similarity of the test cases.
    Type: Grant
    Filed: September 20, 2017
    Date of Patent: November 12, 2019
    Assignee: salesforce.com
    Inventors: J. Justin Donaldson, Benjamin Busjaeger, Siddharth Rajaram, Berk Coker, Hormoz Tarevern
  • Patent number: 10394690
    Abstract: Techniques for generating serialized view models that are used for both debugging an application and application support. The techniques include executing an application, creating a view model associated with the application, the view model including information associated with a service provided by the application, and presenting a user interface associated with the view model. The techniques can further include identifying, while presenting the user interface, an error occurring with the application, capturing a stack trace corresponding to the error, capturing a process image of the view model, serializing the process image of the view model to generate a serialized view model, and sending the stack trace and the serialized view model to a service. The service can then use the stack trace and the serialized view model to debug the application.
    Type: Grant
    Filed: December 30, 2015
    Date of Patent: August 27, 2019
    Assignee: Square, Inc.
    Inventors: Zachary Potter, Kathryne Hawthorne, Victor Tsou
  • Patent number: 10365906
    Abstract: Provided is a compile time interface to run-time libraries that can reduce processing overhead in loops. A compile time interface identifies, at compile time, a loop that contains a library function in response to detecting a compiler hint associated with the library function. The compile time interface generates a bypass structure and modifies the loop to include a call to a planning function for a first pass through the loop and a call to a bypass function for one or more subsequent passes though the loop. The planning function sets the bypass function equal to an optimized library if one or more selected arguments to the library function are loop-invariant.
    Type: Grant
    Filed: May 23, 2017
    Date of Patent: July 30, 2019
    Assignee: Intel Corporation
    Inventors: Dmitry G. Baksheev, Gregory M. Henry
  • Patent number: 10365994
    Abstract: Dynamically scheduled testing of a software application on one or more devices are disclosed. The system can schedule and execute of one or more test cases associated with a software application. When a device becomes available for testing, the system can determine the list of commits that have not yet been tested. If there are outstanding untested commits, the system can determine the list of test cases in a test plan that are to be scheduled and executed. For each test in the list of test cases, the system can compute an urgency value. Urgency value can be a function of the untested commits. For example, urgency value can be the number of untested commits associated with each test case. The system can then sort the test cases based on the urgency value and schedule the most “urgent” test case for execution.
    Type: Grant
    Filed: April 24, 2017
    Date of Patent: July 30, 2019
    Assignee: Facebook, Inc.
    Inventors: Juyuan Yang, Yi Zeng, Scott Kenneth Yost
  • Patent number: 10296443
    Abstract: A system and methods for automatically localizing faults for functional field failures that enables users to enter symptoms of a failure that occur during deployment of a given application along with the values of the input and configuration parameters in order to return locations in the source code that are likely to contain specific faults as well as show navigation paths from a suggested to the failure such that the code may be corrected. Successful and faulty runs of a software application are executed, and used to obtain ground facts and a knowledge base. A particular formula for the ground facts and knowledge base is discussed. A Markov Logic Network (MLN) is generated from the ground facts and knowledge base. Abductive reasoning based on the MLN is used to localize faults for the user-entered functional field failures.
    Type: Grant
    Filed: October 6, 2016
    Date of Patent: May 21, 2019
    Assignee: The Board of Trustees of the University of Illinois
    Inventor: Mark Grechanik
  • Patent number: 10282275
    Abstract: Management of an extensive code database having multiple user tenants building code is provided. A request to check-in code is received, and a build and validation to check-in the update to a user's code is performed. The validation results in indication of an error due to a bad state of the system that performed the build. The build machine is rebooted, and a second build is performed. Optionally, a user is prompted during a grace time period to cancel the corrective action of rebooting the build machine. Optionally, the validation error may be indicated as a product issue, a network issue, or a known limitation in the compiler. Optionally, other corrective actions such as preventing retrying the build and escalating the error may be taken. Optionally, the build may be prevented when the check-in includes code that produced an error on a previous build.
    Type: Grant
    Filed: February 22, 2017
    Date of Patent: May 7, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Carlo Rivera, Derek Ying Kit Leung, Barrett E. Amos
  • Patent number: 10282182
    Abstract: Technologies for optimized binary translation include a computing device that determines a cost-benefit metric associated with each translated code block of a translation cache. The cost-benefit metric is indicative of translation cost and performance benefit associated with the translated code block. The translation cost may be determined by measuring translation time of the translated code block. The cost-benefit metric may be calculated using a weighted cost-benefit function based on an expected workload of the computing device. In response to determining to free space in the translation cache, the computing device determines whether to discard each translated code block as a function of the cost-benefit metric. In response to determining to free space in the translation cache, the computing device may increment an iteration count and skip each translated code block if the iteration count modulo the corresponding cost-benefit metric is non-zero. Other embodiments are described and claimed.
    Type: Grant
    Filed: September 23, 2016
    Date of Patent: May 7, 2019
    Assignee: Intel Corporation
    Inventors: Paul Caprioli, Jeffrey J. Cook
  • Patent number: 10282186
    Abstract: A component manager may be used to install or upgrade components of a software suite. The component manager may be installed via an application store of an electronic device. The component manager may determine a plurality of applications to install or upgrade based at least in part on the versions of the applications, a version numbering scheme, and changes to a database schema associated with the software suite. The version numbering scheme is designed to maintain compatibility between the applications in the software suite. The component manager may install the plurality of applications and/or upgrade a database schema in order to maintain compatibility between the components of the software suite.
    Type: Grant
    Filed: June 13, 2014
    Date of Patent: May 7, 2019
    Assignee: BlackBerry Limited
    Inventors: Francis Patrick Judge, Katerina Doudkin
  • Patent number: 10255169
    Abstract: A method to test a software application based on grouping application features based on categories of the human mind and human senses. Methods and systems for testing an application including generating test scenarios to test an application, the method comprising: extracting a plurality of features associated with the application; determining a match for each of the plurality of features with at least one of a plurality of predefined application features using a list of predefined application features mapped with a plurality of groups representing human senses such as sight, hearing, touch, and balance; creating a data structure having nodes arranged in layers based on the match determined for each of the plurality of features with at least one of the plurality of groups; and generating a plurality of test scenarios for the application based on the data structure based on a combinatorial analysis at each of the plurality of nodes of the data structure.
    Type: Grant
    Filed: November 18, 2016
    Date of Patent: April 9, 2019
    Assignee: Wipro Limited
    Inventor: Uday Shreepad Tandi
  • Patent number: 10248547
    Abstract: Some embodiments provide a program that collects a set of call stack data associated with a set of test cases executed on an application. The program further generates a set of call graphs based on the set of call stack data. Each call graph in the set of call graphs includes a set of nodes representing a set of functions in the application executed in the corresponding test case in the set of test cases. The program also determines, for each call graph in the set of call graphs, a set of short paths and a set of short sequences in the call graph. The program further receives a notification indicating a modification to a function in the application. The program also determines a subset of the set of test cases to test the modification to the function based on the sets of short paths and the sets of short sequences in the set of call graphs.
    Type: Grant
    Filed: April 18, 2017
    Date of Patent: April 2, 2019
    Assignee: SAP SE
    Inventors: Yang Peng, Yunfeng Jiang, Junshan Xu, Yueling Wang
  • Patent number: 10235140
    Abstract: A device may receive a model generated via a technical computing environment, where the model included a state chart with one or more variables. The device may receive a selection of a particular variable from the state chart, and may provide, for display and based on the selection, a user interface for defining attributes associated with the particular variable. The device may receive, via the user interface, one or more user-defined attributes for the particular variable, where at least one of the one or more user-defined attributes is defined independently of a reference to the particular variable. The device may apply the one or more user-defined attributes in the model and the state chart.
    Type: Grant
    Filed: May 23, 2014
    Date of Patent: March 19, 2019
    Assignee: The MathWorks, Inc.
    Inventors: Srinath Avadhanula, Pieter J. Mosterman, Ebrahim Mestchian
  • Patent number: 10216855
    Abstract: A computer system and a computer readable medium are provided with program instructions to cause a processor to perform an approach for adjusting a web application to comply with user interface capabilities of a device type. A processor monitors usage patterns of a web application by a user, including monitoring device type. The processor monitors input and output network communication data of a resource of a web application. The processor converts the monitored network data to Extensible Markup Language Schema (XSD), and updates documentation of the resource of the web application with the converted data. The processor further receives user interface capabilities of a device type and analyzes a web application for compatibility with the user interface capabilities of the device type. Based on the compatibility analysis, at least one user interface element is be modified within presentation of the web application on the device type.
    Type: Grant
    Filed: June 26, 2014
    Date of Patent: February 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Todd E. Kaplinger, Victor S. Moore, Wendi L. Nusbickel
  • Patent number: 10216856
    Abstract: In an approach for adjusting a web application to comply with user interface capabilities of a device type, a processor monitors usage patterns of a web application by a user, including monitoring device type. The processor monitors input and output network communication data of a resource of a web application. The processor converts the monitored network data to Extensible Markup Language Schema (XSD), and updates documentation of the resource of the web application with the converted data. The processor further receives user interface capabilities of a device type and analyzes a web application for compatibility with the user interface capabilities of the device type. Based on the compatibility analysis, at least one user interface element is be modified within presentation of the web application on the device type. A processor generates a version of the web application compatible with the user interface capabilities of the device type.
    Type: Grant
    Filed: January 26, 2015
    Date of Patent: February 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Todd E. Kaplinger, Victor S. Moore, Wendi L. Nusbickel
  • Patent number: 10185550
    Abstract: Updating computer program(s) installed on a programmable device using a distributed ledger that is based on cryptography and blockchain technology is described. A distributed ledger logic/module can commit, to the distributed ledger, a first configuration of a computer program installed on a device. The logic/module can also receive requests to apply a first update and a second update to the first configuration. The logic/module can receive a second configuration of the computer program that is based on the first update and the first configuration, and also commit the second configuration to the distributed ledger. Furthermore, the logic/module can determine that the second update cannot be applied to the first configuration and receive a third configuration of the computer program that is based on the second update and the second configuration. The logic/module can also commit the third configuration to the distributed ledger. Other advantages and embodiments are described.
    Type: Grant
    Filed: September 28, 2016
    Date of Patent: January 22, 2019
    Assignee: McAfee, Inc.
    Inventors: Ned M. Smith, Zheng Zhang, Thiago J. Macieira
  • Patent number: 10152308
    Abstract: A test interface generator accesses metadata defining a user interface display. The test interface generator generates a strongly typed application programming interface (API) for the user interface display, during compile time, based on the metadata defining the user interface display. A static type checker performs a static type check of each API during compilation of the application. A test system programmatically interacts with the user interface display through the strongly typed API.
    Type: Grant
    Filed: May 1, 2015
    Date of Patent: December 11, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Alexandru Prodan, Jesse S. Bangs, Leo A. Dignan, David S. Froslie, Simon K. Ejsing
  • Patent number: 10127129
    Abstract: A software execution profiling method comprising: collecting, from a plurality of subsystems of a client machine, information including an event report corresponding to each of a plurality of events occurring in the plurality of subsystems, each event report specifying an event identifier and a cause identifier; responsive to determining that the cause identifier includes an empty field, determining time values in the information associated with the first event and a second which caused the first event; determining to indicate a causation relationship between the first event and the second event in view of the time value of the second event being within the defined period of the time value of the first event; and presenting via a graphical user interface (GUI) the events and an indicator of the causation relationship.
    Type: Grant
    Filed: February 27, 2007
    Date of Patent: November 13, 2018
    Assignee: Red Hat, Inc.
    Inventor: Steven W. Parkinson
  • Patent number: 10114620
    Abstract: Different segments of a web page may display multiple values from different fields from a managed component. In dynamic web pages, processing is done in top down order. A web page may have multiple segments. The method uses hidden fields in the web page and a new manager superclass. The manager superclass is extended by a managed component. The managed component is displayed in multiple segments of a web page. The manager superclass provides a segment entry method, a segment exit method, and a component entry method to the managed component. The manger superclass provides getter and setter methods for properties of the visual component. An index is assigned to each segment in the web page. The manager superclass defines a segment index method that allows the managed component to query which of the segments in the web page is active when a getter or setter method is invoked.
    Type: Grant
    Filed: August 31, 2005
    Date of Patent: October 30, 2018
    Assignee: International Business Machines Corporation
    Inventor: Brian Gin Farn
  • Patent number: 10089207
    Abstract: A computing device executes an application having a number of phases. The computing device collects performance data indicative of a number of performance attributes of the computing device during execution of the application. The performance attributes include page swap data, page fault data, and process queue data. The computing device merges data collected from a processor performance monitoring unit with data collected from an operating system of the computing device. The computing device partitions the performance data into a number of cluster models, applies a classification algorithm to each cluster model, and selects the cluster model with the lowest misclassification rate. The computing device associates each cluster of the cluster model to a phase of the software application. Compatible phases of software applications are scheduled based on the selected cluster model.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: October 2, 2018
    Assignee: Intel Corporation
    Inventors: Shruthi A. Deshpande, Peng-Fei Chuang, Kingsum Chow
  • Patent number: 10089092
    Abstract: A method for creating a product which is a single file executable by a product browser is provided. The method includes: initiating installation operations for application software on a computer system; recording the installation operations of the application software via a product browser, wherein the product browser is configured to create the product and execute the product; and creating the product based on the recording, wherein the creating structures the product with critical dynamic-link library (dll) files that will be pre-fetched by the second instance of the product browser, and wherein the product is structured with a virtualized private registry to be integrated with an operating system registry upon execution such that certain registry keys are virtualized in the virtualized private registry and other registry keys will be deferred to the operating system registry.
    Type: Grant
    Filed: November 4, 2011
    Date of Patent: October 2, 2018
    Assignee: Embarcadero Technologies, Inc.
    Inventors: Wayne D. Williams, Michael L. Swindell, James B. Pitts