Be Software Architecture Wise
Be Wise Apps

Read in English · Lire en français · Auf Deutsch lesen

Sección 4.8 de 4.8 · Intermedio · 22 min de lectura

Comunicar la arquitectura a distintos públicos

Videolección

5 min · narrado en inglés, con subtítulos
Solo escuchar (audio)
Leer la transcripción

Una arquitectura que solo entiende su arquitecto ha fracasado, por buena que sea. En esta última lección del capítulo, aprenderás a explicar la arquitectura a las distintas personas que construyen, operan, financian y auditan un sistema.

Un guía turístico explica la misma catedral de forma distinta a escolares, a arquitectos y a peregrinos. Datos distintos, palabras distintas, recorridos distintos por el edificio. Los arquitectos de software tienen que hacer lo mismo. Así que la buena comunicación empieza con dos preguntas. ¿Quién escucha? ¿Y qué decidirá o hará de forma distinta después? Después muéstrale justo eso, con claridad y honestidad, incluidos los inconvenientes.

Los directivos y patrocinadores necesitan una página: la recomendación, su impacto en el negocio y su costo, los principales riesgos y la decisión que necesitas de ellos. Evita los nombres de tecnologías sin significado para el negocio. Los desarrolladores necesitan saber cómo construir dentro de la arquitectura: diagramas de contenedores y de secuencia, registros de decisiones, y por qué las cosas son como son. El personal de operaciones necesita diagramas de despliegue y los escenarios de fallo, no solo el camino feliz. El personal de seguridad necesita ver por dónde fluyen los datos personales y de pago, y los auditores necesitan evidencias: documentos versionados con responsables y fechas de revisión.

La mayor parte de la comunicación arquitectónica consiste en explicar un compromiso. Aquí, el arquitecto tiene cinco minutos con el equipo directivo y empieza por la respuesta: cambiar cómo circulan los pedidos, para que un fallo en las notificaciones o en el despacho no pueda impedir que los clientes hagan pedidos, por unas seis semanas de trabajo de un equipo y unos pocos cientos de libras al mes. Después, por qué ahora. Una caída bloqueó todos los pedidos durante veintitrés minutos en el pico del viernes. Eso supone aproximadamente cincuenta y cinco mil pedidos que no se pudieron hacer. Después, las opciones, en sus términos. La opción A es barata, pero un servicio lento sigue ralentizando todos los pedidos. La opción C es rápida, pero hace más arriesgado cada cambio futuro. Después, con honestidad, a qué renunciamos: los restaurantes ven los pedidos nuevos uno o dos segundos más tarde, y hay un servicio más que operar. Y, por último, la decisión que se necesita. Fíjate en que no se nombra ninguna tecnología. El intermediario de mensajes y la bandeja de salida se quedan en el registro de decisiones.

Las personas recuerdan mejor las historias que las estructuras. Así que, para explicar cualquier sistema, sigue una solicitud. Aquí, un pedido recorre la plataforma, con pasos numerados que puedes señalar. En los pasos uno a tres, la app del cliente llama al gateway, que llama al servicio de pedidos, que llama al proveedor de pagos. En el paso cuatro, el pedido se escribe en la base de datos. Ese es el momento de decir lo que importa: los pasos uno a cuatro son síncronos, así que el cliente espera, alrededor de un segundo. Los pasos cinco a ocho son asíncronos. El evento del pedido llega a fidelización, despacho y notificaciones, y nada de esto puede bloquear el pedido. Para los desarrolladores, después contarías la historia otra vez con un fallo: ahora el proveedor de pagos agota el tiempo de espera.

Los diagramas comunican antes de que nadie lea una palabra. A la izquierda, cinco cajas en cuatro estilos al azar, abreviaturas y líneas que se cruzan, sin etiquetas, sin título y sin leyenda. A la derecha, los mismos cinco elementos: un título, cajas coherentes, un flujo de izquierda a derecha, flechas etiquetadas y una leyenda. Usa dos o tres colores como mucho, cada uno con un significado, y no te fíes nunca solo del color.

