Method and apparatus for estimating computer software development effort
First Claim
1. A method of analyzing a textual document to determine the amount of effort required to develop software code to meet functionality requirements requested in the textual document, comprising:
- training a natural language engine to recognize and search for phrases in textual documents which are representative of software functionality;
analyzing the textual document using the trained natural language engine to determine software functionality requirements requested in the textual document.
3 Assignments
0 Petitions
Accused Products
Abstract
The use of a natural language engine to locate software functionality in a free text document such as a requirements document is disclosed. An electronic version of a free text document is created. A natural language engine is trained to locate function points. The natural language engine performs an analysis of the electronic version of the free text document to locate function points in the electronic version of the free text document. Advantageously, the natural language engine eliminates human subjectivity from the identification of and counting of function points. Other types of functional counting methodologies can also be used in the present invention such as feature points.
-
Citations
17 Claims
-
1. A method of analyzing a textual document to determine the amount of effort required to develop software code to meet functionality requirements requested in the textual document, comprising:
-
training a natural language engine to recognize and search for phrases in textual documents which are representative of software functionality;
analyzing the textual document using the trained natural language engine to determine software functionality requirements requested in the textual document. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. An article, comprising:
-
at least one sequence of machine executable instructions;
a medium bearing the executable instructions in machine readable form, which execution of the instructions by one or more processors causes the one or more processors to;
train a natural language engine to recognize and search for phrases in textual documents which are representative of software functionality;
analyze the textual document using the trained natural language engine to determine software functionality requirements requested in the textual document.
-
-
16. A computer architecture for analyzing a textual document to determine the amount of effort required to develop software code to meet functionality requirements requested in the textual document, comprising:
-
training means for training a natural language engine to recognize and search for phrases in textual documents which are representative of software functionality;
analyzing means for analyzing the textual document using the trained natural language engine to determine software functionality requirements requested in the textual document.
-
-
17. A computer system comprising:
-
a processor; and
a memory coupled to said processor, the memory having stored therein sequences of instructions, which, when executed by said processor, cause said processor to perform the steps of;
training a natural language engine to recognize and search for phrases in textual documents which are representative of software functionality;
analyzing the textual document using the trained natural language engine to determine software functionality requirements requested in the textual document.
-
Specification