I have found that using Liferay as a base for applications decreases development time so significantly that it's hard for me to justify building any new projects as stand alone applications.
How are you developing your applications?
Liferay is developing using agile methods. Portlets are business services and service builder generates data (entity) services.
If you're trying to develop in a traditional waterfall type method where each phase consists of developing software in system layer, liferay is not the way to go. If you developers only know one technology and each phase of the development process is passed to another group, liferay may not be it.
If you're developing system using agile method where business services are developed in phases and users would need to "see" the output of each business service developed
, I think liferay is it. Every developer would need to be able to design entities and develop java and jsp/javascript instead of just knowing one technology.
Liferay is just a tool. You'll have to change how you do your work if you want to gain benefit of using a new tool.
Most of my users want to start small and improve on it by adding new services and modifying existing ones. They are also interested in developing on the cloud (including private clouds). They want flexibility in the end user level or what end user can see.