I've been reading with interest the many threads on problems getting the 'bus to achieve the descent profile optimisation. I had this problem initially, and couldn't work out why - I think I have an idea of what was going wrong (at least for me).
When I was a student pilot the FI used to make me do as much metal math as my poor brain could take - we used whizz wheels in those days, before apps on phones but the training was so important to press home the point that it is the PIC who makes the decisions not the computer. So a sudden instruction to make a diversion to the nearest airport required some simple arithmetic, which taught me to always be calculating what should happen, even if there was an automated system available.
My approach to descent (if you'll pardon the pun) has always been to take the 3x the difference in altitude in FL (from cruise level to desired level) divided by 10, x3 +10nm in calculating the TOD. For example say you want to descend from FL300 to FL100, that is (200 /10) x3 +10nm or
20x3+10 =70nm. There are lots of subtle variations on this based on aircraft weight and winds aloft, but for our purposes, this seems a good guesstimate, and means I know what should happen, and can be vigilant if the TOD on the FMGS is incorrect.
Given that many people have problems with the 'bus not responding to v profiles at least this gives the pilot a good idea of what should happen if you plan to follow a 3 degree descent path. Next check your flight plan and set up for a descent to the beginning of the approach.
Why this - well you could set up a descent to the localiser intercept at the FAF, say 2500', but often you still have that disco in the flight plan because ATC may just assign you another runway. If you keep the disco in the flight plan the airbus will miscalculate the profile, and almost always descend too rapidly at first, then shallow out leaving you with the impossible task of being too high too fast at the start of the approach.
So either take the disco out (OK you'll have to commit to the runway without ATC clearance), and select the FAF altitude, OR disregard the disco and set the altitude of the transition which should be before the disco in the flight plan. Either way the FMC now has all the information in need to set the correct descent path. Even so, go back to your mental maths and ask is the TOD where it should be, and if not, then command the descent in vs yourself. You will have to manage speed as well, and there is a whole lot of options with the airbus here.
However, remember that when you reach FL100 you will need to decelerate to 250kts, so allow for this by allowing the speed to increase in the descent to FL250, shortening the distance over the ground, and then lifting the nose to achieve the target speed of 250kt at FL100 with enough distance to achieve the descent to the FAF without overspeeding. That's why we add 10nm to the arithmetic. In reality you may need to let the speed increase below FL250, up to the last 10nm or so before FL100 in order to achieve the descent, as the Airbus has low drag at low speed.
It may be from what I read that SP1 will tighten the optimisation within the FMGS so that this is automated, but until then, as a good pilot we will want to be in front of the plane, and there is really no excuse to be using the lever of shame, unless ATC give you a profile the aircraft is unable to achieve without - (yes it does happen!).
For me this is part of the fun of flying this aircraft - even if the FMGS needs a little tweak by the devs, its up to us to fly safely meanwhile!!