Software requirements are the bases of software design
and implementation, so requirement management is critical
to software quality assurance. It is expected that the final
users of the software can give precise requirements before
the beginning of software design and development. And the
requirements should be stable during the lifecycle of
software development. But unfortunately, in real software
development practices, the requirements of software often
change drastically, especially in the fields that the business
processes are very complex and requirements are very
difficult to describe accurately. The requirements can
change at every stages of the software development from
system analysis to system implementation [1]. The changeful
software requirements always lead to exceeding budget