Release Management - I

Hi Rangers, Welcome to the month of February, time to unleash new sphere of learning. Let us start our new adventure, today we will learn about Release management from beginner to advanced level. But before starting with the release management, let us build the foundation with Application Life cycle Management.

Application Life cycle Management (ALM) -

Application life cycle management is an integrated system of people, processes, and tools that manages the life cycle of an application or software from gathering requirements to delivery of the final product.

Different Salesforce projects will have different project requirements, apps and tools but the only common thing in all of them are the steps of the ALM cycle which will remain constant throughout the development.

Figure 1: Application Lifecycle Management

Step 1: Plan Release

  • Gathering project requirements and analyzing them.
  • Creating design specifications with the development team.
  • Determining various development & testing environments.

Step 2: Develop

  • Implement the design specifications in developer org.
  • Develop on lightning platform using an appropriate combination of  (ideally it is 80% declarative tools and 20% Programmatic tools) –

o    Declarative Tools: Process Builder, Custom Object Wizard, Workflow Rules.

o    Programmatic Tools: Developer console, Source Code editor, Visual Studio Code.

Step 3: Test

  • Test the individual functionality developed in previous stage.

Step 4: Build Release

  • Combine all the functionalities created or modified during the develop stage into a single release in order to deploy the changes to productions.
  • Focus on integrated functionalities rather than contribution of individual ones.

Step 5: Test Release

  • Test the build, ready to deploy with the sample production data.
  • Perform regression testing, user acceptance testing to improve the performance.

Step 6: Release

  • Once you are done with testing and quality check, you can deploy it to the production.

Significance of  ALM: 

ALM ensures that the new functionality or customization made in the development environment are safe to deploy in the production environment and will not hinder the quality of the software. Though we may perform certain customization like creation of new Reports, Dashboard and email templates which will not alter or damage the production data but in best practices we avoid making changes directly to the production.

Release Management:

It is a framework used to monitor when and where changes are promoted from one salesforce org to another. The primary goal of RM is to ensure that the production environment is protected, and the correct components are delivered as per the releases.

It is the responsibility of the Project Manager to set up a release schedule and define criteria for releases of different sizes with the entire team.

Hope you enjoyed learning.

Thank You !! Happy Trailblazing!!!!!


Popular posts from this blog

Apex Specialist - Challenge 6

Creating Fields in bulk