He tenido algún contacto con algunas personas que tienen algunos detalles sobre la arquitectura del sitio y todo lo que puedo hacer es negar con la cabeza. Si bien no voy a revelar detalles, es muy claro que no pudieron diseñar el sistema para manejar un gran volumen de carga y hacerlo escalable verticalmente. Por “verticalmente”, quiero decir que las diversas capas del sistema fueron capaces de manejar la carga alimentada por las capas superiores. El escalado horizontal simplemente está arrojando más servidores al problema.
Pero la escala horizontal no lo ayuda si tiene, por ejemplo, 10 servidores en la capa superior que sirve el sitio y sus páginas si todos esos servidores canalizan la toma de decisiones y el tráfico funcional a solo 2 debajo y esos dos servidores no pueden manejarlo y no puede agregar servidores en ese nivel para manejar la carga debido a limitaciones de software / red / diseño.
Es decir, aparentemente, uno de los principales problemas arquitectónicos.
Otro problema importante es que el software que esas máquinas con restricciones ejecutan no está diseñado para permitir que se divida fácilmente. Al parecer, han colocado múltiples funciones que deberían haberse separado en las mismas máquinas que las llaman. Esta es una receta para el desastre. Crea demasiadas variables para el fracaso. A medida que una pieza reduce los recursos y la capacidad, comienza a eliminar los otros componentes incluso si funcionan correctamente.
Otro problema es cambiar los requisitos. Las consideraciones políticas hicieron que el gobierno requiriera que el sitio hiciera la inscripción por adelantado para mostrar el precio subsidiado para reducir el impacto del anuncio al público estadounidense. Y ese gran cambio funcional se hizo muy, pero muy tarde. Eso cambió el diseño fundamental del sitio.
Es muy evidente que nunca hicieron ninguna prueba integrada real. Esto explica por qué las compañías de seguros obtienen datos erróneos, faltantes o erróneos. Los puntos de integración como este son las principales fuentes de problemas y si no está planificando y diseñando para manejarlos de manera robusta, NO podrá. Tengo una expresión que describe esto: “Los buenos programadores preguntan ‘¿Cómo puedo hacer que esto funcione? Los grandes programadores preguntan’ ¿Cómo puedo hacer que esto falle? ‘”. Se supone que puede hacer que el código funcione. La forma en que el código responde a los estados defectuosos, errores, interrupciones, etc. es la marca de soluciones de software bien diseñadas. Muchos proyectos grandes son presa de este problema porque los administradores del proyecto no quieren lidiar con el tiempo y la presión de las pruebas hasta que sea demasiado tarde, o nunca.
¿Necesita # pacientes para firmar algo por adelantado para obtener acceso al portal?
¿Cuál es el futuro de la defensa del paciente en el cuidado de la salud?
Este sitio de muestra completo que los tres tipos de Health Sherpa (The Health Sherpa) juntaron es el clásico “síndrome demo”. Sí, el sitio de HealthSherpa es bonito pero no tiene una funcionalidad real. Hicieron un poco de lógica, pero no revisaron los requisitos del gobierno y no tienen verdaderas agallas en la lógica de negocios. Pero demuéstrese que para alguien que asume que “el sitio está haciendo algo” significa que puede, usted entra directamente en la suposición de que si parece hecho, casi debe hacerse. La parte más difícil es la integración con los back ends del gobierno y eso es difícil.
La arquitectura del intermediario de datos aparentemente no puede escalar. También es muy difícil hacerlo bien y muchas cosas pueden morderte en el proceso. Según el gobierno, parece que también difirieron cualquier prueba de rendimiento hasta el último minuto. Eso fue finalmente fatal.
Si bien no revelaré detalles, acabo de terminar una prueba de rendimiento exhaustiva para un sitio web de servicios financieros diseñado para dar servicio a varios millones de personas. Pasamos casi cinco (5) meses realizando ejecuciones diarias de rendimiento, viendo fallas en todo tipo de lugares, vemos que los puntos de integración fallan y aparecen muchas grietas imprevistas cuando interactúan todos los componentes. Día tras día, para niveles de carga comparables a lo que experimentaría el Mercado de Seguros Médicos, Ley de Cuidado de Salud Asequible.
Eso fue un requisito absoluto. No escatimes en eso. Tomó un esfuerzo masivo para que nuestro sitio manejara la carga y los problemas con los que lidiamos fueron difíciles. También es tanto un arte como una ciencia. Debe tener conocimiento a nivel de detalle, así como una vista a nivel de sistema y ver cómo todas las partes interactúan y se afectan entre sí. La medición es crítica. Debe saber qué información le indica para saber cuál es la causa y cómo solucionarla. El contratista nunca hizo esto. Tontos.
Para concluir, estaban condenados desde el momento en que comenzaron. El desarrollo serio en el portal no comenzó hasta ESTE año. Si pasé 5 meses solo en la prueba de rendimiento (que también incluyó 3 meses adicionales de diseño interno y análisis de rendimiento antes de que realmente martilleáramos el código) más los 13 meses adicionales que nos llevó escribir el código para un sitio de finanzas, lo que hace que cualquier persona con cualquier entendimiento, piense que puede armar un sistema interactivo, integrado en múltiples sistemas, complejo y basado en servicios para usuarios potenciales de 15M en NUEVE MESES y tener éxito?!?!
Y, sin embargo, ellos cantan que el sitio será arreglado para fines de noviembre. Dame un momento para recuperar el aliento porque estoy demasiado ocupado aullando de risa. La gente necesita enviar copias de “El hombre-mes mítico” por correo, porque aparentemente estas personas no han aprendido sus lecciones.
Ahora usamos healthcare.gov en mi compañía como un epíteto. “No haga que su proyecto sea otro healthcare.gov”. Personas con experiencia en TI solo sacuden la cabeza. Su fracaso fue predecible.
Esto es realmente difícil de explicar a un lego que no entiende la arquitectura de software y el diseño de sistemas. No es solo un “sitio” con imágenes bonitas. Como un iceberg, el 90 por ciento está debajo de la superficie y esa es una pieza que finalmente te hundirá.