Este contenido está desactualizado. Esta versión de Well-Architected Framework se encuentra ahora en:  https://docs.aws.amazon.com/es_es/wellarchitected/2022-03-31/framework/operational-excellence.html
     
 
         OPS 5: ¿Cómo reduce los defectos, facilita la corrección y mejora el flujo en la producción?
         
         
            Adopte enfoques que mejoren el flujo de los cambios en la producción y que permitan
            la refactorización, la retroalimentación rápida sobre la calidad y la corrección de
            errores. Estos enfoques aceleran los cambios beneficiosos que se aplican a la fase
            de producción, limitan los problemas implementados y permiten una rápida identificación
            y solución de los problemas que acarrearon las actividades de implementación.
            
         
         Recursos
          CI/CD for Serverless Applications on AWS 
 Design with Ops in Mind
 AWS Developer Tools
         Prácticas recomendadas:
         
            - 
               Utilizar el control de versiones: 
                  Utilice el control de versiones para habilitar el seguimiento de los cambios y las
                  versiones.
                  
                
- 
               Evaluar y validar los cambios: 
                  Pruebe y valide los cambios para ayudar a limitar y detectar errores. Automatice las
                  pruebas a fin de reducir los errores causados por procesos manuales y, también, reducir
                  el nivel de esfuerzo necesario para realizar las pruebas.
                  
                
- 
               Utilizar sistemas de administración de la configuración: 
                  Utilice sistemas de administración de la configuración para realizar cambios en la
                  configuración y rastrearlos. Estos sistemas reducen los errores causados por los procesos
                  manuales y reducen el nivel de esfuerzo necesario para implementar cambios. 
                  
                
- 
               Utilizar sistemas de administración de implementaciones y creaciones: 
                  Utilice sistemas de administración de implementaciones y creaciones. Estos sistemas
                  reducen los errores causados por los procesos manuales y reducen el nivel de esfuerzo
                  necesario para implementar cambios. 
                  
                
- 
               Llevar a cabo la administración de parches: 
                  Lleve a cabo la administración de parches para obtener características, abordar problemas
                  y mantener la conformidad con la gobernanza. Automatice la administración de parches
                  a fin de reducir los errores causados por procesos manuales y, también, reducir el
                  nivel de esfuerzo necesario para aplicar parches.
                  
                
- 
               Compartir estándares de diseño: 
                  Comparta las prácticas recomendadas en los equipos a fin de incrementar el conocimiento
                  y maximizar los beneficios de los esfuerzos de desarrollo.
                  
                
- 
               Implementar prácticas para mejorar la calidad del código: 
                  Implemente prácticas para mejorar la calidad del código y minimizar los defectos.
                  Por ejemplo, el desarrollo basado en pruebas, las revisiones de códigos y la adopción
                  de estándares.
                  
                
- 
               Utilizar varios entornos: 
                  Utilice varios entornos para experimentar, desarrollar y evaluar su carga de trabajo.
                  Utilice niveles de control en crecimiento a medida que los entornos se acercan a la
                  producción con el fin de adquirir confianza en que las cargas de trabajo funcionarán
                  como se previó al momento de la implementación.
                  
                
- 
               Realizar cambios reversibles, pequeños y frecuentes: 
                  Los cambios frecuentes, pequeños y reversibles reducen el alcance y el impacto de
                  un cambio. Esto facilita la resolución de problemas, permite correcciones más rápidas
                  y proporciona la opción de restaurar los cambios.
                  
                
- 
               Automatizar por completo la integración y la implementación: 
                  Automatice la creación, implementación y prueba de la carga de trabajo. Esto reduce
                  los errores causados por los procesos manuales y reduce el esfuerzo necesario para
                  implementar los cambios.
                  
                
Plan de mejora
         Utilizar el control de versiones
Utilizar el control de versiones: 
               Mantenga los recursos en repositorios con control de versiones. De esta manera, se
               puede rastrear cambios, implementar nuevas versiones, detectar cambios en versiones
               existentes y revertir a versiones anteriores (por ejemplo, restaurar a un estado correcto
               conocido en caso de error). Integre las capacidades de control de versiones de sus
               sistemas de administración de configuración en sus procedimientos.
               
 Introduction to AWS CodeCommit
 What is AWS CodeCommit?
         
         Evaluar y validar los cambios
Evaluar y validar los cambios: 
               Se deben probar los cambios y se deben validar los resultados en todas las etapas
               del ciclo de vida (por ejemplo, desarrollo, prueba y producción). Utilice los resultados
               de las pruebas para confirmar nuevas características y mitigar los riesgos y el impacto
               de implementaciones fallidas. Automatice las pruebas y la validación para garantizar
               la coherencia de la revisión, a fin de reducir los errores causados por procesos manuales
               y, también, reducir el nivel de esfuerzo necesario.
               
 What is AWS CodeBuild?
 Local build support for AWS CodeBuild
         
         Utilizar sistemas de administración de la configuración
Utilizar sistemas de administración de la configuración: 
               Utilice sistemas de administración de configuración para hacer un seguimiento y aplicar
               cambios con el fin de reducir errores causados por los procesos manuales y reducir
               el nivel de esfuerzo.
               
 Infrastructure configuration management
 AWS Config
 What is AWS Config?
 Introduction to AWS CloudFormation
 What is AWS CloudFormation?
 AWS OpsWorks
 What is AWS OpsWorks?
 Introduction to AWS Elastic Beanstalk
 What is AWS Elastic Beanstalk?
         
         Utilizar sistemas de administración de implementaciones y creaciones
