The difference between "will be done" and "will have been done" is a relatively simple one. On is the future, and the other is past-in-future, future perfect (both are passive). The use of by, however, makes the distinction very murky.
If you specify a single point in time, doing something by that point is clear - it will be completely done. Thus, "it will be done by 3:00pm on Friday" means that it will be done, complete, nothing left to do as regards it, at or before 3:00pm on Friday. There is then no distinction between that and "it will have been done by 3:00pm on Friday", in terms of literal meaning.
Now, doing something by a certain day is ambiguous. Legal documents or regulations often specify what it means. One set of rules I've worked with specifies that "by a specified day" means "by 5:00pm on that day". Without that clarification, there might be local or occupational conventions, but it is hard to be entirely sure what a person means by it. I do not feel, however, that this changes the distinction (or lack thereof) between your examples - unless there's some local convention about that distinction as well.
Thus, while there is a grammatical distinction between your examples, one being in the future and the other future perfect, the fact that by is involved removes any essential semantic difference. However, I would say there is a shade of meaning distinction, that the basic future means that it might have been done very shortly before Tuesday, while the future perfect carries the implication that it will have been done in good time. That is quite possibly a dialectal and culturally-dependent shade of meaning, however.