Developing Front-to-Back is a strategy that we like to use on existing codebases (and sometimes new ones), where we start at the most visible and immediate to the user - the design, then proceed to front-end development, and then eventually do back-end development last.
What this does is allows Design and Front-end Development to set the data structure that they prefer when building the front-end, ensuring that data's cleanly formatted.
Building the Front End
The front-end can be delivered in a fully completed state, meaning that all markup, CSS and JS are 100% finalized and ready for launch.
Whenever we want to get information from the CMS/Backend of the application, we "stub" that content in, or make static, pre-formatted information come from the controller, with the intention of having another developer properly hook up the backend logic later.
Adding Stubbed Data to the Controller
Starting Backend Development
Once we receive a finished front-end, the job of the backend developer is then to find the stubbed content, and replace the static values with dynamic information coming from the back-end or CMS.
Creating a Post Object
Creating and Identifying Existing Fieldsets
Getting Data from the CMS to the Controller
Setting up your fields for ease of access
Leveraging Existing Functionality
Refactoring Functionality into Content Layers
Finishing the Controller
We follow the examples above to replace all of the stubbed content with real, dynamic content. Once that's done, our job is complete, and the app should be pretty much ready for QA.