Optimización del diseño de cargas de trabajo mediante flujos
En este artículo se describe la optimización dirigida de las cargas de trabajo mediante flujos. Los distintos componentes de una carga de trabajo tienen distintos requisitos y niveles de importancia. Al segmentar una carga de trabajo en flujos, puede priorizar diferentes partes de una carga de trabajo y alinear mejor las inversiones en la carga de trabajo con la importancia de cada flujo.
Este proceso de optimización de cargas de trabajo es iterativo e implica tres pasos clave: (1) definir la estructura de flujo dentro de la carga de trabajo, (2) definir los requisitos técnicos y (3) diseñar el flujo para cumplir los requisitos (consulte la figura 1).
Figura 1: Proceso para optimizar las cargas de trabajo mediante flujos.
Definición del flujo
Para poder definir los requisitos de flujo, debe comprender los impulsores empresariales del flujo. Los requisitos previos para definir un flujo identifican el proceso de negocio y el caso de uso que admite. Cuando comprenda los requisitos previos, puede empezar a documentar el flujo.
Descripción de los requisitos previos
Los flujos son secuencias de acciones que admiten la funcionalidad de la carga de trabajo. Hay dos tipos principales de flujos: flujos de usuario y flujos del sistema. Los flujos de usuario determinan las interacciones del usuario. Los flujos del sistema determinan la comunicación entre los componentes de la carga de trabajo. Los flujos admiten procesos empresariales y casos de uso. Una carga de trabajo consta de varios casos de uso. Debe identificar el proceso de negocio y el caso de uso que admite el flujo antes de documentar un flujo (consulte la figura 2).
Figura 2: Relación entre los procesos empresariales, los casos de uso, los flujos y la carga de trabajo.
Identificación del proceso de negocio
Un proceso de negocio es una serie de acciones (fases) que cumplen un requisito empresarial. Los flujos determinan la secuencia que toma un usuario o los datos para realizar cada fase de un proceso de negocio. Por ejemplo, vender productos en línea es un proceso empresarial. Las fases de este proceso de negocio podrían estar enumerando el producto en línea, recibiendo pedidos y entregando el producto.
Identificación del caso de uso
Un caso de uso define los requisitos funcionales de un flujo. Debe identificar y comprender el caso de uso que admite un flujo antes de establecer los requisitos técnicos de un flujo. Cada caso de uso debe admitir una fase en un proceso de negocio (consulte la figura 2). Un caso de uso debe definir los siguientes atributos:
Propósito: articular claramente las tareas o objetivos, como habilitar las compras en línea. Esta claridad guía el diseño funcional y establece objetivos claros para el diseño de flujo.
Importancia: evalúe la importancia del caso de uso, que va desde la rutina hasta la crítica. El valor asignado a un caso de uso informa de la priorización y el diseño del flujo. Los casos de uso de alto valor pueden requerir un control mejorado de errores, optimización del rendimiento o consideraciones sobre la experiencia del usuario.
Consumidores: identifique si los usuarios (clientes, personal) o componentes del sistema son los consumidores principales. Esta categorización determina si es un flujo de usuario o un flujo del sistema e influye en el diseño.
Eventos: defina desencadenadores o condiciones que inician y concluyen el caso de uso. Estos eventos definen los límites del flujo.
Ejecución: comprenda la frecuencia operativa y la variabilidad del caso de uso para prever la carga del sistema. Debe diseñar un flujo para controlar diferentes escenarios de ejecución.
Dependencias: identifique las interdependencias con otros casos de uso para la administración de riesgos. Reconocer las dependencias de un caso de uso ayuda a diseñar flujos que se integran sin problemas con otras partes del sistema. Debe garantizar la disponibilidad de las entradas necesarias y la compatibilidad de las salidas con los procesos posteriores.
Documentar el flujo
Use el caso de uso para documentar el flujo. Debe describir o asignar cada acción que necesite en un flujo. Capturar criterios y caminos de decisión. Identificar interacciones con otros casos de uso. Este esquema sirve como plano técnico para el diseño y la administración de flujos. También debe capturar información empresarial sobre el flujo. Asegúrese de incluir los detalles siguientes en la documentación del flujo:
Descripción del flujo: descripción general del flujo.
Proceso de negocio: el proceso de negocio que admite el flujo.
Propietario del proceso: el individuo que posee el proceso de negocio.
Partes interesadas: las personas que debe informar o consultar sobre el estado o los cambios del flujo.
Rutas de escalación: los usuarios o grupos con los que debe ponerse en contacto para resolver problemas. Es una secuencia de personas. El ámbito de la responsabilidad individual crece con cada persona en el camino.
Impacto empresarial: la importancia de este flujo a la empresa.
Clasificación de importancia: una etiqueta cualitativa que indica la importancia relativa del flujo.
Para obtener más información, consulte Ejemplos de flujo.
Definición de los requisitos de flujo
Utilice el caso de uso para establecer los objetivos técnicos del flujo. Defina objetivos medibles para el flujo que se alinean con los cinco pilares del marco bien diseñado (WAF). Estos pilares proporcionan un marco para establecer objetivos técnicos:
Objetivos de confiabilidad: evalúe la importancia de cada flujo y establezca los objetivos de confiabilidad en consecuencia. Determine los umbrales de rendimiento y establezca acuerdos claros de nivel de servicio (SLA) y objetivos (SLO). Los flujos de mayor importancia requieren objetivos de confiabilidad más estrictos.
Objetivos de seguridad: analice las necesidades de seguridad de cada flujo en función de la confidencialidad de los datos y las actividades del usuario. Implemente y actualice continuamente las medidas de seguridad para satisfacer estas necesidades, a la vez que garantiza el cumplimiento de los estándares normativos.
Objetivos de costo: comprenda las demandas de cada flujo para la asignación de recursos eficaz. Establezca los objetivos para equilibrar el costo con el rendimiento. Asegúrese de que el uso de recursos se alinea con las prioridades empresariales.
Objetivos operativos: defina métricas para una supervisión y solución de problemas eficaces. Los objetivos deben garantizar un uso eficaz de los recursos y la alineación con los objetivos de la organización.
Objetivos de rendimiento: base los objetivos de rendimiento en los requisitos iniciales de cada flujo. Asegúrese de que los flujos esenciales reciban recursos adecuados y ajusten continuamente los objetivos para satisfacer las demandas en evolución y mejorar las experiencias del usuario.
Diseñar el flujo
Diseñe el flujo para cumplir los objetivos técnicos. Debe familiarizarse con los procedimientos recomendados de diseño de flujo para lograr el resultado correcto. Compile y pruebe el flujo. Iteración en el diseño hasta que cumpla los objetivos técnicos establecidos.
Seguir los procedimientos recomendados de diseño de flujo
A medida que diseña un flujo, siga los procedimientos recomendados de diseño de flujo. Un flujo bien diseñado tiene los siguientes atributos:
Ámbito: identifique puntos iniciales y finales distintos para cada flujo. Borrar límites ayudan a optimizar las interacciones del usuario o del sistema.
Lógico: diseñe los flujos con un orden lógico de pasos. Optimice para la ruta de acceso más eficaz y reduzca los pasos innecesarios.
Mantenimiento: diseñe flujos que sean fáciles de actualizar y mantener. Use componentes modulares que puede modificar sin afectar a toda la carga de trabajo.
Definido: incorpore condiciones específicas que desencadenen o guíen cada paso de un flujo. Esta precisión garantiza que el flujo responda con precisión a las entradas del usuario, los cambios de datos o los estados del sistema.
Confiable: compile rutas de acceso de excepción y control de errores en los flujos. La administración eficaz de errores evita la interrupción y mantiene la integridad del flujo en circunstancias inesperadas.
Escalable: asegúrese de que puede controlar cargas variables y adaptarse al crecimiento o la reducción de las bases de usuarios o los volúmenes de datos.
Seguro: inserte medidas de seguridad dentro del flujo. Proteja los datos y las interacciones del usuario contra el acceso no autorizado y las amenazas.
Eficaz: planee el uso eficaz de los recursos sin sobreaprovisionar. Tenga en cuenta la optimización de costos.
Centrado en el usuario: para los flujos de usuario, alinee el diseño de flujo con las expectativas y los comportamientos del usuario. Haga que sea intuitivo y reduzca la curva de aprendizaje para los nuevos usuarios.
Desarrollo y prueba del flujo
Desarrolle el flujo para cumplir los objetivos técnicos y pruóbelo para asegurarse de que cumple sus requisitos. Este proceso valida que el flujo funciona según lo previsto, controla de forma eficaz sus tareas y cumple los objetivos técnicos. Estas son las instrucciones para compilar y probar un flujo:
Seleccionar tecnologías: elija tecnologías que se alineen con los objetivos establecidos en términos de confiabilidad, seguridad y rendimiento.
Flujo de desarrollo: cree el flujo según el diseño, teniendo en cuenta los objetivos establecidos.
Flujo de prueba: realice pruebas para asegurarse de que el flujo cumple los objetivos. Iteración según sea necesario para cumplir los objetivos.
Supervisión: implemente herramientas de supervisión para realizar un seguimiento del uso y los costos de los recursos.
Revise periódicamente el flujo con respecto a los objetivos establecidos y los estándares del sector. Use comentarios de supervisión y auditorías para mejorar el flujo. Ajuste los objetivos y los procesos según sea necesario para alinearse con las cambiantes necesidades empresariales o los avances tecnológicos.
Optimización de flujos
Repita el proceso definido en este artículo a lo largo del ciclo de vida del flujo. A medida que recorre en iteración el diseño de flujo, use el marco bien diseñado para optimizar los flujos desde la perspectiva de cada pilar:
- Confiabilidad del flujo
- Seguridad de flujo
- Optimización de costos de flujo
- Excelencia operativa de flow
- Eficiencia del rendimiento del flujo
Ejemplos de flujo
Estos son algunos ejemplos de flujo que le ayudarán a diseñar los flujos. En los ejemplos se usa la arquitectura de referencia de patrón de aplicación web confiable como base y se muestra la documentación que debe tener en cada flujo.
Flujo de usuario 1: Crear próximos conciertos
Descripción del flujo: los empleados del centro de llamadas usan la aplicación para crear un próximo concierto.
Procesos empresariales: este flujo admite el proceso de compra de vales , pero es asincrónico y reduce su importancia.
Propietario del proceso: Director de ventas.
Partes interesadas: departamento de ventas, planificación de conciertos y operaciones, equipo de plataforma y equipo de aplicaciones.
Rutas de escalación: equipo de aplicaciones, equipo de plataforma y departamento de ventas.
Impacto empresarial: este flujo es importante para que los nuevos conciertos estén disponibles en las plataformas de ventas, influyen directamente en el flujo de ingresos principal de la empresa. Cuando los empleados del centro de llamadas no pueden crear conciertos debido a la falta de disponibilidad de este flujo, afecta negativamente tanto a los ingresos como a la reputación de la empresa. Sin embargo, la alta disponibilidad no es esencial para este proceso, ya que los conciertos normalmente se programan con antelación cada semana. El departamento de ventas especificó un requisito de disponibilidad del 95 % para este proceso y está de acuerdo con el tiempo de inactividad fuera del horario comercial con fines de mantenimiento.
Clasificación de importancia: Baja.
Flujo de usuario 2: Conciertos de búsqueda
Descripción del flujo: los empleados del centro de llamadas usan la aplicación para buscar próximos conciertos.
Procesos empresariales: este flujo admite el proceso de compra de vales , pero los empleados del centro de llamadas pueden optar por enumerar todos los conciertos si la función de búsqueda no está disponible.
Propietario del proceso: departamento de experiencia del usuario (UX).
Partes interesadas: departamento de ventas, equipo de plataforma y equipo de aplicaciones.
Ruta de escalación: equipo de aplicación, equipo de plataforma, administrador de departamento de ventas a la llamada.
Impacto empresarial: este flujo permite a los empleados del centro de llamadas encontrar rápidamente conciertos y forma parte del proceso de ventas normal. La alta disponibilidad de este flujo no es fundamental, ya que los empleados tienen la capacidad de enumerar conciertos incluso en ausencia. Esto degrada la experiencia de los empleados del centro de llamadas podría degradarse y afectar a la productividad. Los clientes podrían experimentar frustración debido a un aumento de los tiempos de espera o retrasos. El departamento de ventas solicitó una disponibilidad del 99 % de este flujo durante el horario comercial normal.
Clasificación de importancia: Media.
Flujo de usuario 3: Obtener una lista de los conciertos
Descripción del flujo: los empleados del centro de llamadas usan la aplicación para obtener una lista de conciertos.
Procesos empresariales: este flujo admite directamente el proceso de compra de vales .
Propietario del proceso: Director de plataforma.
Partes interesadas: departamento de ventas, equipo de plataforma, equipo de datos.
Ruta de escalación: equipo de datos, ingeniero de llamadas de equipo de datos, ingeniero de plataforma en llamada.
Impacto empresarial: este flujo es integral a la ruta crítica de las transacciones que generan ingresos para la empresa. La alta disponibilidad es esencial, ya que los empleados del centro de llamadas dependen de este flujo para procesar las compras de vales. En reconocimiento de su importancia, la empresa exige un tiempo de actividad del 99,9 % para este flujo, que incluye horas laborables extendidas.
Clasificación de importancia: Alta.
Flujo de usuario 4: Vale de compra
Descripción del flujo: los empleados del centro de llamadas usan la aplicación (el proceso de autenticación y autorización) para comprar entradas para un próximo concierto (el próximo proceso de conciertos) en nombre de los clientes de Relecloud.
Procesos empresariales: este flujo es la característica principal y el flujo de la aplicación.
Propietario del proceso: Director de ventas.
Partes interesadas: departamento de ventas y todos los equipos técnicos.
Ruta de escalación: ingeniero de llamadas de equipo de aplicaciones, ingeniero de plataforma en llamada, ingeniero de datos de equipo de llamadas, director de operaciones principal.
Impacto empresarial: la alta disponibilidad de este flujo es fundamental, ya que permite directamente las compras de entradas de cliente. Cualquier mal funcionamiento o falta de disponibilidad de este flujo puede afectar significativamente tanto a los ingresos como a la reputación de la empresa. El negocio establece un requisito estricto para este proceso vital, esperando un tiempo de actividad del 99,9 %, incluso durante las horas laborables extendidas.
Clasificación de importancia: Alta.
Flujo de usuario 5: autenticación y autorización
Descripción del flujo: los empleados del centro de llamadas inician sesión de forma segura en la aplicación. Los administradores les proporcionan los roles adecuados para comprar vales en nombre de los clientes de Relecloud.
Procesos empresariales: este flujo admite directamente el proceso de compra de vales . Sin esta funcionalidad, los empleados del centro de llamadas no pueden iniciar sesión en la aplicación para comprar entradas.
Propietario del proceso: equipo de plataforma.
Partes interesadas: equipo de plataforma, equipo de operaciones y departamento de ventas.
Ruta de escalación: ingeniero de llamadas del equipo de plataforma, director de operaciones.
Impacto empresarial: este flujo requiere alta disponibilidad porque los empleados del centro de llamadas no pueden comprar vales si este flujo no funciona correctamente. Si este flujo no está disponible, afecta directamente a los ingresos y la reputación. Es un proceso clave para el que la empresa espera un tiempo de actividad del 99,9 %, incluido durante las horas laborables extendidas.
Clasificación de importancia: Alta.
Flujo del sistema: recopilación de telemetría
Descripción del flujo: para comprender los cambios de estado en el sistema de producción, la aplicación web y las instancias de API recopilan y envían información, errores y advertencias. Estos datos ayudan al equipo de operaciones a realizar la detección de anomalías, la solución de problemas y la generación de perfiles.
Procesos empresariales: este flujo no admite ningún proceso empresarial, pero proporciona datos importantes para el equipo de operaciones.
Propietario del proceso: Director de operaciones.
Partes interesadas: equipo de operaciones, equipo de plataforma y equipo de datos.
Ruta de escalación: equipo de operaciones (24/7), ingeniero de equipo de datos a la llamada.
Impacto empresarial: este flujo es esencial para los esfuerzos de supervisión y mejora continua de la empresa. Debe ser lo más redundante y resistente posible. El equipo de operaciones es responsable de restaurar rápidamente este flujo después de cualquier error para evitar la falta de información crítica y advertencias. Si el flujo no logra lograr la disponibilidad esperada, existe un riesgo de pasar por alto los problemas de producción, lo que podría provocar consecuencias graves. Para mitigar este riesgo, el departamento de operaciones tiene como objetivo un tiempo de actividad del 99 %, 24/7. Deben programar el tiempo de inactividad relacionado con el mantenimiento con al menos 48 horas de antelación.
Clasificación de importancia: Media.