
1 answer
For a truly enterprise application that will involve some code, the problem can become segregating your business logic across many different locations in Salesforce. Unless the business case aligns very closely with an out-of-the-box feature from Salesforce (i.e. approval processes), I would try to use Lightning Process Builder to manage your customizations without code, and Apex to manage all other customizations. You can utilize Custom Settings or Custom Objects to allow users to modify the behavior of the app by including provisions in your code that respect "configurations" set by values in these tables/records.