Below are some of the best practices highlighted in the Webinar for developing software installations in an Agile environment:
- Scope out installation requirements first – Make sure you answer questions like what kind of systems are you installing on, what are the installation prerequisites, are there any support files needed, or are any configurations assumed on the target system to do an installation properly. You need to make sure your installer covers all of these issues before you begin developing them.
- Collaborate during installation development – Installation development today is becoming more of a team sport where all developers can participate. There isn’t as much of a need for specialist in Agile development. You may have people that are more experienced in certain areas than others, of course, but in Agile everybody rolls up their sleeves and implements features. It also means all developers often participate in developing parts of the installer.
- Be flexible with installation requirements – Be prepared to have your software installed in a variety of different environments and operating systems. They may run in virtual machines, they may be delivered on different form factors (like smartphones, tablet computers, desktops, and servers), they may be on 64-bit machines. Don’t assume you understand all these requirements upfront, especially if your application is a success, because you may have to install in a different environment down the road.
- Leverage automation – Increase the frequency of software delivery by shortening lines of communication between development team members. Take repetitive processes, such as testing and development, and leverage automation. This will accelerate installation development and let you respond more quickly to installation requirement changes as they occur.
- Integrate continuously – Agile best practices call for development teams to implement continuous integration of installation builds along with product builds. For example, if you use Visual Studio, Microsoft Team Foundation Server (TFS), and InstallShield, you can link all files and binaries in your installation projects to your Visual Studio projects and TFS version control to more effectively manage changes. You can also use Team Explorer to schedule and queue builds for InstallShield projects together with Visual Studio solution builds.
If you wish to learn more about building software installations based on Agile best practices, you can watch this on-demand Webinar "Expanding Agile Practices to Software Installation Development" by visiting the InstallShield.com web site.
So is your development team following Agile best practices? If so, how has it impacted the way you build software installations?