Resiliente – Gerenciamento de ciclo de vida do aplicativo

Padrão de estratégia de ambiente

Saiba mais sobre bem-construído e adaptável → Resistente → Gerenciamento de ciclo de vida do aplicativo → Estratégia ambientais

Onde procurar?
Área de produtos | Local
Qual é a aparência de um bom?
Padrão
Plataforma | Organização ✅ Metadados em um determinado ambiente são independentes de seus artefatos de versão
Plataforma | Organização ✅ Os ambientes não correspondem diretamente a um caminho de liberação
Plataforma | Organização ✅ Os caminhos de liberação para uma alteração dependem do tipo da alteração (risco alto, risco médio, risco baixo)
Plataforma | Organização ✅ Ambientes sobrecarregados não existem
Plataforma | Organização ✅ Alterações de configuração arriscadas nunca são feitas diretamente na produção
Plataforma | Organização ✅ Nenhum lançamento ocorre durante o horário comercial de pico
Plataforma | Organização ✅ Um modelo de desenvolvimento e versão orientado por origem é adotado
Plataforma | Sandboxes ✅ O rastreamento de origem está habilitado para sandboxes Developer e Developer Pro

Padrão de gerenciamento de versão

Saiba mais sobre Well-Architected Adaptable → Resilient → Application Lifecycle Management → Release Management

Onde procurar?
Área de produtos | Local
Qual é a aparência de um bom?
Padrão
Plataforma | Padrões de design ✅ Os nomes de versão estão claros
Plataforma | Padrões de design ✅ As equipes podem encontrar e seguir diretrizes claras para marcar artefatos, itens de desenvolvimento e outros trabalhos com os nomes de versão corretos
Plataforma | Documentação ✅ Os nomes de versão são pesquisáveis e descobríveis
Plataforma | Documentação ✅ É possível reunir uma visualização clara de um manifesto de versão por nome da versão
Plataforma | KPIs ✅ Limites de qualidade para aplicativos de IA generativa definidos para diferentes estágios de desenvolvimento
Plataforma | Produção ✅ Metadados mostra o uso de mecanismos de liberação estáveis Implantações via API de metadados usam o formato source
Plataforma | Produção ✅ Metadados mostram o uso de mecanismos de versão estáveis Os metadados são organizados em pacotes desbloqueados
Plataforma | Produção ✅ Os registros de implementação não mostram nenhuma implementação com falha no histórico disponível
Plataforma | Produção ✅ O histórico de implementação mostra ritmos de versão claros e grupos de implementação bastante uniformes nas janelas de versão
Plataforma | Produção ✅ DevOps Center está ativo e instalado
Plataforma | Produção ✅ Metadados mostram o uso de mecanismos de versão estáveis Os conjuntos de alterações não são usados para alterações de versão
Plataforma | Roteiro ✅ Os recursos são vinculados claramente a uma versão nomeada específica
Plataforma | Roteiro ✅ Os nomes de versão estão claros
Plataforma | Roteiro ✅ Os nomes de versão são pesquisáveis e descobríveis

Padrão de estratégia de teste

Saiba mais sobre bem-construído Adaptable → Resilient → Application Lifecycle Management → Testing Strategy

Onde procurar?
Área de produtos | Local
Qual é a aparência de um bom?
Padrão
Data 360 | Apex ✅ As classes de teste do Apex incluem cobertura para consultas executadas em objetos do Data Cloud. As classes de teste estendem a classe System.SoqlStubProvider e substituem o método handleSoqlQuery(). As instâncias de DMO são criadas usando Test.createStubQueryRow() ou Test.createStubQueryRows().
Plataforma | Apex ✅ Os padrões de fábrica de dados são usados para testes de unidade
Plataforma | Apex ✅ Mock/Stubs são usados para simular respostas da API
Plataforma | Negócios ✅ Você inclui testes de escala como parte de seu processo de QA quando tiver aplicativos em escala B2C, grandes volumes de usuários ou grandes volumes de dados
Plataforma | Negócios ✅ Seus testes de escala têm critérios bem definidos
Plataforma | Negócios ✅ Você realiza testes de escala em um Sandbox completo
Plataforma | Negócios ✅ Seus testes de escala focam aspectos de alta prioridade do sistema
Plataforma | Negócios ✅ Os simuladores são usados para replicar condições semelhantes a produção para escalabilidade e testes de desempenho
Plataforma | Negócios ✅ Os testes são automatizados para execução quando as alterações entram no controle de origem
Plataforma | Negócios ✅ Testes de resistência, estresse, desempenho e escala são executados em vários intervalos no ciclo de desenvolvimento do aplicativo e considerados tarefas contínuas
Plataforma | Negócios ✅ A engenharia rápida inclui uma revisão de qualidade por um humano
Plataforma | Negócios ✅ Os testes de usabilidade usam uma variedade de dispositivos e tecnologia assistiva
Plataforma | Organização ✅ Todos os dados de teste são removidos de dados confidenciais e de identificação
Plataforma | Planos de teste ✅ Os ambientes são classificados pelo tipo de teste ao qual eles podem dar suporte
Plataforma | Planos de teste ✅ Os regimes de teste adequados são especificados de acordo com o risco, o caso de uso ou a complexidade

