From my experience, Visio Technical is the best package for this purpose. It is easy to use and its has a good data band of symbols. And yet, its is powerful enough to be "expandable" so that can include calculations within it, call VB or C from it or have it tie into other Microsft...