The basic elements we just mentioned are important and go a long way to closing the skills gap and promoting wider adoption. The next step is to improve the integration of an open source project into the users’ environment. This is a more advanced level of productization that can take place only after the core development team understands how a project is being used.
Better integration is the key to completing the goals of productization so that the installed software does everything the user wants it to do. For this discussion,
integration means the software works with all the other parts of an IT infrastructure when it is installed. Basic productization involves making the process of understanding, installing, and configuring the software as easy as possible.
For example, Apache, MySQL, and PHP are used in thousands of applications all over the Internet, and most of the time they work together seamlessly. Sometimes, however, when one of the three is upgraded to a newer version, problems arise that are hard to track down. The more such problems are anticipated, planned for, and tested for, the better integrated a set of products will be.
Proper integration is not accomplished on a whiteboard. Generally, a fully productized, integrated product is the result of gathering feedback through a series of releases. Careful study of users’ experiences with the software generates requirements that, if properly implemented, make using the software a pleasant experience.