Patents by Inventor Ian Paul Wright
Ian Paul Wright 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: 20220058019Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for receiving a source code change; computing a distribution of standard coding durations using a model that takes as input features of source code changes; and computing a representative duration for the code change using the distribution of standard coding durations, wherein the representative duration represents a measure of how long a standard developer defined by the model would take to make the code change.Type: ApplicationFiled: November 5, 2021Publication date: February 24, 2022Inventors: Ian Paul Wright, Albert Ziegler
-
Patent number: 11188323Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for receiving a source code change; computing a distribution of standard coding durations using a model that takes as input features of source code changes; and computing a representative duration for the code change using the distribution of standard coding durations, wherein the representative duration represents a measure of how long a standard developer defined by the model would take to make the code change.Type: GrantFiled: May 10, 2019Date of Patent: November 30, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Ian Paul Wright, Albert Ziegler
-
Patent number: 10860314Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for obtaining a commit time history of a developer entity, wherein the commit time history indicates, for each unit time interval of a plurality of unit time intervals, whether or not the developer entity committed source code during the unit time interval; and generating a model that takes the commit history as input and generates an output sequence of final probabilities, each final probability representing how likely it was that the developer entity was active during the corresponding unit time interval.Type: GrantFiled: May 10, 2019Date of Patent: December 8, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Ian Paul Wright, Albert Ziegler
-
Publication number: 20200341987Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for database query ranking. One of the methods includes receiving a query having a plurality of predicates; executing the query comprising executing the plurality of predicates to generate a plurality of tuple values; generating a query derivation graph for the query generating, from the query derivation graph, a plurality of feature values for each query result of the plurality of query results; computing a score for each query result of the plurality of query results by using the plurality of feature values generated for the query result as input to a trained ranking model; and ranking the plurality of query results according to computed scores generated by the trained ranking model.Type: ApplicationFiled: April 25, 2019Publication date: October 29, 2020Inventor: Ian Paul Wright
-
Patent number: 10719315Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media for automatically determining developer team composition. One of the methods includes obtaining a reference set of snapshots for a code base, each snapshot comprising a representation of source code of the code base at a particular time and being associated with a particular project and a particular developer of a team of developers of the code base; selecting a subset of snapshots; dividing the subset into a plurality of time windows; for each time window and for each developer that committed a snapshot to the reference collection of snapshots during the time window, determining a normalized rating of the developer's skills in each of a plurality of developer activity metrics; and aggregating, for each time window, the normalized ratings for each developer to generate a developer team composition for the fixed period of time.Type: GrantFiled: October 31, 2017Date of Patent: July 21, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventor: Ian Paul Wright
-
Publication number: 20200225945Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for receiving a source code change; computing a distribution of standard coding durations using a model that takes as input features of source code changes; and computing a representative duration for the code change using the distribution of standard coding durations, wherein the representative duration represents a measure of how long a standard developer defined by the model would take to make the code change.Type: ApplicationFiled: May 10, 2019Publication date: July 16, 2020Inventors: Ian Paul Wright, Albert Ziegler
-
Publication number: 20200225944Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for obtaining a commit time history of a developer entity, wherein the commit time history indicates, for each unit time interval of a plurality of unit time intervals, whether or not the developer entity committed source code during the unit time interval; and generating a model that takes the commit history as input and generates an output sequence of final probabilities, each final probability representing how likely it was that the developer entity was active during the corresponding unit time interval.Type: ApplicationFiled: May 10, 2019Publication date: July 16, 2020Inventors: Ian Paul Wright, Albert Ziegler
-
Patent number: 10310853Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for computing coding velocity. One of the methods includes receiving a definition of one or more individual source code developers belonging to a target developer entity. Coding-velocity samples for each individual source code developer belonging to the target developer entity are generated, wherein each coding-velocity sample represents a measure of coding activity by the individual source code developer over a respective time duration. The coding-velocity samples are aggregated according to the definition of the target developer entity. A coding-velocity model for the target developer entity is generated from the aggregated coding-velocity samples of the target developer entity. A value of a particular coding-velocity attribute for the target developer entity is computed using the coding-velocity model.Type: GrantFiled: April 17, 2017Date of Patent: June 4, 2019Assignee: Semmle LimitedInventor: Ian Paul Wright
-
Publication number: 20190129714Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media for automatically determining developer team composition. One of the methods includes obtaining a reference set of snapshots for a code base, each snapshot comprising a representation of source code of the code base at a particular time and being associated with a particular project and a particular developer of a team of developers of the code base; selecting a subset of snapshots; dividing the subset into a plurality of time windows; for each time window and for each developer that committed a snapshot to the reference collection of snapshots during the time window, determining a normalized rating of the developer's skills in each of a plurality of developer activity metrics; and aggregating, for each time window, the normalized ratings for each developer to generate a developer team composition for the fixed period of time.Type: ApplicationFiled: October 31, 2017Publication date: May 2, 2019Inventor: Ian Paul Wright
-
Publication number: 20180300127Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for computing coding velocity. One of the methods includes receiving a definition of one or more individual source code developers belonging to a target developer entity. Coding-velocity samples for each individual source code developer belonging to the target developer entity are generated, wherein each coding-velocity sample represents a measure of coding activity by the individual source code developer over a respective time duration. The coding-velocity samples are aggregated according to the definition of the target developer entity. A coding-velocity model for the target developer entity is generated from the aggregated coding-velocity samples of the target developer entity. A value of a particular coding-velocity attribute for the target developer entity is computed using the coding-velocity model.Type: ApplicationFiled: April 17, 2017Publication date: October 18, 2018Inventor: Ian Paul Wright
-
Patent number: 9785432Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for designating developers as having a particular skill. One of the methods includes obtaining a reference collection of snapshots for a code base, wherein each snapshot comprises a representation of source code of the code base at a particular time, each snapshot being associated with a particular developer of a plurality of developers of the code base. A plurality of metrics for each developer that committed at least one snapshot to the reference collection of snapshots is computed. Respective values of the plurality of metrics are partitioned into a plurality of respective partitions, and each of the plurality of developers are assigned to one of the plurality of partitions for each of the plurality of metrics. Developers in one or more top-ranked partitions are designated as developers having a particular skill.Type: GrantFiled: October 11, 2016Date of Patent: October 10, 2017Assignee: Semmle LimitedInventor: Ian Paul Wright