1. A method for automatic extraction of software design from a requirements document, the method comprising: (A) generating a requirements hierarchical decomposition table from the requirements document defining a plurality of decomposition levels; (B) generating an initial hierarchical decomposition design having a plurality of decomposition levels based upon the requirements hierarchical decomposition table; (C) identifying input and/or output parameters for each decomposition level in the hierarchical decomposition design; and (D) generating a current hierarchical decomposition design based upon the initial hierarchical decomposition graph and the input and/or output parameters.