Bewährte Verfahren für die Salesforce-Bereitstellung,
wichtige Schritte & nützliche Tools

Bewährte Verfahren für die Salesforce-Bereitstellung, wichtige Schritte & nützliche Tools

21. März 2024

Salesforce-Bereitstellung

Die Salesforce-Bereitstellung, die das Verschieben von Code- und Metadatenänderungen durch verschiedene Sandboxes beinhaltet, umfasst die folgenden Schritte.

Salesforce deployment process

Entwickler nehmen Anpassungen (Änderungen am Quellcode, neue Funktionen, benutzerdefinierte Vorlagen usw.) oder Konfigurationen (z. B. Änderungen an Objekten und Feldern sowie kleinere Änderungen an der Benutzeroberfläche) vor und testen diese Änderungen in separaten Sandboxes mit Unit-Tests. Diese isolierten Umgebungen dienen als Replik Ihrer Salesforce-Organisation und der darin enthaltenen Metadaten (einschließlich Feldern, Layouts und Automatisierungslogik) und Daten (Datensätze wie Kontakte und Leads) und ermöglichen es Entwicklern, Änderungen vorzunehmen, ohne die Produktionsorganisation zu beeinträchtigen.

Die Änderungen werden dann in einer Integrationsumgebung bereitgestellt, um zu einer einheitlichen Codebasis zusammengeführt zu werden. In Integrationstests wird dann überprüft, ob diese Änderungssätze zusammen funktionieren.

Weitere Tests finden in der Regel in einer weiteren Sandbox statt. Diese Phase umfasst Leistungstests zur Überprüfung der Stabilität, Geschwindigkeit und Reaktionsfähigkeit der Lösung, gefolgt von Benutzerakzeptanztests (UAT), bei denen Salesforce-Benutzer die bereitgestellte Lösung bewerten, um sicherzustellen, dass sie wie erwartet funktioniert. Dieselbe Sandbox kann auch als Staging-Umgebung für die abschließende Überprüfung und Schulung künftiger Benutzer verwendet werden.

Nach Abschluss der Tests und Schulungen werden neue Funktionen und andere Änderungen in die Produktionsumgebung implementiert und den Endbenutzern zur Verfügung gestellt.

Bewährte Verfahren für die Salesforce-Bereitstellung

Erstellung einer Strategie für das Versionsmanagement

Die Bereitstellung von Salesforce umfasst mehrere Iterationen in unterschiedlichen Umgebungen. Ein Release-Management-Framework kann diesen komplexen Prozess harmonisieren und Sie bei der Planung, Terminierung und Kontrolle der Bereitstellung von Software-Releases unterstützen. Eine effektive Release-Management-Strategie muss die folgenden Aspekte umfassen:

  • Klare Rollen und Zuständigkeiten (Anforderungsplanung, Tests, Bereitstellung usw.) für die beteiligten Spezialisten wie Produktmanager, Qualitätsingenieure, Salesforce-Entwickler und -Administratoren sowie Release-Manager.
  • Kategorisierung von Releases in Bugfixes, kleinere Änderungen, die keine Benutzerschulung erfordern, und größere Änderungen, die die Funktionalität, die Benutzerfreundlichkeit und die Abhängigkeiten zwischen Org-Komponenten (benutzerdefinierte Objekte, Trigger usw.) erheblich beeinflussen. Die letztgenannte Kategorie erfordert sorgfältiges Testen, Training und Änderungsmanagement.
  • Ein regelmäßiger Release-Zeitplan aufstellen und die Kommunikation von Änderungen, damit Salesforce-Benutzer ihre Arbeit entsprechend planen können. Vermeiden Sie außerdem die Bereitstellung zu Spitzenzeiten, um Arbeitsunterbrechungen zu minimieren.

Auswahl der richtigen Sandbox-Umgebung

