Heidenheim is not a weak team, they are strong especially when playing at home and the draw against Dortmund is quite natural because on the other hand Dortmund's strength this season is not that strong and in my opinion it is not even stronger than last season.
If compared to Bayern Munich, Leverkusen, Leipzig, Stuttgart, the Dortmund team is not stronger, so with the fierce competition this season, I quite doubt that Dortmund can finish in the top 4 of the final standings.
Heidenheim isn't a weak team but they can't be compared with the kind of strength that's seen with the Dortmund, even in the match yesterday Dortmund had a better possession and had more attempts and heidenheim was playing from, they only had a better defensive form which helped them prevented every goal that would have been conceded, I didn't expect Dortmund to loose or draw that game yesterday considering they haven't been performing so we'll recently and they needed this win to give them a good push into the top four firmly, tho the are in the top four currently but not with a firm stand as they can be easily displaced with their current points.
A goalless draw was below expectations as a goal or two would have made that game come alive and have the feel that a fairly strong team was been contended with. It rather felt like a match between two average teams and they both had to share points at the end of the day.