Last Updated On : 11-Feb-2026


Salesforce Certified Platform Development Lifecycle and Deployment Architect Practice Test

Prepare with our free Salesforce Certified Platform Development Lifecycle and Deployment Architect sample questions and pass with confidence. Our Salesforce-Platform-Development-Lifecycle-and-Deployment-Architect practice test is designed to help you succeed on exam day.

226 Questions
Salesforce 2026

Universal Containers’ org is complex but well-organized in unlocked packages with their dependencies. The development team was asked for a new feature, and the package that will be changed has already been identified. Which environment should be used for this development?

A. A Developer Pro sandbox with all packages installed.

B. A scratch org with all installed packages

C. A Developer Pro sandbox with the package code that will be changed and its dependencies installed.

D. A scratch org with the package code that will be changed and its dependencies

D.   A scratch org with the package code that will be changed and its dependencies

Explanation:

For unlocked package–based development, Salesforce recommends using scratch orgs as the primary development environment:

Scratch orgs are:
Source-driven and fully disposable.
Designed to represent a specific package context (only the package + its dependencies).
Ideal for working on independent features in modular architectures.

In this scenario:
The org is already well-organized in unlocked packages.
The package that will be changed is known.

The correct approach is to:
Create a scratch org.
Install only:
The package being developed (in a development version).
Its dependent packages.
Develop and test the feature inside this minimal, focused environment.

This is exactly what option D describes.

Why the other options are not ideal

A. Developer Pro sandbox with all packages installed
This mirrors a large part of production and becomes heavy, slow, and less isolated.
It goes against the modular, package-centric philosophy of unlocked packages and Salesforce DX.

B. Scratch org with all installed packages
Technically possible, but unnecessary and not aligned with package boundary isolation.
Having all packages installed increases noise and risk of coupling changes across packages.

C. Developer Pro sandbox with the package code that will be changed and its dependencies installed
Better than A in terms of scope, but:

Sandboxes are not ephemeral and are harder to keep in sync.
They don't support the same scratch-org–driven, CI-friendly, modern DX workflow.

Scratch orgs are the preferred environment for unlocked package development.

References
You can see this approach reflected in Salesforce’s official guidance on Salesforce DX and unlocked packages:

Salesforce DX and scratch orgs are designed for package-based development, testing, and CI.
Unlocked packages are meant to be developed in modular, isolated environments where each package and its dependencies are managed independently (see “Develop Apps with Salesforce DX” and “Unlocked Packages Overview” in Salesforce Help/Docs).

So, for a complex org organized with unlocked packages, the best practice is:
Use a scratch org containing only the package being changed and its dependencies → D.

Universal Containers uses multiple Salesforce orgs for its different lines of business (LOBs). In a recent analysis, the architect found that UC could have a more complete view of its customers by gathering customer data from different orgs. What two options can an architect recommend to accomplish the customer 360-degree view? (Choose 2 answers)

A. Implement a Complete Graph multi-org strategy by allowing each org to connect directly to every other, reading and writing customer data from the orgs where it has been originally created.

B. Migrate from multi-org to single-org strategy, consolidating customer data in the process.

C. Implement a Single Package multi-org strategy by developing and deploying to all orgs a managed package which reads and consolidates customer 360-degree view from the different orgs.

D. Implement a Hub-and-Spoke multi-org strategy by consolidating customer data In a single org, which will be the master of customer data, and using integration strategies to let the LOBs orgs read and write from it.

B.   Migrate from multi-org to single-org strategy, consolidating customer data in the process.
D.   Implement a Hub-and-Spoke multi-org strategy by consolidating customer data In a single org, which will be the master of customer data, and using integration strategies to let the LOBs orgs read and write from it.

Explanation:

Imagine UC as a company with multiple Salesforce orgs, each serving a different line of business. While this setup meets departmental needs, it fragments customer data. A customer interacting with multiple LOBs may appear as separate records in different orgs, preventing UC from seeing the full picture. The architect’s role is to recommend strategies that consolidate or integrate data for a 360‑degree customer view.

