Suborganizaciones, ramas y grupos: cuándo necesita cada uno
Una suborganización es un inquilino hijo. Una rama es un árbol interno por el que descienden los roles. Un grupo es la unidad por la que se matricula. Cuándo usar cada uno.
Una suborganización es una organización hija completa anidada dentro de otra, con sus propias personas, programas, roles, marca y dominio. Una rama es un árbol dentro de una sola organización —sedes, departamentos, regiones— donde un rol concedido en una rama se aplica a todo lo que hay por debajo. Un grupo es la cohorte, la clase o el equipo a través del cual se matricula realmente a las personas. Casi todas las plataformas venden una o dos de las tres bajo la misma palabra, y casi todos los compradores piden las tres sin distinguirlas.
No son alternativas. Un montaje que funciona usa las tres a la vez, a alturas distintas: suborganizaciones para las fronteras, ramas para el alcance, grupos para la matriculación. Colocar una pieza de su estructura a la altura equivocada no es fatal, pero deshacerlo sale caro, porque cuando se da cuenta la gente ya tiene un historial pegado a aquello de lo que ahora quiere sacarla.
- Suborganización: ¿necesita esta parte de la estructura su propia marca, su propio dominio, sus propios administradores o su propia frontera en la revisión de seguridad de alguien? Entonces es una suborganización.
- Rama: ¿existe esta parte para que se pueda poner a una persona al frente de una porción de la organización? Entonces es una rama.
- Grupo: ¿existe esta parte para matricular, enseñar y calificar juntas a un conjunto de personas, entre dos fechas? Entonces es un grupo.
El orden importa. Una suborganización es la respuesta más pesada y la más difícil de revertir, así que debería ser la que hay que defender con argumentos. Un grupo es la más ligera, y una proporción sorprendente de lo que se pide en un pliego de requisitos resulta ser un grupo con un nombre que suena importante.
ORGANIZACIÓN Northwind Academy un inquilino, un contrato
SUBORG Acme Corp dominio propio, administradores propios, frontera propia
RAMA EMEA un rol concedido aquí alcanza todo lo de abajo
RAMA Oficina de Dubái
GRUPO Cumplimiento, septiembre 40 personas, un programa, dos fechasLeído de arriba abajo, cada capa responde a una pregunta distinta. Quién está separado de quién. Quién es responsable de qué. Quién aprende esto, en conjunto, ahora.
Suborganización: una frontera que podría entregar
En un modelo de suborganizaciones, la organización es un registro de primera clase y una organización puede tener una matriz. La marca, el dominio, los usuarios, los roles, el contenido, las matriculaciones y los informes cuelgan de ella. Una matriz puede ver dentro de sus hijas; una hija no puede ver ni hacia arriba ni hacia los lados. El anidamiento llega tan hondo como llegue su estructura real: un grupo de colegios, cada colegio y, en algunas redes educativas, una federación por encima del grupo.
Multiinquilino
Una sola instalación de una plataforma que atiende a muchas organizaciones, donde cada organización ve solo sus propias personas, contenidos, marca e informes. Una suborganización es el multiinquilino aplicado dentro de un cliente: un inquilino hijo con su propia frontera, situado bajo una matriz que sí puede ver dentro de él. La prueba no es si un inquilino recibe un logotipo distinto. Es si la separación sobrevive a una equivocación: un nuevo endpoint de exportación escrito sin filtro debería devolver cero filas, y no los alumnos de otro.
Ese último punto es el que merece la pena apretar con cualquier proveedor, nosotros incluidos. Si un inquilino es una columna de una fila, la separación es lo que el código de la aplicación se haya acordado de filtrar, y aguanta hasta que se publique la siguiente funcionalidad. Si la regla vive en la base de datos, la consulta no devuelve nada cuando falta el filtro.
El peso de una suborganización es real. Cada una se configura una vez: marca, un dominio y su certificado, administradores, roles, ajustes de retención y de consentimiento. A cambio obtiene algo que puede entregar. Una suborganización tiene un propietario que no es usted, y darla de baja es borrar un subárbol, no repasar una lista de usuarios, grupos, cursos e informes que alguien espera que esté completa.
¿Cuál es la diferencia entre una suborganización y una rama?
Una suborganización separa datos. Es una organización anidada con sus propios usuarios, marca, dominio, administradores e informes, y una frontera entre ella y sus hermanas. Una rama da forma al alcance. Es un nodo de un árbol dentro de una sola organización, no lleva marca ni dominio propios y existe para que un rol concedido en ese nodo se aplique a todo lo que hay por debajo. La pregunta que decide es si esta parte de la estructura podría llegar a estar gestionada por alguien ajeno a su administración. Si la respuesta es sí, es una suborganización. Si nunca va a ser más que una forma interna de su propio organigrama, es una rama.
Rama: dónde se detiene una concesión
Una rama es un nodo operativo dentro de una sola organización. Sedes, departamentos, facultades, regiones, centros de impartición, centros de coste, zonas de franquicia: lo que diga de verdad su organigrama. Las ramas comparten la marca de la organización, su dominio, sus usuarios y su biblioteca de contenidos. Lo que llevan es alcance.
La cascada es toda la gracia. Dé a alguien un rol en la rama EMEA y cubre EMEA y todo lo que hay debajo, hoy y después de que abra dos oficinas más. Sin un árbol en cascada, esa misma persona necesita una concesión por nodo, y las concesiones sobreviven al motivo que las justificaba. Nadie se acuerda de revocar la concesión de Dubái cuando cierra la oficina de Dubái, porque nadie tiene una lista.
Una región es un nodo del árbol, así que el responsable regional es una sola concesión que ya cubre la sede que abrirá el año que viene.
Una región es una convención de nombres, así que el responsable regional son nueve concesiones y una hoja de cálculo que va anotando cuáles siguen debiendo estar activas.
La profundidad es donde se tuercen los árboles de ramas. El árbol debe reflejar el organigrama, no el horario. Cada nivel que añade es una decisión que una persona toma cada vez que entra alguien nuevo, y un árbol de cinco niveles con un solo responsable dentro es administración sin lector. Si nunca se le va a dar a nadie un rol en un nivel, ese nivel es un filtro de informe, no una rama.
Grupo: la unidad por la que se matricula a las personas
Un grupo es un conjunto de personas que aprenden algo juntas. La clase 4B. La convocatoria de cumplimiento de septiembre. La promoción de recién titulados. El equipo de proyecto que hace la formación del nuevo producto antes del lanzamiento. Un grupo tiene una composición que cambia, normalmente un programa asociado y un final.
Los grupos son el sitio donde debe estar la rotación, y ese es el argumento para mantenerlos separados de los otros dos. La composición cambia cada semana. Alguien se incorpora tarde, alguien se traslada, alguien repite un módulo con la siguiente convocatoria. Nada de eso debería reescribir los permisos de una persona ni moverla de una organización a otra. Mover a un alumno de un grupo a otro es un gesto pequeño; mover a un alumno de una suborganización a otra es una migración.
¿Puede un grupo controlar lo que alguien ve?
No debería, y un sistema que lo permita enseñará malas costumbres a sus administradores. Un grupo responde a una sola pregunta: quién aprende esto, en conjunto, ahora. Los permisos vienen de los roles, concedidos en una organización o en una rama. Cuando los grupos se usan como portadores de permisos, siguen dos fallos. Se añade gente a clases en las que no está para que pueda ver un informe, lo que corrompe todas las cifras de finalización que produce esa clase. Y sacar a alguien de una clase le retira en silencio el acceso a algo que no tiene relación, y nadie lo asocia con el cambio que lo provocó. El grupo decide la matriculación; el rol decide el alcance.
Tres ejemplos resueltos
Un grupo escolar
Una red con dos colegios, o una editorial que gestiona 114, tiene la misma forma con anchuras distintas. Cada colegio es una suborganización: tiene un nombre que las familias reconocen, un director que es dueño de su propia plantilla, normalmente su propio dominio y, a menudo, su propia inspección y su propio convenio de financiación. La red está por encima de ellos y puede ver hacia abajo.
Dentro de un colegio, las etapas y los departamentos son ramas: el jefe del departamento de ciencias es una sola concesión que cubre todas las clases de ciencias del colegio. Las clases, los grupos de tutoría y los grupos por nivel son grupos.
Riverside Trust la red
├── Riverside Primary SUBORG dominio propio, dirección propia, inspección propia
│ ├── Infantil RAMA
│ └── Primaria superior RAMA
│ └── Clase 4B GRUPO 28 alumnos, un tutor
└── Riverside High SUBORG dominio propio, dirección propia
├── Ciencias RAMA jefatura de departamento con alcance aquí
└── Humanidades RAMA
└── Historia, 10.º curso, grupo 2 GRUPOLa trampa aquí son los cursos. Alguien quiere el rendimiento por curso en toda la red, así que se crean los cursos como organizaciones, y ahora todos los alumnos están en el tipo de contenedor equivocado y hay que repetir por curso los ajustes de marca y de dominio de cada colegio. El curso es un atributo de un grupo y una dimensión de un informe. No es un inquilino.
Una academia corporativa
Tomemos una academia corporativa que imparte formación para 15 empresas cliente desde un solo inquilino. Cada empresa cliente es una suborganización. Recibe su propio dominio, sus propios administradores —que pueden publicar y sacar informes sin escribirle a la academia—, su propia marca y una frontera que aguanta cuando el equipo de seguridad del cliente pregunta por las otras 14.
Dentro de un cliente, las unidades de negocio y las regiones son ramas, porque el propio director de formación del cliente necesita una sola concesión que las cubra todas y un responsable regional necesita una que cubra una porción. La convocatoria de incorporación de septiembre, la ronda anual de anticorrupción, las doce personas que hacen el programa de liderazgo: eso son grupos, y se crean y se cierran constantemente.
La trampa aquí es una suborganización por encargo. Un cliente contrata tres cursos, así que se crean tres organizaciones, cada una con su marca que configurar y sus administradores a los que invitar, y luego el cliente pide un único informe sobre las tres y nadie puede producirlo. Un cliente, una suborganización. Tres cursos son tres grupos.
Un centro de formación
Un centro de formación lleva una mezcla, y es la mezcla lo que hace que el modelo se gane el sueldo. Hay un catálogo público con matrícula abierta bajo la marca del propio centro. Hay contratos corporativos, cada uno de los cuales quiere una academia que se parezca al cliente. Hay programas acreditados con cohortes fijas, evaluadores y una entidad certificadora que pedirá registros.
Su centro de formación todo lo de abajo lo administra usted
├── Catálogo público RAMA matrícula abierta, su propia marca
│ └── Gestión de proyectos, noviembre GRUPO
├── Acme Corp SUBORG learn.acme.com, administradores de Acme
│ ├── EMEA RAMA
│ └── Américas RAMA
└── Borden Group SUBORG training.bordengroup.com
└── Borden Manufacturing SUBORG una filial con su propia marcaDos cosas que conviene notar. El catálogo público es una rama, no una suborganización, porque es su marca, su dominio y su personal: no hay nada que separar. Y el tercer nivel es real: un cliente con filiales que tienen identidad propia es un caso normal para un centro de formación, y es justo el caso que un modelo de subcuentas de un solo nivel no puede expresar sin convenciones de nombres.
Cuatro preguntas antes de dibujar el árbol
- ¿Qué partes tendría que mostrar el navegador de un desconocido con otra marca y otra dirección? Esas son suborganizaciones.
- ¿De qué partes hay que poner al frente a una persona con nombre y apellidos? Esas son ramas.
- ¿Qué partes tienen fecha de inicio y fecha de fin? Esas son grupos.
- ¿Qué partes existen solo porque un informe necesita un filtro? Esas no son ninguna de las tres.
La cuarta pregunta es la que más trabajo ahorra. Se construye muchísima estructura porque alguien quiere las cifras cortadas de una manera concreta, y la estructura es la forma más cara posible de conseguir un filtro. El alcance de los informes debe seguir al árbol de ramas y al grupo, y no al revés.
¿Debería cada sede ser su propia suborganización?
Solo si la sede tiene algo que una frontera proteja: su propia marca y su propio dominio, sus propios administradores que no deberían ver las demás sedes, o su propio regulador, su propia inspección o su propio contrato. Una sede que comparte marca, plantilla y un solo equipo de administración es una rama. La diferencia práctica es quién hace el trabajo: las suborganizaciones se configuran de una en una, mientras que las ramas se dibujan una vez y todo lo demás hereda. Los grupos de colegios con nombres distintos suelen acabar con una suborganización por colegio. Una sola universidad con cuatro sedes suele acabar con ramas.
Cómo funciona esto en Lurno
Lurno tiene las tres como primitivas distintas, que es por lo que este artículo merece la extensión que tiene. Las suborganizaciones se anidan a cualquier profundidad, cada una con su propia marca y su propio dominio con TLS automático; el lado de la marca y del dominio está desarrollado en marca blanca. Dentro de una organización hay un segundo árbol, separado, de ramas, y un rol concedido en una rama desciende en cascada por él. Los grupos son la primitiva de matriculación y no llevan permisos propios.
La frontera se impone en Postgres, no en el código de la aplicación: 868 políticas de seguridad a nivel de fila repartidas en 676 migraciones, de modo que una consulta que se olvida de su filtro no devuelve nada. Esa es la afirmación que conviene comprobar con cualquier proveedor; el detalle está en la página de seguridad.
Dos límites, dichos con claridad porque cambian cómo se planifica un despliegue. Las cuentas se crean por invitación: el registro autoservicio y los pagos están en desarrollo, así que una organización cliente se da de alta y se factura, en lugar de comprarse ella sola. Y el inicio de sesión de partner (SSO silencioso) está disponible hoy, mientras que SAML y OIDC están en la hoja de ruta y no publicados; si el departamento de informática de un cliente ya ha decidido cómo se autenticará su personal, plantéelo pronto. El modelo de entrega para los centros que revenden formación está en la página de centros de formación.
La versión corta
Las suborganizaciones separan. Las ramas acotan. Los grupos matriculan. Cuando no tenga claro cuál de las tres es una pieza de su estructura, pregúntese qué se rompe si se equivoca: poner una frontera donde correspondía una rama le cuesta configuración repetida y un informe que no puede sacar; poner una rama donde correspondía una frontera le cuesta una conversación con el equipo de seguridad de alguien. Dibuje el árbol antes de cargar los datos, y haga que alguien defienda cada suborganización de la lista.