Following are some of the expert's information can be used when you try to use managed and unmanaged solutions.
reasons why I very much prefer to use managed solutions in all environments that are not development environments:
- Solutions can be installed into multiple layers.
- You can build solutions on top of other solutions (solution-level dependencies).
- Additional change management control.
- Option to turn on managed properties on solution components.
- Capability to uninstall a solution and roll-back to a previous customization state.
- Solution publisher can truly own solution components.
Extracted From - http://gonzaloruizcrm.blogspot.com.au/2012/01/managed-or-unmanaged-solutions-in-crm.html
Also how to update Managed Solutions
Create managed solution updates
There are two basic approaches to updating solutions:
- Release a new version of your managed solution
- Release an update for your managed solution
Release a new version of your managed solution
The preferred method is to release a new version of your managed solution. Using your original unmanaged source solution, you can make necessary changes and increase the version number of the solution before packaging it as a managed solution. When the organizations that use your solution install the new version, their capabilities will be upgraded to include your changes. If you want to go back to the behavior in a previous version, simply re-install the previous version. This overwrites any solution components with the definitions from the previous version but does not remove solution components added in the newer version. Those newer solution components remain in the system but have no effect because the older solution component definitions will not use them.
During the installation of a previous version of a solution Microsoft Dynamics CRM will confirm that the person installing the previous version wants to proceed.
Release an update for your managed solution
When only a small subset of solution components urgently requires a change you can release an update to address the issue. To release an update, create a new unmanaged solution and add any components from the original unmanaged source solution that you want to update. You must associate the new unmanaged solution with the same publisher record as was used for the original solution. After you finish with your changes, package the new solution as a managed solution.
When the update solution is installed in an organization where the original solution was installed the changes included in the update will be applied to the organization. If an organization needs to ‘roll back’ to the original version they can simply uninstall the update.
Any customizations applied to the solution components in the update will be overridden. When you uninstall the update they will return.