Function points measure the size of an application system based on the functional view of the system. The size is determined by counting the number of inputs, outputs, queries, internal files and external files in the system and adjusting that total for the functional complexity of the system. Function point analysis, originally developed at IBM, has as an advantage its focus on measuring software produced in terms of functionality delivered to the end user, rather than in terms of development deliverables, which have no direct bearing on the end user.