What are functional requirements?
For our purposes, requirements are the high level objectives we want each new or redesigned feature to achieve. Requirements are usually expressed via fairly general, narrative statements. We've embedded functional requirements within each functional specification document as an introductory "Overview" section. For example:
Laddawn's new product search tool will allow the customer to search Laddawn’s entire product offering without having to differentiate between stock, custom, made to order, and “marketplace” (sourced) products. Customers will no longer have to search stock or configure items in a purely linear fashion.
What are functional specifications?
(Paraphrased from Wikipedia)
One of the primary purposes of specifications is to achieve team consensus on what, specifically, a program is to achieve, at a fairly detailed level, from start to finish, before making the more time-consuming effort of writing source code. Functional specifications describe what is to be implemented, not the technical details of how it is to be implemented. Specifications focus on what people using the program will observe when interacting with the system. A typical functional specification might state the following:
When the user clicks the OK button, the dialog box closes and the focus returns to the main window in the state it was in before this dialog was displayed.