Lue päivitysaikatauluistamme tästä.
Järjestelmät toimivat automaattisesti sallimalla yrityksen saavuttaa tärkeimmät tavoitteet ja tavoitteet nopeammin ja laajalti. Terveellinen automatisointi sallii käyttäjien keskittyä arvokkaisiin töihin ja vähentää toistuvien, manuaalisten tehtävien tai monimutkaisten tietojen syöttämiseen käytettyä aikaa.
Tavallisesti automatisointi tarkoittaa liiketoimintaprosessien kääntämistä lomakkeesta toiseen: paperilomakkeesta digitaaliseen lomakkeeseen, vanhasta järjestelmästä uuteen. Jokaisen liiketoimintaprosessin käännöksen mukana tulee mahdollisuus transformaatioon.
Transformaatio ei tarkoita uusien teknologioiden käyttämistä häiritsevien ja hämmentävien muutosten tekemiseen käyttäjille. Transformaatio tarkoittaa yksinkertaisempien tapojen luomista töiden suorittamiseksi, liiketoiminnan kasvattamiseksi ilman hankaluuksia ja liiketoimintakäyttäjien auttamiseksi keskittymään tarkemmin siihen, mikä on todella tärkeää sidosryhmilleen. Arkkitehtuurisesta näkökulmasta tämä sisältää tehtävien tunnistamisen, jotka voidaan poistaa kokonaan tai käsitellä automaattisesti. Se vaatii selkeän yhteyden teknologian käytön ja sen mitattavissa olevan vaikutuksen liiketoimintaan.
Huomaa jotain tärkeää Salesforcen automatisoinnissa: se voidaan tehdä useilla eri työkaluilla, käyttämällä ohjelmallisia ja deklaratiivisia taitojoukkoja. Hyvin rakennettujen automatisointien suunnitteleminen ei koske vain yhden automatisointityökalun rakentamista. Se koskee yhdenmukaisten ja ennustettavien lähestymistapojen käyttämistä ja tiimien mahdollistamista kehittää, testata, ottaa käyttöön ja ylläpitää suunnittelemiasi automaatioita. Automatisointisi tulisi olla mahdollisimman hallittavissa ja luettavissa.
Tässä osiossa kerrotaan, miten suunnitellaan ja ohjataan automatisointeja, jotta yritykset voivat saavuttaa tärkeimmät tavoitteet nopeammin ja laajalti. Voit parantaa automaatioidesi arkkitehtuuria Salesforcessa keskittymällä tehokkuuteen ja datan eheyteen.
Automatisointisi tehostaminen ei tarkoita liiketoiminnan luomista uudelleen tavalliseen tapaan Salesforce-teknologioiden avulla. Se tarkoittaa, että ymmärrät syvällisesti tärkeimmät tilastot ja liiketoiminnan lopputulokset, joita tiimit ovat vastuussa kokouksista tai seurannasta, ja voit palata takaisin nähdäksesi automatisoitavien töiden sisällä ja niiden sisällä olevat toiminnalliset yksiköt. Kyse on siitä, miten voit luoda automaatioiden avulla kuvioita, joiden avulla yritys voi toimia tehokkaammin ja nopeammin ja laajalti.
Tehokas automatisointilogiikka auttaa järjestelmiäsi:
- Skaalattava ja arvokkaampi yritykselle
- Käyttäjille hyödyllisempi
- Sovittavampi ja pystyy vastaamaan kehittyviin liiketoimintatarpeisiin
Voit parantaa automatisointisi tehokkuutta prosessien suunnittelun ja toiminnallisen logiikan avulla.
Prosessien suunnittelu käsittää työn suorittamisen tavan määrittämisen. Todellisen tehokkaiden ja tehokkaiden prosessien rakentaminen tarkoittaa, että suunnittelusi eivät vain toista nykyisiä toimintatapoja. Ei-aktiivisten tai epäselvien vaiheiden tunnistaminen ja poistaminen on tärkeää. Optimoitujen prosessien tulisi luoda mitattavissa olevaa liiketoiminta-arvoa (katso KPI) ilman tarpeettomia vaiheita. Epäselvät tai tarpeettomat toimenpiteet aiheuttavat todennäköisesti teknistä velkaa ja aiheuttavat kestämättömiä automatisointeja.
Liiketoimintaprosessien löytämisestä ja dokumentoinnista vastaa usein liiketoiminta-analyytikko tai jopa järjestelmän pääkäyttäjä. Arkkitehdit ovat vastuussa yhteistyöstä tiimisi näiden jäsenten kanssa varmistaakseen, että prosessisuunnitelmasi ovat teknisesti järkeviä ja hyvin rakenteellisia. Salesforce Platform Knowledgen käyttöönotto mahdollisimman varhaisessa vaiheessa auttaa tiimiäsi tunnistamaan prosessit, jotka tulisi virtaviivaistaa automatisoinnin avulla, tai prosessit, joita täytyy muuttaa kustannustehokkaiden mukautusten välttämiseksi.
Ota huomioon seuraavat seikat, kun rakennat optimoituja prosesseja Salesforcelle:
-
Määritä prosessit huolellisesti. Prosessit, joiden käyttötarkoitus on epätarkka tai joiden määritelmät ovat epätarkkoja, tulkitaan todennäköisemmin väärin suunnittelun aikana. Tämä johtaa oletuksiin perustuviin virheellisiin rakenteisiin, mikä aiheuttaa virheellisiä tai tehottomia automatisointeja. Varmista, että automatisoitavat liiketoimintaprosessit täyttävät seuraavat standardit:
- Rajattu yhteen tiettyyn toimintoon (katso toiminnalliset yksiköt)
- sisältää selkeästi määritettyjä mitattavissa olevia tuloksia (katso liiketoiminnan arvo)
- Sisältää selkeästi input- ja output-arvot
-
Tee prosessin vaiheet selväksi.* Vaikka voi joskus olla houkuttelevaa lisätä lisävaiheita, jotka saattavat olla hyödyllisiä tulevaisuudessa, tämä ei ole koskaan hyvä lähestymistapa. Automatisoinnin jokainen vaihe on relevantti kokonaisprosessin lopputulokseen. Varmista, että prosessin jokaisella vaiheella on seuraavat ominaisuudet:
- Suorittaa tarkkaan määritetyn tehtävän (katso yhdistettävä)
- Pakollinen prosessin luomiseksi määritetyn tuloksen (poista kaikki ei-olennaiset vaiheet)
- Voidaan suorittaa käyttämällä vain vähän resursseja
- Käyttää olemassa olevaa järjestelmädataa sen sijaan, että käyttäjätä pyydettäisiin syöttämään tietoja aina, kun se on mahdollista (katso lisätietoja kohdasta osallistuminen)
- Tarjoaa syöttövaihtoehtoja, joita käyttäjät voivat ymmärtää tietämättä, miten niiden järjestelmät toimivat (Katso hyödyllinen)
Alla oleva kuvioiden ja antikuvioiden luettelo näyttää, miltä oikea (ja huono) optimointi näyttää Salesforce-organisaatiossa. Voit käyttää niitä vahvistaaksesi automatisointisuunnitelmasi ennen niiden rakentamista tai tunnistaaksesi automatisoinnit, jotka täytyy optimoida tarkemmin.
Lisätietoja Salesforcesta saatavilla olevista prosessien automatisointityökaluista on kohdassa Automatisointiin liittyvät työkalut.
Toimintologiikka käsittelee, miten tehokkaasti prosessi käännetään sen suunnittelusta todelliseen toteutukseen. Automatisoinnit, joilla on vahva toimintalogiikka, toimivat edelleen hyvin, riippumatta transaktioiden määrän noususta tai samanaikaisten esiintymien määrästä. Loogisesti sanottuna automaatiot auttavat yrityksiä skaalautumaan helpommin toimimaan korkeammalla kysynnällä. Vahvan toimintalogiikan rakentaminen automaatioihisi liittyy suoraan järjestelmäsi yleiseen luotettavuuteen.
Automatisoinnit, jotka eivät toimi tehokkaasti, tarjoavat huonoa käyttäjä- ja asiakaskokemusta, mikä johtaa sekä mahdollisiin tuottomääriin että asiakkaan Trustin menettämiseen. Niillä on myös korkeammat huoltokustannukset ja niistä voi tulla pullonkaulakohteita, jotka viivästyttävät asiaan liittyviä prosesseja, mikä aiheuttaa ongelmia järjestelmän suorituskyvyssä.
Ota huomioon seuraavat seikat luodaksesi tehokasta toimintalogiikkaa automaatioissa:
- Varmista, että kaikki automatisointeja luovat tietävät oikean tavan tehdä niin. Minkä tahansa automatisointityökalun avulla voi tehdä huonoja suunnitteluvaihtoehtoja. Koodi ei ole yhtä altis virheille tai huonoille toteutusvaihtoehdoille kuin napsautuksiin perustuvat työkalut. Esimerkiksi kovakoodattujen viitetunnusten käyttö on kulussa ja koodissa näytetty antikuvio. Napsautuksiin perustuvia työkaluja ei tulisi pitää lisenssinä, joka sallii kenenkään julkaista automatisointia tuotantoympäristössä. Jokaisen tiimin jäsenen, joka luo automatisoinnin, täytyy tietää, miten se rakennetaan oikein. Lisätietoja tehokkaiden standardien määrittämisestä ja soveltamisesta eri järjestelmissä on kohdassa lukemisen ja suunnittelun standardit.
- Dokumentoi kaikki suorituspolut selkeästi. Automatisointien lisääntynyt käyttö ei ainoastaan kasvatta mahdollisia datamääriä, vaan lisää myös suunnittelemattomia kutsujen konteksteja. Sinun täytyy ymmärtää, miten eri automaatioita voidaan kutsua, ja varmistaa, että transaktioiden asiaankuuluvat ohjaimet (katso datan käsittely) näytetään kaikissa automaatioissa, joilla on useita syöttöpisteitä. Esimerkiksi ruutukulkuja ei suoriteta joukkolatauksilla, mutta Apex ja käynnistetyt (ja automaattisesti käynnistetyt) kulut todennäköisesti. Automatisointien suunniteltujen ja mahdollisten suorituspolkujen selkeä dokumentointi on tärkeä osa sen ymmärtämistä, mitä loogisia ehtoja sinun täytyy huomioida toteutuksen aikana.
- ”Bulkify” kaikki datatoiminnot (mukaan lukien SOQL). Kaikki datatoiminnot (insert, update jne.) tulisi suorittaa kokoelmille. Aina. Ilman poikkeuksia. Tämä tarkoittaa ”bulkkaamista”. Vaikka sovellusalusta voi tukea singleton-datatoimintoja, sinun ei tulisi koskaan sallia singleton-kuvioiden käyttöönottoa.
- Käytä SOSL:ää hakutoiminnoissa. On virheellistä, että datatoimintoja ei voida suorittaa SOSL:n kautta palautetuille tietueille. DML:ää ei voi kutsua suoraan SOSL-tuloksia vastaan, mutta koodi voi jäsentää SOSL-tuloksia ja luoda kokoelman, johon voidaan viitata DML- tai Tietokanta-luokan metodeissa. SOSL:n ja SOQL:n tärkeimmät eroavaisuudet ovat niiden palautustyypit ja miten ne vastaavat yleistettyihin tai yleismerkkihakuihin. SOSL voi toimia useille sObject-tyypeille (joten palautustyyppi on erilainen) ja se voi käsitellä yleisiä ja yleisiä merkkijonojen hakuja tehokkaammin kuin SOQL.
- Käsittele SOQL:ää datatoimintona. Älä käytä SOQL:ää tietueiden hakemiseen — käytä sitä tarkentaaksesi datatoimintojasi. SOQL:llä ja datatoiminnoilla voi olla hyvin samankaltainen vaikutus perustana olevan suhdetietokannan suorituskykyyn. SOQL voi jopa välittää selkeän DML-indikaattorin, joka lukitsee tietokantaviivat datatoimintoja odotettaessa. Jos haluat luoda skaalattavat automatisoinnit, varmista, että käsittelet SOQL-kyselyä samalla tavalla: älä käytä sitä ilman hyvin tarkkoja ja hyvin muotoiltuja valintaehtoja, älä salli kenttien ulkopuolisia viitteitä ja vaadi kenttien välistä datatyyppien täsmäämistä ja suodattamaan syötettyjä tietoja
WHERE-lausekkeiden logiikassa. Koodillasi tulisi olla myös asianmukaiset asetukset varmistaaksesi, että kyselyä ei suoriteta koskaan ei-bulkatussa asiayhteydessä tai null- tai tyhjän suodatusehdon perusteella. - Pidä synkronointitoiminnot keskittyneinä vain käyttäjän auttamiseen reaaliajassa. Tunnista prosessin optimoinnin aikana logiikka, joka liittyy siihen, mitä käyttäjät tarvitsevat tehdä reaaliajassa tai lähes reaaliajassa ja mitä voidaan lykätä asynkroniseen (asynkroniseen) transaktioon. Lisätietoja synkronointi-/asynkronointitoimintojen suunnittelusta on kohdassa Datan käsittely.
Alla oleva kuvioiden ja antikuvioiden luettelo näyttää, miltä oikea (ja huono) toimintologiikka näyttää Salesforcen automatisoinnissa. Voit käyttää niitä vahvistaaksesi automatisointisuunnitelmasi ennen niiden rakentamista tai tunnistaaksesi automatisoinnit, jotka täytyy optimoida tarkemmin.
Lisätietoja Salesforcessa saatavilla olevista työkaluista, jotka voivat auttaa sinua suunnittelemaan skaalaa, on kohdassa Automaattisiin työkaluihin liittyvät työkalut.
Automatisoinnin KPI-mittarit mittaavat automatisoinnin vaikutusta ajan myötä. Ilman niitä et voi tietää, lisääkö automatisointi todellakin liiketoiminta-arvoa vai aiheuttaako se käyttäjillesi tarpeetonta monimutkaisuutta. Jokaisen rakentamasi automatisoinnin tulisi olla sidoksissa selkokielisiin ja mitattavissa oleviin KPI-mittareihin.
Hyvät KPI-mittarit määritetään mitattavalla arvolla ja siihen liittyvällä ajanjaksolla. Esimerkkejä ovat:
- [X-luku] tallennettuja työaikoja per kuukausi
- Manuaalisen datan syöttämisen käsittelyvirheitä vähennetty [Y%] per viikko
Kun sinulla on selkeät ja mitattavissa olevat suorituskykyindikaattorit, sinun täytyy myös ymmärtää, luovatko Salesforcen automatisointi tietoja, jotka ovat relevantteja näiden suorituskykyindikaattoreiden raportointiin.
Alla oleva kuvioiden ja antikuvioiden luettelo näyttää, miltä oikeat (ja heikot) KPI-mittarit näyttävät Salesforcen automatisoinnissa. Voit käyttää niitä vahvistaaksesi olemassa olevat KPI-mittaristosi tai tunnistaaksesi, missä sinun täytyy tunnistaa KPI-mittarit paremmin ennen niiden laatimista.
Lisätietoja Salesforcen käytettävissä olevista työkaluista, jotka auttavat KPI-mittareissa, on kohdassa Automaattisiin työkaluihin liittyvät työkalut.
Seuraava taulukko näyttää valikoiman kuvioita, joita haluat etsiä (tai rakentaa) organisaatiossasi, sekä vasta-kuvioita, joita haluat välttyä tai joilla haluat korjata.
✨ Tutustu tehokkuutta parantaviin kuvioihin kohdasta Kuvioiden ja vastaisten kuvioiden tutkintaohjelma.
| Kuvakkeet | Kuvioiden estäminen | |
|---|---|---|
| Prosessien suunnittelu | Organisaatiossasi:
- Jokainen kulku tarjoaa yksittäisen käyttötarkoituksen - Jokainen vaihe suorittaa tietyn, tarkkaan määritetyn tehtävän - Kulut on järjestetty hierarkkiseen rakenteeseen, joka koostuu pääkulusta ja tukevista alakulkuista - Kaikilla käyttäjien syöttämillä tiedoilla on selkeä käyttötarkoitus kulussa - Käyttäjiä pyydetään antamaan tietoja vain, kun olemassa olevaa järjestelmädataa ei voida käyttää |
Organisaatiossasi:
- Kulut tarjoavat useita käyttötarkoituksia ja vaativat lisätietoja asiayhteyden tarjoamiseksi - Kulut vaativat syötteitä, joiden dataa ei käytetä - Asiaan liittyvien vaiheiden ryhmät sisältävät toimintoja, jotka limittyvät muiden kulkujen vaiheiden ryhmien kanssa - Kulut pyytävät käyttäjiä syöttämään tietoja, kun tallennettua dataa voidaan käyttää sen sijaan |
| Apexissa:
- Jokainen luokka tarjoaa yksittäisen käyttötarkoituksen - Jokainen metodi suorittaa tietyn, tarkkaan määritetyn tehtävän - Kaikilla input-muuttujilla on selkeä käyttötarkoitus luokassa - Koodin suorittaminen vaatii vähimmäismäärän resursseja |
Apexissa:
- Luokat tarjoavat useita käyttötarkoituksia - Metodit suorittavat useita tehtäviä tai metodit suorittavat tehtäviä, jotka eivät vastaa luokan määritettyä käyttötarkoitusta, johon ne kuuluvat. - Input-muuttujia ei käytetä metodeissa. - Metodit noutavat tietoja tarpeettomasti tietokannasta tai ulkoisista järjestelmistä |
|
| Toimintologiikka | Kulussa:
- Ei muuttujia, jotka viittaisivat kovakoodattuihin arvoihin (tietuetyypeille, käyttäjille jne.) - Kaikki automaattisesti käynnistyvät kulut ja prosessit käyttävät päätös- ja/tai keskeytyselementtejä arvioidakseen syöttöehdot ja estääkseen loputtomia silmukoita tai suorituksia suurille datamääriin - Kulut (mukaan lukien prosessit) käsittelevät Apexin logiikkaa suurissa datamäärien asiayhteyksissä - Alakulkuja käytetään prosessien osioissa, joita täytyy käyttää uudelleen yrityksessä. |
Kulussa:
- Muuttujilla on kovakoodatut arvot - Kulut (mukaan lukien prosessit) täytyy deaktivoida manuaalisesti ennen datan joukkolatausta - Kulut (mukaan lukien prosessit) käynnistävät käsittelemättömien poikkeusten ilmoitukset - Jopa yksinkertaiset kulut aiheuttavat säännöllisesti virheitä hallintarajoituksiin liittyen - Kulun osia toistetaan kuluissa alakulkujen sijaan |
| Apexissa:
- Ei muuttujia, jotka viittaisivat kovakoodattuihin arvoihin (tietuetyypeille, käyttäjille jne.) - Kaikki yleismerkkien ehdot näytetään SOSL:ssä - SOQL on kytketty kokeiluun
- Silmukan sisällä ei näytetä SOQL:ää - SOQL-lausunnot ovat valikoivia, mukaan lukien: -- ei käytetä LIKE-vertailuja tai osittaisia tekstin vertailuja
-- vertailuoperaattorit käyttävät positiivista logiikkaa (eli sisältää, IN) ensisijaisena tai ainoana logiikkana
-- käyttöä = NULL, != NULL on harvinaista ja/tai se noudattaa aina positiivista vertailuoperaattoria
-- ei näy mitään LIMIT 1 -lausekkeita
-- ei käytössä ole avainsanaa ALL ROWS
| Apexissa:
- Muuttujilla on kovakoodatut arvot - SOSL:ää käytetään harvoin tai ei jatkuvasti yleismerkin valintaehdoissa - SOQL-kyselyä ei sisällytetä kokeiluun
- SOQL näytetään silmukoissa - SOQL-lausunnot eivät ole valikoivia, mukaan lukien: -- Näytetään LIKE- ja yleismerkkien suodatusehdot
-- Vertailuja, jotka käyttävät ehtoja NOT, NOT IN, käytetään ensisijaisena tai ainoana vertailuoperaattorina
-- = NULL, != NULL-ehtoja käytetään ensisijaisena tai ainoana vertailuoperaattorina
-- LIMIT 1 -lausekkeet avautuvat
-- Käytetään avainsanaa ALL ROWS
| |
| Suunnittelun standardeissasi ja dokumentaatiossasi:
- Automatisointien suunnitellut ja mahdolliset suorituspolut on kuvattu selkeästi - Synkronoitujen ja ei-synkronoitujen toimintojen käyttöskenaariot automaatioissa on kuvattu selkeästi osana suunnittelun standardeja |
Suunnittelun standardeissasi ja dokumentaatiossasi:
- Automatisoinnin kutsua ei ole dokumentoitu - Synkronoitujen ja ei-synkronoitujen operaatioiden käyttötarkoituksia ei käsitellä |
|
| KPIs | Dokumentaatiossasi:
- Jokaisen automatisoinnin tulokset ovat mitattavissa ja ajoitettuja - Kullekin KPI-mittarille näytetään vastuulliset sidosryhmät |
Dokumentaatiossasi:
- KPI-mittareita ei ole olemassa automaatioille tai niillä ei ole selkeitä ajanjaksoja mittauksille - KPI:t eivät sisällä vastuullisia sidosryhmiä |
| Raporteissa ja mittaristoissa:
- Kaikki KPI-mittareihin liittyvät tilastot sisältyvät vähintään yhteen raporttiin tai mittaristoon |
Raporteissa ja mittaristoissa:
- KPI-raportointia ei ole olemassa tai raporteista puuttuu joidenkin KPI-mittareiden tilastoja |
Datan eheys määrittää, miten hyvin järjestelmä ylläpitää tarkkoja ja täydellisiä tietoja. Salesforce Platform ylläpitää vahvaa ja sisäänrakennettua käsittelylogiikkaa, joka on suunniteltu suojelemaan yksittäisen organisaation suhdetietokannassa säilytettyjen tietojen eheyttä. Yksi terveiden automatisointien rakentamisen perusteista on ymmärtää Salesforcen sisäänrakennetut datan eheyden toimintatavat ja varmistaa, että kaikki automatisointisuunnitelmasi noudattavat (ja hyväksyvät) näitä toimintatapoja.
Automatisoinnin suunnittelun suurimmat ongelmat johtuvat siitä, että et tunnista tehokkaita tietojen eheyspalveluita, joita Salesforce tarjoaa, tai siitä, että et käytä näitä palveluita hyödyntäviä vakiotoimintoja. Jos haluat suunnitella automaatioita, jotka suojaavat ja ylläpitävät datan eheyttä, sinun täytyy tuntea Salesforcen toimintajärjestyksen perusteet.
Datan eheyden laajentaminen mukautettuihin automaatioihin tarkoittaa, että järjestelmäsi voi:
- työstää suuria datamääriä ilman manuaalisia toimenpiteitä,
- noudata käyttäjien suojauskäytäntöjä tarvittaessa ja siirtyä järjestelmän kontekstiin tarvittaessa,
- kohdata virheitä suorituksen aikana ja noudattaa ennustettavia palautus- tai virhepolkuja.
Voit parantaa datan yhtenäisyyttä Salesforce-automaatioissasi asianmukaisen datan käsittelyn ja virheiden käsittelyn avulla.
Ensimmäinen vaihe tietojen asianmukaisen käsittelyn suunnittelemisessa Salesforcessa on ymmärtää, miten moniasiakasalusta käsittelee transaktiot. Tämä sisältää suoritustapojen sisäänrakennetun järjestyksen ymmärtäminen, jota Salesforce Platform käyttää tietojen eheyden varmistamiseksi tietuetason datatoimintojen aikana. Lisätietoja tämän toimintatavan vaikutuksista on Salesforce-arkkitehtuurin perusteiden aiheessa tietokannan manipulointi.
Automaatioiden heikko datan käsittely voi olla yksi vaikeimmista vastakuvioista, joita on vaikea tunnistaa ja korjata kokonaan. Sovellusalustan suoritusjärjestyksen rekurssi ja päällekkäisyys voivat vaikeuttaa ongelmien alkuperän havaitsemista. Koodin tai kulun tietty osio, joka aiheuttaa kohtalokkaan virheen tai ylittää hallintarajoitukset, ei välttämättä ole taustalla olevan datan käsittelyongelman perimmäinen syy.
Transaktioiden tietoisuus on tärkeää, jotta voit rakentaa automaatioita, jotka toimivat luotettavasti ja skaalautuvat Salesforcen kanssa. Tämä tarkoittaa, että varmistat, että automatisoinnin jokainen vaihe on suunniteltu Knowledgessa sen suhteesta sovellusalustan hallittuun suoritusjärjestykseen, että se voi suorittaa tehtävänsä oikein ja välittää tiedot seuraavaan vaiheeseen oikein.
Riippumatta käyttämästäsi automatisointityökalusta, oikea transaktioiden tietoisuus noudattaa samankaltaisia kuvioita ja vaatii yleisiä huomioitavia asioita:
- Oletetaan esimerkiksi, että kaikkia automaatioita pyydetään suorittamaan suuria datamääriä vastaan ilman erillistä ilmoitusta milloin tahansa. Automatisoinneilla tulisi olla polkuja, jotka sallivat erä- tai joukkotoiminnon (lisätietoja on kohdassa Skaalattavuus).
- Älä sekoita järjestelmä- ja käyttäjäkontekstien datatoimintoja samaan transaktioon.
- Varaa synkronointitietojen operaatiot ennen konteksteja ja käytä asynkronointitoimintoja kaikille kontekstien toiminnoille jälkeen.
- Käytä viestejä ja ilmoituksia välttyäksesi sovelluksen sisäisten käyttökokemusten luomiselta, jotka vaativat käyttäjää odottamaan dataa asynkronisen toiminnon tulosten perusteella.
Transaktioiden tietoisuuden lisäksi datan käsittelyssä on toinen ulottuvuus: tietäminen, milloin suorittaa logiikkaa eri suorituskonteksteissa. Yleisimpiä syitä automaatioiden pilkkomiseen eri suorituskonteksteihin ovat:
- Suuri määrä ja/tai monimutkaiset datatoiminnot
- Bulkifying-toiminnot eivät takaa, että automaatio käsittelee suuria datamääriä oikein. Jos automatisoinnin sisältämien datatoimintojen määrä ylittää transaktiokohtaiset rajoitukset, sinun täytyy suorittaa datatoimintoja käyttämällä suuria datamääriä koskevia ominaisuuksia (esimerkiksi erä-Apexin tai Bulk 2.0 API:n kautta). Niillä on erilliset transaktiorajoitukset, jotka soveltuvat suurille datamääreille.
- Datatoiminnot, joiden täytyy selata monimutkaisia suhdehierarkioita tai suorittaa monimutkaisia uudelleenlaskentoja (ei sisällä kaavakenttiä) tietueissa, voivat helposti ylittää transaktiokohtaiset rajoitukset, kun ne suoritetaan kerralla. Mieti, kuinka meluisa yhden tietueen päivitys on järjestelmän myöhempien toimintojen suorittamiseen tarvittavien datatoimintojen tai SOQL:n osalta.
- Automatisoinnin koko ketjuun liittyvät sObject-objektityypit saattavat vaatia, että jaat datatoiminnot erillisiin transaktioihin välttyäksesi ”DML-yhdistelmävirheiltä”.
- Logiikka, joka täytyy suorittaa käyttäjän tai järjestelmän asiayhteydessä
- Salesforce Platform noudattaa käyttäjän asiayhteydessä jakamista ja näkyvyyttä. Jos sinun täytyy suorittaa operaatioita, jotka ylittävät automatisointisi käyttäjien käyttöoikeustasot, sinun täytyy varmistaa, että ne suoritetaan järjestelmäkontekstissa.
- Eri työkalut suoritetaan tai ei suoriteta eri asiayhteyksissä:
- Apex suoritetaan oletusarvoisesti järjestelmäkontekstissa. Voit hallita, noudattavatko ja miten Apex-toiminnot käyttäjätason jakosääntöjä käyttämällä Apex-luokan määritelmässä olevia jaon avainsanoja.
- Kululla ei ole yhtä oletusarvoista toimintatapaa. Kulku suoritetaan käyttäjän tai järjestelmän asiayhteydessä sen käyttötavan perusteella. Voit käyttää jakoasetuksia järjestelmäkontekstissa.
- Prosessit (eli Process Builderilla luodut automatisoinnit) suoritetaan järjestelmäkontekstissa ilman jakamisessa huomioitavia asioita. (Huomautus: Suosittelemme luomaan vähäisen koodin automaatioita kululla.
- Logiikka, joka täytyy suorittaa asynkronisesti
- Ulkoiset järjestelmätoiminnot – Synkronoituja callout-kutsuja tai toimintoja, jotka käyttävät ulkoista dataa, ei sisällytetä mihinkään sovellusalustan periytymistoimintoon. Jos haluat hyödyntää näitä toimintatapoja, sinun täytyy asettaa ulkoisiin järjestelmiin liittyvät toiminnot erillisiin transaktioihin (käyttämällä asynkronisia Apex-metodeja, asynkronisia polkuja tai kutsuttavia toimintoja).
- Tapahtumat ja viestintä – Jos haluat hallita datatoimintoihin liittyvien tapahtumien tai viestien kulkua (ja hyödyntää sovellusalustan periytymiskäytäntöjä), aseta kaikki viestintään tai tapahtumiin liittyvät toiminnot asiayhteyksien jälkeen käyttämällä asynkronisia Apex-metodeja.
Alla oleva kuvioiden ja antikuvioiden luettelo näyttää, miltä oikea (ja huono) datan käsittely näyttää Salesforcen automatisoinneissa. Voit käyttää niitä vahvistaaksesi automatisointisuunnitelmasi ennen niiden rakentamista tai tunnistaaksesi automatisoinnit, jotka täytyy uudelleenaktivoida datan käsittelyn parantamiseksi.
Lisätietoja Salesforcen käytettävissä olevista työkaluista datan käsittelyyn automatisoinnissa on kohdassa Automatisointiin liittyvät työkalut.
Virheiden käsittely on tärkeää tietojen eheyden kannalta. Vahva virheiden käsittely auttaa myös järjestelmääsi skaalautumaan ja ikääntymään entistä vakaammin.
Virheiden väärinkäsittely automatisoinneissa voi johtaa:
- Tietueiden epäjohdonmukaisuudet ja muut datan eheysongelmat
- Virheellisten ilmoitusten lähettäminen käyttäjille ja muille järjestelmille
- Menetät aikaa ja resursseja manuaaliseen tai toistuvaan käsittelyyn
- Yleinen puute järjestelmään Trust
Automaatioiden virheiden käsittely vaatii, että kaikki käynnissä olevat prosessit voivat jäsentää virheen saadakseen tietoja, käyttää logiikkaa siitä, mitkä seuraavat vaiheet tulisi perustua virhetiedotteisiin ja noudattaa sitten oikeaa polkua. Näitä ominaisuuksia ei tarvitse rakentaa uudelleen ja uudelleen jokaisessa automatisoinnissa (tämä on optimoinnin anti-kuvio). Sen sijaan järjestelmän kaikkien automatisointien tulisi voida muodostaa yhteys asiaankuuluviin virheiden käsittely komponentteihin.
Jos haluat laatia automaatioihisi asianmukaisia virheiden käsittelyn ohjaimia, esitä seuraavat kysymykset:
- Mikä on ”fatal”-virhe?
- Mikä on ”palautettava” virhe?
- Miten automatisointi voi havaita ja ilmoittaa käyttäjälle virheistä ennen kuin se yrittää sitouttaa muutoksia käyttäjän toimintojen käynnistämille automatisoinneille?
Kun olet päättänyt, miten nämä virheet käsitellään, voit aloittaa tehokkaan virheiden käsittelyn automatisoinneissasi. Alla oleva kuvioiden ja antikuvioiden luettelo näyttää, miltä oikea (ja huono) virheiden käsittely näyttää Salesforcen automatisoinnissa. Voit käyttää niitä vahvistaaksesi automatisointisuunnitelmasi ennen rakentamista tai tunnistaaksesi automatisoinnit, jotka täytyy uudelleenaktivoida virheiden käsittelyn parantamiseksi.
Lisätietoja Salesforcen käytettävissä olevista virheiden käsittelytyökaluista on kohdassa Automaattiset työkalut.
Seuraava taulukko näyttää valikoiman kuvioita, joita haluat etsiä (tai rakentaa) organisaatiossasi, sekä vasta-kuvioita, joita haluat välttyä tai joilla haluat korjata.
✨ Katso lisätietoja datan yhtenäisyyteen liittyvistä kuvioista Pattern & Anti-Pattern Explorerista.
| Kuvakkeet | Kuvioiden estäminen | |
|---|---|---|
| Datan käsittely | Datasi sanakirjassa:
- Kenttätason data ja priorisointilogiikka on olemassa kaikille tietolähteille ja Data Lake -objekteille - Kenttäkartoitus Data Lake -objektista datamalliobjektiin on olemassa |
Datasi sanakirjassa:
- Tietolähteiden ja Data Lake -objektien kenttätason dataa ja priorisointilogiikkaa ei sisällytetä mukaan - Kenttäkartoituksia Data Lake -objekteista datamalliobjekteihin ei sisällytetä mukaan |
| Apexissa:
- Kaikki synkronoidut DML-lausunnot tai Tietokanta-luokkien metodit suoritetaan ennen käynnistimen suorituskontekstia ennen - Asynkronoidut Apex käyttävät queueables 'chain' -monimutkaiseen DML-tiedostoon transaktioissa - Apex käytetään vain suurille datamääreille - @future Apex ei käytetä tai käytetä säästeliäästi, callout-kutsuille tai järjestelmäobjektin DML:lle |
Apexissa:
- DML-lausekkeet näytetään säännöllisesti koodissa, joka kutsutaan käynnistimen asiayhteydessä jälkeen - Asynkronoitua Apexia käytetään harvoin - Asynkronoituja Apex käytetään satunnaisesti, mukaan lukien: -- Tulevia menetelmiä ja jonoittavaa Apexia käytetään epäjohdonmukaisesti tai vaiheittain -- Tietokantaoperaatioilla ei ole selkeää ja yhdenmukaista logiikkaa suorituksen välittämiseksi Apex tarvittaessa |
|
| Kulussa:
- Kaikki käyttäjäkontekstissa käynnistetyt kulut poistavat kaikki järjestelmäkontekstin transaktiot alakulkuihin, jotka asetetaan Keskeytä-elementin jälkeen johdonmukaisesti uuden transaktion luomiseksi. - Asiaan liittyvien datatoimintojen monimutkaiset järjestykset luodaan Orchestratorilla (monoliittisen kulun useiden alakulkujen kutsumisen sijaan) - Kaikissa tietueiden käynnistämissä kuluissa on käynnistimen järjestysarvot täytettynä - Ulkoisia järjestelmäkutsuja tai pitkäaikaisia prosesseja sisältävät kulut käyttävät asynkronisia polkuja |
Kulussa:
- Suuri, monoliittinen kulku yrittää koordinoida toisiinsa liittyvien datatoimintojen monimutkaisia sarjoja (alakulkujen kanssa tai ilman) - Tietueiden käynnistämät kulut eivät käytä käynnistimen järjestyksen attribuutteja ollenkaan tai eivät käytä käynnistimen järjestyksen arvoja yhdenmukaisesti - Ei-synkronoituja polkuja ei käytetä yhdenmukaisesti tai ollenkaan |
|
| Organisaatiossasi:
- Identiteetin vahvistus -ominaisuuden yhteensovitussäännöt noudattavat datan sanakirjassa määritettyä priorisointilogiikkaa |
Organisaatiossasi:
- Identiteetin vahvistus -ominaisuuden yhteensovitussäännöt eivät noudata datan sanakirjassa priorisointilogiikkaa |
|
| Virheiden käsittely | Apexissa:
- Koodi pakkaa kaikki DML-, SOQL-, callout-kutsut ja muut kriittiset prosessin vaiheet testi-haun lohkoihin
- Mukautettuja poikkeuksia käytetään edistyneiden virheviestien ja logiikan luomiseen - Asynkronisissa ja joukkosiinteissä käytetään DML:n sijaan tietokantaluokkien metodeja - Tietokantaluokkien menetelmiä voidaan käyttää yksinomaan kaikille datatoiminnoille (DML:n sijaan) |
Apexissa:
- DML, SOQL, callout-kutsut tai muut kriittiset prosessin vaiheet eivät sisälly yhdenmukaisesti testi-haun lohkoihin
- System.debug-lausunnot näytetään tuotanto-koodissa (ja niitä ei kommentoida pois).
- Tietokanta-luokkien metodeja ei käytetä - Datatoiminnot suoritetaan vain DML:n avulla |
| Lightning-verkkokomponenteissa (LWC):
- JavaScript asettaa kaikki datatoiminnot ja prosessin kriittiset vaiheet jos ()/muussa jos () lohkoihin
- Kaikki @wire -funktiot käyttävät API:n tarjoamia tietoja ja virheiden ominaisuuksia
- All if (virhe) / else if (virhe) -lausekkeet sisältävät logiikkaa virheiden käsittelyyn ja tarjoavat informatiivisia viestejä |
In LWC:
- JavaScript ei käytä johdonmukaisesti, jos () / muu jos () estää datatoimintoja tai kriittisiä prosessin vaiheita
- @wire -funktiot eivät käytä API:n tarjoamia tietoja ja virheitä (tai niitä ei käytetä yhdenmukaisesti)
- Jos käytetään ollenkaan, jos (virhe) / alle jos (virhe) lausekkeet eivät sisällä oikeastaan logiikkaa käsitellä virheitä ja tarjota hyödyllisiä virheviestejä |
|
| In Aura:
- JavaScript rivittää kaikki datatoiminnot ja prosessin kriittiset vaiheet kokeile ja sieppaa lohkoihin
- Try-catch-lohkojen sisällä natiivia JavaScript Virhe käytetään heittolausekkeissa (ei käytössä $A.Error())
- Kaikki korjattavat virhelogiikat näytetään havaintojen lausekkeissa ja tarjoavat käyttäjille selkeitä viestejä |
In Aura:
- JavaScript ei rivitä datatoimintoja ja prosessin kriittisiä vaiheita johdonmukaisesti kokeile ja sieppaa lohkoihin
- Komponentit käyttävät $A.Error()-funktiota
- Palautettavaa virhelogiikkaa ei näytetä yhdenmukaisesti havaintojen lausekkeissa eikä käyttäjille lähetettyjä virheviestejä näytetä selkeästi |
|
| Kulussa:
- Ruutukulut käyttävät virheviittimien avulla virheitä jatkuvasti käyttäjille - Mukautetut virheviestit on määritetty näytettäville virheille - Datatoimintoja, callout-kutsuja ja muuta kriittistä käsittelylogiikkaa sisältävillä kuluilla on vikapolut kaikille tärkeimmille toiminnoille |
Kulussa:
- Kulut eivät käytä vikapolkuja yhdenmukaisesti tai ollenkaan - Mukautettuja virheviestejä ei käytetä, joten käyttäjät näkevät oletusarvoisen "Tässä kulussa on tapahtunut käsittelemätön virhe" -viestin |
Automatisoinnin kontekstissa liiketoiminta-arvon käsite koskee sitä, miten hyvin prosessit vaikuttavat mitattavissa oleviin ja positiivisiin vaikutuksiin liiketoiminnan sidosryhmille. Ideaalisesti prosessien automatisointi sallii käyttäjien käyttää vähemmän aikaa toistuvien ja vähäarvoisten tehtävien parissa. Se auttaa myös parantamaan datan eheyttä poistamalla manuaaliset käsittelytoiminnot, jotka voivat aiheuttaa virheitä. Samoin kuin prosessin suunnittelu, automaatioiden tunnistaminen ja tarjoaminen, jotka edistävät todellista liiketoiminta-arvoa, vaatii enemmän työtä kuin perustiedot ja liiketoiminta-analyysejä.
Joskus voi tuntua, että paras tapa tuottaa arvoa yritykselle on yksinkertaisesti automatisoida kaikki liiketoimintakäyttäjän pyytämät prosessit, joko niiden järjestyksessä, jossa ne näytetään rästitöissä (tai lippujonossa) tai organisaatiosi poliittisten tekijöiden perusteella. Tämä voi johtaa kahteen asiaan liittyvään ongelmaan: automatisointien rakentaminen ei-optimaalisessa järjestyksessä ja virheellisten automatisointien rakentaminen kokonaan. Ensimmäinen ongelma, huono priorisointi, estää arvokkaiden prosessien toteuttamisen silloin, kun niiden tulisi, mikä saattaa hidastaa kasvua. Toinen ongelma, eli väärän automatisoinnin luominen, ei vain viivästytä arvokkaiden automatisointien toimittamista, vaan se aiheuttaa myös virheellistä aikaa, tarpeettomia kustannuksia ja enemmän turhautumista toimitustiimien keskuudessa.
Voit tarjota enemmän liiketoiminta-arvoa keskittymällä KPI-mittareihin ja priorisointiin.
| Työkalu | Kuvaus | Tehokkuus | Datan eheys | Liiketoiminta-arvo |
|---|---|---|---|---|
| Apex-eräys | Erätietueet yhteen ja käsittele ne hallittavissa olevissa erissä | X | X | |
| Apex-tulevat metodit | Suorita Apex asynkronisesti taustalla | X | X | |
| Apex-jono | Lisää Apex jonoon ja valvo niitä | X | X | |
| Apex Scheduler | Suorita Apex tiettyinä aikoina | X | X | |
| Hyväksynnät | Määritä vaaditut vaiheet tietueiden hyväksymiseksi | X | X | |
| Asynkroninen Apex | Suorita Apex ei-synkronoidusti | X | X | |
| Automaattiset toiminnot | Suorittaa kenttäpäivityksiä, sähköpostien lähetyksiä ja muita toimintoja taustalla | X | X | |
| Einstein Next Best Action | Näytä oikeat suositukset oikeille ihmisille oikeaan aikaan | X | X | |
| Sähköpostihälytys | Luo ja lähetä automatisoituja sähköposteja | X | X | |
| Eskalointitoiminnot | Määritä tapausten eskaloinneille suoritettavat automatisoidut toiminnot | X | X | |
| Kentän päivitys | Päivitä kenttäarvot automatisoinnin perusteella | X | X | |
| Flow Builder | Rakenna automaatioita Osoita ja napsauta -käyttöliittymällä | X | X | |
| Kulkujen laajennukset | Käyttää tallennettuja muuttujia komponenttien input-arvoina kuluissa | X | ||
| Kulkumallien kirjasto | Käytä malleja suunnitellaksesi toimialakohtaisia kulkuja | X | X | |
| Kulun käynnistin | Automatisoi monimutkaiset liiketoimintaprosessit | X | ||
| Kutsuttavat toiminnot | Apex lisääminen kulkuihin | X | X | |
| Orkestraattori | Luo ja hallitse monivaiheisia automatisointeja | X | X | |
| Lähtevä viesti | Lähetä tietoja automatisoidusta prosessista kuitteilla ja uudelleenyrityksillä | X | ||
| Sovellusalustan tapahtumien julkaiseminen kululla | Julkaise tapahtumia käyttäjien vuorovaikutusten ja automaatioiden avulla | X | ||
| Query Optimizerin | Käytä valikoivuutta ja indeksejä parantaaksesi kyselyiden, raporttien ja luettelonäkymien suorituskykyä | X | X | |
| Salesforce-kulku | Luo deklaratiivisia prosessien automatisointeja Flow Builderilla | X | X | |
| Ilmoitusten lähettäminen kuluilla | Lähetä viestejä SMS-, WhatsApp- tai Facebook Messenger -tekstiviesteillä | X | X | |
| Ilmoitusten lähettäminen prosesseilla | Lähetä viestejä SMS-, WhatsApp- tai Facebook Messenger -tekstiviesteillä | X | X | |
| SOQL FOR UPDATE -editori | Lukitse tietueita välttyäksesi kilpailuehdoilta ja ketjun turvallisuusongelmilta | X | ||
| Strategy Builder | Tunnista suositukset, jotka näytetään tietuesivuilla | X | X | |
| Alakulut | Vähennä kulkujen monimutkaisuutta uudelleenkäytön avulla | X | ||
| Sovellusalustan tapahtumien tilaaminen kululla | Vastaanota automaattisesti julkaistuja viestejä | X | ||
| Tehtävien toiminnot | Määritä automaattisesti käyttäjälle annetut kohdistustiedot | X |
| Resurssi | Kuvaus | Tehokkuus | Datan eheys | Liiketoiminta-arvo |
|---|---|---|---|---|
| Apex Execution Governors ja rajoitukset | Katso miten Apex runtime -järjestelmä noudattaa rajoituksia | X | X | |
| Erin hallinnan resurssit | Luo, hallitse, ajoita ja valvo erätöitä | X | X | |
| Suositeltuja käytäntöjä SOQL:lle ja SOSL:lle | Paranna suuria datamääriä sisältävien sovellusten kyselyiden suorituskykyä | X | ||
| Design Standards -malli | Luo suunnittelun standardeja organisaatiollesi | X | X | X |
| Kulkujen bulkkaaminen transaktioissa | Suunnittele kulkuja toimimaan kokoelmia vasten | X | X | |
| Kulkujen datassa huomioitavia asioita | Tutustu erädatan ajoitetusti käynnistettyihin kulkuihin | X | X | |
| Kulkujen virheenkorjaus | Kulkujen testaaminen ja vianmääritys | X | ||
| Miten pyynnöt käsitellään | Katso miten Salesforce käsittelee työt nopeasti ja minimoi virheet | X | X | |
| KPI-laskentataulukkomalli | Määritä tietyn tilaston liiketoiminta-arvo | X | X | |
| Kutsujen tekeminen ulkoisille järjestelmille kutsuttavista toiminnoista | Ulkoisten järjestelmien kutsuminen kulusta Apexilla | X | ||
| Sekoitetut DML-operaatiot | Tiedä mitkä sObject-objektit voidaan käyttää yhdessä DML:lle samassa transaktiossa | X | X | |
| Suoritusjärjestys | Ymmärrä lisäysten, päivitysten ja lisäysten tapahtumien järjestys | X | X | |
| Kyselyn suunnitelman FAQ | Optimoi suuria datamääriä sisältävät kyselyt | X | X | |
| Ajoitetusti käynnistyvissä kuluissa huomioitavia asioita | Tutustu ajoitetusti käynnistettyjen kulkujen erityisiin toimintatapoihin | X | ||
| Transaktion hallintaoikeus | Luo tallennuspiste, joka määrittää tietokannan tämänhetkisen tilan | X | X | |
| Mitä tapahtuu, kun kulku epäonnistuu? | Ymmärrä kulkujen virheiden käsittely | X | X | |
| Työnkulkujen automatisoinnin suositellut käytännöt -opas | Salesforcen automatisoinnin käytön aloittaminen | X | X | X |
| Todella suurten SOQL-kyselyiden työstäminen | Kirjoita tehokkaampia SOQL-kyselyitä | X |
Auta meitä pitämään Salesforce Well-Architected ajan tasalla. Tee kysely saadaksesi palautetta tästä sisällöstä ja kerro meille, mitä haluat nähdä seuraavaksi.