Patents by Inventor Michael E. Gildein
Michael E. Gildein 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: 11656869Abstract: A method of analyzing code is provided. The method includes generating an abstract representation of the code, identifying conditional statements in the abstract representation, populating a truth table for each conditional statement that has been identified with all possible outcomes of the conditional statement and assessing the truth table for each conditional statement to identify issues.Type: GrantFiled: November 15, 2021Date of Patent: May 23, 2023Assignee: International Business Machines CorporationInventors: Andrew C. M. Hicks, Michael E. Gildein, Daniel Nicolas Gisolfi
-
Patent number: 11455154Abstract: Techniques for vector-based identification of software dependency relationships are described herein. An aspect includes determining a first dependency relationship value between a first code segment and a second code segment. Another aspect includes calculating a magnitude vector based on the first dependency relationship value and a second dependency relationship value corresponding to the first code segment and the second code segment. Another aspect includes determining a relationship score for the first code segment and the second code segment based on the magnitude vector and the first dependency relationship value.Type: GrantFiled: December 10, 2020Date of Patent: September 27, 2022Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew C. M. Hicks, Michael E. Gildein, Daniel John FitzGerald, Christopher G. Brooker
-
Publication number: 20220188627Abstract: Aspects of the invention include mutating each neural network of a portion of a first array of neural networks, wherein each neural network of the first array of neural networks is configured to select a respective sequence of test cases for testing a computing infrastructure. Causing each neural network of a second array of neural networks to select a respective sequence of test cases for testing the computing infrastructure. Generating a child neural network by performing a crossover operation between a mutated neural network of the portion of the first array and a neural network of the second array of neural networks, the child neural network generating a new sequence of test cases for testing the computing infrastructure.Type: ApplicationFiled: December 15, 2020Publication date: June 16, 2022Inventors: Andrew C.M. Hicks, Deborah A. Furman, Michael Terrence Cohoon, MICHAEL E. GILDEIN
-
Publication number: 20220188083Abstract: Techniques for vector-based identification of software dependency relationships are described herein. An aspect includes determining a first dependency relationship value between a first code segment and a second code segment. Another aspect includes calculating a magnitude vector based on the first dependency relationship value and a second dependency relationship value corresponding to the first code segment and the second code segment.Type: ApplicationFiled: December 10, 2020Publication date: June 16, 2022Inventors: Andrew C. M. Hicks, Michael E. Gildein, Daniel John FitzGerald, Christopher G. Brooker
-
Publication number: 20220179648Abstract: Techniques for subject matter expert identification for computer software are described herein. An aspect includes receiving a search string. Another aspect includes searching a plurality of library usage data files to determine a selected library corresponding to the search string. Another aspect includes determining a location of a library call corresponding to the selected library in source code. Another aspect includes determining a computer programmer associated with the determined location based on version control metadata corresponding to the source code. Another aspect includes identifying the determined computer programmer as a subject matter expert for the selected library.Type: ApplicationFiled: December 8, 2020Publication date: June 9, 2022Inventors: Andrew C. M. Hicks, Robert Peter Catalano, Tyler Vezio Rimaldi, Michael E. Gildein
-
Patent number: 11340897Abstract: Techniques for subject matter expert identification for computer software are described herein. An aspect includes receiving a search string. Another aspect includes searching a plurality of library usage data files to determine a selected library corresponding to the search string. Another aspect includes determining a location of a library call corresponding to the selected library in source code. Another aspect includes determining a computer programmer associated with the determined location based on version control metadata corresponding to the source code. Another aspect includes identifying the determined computer programmer as a subject matter expert for the selected library.Type: GrantFiled: December 8, 2020Date of Patent: May 24, 2022Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew C. M. Hicks, Robert Peter Catalano, Tyler Vezio Rimaldi, Michael E. Gildein
-
Patent number: 11321644Abstract: Techniques for an expertise score vector for software component management are described herein. An aspect includes determining a size and an amount of time corresponding to committed code contributed by a first developer to a first software component. Another aspect includes determining a time per unit of contribution based on the size and amount of time. Another aspect includes updating component mastery metrics corresponding to the first software component in an expertise score vector corresponding to the first developer based on the time per unit of contribution. Another aspect includes assigning the first developer to a developer tier based on the component mastery metrics. Another aspect includes assigning a work item corresponding to the first software component to the first developer based on the developer tier.Type: GrantFiled: January 22, 2020Date of Patent: May 3, 2022Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew C. M. Hicks, Michael Terrence Cohoon, Ryan Thomas Rawlins, Michael E. Gildein
-
Patent number: 11301358Abstract: Aspects of the invention include receiving a notification that a first logical grouping of code segments of a software application is being changed. Comparing the first logical grouping to a second logical grouping of code segments from a change history of the software application, where the first logical grouping and the second logical grouping both relate to resolving a common software application issue, and where the first logical grouping and the second logical grouping include at least one common code segment. Identifying a first code segment of the first logical grouping that is different from a second code segment of the second logical grouping. Determining that given the at least one code segment is changed a probability that the second code segment has been changed is greater than an threshold value. Sending a notification based on the difference in the probabilities being greater than a threshold value.Type: GrantFiled: December 15, 2020Date of Patent: April 12, 2022Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew C. M. Hicks, Michael E Gildein, Michael Terrence Cohoon
-
Publication number: 20220075619Abstract: A method of analyzing code is provided. The method includes generating an abstract representation of the code, identifying conditional statements in the abstract representation, populating a truth table for each conditional statement that has been identified with all possible outcomes of the conditional statement and assessing the truth table for each conditional statement to identify issues.Type: ApplicationFiled: November 15, 2021Publication date: March 10, 2022Inventors: Andrew C. M. Hicks, Michael E. Gildein, Daniel Nicolas Gisolfi
-
Patent number: 11226815Abstract: A method of analyzing code is provided. The method includes generating an abstract representation of the code, identifying conditional statements in the abstract representation, populating a truth table for each conditional statement that has been identified with all possible outcomes of the conditional statement and assessing the truth table for each conditional statement to identify issues.Type: GrantFiled: April 7, 2020Date of Patent: January 18, 2022Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew C. M. Hicks, Michael E. Gildein, Daniel Nicolas Gisolfi
-
Patent number: 11182282Abstract: A method for detecting and localizing a fault in a system under test (SUT) includes generating an initial set of test vectors that provides complete n-wise coverage of the reduced test space. The method further includes generating and executing an initial set of test cases to obtain a first set of execution results. The method further includes determining, based at least in part on the first set of execution results, that one or more test cases failed execution. The method further includes generating a set of new test cases from a selected failing test case. The method further includes executing the set of new test cases to obtain a second set of execution results. The method further includes detecting and localizing the fault based at least in part on the second set of execution results.Type: GrantFiled: February 28, 2020Date of Patent: November 23, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew C. M. Hicks, Ryan Thomas Rawlins, Deborah A. Furman, Michael E. Gildein
-
Patent number: 11157268Abstract: Aspects of the invention include receiving, by a processor, a request to copy a code from a source file and receiving, by the processor, a request to paste the code into a destination file. Aspects also include creating, by the processor based at least in part on the request to paste the code, an entry in a database, the entry having an identification of the source file, an identification of the destination file, a location of the code in the source file, and a location of the code in the destination file.Type: GrantFiled: January 23, 2020Date of Patent: October 26, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andrew C. M. Hicks, Michael Terrence Cohoon, Ryan Thomas Rawlins, Michael E. Gildein
-
Publication number: 20210311730Abstract: A method of analyzing code is provided. The method includes generating an abstract representation of the code, identifying conditional statements in the abstract representation, populating a truth table for each conditional statement that has been identified with all possible outcomes of the conditional statement and assessing the truth table for each conditional statement to identify issues.Type: ApplicationFiled: April 7, 2020Publication date: October 7, 2021Inventors: Andrew C. M. Hicks, Michael E. Gildein, Daniel Nicolas Gisolfi
-
Publication number: 20210271592Abstract: A method for detecting and localizing a fault in a system under test (SUT) includes generating an initial set of test vectors that provides complete n-wise coverage of the reduced test space. The method further includes generating and executing an initial set of test cases to obtain a first set of execution results. The method further includes determining, based at least in part on the first set of execution results, that one or more test cases failed execution. The method further includes generating a set of new test cases from a selected failing test case. The method further includes executing the set of new test cases to obtain a second set of execution results. The method further includes detecting and localizing the fault based at least in part on the second set of execution results.Type: ApplicationFiled: February 28, 2020Publication date: September 2, 2021Inventors: ANDREW C. M. HICKS, RYAN THOMAS RAWLINS, DEBORAH A. FURMAN, MICHAEL E. GILDEIN
-
Publication number: 20210232387Abstract: Aspects of the invention include receiving, by a processor, a request to copy a code from a source file and receiving, by the processor, a request to paste the code into a destination file. Aspects also include creating, by the processor based at least in part on the request to paste the code, an entry in a database, the entry having an identification of the source file, an identification of the destination file, a location of the code in the source file, and a location of the code in the destination file.Type: ApplicationFiled: January 23, 2020Publication date: July 29, 2021Inventors: ANDREW C. M. HICKS, MICHAEL TERRENCE COHOON, RYAN THOMAS RAWLINS, MICHAEL E. GILDEIN
-
Publication number: 20210224717Abstract: Techniques for an expertise score vector for software component management are described herein. An aspect includes determining a size and an amount of time corresponding to committed code contributed by a first developer to a first software component. Another aspect includes determining a time per unit of contribution based on the size and amount of time. Another aspect includes updating component mastery metrics corresponding to the first software component in an expertise score vector corresponding to the first developer based on the time per unit of contribution. Another aspect includes assigning the first developer to a developer tier based on the component mastery metrics. Another aspect includes assigning a work item corresponding to the first software component to the first developer based on the developer tier.Type: ApplicationFiled: January 22, 2020Publication date: July 22, 2021Inventors: Andrew C. M. Hicks, Michael Terrence Cohoon, RYAN THOMAS RAWLINS, MICHAEL E. GILDEIN
-
Publication number: 20210224719Abstract: Techniques for problem record management using an expertise score vector for software component management are described herein. An aspect includes receiving a problem record associated with a first work item of a software component, the first work item being associated with a first developer. Another aspect includes creating a second work item corresponding to the problem record. Another aspect includes assigning the second work item to a second developer. Another aspect includes determining that computer code from the second developer resolves the problem record. Another aspect includes, based on determining that the problem record is resolved, increasing an expertise score of the second developer.Type: ApplicationFiled: January 22, 2020Publication date: July 22, 2021Inventors: Andrew C. M. Hicks, Michael Terrence Cohoon, RYAN THOMAS RAWLINS, MICHAEL E. GILDEIN
-
Publication number: 20210224064Abstract: Techniques for an expertise score vector for software component management are described herein. An aspect includes maintaining a plurality of metrics in an expertise score vector corresponding to a developer. Another aspect includes identifying a subset of the plurality of metrics that are relevant to a work item corresponding to a software component. Another aspect includes applying respective weights to the subset of the plurality of metrics. Another aspect includes determining an expertise score for the developer based on the weighted subset of the plurality of metrics, wherein determining the expertise score comprises determining a magnitude of a vector comprising the weighted subset of the plurality of metrics. Another aspect includes assigning the work item to the developer based on the expertise score.Type: ApplicationFiled: January 22, 2020Publication date: July 22, 2021Inventors: Andrew C. M. Hicks, Michael Terrence Cohoon, RYAN THOMAS RAWLINS, MICHAEL E. GILDEIN
-
Publication number: 20210224716Abstract: Techniques for expertise score vector based work item assignment for software component management are described herein. An aspect includes receiving a problem record corresponding to a software component. Another aspect includes determining a work item corresponding to the problem record. Another aspect includes assigning the work item to a developer based on an expertise score vector of the developer.Type: ApplicationFiled: January 22, 2020Publication date: July 22, 2021Inventors: Andrew C. M. Hicks, Michael Terrence Cohoon, RYAN THOMAS RAWLINS, MICHAEL E. GILDEIN
-
Patent number: 11023368Abstract: A method for detecting and localizing a fault in a system under test (SUT) includes generating an initial set of test vectors that provides complete n-wise coverage of the reduced test space. The method further includes generating an initial set of test cases from the initial set of test vectors and executing the initial set of test cases. The method further includes generating a set of new test cases from a selected failing test case, wherein generating the set of new test cases comprises generating, in relation to each attribute in the selected failing test case, a respective subset of new test cases at least in part by changing a respective attribute value for the attribute in the selected failing test case to each other candidate attribute value for the attribute that is not present in any of the one or more test cases that failed execution.Type: GrantFiled: February 28, 2020Date of Patent: June 1, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Deborah A. Furman, Andrew C. M. Hicks, Ryan Thomas Rawlins, Michael E. Gildein