Salesforce Development Lifecycle & Deployment Designer

Pataasin ang iyong marka sa homework at exams ngayon gamit ang Quizwiz!

What are some best practices for Change Processes?

--Allow no changes in production (most strict) --Modify only components in the Metadata API --Allow only one administrator to make setup changes (workable if org is small enough for just one admin to handle) --Schedule Production Changes

When should you track changes manually?

--Changes made to components not in the Metadata API—You must manually track every change to components that are not available in the Metadata API. --Changes made using the Salesforce Web user interface—Even if the components are available through the Metadata API, you should track changes made using the Web tools. Concurrent changes between the Web tools and the Metadata API often create dependencies and are a common source of deployment problems. To be on the safe side, it is better to manually track all changes made through the Web interface.

What are the 4 Sandbox Types?

--Developer - Developer sandboxes copy customization (metadata), but don't copy production data, into a separate environment for coding and testing. --Developer Pro - Developer Pro sandboxes copy customization (metadata), but don't copy production data, into a separate environment for coding and testing. Developer Pro has more storage than a Developer sandbox. It includes a number of Developer sandboxes, depending on the edition of your production organization. --Partial Copy - A Partial Copy sandbox is a Developer sandbox plus the data that you define in a sandbox template. --Full - Full sandboxes copy your entire production organization and all its data, including standard and custom object records, documents, and attachments. Use the sandbox to code and test changes, and to train your team about the changes. You can refresh a Full sandbox every 29 days.

What are some categories to use when scheduling a Development Project by judging by the number of developers?

--One—If a single developer can create, test, and deploy the functionality, you are far less likely to run into problems merging changes, or other time-consuming issues. --Small team—A small development team can partition large projects into manageable pieces, and is still capable of rapid development. Projects of this nature can be easily integrated with single-developer projects and rolled out quickly. --Large team—A full development team is necessary for large-scale development projects. Projects of this nature require tracking and merging changes from different code branches, acceptance testing, and other involved processes that can slow down the development process.

What are some categories to use when scheduling a Development Project by judging by where development will take place?

--Production-only—If the functionality can be developed and tested entirely in the production Web interface, the development cycle is faster and users can get the functionality sooner. --Metadata API components—If all of the necessary components are available in the Metadata API, then it is much easier to track and merge changes between environments. --Single sandbox—If the functionality can be developed in a sandbox and then immediately deployed to a production organization, the development cycle does not require integration or staging environments. --Multiple environments—Development projects can span multiple sandboxes, in which case the complexity of integrating codelines is increased. Complicated projects should not keep the simple ones from being rolled out.

What is a useful tool to track changes manually?

--Tickets --AppExchange custom apps such as Change Control --SpreadSheets

What are a few data points to record when tracking changes manually?

--Who made the change --The organization where the change occurred --Date and time --Which component was changed

What can you do with the MetaData API?

--Work with setup configuration as metadata files. --Copy, paste, merge, and manipulate metadata files using familiar tools, such as text editors, IDEs, batch scripts, and source control systems. --Migrate configuration changes between organizations, either between two development environments or from development to production. --Create your own tools for managing organization and application metadata.

When should use you use Data Loader over other data import tools?

--You need to load 50,000 to 5,000,000 records. ----Data Loader is supported for loads of up to 5 million records. If you need to load more than 5 million records, we recommend you work with a Salesforce partner or visit the App Exchange for a suitable partner product. --You need to load into an object that is not yet supported by the import wizards. --You want to schedule regular data loads, such as nightly imports. --You want to export your data for backup purposes.

What features are disabled and cannot be enabled in sandboxes?

-Contract expiration warnings -Case escalation -Contract expiration warnings and case escalation are disabled because they automatically send email to contacts, customers, and production org users. -Subscription summary -Data exports (by clicking Export Now or Schedule Export on the Weekly Export Service page in Setup) -The ability to create Salesforce sandboxes -The ability to copy email service addresses that you create in your sandbox to your production org -The ability to publish Site.com sites

What are some environmental dependencies?

-Login Privileges -Email Addresses -Email Recipients -External URLs -Hard Coded URLs -Hard Coded IDs -Existing Projects

What are some examples of Development Projects?

-New custom objects, tabs, and applications -Integrations with other systems -Apps involving Apex, Visualforce, workflow, or new validation rules

How much data can a developer pro sandbox store?

1 GB (about 500,000 records)

What steps are involved when deploying to production?

1) Announce a maintenance window 2) Stop all changes in production 3) Create a staging environment 4) Migrate changes to staging environment 5) Change environmental dependencies and services from testings settings to production values 6) Lock users out of the app 7) Test deploy using the Metadata API 8) Deploy to production 9) Unlock the production org