Why B is correct: Migrating to a single org consolidates all customer data into one place. This eliminates duplication, simplifies governance, and provides a unified view. However, this approach requires significant effort—data migration, process harmonization, and regulatory compliance. It is often chosen when consolidation is feasible and aligns with business strategy.

Why D is correct: The hub‑and‑spoke model is a practical alternative when consolidation is not possible. In this model, a central “hub” org acts as the master repository of customer data. Each LOB org (the spokes) integrates with the hub, reading and writing customer data as needed. This ensures that UC maintains a single source of truth while allowing LOBs to retain their autonomy.

Why not A? The complete graph strategy, where every org connects directly to every other, is complex, error‑prone, and difficult to scale. It creates a web of integrations that is hard to govern.
Why not C? A single package strategy does not solve the data fragmentation problem. Packages distribute functionality, not consolidate customer records.

Thus, the architect should recommend either single‑org consolidation or a hub‑and‑spoke integration model, depending on UC’s regulatory and operational constraints.

References:
Salesforce Architect Guide: Multi‑Org Strategies
Trailhead: Customer 360 Concepts

Universal Containers (UC) is developing a custom Force.com application. The following tools are used for development, the Force.com IDE for developing apps. Git as a source control system and a Git repository, and the Force.com Migration Tool for updating sandboxes from source control. UC's current branching strategy calls for two main branches: 1) Master 2) Develop Three supporting branches: 1) Feature 2) Release 3) Hotflix Consider that the branching strategy is in parallel as follows Feature |Develop |Release |Hotfix |Master What is the recommended practice strategy that Developers should adopt for Development?

A. Developers work off of the Feature branch, which is pulled from the Master branch and the Feature branch is then merged with the Develop branch.

B. Developers work off of the Feature branch, which is pulled from the Develop branch, and the Feature branch is then merged with the Develop branch.

C. Developers work off of the Feature branch, which is pulled from the Release branch, and the Feature branch is then merged with the Develop branch.

D. Developers work off of the Feature branch, which is pulled from the Develop branch, and the Feature branch is then merged with the Hotfix branch.

B.   Developers work off of the Feature branch, which is pulled from the Develop branch, and the Feature branch is then merged with the Develop branch.

Explanation:

Branching strategies in Git are critical for managing parallel development. UC’s setup mirrors the Git Flow model, where master represents production, develop represents ongoing development, and feature, release, and hotfix branches support specific workflows.

Why B is correct: Developers should create feature branches from develop. This ensures that new features are built on the latest integrated codebase. Once the feature is complete and tested, it is merged back into develop. This keeps develop as the integration branch where all features converge before release.

Why not A? Pulling features from master is incorrect because master should only contain production‑ready code. Developing from master risks introducing instability.
Why not C? Release branches are created from develop when preparing for deployment. Features should not originate from release branches, as they are meant for stabilization, not new development.
Why not D? Hotfix branches are reserved for urgent production fixes. Merging features into hotfix would mix emergency fixes with ongoing development, which is a governance anti‑pattern.

Thus, the recommended practice is to branch features from develop and merge them back into develop, ensuring clean integration and alignment with Git Flow principles.

References:
Git Flow Documentation: Feature Branch Workflow
Salesforce Architect Guide: Source Control Best Practices

Sales and Service products will be created by two teams that will use second-generation managed package(s). The Sales team will use a specific function of the Service product, but the architect wants to ensure that this team will only use the functions exposed by the Service team. No other team will use these same functions. What should an architect recommend?

A. Create two second generation managed packages with the same namespace and set the methods that should be shared with the @namespaceAccessible annotation.

B. Create two managed packages with Sales and service namespaces. Set the methods to be shared with the ©salesAccessible annotation

C. Create a managed package with both products and create a code review process with an approver from each team.

D. Create two managed packages. Create an authentication function in the Service package that will return a token if a Sales user is authorized to call the exposed function. Validate the token in the Service functions.

A.   Create two second generation managed packages with the same namespace and set the methods that should be shared with the @namespaceAccessible annotation.

