# Org and package development models with scratch orgs

*Platform Development Lifecycle and Deployment Architect Study Guide · Building · Last updated October 26, 2026 · https://www.certifyforce.com/study-guide/platform-development-lifecycle-and-deployment-architect/building/org-and-package-development-models-with-scratch-orgs*

How to choose the org or package development model per project, when scratch orgs beat sandboxes as development environments, and how definition files, org shape, snapshots, durations and source tracking shape a Salesforce DX workflow.

- Certification: Salesforce Platform Development Lifecycle and Deployment Architect
- Exam section: Building
- Study guide: https://www.certifyforce.com/study-guide/platform-development-lifecycle-and-deployment-architect

**Official exam objective:**

> Given a customer scenario, describe the appropriate development model (org-based vs package-based) and development environment (scratch org vs sandboxes).

## What the exam expects

- Choose the org or package development model for a project from the complexity of the change, the team's size and skill, and the metadata involved, and blend them where projects differ.
- Plan a move to packages, including shared base packages and org-dependent unlocked packages.
- Choose between scratch orgs and sandboxes as development and test environments.
- Configure scratch orgs with a Dev Hub, a definition file, an org shape or a snapshot, a duration and a release.
- Know where source tracking works, how to enable it in sandboxes, and when to switch it off.

Key terms: **org development model** (changes released as one org-wide deployment from a manifest), **package development model** (versioned packages released independently, with version control as the source of truth), **Dev Hub** (the org that creates and manages scratch orgs), **org shape** (a captured edition, features, settings, limits and licenses), **source tracking** (keeping local source and org metadata changes in sync).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Model choice factors | Complexity of change; team size and skill; metadata worked on | [Salesforce Development Models](https://developer.salesforce.com/docs/platform/code-builder/guide/codebuilder-dev-models.html) |
| Shared components | One base package that others reference; one package per component | [Guide to Transitioning to Modular Package Development](https://trailhead.salesforce.com/content/learn/modules/sfdx_dev_model/sfdx_dev_model_evolve_to_dx) |
| Scratch org duration | 1-30 days, default 7; can't be restored after expiry | [Scratch Orgs](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_scratch_orgs.htm) |
| Org shape excludes | Metadata types and data | [Create a Scratch Org Based on an Org Shape](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_shape_intro.htm) |
| Snapshot expiry | 90 days; same Dev Hub; static | [Scratch Org Snapshots](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_snapshots_intro.htm) |
| Sandbox source tracking | Developer and Developer Pro only, not Partial Copy, Full or Developer Edition; existing ones need a refresh or a per-sandbox setting | [Enable Source Tracking in Sandboxes](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_setup_enable_source_tracking_sandboxes.htm) |
| Release choice | `--release preview` or `previous` per scratch org | [Create Scratch Orgs](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_scratch_orgs_create.htm) |

## Check yourself

- Why does a scratch org deployment fail when the project references fields that exist only in production?
- When should a CI job create scratch orgs with `--no-track-source`?
- When does an existing Developer Pro sandbox start tracking source after the production setting is enabled?

## Sources

- [Salesforce Development Models](https://developer.salesforce.com/docs/platform/code-builder/guide/codebuilder-dev-models.html)
- [Enhance Your Development Skills with Package Management](https://trailhead.salesforce.com/content/learn/modules/sfdx_dev_model/sfdx_dev_model_neworganization)
- [Guide to Transitioning to Modular Package Development](https://trailhead.salesforce.com/content/learn/modules/sfdx_dev_model/sfdx_dev_model_evolve_to_dx)
- [Scratch Orgs](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_scratch_orgs.htm)
- [Create Scratch Orgs](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_scratch_orgs_create.htm)
- [Supported Scratch Org Editions and Allocations](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_scratch_orgs_editions_and_allocations.htm)
- [Create a Scratch Org Based on an Org Shape](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_shape_intro.htm)
- [Scratch Org Snapshots](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_snapshots_intro.htm)
- [Enable Source Tracking in Sandboxes](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_setup_enable_source_tracking_sandboxes.htm)
- [Get Started with Developer Environments](https://trailhead.salesforce.com/content/learn/modules/environments-for-developers/explore-available-developer-environments)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 11 linked practice questions, and unlimited timed mock exams are included with the Platform Development Lifecycle and Deployment Architect pack (USD $19): https://www.certifyforce.com/practice-exams
