Methods And Apparatus For Providing Predictive Analytics For Software Development
First Claim
1. A method of analyzing a computer software development project, said method comprising:
- constructing a statistical software development model from previous software development experience;
collecting a set of code complexity metrics, said set of code complexity metrics derived a plurality of source code files;
collecting a set of code churn metrics, said set of code complexity metrics derived from a source code control system;
tracking bugs discovered in said computer software development project;
processing said set of code complexity metrics, said set of code churn metrics, and said bugs with predictive analysis engine using said statistical software development; and
outputting a set of predictions describing the future development trajectory of said computer software development project.
0 Assignments
0 Petitions
Accused Products
Abstract
Managing large software projects is a notoriously difficult task. It is very difficult to project how long it will take to design, develop, and test the software thoroughly enough before it can be shipped to customers. To help with the task of software development, an advanced predictive analytics system is introduced. The predictive analytics system extracts metrics on code complexity, code churn, new features, testing, and bug tracking from a software development project. These extracted metrics are then provided to predictive analysis engine. The predictive analysis engine processes the extracted metrics in view of historical software development experience collected in a representative model. The predictive analysis engine outputs useful predictions such as future bug discover rates, customer found defects, and the probability of hitting a schedule ship date with a desired quality level.
110 Citations
20 Claims
-
1. A method of analyzing a computer software development project, said method comprising:
-
constructing a statistical software development model from previous software development experience; collecting a set of code complexity metrics, said set of code complexity metrics derived a plurality of source code files; collecting a set of code churn metrics, said set of code complexity metrics derived from a source code control system; tracking bugs discovered in said computer software development project; processing said set of code complexity metrics, said set of code churn metrics, and said bugs with predictive analysis engine using said statistical software development; and outputting a set of predictions describing the future development trajectory of said computer software development project. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer readable medium, said computer-readable medium storing a set of computer instructions for analyzing a computer software development project, said computer instructions implementing the steps of:
-
constructing a statistical software development model from previous software development experience; collecting a set of code complexity metrics, said set of code complexity metrics derived a plurality of source code files; collecting a set of code churn metrics, said set of code complexity metrics derived from a source code control system; tracking bugs discovered in said computer software development project; processing said set of code complexity metrics, said set of code churn metrics, and said bugs with predictive analysis engine using said statistical software development; and outputting a set of predictions describing the future development trajectory of said computer software development project. - View Dependent Claims (18, 19, 20)
-
Specification