Todo sistema se beneficia de un resumen de arquitectura en una página que cualquiera pueda leer en cinco minutos. Si las ideas principales no caben en una página, probablemente tampoco estén claras para el equipo. Para proponer un cambio significativo, muchas organizaciones usan un documento de diseño, a menudo llamado solicitud de comentarios. Una vez aprobado, sus decisiones significativas se convierten en registros de decisiones. El documento de diseño, para pensar y persuadir; el registro de decisiones, para recordar. En una revisión de arquitectura, envía el material al menos con dos días de antelación y di qué quieres: una aprobación, una lista de riesgos o una elección. Presenta los impulsores antes que el diseño, porque los revisores no pueden juzgar un diseño sin saber qué cualidades debe lograr. Y enumera los riesgos que conoces: eso genera confianza.

Los desacuerdos sobre la arquitectura son normales. Suelen significar que las personas ven riesgos distintos. Primero, separa los intereses de las posiciones. Tenemos que usar Kafka es una posición. Me preocupa que perdamos eventos durante los despliegues es un interés, y a menudo puede satisfacerse de varias formas. Acuerda los criterios antes de comparar las opciones. La mayoría de las discusiones acaloradas tratan en realidad de lo que importa. Resuelve la incertidumbre con evidencias. Un spike de dos días o una prueba de carga zanjan muchos debates que las reuniones no pueden zanjar. Y busca el consentimiento, no la unanimidad. Pregunta: ¿hay alguien que no pueda aceptar esto, y por qué? Cuando el consenso no es posible, alguien tiene que decidir, y las personas pueden discrepar abiertamente y después comprometerse por completo. Registra la discrepancia en el registro de decisiones.

Con esto termina el Capítulo 4. Cuando estés listo, haz la prueba opcional del capítulo: veinte preguntas de opción múltiple y dos respuestas escritas, con una nota de aprobado del ochenta por ciento. Después continúa con el Capítulo 5, donde empezamos el catálogo de estilos arquitectónicos con los monolitos y los diseños modulares. Nos vemos allí.

Lo que necesitas saber

Comunicar es el trabajo

Una arquitectura que solo entiende su arquitecto ha fracasado, por buena que sea. Las decisiones determinan lo que decenas de personas construyen, operan, financian y auditan, y solo funcionan si esas personas las entienden lo bastante bien como para actuar en consecuencia y para darse cuenta de cuándo la realidad se aparta de ellas. Por eso el plan de estudios de iSAQB incluye la comunicación de la arquitectura entre las tareas centrales de un arquitecto, y por eso el rol del arquitecto descrito en el Capítulo 1 depende tanto de las habilidades interpersonales.

Las secciones anteriores de este capítulo aportaron el material: vistas, diagramas C4 y UML, ADR, una estructura arc42 y un pipeline que los mantiene al día. Esta sección trata de usar ese material con las personas. La habilidad central es la misma en cualquier situación: decide quién es el público, decide qué tiene que hacer después de escucharte y dale exactamente lo que eso requiere, en la forma en que pueda asimilarlo. La imagen del ascensor del arquitecto (architect elevator) de Gregor Hohpe (The Software Architect Elevator, 2020) recoge esa amplitud: un arquitecto sube y baja entre la sala del consejo, donde se fija la estrategia en términos de negocio, y la sala de máquinas, donde se construyen los sistemas, y tiene que hacerse entender en cada planta.

Adaptarse al público

Cada público tiene sus propias inquietudes, exactamente en el sentido de partes interesadas e inquietudes, y su propio vocabulario y capacidad de atención. La tabla es un punto de partida; la verdadera habilidad consiste en preguntarse, antes de preparar nada, ¿qué decidirá o hará de forma distinta esta persona después de esta conversación?

Lo que necesitan los distintos públicos

