6. A machine readable non-transitory medium storing one or more sequences of instructions for causing a system to generate test cases for functional testing of a software application, wherein execution of said one or more sequences of instructions by said one or more processors contained in said system causes said system to perform the actions of: maintaining a plurality of rules, each rule specifying a corresponding one of a plurality of patterns in a natural language associated with a corresponding template, wherein each of said plurality of patterns comprises a corresponding set of variables and corresponding words of the natural language together in an ordered sequence, wherein each template indicates a corresponding set of test cases based on the set of variables contained in the pattern associated with the template, each test case being specified in the form of a corresponding set of instructions, each instruction comprising text embedded with at least one of the set of variables contained in the pattern associated with the template; receiving a design document containing a plurality of statements, each statement containing words of said natural language; determining a first statement of said plurality of statements matching a first pattern specified in a first rule of said plurality of rules, wherein a match is deemed to exist if the words in the first pattern exist in the first statement in the same corresponding positions of said ordered sequence, and if said first statement also contains values for each of said corresponding set of variables specified in said first pattern, wherein said first rule specifies that said first pattern is associated with a first template, said first pattern containing a first set of variables, wherein said determining identifies values for each of said first set of variables based on said matching, said first template indicating a first test case containing a first set of instructions embedded with said first set of variables; and generating said first test case indicated by said first template specified in said first rule by substituting said first set of variables embedded in said first set of instructions with the corresponding values identified by said determining.
6. A machine readable non-transitory medium storing one or more sequences of instructions for causing a system to generate test cases for functional testing of a software application, wherein execution of said one or more sequences of instructions by said one or more processors contained in said system causes said system to perform the actions of: maintaining a plurality of rules, each rule specifying a corresponding one of a plurality of patterns in a natural language associated with a corresponding template, wherein each of said plurality of patterns comprises a corresponding set of variables and corresponding words of the natural language together in an ordered sequence, wherein each template indicates a corresponding set of test cases based on the set of variables contained in the pattern associated with the template, each test case being specified in the form of a corresponding set of instructions, each instruction comprising text embedded with at least one of the set of variables contained in the pattern associated with the template; receiving a design document containing a plurality of statements, each statement containing words of said natural language; determining a first statement of said plurality of statements matching a first pattern specified in a first rule of said plurality of rules, wherein a match is deemed to exist if the words in the first pattern exist in the first statement in the same corresponding positions of said ordered sequence, and if said first statement also contains values for each of said corresponding set of variables specified in said first pattern, wherein said first rule specifies that said first pattern is associated with a first template, said first pattern containing a first set of variables, wherein said determining identifies values for each of said first set of variables based on said matching, said first template indicating a first test case containing a first set of instructions embedded with said first set of variables; and generating said first test case indicated by said first template specified in said first rule by substituting said first set of variables embedded in said first set of instructions with the corresponding values identified by said determining. 7. The machine readable non-transitory medium of claim 6 , wherein said first pattern comprises said first set of variables and a first set of words in a first ordered sequence, wherein said first ordered sequence associates a corresponding ordinal position for each of said first set of variables and said first set of words, wherein said determining determines that said first statement matches said first pattern if said first statement also contains said first set of word in the same corresponding ordinal positions and if said each of said first set of variables can be matched to corresponding one or more words representing said values in the same corresponding ordinal positions.