Salesforce bietet verschiedene Arten von Sandboxes mit unterschiedlichen Daten- und Dateispeicherkapazitäten, Aktualisierungsintervallen und Vorlagenunterstützung. Außerdem können nicht alle Sandboxes sowohl Metadaten als auch Daten kopieren. In einer Sandbox-Strategie sollte auf der Grundlage von Aufgaben und Datenanforderungen geklärt werden, welche Arten von Sandboxes in den einzelnen Release-Phasen beteiligt sind.

  • Developer-Sandboxes kopieren die Metadaten Ihrer Produktionsorganisation, aber nicht die Daten. Sie können einmal pro Tag aktualisiert werden und haben im Vergleich zu anderen Typen eine begrenzte Speicherkapazität von 200 MB, was sie zu einer guten Wahl für einzelne Entwickler macht, die isolierte Codierungs- und Unit-Test-Aufgaben erledigen. Die Pro-Version erweitert die Speicherkapazität auf bis zu 1 GB und ermöglicht damit eine breitere Palette von Aufgaben wie Qualitätskontrolle und Integrationstests.
  • Teilkopie-Sandboxes kopieren sowohl Metadaten als auch einen Teil der über Sandbox-Vorlagen ausgewählten Daten. Dieser Beispielsatz von Live-Daten ermöglicht es Ihnen, Änderungen über Integrationstests, Qualitätssicherung und UAT zu testen und Benutzer in einer Umgebung zu schulen, die der realen Umgebung ähnelt.
  • Bei der Full Sandbox werden die Metadaten und Daten der gesamten Produktionsorganisation kopiert. Sie sollten daher zum Testen neuer Änderungen mit Performance-, Last- und UAT-Tests sowie als Staging-Umgebung verwendet werden. Beachten Sie, dass die niedrige Aktualisierungsrate trotz der besten Speicherkapazität den Entwicklungs- und Bereitstellungsablauf behindern kann, wenn sie als Codierungsumgebung verwendet wird.

Sandbox-Art/Aktualisierungsintervall

Sandbox-Art

Speichergrenze

Aktualisierungsintervall

Was kopiert wird

Speichergrenze

Sandbox-Vorlagen

Was kopiert wird

Sandbox-Vorlagen

Entwickler-Sandbox
Entwickler-Sandbox

1 Tag

Datenspeicher: 200 MB Dateispeicher: 200 MB

Nur Metadaten

Nicht verfügbar

Entwickler Pro Sandbox
Entwickler Pro Sandbox

1 Tag

Datenspeicher: 1 GB Dateispeicher: 1 GB

Nur Metadaten

Nicht verfügbar

Sandbox für partielle Kopien
Sandbox für partielle Kopien

5 Tage

Datenspeicher: 5 GB Dateispeicher: Wie bei Ihrer Produktionsorganisation

Metadaten und Beispieldaten

Erforderlich

Vollständige Sandbox
Vollständige Sandbox

29 Tage

Dasselbe wie Ihre Produktionsorganisation

Metadaten und alle Daten

Verfügbar

Titel der Tabelle: Arten von Salesforce-Sandboxes
Datenquelle: help.salesforce.com - Sandboxes: Staging-Umgebungen zum Anpassen und Testen

Optimieren Sie Ihr Sandbox-Toolkit

Beim Festlegen Ihrer Sandbox-Strategie sollten Sie auch die Anzahl der verwendeten Sandboxes, ihre Verfügbarkeit auf der Grundlage der einzelnen Salesforce-Editionen und alternative Optionen zur Einrichtung neuer Sandboxes berücksichtigen.

  • Mehrere Entwickler können sich dieselbe oder verschiedene Sandboxes teilen. Eine gemeinsame Sandbox macht Integration überflüssig, aber wir empfehlen dennoch, mehrere Sandboxes zu verwenden, damit jeder Entwickler Metadaten ändern kann, ohne die Arbeit der anderen Entwickler zu beeinträchtigen. Stellen Sie einfach sicher, dass Sie die Kompatibilität von Komponenten, die in verschiedenen Sandboxes erstellt wurden, durch Integrationstests überprüfen.
  • Die verschiedenen Salesforce-Editionen bieten eine unterschiedliche Anzahl und Auswahl an Sandboxes, sodass Sie eine geeignete Auswahl treffen müssen. Sie können zwar zusätzliche Sandboxes erwerben, bedenken Sie jedoch, dass sich deren Kosten nach dem Typ richten, wobei die vollständige Sandbox am teuersten ist.
  • Verwenden Sie die Salesforce CLI, um vorhandene Entwickler-Sandboxes zu klonen, anstatt neue Sandboxes aus der Produktionsorganisation zu erstellen, was länger dauert. So können Sie die Sandbox mit Daten vorladen, ohne Skripte zu verwenden.

