Release management process of Salesforce is not an isolated process instead are intertwined with other business processes like change management, business objective, governance and other aspects of the organization that are related to the business. Release management process can be jointly managed by COE or Center of Excellence and steering committee of the organization just to ensure its success and direction.
Through an organized release management process, organizations try to get a reliable, repeatable and resource independent process that can easily attain their business goals by resource utilization and increasing business value. For any business organization, it is imperative to have an optimized application and delivery value chain so that they can deliver the business values in a hassle-free manner without any bottlenecks.
Change or release management is not a single process instead many departments of the company are associated with this process. Even many times, this has been noticed that every department of the Company has a different process of release management. All release processes must be streamlined and standardized for every user as they are using the same foundation, resource, and platform to execute their business processes. If they won’t be streamlined then governance failure can occur.
While in order to have a good governance, the release processes of every department must be visible and consistent for which each action of the entire team must be supportive and streamlined.
Different sets of customer’s requirements are taken care by multiple systems, while there must be a centralized system to manage them. If they will be managed at a single place then other team members will have better visibility and will be able to track the changes easily. All requests for the changes must also be prioritized. Moreover, there must be a steering team to review the requirements periodically with the help of which the changes in the system can also be prioritized.
If we talk about implementation phase then entire IT and business team must remain in touch and have proper communication. The entire team of business, Release Management, IT and QA must remain in touch during full release cycles. There must be a proper ‘Release Calendar’ publishing activity by IT department of the sprint cycles. It must have the dates for QA round, unit testing, final deployment, and the production system cycles.
Developer sandbox can be changed by the developers and they can also demonstrate or show any changes as well. On completion of features, they can be moved to QA environment as well. QA can test the features as per the required documentation after which they can be moved to the unit testing department and in this way, the process of change management starts. Moreover, all the components are reviewed together like test cases, requirement documents, production code and other for the complete process.
Salesforce keeps on upgrading its code so sometimes it can be difficult for the organizations to release their own code with Salesforce and they have following questions to answer:
Here many releases are tested by the change in sandboxes. The main factor here is that the gap between the dates of Salesforce releases and your software must not be huge. Organizations must also test and track their changes in advance.
The release should be broken into multiple categories during planning phases like trust, enhancements, fixes, and projects etc. and for these categories, separate teams are there. Here fixes are controlled by the production team while enhancements are done by the production support team or project teams and it also depends on the changes required for the code line. A project team is typically broken down into the following structure:
The business self-service team is mainly responsible for the changes of light configuration, which includes to create and manage the users, data, territories, and page layouts along with assigning layouts to the different users. Moreover, its management depends on the permission given to each and every team member and its customers.
This team comprises of the users that are responsible to manage the early cycle, quality team, change management process, software quality team and RFP team.
Enhancement teams are basically responsible for managing the changes in smaller projects like to make the changes to triggers, visual pages, or to make any small changes to the existing integration. The changes done by the enhancement team do not affect other team members.
Project teams are usually responsible for complex and big changes. The projects which have multiple independencies across the rest of ecosystems like backed ERP systems or any dependent system changes are managed by these teams.
This is an important factor for release management and organizations having multiple sandboxes that can be of multiple types. Quality of software can be managed by managing these sandboxes. There are even detailed articles and processes to manage the sandboxes.
For the code artifacts, version control provides a source of truth. Software quality can also be controlled by the version control. Through proper version control, multiple developers can manage their codes and avoid the conflicts. Through this same file can be changed by multiple developers at the same time. Accountability can also be provided by the developers through version control.
A number of factors affect the complete change and release management process like team size, budget, and complexity of the organizational processes. The three methods followed by the organizations to manage their releases are:
Smaller organizations usually follow no release management approach. In no release management approach, the steps of unit testing and QA are skipped and the application is simply deployed between production and developer’s sandboxes. No release management can keep the deploying cost minimum.
Integration testing and source control management can be used in basic release management approach. As enough structure can be provided, so code duplicity is avoided in this method. Teams can review and test the products as well.
In large organizations that have multiple teams integrated approach is used. Here various teams can track the changes and even merge them as well. In this way, they can also ensure release success. Current release may be provided by the teams at any time.
In this article, we have seen the aspects that are associated with Salesforce or software release management. The factors covered in this article like sandbox management, team management, release cycles are the imperative factors. Organizations can easily control and manage the software or application release by alienating their release with Salesforce as well.
Stop, read and acquire deep insights into complex issues
Write a Comment