PúblicoLo que le importaQué mostrarQué evitar
Directivos y patrocinadoresCosto, riesgo, tiempo de salida al mercado, opciones estratégicas, lo que deben decidirUna página: la recomendación, el impacto en el negocio, el costo, los principales riesgos y la decisión que necesitas de ellos; como mucho, un diagrama de contexto del sistemaNombres de tecnologías sin significado para el negocio; diagramas de componentes; un repaso de las opciones antes de la respuesta
Responsables de productoLo que se vuelve posible o más difícil, las fechas de entrega, el comportamiento visible para el usuarioCapacidades y restricciones en términos de producto; cómo afecta la arquitectura a la hoja de ruta; una historia en ejecución de un recorrido de usuarioLa estructura interna por sí misma
DesarrolladoresCómo construir dentro de la arquitectura: límites, interfaces, convenciones, por qué las cosas son como sonDiagramas C4 de contenedores y de componentes, diagramas de secuencia, ADR, ejemplos de código, la bitácora de decisionesPrincipios vagos sin ejemplos; diagramas que no coinciden con el código
Operaciones y SREDespliegue, modos de fallo, monitorización, capacidad, recuperaciónDiagramas de despliegue, escenarios de fallo en ejecución, SLO, runbooks, mapas de dependenciasFlujos que solo muestran el camino feliz
SeguridadLímites de confianza, flujos de datos, identidades, superficie de ataqueDiagramas de flujo de datos con los límites de confianza marcados, flujos de autenticación y autorización, modelo de amenazasDiagramas que ocultan adónde van los datos personales o de pago
Auditores y reguladoresEvidencias de que los controles existen y se cumplen; trazabilidadDocumentos versionados con responsables y fechas de revisión, ADR, correspondencia entre requisitos y controlesBocetos informales sin fecha, responsable ni versión

Dos hábitos ayudan con cualquier público. Empieza por la respuesta. Los lectores ocupados deben conocer la conclusión en la primera frase, después las razones que la respaldan y después el detalle; es la estructura que Barbara Minto enseñó a los consultores como el Principio de la Pirámide, y es la misma idea que la pirámide invertida de Fowler para los ADR. Usa sus palabras. Para una directora financiera, consistencia eventual es ruido; el restaurante ve un pedido nuevo hasta dos segundos después que el cliente, y no se pierde nada es un hecho que puede sopesar.

Explicar los compromisos

La mayor parte de la comunicación arquitectónica consiste, en el fondo, en explicar un compromiso. Quienes no son especialistas desconfían de las recomendaciones que parecen no tener ningún inconveniente, y hacen bien. Una estructura clara, usada de forma constante, hace que los compromisos sean fáciles de seguir: las opciones (incluida la de no hacer nada), los criterios que importan a este público, cómo sale parada cada opción, la recomendación y sus consecuencias, incluido aquello a lo que renuncias. Es la anatomía de una decisión del Capítulo 1 y el contenido de un ADR, adaptados a quien escucha.

Ejemplo práctico

Ejemplo práctico: explicar un compromiso al equipo directivo

La plataforma de reparto de comida ha sufrido dos caídas un viernes por la noche causadas por un servicio de notificaciones lento. El arquitecto tiene cinco minutos en la reunión de dirección para conseguir la aprobación del ADR-0012 (eventos de pedido asíncronos).

Primero la respuesta"Recomiendo que cambiemos la forma en que los pedidos circulan entre nuestros sistemas para que un fallo en las notificaciones o en el despacho de repartidores ya no pueda impedir que los clientes hagan pedidos. Cuesta unas seis semanas-equipo y unos pocos cientos de libras al mes."
Por qué ahora"El viernes 21 de agosto, una caída de las notificaciones bloqueó todos los pedidos durante 23 minutos en el pico del viernes. A unos 40 pedidos por segundo, eso supone aproximadamente 55 000 pedidos que no se pudieron hacer, seguidos de reembolsos y quejas."
Las opciones en sus términos"Podríamos (A) mantener el diseño actual y añadir límites de seguridad, lo que es barato pero sigue permitiendo que un servicio lento ralentice todos los pedidos; (B) hacer el cambio recomendado; o (C) dejar que otros sistemas lean directamente nuestros datos de pedidos, lo que es rápido pero hace más arriesgado cada cambio futuro."
A qué renunciamos"Los restaurantes verán los pedidos nuevos uno o dos segundos después de la confirmación del cliente, y asumimos un servicio gestionado más que operar. Creemos que ambas cosas son aceptables; operaciones está de acuerdo."
La decisión que se necesita"Necesito la aprobación de la dirección para dedicar seis semanas-equipo este trimestre, lo que retrasa dos semanas la funcionalidad de fidelización."