Sandbox-Art/Professional Edition

Sandbox-Art

Enterprise Edition

Professional Edition

Unlimited Edition

Enterprise Edition

Performance Edition

Unlimited Edition

Performance Edition

Developer-Sandbox
Developer-Sandbox

10

25

100

100

Developer-Pro-Sandbox
Developer-Pro-Sandbox

5

5

Teilkopie-Sandbox
Teilkopie-Sandbox

Nicht verfügbar

1

1

1

Full Sandbox
Full Sandbox

Nicht verfügbar

1

1

Titel des Schemas: Anzahl der verfügbaren Sandboxen pro Edition
Datenquelle: help.salesforce.com - Sandboxes: Staging-Umgebungen zum Anpassen und Testen

Wählen Sie eine geeignete Salesforce-Bereitstellungsmethode

Salesforce bietet mehrere native Optionen für die Bereitstellung von Änderungen zwischen verschiedenen Organisationseinheiten in Ihrer Release-Pipeline. Um das am besten geeignete Tool zu finden, sollten Sie Ihre Wahl anhand Ihres Bereitstellungsszenarios treffen.

  • Änderungssets sind Pakete mit Metadatenänderungen (einschließlich Workflows, Regeln und Berechtigungssätzen), die direkt über das Setup-Menü der grafischen Benutzeroberfläche von Salesforce ausgewählt und bereitgestellt werden können. Dieses Tool unterstützt jedoch keine Versionskontrolle, was zu Fehlern und Schwierigkeiten bei der Änderungsverfolgung führen kann. Betrachten Sie Änderungssets als eine gute Option für technisch nicht versierte Benutzer, um kleinere Änderungen ohne Unterstützung durch Entwickler bereitzustellen.
  • Das Ant Migration Tool (ehemals Force.com Migration Tool) ermöglicht Benutzern den Zugriff auf die Metadaten-API von Salesforce, um Metadaten zwischen Organisationen zu verschieben. Alle Interaktionen mit Ant, z. B. die Anforderung zur Bereitstellung von Salesforce-Metadaten, erfolgen durch die Eingabe von Textzeilen in eine Befehlszeilenschnittstelle. Obwohl der Prozess komplizierter ist als bei den grafischen Benutzeroberflächen, erhalten Sie eine größere Kontrolle über die Bereitstellung. Wählen Sie dieses Tool für umfangreiche Anpassungen, die wiederholte Bereitstellungen erfordern und von einem Team von Entwicklern durchgeführt werden sollen.
  • Bitte beachten Sie, dass Salesforce die Unterstützung von Ant mit neuen Updates ab Frühjahr '24 einstellen wird, wie vor kurzem bekannt gegeben wurde. Wenn Sie sich für ein Befehlszeilen-Tool entscheiden, können Sie Ant durch Salesforce CLI ersetzen, das die Fähigkeiten von Ant um Befehle zum Ziehen und Ablegen von Metadaten in und aus Organisationen und zum Konvertieren von Metadaten in das SFDX-Format erweitert.

Führen Sie End-to-End-Tests durch

