Forecast¶
Forecast vypočítá, kolik agentů potřebujete v každém čase dne, na základě historických dat o hovorech z vašeho kontaktního centra Daktela. Výstupem jsou Potřeby (Needs), které Smart Schedule použije při generování rozvrhu.
Odpadá tím ruční odhadování personálních požadavků – systém použije reálnou historii hovorů, aplikuje Erlang C model a vyrobí konkrétní čísla na slot.
Jak to funguje¶
Forecast běží ve čtyřech krocích:
- Načte historii – čte agregovanou historii hovorů pro zvolenou frontu za období lookback okna (výchozí 12 týdnů).
- Sestaví typický týden – seskupí historii podle den-v-týdnu, hodiny a minuty a každý slot zredukuje na jedno číslo pro objem hovorů a jedno pro AHT (Average Handle Time). Jak se ta redukce dělá, si volíte – viz Jak se počítá typická hodnota.
- Promítne na vaše dny – překlopí typický týden na data, která jste zadali, a každý den upraví podle státních svátků v zemi fronty.
- Erlang C – převede předpokládaný objem hovorů + AHT na minimální počet agentů potřebný k dosažení cílového Service Level.
Dokud nekliknete na Apply as Needs, nic se nezapisuje.
Forecast předpovídá příchozí hovory. Ostatní kanály (e-mail, chat, SMS) mají v modelu místo, ale zatím ne implementaci – fronta napojená na nehlasový kanál nevrátí čísla obsazenosti a řekne proč.
Prerekvizity¶
Než spustíte Forecast, ujistěte se, že máte nastaveno:
| Položka | Kde | K čemu |
|---|---|---|
| Call Center | Settings > Integrations > Call Centers | Zdroj historických dat hovorů |
| Queue | Settings > Integrations > Queues | Mapuje Daktela fronty hovorů do WFM a propojuje je se skilly + pracovišti |
| Skills | Settings > Configuration > Skills | Každý skill, který fronta pokrývá. Skill musí nést číselné id Daktela fronty, jinak nemá forecast co číst. |
| Workplace | People > Workplaces | Kam se vytvoří výsledné Needs. Jeho časová zóna zároveň určuje, v jakém čase je celá obrazovka vykreslená. |
| Historická data | (sbírá automaticky noční import) | Kvalita forecastu roste s množstvím dostupné historie |
Pokud fronta nemá Daktela mapování nebo se ještě nestihla nasbírat historie, Forecast vrátí nuly – počkejte na import nebo zkontrolujte mapování fronty.
Vytvoření forecastu¶
- V levém menu klikněte na Forecast.
- Vpravo vyplňte nastavení. Forecast se přepočítává sám, jak je měníte – žádné tlačítko Calculate tu není.
- Vlevo si prohlédněte grafy.
- Až čísla sedí, klikněte na Apply as Needs.
Vstupní nastavení¶
| Pole | Popis |
|---|---|
| Queue | Fronta, z jejíž historie chcete forecast generovat |
| Workplace | Kam se vytvoří výsledné Needs. Zároveň určuje časovou zónu, ve které jsou vykreslené grafy. |
| Skills | Jeden nebo více skillů, které má forecast pokrýt – výchozí jsou všechny skilly namapované na frontu. Každý skill má v grafech vlastní čáru. |
| Period | Volitelné – při výběru periody se Date From / Date To vyplní automaticky |
| Date From / Date To | Rozsah dat, který chcete plánovat |
| Working hours only | Omezí forecast na hodiny, kdy je pracoviště otevřené. Viz Omezení forecastu na pracovní dobu. |
| Excluded days | Historické dny, které se mají ignorovat – jednorázové anomálie. Viz Vyloučení anomálních dnů. |
| How the typical value is calculated | Jak se z několika pozorování jednoho intervalu stane jedno číslo. Viz níže. |
| Granularity | Velikost slotu v minutách – 15 (doporučeno), 30 nebo 60 |
| Service Level (%) | Cílová úroveň služby – procento hovorů zvednutých do cílového ASA. Průmyslový standard je 80. |
| Target ASA (s) | Average Speed of Answer – čas v sekundách, do kterého platí cílový service level (typicky 20) |
| Shrinkage (%) | Ztracená kapacita agentů (přestávky, školení, administrativa, nemoc). Typické kontaktní centrum: 30. |
Změna Service Level, Target ASA nebo Shrinkage přepočítá jen počty agentů, což je rychlé. Změna čehokoliv jiného staví předpověď z historie znovu.
Jak číst grafy¶
Tři grafy sdílejí jednu časovou osu; když najedete na jeden, ukáže se stejný okamžik na všech.
| Graf | Co ukazuje |
|---|---|
| Forecast vs. actual | Předpověď proti tomu, co se skutečně stalo. Čárkovaně = forecast, plně = skutečnost. Mezera znamená, že interval ještě nebyl zagregován. |
| Inbound contacts | Předpokládaný objem hovorů na interval |
| Coverage required | Počet agentů na interval, po Erlangu C a shrinkage |
Nad grafy přepínáte mezi Month, Week a Day. Denní pohled ukazuje každý interval, týdenní a měsíční jeden bod na den. Státní svátky jsou na ose červeně, víkendy mají podbarvení a obojí je vypsané v legendě pod přepínačem.
Apply as Needs¶
Vedle tlačítka jsou dvě volby:
| Volba | Účinek |
|---|---|
| Whole period | Zapnuto: aplikuje celý rozsah dat. Vypnuto: aplikuje jen to, co je právě vidět v grafech. |
| Merge equal blocks | Zapnuto (výchozí): navazující intervaly se stejným počtem agentů se slijí do jedné položky Needu. Vypnuto: jedna položka na interval. |
Aplikací vzniknou Needs na konkrétní datum, takže sezónní rozdíly mezi jednotlivými dny přežijí až do rozvrhu. Opakovaná aplikace stejného rozsahu nahradí to, co vytvořil předchozí běh, a ručních Needů se nedotkne.
Omezení forecastu na pracovní dobu¶
Ve výchozím stavu pokrývají grafy celý den včetně hodin, kdy je pracoviště zavřené. Protože tam stejně nikoho nenaplánujete, takové intervaly jen natahují osu.
Přepínač Working hours only (pod výběrem Workplace) je zahodí. Netýká se to jen vykreslení, ale celé obrazovky:
- grafy začínají a končí otevírací dobou pracoviště,
- dny, kdy je pracoviště zavřené, zmizí z přepínače dnů i z týdenního a měsíčního pohledu,
- denní součty se přepočítají z toho, co zbylo,
- a Apply as Needs vytvoří Needs jen uvnitř těchto hodin.
Otevírací doba se bere z pracoviště (People > Workplaces > Working hours). Dokud nevyberete pracoviště, je přepínač nedostupný; nedostupný zůstane i u pracoviště, které otevírací dobu nemá vyplněnou – obrazovka řekne, o který z těch dvou případů jde.
Státní svátky si i se zapnutým přepínačem ponechají celý den. Je to záměr: forecast dál ukazuje poptávku a varování, že tam nikdo naplánovaný nebude, potřebuje den, na který ukáže.
Pokud má pracoviště v otevírací době mezeru (například 08:00–12:00 a 13:00–17:00), grafy obě části vykreslí vedle sebe bez viditelného přerušení.
Časová zóna grafů¶
Časy jsou v časové zóně pracoviště – ne ve vaší a ne v UTC. Popisek pod výběrem Workplace zónu pojmenuje vždy, když se liší od té vaší, aby plánovač v Praze u londýnského pracoviště nečetl 08:00 jako své ráno.
Platí to i pro Needs: aplikovaný Need je uložený ve wall clocku pracoviště, což je to, co plánovač očekává. Když forecast porovnáváte s reportem vykresleným v jiné zóně, počítejte s posunem.
Jak se počítá typická hodnota¶
Každý interval typického týdne má několik historických pozorování – jedno za každý týden v lookback okně. Toto nastavení rozhoduje, jak se z nich stane jedno číslo.
| Volba | Kdy ji použít |
|---|---|
| Average | Výchozí a na většině front správná odpověď. Stabilní, funguje i na tichých frontách. Jeden výjimečný den s ním pohne. |
| Median | Ignoruje extrémy. Na tiché frontě, kde je víc než polovina pozorování nulových, vyjde medián nula a nenaplánuje se nikdo – tam ho nepoužívejte. |
| Trimmed mean | Zahodí nejvyšší a nejnižší pozorování a zbytek zprůměruje. |
| Recency-weighted | Novější týdny váží víc než starší. |
Obrazovka každou volbu vysvětlí, jakmile ji vyberete.
Na frontách s řídkým provozem nechte průměr a výjimečné dny raději odeberte přes Excluded days.
Ověření výsledku¶
- Jděte do Settings > Configuration > Needs.
- Hledejte Needs s popisem „Generated by Forecast".
- Otevřete jeden a podívejte se na jeho časové bloky.
- Pracoviště a skill musí odpovídat tomu, co jste vybrali.
Vygenerovaný Need můžete potom upravit – od té chvíle se chová jako každý jiný. Pozdější Apply nad stejným rozsahem ho nahradí.
Úrovně kvality¶
Banner nad grafy hlásí, kolik historie za čísly stojí:
| Dostupná historie | Zobrazí se jako | Co to znamená |
|---|---|---|
| Méně než 12 týdnů | basic | Typický týden stojí na málo pozorováních, takže jednotlivé dny váží hodně |
| 12 týdnů a víc | standard | Historie stačí na to, aby byl typický týden stabilní |
| 52 týdnů a víc | seasonal | K dispozici je celý rok |
Popisek říká, kolik dat je k dispozici, ne že se počítá jinak – matematika je na všech úrovních stejná.
Roční sezónnost se nemodeluje. Typický týden zachytí týdenní a denní vzory; vánoční špička ani letní útlum se z loňska nepředpovídají. Státní svátky se řeší zvlášť, viz níže.
Meziroční trend se rovněž neaplikuje. Interně se měří, ale je záměrně produktově vypnutý, dokud se neprokáže na reálných datech – aby forecast tiše neškáloval vaše obsazení faktorem, který nikdo nezvolil.
Vyloučení anomálních dnů¶
Několik historických dnů dokáže pokřivit celý forecast – sněhová kalamita, kdy polovina operátorů nedorazila, výpadek, vlna nemocenských po teambuildingu. To jsou jednorázové události, ne trend ani sezónnost, takže když se dostanou do průměrů, pokřiví obsazení pro každý budoucí den se stejným dnem v týdnu a hodinou.
Výběr Excluded days označuje, které historické dny zahodit:
- Klikáním v kalendáři dny přepínáte. Vybrané se objeví jako chipy pod ním – křížkem na chipu jeden odeberete.
- Zpět můžete jít až 2 roky; dnešek a budoucí data vybrat nelze.
- Forecast se přepočítá sám. Vyloučené dny vypadnou z typického týdne i z počtu „týdnů dat" za úrovní kvality.
- Tlačítkem Save excluded days sadu uložíte k této frontě. Dokud to neuděláte, platí dny jen pro váš náhled.
Sada patří frontě, takže se použije i pro každý další forecast nad ní. Do samotné historie se nikdy nezasahuje.
Vyloučení mnoha dnů může snížit úroveň kvality, protože zbyde méně čistých týdnů.
Státní svátky¶
Forecast bere pole Country z fronty a podle něj dohledá státní svátky (například CzechRepublic, Slovakia, Germany). Ve svátek a v den před ním a po něm aplikuje korekci naučenou z minulých svátků.
Ve hře jsou dva kalendáře a smějí se lišit: země fronty odpovídá na „kdy klesne poptávka" (svátky volajících), zatímco země pracoviště na „kdy mají agenti volno". Fronta obsluhující české zákazníky ze Slovenska je legitimní nastavení. Když se ty dva liší, obrazovka to řekne – ověřte, že je to záměr, protože svátek jen v jednom z nich znamená buď poptávku, na kterou nikdo není naplánovaný, nebo lidi bez práce.
Pokud pracoviště o svátcích nepracuje, grafy takové dny označí a upozorní, že tam nikdo naplánovaný nebude, přestože je vidět poptávka.
Tipy¶
- Začněte s výchozími hodnotami (SL 80 %, ASA 20 s, Shrinkage 30 %, granularita 15 min, Average) – odpovídají běžné praxi v kontaktních centrech.
- Než se na výstup začnete spoléhat, počkejte aspoň na 12 týdnů historie. Pod tím stojí typický týden na velmi málo pozorováních.
- Forecast pouštějte zvlášť pro každé pracoviště – každé mívá vlastní vzorec obsazení.
- Jakmile má pracoviště vyplněnou otevírací dobu, zapněte Working hours only. Grafy se čtou podstatně líp.
- Po Apply as Needs zkontrolujte výsledek ve Smart Schedule – když se objeví díry v pokrytí, byl forecast příliš opatrný; když přeobsazujete, byl příliš agresivní. Upravte Shrinkage nebo Service Level a spusťte znovu.
- Když forecast najednou vypadá moc nízko nebo moc vysoko, zkontrolujte, jestli se do lookback okna nevloudil anomální den, a přidejte ho do Excluded days.
- Sledujte graf Forecast vs. actual v čase – je to jediné, co vám řekne, jestli je předpověď na vašich datech k něčemu.
Řešení potíží¶
| Problém | Pravděpodobná příčina | Řešení |
|---|---|---|
| Grafy zůstávají prázdné | Nevyplněná Queue, Skills, Date From nebo Date To | Vyplňte všechno – forecast běží jen na kompletní sadě |
| Všechny sloty ukazují 0 agentů | Žádná historie pro frontu, nebo skill nemá id Daktela fronty | Zkontrolujte mapování fronty a id Daktela fronty u skillu; počkejte na import |
| Kvalita = basic, 0 týdnů | Žádná historie | Stejné řešení |
| Working hours only nejde zapnout | Nevybrané pracoviště, nebo pracoviště nemá otevírací dobu | Popisek pod přepínačem řekne který případ; dobu nastavte v People > Workplaces |
| Grafy ukazují časy o hodinu dvě jinde, než čekáte | Grafy jsou v časové zóně pracoviště | Zkontrolujte zónu pojmenovanou pod výběrem Workplace a nastavení časové zóny pracoviště |
| Sváteční korekce je špatně nebo chybí | Fronta nemá Country, nebo špatnou | Upravte frontu a vyberte zemi |
| Moc agentů ve špičce | Příliš přísný Service Level, nízký Shrinkage | Zkuste SL 75 % nebo Shrinkage 35–40 % |
| Málo agentů | Příliš vysoký Shrinkage | Snižte Shrinkage |
| Na tiché frontě se nenaplánuje nikdo | Median na frontě, kde je většina pozorování nulová | Přepněte na Average |
| Apply selže | Fronta nemá přiřazený skill, nebo není vybrané pracoviště | Doplňte skill u fronty, nebo vyberte pracoviště |
Související¶
- Needs – ruční definice personálních požadavků (Forecast je generuje automaticky)
- Smart Schedule – používá Needs, které Forecast vyrobil
- Daktela CC Integration – nastaví Call Center, které dodává historii hovorů