I would like to know how everyone else is writing their components and testing them out?

The way I am doing it seems to be taking too long, so I hope someone could maybe point something obvious that I might have overlooked or could do instead to make the whole process of building my own components more enjoyable and not such a dogged lengthy task.

This is along the lines of what I am doing with one of my current components (with the package open as the project, and the component already installed in the IDE):

1. Make changes to the component code.
2. Build with Shift+F9.
3. If adding a new published property to my component I uninstall / reinstall the component again.
4. Add a new Form.
5. Drop my recently built component on the form.
6. Check at design time to see if the properties can be correctly changed and the control is painted correctly (also see if new published properties show in Object Inspector). Also check for any errors in the component.
7. If at design time everything seems ok, I save the package and close it then create a new Application.
8. Then I add again my component to the new Form of the new Application project and run it to see how it works at run time.
9. Some further modifications to the component can be changed without opening the package again, ie if it is a paint procedure of my component I can just open the source unit of the component, change it and re run the Application to see the changes.
10. Any other modifications and I usually need to close the whole project again, and reopen the package and repeat all the steps above.

I am constantly switching between the component package and new application project to make changes, there has to be a much more efficient way of doing this and I bet there is but I cannot see it!

I will accept the answer to the person who can save me a lot of time and cut out most of the steps above if it is possible:)