The short answer is that if you're talking about
not having done something
for a certain period of time, use the present perfect after
since, and if you're talking about what you did some time
ago, use the simple past.
___________
The long answer.
If the meaning is
I have not ...+en for/in [a while / a long time / N months / ...],
where what you have
not done is something that you (still) do
occasionally or repeatedly or habitually, i.e., something that happens
in "indefinite time",
then the same statement with the clauses "reversed" is
[It has / It's] been [a while / a long time / N months / ...] since I have ...+en.
Examples:
I haven't gone to the movies for a while.
It's been a while since I've gone to the movies.
I haven't seen a good movie in a long time.
It's been a long time since I've seen a good movie.
Shtupfort hasn't written a book on Martian humor in years.
It's been years since Shtupfort has written a book on Martian humor.
____________
The use of the simple past tends to suggest a one-time event, so the
first of the pair doesn't make a lot of sense, not to mention the
"reversed" form, which is equally awkward.
*I haven't graduated from high school in a long time.
*It's been a long time since I've graduated from high school.
When a definite event is involved (not a habitual situation), the pair is like this:
I ...+ed [a while / a long time / N months / ...] ago.
It's been [a while / a long time / N months / ...] since I ...+ed.
[Here it is not a question of
not having done something for some indefinite period of time.]
I saw that movie a long time ago.
It's been a long time since I saw that movie.
[Note the definiteness of
that movie compared with the indefiniteness of
a good movie.]
Greenley won the football championship six months ago.
It's been six months since Greenley won the football championship.
My cousin Henry died four years ago.
It has been four years since my cousin Henry died.
To summarize:
... have
not done that
for a long time >> It's been a long time since ...
have done that.
... did that a long time
ago
>> It's been a long time since ...
did that.
These should suffice until all the counterexamples are found.
CJ
P.S. Yes, native speakers do use the simple past at times when they really "mean to use" the present perfect.