Start with carefully designing and thinking about the data model, i.e. how the domain and business objects interact, how is it stored in the database, the main actions between the objects.
These are the foundation and most important.
Since the infrastructure, framework, programming language can all be swapped. You must build a good data model first before creating the application details.
