This is a slightly broad subject as the answer will differ for different project requirements. Some projects will require a full CMS blog where the customer can edit every aspect of their website. Whereas, other websites may just want a website built on wordpress (but the customer will never update information). I personally prefer to make everything editable by the customer. Reason for this is; when they ask to change a specific thing on the website, you can refer them to the backend and teach them how to do it themselves. This in the long run will make your job easier due to less 'can you do this' phone calls.
Also, a plugin i highly recommend to make a much easier CMS system within wordpress is ACF or Advanced custom fields. This allows you to add custom fields to pages, categories, posts (almost anything). Another plugin which i would recommend is the Custom Post Type (CPTUI) module. This allows you to make a custom post type to make editing easier. For example, you can create a post type call films. When the customer wants to add another, on the admin panel they will see 'Films' > Add Film.