Such behavior is specific for WSP deployment, when SharePoint recycles application pools during deployment. In such situation, deployment of 10-15 packages is a time consuming process. This behavior can be improved by adding "ResetWebServer="FALSE" to the solution manifest, preventing IIS pool recycling. However, it won't work for upgrade scenarios (http://msdn.microsoft.com/en-us/library/aa544500.aspx).
To improve the deployment time of multiple WSP packages you could use "container" approach, packaging all WSPs in one single package to deploy it once, decreasing deployment time significantly.
For example, create a solution with 5 projects - three webpart projects, one list definition and one workflow project. Then, create empty SharePoint project (named "MyProduct") that will serve as "container". Navigated to Package.package, and add there the solution items we created before :
In result, only one WSP will be generated will all projects inside.