Für Gruppen und mehrere Marken
Mehrere Unternehmen, eine Installation, keine gemeinsamen Kunden
Gruppen lösen das üblicherweise zweimal schlecht: entweder mit fünf getrennten Installationen und fünfmal allem, oder mit einer Installation und dem feierlichen Versprechen, dass die Anwendung immer korrekt filtert. Das Erste ist teuer. Das Zweite ist ein Versprechen, und Versprechen sind kein Sicherheitsmodell.
Wenn Sie mehr als ein Unternehmen führen — eine Holding mit Tochtergesellschaften, ein Franchise, zwei Marken für verschiedene Märkte, eine Agentur und das, was die Agentur ausgegründet hat —, kennen Sie die Form des Problems bereits. Die Marken teilen sich Personen, Werkzeuge und eine Finanzabteilung. Kunden teilen sie sich nicht, und sie dürfen auch nicht so aussehen, als täten sie es.
iKonekt betreibt alle aus einer Installation, und die Trennung zwischen ihnen wird von der Datenbank gewahrt, nicht vom Code. Dieser Unterschied klingt akademisch, bis zu dem Tag, an dem er es nicht mehr ist.
Warum die Schicht wichtig ist
Ein Filter auf Anwendungsebene ist ein Satz in einer Abfrage. Er funktioniert, solange jede Abfrage, die jemals geschrieben werden wird, ihn enthält — einschließlich derjenigen, die in Eile geschrieben wurde, derjenigen des neuen Entwicklers und derjenigen für einen Bericht, der ohnehin nur einmal verwendet werden sollte.
Verlagert man die Grenze in die Datenbank, kehrt sich die Rechnung um. Die Richtlinie läuft bei jedem Lese- und jedem Schreibvorgang, unter allem. Eine Abfrage, die das Unternehmen vergisst, liefert nicht die falschen Zeilen; sie liefert keine. Der Fehlermodus wird zu einem leeren Bildschirm und einem verwirrten Entwickler — und das ist der richtige Fehlermodus.
Leere Bildschirme sind ein Feature. Wir erklären lieber einem unserer eigenen Ingenieure einen leeren Bildschirm, als zwei Kunden eine Kundenliste zu erklären, die nicht damit rechneten, sich zu begegnen.
- 1Kunden & UnterhaltungenAbgegrenzt. Ein Verkäufer in Marke A kann die von Marke B nicht erreichen — durch Konstruktion statt durch Konfiguration.
- 2Ansprüche auf einen Kunden„Dieses Konto haben wir bereits“ ist eine Sperre pro Unternehmen — so können zwei Marken denselben Markt bearbeiten, ohne aneinander zu geraten.
- 3Prompts & EinstellungenJedes Unternehmen bearbeitet seine eigenen. Die eine Stelle, an der dies jemals geteilt war, war ein Fehler — und es ist der Fehler, auf dessen Entdeckung dieses System am stolzesten ist.
- 4PartnerprogrammeEin Modul pro Unternehmen, kein globales, das alle erben.
Grenze unterhalb der Anwendung durchgesetzt
Was eine Gruppe tatsächlich teilen darf
Trennung ist keine Isolation um ihrer selbst willen. Die Dinge, die sich innerhalb einer Gruppe zu teilen lohnen, werden bewusst geteilt, und es sind meist die langweiligen — was genau richtig ist, denn in den langweiligen steckt die doppelt anfallende Kosten:
- Eine Installation zu betreiben und zu aktualisieren. Ein Deployment, ein Satz Zugangsdaten zu pflegen, eine Sache, die gepatcht bleiben muss.
- Ein Team von Menschen mit verschiedenen Hüten. Eine Person kann in mehr als einem Unternehmen arbeiten; was sie nicht kann, ist, beide gleichzeitig durch eine Abfrage zu sehen, die vergessen hat zu fragen.
- Ein Satz Gewohnheiten. Wie ein Lead zugewiesen wird, wie eine Notiz geschrieben wird, wie ein Auftrag zu einer Rechnung wird — einmal gelernt, überall angewendet, was die Einarbeitung auf etwa einen Vormittag verkürzt.
- Eine Beziehung zum Rest der Familie. castomAPI darunter, dasselbe Konto, dieselben Konnektoren — konfiguriert pro Unternehmen, wo es darauf ankommt.
Die Frage, die eine Gruppe immer als Zweite stellt
„Können wir über alle berichten?“ Ja — aus dem eigenen Blickwinkel der Gruppe, bewusst und ausdrücklich, nicht als Nebenwirkung einer undichten Grenze. Dieser Unterschied ist die gesamte Konstruktion: Die Grenze zu überschreiten muss eine Handlung sein, die jemand absichtlich mit der dazu nötigen Befugnis vorgenommen hat. Niemals darf etwas sein, das ein fehlgeleiteter Bezeichner versehentlich bewerkstelligen kann.
Und die Frage, die sie als Dritte stellen: „Was passiert, wenn wir eine der Marken verkaufen?“ Eine Grenze, die die Datenbank wahrt, ist auch eine Grenze, aus der Sie eine saubere Kopie herauslösen können. Das ist kein Zufall — Trennung und Portierbarkeit sind dieselbe Eigenschaft, betrachtet aus zwei verschiedenen Meetings.
Unter dem Boden
Was die Linie konkret hält
Keine Behauptung, eine Liste. Wenn ein Anbieter diese Liste über sein eigenes Produkt nicht vorlegen kann, ist das bemerkenswert.
26
Tabellen, die ihre Firma mit sich führen, mit erzwungener statt bloß verfügbarer Prüfung.
72
Richtlinien, einzeln ausgeschrieben, sodass jede von einem Menschen gelesen wurde – nicht in einer Schleife generiert.
942
Tests, die gegen eine Datenbank laufen, die bei jeder Änderung von Null neu aufgebaut wird.
0
Standardfirmen. Eine Anfrage ohne Bereich schlägt fehl, bevor sie die Daten erreicht – es gibt keinen Fallback, den man vergessen könnte zu deaktivieren.

„Fünf Firmen, fünf Installationen, fünf Rechnungen von Ihnen.“
Eine Installation. Fünf Grenzen, die die Datenbank einhält.
Gemeinsame Menschen, gemeinsame Gewohnheiten, gemeinsame Plattform – und kein einziger gemeinsamer Kunde. Diese Grenze zu überschreiten muss etwas sein, das ein Mensch absichtlich getan hat, niemals etwas, das ein Bezeichner versehentlich verursacht hat.
Wie die Trennung aufgebaut ist →