there is a small tip to remember when using these two tenses:the perfect progressive is used to answer the question "how long"
eg:I have been studying English for two years(answer the question :"how long have you been studying English")
while the present perfect answer the question "how often"
eg:I have been there twice (how often do you go there)
I think,for most cases,we can apply this rule(but I don't think it cover all the usage of these two tenses)
Just my 2 cents!!!