Patents by Inventor Praveen K. MURTHY

Praveen K. MURTHY 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: 9043921
    Abstract: A method of determining a metric of software code may include generating a flow graph for software code that includes multiple flow graph nodes, including an entry point node, a termination point node, and a metric node. The method may also include generating a contracted flow graph based on the flow graph that includes multiple contracted flow graph nodes. The method may further include determining a through path count within the contracted flow graph based on the contracted flow graph nodes between a first contracted flow graph node that includes the entry point node and a second contracted flow graph node that includes the termination point node. The method may also include determining a metric entry path count within the contracted flow graph based on the contracted flow graph nodes between the first contracted flow graph node and a third contracted flow graph node that includes the metric node.
    Type: Grant
    Filed: April 12, 2013
    Date of Patent: May 26, 2015
    Assignee: FUJITSU LIMITED
    Inventor: Praveen K. Murthy
  • Patent number: 9038032
    Abstract: A method includes, by one or more computing devices, determining JavaScript statements to be evaluated, parsing the JavaScript statements, translating the JavaScript statements into Java bytecodes and JavaScript-specific instructions, executing the Java bytecodes in a Java execution engine, calling a JavaScript run-time engine from the Java execution engine, handling one or more semantic operations associated with the JavaScript-specific instructions through use of the JavaScript run-time engine, and providing return values to the Java execution engine. The statements are configured for execution on a computing device. The set of Java bytecodes and JavaScript-specific instructions is configured to conduct symbolic execution of one or more portions of the JavaScript statements. The symbolic execution is configured to evaluate the JavaScript statements.
    Type: Grant
    Filed: May 25, 2012
    Date of Patent: May 19, 2015
    Assignee: Fujitsu Limited
    Inventors: Guodong Li, Praveen K. Murthy, Indradeep Ghosh, Sreeranga P. Rajan
  • Patent number: 8949811
    Abstract: A method includes constructing a lambda object-oriented scripting language (?JS) model for a software program written in JavaScript; converting the ?JS model to a continuation-passing style (CPS) model for the software program; constructing a control flow graph (CFG) for the software program based on the CPS model; and optimizing the CPS model by merging a sequence of two or more “let” operations. The two or more “let” operations in the CPS model and are generated based on the ?JS model, so that they are represented by a single node in the CFG.
    Type: Grant
    Filed: August 26, 2011
    Date of Patent: February 3, 2015
    Assignee: Fujitsu Limited
    Inventor: Praveen K. Murthy
  • Patent number: 8875109
    Abstract: This disclosure generally relates to analyzing and validating computer software written in an object-oriented scripting language such as JavaScript. The analyzing and validating method comprises marking a variable in source code of a software program written in an object-oriented scripting language such as JavaScript; marking one or more locations in the source code of the software program; constructing a control flow graph (CFG) for the software program; and tracking the marked variable through the CFG by determining a path in the CFG that leads from a first node corresponding to the marked variable to one of the marked locations in the source code of the software program. In an embodiment, the variable is marked in source code using a keyword.
    Type: Grant
    Filed: August 26, 2011
    Date of Patent: October 28, 2014
    Assignee: Fujitsu Limited
    Inventor: Praveen K. Murthy
  • Publication number: 20140310813
    Abstract: A method of determining a metric of software code may include generating a flow graph for software code that includes multiple flow graph nodes, including an entry point node, a termination point node, and a metric node. The method may also include generating a contracted flow graph based on the flow graph that includes multiple contracted flow graph nodes. The method may further include determining a through path count within the contracted flow graph based on the contracted flow graph nodes between a first contracted flow graph node that includes the entry point node and a second contracted flow graph node that includes the termination point node. The method may also include determining a metric entry path count within the contracted flow graph based on the contracted flow graph nodes between the first contracted flow graph node and a third contracted flow graph node that includes the metric node.
    Type: Application
    Filed: April 12, 2013
    Publication date: October 16, 2014
    Inventor: Praveen K. Murthy
  • Patent number: 8793665
    Abstract: This disclosure generally relates to analyzing and validating computer software written in an object-oriented scripting language such as Javascript. The analyzing and validating method comprises marking an object in source code of a software program written in an object-oriented scripting language such as JavaScript; identifying one or more locations paired with the object in the source code of the software program; constructing a control flow graph (CFG) for the software program; and determining whether there is any path in the CFG that leads from a first node corresponding to the marked object to a second node corresponding to any identified location paired with the object. In an embodiment, the object is marked in source code using a keyword.
    Type: Grant
    Filed: August 26, 2011
    Date of Patent: July 29, 2014
    Assignee: Fujitsu Limited
    Inventor: Praveen K. Murthy
  • Patent number: 8656370
    Abstract: In one embodiment, accessing a control flow graph (CFG) of a software program written in JavaScript; identifying one or more paths in the CFG; and performing symbolic execution on the software program using the CFG.
    Type: Grant
    Filed: August 26, 2011
    Date of Patent: February 18, 2014
    Assignee: Fujitsu Limited
    Inventors: Praveen K. Murthy, Sreeranga P. Rajan
  • Patent number: 8640084
    Abstract: In one embodiment, a method includes accessing a modeling language representation of a system under test. The representation includes one or more Message Sequence Charts (MSCs). One or more of the MSCs includes one or more conditional constructs including at least one or more guards or one or more loops. The method includes generating one or more use scenarios based on the modeling language representation and generating one or more validation test suites based on the one or more use scenarios.
    Type: Grant
    Filed: March 31, 2009
    Date of Patent: January 28, 2014
    Assignee: Fujitsu Limited
    Inventor: Praveen K. Murthy
  • Publication number: 20130318503
    Abstract: A method includes, by one or more computing devices, determining JavaScript statements to be evaluated, parsing the JavaScript statements, translating the JavaScript statements into Java bytecodes and JavaScript-specific instructions, executing the Java bytecodes in a Java execution engine, calling a JavaScript run-time engine from the Java execution engine, handling one or more semantic operations associated with the JavaScript-specific instructions through use of the JavaScript run-time engine, and providing return values to the Java execution engine. The statements are configured for execution on a computing device. The set of Java bytecodes and JavaScript-specific instructions is configured to conduct symbolic execution of one or more portions of the JavaScript statements. The symbolic execution is configured to evaluate the JavaScript statements.
    Type: Application
    Filed: May 25, 2012
    Publication date: November 28, 2013
    Applicant: FUJITSU LIMITED
    Inventors: Guodong Li, Praveen K. Murthy, Indradeep Ghosh, Sreeranga Rajan
  • Patent number: 8577665
    Abstract: Synthesizing a message sequence chart (MSC) from a communicating finite-state machine (CFSM), by transforming the CFSM to a Petri net model, generating a labeled finite digraph with each path representing a linearization of an occurrence net segment of the Petri net, decomposing the diagraph into segments, and mapping where each segment to a compositional MSC.
    Type: Grant
    Filed: March 14, 2008
    Date of Patent: November 5, 2013
    Assignee: Fujitsu Limited
    Inventors: Praveen K. Murthy, Cong Liu
  • Patent number: 8543986
    Abstract: A method includes accessing a page of Web application that includes an interactive form having at least one field for entry of data, the interactive form rendered by the Web application based on code for the interactive form. The method also includes extracting input validation code from the code, the input validation code including at least one constraint on data entered into the at least one field. The method additionally includes extracting the at least one constraint based on an analysis of the input validation code and solving, for the at least one field, for a string value based at least on the at least one constraint for the at least one field. The also includes automatically entering, into the at least one field, the string value. The method additionally includes automatically submitting the interactive form, including the string value entered into the at least one field.
    Type: Grant
    Filed: July 8, 2010
    Date of Patent: September 24, 2013
    Assignee: Fujitsu Limited
    Inventors: Praveen K. Murthy, Fangqi Sun, Mukul Ranjan Prasad, Sreeranga P. Rajan
  • Patent number: 8543983
    Abstract: In one embodiment, access use information associated with a user-interactive software application, the use information identifies one or more transitions between specific ones of one or more displayable views of the software application and one or more corresponding user actions that cause the transitions; and construct a hierarchical message sequence chart (hMSC) comprising one or more basic message sequence chars (bMSCs) and one or more edges linking specific ones of the bMSCs to represent the use information, comprising: represent the views and the user actions with respect to the views identified in the use information with the bMSCs; represent the transitions and the user actions that cause the transitions identified in the use information with the edges; and for each one of the transitions identified in the use information, link the bMSCs representing the views associated with the transition with the edge representing the transition.
    Type: Grant
    Filed: June 15, 2010
    Date of Patent: September 24, 2013
    Assignee: Fujitsu Limited
    Inventor: Praveen K. Murthy
  • Patent number: 8468537
    Abstract: In one embodiment, a method includes statically analyzing a validation toolkit environment. The method may also include, identifying a plurality of computational threads that do not share data structures with each other based on analysis of the validation toolkit environment. The method may additionally include calculating computational requirements of the computational threads. The method may further include distributing the threads among a plurality of resources such that the aggregate computational requirements of the computational threads are approximately evenly balanced among the plurality of resources.
    Type: Grant
    Filed: July 14, 2010
    Date of Patent: June 18, 2013
    Assignee: Fujitsu Limited
    Inventors: Sreeranga P. Rajan, Praveen K. Murthy, Indradeep Ghosh, Mukul Ranjan Prasad, Oksana I. Tkachuk
  • Publication number: 20130055209
    Abstract: In one embodiment, constructing a ?JS model for a software program written in JavaScript; converting the ?JS model to a continuation-passing style (CPS) model for the software program; and constructing a control flow graph (CFG) for the software program based on the CPS model.
    Type: Application
    Filed: August 26, 2011
    Publication date: February 28, 2013
    Applicant: FUJITSU LIMITED
    Inventor: Praveen K. Murthy
  • Publication number: 20130055210
    Abstract: In one embodiment, accessing a control flow graph (CFG) of a software program written in JavaScript; identifying one or more paths in the CFG; and performing symbolic execution on the software program using the CFG.
    Type: Application
    Filed: August 26, 2011
    Publication date: February 28, 2013
    Applicant: FUJITSU LIMITED
    Inventors: Praveen K. Murthy, Sreeranga P. Rajan
  • Publication number: 20130055221
    Abstract: In one embodiment, accessing a control flow graph (CFG) of a software program written in JavaScript; accessing a set of specification requirements of the software program; and determining if there is any portion of the CFG that violates any specification requirement of the software program.
    Type: Application
    Filed: August 26, 2011
    Publication date: February 28, 2013
    Applicant: FUJITSU LIMITED
    Inventors: Praveen K. Murthy, Sreeranga P. Rajan
  • Publication number: 20130055208
    Abstract: In one embodiment, marking an object in source code of a software program written in JavaScript; identifying one or more locations paired with the object in the source code of the software program; constructing a control flow graph (CFG) for the software program; and determining whether there is any path in the CFG that leads from a first node corresponding to the marked object to a second node corresponding to any identified location paired with the object.
    Type: Application
    Filed: August 26, 2011
    Publication date: February 28, 2013
    Inventor: Praveen K. MURTHY
  • Publication number: 20130055220
    Abstract: In one embodiment, marking a variable in source code of a software program written in JavaScript; constructing a control flow graph (CFG) for the software program; and tracking the marked variable through the CFG.
    Type: Application
    Filed: August 26, 2011
    Publication date: February 28, 2013
    Applicant: FUJITSU LIMITED
    Inventor: Praveen K. Murthy
  • Publication number: 20120017220
    Abstract: In one embodiment, a method includes statically analyzing a validation toolkit environment. The method may also include, identifying a plurality of computational threads that do not share data structures with each other based on analysis of the validation toolkit environment. The method may additionally include calculating computational requirements of the computational threads. The method may further include distributing the threads among a plurality of resources such that the aggregate computational requirements of the computational threads are approximately evenly balanced among the plurality of resources.
    Type: Application
    Filed: July 14, 2010
    Publication date: January 19, 2012
    Inventors: Sreeranga P. Rajan, Praveen K. Murthy, Indradeep Ghosh, Mukul Ranjan Prasad, Oksana I. Tkachuk
  • Publication number: 20120011489
    Abstract: In one embodiment, a method may include accessing a particular page of Web application that includes an interactive form having at least one field for entry of data by a user of the Web application, the interactive form rendered by the Web application based on code for the interactive form. The method may also include extracting input validation code from the code, the input validation code including at least one constraint on data entered into the at least one field. The method may additionally include extracting the at least one constraint based on an analysis of the input validation code. The method may further include solving, for the at least one field, for a string value based at least on the at least one constraint for the at least one field. The may also include automatically entering, into the at least one field, the string value. The method may additionally include automatically submitting the interactive form, including the string value entered into the at least one field.
    Type: Application
    Filed: July 8, 2010
    Publication date: January 12, 2012
    Inventors: Praveen K. Murthy, Fangqi Sun, Mukul Ranjan Prasad, Sreeranga P. Rajan