When I think about software analysis the first thing which comes to mind is SSADM and the UML.
But, what I want is a high level view of the system before I commit to a programming paradigm.
Where am I going wrong?
How do I approach a problem in a high level and generic way before I commit to a paradigm?
What are the diagrams/tools available to support me?
Some examples of tools that appear to be what I'm after are...
A block diagram - http://en.wikipedia.org/wiki/Block_diagram
A data flow diagram - http://en.wikipedia.org/wiki/Data_flow_diagram