No se nombra ninguna tecnología: "intermediario de mensajes" y "bandeja de salida transaccional" se quedan en el ADR. La cifra de pedidos (40 pedidos por segundo durante 23 minutos) se comprueba con datos reales antes de la reunión.

El costo de la recomendación y las alternativas se exponen con claridad, para que los directivos puedan discrepar por los méritos y no por una cuestión de confianza.

El resumen de arquitectura en una página

Todo sistema se beneficia de un resumen de arquitectura en una página: una sola página que una persona recién llegada, un directivo o un revisor de otro equipo puede leer en cinco minutos. No sustituye a la documentación completa, sino que es su puerta de entrada. Una estructura útil es: qué hace el sistema y para quién (dos frases); los tres objetivos de calidad principales; un diagrama de contexto del sistema; un diagrama de contenedores o una lista de los bloques de construcción principales; las cinco o así decisiones que lo determinan todo (una línea cada una, con enlace a los ADR); los principales riesgos; y dónde encontrar más. La página arc42-lite de arc42 y plantillas es uno de esos resúmenes.

La disciplina de que la arquitectura quepa en una página es valiosa en sí misma. Si las ideas principales no pueden expresarse en una página, probablemente tampoco estén claras para el equipo.

Contar historias: seguir una solicitud

Las personas recuerdan mejor las historias que las estructuras. Una técnica eficaz para explicar cualquier sistema es seguir una solicitud: elige un único evento concreto e importante, como un cliente que hace un pedido, y recorre paso a paso lo que le ocurre a lo largo de la arquitectura. Un diagrama estático de cajas muestra lo que existe; la historia muestra por qué existe y cómo cooperan las partes. Además, revela de forma natural los momentos interesantes: dónde espera el cliente, dónde los datos cruzan un límite de confianza, qué ocurre si el proveedor de pagos va lento.

Elige la historia según el público. Para los desarrolladores, el camino feliz y después un fallo (ahora el proveedor de pagos agota el tiempo de espera). Para operaciones, el fallo y la recuperación. Para los directivos, la experiencia del cliente con solo los momentos relevantes para el negocio. Numera los pasos en el diagrama para poder señalarlos, y mantén el mismo diagrama en pantalla mientras hablas en lugar de saltar de una diapositiva a otra.

Seguir un pedido a través de la plataforma

Seguir un pedido por la plataforma de reparto de comida: pasos síncronos desde la app del cliente, por el gateway y el servicio de pedidos, hasta el proveedor de pagos y la base de datos; después, eventos asíncronos a los servicios de restaurante, despacho y notificacionesSigue un pedido: del toque al repartidorApp clienteKotlin, SwiftAPI gatewaygestionadoPedidosservicio JavaProveedorde pagos (externo)123BD de pedidosPostgreSQL4Ev. de pedidostopic Kafka5Fidelizaciónsuma puntosDespachoasigna repartidorNotificacionesrestaurante, cliente678Qué decir1-4: síncronos;el cliente esperaaprox. 1 s5-8: asíncronos;nada aquí bloqueael pedidoFlechas continuas: llamadas síncronas. Flechas discontinuas: eventos asíncronos. Números: orden de la historia.
Un diagrama de historia numerado: los pasos 1 a 4 ocurren mientras el cliente espera; los pasos 5 a 8 ocurren de forma asíncrona y no pueden bloquear el pedido.

Pizarra y bocetos bien hechos

