Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Due to the complex nature of overlap and conflict between items of development within a typical Salesforce implementation, there are significant challenges with managing version control of deployed components. The purpose of this document is to outline our agreed strategy for management of sandbox instances and our deployment cycle from development, through client testing and finally, production releases.

...

Jira items can be categorised into various issue types for ease of reporting, filtering, assignment and management of workflows. The issue types included in our Jira workflows are defined below;

  • Epics major development streams that can encompass various components and elements and can be shared across projects and boards

    • Can contain many stories, tasks and sub-tasks

  • Bugs are errors, faults or defects in components where expected behaviour is not observed

    • This issue type is automatically moved to the Selected for Development status and prioritised (according to SLA)

  • Stories issue types are most often utilised for user stories provided by clients or gleaned from requirements gathering workshops

    • Used to document requirements or requests from clients

    • Can contain many tasks and sub-tasks

    • Not usually assigned to developers directly

  • Tasks and sub-tasks used for technical definitions of development work, usually created, written and managed by the consultancy and technical teams

    • Usually contain technical specifications translated from requirements

    • Used for development resource planning and estimates

...

Scheduling for deployments into the client’s live production environment will be dependant dependent on whether it is project-related development or Journey development.

...

  • For significant deployments, it is necessary to have a Rollback procedure in place in the instance of unanticipated bugs and issues post-production deployment.

  • In this instance, a time-sensitive decision has to be made as sometimes rollbacks are not necessary and can end up consuming more time. Typically, there are 2 options:

    • Rollback: Redeploying a previous release in a specific environment to return to a known good state.

    • Redeployment: Redeploying the same release with “Hot Fix’s” to fix the bug/issue

  • For significant deployments, Clicksets (links to the set of components deployed) will be provided in the Jira ticket, to help the developer and consultant identify the more time-efficient solution.

  • To ensure the highest chance of a successful rollback being possible, a staging production environment (StageProd) should be regularly refreshed to ensure we have access to the most recent working version of the metadata.

    • To achieve this we can run our refresh procedure in StageProd before making significant deployments.

Info

Rollbacks are not always possible with in Salesforce without sufficiently backed up metadata. There are third party apps that can provide assistance with this service such as Ownbackup