We use this tense:
1. When we want to emphasise the duration of an action up to a certain time in the future.
By the time Tim retires, he will have been working for the same company for 20 years.
2. by....for
By the time he finishes work, we will have been waiting for more than an hour.
Positive Subject + will have been + V-ing
NegativeSubject +will not have been + V-ing
QuestionsWill + subject + have been + V-ing ?