Pro skupiny a více značek
Několik firem, jedna instalace, žádní sdílení zákazníci
Skupiny to obvykle řeší dvakrát špatně: buď pět samostatných instalací a pět samostatných všeho, nebo jedna instalace a slavnostní slib, že aplikace vždy filtruje správně. První je drahé. Druhé je slib, a sliby nejsou bezpečnostní model.
Pokud provozujete více než jednu firmu — holding s dceřinými společnostmi, franchising, dvě značky mířící na odlišné trhy, agenturu a věc, kterou si z agentury vydělila — tvar problému už znáte. Značky sdílejí lidi, nástroje a finanční oddělení. Zákazníky nesdílejí, a nesmí se to ani jevit.
iKonekt provozuje všechny z jedné instalace a oddělení mezi nimi drží databáze, nikoli kód. Tenhle rozdíl zní akademicky, dokud nepřijde den, kdy už ne.
Proč na vrstvě záleží
Filtr na úrovni aplikace je věta v dotazu. Funguje, dokud každý dotaz, který bude kdy napsán, ji obsahuje — včetně toho napsaného ve spěchu, toho napsaného novým vývojářem a toho napsaného pro report, který měl být použit jen jednou.
Posuňte hranici do databáze a aritmetika se obrátí. Politika běží při každém čtení a každém zápisu, pod vším. Dotaz, který zapomene firmu, nevrátí špatné řádky; nevrátí žádné. Režim selhání se stane prázdnou obrazovkou a zmateným vývojářem, což je správný režim selhání.
Prázdné obrazovky jsou funkce. Raději vysvětlíme prázdnou obrazovku jednomu z našich vlastních inženýrů, než seznam zákazníků dvěma klientům, kteří se nečekali potkat.
- 1Zákazníci & vláknaOmezeno. Prodavač ve značce A se k těm ze značky B nedostane — konstrukcí, nikoli konfigurací.
- 2Pohledávky vůči zákazníkovi„Tento účet už máme“ je zámek držený na úrovni společnosti — takže dvě značky mohou pracovat na stejném trhu, aniž by si překážely.
- 3Prompty & nastaveníKaždá společnost si upravuje své vlastní. Jediné místo, kde se to kdy sdílelo, byla chyba — a je to chyba, na kterou je tento systém nejvíc hrdý, že ji našel.
- 4Partnerské programyModul pro každou společnost zvlášť, ne globální, který by všichni dědili.
Hranice vynucená pod aplikační vrstvou
Co skupina ve skutečnosti smí sdílet
Oddělení není izolace pro izolaci samotnou. Věci, které stojí za to sdílet napříč skupinou, se sdílejí záměrně a jsou to většinou ty nudné — což je přesně správně, protože právě v nudných věcech se skrývá duplikovaná cena:
- Jedna instalace k provozu a aktualizaci. Jedno nasazení, jedna sada přihlašovacích údajů ke správě, jedna věc, kterou je třeba udržovat opravenou.
- Jeden tým lidí v různých rolích. Člověk může pracovat ve více společnostech; to, co nemůže, je vidět do obou najednou dotazem, který se na to zapomněl zeptat.
- Jedna sada návyků. Způsob, jakým se přiděluje poptávka, jakým se píše poznámka, jakým se z úkolu stane faktura — naučíte se to jednou, platí to všude, a nasazení nového člověka se tak zkrátí na zhruba dopoledne.
- Jeden vztah ke zbytku rodiny. castomAPI pod tím, stejný účet, stejné konektory — nastavené po společnostech tam, kde to má význam.
Otázka, kterou si skupina vždycky klade jako druhou
„Můžeme reportovat napříč všemi?“ Ano — z vlastního pohledu skupiny, záměrně a výslovně, nikoli jako vedlejší efekt propadlé hranice. Ten rozdíl je celý návrh: překročení hranice musí být úkon, který někdo provedl záměrně a s příslušným oprávněním. Nikdy to nesmí být něco, co náhodou dokáže způsobilý identifikátor.
A otázka, kterou kladou jako třetí: „co se stane, když jednu ze značek prodáme?“ Hranice, kterou drží databáze, je zároveň hranice, ze které můžete vyjmout čistou kopii. To není náhoda — oddělení a přenositelnost jsou tatáž vlastnost viděná ze dvou různých porád.
Pod podlahou
Co konkrétně drží linii
Není to tvrzení, je to seznam. Pokud dodavatel nedokáže takový seznam o svém vlastním produktu předložit, stojí za to si toho všimnout.
26
Tabulky nesoucí svou společnost, s vynucenou kontrolou, ne jen dostupnou.
72
Politiky, zapsané jednotlivě, aby si každou přečetl člověk, a ne generované ve smyčce.
942
Testy, spouštěné proti databázi stavěné od nuly pokaždé, když se cokoli změní.
0
Výchozí společnosti. Požadavek bez rozsahu selže dřív, než se dostane k datům — neexistuje žádná záložní cesta, na kterou by se dalo zapomenout.

„Pět společností, pět instalací, pět faktur od vás.“
Jedna instalace. Pět hranic, které drží databáze.
Sdílení lidé, sdílené návyky, sdílená platforma — a ani jeden sdílený zákazník. Překročení té linie musí být něco, co člověk udělal záměrně, nikdy něco, co identifikátor zvládl náhodou.
Jak je oddělení postaveno →