I think yours is the correct answer. "Just" as a time adverb should always be used with the present perfect tense.
Otherwise, "just" could be understood as "only/simply" - an adverb of manner.
I just practised = I simply practised = 단지 연습했어요
I have just practised = I practiced a short time ago = 방금 연습했어요
Don't think so, although you have rightly identified 금 as the same word used in 지금 (now).
금 means this point/moment in time.
• 지금 means this very moment in time, i.e. now.
[지 means 'only' (in the sense of very, particularly in English)]
바로 means straight, right. Adding to a time expression, it emphasises the immediacy of the moment; hence, its interpretation as 'straight away or right away'.
• 바로 지금 - [Lit. Right away at this very moment] Right now.
• 방금 - 방 means direction. It is used somewhat like the prefix "-ward" in English.
By placing 방 to the left of 금, it implies a short moment leftward of (/before) the (금) 'now'.
In other words, 방금 = "just now". (Past perfect tense needed)
Placing 방 to the right of 금, it implies a short moment rightward of (/following) the 'now', i.e. 금방 = "in a short while". (Future tense needed)
If "just" here means "merely" wouldn't the sentence be
"나는 단지 연습만 하고 있었다." ?
Note: As I am still not confident about Korean past progressive tense, all I want to point out above is the use of "단지 ...만" for the other meaning of "just" (= simply, only, merely) vs "just" (= now, very recently).
Please feel free to correct me.