Source Control & SDLC
Source Control
My Applications are captured in the background in Github source control as a private repository. This ensures your development efforts are backed up and can be restored in the desired version in backup restorations, clones, and code promotion to higher environments.
Global Scope vs Application Scope
Update Sets are auto-generated for My Application scopes and also Global-scope. Global Update Sets capture any changes that are not specific to an Application-scope (such as Roles & DocPerms).
However, these Update Items can be transferred from the Global-scope Update Set to an Application-scope Update Set, so it is captured in Source Control. To do so, navigate to the current Global Update Set and select the applicable Update Items in the list and click on the Transfer button.
Note: Not all Global Update Items are transferrable and this is still a work in progress. Thank you for your patience as we continue to improve upon this feature. Feel free to contact our Support team for any assistance.
SDLC Overview
Listed below is a general overview and outline of example instances and their respective scope in terms of a Software Development Life Cycle.
Note: There may be overlaps depending on your team's preferred processes. However, the below should serve as a good reference. Also, depending on your platform setup, not all instances may be available to you.
Sandbox (SBX), Development (DEV)
Development: develop changes captured in update sets
Testing: unit test/QA your development in the lower instance prior to promoting the changes
Deployment: commit Update Sets with respective Update Items and Deploy My Application with new version number
Testing (TST), Staging (STG)
Deployment: update the My Application to the desired version by deploying it after it was deployed in the lower instance
Testing: QA/User Acceptance Test the promoted code to validate it produces the desired effect when deployed
Production (PRD)
Deployment: similar to above, update the My Application to the desired version by deploying it
Maintenance: provide support and further enhancements depending on user feedback