Simplificar
- 15 minutos
|
|
|---|
A menudo es lo que se quita en lugar de lo que agrega que hace que las soluciones sean más confiables. Mantener las cosas sencillas ayuda a evitar problemas de control, reducir las ineficiencias y evitar errores de configuración o problemas inesperados. Pero la sobresimplificación puede introducir puntos únicos de error. Todo se trata de encontrar un equilibrio.
Escenario de ejemplo
Contoso Travel está comprando e integrando una pequeña empresa de inicio que tiene una popular aplicación de viajes basada en web. La aplicación es popular porque obtiene grandes ofertas con hoteles y aerolíneas y usa redes sociales para el marketing dirigido.
La aplicación del inicio se creó mediante Node.js y se ejecuta en máquinas virtuales (VM) hospedadas tanto en su centro de datos como en Amazon Web Services (AWS).
Simplificar los componentes de carga de trabajo
Agregue solo componentes a la configuración si le ayudan a alcanzar sus objetivos empresariales. Céntrese en lo esencial.
El diseño de requisitos empresariales puede dar lugar a una solución sencilla que es fácil de ejecutar y administrar. Evite tener demasiadas partes críticas, ya que cada una puede ser un punto de error potencial.
Desafío de Contoso
- Un componente de la nueva aplicación permite a los usuarios enviar comentarios en el sitio web después de realizar una reserva. La mayoría de los usuarios omiten esta característica. En su lugar, prefieren usar las redes sociales de la empresa para los comentarios, que se usa con más frecuencia para la interacción del usuario y el marketing.
Aplicación del enfoque y los resultados
Como parte de la versión inicial de la versión de marca Contoso Travel de la aplicación, el equipo quita la característica de comentarios del sitio web.
Un código base más pequeño significa un menor costo de mantenimiento y operación. Y no afecta a los requisitos empresariales.
Estandarizar el ciclo de vida de desarrollo de software
Establezca estándares claros para codificar, implementar y procesar y documentarlos. Use comprobaciones automatizadas para aplicar estos estándares.
Los estándares ayudan a mantener las cosas coherentes y a reducir los errores humanos. El uso de convenciones de nomenclatura estándar y guías de estilo de código puede mantener la calidad y facilitar la identificación de recursos para solucionar problemas.
Desafío de Contoso
El equipo de desarrollo del inicio carece de estándares definidos. Usan bibliotecas superpuestas, no aplican estilos de codificación y sus canalizaciones de versión carecen de puertas de prueba formales y automatizadas.
El equipo de Contoso encuentra el nuevo código base difícil de mantener debido al uso incoherente de estilos y bibliotecas.
Hay muchos problemas después de actualizaciones importantes en producción. A veces, el equipo debe revertir las actualizaciones o aplicar correcciones activas durante la implementación. Debido a estos problemas frecuentes, todo el equipo debe ayudar cada vez que publique actualizaciones en producción. Para empeorar las cosas, estos problemas están dañando la reputación de Contoso y dando a los usuarios una mala experiencia.
Aplicación del enfoque y los resultados
El equipo que admite la nueva aplicación funciona para aplicar estilos de codificación, estandarizar bibliotecas y patrones de diseño y formalizar las puertas de lanzamiento en pruebas automatizadas.
Documentan todas las nuevas herramientas, patrones de diseño y estilos para que sea más fácil mantener la carga de trabajo y detectar desviaciones durante las revisiones de código.
Minimización de las operaciones y de la carga de desarrollo
Use características proporcionadas por la plataforma y recursos creados previamente para satisfacer los objetivos empresariales de forma eficaz.
Este enfoque ahorra tiempo de desarrollo y se basa en prácticas probadas usadas en proyectos similares.
Desafío de Contoso
Para la versión inicial de la aplicación de marca Contoso Travel, el equipo mueve la solución de Node.js de máquinas virtuales a Azure App Service para beneficiarse de sus características de confiabilidad integradas.
La versión de la máquina virtual tiene mucho código personalizado para la instrumentación.
Aplicación del enfoque y los resultados
Durante la migración inicial a App Service, el equipo quita todo el código de instrumentación personalizado mediante la implementación automática de Application Insights.
También aprovechan otras funciones de App Service, como el escalado automático, la integración de Azure Key Vault y la redundancia zonal.