iKonekt
Отворете конзолата

За групи и няколко бранда

Няколко компании, една инсталация, без споделени клиенти

Групите обикновено решават това два пъти, и то зле: или пет отделни инсталации и пет отделни всичко, или една инсталация и тържествено обещание, че приложението винаги филтрира правилно. Първото е скъпо. Второто е обещание, а обещанията не са модел за сигурност.

Ако управлявате повече от една компания — холдинг с дъщерни дружества, франчайз, два бранда за различни пазари, агенция и нещото, което агенцията откъсна — вече знаете формата на проблема. Брандовете споделят хора, инструменти и финансов отдел. Не споделят клиенти и не бива дори да изглежда, че ги споделят.

iKonekt управлява всички от една инсталация, а разделението между тях се пази от базата данни, а не от кода. Това разграничение звучи академично, докато не дойде денят, в който вече не е.

Защо слойът има значение

Филтър на ниво приложение е едно изречение в заявка. То работи, докато всяка заявка, която някога ще бъде написана, го съдържа — включително тази, написана набързо, тази, написана от новия разработчик, и тази, написана за отчет, който трябваше да се използва само веднъж.

Преместете границата в базата данни и аритметиката се обръща. Политиката се изпълнява при всяко четене и всяко записване, под всичко. Заявка, която забрави компанията, не връща грешните редове; тя не връща нищо. Режимът на отказ става празен екран и объркан разработчик — а това е правилният режим на отказ.

Празните екрани са функционалност. По-добре да обясним празен екран на собствен наш инженер, отколкото да обясним списък с клиенти на двама клиенти, които не са очаквали да се срещнат.

Една инсталацияНа компания
  • 1Клиенти & кореспонденцияОграничени по обхват. Продавач в бранд А не може да достигне тези на бранд Б — по конструкция, а не по конфигурация.
  • 2Права върху клиент„Вече имаме този акаунт“ е заключване, държано на компания — така два бранда могат да работят на един и същ пазар, без да се сблъскват.
  • 3Подсказки & настройкиВсяка компания редактира своите. Единственото място, където това някога е било споделено, е бил бъг — и това е бъгът, с чието откриване системата се гордее най-много.
  • 4Партньорски програмиМодул на компания, а не глобален, който всички наследяват.

Граница, наложена под приложението

Какво една група реално може да споделя

Разделението не е изолация за самата изолация. Нещата, които си заслужава да се споделят в група, се споделят съзнателно и те са предимно скучните — което е точно правилно, защото в скучните се крие дублираната цена:

  • Една инсталация за поддържане и обновяване. Едно внедряване, един набор от идентификационни данни за грижа, едно нещо за държане актуално.
  • Един екип от хора с различни шапки. Човек може да работи в повече от една компания; това, което не може, е да вижда и двете едновременно чрез заявка, забравила да попита.
  • Един набор от навици. Начинът, по който се разпределя потенциален клиент, начинът, по който се пише бележка, начинът, по който една задача става фактура — научено веднъж, приложено навсякъде, което скъсява въвеждането до около едно утро.
  • Една връзка с останалата част от семейството. castomAPI отдолу, същият акаунт, същите конектори — конфигурирани на компания там, където има значение.

Въпросът, който група винаги задава втори

„Можем ли да отчитаме през всички тях?“ Да — от собствена гледна точка на групата, съзнателно и изрично, а не като страничен ефект на течаща граница. Разграничението е целият замисъл: пресичането на границата трябва да бъде действие, което някой е извършил нарочно, с правомощието да го направи. Никога не бива да е нещо, което един заблуден идентификатор може да постигне случайно.

А въпросът, който задават трети: „Какво става, ако продадем един от брандовете?“ Граница, която базата данни пази, е и граница, от която можете да извадите чисто копие. Това не е съвпадение — разделението и преносимостта са едно и също свойство, гледано от две различни срещи.

Под пода

Какво конкретно държи границата

Не твърдение, а списък. Ако доставчик не може да представи този списък за собствения си продукт, това си заслужава да се забележи.

26

Таблици, носещи своята компания, с принудително включена проверка, а не просто налична.

72

Правила, изписани едно по едно, така че всяко да е прочетено от човек, а не генерирано в цикъл.

942

Тестове, изпълнявани срещу база данни, изграждана от нулата при всяка промяна.

0

Компании по подразбиране. Заявка без обхват се прекъсва, преди да достигне данните — няма резервен вариант, който да забравите да изключите.

Как е изградено разделението →

„Пет компании, пет инсталации, пет фактури от вас.“

Една инсталация. Пет граници, които базата данни пази.

Споделени хора, споделени навици, споделена платформа — и нито един споделен клиент. Пресичането на тази граница трябва да е нещо, което човек е направил нарочно, а никога нещо, което идентификатор е допуснал по невнимание.

Как е изградено разделението →