Initial data and upgrade

When developing is not uncommon to have to alter the database schema (adding, changing or removing fields to models), provide new initial data on fresh installations or alter the data on the database when upgrading.

The following guidelines are meant to make clear where to put the code: