A functional document, also known as functional specification, is a document that specifies the function that a system must perform, mostly regarded in systems engineering and software development. It typically describes what the system needs by the user, including the requested properties of inputs and outputs. It is somewhat similar to a matching requirements document.