Për grupe dhe disa marka
Disa kompani, një instalim, pa klientë të përbashkët
Grupet zakonisht e zgjidhin këtë dy herë keq: ose pesë instalime të veçanta dhe pesë gjithçka të veçanta, ose një instalim dhe një premtim solemn se aplikacioni gjithmonë filtron saktë. E para është e shtrenjtë. E dyta është një premtim, dhe premtimet nuk janë një model sigurie.
Nëse drejtoni më shumë se një kompani — një holding me filiale, një franshizë, dy marka të drejtuara ndaj tregjeve të ndryshme, një agjenci dhe gjëja që agjencia nxorri — tashmë e dini formën e problemit. Markat ndajnë njerëz, mjete dhe një departament financash. Nuk ndajnë klientë, dhe nuk duhet të duket se ndajnë.
iKonekt i drejton të gjitha nga një instalim i vetëm, dhe ndarja midis tyre mbahet nga baza e të dhënave dhe jo nga kodi. Kjo dallim duket akademik deri në ditën kur nuk është më.
Pse ka rëndësi shtresa
Një filtër në nivel aplikacioni është një fjali në një kërkesë (query). Ai funksionon për sa kohë çdo kërkesë që do të shkruhet ndonjëherë e përmban atë — përfshirë atë të shkruar me nxitim, atë të shkruar nga zhvilluesi i ri dhe atë të shkruar për një raport që do të përdorej vetëm një herë.
Shtyni kufijtë në bazën e të dhënave dhe aritmetika përkthehet. Politika funksionon në çdo lexim dhe çdo shkrim, nën gjithçka. Një kërkesë që harron kompaninë nuk kthen rreshta të gabuar; nuk kthen asnjë. Mënyra e dështimit bëhet një ekran bosh dhe një zhvillues i ngatërruar — që është mënyra e saktë e dështimit.
Ekrani bosh është një veçori. Ne do të preferonim t'ia shpjegonim një ekrani bosh njërit nga inxhinierët tanë, sesa t'ua shpjegonim listën e klientëve dy klientëve që nuk priste të takoheshin.
- 1Klientët & rrjedhatE kufizuar. Një shitës në markën A nuk mund t'i arrijë të markës B, nga ndërtimi dhe jo nga konfigurimi.
- 2Kërkesa ndaj një klienti«E kemi tashmë këtë llogari» është një bllokim i mbajtur për secilën kompani — kështu dy marka mund të punojnë të njëjtin treg pa u përplastur.
- 3Udhëzime & rregullimeSecila kompani i redakton të vetat. E vetmja vend ku këto janë ndarë ndonjëherë ishte një gabim, dhe është gabimi për të cilin ky sistem krenohet më shumë se e ka gjetur.
- 4Programet e partnerëveNjë modul për secilën kompani, jo një global që të gjithë e trashëgojnë.
Kufiri i zbatuar poshtë aplikacionit
Çfarë merr vërtet një grup për të ndarë
Ndarja nuk është izolim për hir të vetes. Gjërat që ia vlen të ndahen në një grup ndahen me qëllim, dhe janë kryesisht ato të zakonshme — që është pikërisht e saktë, sepse ato të zakonshmet janë ku fshihet kostoja e dyfishuar:
- Një instalim për ta ekzekutuar dhe përditësuar. Një vendosje, një grup kredencialesh për t'u kujdesur, një gjë për ta mbajtur të përditësuar me rregullime sigurie.
- Një ekip njerëzish, me role të ndryshme. Një person mund të punojë në më shumë se një kompani; ajo që nuk mund të bëjë është t'i shohë të dyja njëherësh përmes një kërkese që harroi të pyesë.
- Një grup zakonesh. Mënyra si caktohet një kontakt i ri, si shkruhet një shënim, si arrin një punë deri te fatura — mësohet njëherë, zbatohet kudo, gjë që e shkurton njohjen e punës në rreth një mëngjes.
- Një marrëdhënie me pjesën tjetër të familjes. castomAPI poshtë, e njëjta llogari, të njëjtat lidhje — të konfiguruara për secilën kompani ku ka rëndësi.
Pyetja që një grup bën gjithmonë e dyta
«A mund të raportojmë në të gjitha?» Po — nga pika e vëzhgimit e vetë grupit, me qëllim dhe në mënyrë të qartë, jo si pasojë anësore e një kufiri të rrjedhshëm. Kjo dallim është gjithë projekti: kalimi i kufirit duhet të jetë një veprim që dikush e ka bërë me qëllim, me autoritetin për ta bërë. Kurrë nuk duhet të jetë diçka që një identifikues i humbur e arrin rastësisht.
Dhe pyetja që bëjnë e treta: «çfarë ndodh nëse shesim njërën nga markat?» Një kufir që e mban baza e të dhënave është edhe një kufir nga ku mund të nxirrni një kopje të pastër. Kjo nuk është rastësi — ndarja dhe portabiliteti janë e njëjta veti parë nga dy takime të ndryshme.
Poshtë dyshemesë
Çfarë e mban kufirin, konkretisht
Jo një deklaratë, një listë. Nëse një furnitor nuk mund të prodhojë këtë listë për produktin e vet, kjo ia vlen të vërehet.
26
Tabela që mbajnë kompaninë e tyre, me kontrollin e detyruar e jo thjesht të disponueshëm.
72
Politika, të shkruara njëra pas tjetrës kështu që secilën e ka lexuar një njeri, jo të gjeneruara në cikël automatik.
942
Teste, të ekzekutuara ndaj një baze të dhënash e rindërtuar nga zero sa herë ndryshon diçka.
0
Kompani të paracaktuara. Një kërkesë pa shtrirje dështon përpara se të arrijë të dhënat — nuk ka zgjidhje rezervë që dikush mund të harrojë ta çaktivizojë.

«Pesë kompani, pesë instalime, pesë fatura nga ju.»
Një instalim. Pesë kufij që i mban baza e të dhënave.
Njerëz të përbashkët, zakone të përbashkëta, platformë e përbashkët — dhe asnjë klient të përbashkët. Kalimi i atij kufiri duhet të jetë diçka që një njeri e bëri me qëllim, kurrë diçka që një identifikues e arriti rastësisht.
Si ndërtohet ndarja →