Explanation:

Second‑generation managed packages (2GP) introduce modern packaging capabilities, including namespace management and fine‑grained access control. In this scenario, UC has two separate teams building Sales and Service products, but the Sales team requires access to specific Service functions. The architect’s challenge is to ensure controlled exposure of methods without opening them to all orgs or teams.

Why A is correct:
By creating two packages under the same namespace, the Service team can annotate methods with @namespaceAccessible. This annotation allows other packages in the same namespace (here, the Sales package) to call those methods, while keeping them hidden from external consumers. This ensures that only the intended team (Sales) can use the exposed functions, maintaining encapsulation and governance.

Why not B? There is no @salesAccessible annotation in Salesforce. This option is a distractor.
Why not C? Putting both products in one package reduces modularity and makes governance harder. Code reviews alone cannot enforce technical restrictions.
Why not D? Creating authentication tokens between packages is unnecessarily complex. Managed packages already provide namespace‑based access control, so token validation adds overhead without solving the problem elegantly.

Thus, the architect should recommend two 2GP packages with the same namespace and @namespaceAccessible annotation to enforce controlled sharing.

References:
Salesforce Developer Guide: Second‑Generation Managed Packages
Salesforce Apex Docs: @namespaceAccessible Annotation

Universal Containers (UC) currently uses the org development model and utilizes the Salesforce CLI as the deployment tool. After the feature release artifact (a .zip file) has been tested in a lower sandbox, it is being deployed to the full sandbox for performance testing and production deployment readiness check-Since quick deployment options are not being used, what is the correct way to deploy the artifact to the full sandbox?

A. Authorize to the Full sandbox org; Validate with sfdx:source:deploy; On successful validation, deploy with sfdx:source:deploy

B. Authorize to the Fullsandbox org; Validate with sfdximdapi:deploy; On successful validation, deploy with sfdx:mdapi:deploy

C. Authorize to the Full sandbox; validate with sfdx: source: deploy; On successful validation, deploy with sfdx;mdapi;deploy

D. Authorize to the Full sandbox org; Validate with sfdx:mdapi:deploy; On successful validation, deploy with sfdx:source:deploy

B.   Authorize to the Fullsandbox org; Validate with sfdximdapi:deploy; On successful validation, deploy with sfdx:mdapi:deploy

Explanation:

The key to solving this question lies in understanding the difference between source‑driven development (Salesforce DX) and the org development model.

In the org development model, metadata is managed directly in sandboxes and then extracted into artifacts (like .zip files) using the Metadata API. These artifacts are then deployed to other orgs.

By contrast, the source‑driven model (package development) uses sfdx:source:deploy to push source code directly from a local project into an org.

Since UC is explicitly using the org development model, the deployment tool must be the Metadata API commands (sfdx:mdapi:deploy), not the source commands.

Why B is correct:
The .zip artifact is a Metadata API format.
The correct process is to authorize to the target org, run sfdx:mdapi:deploy -c (check‑only) to validate the deployment, and then run sfdx:mdapi:deploy without the check flag to perform the actual deployment.
This ensures the deployment is validated before execution, which is critical for performance testing and readiness.

Why not A? sfdx:source:deploy is used for source format projects, not .zip artifacts. Using it here would fail because UC is not using source‑driven DX.

Why not C? Mixing source:deploy for validation and mdapi:deploy for deployment is inconsistent. Validation must match the deployment method.

Why not D? Similarly, validating with mdapi:deploy but deploying with source:deploy is incorrect. The artifact is in Metadata API format, so both steps must use mdapi:deploy.

In summary, the org development model requires Metadata API deployment commands. The correct sequence is to validate with sfdx:mdapi:deploy (check‑only) and then deploy with sfdx:mdapi:deploy.

References:
Salesforce CLI Command Reference: Deploy Metadata with mdapi:deploy
Salesforce DX Guide: Org Development Model vs Source‑Driven Development

Salesforce-Platform-Development-Lifecycle-and-Deployment-Architect Exam Questions - Home
Page 2 out of 46 Pages