<p>When the SharePoint application you are working on has unsatisfactory response times how do you pinpoint the causes and in which sequence? So far I have not yet found any open source or commercial profiling tools specific for the SharePoint segment, so any pointer to tools or best practices will be appreciated.</p>

<p>PS. I am aware of the profiling options for the web parts but I am looking for something that covers the entire application.</p>

My advice is to look at the following:
Data Layer
Check and see if your database is chugging along, and what requests are taking a lot of time.  90% of everything you see in SharePoint is stored in the database somewhere.  Run SQL Profiler for a few hours and examine your logs.
Site Collections
I have found in SharePoint that the deeper you arrange your sites and site collections, the further that performance degrades.  This is purely anecdotal, so take it with a grain of salt.
Other than that, I don't know of many SharePoint profiling tools.  My experience with SharePoint has pushed my away from heavy customization jobs, and towards using more functionality OOTB.  I rarely recommend using SharePoint as an application platform.
Good Luck!