Tests sind notwendig, um eine erfolgreiche Salesforce-Bereitstellung, eine optimale Softwareleistung und einen reibungslosen Betrieb sowie eine nahtlose Benutzererfahrung sicherzustellen.

  • Sie können mit dem Apex-Testing-Framework Unit-Tests schreiben und ausführen, um die hohe Qualität des Apex-Codes sicherzustellen und alle Anforderungen für die Bereitstellung zu erfüllen.
  • Überprüfen Sie, ob die Codeabdeckung mindestens 75 % beträgt und ob Apex-Klassen (Vorlagen zum Erstellen von Objekten) und Trigger (Aktionen, die automatisch durch Änderungen an Salesforce-Datensätzen aufgerufen werden) wie erwartet funktionieren.
  • Führen Sie Regressionstests durch, um sicherzustellen, dass sich Konfigurationsaktualisierungen oder neue Bereitstellungen nicht negativ auf die bestehende Funktionalität ausgewirkt haben. Erwägen Sie außerdem den Einsatz eines Automatisierungstools eines Drittanbieters, um solche Tests ohne manuelle Eingriffe auszulösen.
  • Aktualisieren Sie Ihre Sandboxes regelmäßig, um sie mit der Produktionsumgebung zu synchronisieren und um Daten-/Metadatenabweichungen zwischen den Umgebungen zu vermeiden, die nach der Bereitstellung zu Fehlern führen könnten. Darüber hinaus geben Tests, die in synchronisierten Umgebungen durchgeführt werden, einen realistischeren Eindruck davon, wie Anpassungen in der Produktionsumgebung funktionieren werden.

Versionskontrolle für Code implementieren

Die Code-Versionskontrolle umfasst die Nachverfolgung und Dokumentation von Änderungen in jeder Phase der Entwicklung und Bereitstellung von Salesforce, die Pflege einer detaillierten Änderungshistorie und die Hervorhebung von Codekonflikten oder anderen Problemen zur Erleichterung der Fehlerbehebung.

  • Das Setup Audit Trail von Salesforce zeigt die letzten Setup-Änderungen (Anpassungen des Seitenlayouts, erstellte Berechtigungssätze usw.), die in Ihrer Organisation vorgenommen wurden, einschließlich des Datums der Änderung und der Person, die sie vorgenommen hat.
  • Entwickler sollten Konfliktbereiche zwischen den Komponenten des lokalen Projekts oder in der Organisation identifizieren (z. B. eine von einem Entwickler geänderte und von einem anderen gelöschte Datei) und diese lösen, bevor sie mit der Bereitstellung fortfahren. Sie können die Salesforce-Befehlszeilenschnittstelle (CLI) einsetzen, um Sie über widersprüchliche Änderungen zu informieren, damit Sie diese auflösen und das lokale Projekt oder die Organisation mit der aufgelösten Datei überschreiben können.
  • Da viele Salesforce-Entwicklungsteams der Ansicht sind, dass die Versionskontrollfunktionen von Salesforce recht begrenzt sind, entscheiden sie sich häufig für ein Versionskontrollsystem eines Drittanbieters. Das beliebteste Versionskontrollsystem für Salesforce ist derzeit Git, mit dem Entwickler alle Branches (Arbeitslinien) und Commits (gespeicherte Punkte in der Historie) überwachen und Konflikte lösen können.

Einführung bewährter Verfahren zur Risikominderung

