I need your help on these, please :
-I'll let you know when she arrives/ has arrived. (They look both correct to me). You could use either, "when she arrives" implies more immediacy.
-Will you phone as soon as you have got/get your exam results? (same here) If you say "as soon as" you are talking about immediately so "get" or "receive" are appropriate.
-I'll call a taxi when the film finishes/has finished. (same here) Here "has finished" is appropriate because if you use "finishes" it implies that you will call the taxi at the same moment that the film ends.
-You can't drive in Britain until you are 17. => I understand this one but I can't explain WHY we can't use "have been". You could use "...until you have had your 17th birthday". "...until you are 17" is much simpler.
-I'll help you as soon as I have done the shopping. => I understand this one but I can't explain WHY we can't use "do". You are saying that you will help when the shopping is finished. If you use do, it implies that you will help while you are doing the shopping.
-I'll phone the restaurant before we go out. => I understand this one but I can't explain WHY we can't use "have gone out". Why would you want to use "have gone out"?
Thank you very much.