Predefined applications.
Why reinvent the wheel?
Many applications
are more or less similar for all kinds of companies.
Some of those applications can be bought or even downloaded for free from the internet and can be implemented without any change.
Other applications have to be customized, either minor changes (logo's etc) or extensively (for example ERP integration).
The question if any application is best built from the ground up or by customizing an existing template, can only be answered by comparing the demands, the infrastructure and template specifications.
Where do the applications come from?
For example if a non-IT company developed a Timesheet application in-house, it could decide to give the application away rather than sell it, because 1: It is not their core-business and 2: They do not have the infrastructure to handle incoming service requests. Those applications are sometimes donated to the 'community' and can be found on sites like OpenNTF and formerly the IBM Sandbox.
The application is not exactly like I want it to be, how can it help me?
Let's look at the Timesheet example again, a company wants to implement it, but the application does not have the approval cycle and integration with their ERP system the company wants.
In this case the Timesheet application can be used as a basis for development. By developing only the approval cycle and the ERP integration needed the development time of the application can be greatly reduced.