Yes, the following code line:
mOutputCacheDependencies.AddDependencyOnPages<Article>();
will invalidate the cache when any of the articles will change. It makes sense for Index() action (as there are many displayed at the same time). But for the Show(..) action I'd have replaced it with specific article dependency by ID.