Patents by Inventor Moria Abadi

Moria Abadi 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: 10747871
    Abstract: A system for producing secure data management software, comprising at least one hardware processor adapted to: receive a plurality of data patterns, each comprising at least one data field identifier selected from a set of protected data field identifiers of at least one data repository, at least one output target, and an access instruction; identify in a plurality of computer instructions of the data management software one or more forbidden output instructions by matching one or more reaching definitions of some of the plurality of computer instructions with one or more of the plurality of data patterns; and remove the one or more forbidden output instructions from the plurality of computer instructions.
    Type: Grant
    Filed: June 21, 2018
    Date of Patent: August 18, 2020
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Roie Melamed, Aidan Shribman
  • Publication number: 20190392133
    Abstract: A system for producing secure data management software, comprising at least one hardware processor adapted to: receive a plurality of data patterns, each comprising at least one data field identifier selected from a set of protected data field identifiers of at least one data repository, at least one output target, and an access instruction; identify in a plurality of computer instructions of the data management software one or more forbidden output instructions by matching one or more reaching definitions of some of the plurality of computer instructions with one or more of the plurality of data patterns; and remove the one or more forbidden output instructions from the plurality of computer instructions.
    Type: Application
    Filed: June 21, 2018
    Publication date: December 26, 2019
    Inventors: Aharon Abadi, Moria Abadi, Roie Melamed, Aidan Shribman
  • Patent number: 10372194
    Abstract: A method for optimizing use of location services in mobile applications, comprising: analyzing a computer code executable on a processor of a mobile device; identifying in the computer code program instructions for receiving location data from at least one location service device of the mobile device; analyzing the program instructions according to a set of location request rules to identify program instructions violating at least one of the location request rules; and providing at least one suggested change to the program instructions according to the at least one of the location request rules.
    Type: Grant
    Filed: February 9, 2016
    Date of Patent: August 6, 2019
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Mordechai Nisenson
  • Patent number: 10331650
    Abstract: According to an aspect, a content fragment of a legacy model file is mapped via a processor to a plurality of web files. A change to the content fragment of the legacy model file is detected by the processor. One or more modified web files corresponding to the changed content fragment is generated by the processor. The one or more modified web files corresponding to the detected changes in the content fragment of the legacy model file are sent via the processor to a remote computing device.
    Type: Grant
    Filed: December 31, 2014
    Date of Patent: June 25, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Moria Abadi, Yuval Gil, David Hirsch, Alexander Rekhter
  • Patent number: 10331651
    Abstract: According to an aspect, a content fragment of a legacy model file is mapped via a processor to a plurality of web files. A change to the content fragment of the legacy model file is detected by the processor. One or more modified web files corresponding to the changed content fragment is generated by the processor. The one or more modified web files corresponding to the detected changes in the content fragment of the legacy model file are sent via the processor to a remote computing device.
    Type: Grant
    Filed: October 19, 2015
    Date of Patent: June 25, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Moria Abadi, Yuval Gil, David Hirsch, Alexander Rekhter
  • Patent number: 10296306
    Abstract: According to an aspect of some embodiments of the present invention there is provided a computer implemented method of automatically generating and storing a data structure for displaying a Unified Modeling Language (UML) model of behavior of a network of computing devices, the behavior dependent on location of the computing devices, comprising: creating a UML model comprising a plurality of line charts arranged in parallel to a time indicating axis, adding to the displayed UML model a plurality of connectors indicating communication between two entities, where a distance between each two line charts of the plurality of line charts in the UML model maps a geographical distance therebetween, and wherein the distance and the value and the plurality of connectors are editable according to at least one user input indicative of a selection of an area of the displayed UML model.
    Type: Grant
    Filed: May 29, 2017
    Date of Patent: May 21, 2019
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Yael Dubinsky, Mordechai Nisenson
  • Patent number: 10296311
    Abstract: Embodiments of the present invention provide a method and system for finding uninitialized variables outside the local scope. Initially, a source code of a program is received. The source code may include multiple functions. A checked scope is determined for at least one variable in the source code. The checked scope includes a local scope. Additionally, the local scope is accessed using at least one function call of the functions. Static analysis is run, covering the checked scope for the at least one variable in the source code. At least one inter-procedural dependency is identified to determine whether the at least one variable in the local scope is uninitialized. Responsive to determining that the at least one variable in the local scope is uninitialized the at least one variable is displayed to a user.
    Type: Grant
    Filed: November 25, 2015
    Date of Patent: May 21, 2019
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Idan Ben-Harrush, Yishai A Feldman
  • Patent number: 10242315
    Abstract: Techniques for representing a finite state machine forming are described herein. The techniques include a method that identifies screens of a computing program. The method may include correlating the identified screens with states of a finite state machine. Events indicating transition between the identified screens may be determined as well as data flow associated with the events. The method may include forming a graph representing the screens, events, and data flow in the finite state machine.
    Type: Grant
    Filed: October 14, 2013
    Date of Patent: March 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Idan Ben-Harrush
  • Patent number: 10055329
    Abstract: A computer implemented method of detecting code antipatterns, comprising: 1) Receiving a code containing one or more of a plurality of code segments, each one of the one or more code segments includes one or more of a plurality of patterns. 2) Automatically analyzing each one of the one or more code segment to create an array of a plurality of features vectors, each one of the plurality of features vectors maps a plurality of predefined features found in one or more patterns. 3) Matching each one of the plurality of features vectors with a plurality of template features vectors each representing one of a plurality of antipatterns, the plurality of template features vectors is stored in an antipatterns dataset. 4) Determining a presence or an absence of each of the plurality of antipatterns within each of the one or more code segments according to the matching.
    Type: Grant
    Filed: September 30, 2015
    Date of Patent: August 21, 2018
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Omer Tripp
  • Patent number: 10013243
    Abstract: According to an aspect of some embodiments of the present invention there is provided a computerized method of analyzing code of a software program for dominance relationships between a plurality of functions of the software program, the method comprising: receiving source code of a software program, the source code having a plurality of functions; identifying a plurality of intraprocedural dominator graphs each for another of the plurality of functions; combining the plurality of intraprocedural dominator graphs to create an interprocedural dominance graph with edges that logically connect between nodes of the plurality of functions; identifying a plurality of interprocedural dominance relations between nodes in different functions of the plurality of functions using the interprocedural dominance graph; and analyzing the software program according to the plurality of interprocedural dominance relations.
    Type: Grant
    Filed: May 3, 2017
    Date of Patent: July 3, 2018
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Jonathan Bnayahu, Yishai Feldman
  • Patent number: 9983975
    Abstract: Methods, storage systems and computer program products implement embodiments of the present invention that include receiving, by a computer, source code for an application, the source code including multiple instructions to be executed in a single thread. A first static analysis is performed on the application source code in order to identify a given instruction including an asynchronous handler, and a plurality of entry points to the application. Based on the static analysis, an order of execution of the multiple instructions is determined, and an intermediate representation is generated that includes the multiple instructions arranged in the determined order of execution. In some embodiments, a second static analysis can be performed on the intermediate representation that can identify an anti-pattern in the intermediate representation, and then correct the anti-pattern in the source code.
    Type: Grant
    Filed: December 29, 2014
    Date of Patent: May 29, 2018
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Idan Ben-Harrush
  • Patent number: 9983983
    Abstract: A computer implemented method of automatically generating tests for COBOL code units, comprises using at least one hardware processor adapted to designate a COBOL source code comprising a plurality of code lines, extract automatically a plurality of code units each comprising a subset of the code lines for executing one or more functionalities of the COBOL source code, the code units are identified by analyzing the plurality of code lines, generate automatically one or more tests for testing each of the code units by generating an input stimulus for each of the code units, and create one or more mock code segments to simulate interaction of each code unit with one or more external code segment comprising code lines not included in the code unit and testing each code unit using the one or more test(s).
    Type: Grant
    Filed: July 31, 2016
    Date of Patent: May 29, 2018
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Yael Dubinsky, Yishai A Feldman
  • Patent number: 9946536
    Abstract: Computer implemented method of refactoring JavaScript code for multi-threading concurrent execution, comprising: 1) Designating a source code which includes background code entries indicated by a user as executed in background. 2) Analyzing the source code entries to create a dependency record. 3) Creating a background process comprising the background code entries and removing code entries which read or write from DOM(s). 4) Creating a handler code comprising the write code entries. 5) Creating main code which includes: (a) Remaining code entries not included in the background process and the handler code. (b) Process initiation code initiating the background process. The process initiation code is placed at a process initiation point identified based on the dependency record which follows the read code entries in the source code execution path and precedes the write code entries. 6) Outputting refactored code file(s) which include the background process, handler code and main code.
    Type: Grant
    Filed: December 3, 2015
    Date of Patent: April 17, 2018
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi
  • Patent number: 9934132
    Abstract: A method of determining code coverage of an application by test(s) (wherein code may include UI elements). The method comprises executing a code test on at least one portion of a tested code of an application in one or more iterations, wherein in each one of the plurality of iterations, selecting at least one of a plurality of atomic code elements of the tested code, applying the code test on a version of the code that does not include the at least one selected atomic element, and classifying the at least one selected atomic element as covered by the code test when the code test fails and as not covered in the code test when the code test passes.
    Type: Grant
    Filed: August 31, 2015
    Date of Patent: April 3, 2018
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Idan Ben-Harrush, Samuel Kallner
  • Publication number: 20180032425
    Abstract: A computer implemented method of automatically generating tests for COBOL code units, comprising using at least one hardware processor adapted to designate a COBOL source code comprising a plurality of code lines, extract automatically a plurality of code units each comprising a subset of the code lines for executing one or more functionalities of the COBOL source code, the code units are identified by analyzing the plurality of code lines, generate automatically one or more tests for testing each of the code units by generating an input stimulus for each of the code units, and create one or more mock code segments to simulate interaction of each code unit with one or more external code segment comprising code lines not included in the code unit and testing each code unit using the one or more test(s).
    Type: Application
    Filed: July 31, 2016
    Publication date: February 1, 2018
    Inventors: Aharon Abadi, Moria Abadi, Yael Dubinsky, Yishai A. Feldman
  • Patent number: 9823913
    Abstract: The present invention, in some embodiments thereof comprises a computer implemented method of detecting global variables in JavaScript code, and adding local variables in place of the global variables, comprising receiving a JavaScript code containing at least one of a plurality of globally defined functions, identifying at least one of: one or more confined global variables which receive a value within a first JavaScript scope wherein the value is not referenced outside of the first JavaScript scope, and one or more repeating global variables accessed repeatedly within a second JavaScript scope, and adding local variables in place of at least one of the confined global variables and the repeating global variables.
    Type: Grant
    Filed: December 3, 2015
    Date of Patent: November 21, 2017
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Idan Ben-Harrush, Yishai A Feldman
  • Publication number: 20170269912
    Abstract: According to an aspect of some embodiments of the present invention there is provided a computer implemented method of automatically generating and storing a data structure for displaying a Unified Modeling Language (UML) model of behavior of a network of computing devices, the behavior dependent on location of the computing devices, comprising: creating a UML model comprising a plurality of line charts arranged in parallel to a time indicating axis, adding to the displayed UML model a plurality of connectors indicating communication between two entities, where a distance between each two line charts of the plurality of line charts in the UML model maps a geographical distance therebetween, and wherein the distance and the value and the plurality of connectors are editable according to at least one user input indicative of a selection of an area of the displayed UML model.
    Type: Application
    Filed: May 29, 2017
    Publication date: September 21, 2017
    Inventors: Aharon Abadi, Moria Abadi, Yael Dubinsky, Mordechai Nisenson, Sergey Zeltyn
  • Patent number: 9769590
    Abstract: A computer-implemented method, a computerized apparatus and a computer program product, the method comprising: receiving a program to be executed on a mobile device; building a data structure representing states within the program and transitions between the states; and based on the data structure, determining by a processor a location of at least one command related to using data retrieved from a server, such that at least one fetching command is to be provided for the data to be available when execution reaches the location.
    Type: Grant
    Filed: December 17, 2014
    Date of Patent: September 19, 2017
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Jonathan Bnayahu, Idan Ben-Harrush
  • Publication number: 20170235667
    Abstract: According to an aspect of some embodiments of the present invention there is provided a computerized method of analyzing code of a software program for dominance relationships between a plurality of functions of the software program, the method comprising: receiving source code of a software program, the source code having a plurality of functions; identifying a plurality of intraprocedural dominator graphs each for another of the plurality of functions; combining the plurality of intraprocedural dominator graphs to create an interprocedural dominance graph with edges that logically connect between nodes of the plurality of functions; identifying a plurality of interprocedural dominance relations between nodes in different functions of the plurality of functions using the interprocedural dominance graph; and analyzing the software program according to the plurality of interprocedural dominance relations.
    Type: Application
    Filed: May 3, 2017
    Publication date: August 17, 2017
    Inventors: Aharon Abadi, Moria Abadi, Jonathan Bnayahu, Yishai Feldman
  • Patent number: 9733905
    Abstract: According to an aspect of some embodiments of the present invention there is provided a computer implemented method of automatically generating and storing a data structure for displaying a Unified Modeling Language (UML) model of behavior of a network of computing devices, the behavior dependent on location of the computing devices, comprising: creating a UML model comprising a plurality of line charts arranged in parallel to a time indicating axis, adding to the displayed UML model a plurality of connectors indicating communication between two entities, where a distance between each two line charts of the plurality of line charts in the UML model maps a geographical distance therebetween, and wherein the distance and the value and the plurality of connectors are editable according to at least one user input indicative of a selection of an area of the displayed UML model.
    Type: Grant
    Filed: March 21, 2016
    Date of Patent: August 15, 2017
    Assignee: International Business Machines Corporation
    Inventors: Aharon Abadi, Moria Abadi, Yael Dubinsky, Mordechai Nisenson