Utilizar sistemas de administración de implementaciones y creaciones: 
               Utilice sistemas de administración de implementaciones y creaciones para hacer un
               seguimiento y aplicar cambios, para reducir errores causados por los procesos manuales
               y para reducir el nivel de esfuerzo. Automatice completamente la canalización de implementación
               e integración del código de registro mediante la creación, realización de pruebas,
               implementación y validación. Esto reduce el tiempo de espera, permite una mayor frecuencia
               de cambio y reduce el nivel de esfuerzo. 
               
 What is AWS CodeBuild?
 Continuous integration best practices for software development
 Slalom: CI/CD for serverless applications on AWS
 Introduction to AWS CodeDeploy - automated software deployment with Amazon Web Services
 What is AWS CodeDeploy?
         
         Llevar a cabo la administración de parches
Administración de parches: 
               Aplique parches a los sistemas para resolver problemas, para obtener características
               o capacidades deseadas y para mantener la conformidad con la política de gobernanza
               y los requisitos de soporte del proveedor. En sistemas inmutables, implemente el conjunto
               adecuado de parches para obtener el resultado deseado. Automatice el mecanismo de
               administración de parches a fin de reducir el tiempo transcurrido para aplicar el
               parche, los errores causados por procesos manuales y el nivel de esfuerzo necesario
               para aplicar parches.
               
 AWS Systems Manager Patch Manager
         
         Compartir estándares de diseño
Compartir estándares de diseño: 
               Comparta las prácticas recomendadas existentes, los estándares de diseño, las listas
               de verificación, los procedimientos operativos y los requisitos de guía y gobernanza
               entre todos los equipos para reducir la complejidad y maximizar los beneficios de
               los esfuerzos de desarrollo. Asegúrese de que existan procedimientos para solicitar
               cambios, incorporaciones y excepciones a los estándares de diseño para favorecer la
               mejora e innovación continuas. Asegúrese de que los equipos conozcan el contenido
               publicado para poder aprovecharlo y limitar la repetición del trabajo y el esfuerzo
               desperdiciado.
               
 Delegating access to your AWS environment
 Share an AWS CodeCommit repository
 Easy authorization of AWS Lambda functions
 Sharing an AMI with specific AWS accounts
 Speed template sharing with an AWS CloudFormation designer URL
 Using AWS Lambda with Amazon SNS
         
         Implementar prácticas para mejorar la calidad del código
Implementar prácticas para mejorar la calidad del código: 
               Implemente prácticas para mejorar la calidad del código a fin de minimizar los defectos
               y el riesgo de implementarlos. Por ejemplo, el desarrollo basado en pruebas, la programación
               en pares, las revisiones de códigos y la adopción de estándares.
               
            
         
         Utilizar varios entornos
Utilizar varios entornos: 
               Proporcione a los desarrolladores entornos de prueba con controles minimizados para
               que puedan experimentar. Ofrezca entornos individuales de desarrollo para permitir
               el trabajo en paralelo y, de esta forma, aumentar la agilidad de desarrollo. Implemente
               controles más rigurosos en los entornos que aborden la producción para permitirles
               a los desarrolladores la libertad necesaria para innovar. Utilice Infrastructure as
               Code y sistemas de administración de configuración para implementar entornos configurados
               de manera coherente con los controles que están presentes en la fase de producción
               con el fin de garantizar que los sistemas funcionen como se previó al momento de implementarlos.
               Cuando los entornos no estén en uso, apáguelos para evitar costos asociados con recursos
               inactivos (por ejemplo, sistemas de desarrollo durante la noche o los fines de semana).
               Implemente entornos equivalentes a la producción cuando realice pruebas de carga para
               facilitar resultados válidos.
               
 What is AWS CloudFormation?
 How do I stop and start Amazon EC2 instances at regular intervals using AWS Lambda?
         
         Realizar cambios reversibles, pequeños y frecuentes
Realizar cambios reversibles, pequeños y frecuentes: 
               Los cambios frecuentes, pequeños y reversibles reducen el alcance y el impacto de
               un cambio. Esto facilita la resolución de problemas, permite correcciones más rápidas
               y proporciona la opción de restaurar los cambios. Además, aumenta la tasa a la cual
               puede entregar valor a la empresa.
               
            
         
         Automatizar por completo la integración y la implementación
Utilizar sistemas de administración de implementaciones y creaciones: 
               Utilice sistemas de administración de implementaciones y creaciones para hacer un
               seguimiento y aplicar cambios, para reducir errores causados por los procesos manuales
               y para reducir el nivel de esfuerzo. Automatice completamente la canalización de implementación
               e integración del código de registro mediante la creación, realización de pruebas,
               implementación y validación. Esto reduce el tiempo de espera, permite una mayor frecuencia
               de cambio y reduce el nivel de esfuerzo. 
               
 What is AWS CodeBuild?
 Continuous integration best practices for software development
 Slalom: CI/CD for serverless applications on AWS
 Introduction to AWS CodeDeploy - automated software deployment with Amazon Web Services
 What is AWS CodeDeploy?