Patent application number | Description | Published |
20090235226 | Synthesis of Message Sequence Charts from Communicating Finite-State Machines - 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. | 09-17-2009 |
20100251208 | Validating Behavioral Diagrams - In one embodiment, a method includes accessing a first graphical modeling language representation of a system under test. The first graphical modeling language representation includes one or more behavioral diagrams. One or more of the behavioral diagrams includes one or more first conditional constructs. The method includes generating, based on the first representation, a second modeling language representation of the system under test. The second graphical modeling language representation includes one or more Message Sequence Charts (MSCs). One or more of the MSCs includes one or more second conditional constructs that are mathematically equivalent to one or more of the first conditional constructs. The method includes communicating the second graphical modeling language representation for generating one or more use scenarios based on the second graphical modeling language representation. | 09-30-2010 |
20100251209 | Generating Validation Test Suites - 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. | 09-30-2010 |
20110307867 | Creating Hierarchical Message Sequence Charts for Visualizing User-Interactive Applications - 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. | 12-15-2011 |
20120011489 | Methods and Systems for Test Automation of Forms in Web Applications - 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. | 01-12-2012 |
20120017220 | Systems and Methods for Distributing Validation Computations - 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. | 01-19-2012 |
20130055208 | Performing Taint Analysis for Javascript Software Using a Control Flow Graph - 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. | 02-28-2013 |
20130055209 | Constructing a Control Flow Graph for Javascript Software - In one embodiment, constructing a λ | 02-28-2013 |
20130055210 | Symbolic Execution of Javascript Software Using a Control Flow Graph - 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. | 02-28-2013 |
20130055220 | Tracking Variables in Javascript Software Using a Control Flow Graph - 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. | 02-28-2013 |
20130055221 | Detecting Errors in Javascript Software Using a Control Flow Graph - 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. | 02-28-2013 |
20130318503 | SYMBOLIC EXECUTION AND AUTOMATIC TEST CASE GENERATION FOR JAVASCRIPT PROGRAMS - 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. | 11-28-2013 |
20140310813 | DETERMINING SOFTWARE METRICS - 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. | 10-16-2014 |