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: 9851957Abstract: 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: GrantFiled: December 3, 2015Date of Patent: December 26, 2017Assignee: International Business Machines CorporationInventors: Aharon Abadi, Andrei Kirshin, Gabi Zodik
-
Publication number: 20170161034Abstract: 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: ApplicationFiled: December 3, 2015Publication date: June 8, 2017Inventors: Aharon Abadi, Andrei Kirshin, Gabi Zodik
-
Publication number: 20160370953Abstract: 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: ApplicationFiled: June 17, 2015Publication date: December 22, 2016Inventors: Aharon Abadi, Samuel Kallner, Andrei Kirshin, Yoav Rubin
-
Patent number: 9396170Abstract: 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: GrantFiled: November 11, 2013Date of Patent: July 19, 2016Assignee: 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: 20150135324Abstract: 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: ApplicationFiled: November 11, 2013Publication date: May 14, 2015Applicant: International Business Machines CorporationInventors: Idan Ben-Harrush, Anat Berkman, Alexander Dvinsky, Nili Guy, Samuel Kallner, Andrei Kirshin, Dmitri Pikus, Yoav Rubin, Gal Shachor, Omer Tripp
-
Publication number: 20130090962Abstract: 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: ApplicationFiled: October 10, 2011Publication date: April 11, 2013Applicant: International Business Machines CorporationInventors: Dolev Dotan, Ian Green, Mila Keren, Andrei Kirshin, Shiri Kremer-Davidson, Julia Rubin, Dominic Tulley, Mark N. Wegman, Tali Yatzkar-Haham
-
Patent number: 7089534Abstract: 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: GrantFiled: May 1, 2002Date of Patent: August 8, 2006Assignee: International Business Machines CorporationInventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky, Aviad Zlotnick
-
Patent number: 7024589Abstract: 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: GrantFiled: June 14, 2002Date of Patent: April 4, 2006Assignee: International Business Machines CorporationInventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky
-
Publication number: 20030233600Abstract: 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: ApplicationFiled: June 14, 2002Publication date: December 18, 2003Applicant: International Business Machines CorporationInventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky
-
Publication number: 20030208351Abstract: 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: ApplicationFiled: May 1, 2002Publication date: November 6, 2003Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky, Aviad Zlotnick