Patents by Inventor Kenneth Nagin

Kenneth Nagin 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).

  • Publication number: 20080189694
    Abstract: A defective self-sustained code-upgrade code is recovered. A relevant unset variable is set to avoid an un-initialized command failure. A relevant set variable is unset to render a second invocation of the set variable to appear as a first invocation A fix-named file is retrieved containing a plurality of code entries organized in a stanza style. The fixed-named file is executed. The plurality of stanza-organized entries are sourced by the defective code-upgrade code to change a variable which has been previously set, thereby overriding an existing process.
    Type: Application
    Filed: February 6, 2007
    Publication date: August 7, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Nicholas D. Fifer, Ilan Gayda, Itzhack Goldberg, Kenneth Nagin
  • Publication number: 20080072295
    Abstract: A method and system for authentication are provided for verifying a service provider and providing a secure session. The method carried out at the service provider (402) includes: starting (403) a session with a client (401); receiving a challenge (405) from the client (401); responding to the challenge with a response (408); and sending a key (408) to the client (401) in non-OCR format, wherein the key is used for the session between the client (401) and the service provider (402). The response to the challenge is known only to the client (401) and the service provider (402). The key is used by the client (401) to encrypt (412) all the communications with the service provider (402) in the session. The response and the key may be sent to an alternative channel previously supplied by the client (401).
    Type: Application
    Filed: September 20, 2006
    Publication date: March 20, 2008
    Inventors: Nathaniel Solomon Borenstein, Michael Factor, Itzhack Goldberg, Yotam Medini, Kenneth Nagin
  • Patent number: 7272752
    Abstract: A test coverage tool provides output that identifies differences between the actual coverage provided by a test suite run on a program under test and the coverage criteria (e.g., the coverage criteria required by the test/development team management). The output from the test coverage tool is generated in the same language that was used to write the coverage criteria that are input to an automated test generator to create the test cases which form the test suite. As a result, the output from the coverage tool can be input back into the automated test generator to cause the generator to revise the test cases to correct the inadequacies. This allows iterative refinement of the test suite automatically, enabling automated test generation to be more effectively and efficiently used with more complex software and more complex test generation inputs.
    Type: Grant
    Filed: September 5, 2001
    Date of Patent: September 18, 2007
    Assignee: International Business Machines Corporation
    Inventors: Eitan Farchi, Daniel Geist, Alan Hartman, Paul Kram, Kenneth Nagin, Yael Shaham-Gafni, Shmuel Ur
  • Patent number: 7117484
    Abstract: Middleware is validated using a two layered modeling strategy for the generation of test suites. A high level model of the syntax of the programming language used to program the middleware generates a series of high level abstract programs. These high level abstract programs then undergo two separate translations. First they are translated directly into actual test programs, which are expressed in the programming language of the middleware. Second, they are translated into second models of the high level abstract programs. Running the model based test generator again on the second models produces a set of suites of test cases, each test case consisting of data inputs and predicted results for one of the actual test programs. The actual test programs are run repetitively using the middleware execution engine. The results are compared with the predicted results, using a generic validation engine.
    Type: Grant
    Filed: April 16, 2002
    Date of Patent: October 3, 2006
    Assignee: International Business Machines Corporation
    Inventors: Alan Hartman, Kenneth Nagin, Guy Sharon
  • Patent number: 7089534
    Abstract: 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: Grant
    Filed: May 1, 2002
    Date of Patent: August 8, 2006
    Assignee: International Business Machines Corporation
    Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky, Aviad Zlotnick
  • Patent number: 7055065
    Abstract: The present invention enables the modeling of plural outcomes resulting from a single stimulus, thereby allowing for automated test generation for non-deterministic software. In accordance with the present invention, a method, system, and computer program product are disclosed for testing software having a non-deterministic outcome. In accordance with the present invention, a set of rules is created, each rule having an associated stimulus, a precondition computation, and a computation procedure to produce the set of all valid outcome states. Each valid outcome state models one of several states that may result from applying the stimulus to any state which satisfies the precondition computation. Using these models, a test generation program is executed against the set of rules to recursively expand each path associated with an outcome state of a rule and outputting a list of valid possible outcomes, then selecting sequences of stimuli in accordance with coverage goals set by the test engineer.
    Type: Grant
    Filed: September 5, 2001
    Date of Patent: May 30, 2006
    Assignee: International Business Machines Corporation
    Inventors: Eitan Farchi, Alan Hartman, Paul Kram, Kenneth Nagin
  • Publication number: 20060107102
    Abstract: A method for reconfiguring a storage system communicating with a host, consisting of the steps of formulating a proposed reconfiguration of the storage system from an original configuration, and generating a record of operations of the storage system during an evaluation period in the original configuration. In response to the record, the method further consists of making a determination whether data accessed by the host in the original configuration during the evaluation period would have been unavailable to the host if the proposed reconfiguration had been implemented prior to the evaluation period. In response to the determination, a decision is made whether to implement the proposed reconfiguration.
    Type: Application
    Filed: October 26, 2004
    Publication date: May 18, 2006
    Applicant: International Business Machines Corporation
    Inventors: Kenneth Nagin, Aviad Zlotnick
  • Publication number: 20060095479
    Abstract: A computer system having primary and recovery file system management, the system including a computing device, an operating system, a primary file system, and a recovery file system, where each of said file systems is labeled, prior to bootstrapping by the operating system the label of the recovery file system identifies the recovery file system as a primary file system, and the operating system is operative to swap the labels of the primary and recovery file systems during bootstrapping, attempt to mount said either of the file systems whose label identifies the file system as the primary file system, and swap the labels of the primary and recovery file systems if the file system whose label identifies it as the primary file system was mounted successfully and if the successfully mounted file system is the primary file system.
    Type: Application
    Filed: November 1, 2004
    Publication date: May 4, 2006
    Applicant: International Business Machines Corporation
    Inventors: Itzhack Goldberg, Kenneth Nagin
  • Patent number: 7024589
    Abstract: 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: Grant
    Filed: June 14, 2002
    Date of Patent: April 4, 2006
    Assignee: International Business Machines Corporation
    Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky
  • Patent number: 6944848
    Abstract: A system for automatic generation of test programs employs test generation foci linked to a finite state machine behavioral model of a software application under test to produce abstract test suites that are executed by an execution engine. The foci include directive expressions that tag coverage variables of the behavioral model. The execution engine operates until the tagged coverage variables have assumed all their possible values. Both the behavioral models and the foci are archivable and can be retrieved and reused independently.
    Type: Grant
    Filed: May 3, 2001
    Date of Patent: September 13, 2005
    Assignee: International Business Machines Corporation
    Inventors: Alan Hartman, Kenneth Nagin, Paul Kram
  • Publication number: 20030233600
    Abstract: 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: Application
    Filed: June 14, 2002
    Publication date: December 18, 2003
    Applicant: International Business Machines Corporation
    Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky
  • Publication number: 20030208351
    Abstract: 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: Application
    Filed: May 1, 2002
    Publication date: November 6, 2003
    Inventors: Alan Hartman, Andrei Kirshin, Kenneth Nagin, Sergey Olvovsky, Aviad Zlotnick
  • Publication number: 20030196191
    Abstract: Middleware is validated using a two layered modeling strategy for the generation of test suites. A high level model of the syntax of the programming language used to program the middleware generates a series of high level abstract programs. These high level abstract programs then undergo two separate translations. First they are translated directly into actual test programs, which are expressed in the programming language of the middleware. Second, they are translated into second models of the high level abstract programs. Running the model based test generator again on the second models produces a set of suites of test cases, each test case consisting of data inputs and predicted results for one of the actual test programs. The actual test programs are run repetitively using the middleware execution engine. The results are compared with the predicted results, using a generic validation engine.
    Type: Application
    Filed: April 16, 2002
    Publication date: October 16, 2003
    Inventors: Alan Hartman, Kenneth Nagin, Guy Sharon
  • Publication number: 20030046613
    Abstract: A test coverage tool provides output that identifies differences between the actual coverage provided by a test suite run on a program under test and the coverage criteria (e.g., the coverage criteria required by the test/development team management). The output from the test coverage tool is generated in the same language that was used to write the coverage criteria that are input to an automated test generator to create the test cases which form the test suite. As a result, the output from the coverage tool can be input back into the automated test generator to cause the generator to revise the test cases to correct the inadequacies. This allows iterative refinement of the test suite automatically, enabling automated test generation to be more effectively and efficiently used with more complex software and more complex test generation inputs.
    Type: Application
    Filed: September 5, 2001
    Publication date: March 6, 2003
    Inventors: Eitan Farchi, Daniel Geist, Alan Hartman, Paul Kram, Kenneth Nagin, Yael Shaham-Gafni, Shmuel Ur
  • Publication number: 20030046609
    Abstract: The present invention enables the modeling of plural outcomes resulting from a single stimulus, thereby allowing for automated test generation for non-deterministic software. In accordance with the present invention, a method, system, and computer program product are disclosed for testing software having a non-deterministic outcome. In accordance with the present invention, a set of rules is created, each rule having an associated stimulus, a precondition computation, and a computation procedure to produce the set of all valid outcome states. Each valid outcome state models one of several states that may result from applying the stimulus to any state which satisfies the precondition computation. Using these models, a test generation program is executed against the set of rules to recursively expand each path associated with an outcome state of a rule and outputting a list of valid possible outcomes, then selecting sequences of stimuli in accordance with coverage goals set by the test engineer.
    Type: Application
    Filed: September 5, 2001
    Publication date: March 6, 2003
    Inventors: Eitan Farchi, Alan Hartman, Paul Kram, Kenneth Nagin
  • Patent number: 6275964
    Abstract: Data communication system for transmitting data codewords of n bytes length over a communication channel (20) from a transmitter (10) comprising a hardware encoder (12) capable of receiving as input an information sequence of n−2t bytes and emitting as output a codeword of n bytes including n−2t information bytes and 2t redundant bytes to a receiver (24) comprising a hardware decoder (28) capable of detecting up to 2t byte-errors and correcting up to t byte errors; the transmitter (10) further comprising a software encoder (14) transforming, in combination with the hardware encoder (12), an information sequence of n−2s bytes with t<s≦2t into a modified sequence, the transmitter (10) emitting encoded codewords including n−2s information bytes and 2s redundant bytes, and the receiver (24) further comprising a software decoder (34) for correcting up to s byte-errors when the hardware decoder (28) has detected errors in the encoded codeword received from the communication channel (20
    Type: Grant
    Filed: March 20, 1999
    Date of Patent: August 14, 2001
    Assignee: International Business Machines Corporation
    Inventors: Kenneth Nagin, Dafna Sheinwald, Julien Satran, Efri Zeidner, Benny Rochberger
  • Patent number: 5606679
    Abstract: A method and apparatus for improving storage controller throughput and reducing unit control block contention when selecting a Utility Volume for servicing non-specific read requests. Throughput is increased by enabling the storage controller to service non-specific read requests issued against a Utility Volume which is not the same as the device associated with the data that the non-specific read is requesting. The Utility Volume is dynamically selected by considering the current loads on the available devices for both specific and non-specific processing. A Penalty Index is assigned to each volume, wherein the Penalty Index is a weighted average of the specific and non-specific processing. The device having the lowest Penalty Index is selected as the Utility Volume for a session. A Penalty Index evaluation is made at a Reference Point which is further enabled by a random clock to ensure that sessions do not likely pick the same Utility Volume.
    Type: Grant
    Filed: February 28, 1995
    Date of Patent: February 25, 1997
    Assignee: International Business Machines Corporation
    Inventors: Oded Cohn, William F. Micka, Yosef Moatti, Kenneth Nagin, Yoram Novick, Efaim Zeidner
  • Patent number: 5594900
    Abstract: A backup method for a computer database system comprising maintaining a mirrored copy of the database at a remote location is characterized in that updates to the remote database data are delayed for a delay time greater than or equal to the upper limit on the data communication delay between the local location and the remote location and updates to a remote log for the database are executed after corresponding updates to a local log without said delay. In this way a consistent copy of the database may be recovered from the mirrored copy of the database and the remote log after destruction of the database system.
    Type: Grant
    Filed: March 22, 1995
    Date of Patent: January 14, 1997
    Assignee: International Business Machines Corporation
    Inventors: Oded Cohn, Kenneth Nagin, Yoram Novick, Alex Winokur