Antipadrão da estratégia ambiental

Saiba mais sobre bem-construído e adaptável → Resistente → Gerenciamento de ciclo de vida do aplicativo → Estratégia ambientais

Onde procurar?
Área de produtos | Local
O que evitar?
Antipadrão
Plataforma | Organização ⚡️ Os ambientes correspondem diretamente a um caminho de versão
Plataforma | Organização ⚡️ O caminho da versão para cada alteração é o mesmo
Plataforma | Organização ⚡️ Existem ambientes sobrecarregados
Plataforma | Organização ⚡️ Alterações de configuração arriscadas são feitas diretamente na produção
Plataforma | Organização ⚡️ Um modelo de desenvolvimento e versão baseado em organização é adotado
Plataforma | Organização ⚡️ As versões ocorrem durante o horário comercial de pico
Plataforma | Organização Metadados em um determinado ambiente são seu artefato de versão
Plataforma | Sandboxes ⚡️ O rastreamento de origem não está habilitado para sandboxes Developer e Developer Pro

Antipadrão do Gerenciamento de versão

Saiba mais sobre Well-Architected Adaptable → Resilient → Application Lifecycle Management → Release Management

Onde procurar?
Área de produtos | Local
O que evitar?
Antipadrão
Plataforma | Padrões de design ⚡️ Os nomes de versão estão ausentes
Plataforma | Padrões de design ⚡️ As equipes se referem a artefatos, itens de desenvolvimento e outros trabalhos de diferentes maneiras
Plataforma | Documentação ⚡️ Os nomes de versão são ad hoc ou não existem
Plataforma | Documentação ⚡️ Não é possível reunir uma visualização clara de um manifesto de versão usando um nome de versão
Plataforma | KPIs Limites de qualidade para aplicativos de IA generativa não são definidos ou não são definidos em diferentes estágios de desenvolvimento
Plataforma | Produção Metadados indicam o uso de mecanismos de liberação baseados em organização Implantações via API de metadados usam o formato package.xml
Plataforma | Produção ⚡️ Metadados indicam o uso de mecanismos de versão baseados em organização Uso ativo de conjuntos de alterações
Plataforma | Produção ⚡️ Os registros de implementação mostram instâncias repetidas de implementações com falha no histórico disponível
Plataforma | Produção As implantações não têm ritmo discernível ou mostram clusters desiguais de implantações (sinais de correções rápidas e reversões ad hoc)
Plataforma | Produção DevOps Center não está habilitado e instalado
Plataforma | Roteiro Os recursos não estão vinculados claramente a uma versão específica
Plataforma | Roteiro ⚡️ Os nomes de versão estão ausentes
Plataforma | Roteiro ⚡️ Os nomes de versão são ad hoc ou não existem

Antipadrão da estratégia de teste

Saiba mais sobre bem-construído Adaptable → Resilient → Application Lifecycle Management → Testing Strategy

Onde procurar?
Área de produtos | Local
O que evitar?
Antipadrão
Data 360 | Apex ⚡️ Não existe cobertura de teste para consultas SOQL executadas em objetos do Data Cloud. Consultas SOQL em relação a um DMO não são cobertas por métodos de teste do Apex
Plataforma | Apex ⚡️ Seus testes de unidade dependem de dados da organização
Plataforma | Apex ⚡️ Mocks/stubs não são usados
Plataforma | Negócios ⚡️ Seus testes de escala não são priorizados
Plataforma | Negócios ⚡️ Você não realiza testes de escala como parte de seu processo de QA e tem aplicativos em escala B2C, grandes volumes de usuários ou grandes volumes de dados
Plataforma | Negócios ⚡️ Seus testes de escala não têm critérios bem definidos
Plataforma | Negócios ⚡️ Você realiza testes de escala em uma cópia parcial ou Developer Sandbox
Plataforma | Negócios Os testes de usabilidade não são realizados ou são realizados em um conjunto limitado de dispositivos
Plataforma | Negócios Volumes semelhantes a produção de solicitações de usuário, tráfego de API e variações de velocidade de rede não são testados.
Plataforma | Negócios ⚡️ A automação de teste não está em vigor
Plataforma | Negócios ⚡️ A engenharia rápida não tem uma revisão de qualidade por um humano
Plataforma | Negócios ⚡️ Testes de resistência, estresse, desempenho e escala são considerados uma fase ou estágio de desenvolvimento.
Plataforma | Organização ⚡️ Os dados de teste são idênticos aos dados de produção
Plataforma | Planos de teste ⚡️ Não está claro qual ambiente pode dar suporte a qual tipo de teste
Plataforma | Planos de teste Os regimes de teste não são categorizados por risco, caso de uso ou complexidade
Plataforma | Planos de teste ⚡️ O teste de desempenho para o LWC personalizado é uma reflexão A espera do fim do ciclo de desenvolvimento para testar componentes personalizados do Lightning
Plataforma | Planos de teste ⚡️ Testar integrações com menos de 50% do tráfego de usuários esperado Com base no resultado de alguns usuários para considerar um teste de integração suficiente