Gran parte de la comunicación arquitectónica ocurre en directo, ante una pizarra o en un lienzo compartido en línea, y unos pocos hábitos hacen que los bocetos sean mucho más útiles. Di lo que vas a dibujar antes de dibujarlo (este es el nivel de contenedores: cosas que desplegamos por separado), para que el público conozca el nivel de abstracción. Empieza por el contexto: los usuarios y los sistemas externos en los bordes, y después el interior. Etiqueta cada caja y cada línea a medida que dibujas, incluidos el sentido y lo que fluye; una flecha sin etiqueta la leerán de tres maneras distintas tres personas. Dibuja una pequeña leyenda en una esquina cuando uses más de un tipo de línea o de caja. Deja espacio, porque las mejores ideas llegan en mitad de la discusión y necesitan un sitio donde ir.

Los bocetos son herramientas para pensar y están hechos para tirarse, pero las conclusiones no. Fotografía la pizarra y, en el plazo de un día, convierte todo lo que vaya a importar en un diagrama en condiciones, un ADR o un cambio en la documentación. Simon Brown, creador del modelo C4, observó que los diagramas de pizarra de muchos equipos son cajas y líneas ambiguas precisamente porque carecen de un conjunto de abstracciones acordado; usar los niveles de C4 en la pizarra es una de las formas más sencillas de solucionarlo.

Documentos de diseño y RFC

Muchas organizaciones de ingeniería usan un documento de diseño escrito, a menudo llamado RFC (request for comments, solicitud de comentarios), para proponer un cambio significativo antes de construirlo. El nombre evoca la serie RFC de Internet, que empezó con el RFC 1 de Steve Crocker en abril de 1969. El autor expone el problema, el contexto, los objetivos y los no objetivos, el diseño propuesto, las alternativas consideradas y las inquietudes transversales como la seguridad, la privacidad y la observabilidad; el documento se hace circular entre las personas afectadas, que comentan por escrito; y se aprueba o se revisa. La muy leída descripción de Malte Ubl de los documentos de diseño en Google (2020) enumera exactamente esas secciones y sugiere de diez a veinte páginas para los proyectos grandes y de una a tres páginas para los pequeños minidocumentos de diseño. Gergely Orosz describió cómo Uber usó un proceso de RFC desde sus primeros años para difundir el conocimiento y detectar los problemas a tiempo (2018).

Amazon lleva la escritura más lejos: su carta a los accionistas de 2017 explica que la empresa no usa presentaciones con diapositivas en las reuniones, sino memorandos de seis páginas con estructura narrativa, que los asistentes leen en silencio al principio. El beneficio común a todas estas prácticas es que escribir obliga a pensar con claridad, los comentarios por escrito permiten contribuir a los compañeros más callados y a los que trabajan en remoto, y el documento se convierte en un registro. Los riesgos también son comunes: documentos largos que nadie termina, procesos de revisión que se convierten en barreras burocráticas y documentos de diseño que nunca se actualizan después de la implementación.

Los documentos de diseño y los ADR se complementan. Un documento de diseño explora un problema y propone un diseño completo, que a menudo abarca varias decisiones; una vez aprobado, las decisiones significativas que contiene se recogen como ADR, que son más breves, permanentes e indexados. Una regla razonable es: el documento de diseño, para pensar y persuadir; el ADR, para recordar.

Presentar en una revisión de arquitectura

Una revisión de arquitectura es una reunión en la que otras personas con experiencia examinan un diseño para encontrar riesgos antes de que salgan caros. Los métodos estructurados como ATAM y las revisiones más ligeras se tratan en Capítulo 11: revisiones ligeras; aquí lo que importa es cómo presentar bien. Envía el material al menos con dos días de antelación: el resumen de una página, los diagramas clave, los ADR pertinentes y los escenarios de calidad. Di al principio qué quieres de la revisión: una aprobación, una lista de riesgos o una elección entre dos opciones. Presenta los impulsores antes que el diseño, porque un revisor no puede juzgar un diseño sin saber qué cualidades debe lograr. Recorre uno o dos escenarios con la técnica de seguir una solicitud, incluido un fallo. Muestra los compromisos que asumiste y los riesgos que conoces; un revisor que encuentra un riesgo que ya habías enumerado confía más en ti, no menos. Anota cada problema planteado, con un responsable, y envía la lista después.

