hybris Commerce is always changing and improving to stay ahead of the competition. The changes/improvements typically contain functional enhancements, tackle platform defects, architectural modifications, and security updates.
There are three types of upgrades to consider on a software platform:
Patch, Minor and Major. Patch is generally released by the platform to correct a defect introduced with a previous release. Minor release is done for functional enhancements and limited architectural modifications. Major releases as the name suggests generally handles a significant amount of functional enhancement and major architectural modifications.
There is always a dilemma on what is the right approach to upgrade and when to perform the hybris upgrade. This is not an easy answer and a lot of weight has to be given to the following questions to start with:
When we upgrade a system that has been using custom extensions derived from templates (see Cloned Extension Xa and Cloned Extension Xb). They are moved along to the new system and should continue to work as long as they just depend regular hybris extensions, as those are guaranteed to stay compatible.
The number of customization on the core platform will also impact the complexity of the upgrade.
hybris does not recommend template extensions from a new hybris release because they don't guarantee their compatibility with their counterpart extensions from previous releases. Therefore, any new template extensions need to be reviewed in light with the existing features and the compatibility. It can be considered as a project to utilize these template extensions.
However, template extensions may serve as:
There are two representations of the Type System of the hybris Suite.
There is a file-based representation that is spread across in the various items.xml files of the hybris Commerce Suite extensions. This representation is not actively used by the hybris Commerce Suite at runtime. You can modify this representation at any time by modifying the items.xml file of an extension. However, modifications of the items.xml files only take effect after an initialization or an update of the hybris Commerce Suite.
hybris upgrades are important but in some cases very complex. It should be treated as a project where all the parties’ i.e. business, technical team, operations and QA team coordinate to make the project a success. It should be treated as a foundation release and implementing new features as part of the upgrade project should be avoided. It is very important to reduce the number of moving parts on the platform during the upgrade that can impact a successful upgrade. This is very important for major upgrades. It is suggested to have frequent upgrades and not leave a big gap between upgrades because a long gap between upgrades will make it more complex to manage. A good interval for upgrades is probably between 12 – 18 months considering the points mentioned above.