Aktive Zustellbarkeitseinstellungen und Validierungsregeln, übermäßig lockere Bereitstellungsrichtlinien und fehlende Rollback-Funktionen sind Schlüsselfaktoren, die sich negativ auf den Bereitstellungsprozess auswirken können und daher mit der nötigen Sorgfalt behandelt werden sollten.

  • Wenn neue Metadaten in der Produktion bereitgestellt werden, müssen Sie möglicherweise zusätzliche manuelle Aufgaben durchführen, z. B. benutzerdefinierte Metadaten aktualisieren, Apex-Skripte zum Ändern von Daten ausführen und Änderungen in der Produktionsumgebung testen. Um reibungslose Prozesse nach der Bereitstellung zu gewährleisten, ohne Live-Daten zu beeinträchtigen oder Kunden mit unnötigen Benachrichtigungen zu belästigen, sollten Sie die Deaktivierung von E-Mail-Zustellbarkeitseinstellungen, bestimmten Validierungsregeln oder anderen Konfigurationen in Betracht ziehen, die Ihre Schritte nach der Bereitstellung beeinträchtigen könnten.
  • Administratoren sollten die Anzahl der Benutzer, die über Berechtigungen zur Bereitstellung verfügen, begrenzen, um die Exposition der Organisation und das Risiko versehentlicher Änderungen zu minimieren. Zu den Berechtigungen, die besondere Aufmerksamkeit erfordern, gehören die Profilberechtigung "Anwendung anpassen" (die die Änderung einer Organisation erlaubt) und die Berechtigung "Metadaten-API-Funktionen" (die den Zugriff auf Metadaten über die API erlaubt).
  • Salesforce-Organisationen speichern keine früheren Zustände und zugehörigen Metadaten, was bedeutet, dass von Ihnen bereitgestellte Änderungen nicht rückgängig gemacht werden können. Um zu einer früheren Konfiguration zurückzukehren und den Verlust von Daten und Metadaten zu verhindern, sollten Sie eine Sicherungs- und Wiederherstellungsstrategie anwenden. Dazu gehört, dass Sie sicherstellen, dass alle in einer Organisation bereitgestellten Änderungen in Ihrem Versionskontrollsystem vorhanden sind, sodass Sie zu Ihrem letzten Commit zurückkehren und die vorherige Version des Codes bereitstellen können. Sie können auch zusätzliche Kopien Ihrer Produktionsorganisation erstellen, wenn sich die Bereitstellung auf die Daten auswirkt (z. B. durch das Entfernen benutzerdefinierter Felder oder das Ändern von Feldtypen).

Einrichtung einer CI/CD-Pipeline

Durch die Anwendung bewährter CI/CD-Verfahren bei der Salesforce-Bereitstellung können Sie kleine Änderungspakete häufiger testen, integrieren und bereitstellen.

  • Richten Sie eine CI/CD-Pipeline ein, um neue Änderungen bereitzustellen, sobald sie entwickelt und getestet sind, anstatt sie alle auf einmal zu veröffentlichen. Dies hilft den Entwicklern, Bugs und Abhängigkeitsprobleme zu minimieren, d. h. Änderungen an einer Systemkomponente, die sich auf andere Teile auswirken.
  • Mit Salesforce Developer Experience, einer Reihe von Tools, die die Entwicklung auf der Salesforce-Plattform erleichtern, können Sie den CI/CD-Prozess mithilfe von Scratch-Organisationen rationalisieren. Dabei handelt es sich um kurzlebige Einwegumgebungen, die nach einer gewissen Zeit automatisch gelöscht werden. Scratch-Organisationen ermöglichen die schnelle Bereitstellung von Salesforce-Code und Metadaten zum Testen und Integrieren kleiner Änderungspakete.
  • Entwickler müssen sicherstellen, dass Codeänderungen, die sie regelmäßig in ein Quellcode-Repository integrieren, keine Bugs enthalten. Sie können integrierte CI/CD-Tools von Drittanbietern wie CircleCI, Jenkins und Travis CI verwenden, um neue Änderungen automatisch zu testen, die Codeabdeckung zu überprüfen und solche Änderungen in einer Zielumgebung bereitzustellen.
Continuous integrationContinuous deploymentContinuous deliveryChange set-based developmentDX Dev HubPackaged-based developmentDevelopmentDev SBXDev SBXDev SBXScratch orgScratch orgScratch orgIntegration/QADev pro SBXtestsDev pro SBXmergecommitUATPartial SBXtestsPartial SBXStagingFull SBXtestsPRODDataLoaderApp
lifecycle managementVersion control system (Repo)RepositoryGit DXUI for compare

Titel des Schemas: Ein Salesforce CI/CD-Workflow
Datenquelle: wilsonmar.github.io-Salesforce DX (Developer eXperience) deep dive

Vorteile der Befolgung bewährter Verfahren zu Bereitstellung

