Solicitud, consentimiento informado, recepción de la muestra y entrega del resultado, con cuatro perfiles atendidos y un estado único que las tres partes ven al mismo tiempo. El foco del rediseño es el médico oncólogo: menos pasos, menos datos que reescribir y visibilidad real de cada solicitud.
Roche ya opera el programa con una plataforma. El punto es que la que existe no acompaña bien a quien más la usa: el formulario es extenso y poco guiado, el consentimiento vive separado de la solicitud, y ninguna de las tres partes comparte una vista común del estado de cada caso.
Llegan solicitudes incompletas que hay que devolver y que retrasan la toma de la muestra.
Agrega pasos y coordinación por fuera del sistema. Es el punto donde más solicitudes se caen.
El médico llama para preguntar, el laboratorio responde por correo, Roche se entera al final.
No se puede saber cuántas solicitudes no llegaron a firmarse, ni por qué.
Un proceso que hoy toma días de coordinación entre tres partes pasa a resolverse en minutos por el médico y en una firma desde el celular por la paciente.
Y, por primera vez, Roche puede medirlo: cuántas solicitudes se crean, qué porcentaje se firma, cuánto tarda la firma, cuánto tarda el resultado y dónde se atasca el proceso.
Todos comparten el mismo núcleo: una solicitud con un estado único, un motor de notificaciones y una bitácora que registra cada evento. El orden en que aparecen abajo es el orden real del proceso.
Cinco indicadores que el tablero calcula sin trabajo manual y que proponemos revisar desde la primera semana en producción.
Consentimientos firmados sobre el total de enlaces enviados.
Mediana entre el envío del enlace y la firma de la paciente.
Mediana entre la recepción de la muestra y la publicación del informe.
Porcentaje que llega al laboratorio sin devolución.
Enlaces vencidos y solicitudes detenidas más allá del umbral acordado.
Una solicitud tiene un solo estado a la vez. Ese estado define quién la ve y qué puede hacer con ella, y es lo que permite que las tres partes trabajen sobre la misma información sin coordinarse por fuera.
Formulario iniciado y guardado automáticamente, todavía sin enviar.
Formulario completo y documento enviado a la paciente, aún sin firma.
Formulario completo y consentimiento firmado. Entra a la bandeja del laboratorio.
El laboratorio recibió a la paciente y registró la muestra.
Resultado e informe publicados. El médico recibe el aviso.
Muestra insuficiente, tejido no evaluable, bloque no recibido u otro motivo obligatorio.
El consentimiento tiene además estados propios —enviado, visto, rechazado y vencido— que se muestran en la línea de tiempo sin alterar el estado de la solicitud.
Cinco decisiones ya tomadas, no cinco intenciones.
Existe un prototipo navegable de 25 pantallas que recorre el flujo completo, de punta a punta. No arrancamos con un documento de requerimientos: arrancamos con una interfaz que Roche puede ver, recorrer y aprobar antes de la primera línea de código.
El formulario guía sección por sección, valida antes de dejar avanzar, guarda el borrador solo y no vuelve a pedir un dato que ya está en el sistema. Es la diferencia entre una herramienta que el médico tolera y una que usa sin ayuda.
Médicos y laboratorios ingresan con un código de un solo uso enviado por SMS o correo. El control de acceso son los mantenimientos: si el contacto no está dado de alta, no hay ingreso. Menos fricción para el médico y menos superficie de riesgo para Roche.
Recibe un enlace único por SMS, verifica su identidad con un dato y firma el consentimiento en DocuSign desde el celular. Sin instalar nada, sin crear una cuenta y sin volver a escribir sus datos. Menos pasos para la paciente es, directamente, mayor tasa de firma.
Cada mensaje enviado, cada apertura del documento, cada cambio de estado y cada resultado publicado quedan en una bitácora consultable. Roche deja de preguntar por correo en qué va una solicitud: lo ve en el tablero.
La arquitectura es deliberadamente convencional. En una plataforma que maneja datos de salud y una firma con valor legal, la elección correcta es la tecnología probada, con soporte y con perfiles disponibles en el mercado local, no la más novedosa.
| Capa | Tecnología | Por qué |
|---|---|---|
| Frontend | React, Vite y TypeScript | El prototipo aprobado es la especificación de la interfaz. TypeScript reduce los errores de integración con la API en un formulario de esta densidad. |
| Backend | NestJS y Prisma | Estructura modular que separa la máquina de estados, las integraciones y el acceso a datos. Facilita las pruebas automatizadas del flujo crítico. |
| Base de datos | Microsoft SQL Server | Alineado con el estándar de infraestructura ya en uso, con respaldo y soporte corporativo. |
| Mensajería | Twilio Verify y Messaging | Códigos de un solo uso y SMS con número por país, con reporte de entrega y códigos de error consultables. |
| Firma electrónica | DocuSign | Plantilla del consentimiento con campos precargados, entrega por enlace SMS y webhook de eventos hacia la plataforma. |
| Infraestructura | Microsoft Azure | Ambiente de pruebas y productivo con despliegue automatizado y capacidad de reversión. Loymark provee y opera la infraestructura en modalidad de servicio. |
Se revisa formalmente en la semana 6, con informe entregable.
Roche no adquiere, dimensiona ni administra infraestructura. Tres servidores separados por rol —web, aplicativo y base de datos—, con Cloudflare como primera línea de defensa, Microsoft Defender y evaluación continua con UpGuard.
| Nivel de servicio propuesto | Compromiso |
|---|---|
| Disponibilidad mensual objetivo | 99,5 % |
| Incidencia crítica · plataforma caída | 1 h hábil |
| Incidencia alta · función principal | 4 h hábiles |
| Respaldo de base de datos | Diario · 30 días |
| Objetivo de recuperación | RPO 24 h · RTO 8 h |
| Bolsa de soporte y evolución | 20 h/mes |
Ventana de mantenimiento: domingos 00:00–04:00 (CR), avisada con 72 h. Soporte L–V de 8:00 a 17:00 (CR). Las 20 horas no son acumulables. Niveles sujetos a confirmación con Roche.
Ocho semanas de construcción hasta la salida a producción y dos de hypercare. El orden de los módulos sigue la secuencia del proceso real: Roche ve funcionando la parte más visible del sistema al terminar la primera mitad del proyecto.
| Rol | Dedicación |
|---|---|
| Tech lead Arquitectura, contrato de API, revisión de código y backend de los módulos de mayor carga. Punto de contacto técnico y gestión del proyecto. | 8 semanas |
| Desarrollo backend (2) Máquina de estados, integraciones, notificaciones, bitácora y la API de los cuatro módulos. | 8 semanas |
| Desarrollo frontend Sistema de diseño y los cuatro módulos de interfaz, portados desde el prototipo. | 8 semanas |
| Aseguramiento de calidad Automatización, pruebas en dispositivos reales y revisión manual del flujo de consentimiento. | 8 semanas |
| Diseño UX/UI Sistema de diseño, ajustes sobre el prototipo y piezas de la zona pública. | Semanas 1–3 |
El quinto puesto es un tech lead que programa, no un rol exclusivamente de gestión. Es lo que permite absorber la carga de backend sin ampliar el equipo ni el plazo.
El estado del proyecto vive en un tablero compartido siempre accesible, no en un reporte que se arma para la reunión. Cada parte designa un único punto de contacto con capacidad de decidir.
Precio fijo para el alcance descrito, desglosado por actividad y facturado contra cuatro hitos verificables. El servicio mensual de hosting y operación se factura aparte, a partir del mes en que la plataforma entra a producción.
| Actividad del proyecto | Inversión (USD) |
|---|---|
| Diseño UX/UI y sistema de diseño | $2.262 |
| Plataforma base y servicios transversales Máquina de estados, motor de notificaciones, integraciones con Twilio y DocuSign, almacenamiento de documentos, bitácora de auditoría y API común. | $16.246 |
| Módulo del médico oncólogo Ingreso, formulario de cinco pasos, envío del consentimiento, seguimiento, reenvíos y consulta de resultados. | $9.066 |
| Experiencia de la paciente y firma Enlace de un solo uso, verificación de identidad, página puente, firma en DocuSign, confirmación y recordatorios. | $5.272 |
| Módulo de Laboratorios Echandi Ingreso por sede, bandeja por estado, recepción de la paciente y la muestra, carga del resultado y cierre. | $6.717 |
| Módulo de administración y tablero Mantenimiento de médicos y laboratorios, catálogos, ruteo automático, indicadores y bitácora de envíos. | $7.051 |
| Aseguramiento de calidad | $2.987 |
| Seguridad y privacidad de datos de salud | $2.305 |
| Aprovisionamiento de ambientes y despliegue | $2.485 |
| Aceptación, manuales y capacitación | $4.862 |
| Gestión del proyecto | $4.282 |
| Hypercare · 2 semanas | $3.130 |
| Inversión total del proyecto | $66.665 |
| Hito | % | Monto |
|---|---|---|
| H1 · Arranque y especificación Orden de compra y cierre de la semana 1 | 30 % | $20.000 |
| H2 · Demostración funcional Cierre de la semana 4 | 30 % | $20.000 |
| H3 · Salida a producción Cierre de la semana 8 | 30 % | $20.000 |
| H4 · Cierre del hypercare Cierre de la semana 10 | 10 % | $6.665 |
| Componente del servicio | USD/mes |
|---|---|
| Servidor web · Azure | $200 |
| Servidor aplicativo · Azure | $200 |
| Servidor de base de datos · Azure | $450 |
| Cloudflare | $50 |
| Respaldos y Microsoft Defender | $50 |
| UpGuard · operación, monitoreo y parches | Incluido |
| Bolsa de soporte y evolución 20 horas mensuales no acumulables, a US$55 por hora | $1.100 |
| Total mensual del servicio | $2.050 |
Referencia anual: US$24.600. Plazo mínimo de 12 meses. Los datos, documentos y respaldos son propiedad de Roche.
Montos en dólares de los Estados Unidos de América, antes de impuestos. No incluye los consumos de Twilio ni de DocuSign, que Roche contrata directamente. Todo cambio de alcance se documenta, se estima y se aprueba por escrito antes de ejecutarse. Vigencia de la propuesta: 30 días naturales desde su emisión. Condiciones de pago según el acuerdo marco vigente entre Roche y Loymark.
Esta sección es tan importante como la del alcance. Lo enumeramos para que no haya expectativas implícitas: varios de estos puntos son candidatos naturales a una fase siguiente.
Para arrancar en la fecha prevista, proponemos esta secuencia.