On-premise means that the software is installed and run on a computers on the premises (in the building) of the organisation using the software, rather than at a remote facility, such as cloud
Customers have full control over their entire infrastructure and can at any point physically walk over and touch their servers. While this is a great plus, at the same time you must plan for, maintain, and pay for all aspects of your infrastructure such as:
- Basic necessities – electricity, space, cooling, etc.
- Hardware – server, storage, backup, etc.
- Software – security, high-availability, disaster recovery, etc.
- Operations – administration, helpdesk, maintenance, etc.
- Deployment & Migration – project management, architectural design, professional services, etc.
This can easily be a business all on its own and become a significant overhead in cost and resources to the business.
In general, more in-house developed systems more you may lean towards an on-premise solution.