Bessere Transparenz des Bereitstellungsprozesses
für Entwickler und Administratoren durch Versionskontrolle

Minimierte Unterbrechung der Geschäftsprozesse
und verbesserte Benutzererfahrung durch transparentes Release-
Management

 

Kostenoptimierung
durch die Definition eines geeigneten Satzes von Sandboxes und die Reduzierung des Aufwands für Tests,
Integration und Bereitstellung dank automatisierter Prozesse

Reduzierte technische Risiken
durch getrennte Entwicklungsumgebungen, mehrere Testschritte,
strenge Richtlinien für die Erlaubnis zur Bereitstellung und eine robuste Backup-Strategie

Schnellere Release-Zyklen
durch optimale Sandbox-Auswahl, zusammen mit CI/CD-Verfahren
und damit verbundenen Tools zur Automatisierung von Tests und Bereitstellung

 

Vorteile

Unsere Salesforce-Dienstleistungen

Als zertifizierter Salesforce-Partner begleitet Itransition Unternehmen bei der Einführung von Salesforce und hilft bei der Bewältigung technischer Probleme und geschäftlicher Herausforderungen.

Beratung

    • Aktuelle Salesforce-Systemprüfung
    • Auswahl der richtigen Salesforce-Edition & -Funktionen
    • Konzeptualisierung von Salesforce-Lösungen
    • Projektplanung & Budgetierung
    • Beratung bei Konfiguration & Anpassung
    • Integrations- & Migrationsberatung
    • Benutzerschulung & Support
      • Salesforce-Anpassung & -Konfiguration
      • Salesforce-Bereitstellung in Ihrer Produktionsumgebung
      • Integration mit Ihrer Unternehmenssoftware
      • QA & Benutzerakzeptanztests
      • Migration älterer CRM-Daten zu Salesforce

      Beauftragen Sie Itransition als Ihren Partner für die Einführung von Salesforce

      Kontaktieren Sie uns

      Koordinierung, Transparenz und Automatisierung für eine problemlose Bereitstellung

      Dank der umfangreichen Anpassungsmöglichkeiten von Salesforce können Unternehmen die Funktionen der Plattform an ihre spezifischen Geschäftsanforderungen anpassen. Die Anpassung von Salesforce kann jedoch aufgrund der zahlreichen, über verschiedene Umgebungen verteilten Codierungs-, Test- und Bereitstellungsprozesse sowohl aus technischer als auch aus organisatorischer Sicht eine große Herausforderung darstellen. Zur Bewältigung dieser Herausforderungen und zur erfolgreichen Umsetzung von Änderungen unterstützen Sie die Experten von Itransition bei der Implementierung von Tools und Prozessen zur Koordination von Workflows in verschiedenen Sandboxes, beim Testen und Verfolgen von Änderungen und bei der Automatisierung Ihrer CI/CD-Pipeline.

      Professionelle Dienstleistungen und Produktkenntnisse von Salesforce

      Dienst

      Professionelle Dienstleistungen und Produktkenntnisse von Salesforce

      Salesforce Einstein: KI-Funktionen,
Fallstudien und Leitlinien zur Einführung

      Einblicke

      Salesforce Einstein: KI-Funktionen, Fallstudien und Leitlinien zur Einführung

      Salesforce-Datenmigration: eine schrittweise Anleitung, Top-Tools und bewährte Verfahren

      Dienst

      Salesforce-Datenmigration: eine schrittweise Anleitung, Top-Tools und bewährte Verfahren

      Salesforce CRM-Implementierung für ein Immobilienunternehmen

      Fallstudie

      Salesforce CRM-Implementierung für ein Immobilienunternehmen

      KI im CRM:
Die wichtigsten Anwendungsfälle, beste Plattformen und Richtlinien

      Einblicke

      KI im CRM: Die wichtigsten Anwendungsfälle, beste Plattformen und Richtlinien

      Salesforce CRM für eine US-Buyout-Agentur für Versicherungen

      Fallstudie

      Salesforce CRM für eine US-Buyout-Agentur für Versicherungen