Inleiding
Als Salesforce-engineer of -consultant is de keuze tussen het maken van beheerde of
onbeheerde pakketten een strategische beslissing die uw workflows en
applicatielevenscyclus op Salesforce aanzienlijk kan beïnvloeden. Deze gids gaat
dieper in op elk type pakket en biedt inzicht in hun gebruikssituaties, voordelen en
overwegingen, zodat u een weloverwogen keuze kunt maken op basis van uw specifieke
behoeften.
Wat zijn beheerde en onbeheerde pakketten?
Managed Packages worden meestal gemaakt door Salesforce-partners en
zijn beschikbaar via de Salesforce AppExchange. Ze worden geleverd met een naamruimte
die ze volledig isoleert van uw org en andere pakketten, zodat er geen naamconflicten
ontstaan tussen Salesforce-organen, maar dat heeft zijn eigen beperkingen.
Unmanaged Packages worden vaak gebruikt om open-source projecten of
sjablonen te distribueren die door ontwikkelaars kunnen worden aangepast. Ze bevatten
geen naamruimte, waardoor ze volledig bewerkbaar zijn, maar ook vatbaar voor
naamconflicten. Onbeheerde pakketten zijn een geweldige manier om versiebeheer uit te
voeren voor het aanpassen en ontwikkelen van je org, terwijl het toch vrij
toegankelijk blijft, zodat je ook kunt verwijzen naar metadata en code die al op je
doelorg bestaat.
Als je Tekunda gebruikt, kun je ook metadata en code gebruiken die al op je doelorg
bestaat.
Bij Tekunda hebben we het beheer en de release van zowel Managed als Unmanaged
packages vereenvoudigd met Tekunda Serpent. Onze tool maakt het beheer van metadata en
pakketten moeiteloos, zodat u zich kunt richten op innovatie in plaats van op
administratieve taken. Klaar om uw Salesforce ontwikkelervaring te stroomlijnen?
Sluit u nu aan bij onze beperkte wachtlijst
en wees een van de eersten die uw workflow kan transformeren met Tekunda Serpent!
Gedetailleerde vergelijking
Configuratie en aanpassing
-
Beheerde pakketten
-
Gebruiksgevallen: Ideaal voor toepassingen zoals integraties
met derden of het uitbreiden van Salesforce met een op zichzelf staand pakket.
Bijvoorbeeld voor het maken of installeren van een kant-en-klare
marketingautomatiseringstool of klantenserviceapplicatie.
-
Voordelen: Ze zijn vergrendeld, wat betekent dat de
kerncomponenten niet kunnen worden gewijzigd, waardoor de integriteit en
ondersteuning van de leverancier is gewaarborgd.
-
Overwegingen: Beperkte aanpassingen zijn mogelijk niet geschikt
voor alle bedrijfsspecifieke behoeften.
-
Onbeheerde pakketten
-
Gebruiksgevallen: Het best te gebruiken wanneer een oplossing
op maat nodig is, zoals het ontwikkelen van een applicatie op maat voor uw
bedrijfsprocessen of het maken van sjablonen die kunnen worden aangepast voor
verschillende klantinstellingen.
-
Voordelen: Volledige toegang tot de code stelt ontwikkelaars in
staat om elk aspect van het pakket aan te passen aan hun exacte vereisten.
-
Overwegingen: Vereist meer diepgaande kennis van
Salesforce-ontwikkeling en kan leiden tot langere implementatietijden.
Ondersteuning en onderhoud
-
Beheerde pakketten
-
Bied leveranciersondersteuning, regelmatige updates en compatibiliteitsgaranties
met nieuwe Salesforce-releases, waardoor de administratieve last voor de
klant/gebruiker wordt verminderd.
-
Onbeheerde pakketten
-
Onderhoud en updates zijn de verantwoordelijkheid van de klant/gebruiker, wat de
werklast voor hun IT-team kan verhogen, waardoor ze ideaal zijn voor interne en
consultingprojecten.
Deployment en updates
-
Beheerde pakketten
-
Snel te implementeren omdat ze vooraf geconfigureerd zijn. Updates worden
afgehandeld door de leverancier en worden naadloos uitgerold naar de
klant-/gebruikersomgeving.
-
Onbeheerde pakketten
-
Verplicht zorgvuldige integratie en testen, vooral tijdens updates, om ervoor te
zorgen dat ze niet interfereren met bestaande aanpassingen.
Het juiste pakket voor uw behoeften kiezen
Bij het kiezen tussen beheerde en onbeheerde pakketten, overweeg:
-
Projectcomplexiteit en aanpassingsbehoeften: Als uw project
uitgebreide aanpassingen vereist, is onbeheerd misschien de juiste keuze. Voor op
zichzelf staande projecten kunnen beheerde pakketten tijd en moeite besparen.
-
Beschikbaarheid van middelen: Beschikt u over deskundig personeel
om de potentiële complexiteit van onbeheerde pakketten te beheren?
-
Budgettaire beperkingen: Beheerde pakketten lijken in eerste
instantie misschien duurder, maar houd rekening met de totale eigendomskosten,
inclusief onderhoud en toekomstige upgrades.
-
Tijd tot de markt: Beheerde pakketten zorgen voor een snellere
implementatie, wat cruciaal kan zijn voor tijdgevoelige projecten.
CI/CD Implicaties voor beheerde en onbeheerde pakketten
Continue Integratie en Continue Implementatie (CI/CD) zijn kritieke onderdelen van
moderne softwareontwikkeling, vooral in dynamische omgevingen zoals Salesforce. De
keuze tussen beheerde en onbeheerde pakketten kan belangrijke gevolgen hebben voor uw
CI/CD-strategieën.
CI/CD in het ontwikkelen van Beheerde pakketten
Managed packages worden meestal gemaakt door ontwikkelaars die hun
applicaties willen distribueren op Salesforce AppExchange, vaak met het oog op
commercialisatie. Hier zijn de belangrijkste overwegingen voor CI/CD:
-
Versiebeheer en releasebeheer: Beheerde pakketten moeten voldoen
aan de upgrade- en releasebeheerprocessen van Salesforce, die meer gestructureerd
zijn om compatibiliteit en ondersteuning te garanderen. Ontwikkelaars moeten
versiebeheer nauwgezet uitvoeren, omdat pakketversies onveranderlijk zijn als ze
eenmaal zijn vrijgegeven.
-
Namespace Prefix: Elk beheerd pakket heeft een namespace prefix die
het uniek identificeert binnen alle Salesforce orgs. Deze naamruimte moet zorgvuldig
worden beheerd in bronbeheer om consistentie in ontwikkel- en productieomgevingen te
garanderen.
-
Beta Testing en patchversies: CI/CD-pijplijnen voor beheerde
pakketten omvatten vaak het maken van bètaversies voor testen en patchversies voor
het oplossen van problemen na de release. Automatisering van deze processen helpt de
stabiliteit van het pakket te behouden.
-
Licentiebeheer: Integratie van licentieraamwerken is essentieel
voor beheerde pakketten, vooral als ze commercieel zijn. Uw CI/CD-proces moet
mogelijk stappen bevatten voor het bijwerken van licentiemechanismen als onderdeel
van de deployment pijplijn.
CI/CD bij het ontwikkelen van onbeheerde pakketten
Unmanaged packages zijn flexibeler en worden vaak gebruikt voor
aangepaste projecten binnen een specifieke org of voor het distribueren van
open-source projecten waarbij de ontwikkelaar geen eigendomsrechten behoudt.
CI/CD-overwegingen zijn onder andere:
-
Volledige controle over code: Ontwikkelaars hebben volledige
controle over de broncode, waardoor het gemakkelijker is om CI/CD-praktijken zoals
geautomatiseerd testen, stijlcontroles en kwaliteitsbeoordelingen van code zonder
beperkingen te implementeren.
-
Flexibiliteit in updates: Met onbeheerde pakketten kunnen
ontwikkelaars op elk moment direct updates en wijzigingen toepassen, ter
ondersteuning van agile ontwikkelpraktijken. Automatiseringstools kunnen worden
gebruikt om de implementatie van nieuwe functies en fixes te stroomlijnen.
-
Geen naamruimtebeheer: Het ontbreken van een naamruimte in
onbeheerde pakketten vereenvoudigt sommige aspecten van versiebeheer en
broncodebeheer, waardoor de overhead bij het beheren van deze elementen in
CI/CD-pijplijnen wordt verminderd.
-
Aangepaste implementatiescripts: Ontwikkelaars kunnen aangepaste
scripts maken en CI/CD-tools zoals Jenkins, CircleCI of GitHub Actions gebruiken om
de build- en deploymentprocessen te automatiseren, afgestemd op hun specifieke
organisatorische behoeften.
De juiste strategie kiezen
Kiezen tussen het ontwikkelen van een beheerd of onbeheerd pakket hangt vaak af van de
beoogde use case en distributiestrategie:
-
Commerciële distributie: Als je van plan bent om je applicatie op
de AppExchange te verkopen, is een beheerd pakket noodzakelijk. Uw CI/CD-pijplijnen
moeten strenge tests en nalevingscontroles ondersteunen om te voldoen aan de
Salesforce-standaarden.
-
Intern gebruik of open source: Voor pakketten die bedoeld zijn voor
intern gebruik of open-source distributie zonder commerciële bedoelingen, bieden
onbeheerde pakketten meer flexibiliteit en eenvoudiger integratie in
gepersonaliseerde CI/CD-workflows.
-
Beoordeel complexiteit: Overweeg de complexiteit van uw
Salesforce-omgeving. Een eenvoudige omgeving kan goed overweg met beheerde
pakketten, terwijl een complexe, sterk aangepaste omgeving meer baat zou kunnen
hebben bij onbeheerde pakketten.
-
Evalueer de teamvaardigheden: Zorg ervoor dat uw team over de
vereiste vaardigheden beschikt om het gekozen type pakket binnen CI/CD-pijplijnen te
beheren. Onbeheerde pakketten vereisen robuuste DevOps-vaardigheden om hun
flexibiliteit volledig te benutten.
-
Bedenk onderhoud op lange termijn: Evalueer hoe elke optie het
onderhoud en de schaalbaarheid op lange termijn beïnvloedt. Beheerde pakketten
verminderen de onderhoudslast maar gaan ten koste van de flexibiliteit, terwijl
onbeheerde pakketten flexibiliteit bieden maar voortdurend onderhoud vereisen.
Conclusie
Zowel beheerde als onbeheerde pakketten bieden duidelijke voordelen voor
Salesforce-beheerders en -ontwikkelaars. Door uw organisatorische behoeften,
beschikbare resources en langetermijnstrategie zorgvuldig te evalueren, kunt u een
pakket kiezen dat niet alleen voldoet aan uw directe vereisten, maar ook de groei en
evolutie van uw Salesforce-omgeving ondersteunt.
Maak een weloverwogen keuze die uw team in staat stelt Salesforce effectiever in te
zetten, zodat u de voordelen van het platform maximaliseert en tegelijkertijd voldoet
aan uw bedrijfsdoelstellingen.
Bij Tekunda hebben we het beheer- en releaseproces van zowel beheerde als onbeheerde
pakketten vereenvoudigd met Tekunda Serpent. Onze tool maakt het beheer van metadata
en pakketten moeiteloos, zodat u zich kunt richten op innovatie in plaats van
administratieve taken. Klaar om uw Salesforce ontwikkelervaring te stroomlijnen?
Sluit u nu aan bij onze beperkte wachtlijst
en wees een van de eersten die uw workflow kan transformeren met Tekunda Serpent!