For developers, it’s easy to think of the installation process as a relatively minor part of the overall task of developing your app, but that would be wrong. Put yourself in the user’s shoes and think of software that you’ve installed yourself; if the process goes wrong, you assume (wrongly or rightly) that the whole package can’t be trusted. After all, installation is the first encounter between your users and your software, and you don’t get a second chance to create a good first impression! The installation has to work efficiently and smoothly, and it has to be easy. What you need is an installer that allows the user to sit back and watch things happen successfully. You also need an installer that is easy for you to learn. This may seem obvious, but some of the options out there require you to learn a complete scripting language. This adds to your workload, and as you won’t have new versions of your software very often, you’ll undoubtedly have to re-learn the intricacies every time you create a new version.
For administrators, the bad old days are long gone when you’d buy software and then need to put in hours of work to make it work, in the process gaining a detailed knowledge of what prerequisites should have been in place before you started. You have the right to expect software to behave nicely while being installed, but that still doesn’t do away with all the effort required. If you’re planning on installing software on multiple machines, particularly across different software environments and configurations, then you can save a lot of hard work and blasphemous outbursts by using a suitable software deployment package.
Read more about software deployment.