Reglas de diseño visual para los diagramas

Los diagramas comunican antes de que nadie lea una palabra, así que su diseño visual importa. Las reglas siguientes proceden de las pautas de notación de C4 de el modelo C4 y del diseño de información en general. El diagrama de antes y después las aplica a los mismos cinco elementos.

El mismo diagrama, antes y después

Los mismos cinco elementos mal y bien dibujados: a la izquierda, colores al azar, abreviaturas y líneas sin etiqueta que se cruzan; a la derecha, título, cajas coherentes, flujo de izquierda a derecha, flechas etiquetadas y leyendaAntesDespuésAppSrvPedBDMQAsigsin título, sin leyenda, sin rótulosHacer un pedido: contenedoresCliente(app)ServiciopedidosBD depedidosTopicev. de pedidosDespacho(serv.)HTTPSSQLpublicaconsumellamada síncronaevento asínc.título, formas uniformes, rótulos, leyenda
A la izquierda, el color y las abreviaturas no significan nada y las líneas se cruzan sin etiqueta; a la derecha, un título, formas coherentes, un flujo de izquierda a derecha, flechas etiquetadas y una leyenda.

Reglas para diagramas de arquitectura claros

  1. Pon un título a cada diagramaIndica el tipo y el alcance, como Contenedores: plataforma de reparto de comida, para que el lector conozca el nivel de abstracción.
  2. Usa una sola notación de forma coherenteLa misma forma para el mismo tipo de cosa en todos los diagramas; no mezcles símbolos de C4 y de UML en un mismo diagrama sin decirlo.
  3. Incluye una leyendaExplica cada forma, color, estilo de línea y punta de flecha que tenga significado. Si no puedes explicarlo, quítalo.
  4. Limita los colores y dales significadoDos o tres colores, cada uno con un significado (externo, nuevo, en riesgo). No te fíes nunca solo del color: los diagramas se imprimen en blanco y negro y muchos lectores tienen alguna deficiencia en la visión de los colores.
  5. Flujo de izquierda a derecha o de arriba abajoSigue la dirección de lectura de tu público, con las solicitudes fluyendo en un solo sentido, para que la vista siga la historia.
  6. Etiqueta cada elemento y cada flechaNombres sin abreviaturas sin explicar; flechas en un solo sentido, con lo que fluye y, entre contenedores, el protocolo.
  7. Evita que las líneas se crucen siempre que puedasPrimero reorganiza las cajas; si siguen quedando cruces, divide el diagrama. Un diagrama con muchos cruces suele intentar mostrar demasiado.
  8. Que quepa en una pantallaComo mucho, una o dos docenas de elementos aproximadamente. Las imágenes más grandes corresponden a un nivel inferior o a varios diagramas.

Gestionar los desacuerdos y construir consenso

Los desacuerdos sobre la arquitectura son normales y sanos: suelen significar que las personas ven riesgos distintos. El objetivo no es ganar, sino llegar a una decisión que las personas que tendrán que vivir con ella entiendan y apoyen. Varias prácticas ayudan.

Separa los intereses de las posiciones. Tenemos que usar Kafka es una posición; me preocupa que perdamos eventos durante los despliegues es un interés, y los intereses a menudo pueden satisfacerse de varias formas. Acuerda los criterios antes de comparar opciones, como en una matriz de decisión ponderada; la mayoría de las discusiones acaloradas son en realidad desacuerdos sobre lo que importa, y se enfrían en cuanto eso se hace explícito. Resuelve la incertidumbre con evidencias: un spike de dos días o una prueba de carga zanjan muchos debates que las reuniones no pueden zanjar. Ponlo por escrito: un ADR propuesto o un documento de diseño permite que todos comenten a su ritmo y da voz a los compañeros más callados.

