FAQ MicroFront Versión: 1.0.0Estado: VigenteEntrada en vigor desde: Obligado cumplimiento desde: | FAQ MicroFront Versión: 1.0.0Estado: PRE-RELEASEEntrada en vigor desde:Obligado cumplimiento desde: |
---|
Los cambios en la normativa vendrán acompañados de un registro de las modificaciones. De este modo se podrá realizar un seguimiento y consultar su evolución. Ordenándose de mas recientes a menos recientes, prestando especial cuidado a las cabeceras de la tablas dónde se indican las fechas de entrada en vigor y versión.
Versión | Pre-release | Adopción | Activa | Retiro | Alcance |
---|---|---|---|---|---|
v01r00 |
ARQUITECTURA
Arquitectura general del microfrontend en el SAS
Integración Directa de un microfronted
Integración Aisada de un Microfrontend
CONCEPTUALES
Un microfrontend es un web component que:
Un fragment es un web component que ofrece una unidad de interfaz de usuario (UI) que representa un componente funcional.
Son los elementos que, cuando se combinan, forman un microfrontend completo.
Cada fragment puede ser desarrollado, probado y desplegado de forma independiente, permitiendo la modularidad en el desarrollo de frontal.
Una capability es una funcionalidad no relativa al negocio, trasversal y que puede estar distribuida en uno o varios microfrontends/fragments.
Un Web Component es una tecnología estándar de la web que permite crear componentes de interfaz de usuario encapsulados y reutilizables que pueden integrarse fácilmente en cualquier aplicación web, independientemente del framework, tecnología o biblioteca de JavaScript utilizada.
La composición de los web components, viene determinada por la metodología de Atomic Web Design. En función de su granularidad. composición y la funcionalidad que implementen podemos tener:
SI.
Explicación:
DESARROLLO
La tecnología, determinada por el departamento de arquitectura de la stic, para el desarrollo de web component son:
No, en nuevos desarrollos no está permitido usar otra tecnología diferente a Lit
Tenga en cuenta que:
No se aconseja.
Tenga en cuenta que:
PROCESOS Y PETICIONES
En caso de necesitar un nuevo componente que no se encuentra dentro de los desarrollados por el equipo del catálogo de componentes, se debe crear un ticket Jira de decisión técnica (Tarea genera → tipo: decisión → subtipo: técnica) y asignársela al responsable del departamento LUIS MARTINEZ FONTIVEROS
El ticket deberá contener:
Una vez creado y asignado el ticket al departamento con la información se procederá a:
En caso de necesitar una nueva funcionalidad de un componente dentro de los desarrollados por el equipo del catálogo de componentes, se debe crear un ticket Jira de decisión técnica (Tarea genera → tipo: decisión → subtipo: técnica) y asignársela al responsable del departamento LUIS MARTINEZ FONTIVEROS
El ticket deberá contener:
Una vez creado y asignado el ticket al departo con la información se procederá a:
En caso de detectar un error en alguno de los componentes desarrollados por el equipo del catálogo de componentes, se debe comunicar al responsable técnico del proveedor para que se ponga en contacto con el departamento de arquitectura.
En caso de que el proveedor no disponga de un referente tecnológico, se debe crear una CGES al departamento de arquitectura de la stic con la incidencia y la mayor información de contexto posible que nos permita evaluar el error y reproducirlo y dar una estimación (fecha y versión) de resolución del error
En caso de que un proyecto tenga una necesidad que entre en conflicto con la normativa de desarrollo redactada, se deberá crear un ticket Jira de decisión técnica (Tarea genera → tipo: decisión → subtipo: técnica) y asignársela al responsable del departamento LUIS MARTINEZ FONTIVEROS .
Una vez asignada, el departamento analizará la necesidad y dará respuesta dentro del mismo ticket.
RECURSOS
SI.
Explicación:
SI, puedes encontrar las directrices de diseño de interfaces de usuario aquí
Todavía no, se está trabajando en ello.
NO.
Explicación:
INTEGRACIÓN
Un microfrontend se integra como un web component normal.
Se debe importar su modulo y hacer uso de su tag, propiedades y eventos tal y como esté definido en el api proporcionado.
Un microfrontend aislado se integra como un web component normal,
Se debe
Se debe hacer uso de la versión aislada del microfrontend, importar su modulo y hacer uso de su tag, propiedades y eventos tal y como esté definido en el api proporcionado.
Si, para ello debe existir, o se debe crear, un web component que exponga la aplicación en modo microfrontend.
El web component debe tener una propiedad que permita configurar al host el tipo de integración que quiere hacer:
Para una integración en build-time necesitas en tiempo de construcción integrar, en la aplicación host, el código del microfrontend.
Para ello hay dos opciones:
Para ambas opciones el proceso es similar
Para una integración en run-time necesitas que el microfrontend esté publicado en el CDN.
Hay dos mecanismos de integración:
Todos los microfrontales están desarrollados en base a las directrices marcadas por el sistema de diseño e instanciando para ello el componente de theme de la stic
Hay tres escenarios:
Hay dos escenarios:
Para aquellos microfrontend que requieran de seguridad y no tengan un acceso anónimo, el host debe obtener y transmitir el token JWT para integrarse de forma segura con el microfrontend.
Se debe consultar la documentación del microfrontend, donde se especificará el mecanismo de integración segura.
La comunicación con un microfrontend se realiza de la misma forma estandarizada que para un web component:
La comunicación entre dos microfrontend se realiza de la misma forma estandarizada que para un web component, a través de un padre. En este caso es el host el que debe actuar como tal escuchando los eventos de un microfrontend y transformando la respuesta a una propiedad del otro microfrontend.
La navegación siempre será interna, es decir, nunca a través de la url del navegador.
Se debe hacer uso de la propiedad definida en el api del microfronted.
El microfrontend en su documentación proporcionará una lista de los path y paramétricas asociadas.
El módulo del microfrontend, ofrecerá una constante con los path disponibles a utilizar para mitigar el fallo humano.
En un microfrontend hay dos tipos de configuraciones:
Se debe consultar la documentación del microfrontend para revisar las configuraciones que se deben realizar en el microfrontend y los mecanismos que se determinen
El estado entre el host y el microfrontend NUNCA será compartido, es decir, un host NUNCA podrá acceder a la información de contexto de un microfrontend de manera directa y viceversa.
En caso de necesitar un mecanismo de conocimiento del estado, cada elemento (host y microfrontend) deberá persistir en su propio contexto la información del otro.
En caso de considerar relevante compartir información sobre su estado, ambos elementos deberán usar los mecanismos de comunicación estándar para un web component:
Un microfrontend se versiona siguiendo las pautas marcadas por el versionado semántico [mayor.minor.patch]. Con esto se garantiza la retrocompatibilidad del microfrontend en cualquier versión dentro de una misma mayor.