Both expressions are correct and the difference in meaning between them is minimal. They both inform us when the action, to work, began and that it is ongoing.
Work is a verb which we can use in the present and present progressive tense.
- "She works in this company" describes a habitual action.
- "She is working at the moment" describes an action in progress but its duration is temporary.
Thus the present perfect progressive can be seen as related to the progressive and present aspect.
She has been working here since 1995
This sentence is acceptable but because the duration of the action is quite extensive, (18 years), people tend not to consider an action lasting that long to be temporary in nature.
Moreover, this response could answer one of many questions but without any specific context I can only make suppositions. My view is that the simplest, most logical and common question asked would be:
How long has she worked there?
It is important to note that the action is NOT finished. The person is still working for the same company. If not, the question ought to be like this:
- How long did she work there?
the answer would look something like this,
- She worked here for 18 years.
The action is completed and we naturally give the total number of years she worked for the company i.e. "for 18 years".
Someone who still works in the same company for 18 years (and therefore, has NOT been fired from her job) is likely to continue working there tomorrow, next month, and the year after etc. The implication being she has a steady, regular job. Therefore, the longer and the more permanent the action is, the more speakers will prefer the present perfect usage.
She has worked here since 1995.
Addendum
In the case of someone travelling to a place, normally we imagine someone either taking a plane, or hiking to a far-away land. In the OP's example São Paulo is the man's destination.
He has been traveling to São Paulo since the beginning of the year.
The "to" implies that the man has not yet arrived at São Paulo. The act of travelling to a place is still ongoing. Perhaps he is hitch-hiking and prefers to stop at different locations along the way. Although grammatically correct, it sounds a bit odd; normally speakers would say of people traveling in their sabbatical leave:
He's still traveling, and visiting different places before he arrives
at São Paulo.
The use of "ing" adds an element of dynamism to the sentence and implies the situation is evolving and progressing. If the intention was to say that the man is already in São Paulo, then both perfect aspects are acceptable and correct.
He has been traveling in/around São Paulo since the beginning of the year
and
He has traveled in/around São Paulo since the beginning of the year.
In this case I would prefer the ing structure (present progressive) because presumably the man at some point will return home, wherever that may be. Hence, the focus is on the temporality and dynamic aspect of the action.
A is for aspect http://youtu.be/NfyZOr4Gg64?t=1m16s
Born in New Zealand, Scott Thornbury, is a well-known academic in the field of English language teaching and author of many books on teacher training. Thornbury discusses the uses of present aspect in this video.
Best Answer
Expanding on the correct answers in comments:
Summer has been over - This sounds rather incomplete although grammatical. Most native speakers would reserve this structure for use with a time frame. For example, Summer has been over for two weeks.
If you wish signal the end of summer, you have a few choices:
This gives a sense that summer has ended within recent memory. But, you can correctly say this in Winter, it is still a fact that Summer is over during the Winter.
This is perfectly acceptable as a stand alone. But, unless it is a bit of exposition setting the scene of a book, most would attach a time frame to this. Summer ended 4 weeks ago.
This gives a sense that summer has just concluded recently. Compare this to the example you provided of Summer has been over which implies that it ended at some point in the past.
Again, using the verb be here makes a native speaker listen for the completion of the sentence (usually with a time frame).
It's happening as we speak.
Summer was ending while something else was going on. Again, like the past tense, most uses for this would be in introducing exposition. (The PPCont sounds awkward.)
This is another that leaves a native speaker listening for the ending of the sentence. This has the limited use of a sentence like: Summer has been ending with higher temperatures every year.
The tl;dr version: Using the verb to end will be easier in most cases than to be + over.