Busca el consentimiento en lugar de la unanimidad. El RFC 7282 del IETF (Pete Resnick, 2014) describe el consenso aproximado: se llega a una decisión cuando se han abordado todas las objeciones, lo que significa que se han considerado y respondido, aunque no necesariamente atendido. Preguntar ¿hay alguien que no pueda aceptar esto, y por qué? saca a la luz los problemas bloqueantes más deprisa que preguntar si todos están de acuerdo. Cuando el consenso no es posible, alguien tiene que decidir, y debe estar claro de antemano quién. La carta a los accionistas de 2016 de Jeff Bezos popularizó el disagree and commit (discrepar y comprometerse): las personas expresan abiertamente su desacuerdo y después se comprometen por completo con la decisión una vez tomada. Registra la discrepancia y sus razones en el ADR; si quienes discrepaban acaban teniendo razón, el registro muestra qué hay que revisar y por qué.

Dos modos de fallo merecen una advertencia. El arquitecto que gana todas las discusiones por antigüedad deja de enterarse de los problemas. El equipo que no puede decidir sin unanimidad deja que las decisiones importantes se tomen por omisión, que es lo contrario del último momento responsable.

Lista de comprobación: una presentación de arquitectura

Úsala antes de cualquier presentación de arquitectura, desde una actualización de cinco minutos para la dirección hasta una revisión formal.

  • Público y resultado identificadosPuedes decir en una frase quién estará en la sala y qué debería decidir o hacer después.
  • Primero la respuestaLa recomendación o el mensaje principal está en la primera diapositiva o en el primer párrafo.
  • Impulsores antes que diseñoLos objetivos de negocio, los objetivos de calidad y las restricciones se muestran antes que la solución.
  • El nivel de abstracción se ajusta al públicoNivel de contexto para los directivos, niveles de contenedores y de componentes para los ingenieros; no más de dos niveles en una misma sesión.
  • Una historia contada de principio a finUn recorrido siguiendo una solicitud, que incluye un fallo para los públicos técnicos.
  • Compromisos y riesgos mostrados con honestidadLas opciones, lo que cuesta cada una y aquello a lo que renuncias; los riesgos conocidos, enumerados antes de que nadie más los encuentre.
  • Cada diagrama tiene título, leyenda y etiquetasNotación coherente, pocos colores y con significado, legible desde el fondo de la sala.
  • Material enviado con antelaciónEn las revisiones y decisiones, el resumen y los ADR se envían al menos con dos días de antelación, para que la reunión sirva para debatir.
  • Lo que pides está explícitoAprobación, riesgos, una elección entre opciones o simplemente conocimiento; di cuál, y para cuándo.
  • Seguimiento registradoPreguntas, objeciones y acciones registradas con responsables; decisiones convertidas en ADR; documentación actualizada.

Comprueba lo que has entendido

¿Qué pregunta deberías responder antes de preparar cualquier explicación de arquitectura?

Quién es el público y qué debería decidir o hacer de forma distinta después; el contenido, el nivel de abstracción y el vocabulario se derivan de eso.

¿Por qué contar una historia que sigue una solicitud en lugar de mostrar solo un diagrama de cajas?

Un diagrama de cajas muestra lo que existe; la historia muestra cómo cooperan las partes y por qué, y revela de forma natural las esperas, los límites de confianza y los puntos de fallo que una imagen estática oculta.

¿En qué se diferencian en su propósito un documento de diseño y un ADR?

Un documento de diseño explora un problema y propone un diseño completo para recibir comentarios antes de construirlo; un ADR es un registro breve y permanente de una decisión. Los documentos de diseño aprobados suelen dar lugar a varios ADR.

¿Qué significa consenso aproximado en el RFC 7282?

Que cada objeción se ha considerado y respondido, aunque no necesariamente atendido; no es unanimidad ni una votación por mayoría.

Fin del capítulo 4Hacer la prueba del capítuloOpcional: 20 preguntas de opción múltiple y 2 respuestas escritas, en la app.Ir a la prueba →

Fuentes y lecturas recomendadas

¿Tienes una pregunta sobre esta sección? ArchitectBot, el asistente de estudio con IA del curso, responde primero a partir del curso.

Pregunta: “Tengo diez minutos con nuestro director financiero para justificar una migración de plataforma de seis meses. ¿Cómo debería estructurar la conversación y qué debería dejar fuera?”