The first step in creating a successful software installation is to plan it out.
In fact, planning your installation is one of the most important steps in designing a professional installer. Knowing what your installer needs to accomplish in advance will give you a clear goal to aim for and a solid plan to follow.
There are several things you need to know in order to create an installer:
What files do you need to distribute?
Where do your files need to be installed?
What system changes need to be made?
What information do you need from the user?