Preparar sua organização para alterações
Objetivos de aprendizagem
Após concluir esta unidade, você estará apto a:
- Descrever como você gerencia mudanças usando o modelo de desenvolvimento organizacional.
- Identificar as ferramentas necessárias para o desenvolvimento organizacional.
- Explicar as vantagens de usar um sistema de controle de origem.
Apresentamos Calvin, o administrador do Salesforce na Zephyrus Relocation Services, Inc.
Calvin Green exerce vários papéis técnicos na Zephyrus Relocation Services, uma empresa de mobilização de talentos em Fairfax, Virgínia. Um dos papéis dele é personalizar o Salesforce para a equipe de vendas da empresa, que é pequena, mas está em rápida expansão. Usando a interface de configuração na organização de produção, ele cria uma quantidade impressionante de novos painéis e relatórios.
A Zephyrus continua oferecendo mais opções e valor aos seus clientes. Calvin e sua equipe precisam garantir que a equipe de vendas esteja ciente de todas as novas e interessantes ofertas de produtos. Eles não podem oferecer a seus clientes esses novos cursos e serviços excelentes se não souberem da sua existência.
Antes de começarem a trabalhar no próximo lançamento, Calvin está procurando um processo e um ciclo de vida de desenvolvimento que acompanhe esse crescimento. À medida que sua equipe cresce, ele precisa de um processo que dê suporte ao desenvolvimento simultâneo de vários colaboradores na plataforma Lightning.
Calvin se reúne com sua equipe de desenvolvimento para conversar sobre como eles podem trabalhar de maneira mais eficiente à medida que a equipe cresce. No passado, eles enfrentaram os seguintes desafios:
- Acompanhar as alterações de todos
- Manter todos os ambientes de desenvolvimento e teste sincronizados
- Criar e implementar conjuntos de alterações diversas vezes devido a erros e diferenças entre ambientes
O novo desenvolvedor líder, Juan Garcia, está investigando algumas das ferramentas e modelos de desenvolvimento do Salesforce DX. Ele acredita que o modelo de desenvolvimento organizacional pode ajudar a mitigar alguns dos problemas que estão enfrentando.
Mudar para o desenvolvimento organizacional
Com vários desenvolvedores e administradores contribuindo para uma versão, a equipe concorda que precisa de um novo modelo de desenvolvimento. É aí que entra o desenvolvimento organizacional, um modelo que usa algumas ferramentas diferentes que fornecem: 1) maior flexibilidade e escalabilidade, 2) novas maneiras de rastrear e gerenciar alterações e 3) um método diferente de implantação.
Juan gosta que o modelo de desenvolvimento organizacional use um repositório de controle de origem para armazenar alterações e arquivos de projeto. Um repositório de origem pode ajudar a mitigar o problema de manter os ambientes sincronizados. Ao externalizar as alterações de cada versão, a equipe sabe que o repositório de origem reflete o que eles estão fornecendo e não é afetado pelas diferenças ambientais. Essa consistência garante um processo mais tranquilo à medida que eles passam pelos diferentes ambientes de desenvolvimento, teste e preparação.
Para garantir que estão identificando dependências de todos os colaboradores, a equipe usa mecanismos de controle de alterações que capturam as alterações feitas nos componentes versus as alterações feitas diretamente na organização por meio da IU de configuração.
Juan também sugere que eles usem as extensões do Salesforce para VS Code para recuperar metadados de seus ambientes de desenvolvimento. Em seguida, eles armazenam as alterações feitas no sistema de controle de origem. Depois que as alterações estiverem no controle de origem, eles poderão criar processos automatizados para teste e implantação na produção.
Após vários ciclos de testes e integração, Juan implanta as alterações, armazenadas no controle de origem, na produção.
Preparar os ambientes de lançamento
A equipe acessa os mesmos ambientes de desenvolvimento e teste que usou antes. A equipe de Juan usa sandboxes em cada etapa do ciclo de vida do aplicativo.
- Desenvolver e testar: Cada membro da equipe tem sua própria Developer Sandbox para criar as respectivas personalizações atribuídas. As Developer Sandboxes não contêm dados de produção.
- Compilar a versão: Cada membro da equipe migra suas personalizações das respectivas Developer Sandboxes para uma Developer Pro Sandbox para integração. As Developer Pro Sandboxes não contêm dados de produção, mas você pode colocar dados de teste nelas.
- Testar a versão: Para testes de aceitação do usuário, a equipe usa uma sandbox parcial para criar uma réplica completa da produção (sem dados de produção).
- Versão: Quando a versão estiver na produção, a equipe poderá usar a sandbox completa para treinar usuários sem correr o risco de alterar os dados da produção. Uma sandbox completa contém uma cópia dos dados de produção.
Gerenciar alterações como um rei
Calvin e sua equipe usam muitas das ferramentas com as quais já estão familiarizados à medida que começam a seguir o modelo de desenvolvimento organizacional. No entanto, algumas novas ferramentas melhoram a sua produtividade durante fases específicas da versão. Elas são fundamentais para a mudança para um modelo de desenvolvimento de equipe mais ágil.
Projeto Salesforce DX
O projeto Salesforce DX contém a origem e os arquivos que compõem suas alterações. Um projeto DX possui uma estrutura de projeto e um formato de origem específicos.
Além dos arquivos de origem, o projeto contém um arquivo de configuração, sfdx-project.json
. Este arquivo contém informações do projeto e permite aproveitar as ferramentas do Salesforce DX para muitas de suas tarefas de desenvolvimento.
Um projeto DX tem esta estrutura:
Artefato de versão (arquivo de manifesto)
Depois de testar as alterações, Juan cria o artefato de versão, um arquivo de manifesto (package.xml
) que lista os componentes a serem implementados. Ele usa o artefato de versão para implantar primeiro nas várias sandboxes e, finalmente, na produção. As alterações não entrarão em vigor até que sejam implantadas.
Sistema de controle de origem
Todas as alterações são mescladas e armazenadas em um sistema de controle de origem, que contém o projeto Salesforce DX. Um sistema de controle de origem oferece várias vantagens.
- A colaboração em tempo real aumenta a eficiência e gera consenso.
- A equipe pode trabalhar nos mesmos arquivos ao mesmo tempo, sem medo de sobrepor alterações ou perder trabalho.
- O histórico de revisões mostra quem fez quais alterações.
- Você pode reverter para versões anteriores de qualquer arquivo. É como ter sua própria máquina do tempo, onde você pode voltar e salvar o universo da destruição.
- Ao salvar o trabalho, você fornece uma descrição de confirmação, que fornece contexto histórico para o trabalho.
Salesforce CLI
A Salesforce CLI é uma interface de linha de comando poderosa que você pode usar em todas as fases do ciclo de vida de desenvolvimento da organização. Ela melhora a produtividade fornecendo uma interface única para todos os seus casos de uso de desenvolvimento, teste e automação. Você pode:
- Autorizar sandboxes (headless ou fluxo da Web)
- Criar e gerenciar projetos DX
- Importar e exportar dados de teste
- Recuperar e implantar metadados
- Executar e automatizar testes
Extensões do Salesforce para Visual Studio (VS) Code
As extensões do Salesforce para VS Code são baseadas na Salesforce CLI e no VS Code. Juntos, eles formam um ambiente de desenvolvimento integrado criado para desenvolvimento personalizado na Lightning Platform. O melhor de tudo é que você pode executar comandos da Salesforce CLI diretamente da paleta de comandos ou do terminal. A equipe de desenvolvimento instala o Pacote de extensões do Salesforce para que possam usar estas extensões do VS Code:
- Einstein para desenvolvedores – permite que você gere rapidamente sugestões de código usando instruções em linguagem natural.
- Salesforce CLI Integration – interage com a Salesforce CLI para proporcionar funcionalidades básicas.
- Apex – usa o Apex Language Server para fornecer recursos como destaque de sintaxe e preenchimento de código.
- Depurador de reprodução do Apex – permite que o VS Code reproduza a execução do Apex a partir dos logs de depuração do Apex.
- Componentes Web do Lightning – dão suporte a componentes Web do Lightning.
Mecanismos de gerenciamento de alterações
A equipe de desenvolvimento tem a vantagem de ter algumas ferramentas formais de acompanhamento de alterações, incluindo uma lista de alterações da equipe, uma lista de execução de implantação e um sistema de gerenciamento de projetos.
Ferramenta | Descrição |
---|---|
Lista de alterações | Um desenvolvedor usa esta lista, tabela ou planilha simples para acompanhar as alterações feitas em sua própria organização de desenvolvimento e para saber o que externalizar. |
Lista de execuções da implantação | Um desenvolvedor lista todas as alterações manuais que precisam ser feitas na organização antes e depois da implantação. Estas alterações incluem metadados que não podem ser implantados, por exemplo, atribuições de perfis e conjuntos de permissões. |
Ferramentas de gerenciamento de projetos | Ferramentas como Agile Accelerator e Jira ajudam uma equipe a adotar práticas de desenvolvimento Agile, monitorar requisitos de negócios, trabalho de recursos e bugs. As ferramentas de gerenciamento de projetos também ajudam uma equipe a gerenciar sprints e preparar seu backlog (itens de trabalho futuros). |
Instalar as ferramentas
Juan e Ella usam extensões do Salesforce para VS Code para realizar tarefas de desenvolvimento e teste, e o GitHub como sistema de controle de origem. Eles realizam as seguintes etapas.
- Instalar a Salesforce CLI.
- Instalar o VS Code e as extensões do Salesforce para Visual Studio Code.
- Instalar o Git.
- Configurar o Git.
- Criar uma conta do GitHub.
Como Ella nunca usou o Visual Studio antes, ela instala as ferramentas e conclui o Início rápido: Visual Studio Code para desenvolvimento do Salesforce.