What are the three key elements for governance?

1) Center of Excellence: Ensure changes support business goals and follow IT best practices 2) Release Management 3) Design Standards

For which areas should you have design standards?

1) Coding 2) Testing 3) Integration 4) Handling LDV 5) Documentation

Which projects are typically developed with separate environments for testing, integration, and staging?

1) Concurrent development of new applications in multiple environments 2) Projects that require team development

What is the typical development lifecycle when you opt to isolate testing and development in more than on environment?

1) Create a dev environment 2) Develop 3) Create testing environment 4) Migration changes from development environment to testing environment 5) Test 6) Replicate production changes in other environments 7) Deploy what you've developed to production

What is the typical lifecycle when developing with a sandbox?

1) Create a development environment 2) Develop using Salesforce tools 3) Test within dev environment 4) Replicate production changes in the development environment 5) Deploy to production

What is the typical development lifecycle when developing multiple projects with integration, testing, and staging?

1) Create development environment 2) Develop 3) Create testing environment, including UAT and Integration 4) Migrate changes from dev environment to integration environment 5) Test 6) Migrate changes from integration environment to UAT environment 7) Perform UAT 8) Migrate changes from UAT environment to staging 9) Replicate production changes in staging environment 10) Schedule releases

In which scenarios is the Force.com Migration Tool especially useful?

1) Dev projects where you need to populate a test environment with large amounts of setup changes 2) Deployments where you need to change the contents of files between orgs (ex: the running user for a dashboard in one org is different than the running user in the other org) 3) Multi-stage release processes (scripted retrieval and deployment of components is much more efficient) 4) Repetitive deployment using the same parameters

Which sandbox should you use for unit test and apex tests?

1) Developer 2) Developer Pro

Which sandbox should you use for development?

1) Developer 2) Developer Pro (Note: Full or partial may give inappropriate data access to developers)

Which sandbox(es) should be used for QA?

1) Developer 2) Developer Pro 3) Partial

Which sandbox(es) should be used for development?

1) Developer 2) Developer Pro 3) Partial

Which sandbox(es) should be used for Staging and Performance/Load Testing?

1) Full

What are the 9 steps for effective change management?

1) Get a Strategy 2) Engage an executive sponsor 3) Collect input from end-users 4) Define scope and impact 5) Prioritize 6) Configure and test 7) Communicate train 8) Deploy 9) Follow Up and Support

What features are available in the Force.com IDE?

1) Lightning Components 2) Apex Code 3) Visualforce 4) Application Components 5) Development Lifecycle 6) Online Project Mode 7) Schema Explorer 8) Code Share

What are typical development projects where development is undertaken with a sandbox?

1) New custom objects, tabs, and applications 2) Integrations with other systems 3) Apps involving Apex, Visualforce, workflow, or new validation rules

Which sandbox(es) should be used for Integration, UAT, and Training?

1) Partial 2) Full

What are the 5 steps you should take for a successful Salesforce implementation?

1) Plan and Prepare: Identify vision, goals, metrics, resources, tools, and dependencies 2) Setup and Customize SFDC 3) Deploy SFDC 4) Encourage adoption 5) Manage releases

What is copied in a full sandbox?

1) Standard and custom object records 2) Documents 3) Attachments

When should you conduct performance testing?

1) Very high LDVs 2) Highly customized code

What can you do with the Metadata API?

1) Work with setup config as metadata files 2) Copy, paste, merge, and manipulate metadata files 3) Create your own tools for managing org metadata 4) Migrate config changes between orgs

What is the Typical Development Lifecycle when you have an isolated environment for development and one for testing?

1). Create a development environment. 2). Develop using Salesforce Web and local tools. 3). Create a testing environment. 4). Migrate changes from development environment to testing environment. 5). Test. 6). Replicate production changes in other environments. 7). Deploy what you've developed to your production organization.

What is the Sandbox Typical Development Lifecycle?

1). Create a development environment. 2). Develop using Salesforce Web and local tools. 3). Test within the development environment. 4). Replicate production changes in the development environment. 5). Deploy what you've developed to your production organization.

How do you create a User Template?

1). Create a new user on your production organization. 2). Edit the user to give it the necessary permissions. 3). Deactivate the user on the production organization. 4). Create or refresh a sandbox. 5). Activate the user on the sandbox. 6). Optionally change the email address, password, or other environmental settings.

What is the Typical Development Lifecycle when you have multiple Projects with integration, testing and staging?

