Collaborative software development systems and methods providing automated programming assistance
AssigneeInternational Business Machines Corporation
InventorsYoussef Drissi, Daby Sow
Life of this patent
Estimating the term…
Abstract
Collaborative program development systems are provided which implement methods for providing automated programming assistance to code developers in a collaborative program development environment. In particular, systems and methods for automated programming assistance are supported by leveraging a database or library of shared code snippets that are classified according to code patterns and rating scores that are derived from feedback and input from various code developers within a collaborative program development environment.
Claims35
A method for providing automated programming assistance, comprising:
- maintaining a code repository of code snippets that are authored by one or more developers in a collaborative program development environment;
- associating quality scores to the code snippets, wherein the quality scores are derived from information provided by one or more of the developers;
- and
- providing automated programming assistance to a developer by utilizing the code snippets and associated quality scores.
A method for supporting multi-user collaborative program development, the method comprising:
- obtaining a code snippet that is authored by one or more developers in a collaborative program development environment;
- automatically classifying the code snippet;
- storing the classified code snippet in a code repository, wherein the code repository maintains a plurality of classified code snippets that are shared among the developers;
- and
- providing automated programming assistance to a developer using one or more classified code snippets in the code repository.
The method of clam 11, wherein automatically extracting comprises comparing a predetermined code pattern template against the program code to identify a code pattern in the program code which matches to the code pattern template.
A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for providing automated programming assistance, the method steps comprising:
- maintaining a code repository of code snippets that are authored by one or more developers in a collaborative program development environment;
- associating quality scores to the code snippets, wherein the quality scores are derived from information provided by one or more of the developers;
- and
- providing automated programming assistance to a developer by utilizing the code snippets and associated quality scores.
A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to perform method steps for supporting multi-user collaborative program development, the method steps comprising:
- obtaining a code snippet that is authored by one or more developers in a collaborative program development environment;
- automatically classifying the code snippet;
- storing the classified code snippet in a code repository, wherein the code repository maintains a plurality of classified code snippets that are shared among the developers;
- and
- providing automated programming assistance to a developer using one or more classified code snippets in the code repository.
A collaborative program development system, comprising:
- a code repository comprising code snippets that are authored by one or more developers in a collaborative program development environment;
- a code classification system to automatically classify code snippets for storage in the code repository;
- and
- an automated code assistance system that provides automated programming assistance to a developer using one or more classified code snippets in the code repository.
Dependencies are inferred from the claim text.