recently I found an interesting approach to merge modules:
A software vendor (I am not telling the name) does not offer ready-to-use merge modules for his redistributables, but offers developers that have fully installed the vendor's software to create the packages (MSIs or merge modules) they need using a "Deployment Wizard".
This wizard (it is actually implemented in InstallScript, but I do not think that is an issue here) asks the developer which redistributables to include and then creates a package. The resources seem to have been organized into components according to best practices, so it looks feasible at a first glance.
Then I wanted to change my selections and created another package. To my astonishment, all the component GUIDs had changed!
This means that an end-user who has installed several applications using this software and deinstalls one of them will break the others - a risk that should have been avoided by using merge modules.
I think the Deployment Wizard should have assigned a fixed GUID to each component to avoid this behaviour.
Edited by Matthias1967, 29 October 2009 - 16:52.