Along with the "big" city services like education and fire, there are a few other things to check and to provide if you want your buildings to upgrade.
The first that I would suggest you look at is public transit. Any kind will do, buses, subways, trains, whatever.
The next thing to look at is your data overlays. What's the pollution like in the area? Noise? Upgrading the nearby streets to be tree-lined improves noise pollution and can make people happy.
As a general principle, anything that makes those little smiley faces pop up over the buildings is increasing their happiness and moving them towards upgrading.
Note that these work for any kind of building that can upgrade, including industry. Non-office industry once upgraded produces less pollution and employs higher educated citizens. Just noting this because its something that I see a lot of people neglect (Parks? In my industrial area?!).