1). Create development environments. 2). Develop using Salesforce Web and local tools. 3). Create testing environments, including UAT and integration. 4). Migrate changes from development environment to integration environment. 5). Test. 6). Migrate changes from integration environment to UAT environment. 7). Perform user-acceptance tests. 8). Migrate changes from UAT environment to staging environment. 9). Replicate production changes in staging environment. 10). Schedule the release.

What is the Production Typical Development Lifecycle?

1). Plan functional requirements. 2). Develop using Salesforce Web tools, using profiles to hide your changes until they're ready to deploy. 3). Update profiles to reveal your changes to the appropriate users. 4). Notify end users of changes.

What is the general process for delivering multiple applications on a release train?

1). Plan your release around Salesforce upgrades. 2). Schedule your concurrent development projects. This will help you determine if the new functionality can be done now, in the current release, or sometime in the future. 3). Establish a process for changes to the production organization. 4). Track changes in all environments. This will ensure that short-term functionality that is delivered to production does not get overwritten when you deploy from your development environment. 5). Integrate changes and deploy to staging or test environments. 6). Release to production.

Up to how many files can be added to a single change set?

10,000

How much data can a partial sandbox store?

5 GB (about 2.5M records)

What is the Force.com Migration tool?

A Java/Ant-based command-line utility for moving metadata between a local directory and a Salesforce org

What is a Change Process?

A change process determines what kinds of modifications can take place on your production organization, when they can occur, and who is responsible for making the changes.

What does a Continuous Integration tool support?

A constant flow of development changes and unit testing are done to detect conflicts and errors within the development cycle. Also, allows you to perform a baseline of QA without reliance on manual processes.

What's a good way to structure your project in Forece.com IDE?

A good way to structure your project is to think about what you want to accomplish, and then create a project for only those components. You can later edit the project if you have components you want to add or remove.

What is a Release Train?

A release train is a scheduling technique for delivering application upgrades on a regular basis. Release trains are predictable and incremental, so they ease the development process by setting limits on how much can be done in any one development cycle.

What should you consider when Activating a Sandbox?

Activating a refreshed sandbox replaces the existing sandbox with the refreshed version, permanently deleting the existing version and all data in it. Your production organization and its data aren't affected.

Which tool can you leverage to manage Agile apps within the SFDC platform?

Agile Accelerator (A salesforce labs app)

What is the Force.com IDE?

An integrated dev environment for developing apps using Apex, Visualforce, and metadata components. Includes tools to accelerate development, like wizards, source code editors, test execution tools, deployment aids, integrated help, and interactive debugger.

How can you ensure that changes can be successfully deployed without overwriting changes on the Production Organization?

Being able to track and replicate changes in all environments is the only way to ensure that functionality can be successfully deployed without overwriting changes on the production organization. This may have to be done manually.

What is the easiest way to send configuration changes from one organization to another related organization?

Change Sets

What is Data Loader?

Data Loader is a client application for the bulk import or export of data. Use it to insert, update, delete, or export Salesforce records.

What is the best type of sandbox to use when performing Unit and Apex tests?

Developer or Developer Pro sandbox

What is the best type of sandbox to use when performing development?

Developer or Developer Pro sandbox.

How frequently can you refresh a Full Sandbox?

Every 29 days

How frequently can you refresh a partial sandbox?

Every 5 days

T/F You can delete components using change sets.

False

T/F You can rename components using change sets.

False

True/False: You can use excel files in Data Loader.

False

What is best tool to use to populate a test environment with large amounts of setup changes?

Force.com Migration Tool

What is the best tool to use for repetitive deployment using the same parameters—you can retrieve metadata from your organization, make changes, and deploy your changes to an organization?

Force.com Migration Tool

What is the best tool for automated an automated build process?

Force.com migration tool

What is the best type of sandbox to use when performing production debugging?

Full Sandbox

Which sandbox should be used for production debugging?

Full sandbox

Which sandbox should be used for staging and UAT?

Full sandbox

Which sandbox should you use when testing external integrations?

Full sandbox

What is the best type of sandbox to use when performing User Acceptance Testing (UAT) and Staging?

Full sandbox is best for validation of new applications against production configuration and data. **Partial Copy sandboxes are appropriate if testing against a subset of production data is acceptable, for example, for regional tests.

What is the best type of sandbox to use when testing external integrations?

Full sandbox is best when an external system expects full production data to be present. **Partial Copy sandboxes may be appropriate in special cases when you want to use sample data or a subset of your actual data. Works well if you're using external IDs.

What is a fundamental difference between traditional Software Development and cloud development?

