have done 现在完成时
指的是过去做得某事儿对现在产生影响
一般会翻译为 “已经做了什么什么”
而have been doing 过去完成进行时
指的是某一事情已经持续发生了一段时间,并且再说话的这个时刻还有可能继续持续发生
如 it has been raining for a week
指的是雨已经持续下了一个星期了 并且有持续下下去的可能
你题中的第一句话
have been here 实际上是be there 的现在完成时态,而不是现在完成进行时
现在完成进行时一般结构是 have been doing
第二句话中是live 的现在完成时
在现在完成时中的been 都是be(is /are)动词的现在完成时态
I will have been in Seoul for ten years这句话少了条件
可以加上by 2010之类的表将来的时间
翻译成
到2010年我就在 Seoul 住了几十年了