Patents Assigned to Parasoft Corporation
  • Patent number: 7721154
    Abstract: A method and system for run time testing of a computer software application. The method and system include attaching a RAS agent to the application to be tested; running the application with the attached RAS agent; configuring the RAS agent to monitor a component of the application, while the application is being executed to collect results; exercising the application to perform a task; and validating the collected results while the task is being performed by the application. The RAS agent may be configured (for example, remotely) to modify behavior of the component of the application, while the application is being executed.
    Type: Grant
    Filed: September 4, 2007
    Date of Patent: May 18, 2010
    Assignee: Parasoft Corporation
    Inventors: Rami Jaamour, Jeehong Min, Thomas Macario Pasana Tabanao
  • Patent number: 7680752
    Abstract: An integration platform for managing long term processes. The platform includes a runtime engine that manages the process instances and communication with the processes to provide Web services. The runtime engine includes an execution engine module and a prediction module. The prediction module generates predictions for executing processes for inbound and outbound messages and eventual process outcomes. The predictions may be utilized when requisite data is unavailable or under defined circumstances. The prediction module utilizes process history, process description and process state data to generate relevant prediction data. The prediction module may include a learning module that applies analytical algorithms to the process history and descriptions to create models for use by the prediction module.
    Type: Grant
    Filed: January 6, 2006
    Date of Patent: March 16, 2010
    Assignee: Parasoft Corporation
    Inventors: James Edmond Clune, III, Daniel John Dominguez
  • Patent number: 7620939
    Abstract: A method and system for regression testing of a computer software. The method and system execute the software for a first time to create a first data set; execute the software for a second time after the first time to create a second data set; compare the two data sets to determine differences between the two data sets; and store the differences as allowable differences to be ignored in a subsequent regression testing of the software.
    Type: Grant
    Filed: February 28, 2006
    Date of Patent: November 17, 2009
    Assignee: Parasoft Corporation
    Inventor: Nathan Michael Jakubiak
  • Patent number: 7596778
    Abstract: In one embodiment, the present invention is a method for automatically preventing errors in computer software. The method includes storing the computer software in a code repository; executing a plurality of software verification tools to verify the computer software, wherein each of the plurality of software verification tools automatically generates one or more test cases; generating verification results responsive to executing the plurality of software verification tools and the automatically generated test cases; processing the verification results for generating an objective criterion of quality of the computer software; and customizing the scope of one or more of the plurality of verification tools responsive to the objective criterion of quality of the computer software.
    Type: Grant
    Filed: July 3, 2003
    Date of Patent: September 29, 2009
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Wendell T. Hicken, Arthur R. Hicken, Marek Kucharski, Gary Alan Brunnell
  • Patent number: 7392507
    Abstract: A system and method for facilitating and simplifying testing and debugging of computer programs. is described A computer program is broken down to smaller components, such as, classes, functions, or objects, and then those smaller components are tested individually. Accordingly, specific aspects of the computer program can be effectively tested. The user can automatically perform a range of tests on a class or method when the class or method is compiled without integrating the class or method into a larger project.
    Type: Grant
    Filed: December 20, 2004
    Date of Patent: June 24, 2008
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Chad E. Byers
  • Patent number: 7266808
    Abstract: A method and system for dynamically invoking and/or checking conditions of a computer test program. Test cases that verify class/component functionality are automatically created from the DbC contracts. When the classes/components that contain DbC contracts are added to the system, the invention automatically verifies whether the system uses them correctly. The information in the contract continents is used to generate more comprehensive and better quality test cases. In one embodiment, a code's specification information is analyzed and a class with extra bytecodes that describe how the class is supposed to work and be used is generated. Next, the instrumented class is integrated into the system, and the system is run. The system is monitored as it runs and contract violations are automatically detected.
    Type: Grant
    Filed: August 6, 2002
    Date of Patent: September 4, 2007
    Assignee: Parasoft Corporation
    Inventors: Adam Kolawa, Roman Salvador
  • Patent number: 7028223
    Abstract: The present invention is a module testing tool for Web services. In one embodiment, the present invention automates the testing of Web services that use SOAP as a wire protocol and HTTP as a transport protocol. The invention provides an easy interface for exercising Web services and testing their functionality. The invention helps users confirm the responses to SOAP messages with such features as fault detection, textual comparisons, XML validation by DTDs or XML Schemas, and the ability to express and flag complex patterns in XML. The invention lets the users validate responses that require application-specific verification (such as business logic validation) by plugging in their own code. It also provides the capability to perform regression testing of web services. The invention can automatically creates regression test controls from SOAP Client responses, or users can create their own regression tests.
    Type: Grant
    Filed: August 7, 2002
    Date of Patent: April 11, 2006
    Assignee: Parasoft Corporation
    Inventors: Adam Kolawa, James Edmond Clune, III, Wendell T. Hicken, Luke Li-Ming Chen
  • Patent number: 7010546
    Abstract: In one embodiment, the present invention is a method and system for testing databases and database oriented applications through analyzing database contents and structure. The method and system provide a framework for various tests, which can be deployed against the database structure or contents. The system provides a set of ready to use tests, however, custom tests can also be written using system API. Tests used within the framework constitute test suits. Test suits can be used during database oriented application development process for regression testing, verifying newly added functionality, re-testing of existing and modified functionality, deploying new versions of an application. Test suits can also be used for database monitoring and database cleaning.
    Type: Grant
    Filed: July 22, 2003
    Date of Patent: March 7, 2006
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Arthur R. Hicken, Wendell T. Hicken, Marek Kucharksi
  • Patent number: 6895578
    Abstract: A system and method for facilitating and simplifying testing and debugging of computer programs. is described A computer program is broken down to smaller components, such as, classes, functions, or objects, and then those smaller components are tested individually. Accordingly, specific aspects of the computer program can be effectively tested. The user can automatically perform a range of tests on a class or method when the class or method is compiled without integrating the class or method into a larger project.
    Type: Grant
    Filed: January 6, 2000
    Date of Patent: May 17, 2005
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Chad E. Byers
  • Patent number: 6806893
    Abstract: User input buttons are displayed as part of a graphical user interface by showing the buttons as multiple oval shapes and including shading and highlighting to indicate different states of the buttons. The buttons appear to the user as three dimensional simulated mechanical buttons because of the shape, shading, and temporal states used to represent them. States of the buttons include inactive, active, entered and pressed, each state having its own bitmap image to represent it on the computer display.
    Type: Grant
    Filed: August 4, 1998
    Date of Patent: October 19, 2004
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Wendell T. Hicken, Marek Kucharski, Janusz Haka
  • Patent number: 6718485
    Abstract: The present invention is a software system that detects large classes of programming and run-time errors in a computer program by emulating the hardware platform and monitoring the execution of a program and the concurrent data manipulation. The software system locates bugs in binary object executable programs. Working on the binary object executable program at runtime, the tool verifies memory references and program implementation by monitoring each logical memory access for data.
    Type: Grant
    Filed: November 15, 2000
    Date of Patent: April 6, 2004
    Assignee: Parasoft Corporation
    Inventor: John F. Reiser
  • Patent number: 6370513
    Abstract: An automated recommendation system keeps track of the needs and preferences of the user through a user preference vector. Each field of the user preference vector represents the user's preference for a specific item attribute. Item attributes are defined by a systems programmer. The systems programmer also creates product vectors of items in the recommendation database. A user preference vector is compared against a product vector to determine if the product is suitable for recommendation. A recommended item may be purchased by the user by submitting a purchase request over a network connection. The user preference vector is constantly refined through feedback from the user about the recommended items.
    Type: Grant
    Filed: June 28, 1999
    Date of Patent: April 9, 2002
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Arthur Ray Hicken, Stephen Frankini, Skirmantas Kligys, Emelina Gesheshyen, Maxim Troukhan
  • Patent number: 6236974
    Abstract: An automatic maid performs all of the selection and organization tasks involved with family meal planning. The automatic maid keeps track of the needs and preferences of all users. User needs and preferences are constantly refined through questions about foods both eaten and rejected. The automatic maid keeps track of household inventory and can order additional supplies. The automatic maid uses the preferences of the users and its knowledge of the household inventory to select the most compatible meals. It gives instruction on food preparation, can activate appliances, and can order food. The automatic maid can be accessed from a remote location and can update its recipes over a network or the Internet.
    Type: Grant
    Filed: August 7, 1998
    Date of Patent: May 22, 2001
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Arthur Ray Hicken
  • Patent number: 6085029
    Abstract: A method for automatically instrumenting a computer program for dynamic debugging. Such a computer program comprising source code written in a programming language for executing instructions on the computer. The source code is provided as a sequence of statements in a storage device to the computer. Each of the statements are separated into tokens representing either an operator or at least one operand. A parse tree is built according to a set of rules using the set of tokens. The parse tree is instrumented to create an instrumented parse tree for indicating that an error condition occurred in the computer program during execution. Object code is generated from the instrumented parse tree and stored in a secondary storage device for later execution using an error-checking engine that indicates error conditions present in the computer program.
    Type: Grant
    Filed: August 21, 1996
    Date of Patent: July 4, 2000
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Roman Salvador, Wendell T. Hicken, Bryan R. Strickland
  • Patent number: 5860011
    Abstract: A method and system for automatically checking the quality of computer source code based on rules for identifying quality concerns. The computer source code comprises instructions for execution on the computer. Each of the instructions are represented by at least one node stored in a parse tree. Both the parse tree and the rules are stored in the computer. A violation of one of the rules is checked by examining each of the instructions as represented by nodes in the parse tree. An error message for describing the quality concern identified is generated whenever such a rule violation is found in the computer source code.
    Type: Grant
    Filed: February 29, 1996
    Date of Patent: January 12, 1999
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Michael A. G. Aivazis, Wendell T. Hicken, Bryan R. Strickland
  • Patent number: 5842019
    Abstract: A method using a computer and a system for dynamically detecting leaked memory space in a computer program. The computer program comprises instrumentation routines for communicating runtime memory space conditions to a dynamic debugging system and has a memory space for storing dynamic data values. A dynamic leak search is performed for tracking allocated memory space using reference counting. A static leak sweep is performed for scanning blocks of the memory space to determine whether each such block of the memory space is reachable from another such block of the memory space.
    Type: Grant
    Filed: September 13, 1996
    Date of Patent: November 24, 1998
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Wendell T. Hicken
  • Patent number: 5784553
    Abstract: A method and system for generating a test suite for a computer program written in the JAVA programming language. The JAVA program comprises program statements and program variables represented as JAVA source code and compiled by a JAVA compiler into JAVA bytecodes, including at least one input statement having one or more input variables, that are grouped into code blocks and stored in a program database. The test suite comprises sets of inputs. Each of the sets of inputs corresponds to a pth in the program. The program statements corresponding to a candidate code block are read from the program database. Each of the input variables for each input statement and each of the program variables that depend on them are represented in symbolic form as a symbolic memory value and transforming each program statement dependent on such an input variable into a symbolic expression.
    Type: Grant
    Filed: April 30, 1997
    Date of Patent: July 21, 1998
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Roman Salvador
  • Patent number: 5761408
    Abstract: A method and system for generating a test suite for a computer program. The computer program comprises program statements and program variables, including at least one input statement having one or more input variables, that are grouped into code blocks and stored in a program database. The test suite comprises sets of inputs. Each of the sets of inputs corresponds to each of the input statements. The program statements corresponding to a candidate code block are read from the program database. Each of the input variables for each input statement and each of the program variables are represented in symbolic form as a symbolic memory value and transforming each program statement dependent on such an input variable into a symbolic expression. A trial set of inputs for each of the input statements is created by finding a solution to the symbolic expression comprising actual input values corresponding to each symbolic memory value using dynamic symbolic exeuction.
    Type: Grant
    Filed: February 12, 1996
    Date of Patent: June 2, 1998
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Roman Salvador, Wendell T. Hicken, Bryan R. Strickland
  • Patent number: 5581696
    Abstract: A method for automatically instrumenting a computer program for dynamic debugging. Such a computer program comprising source code written in a programming language for executing instructions on the computer. The source code is provided as a sequence of statements in a storage device to the computer. Each of the statements are separated into tokens representing either an operator or at least one operand. A parse tree is built according to a set of rules using the set of tokens. The parse tree is instrumented to create an instrumented parse tree for indicating that an error condition occurred in the computer program during execution. Object code is generated from the instrumented parse tree and stored in a secondary storage device for later execution using an error-checking engine that indicates error conditions present in the computer program.
    Type: Grant
    Filed: May 9, 1995
    Date of Patent: December 3, 1996
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Roman Salvador, Wendell T. Hicken, Bryan R. Strickland
  • Patent number: D503179
    Type: Grant
    Filed: April 18, 2002
    Date of Patent: March 22, 2005
    Assignee: Parasoft Corporation
    Inventors: Adam K. Kolawa, Wendell T. Hicken, Janusz Haka, Marek Kucharski