Patents by Inventor Andrei Kirshin

Andrei Kirshin has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9851957
    Abstract: A computer implemented method of refactoring software code to optimize execution performance by consolidating shared resources accesses, comprising: receiving target code containing code entries accessing shared resource(s); automatically creating a dependency record for each shared resource. The dependency record describes dependencies among the code entries accessing shared data items in the shared resource(s); identifying, based on the dependency record, a resource access point for each shared resource(s), wherein the resource access point is located in an execution path of the target code to precede code entries which use the shared data item(s) and follows code entries which define the shared data item(s); automatically refactoring the target code to group together code entries which use the shared data item(s), wherein the group is placed following the resource access point to consolidate shared resource accesses of the code entries to the shared resource(s); and outputting the refactored target code.
    Type: Grant
    Filed: December 3, 2015
    Date of Patent: December 26, 2017
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Andrei Kirshin, Gabi Zodik
  • Publication number: 20170161034
    Abstract: A computer implemented method of refactoring software code to optimize execution performance by consolidating shared resources accesses, comprising: 1) Receiving target code containing code entries accessing shared resource(s). 2) Automatically creating a dependency record for each shared resource. The dependency record describes dependencies among the code entries accessing shared data items in the shared resource(s). 3) Identifying, based on the dependency record, a resource access point for each shared resource(s). The resource access point is located in an execution path of the target code to precede code entries which use the shared data item(s) and follows code entries which define the shared data item(s). 4) Automatically refactoring the target code to group together code entries which use the shared data item(s). The group is placed following the resource access point to consolidate shared resource accesses of the code entries to the shared resource(s). 5) Outputting the refactored target code.
    Type: Application
    Filed: December 3, 2015
    Publication date: June 8, 2017
    Inventors: Aharon Abadi, Andrei Kirshin, Gabi Zodik
  • Publication number: 20160370953
    Abstract: Managing the presentation of elements via a user interface of a computing device, by selecting a candidate element from a plurality of candidate elements for presentation via a user interface of a computing device, where each of the candidate elements is associated with a level of detail in a hierarchy of multiple levels of detail, where the level of detail of the selected candidate element is at or above a current presentation level of detail in the hierarchy of multiple levels of detail, and where the current presentation level of detail is applicable to a current presentation context of a software application that is executed by the computing device, and presenting the selected candidate element in the current presentation context of the software application via the user interface of the computing device.
    Type: Application
    Filed: June 17, 2015
    Publication date: December 22, 2016
    Inventors: Aharon Abadi, Samuel Kallner, Andrei Kirshin, Yoav Rubin
  • Patent number: 9396170
    Abstract: A method of presenting hyperlink data. The method comprises identifying when a web browser running on a web browser client retrieves, in response to a web document data request submitted to a target server, a first web document data for displaying a first web document containing a hyperlink having a label for display and a target destination defining an address of a second web document, evaluating a risk from content of the second web document, generating by the web browser to a reference evaluation indication of the risk, and processing the web document data and the reference evaluation indication by the web browser for generating a presentation on the client terminal which combines the first web document data and the reference evaluation indication such that when the reference evaluation indication is presented when the label is presented by the web browser.
    Type: Grant
    Filed: November 11, 2013
    Date of Patent: July 19, 2016
    Assignee: GLOBALFOUNDRIES INC.
    Inventors: Idan Ben-Harrush, Anat Berkman, Alexander Dvinsky, Nili Guy, Samuel Kallner, Andrei Kirshin, Dmitri Pikus, Yoav Rubin, Gal Shachor, Omer Tripp
  • Publication number: 20150135324
    Abstract: A method of presenting hyperlink data. The method comprises identifying when a web browser running on a web browser client retrieves, in response to a web document data request submitted to a target server, a first web document data for displaying a first web document containing a hyperlink having a label for display and a target destination defining an address of a second web document, evaluating a risk from content of the second web document, generating by the web browser to a reference evaluation indication of the risk, and processing the web document data and the reference evaluation indication by the web browser for generating a presentation on the client terminal which combines the first web document data and the reference evaluation indication such that when the reference evaluation indication is presented when the label is presented by the web browser.
    Type: Application
    Filed: November 11, 2013
    Publication date: May 14, 2015
    Applicant: International Business Machines Corporation
    Inventors: Idan Ben-Harrush, Anat Berkman, Alexander Dvinsky, Nili Guy, Samuel Kallner, Andrei Kirshin, Dmitri Pikus, Yoav Rubin, Gal Shachor, Omer Tripp
  • Publication number: 20130090962
    Abstract: A system for providing variability and materialization over links connecting product line resources is disclosed herein. The system may include a user interface configured to issue a request for a product-line resource given in a specified product configuration context, responsive to a user selection, wherein the product configuration contains one or more features of the feature model, wherein the product line resources are stored on one or more databases and are further connected between themselves via links, each associated with a respective variability, based on the feature model and the product line resources connected via the links; and a resources fetcher configured to retrieve the resources requested in view of the specified product configuration by providing the links associated with the variability of the specified product configuration.
    Type: Application
    Filed: October 10, 2011
    Publication date: April 11, 2013
    Applicant: International Business Machines Corporation
    Inventors: Dolev Dotan, Ian Green, Mila Keren, Andrei Kirshin, Shiri Kremer-Davidson, Julia Rubin, Dominic Tulley, Mark N. Wegman, Tali Yatzkar-Haham
  • Patent number: 7089534
    Abstract: An execution engine synchronizes test suite execution to run multiple independent operations concurrently or in parallel. The execution engine operates by stepping through the test suite. At each step it runs the required number of independent operations and waits for their completion. It then checks the results, and continues to the next step of the test suite. If at any step, the actual results are different from the expected results, then the exact sequence that triggered the fault is known. The sequence can be repeated when a correction is provided for the fault. Furthermore, the execution engine allows the user to interactively step through a test case when debugging a fault. A synchronization pattern generator may be incorporated in the system to generate minimal numbers of repetitions of test cases to guarantee varying degrees of interaction coverage.
    Type: Grant
    Filed: May 1, 2002
    Date of Patent: August 8, 2006
    Assignee: International Business Machines Corporation
    Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky, Aviad Zlotnick
  • Patent number: 7024589
    Abstract: A design verification system generates a small set of test cases, from a finite state machine model of the application under test. The finite state machine is reduced by creating efficient samples of the inputs to the application under test which are prepared by combinatorial input parameter selection. The test cases are generated by finite state machine traversal of the reduced state machine, and tests interacting combinations of input parameters in an efficient way. The technique is integrated into a test generator based on a finite state machine. Using an extended language, partial rulesets are employed to instruct the test generator to automatically employ combinatorial input parameter selection during test generation. Another technique for test case generation is disclosed, which uses combinatorial selection algorithms to guarantee coverage of the system under test from the aspect of interaction between stimuli at different stages or transitions in the test case.
    Type: Grant
    Filed: June 14, 2002
    Date of Patent: April 4, 2006
    Assignee: International Business Machines Corporation
    Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky
  • Publication number: 20030233600
    Abstract: A design verification system generates a small set of test cases, from a finite state machine model of the application under test. The finite state machine is reduced by creating efficient samples of the inputs to the application under test which are prepared by combinatorial input parameter selection. The test cases are generated by finite state machine traversal of the reduced state machine, and tests interacting combinations of input parameters in an efficient way. The technique is integrated into a test generator based on a finite state machine. Using an extended language, partial rulesets are employed to instruct the test generator to automatically employ combinatorial input parameter selection during test generation. Another technique for test case generation is disclosed, which uses combinatorial selection algorithms to guarantee coverage of the system under test from the aspect of interaction between stimuli at different stages or transitions in the test case.
    Type: Application
    Filed: June 14, 2002
    Publication date: December 18, 2003
    Applicant: International Business Machines Corporation
    Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky
  • Publication number: 20030208351
    Abstract: An execution engine synchronizes test suite execution to run multiple independent operations concurrently or in parallel. The execution engine operates by stepping through the test suite. At each step it runs the required number of independent operations and waits for their completion. It then checks the results, and continues to the next step of the test suite. If at any step, the actual results are different from the expected results, then the exact sequence that triggered the fault is known. The sequence can be repeated when a correction is provided for the fault. Furthermore, the execution engine allows the user to interactively step through a test case when debugging a fault. A synchronization pattern generator may be incorporated in the system to generate minimal numbers of repetitions of test cases to guarantee varying degrees of interaction coverage.
    Type: Application
    Filed: May 1, 2002
    Publication date: November 6, 2003
    Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky, Aviad Zlotnick