La implementación debe comenzarse antes de terminar la construcción de la solución |
Como apuntamos hace algunas semanas (ver), la implementación de una solución está siempre llena de posibles puntos de falla porque las máquinas y el ambiente donde se desarrolla nunca reproducen exactamente las condiciones de operación que tendrá la solución en producción.
Las aplicaciones de teleinformación que se construyen hoy en día son cada vez más fáciles de usar por sus pretendidas audiencias, pero cada vez más complejas en su interior y en la articulación de sus componentes, por lo que siempre hay variables de configuración de la infraestructura requerida y procesos de coordinación que deben asegurarse. Una aplicación moderna requieren de un sistema operativo, un servidor de Web, probablemente una capa de gestión dinámica de páginas Web, sin duda un manejador de bases de datos y un servidor de correos, una capa de seguridad informática (antivirus, cortafuegos, etc), quizá un sistema de gestión de la autenticación, etc. Todos estos son sistemas previos que tienen versiones y necesidades de coordinación con capas de software anteriores, laterales y superiores, que deben existir y funcionar conforme a estas necesidades.
Debido a lo anterior, los posibles puntos de falla durante la transición a la producción se multiplican y un buen proceso de implementación debe comenzar antes de que el equipo de desarrollo haya concluido la fase de construcción de la solución. Dejar para el momento en que la aplicación esté construida la instalación, verificación y validación del buen desempeño de estos componentes es iniciar tarde, en forma arriesgada y en condiciones de estrés lo que puede asegurarse temprano, en forma segura y tranquila.
La recomendación, así pues, es comenzar a trabajar en un ambiente de preproducción instalando cada componente operativo que será necesario y asegurándose de que trabaja adecuadamente en coordinación con los otros. Esto implica siempre, para cada uno, una verificación y una validación (Ver Verficar y validar) . Para ello se deben tener criterios claros de cómo comprobar que el componente está trabajando. No simplemente realizar la carga del mismo, su instalación como programa genérico, sino asegurar su operación en las condiciones específicas que será requerida.
¿Por qué descubrir a última hora que, por ejemplo, el servidor de correos tiene una restricción que trabará el desempeño de la solución que se está creando?
En ocasiones hemos visto repetirse los errores de la ingenuidad e inexperiencia como considerar que porque una capa de software ya trabaja en una aplicación anterior lo hará en esta, o dado que ya salió una nueva versión del sistema operativo entonces usémosla en lugar de la anterior, y, por supuesto los errores de falta de planificación donde los criterios de validación de capas no están definidos y simplemente se espera que la globalidad de los componentes trabajen sin asegurar los pasos previos, o los errores del encuentro de culturas donde no se deja explícito qué es lo que se entiende como validación (Ver La validación de una solución).
No hay comentarios:
Publicar un comentario