Fiori Elements vs. Freestyle
There are two ways to develop your own Fiori applications: Either you start with a complete self-development (“freestyle”) or you use the SAP Fiori Elements Framework.
The Fiori Elements Framework offers the possibility for various floorplans to create an app according to this pattern on the basis of an OData service without any own source code. In this way, an app can be created with very little effort, but can only be extended with own functionalities to a limited extent.
SAP offers a detailed guide, including a decision tree, for deciding when to develop a Fiori Elements app and when to develop a Freestyle app:
Usage Guide: When to use Fiori Elements