As long as the applications support network-attached storage (NAS), there is no real reason to avoid NAS. Exchange is one example of an application that does not support NAS, and most high-end database applications use a storage-area network (SAN). Remember that NAS works at a higher layer and offers more intelligence, but it introduces a bit more latency that limits performance. SAN platforms also have the benefit of incumbency -- it's already deployed in the organization and supported with experience and expertise.
I believe NAS is great for the world of persistent data, and SAN is great for the blazing fast transactional world, so I like a combination of the two. But it's all based around best practices. I know companies that have an all NAS environment, though they might throw in a little iSCSI to support email. Those users employ NAS with high-end, mission-critical databases, and it's working fine. So there is no absolute method or approach -- it's all about what you want to do, but I like the idea of merging these technologies together so that multiple protocols can be served up for a single storage system.
Check out the entire NAS FAQ guide.