In cloud computing the server always has the true definition of the components. The files you work with in a local Force.com project are a representation of the objects on the server. This is an important distinction because synchronization does not happen between projects directly, but between each project and the server.

What is performance testing?

Measuring under a particular workload for both load and stress testing

On which API, is the Force.com Migration tool and Force.com IDE built?

Metadata API

How does the Metadata API work?

Metadata API provides two parts that work in conjunction: a rich and powerful metadata model and an application programming interface (API).

Which sandbox should you use for feature tests and regression tests?

Partial Copy

What is the best type of sandbox to use when performing Feature or Regression tests?

Partial Copy sandbox (with a standard data set loaded)

What is a good way to schedule & categorize a Development Project?

Putting development projects into categories such as short-term, medium-term, and long-term. These categories are often defined by where development takes place, how much testing is required, and when new features must be available. A three-tier scheme is a good starting point

What do you need to do prior to executing a performance test?

Submit a test plan to SFDC support

What is load testing?

Testing with different loads under expected conditions.

What is Force.com IDE?

The Force.com IDE is an integrated development environment for developing applications on the Force.com platform using Apex, Visualforce, and metadata components. Designed for developers and development teams, the IDE provides tools to accelerate Force.com application development. These tools include wizards, source code editors, test execution tools, deployment aids, integrated help, and an interactive debugger.

How is the Force.com Migration tool different than change sets?

The Force.com Migration Tool allows you to migrate metadata between unrelated organizations, so in that sense it's more powerful than change sets. Unlike the Force.com IDE, the Force.com Migration Tool has no graphical user interface. You choose the components you want to deploy, the server address, and other deployment details by editing control files in a text editor and using command-line arguments.

What is the Force.com Migration Tool?

The Force.com Migration Tool is a Java/Ant-based command-line utility for moving metadata between a local directory and a Salesforce organization.

How does Force.com IDE Enable project-based development?

The Force.com platform enables project-based development by using text-based files to represent the various components in a Salesforce organization. These files are easily transported, can be stored and versioned in a source control system, and enable traditional development. All of this is made possible by Metadata API.

What are environmental dependencies?

They are settings that are different between a development environment and the production organization.

How can you track changes using the Metadata API?

They can be tracked and merged using desktop tools.

T/F Change sets can't be used to rename or delete components

True

T/F You can change a field type using change sets.

True

True/False: Sandboxes has the same number of Licenses as Production.

True

True/False: The Force.com Migration Tool gives you complete control over the retrieve() and deploy() commands; editing and saving a file on your local file system does not change the metadata in any organization until you choose to deploy it.

True

What is an easy way to generate representative test data?

Use Forefactory a simple Ruby on Rails app

What are the uses for a Sandbox environment?

Use sandboxes for development, testing, training, or other purposes without compromising the data and applications in your Salesforce production org.

What is the most efficient way to do a multi-stage release process?

Using the Force.com Migration Tool --Scripted retrieval and deployment of components can make this process much more efficient.

What is the easiest development tool used by most administrators?

Web Interface (force.com)

What's a benefit for using the Force.com Migration tool if a highly-technical resource is doing the deployment?

When migration from staging to production is done by highly technical resources—anyone who prefers deploying in a scripting environment will find the Force.com Migration Tool a familiar process.

When is it appropriate to develop directly in production?

When when a single administrator is building super simple things like a new dashboard, reports, custom field, or email template.

What are the limits for Force.com IDE?

You can deploy or retrieve up to 10,000 files at once and the maximum size of the deployed or retrieved .zip file is 39 MB. If you need to retrieve or deploy more than either of these limits, you must do so in batches.

What does the Force.com Migration tool enable you to do that can't done with change sets?

You can migrate metadata between unrelated orgs

How can you track changes using the Force.com IDE or Force.com Migration tool?

You can put your files in a version control system, and you can track changes using the version control system's built-in functionality

What is the most important reason you would need to track Development Changes?

You might have to manually migrate some changes from one organization to another.

If you have isolated development and testing in two different environments and you find some changes need to take place before deploying to production, where should you make the changes?

You might want to make them in the testing environment because it's faster, but the changes should be replicated in the development environment.

If you are simultaneously developing projects in production and sandbox organizations, what should you do to avoid replacing new changes in production when you deploy from your change set?

You should replicate setup changes occurring in production in the sandbox


Kaugnay na mga set ng pag-aaral

Chapter 18 - Legal Issues: Recognizing Your Small Business Needs

View Set

Colorado Property & Casualty Insurance Law Supplement

View Set