iKonekt

Za grupe i više brendova

Nekoliko tvrtki, jedna instalacija, bez zajedničkih kupaca

Grupe to obično rješavaju dvostruko loše: ili pet odvojenih instalacija i pet odvojenih svega, ili jedna instalacija i svečano obećanje da će aplikacija uvijek ispravno filtrirati. Prvo je skupo. Drugo je obećanje, a obećanja nisu sigurnosni model.

Ako vodite više od jedne tvrtke — holding s podružnicama, franšizu, dva brenda usmjerena na različita tržišta, agenciju i ono što je agencija izdvojila — Već znate oblik problema. Brendovi dijele ljude, alate i financijski odjel. Ne dijele kupce, i ne smiju se činiti da ih dijele.

iKonekt pokreće sve njih iz jedne instalacije, a razdvajanje među njima održava baza podataka, a ne kod. Ta razlika zvuči akademski dok ne dođe dan kada nije.

Zašto je sloj važan

Filtar na razini aplikacije rečenica je u upitu. Radi dok svaki upit koji će ikada biti napisan sadrži tu rečenicu — uključujući onaj napisan u žurbi, onaj koji je napisao novi razvojni inženjer i onaj napisan za izvještaj koji je trebao poslužiti samo jednom.

Pomaknite granicu u bazu podataka i aritmetika se obrne. Pravilo se izvršava pri svakom čitanju i svakom pisanju, ispod svega. Upit koji zaboravi tvrtku ne vraća pogrešne retke; ne vraća nijedan. Način otkazivanja postaje prazan zaslon i zbunjeni razvojni inženjer, a to je ispravan način otkazivanja.

Prazni zasloni su značajka. Radije bismo prazan zaslon objasnili vlastitom inženjeru nego popis kupaca dvojici klijenata koji se nisu očekivali susresti.

Jedna instalacijaPo tvrtki
  • 1Kupci & razgovoriOgraničeno. Prodavač u brendu A ne može doći do brenda B, po konstrukciji, a ne po konfiguraciji.
  • 2Potraživanja od kupca"Ovaj račun već imamo" zaključava se po tvrtki — tako dva brenda mogu raditi na istom tržištu bez sudaranja.
  • 3Upiti i postavkeSvaka tvrtka uređuje svoje. Jedino mjesto na kojem je je to ikada bilo dijeljeno bila je greška, i to je greška na čije je otkrivanje ovaj sustav najponosniji.
  • 4Partnerski programiModul po tvrtki, a ne globalni koji svi nasljeđuju.

Granica provedena ispod aplikacije

Što grupa zapravo može dijeliti

Odvajanje nije izolacija radi izolacije. Stvari vrijedne dijeljenja unutar grupe dijele se namjerno, a to su uglavnom one dosadne — što je točno kako i treba, jer upravo u dosadnim leži udvostručeni trošak:

  • Jedna instalacija za pokretanje i ažuriranje. Jedna implementacija, jedan skup vjerodajnica za održavanje, jedna stvar koju treba zakrpati.
  • Jedan tim ljudi s različitim ulogama. Osoba može raditi u više tvrtki; ne može je vidjeti obje istovremeno kroz upit koji je zaboravio pitati.
  • Jedan skup navika. Način dodjele potencijalnog kupca, način pisanja bilješke, način na koji posao postaje faktura — nauči se jednom, primjenjuje svugdje, što uvod u posao skraćuje na otprilike jedno jutro.
  • Jedan odnos s ostatkom obitelji. castomAPI u pozadini, isti račun, isti konektori — konfigurirano po tvrtki tamo gdje je to važno.

Pitanje koje grupa uvijek postavlja drugo

"Možemo li izvještavati preko svih njih?" Da — iz vlastite perspektive grupe, namjerno i izričito, a ne kao nusprodukt propusne granice. Ta je razlika cijeli dizajn: prijelaz granice mora biti čin koji je netko namjerno izveo, s ovlaštenjem da to učini. Nikada ne smije biti nešto što zalutali identifikator može slučajno postići.

A pitanje koje postavljaju treće: "što se dogodi ako prodamo jedan od brendova?" Granica koju čuva baza podataka također je granica iz koje možete izvući čistu kopiju. To nije slučajnost — odvajanje i prenosivost su isto svojstvo gledano s dva različita sastanka.

Ispod površine

Što točno čuva granicu

Ne tvrdnja, nego popis. Ako dobavljač ne može dati ovaj popis o vlastitom proizvodu, to vrijedi primijetiti.

26

Tablice koje nose svoju tvrtku, s provjerom nametnutom, a ne samo dostupnom.

72

Pravila, zapisana jedno po jedno tako da je svako pročitao čovjek, a ne generirano u petlji.

942

Testovi, pokrenuti nad bazom podataka obnovljenom od nule svaki put kad se bilo što promijeni.

0

Zadane tvrtke. Zahtjev bez opsega odbija se prije nego što dođe do podataka — nema zamjenskog ponašanja koje netko može zaboraviti isključiti.

Kako je odvajanje izgrađeno →

"Pet tvrtki, pet instalacija, pet faktura od vas."

Jedna instalacija. Pet granica koje čuva baza podataka.

Dijeljeni ljudi, dijeljene navike, dijeljena platforma — i nijedan dijeljeni kupac. Prijelaz te granice mora biti nešto što je osoba namjerno učinila, nikada nešto što je identifikator slučajno uspio.

Kako je odvajanje izgrađeno →