

# SUS 6 ¿Cómo respaldan sus procesos organizativos sus objetivos de sostenibilidad?
<a name="sus-06"></a>

Realice cambios en sus prácticas de desarrollo, prueba e implementación como forma de reducir el impacto en la sostenibilidad. 

**Topics**
+ [SUS06-BP01 Adoptar métodos que permitan introducir mejoras en la sostenibilidad rápidamente](sus_sus_dev_a2.md)
+ [SUS06-BP02: Mantenimiento de una carga de trabajo actualizada](sus_sus_dev_a3.md)
+ [SUS06-BP03: Incremento de la utilización de los entornos de compilación](sus_sus_dev_a4.md)
+ [SUS06-BP04 Usar granjas de dispositivos administrados para pruebas](sus_sus_dev_a5.md)

# SUS06-BP01 Adoptar métodos que permitan introducir mejoras en la sostenibilidad rápidamente
<a name="sus_sus_dev_a2"></a>

Adopte métodos y procesos para validar las mejoras potenciales, minimizar los costes de las pruebas y ofrecer pequeñas mejoras.

 **Patrones comunes de uso no recomendados:** 
+  La revisión de su solicitud de sostenibilidad es una tarea que se realiza solo una vez al comienzo de un proyecto. 
+  Su carga de trabajo se ha quedado obsoleta, ya que el proceso de lanzamiento es demasiado complejo para incorporar pequeños cambios para la eficiencia de los recursos. 
+  No dispone de mecanismos para mejorar su carga de trabajo para la sostenibilidad. 

 **Beneficios de establecer esta práctica recomendada:** si establece un proceso para incorporar mejoras de sostenibilidad y realizar un seguimiento de ellas, podrá adoptar continuamente nuevas características y capacidades, eliminar problemas y mejorar la eficacia de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Pruebe y valide las mejoras de sostenibilidad potenciales antes de desplegarlas en producción. Tenga en cuenta el coste de las pruebas al calcular las posibles ventajas futuras de una mejora. Desarrolle métodos de prueba de bajo coste para ofrecer pequeñas mejoras. 

 **Pasos para la implementación** 
+  Añada requisitos para la mejora de la sostenibilidad a sus tareas pendientes de desarrollo. 
+  Utilice un [proceso de mejora](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/improvement-process.html) iterativo para identificar, evaluar, priorizar, probar y desplegar estas mejoras. 
+  Mejore y optimice continuamente sus procesos de desarrollo. Por ejemplo, [automatice su proceso de entrega de software mediante canalizaciones de integración y entrega continuas (CI/CD)](https://aws.amazon.com/getting-started/hands-on/set-up-ci-cd-pipeline/) para probar y desplegar posibles mejoras con el fin de reducir el nivel de esfuerzo y limitar los errores provocados por los procesos manuales. 
+  Desarrolle y pruebe posibles mejoras con los componentes representativos mínimos viables para reducir el coste de las pruebas. 
+  Evalúe continuamente el impacto de las mejoras y realice los ajustes necesarios. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS habilita soluciones de sostenibilidad](https://aws.amazon.com/sustainability/) 
+ [ Scalable agile development practices based on AWS CodeCommit](https://aws.amazon.com/blogs/devops/scalable-agile-development-practices-based-on-aws-codecommit/)(Prácticas de desarrollo ágil escalables basadas en AWS CodeCommit)

 **Vídeos relacionados: ** 
+ [ Delivering sustainable, high-performing architectures ](https://www.youtube.com/watch?v=FBc9hXQfat0)(Entrega de arquitecturas sostenibles y de alto rendimiento)

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Turning cost & usage reports into efficiency reports](https://www.wellarchitectedlabs.com/sustainability/300_labs/300_cur_reports_as_efficiency_reports/) (Laboratorio de Well-Architected: convertir informes sobre costes y uso en informes de eficiencia) 

# SUS06-BP02: Mantenimiento de una carga de trabajo actualizada
<a name="sus_sus_dev_a3"></a>

Mantenga actualizada su carga de trabajo para adoptar características eficaces, eliminar problemas y mejorar la eficacia general de su carga de trabajo. 

 **Patrones comunes de uso no recomendados:** 
+ Asume que su arquitectura actual es estática y no se actualizará con el tiempo.
+  No dispone de sistemas ni de una cadencia regular para evaluar si los programas y paquetes actualizados son compatibles con su carga de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** al establecer un proceso para mantener su carga de trabajo actualizada, puede adoptar nuevas funciones y capacidades, resolver problemas y mejorar la eficiencia de la carga de trabajo.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La actualización de sistemas operativos, tiempos de ejecución, middlewares, bibliotecas y aplicaciones puede mejorar la eficacia de la carga de trabajo y facilitar la adopción de tecnologías más eficientes. Un software actualizado también puede incluir características que midan el impacto de su carga de trabajo en la sostenibilidad de forma más precisa, ya que los proveedores ofrecen características para cumplir sus objetivos de sostenibilidad propios. Adopte una cadencia periódica para mantener su carga de trabajo al día de las últimas características y versiones. 

 **Pasos para la implementación** 
+  Defina un proceso y un calendario para evaluar nuevas funciones o instancias para su carga de trabajo. Aproveche la agilidad de la nube para probar rápidamente cómo las nuevas funciones pueden mejorar su carga de trabajo para: 
  +  Reducir el impacto en la sostenibilidad. 
  +  Lograr la eficacia operativa. 
  +  Eliminar las barreras para una mejora planificada. 
  +  Mejorar su capacidad a la hora de medir y administrar las repercusiones en la sostenibilidad. 
+  Inventariar el software y la arquitectura de su carga de trabajo e identificar los componentes que deben actualizarse. 
  +  Puede usar [Inventario de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-inventory.html) para recopilar los metadatos del sistema operativo (SO), las aplicaciones y los metadatos de instancias de sus instancias de Amazon EC2 y saber rápidamente qué instancias están ejecutando el software y las configuraciones requeridas por su política de software así como las instancias que deben actualizarse. 
+  Entienda cómo actualizar los componentes de su carga de trabajo.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_dev_a3.html)
+  Utilice la automatización del proceso de actualización para reducir el nivel de esfuerzo para desplegar nuevas funciones y limitar los errores causados por los procesos manuales. 
  +  Puede utilizar [CI/CD](https://aws.amazon.com/blogs/devops/complete-ci-cd-with-aws-codecommit-aws-codebuild-aws-codedeploy-and-aws-codepipeline/) para actualizar automáticamente las AMI, las imágenes de contenedor y otros artefactos relacionados con su aplicación en la nube. 
  +  Puede utilizar herramientas como [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) para automatizar el proceso de actualizaciones del sistema y programar la actividad con [Ventanas de mantenimiento de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture) 
+  [Novedades de AWS](https://aws.amazon.com/new/?ref=wellarchitected&ref=wellarchitected) 
+  [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) 

 **Ejemplos relacionados:** 
+  [Well-Architected Labs - Inventory and Patch Management](https://wellarchitectedlabs.com/operational-excellence/100_labs/100_inventory_patch_management/) (Laboratorios de Well-Architected: administración de inventario y parches) 
+  [Laboratorio: AWS Systems Manager](https://mng.workshop.aws/ssm.html) 

# SUS06-BP03: Incremento de la utilización de los entornos de compilación
<a name="sus_sus_dev_a4"></a>

Aumente la utilización de recursos para desarrollar, probar y crear sus cargas de trabajo.

 **Patrones comunes de uso no recomendados:** 
+  Aprovisiona o finaliza manualmente sus entornos de compilación. 
+  Mantiene sus entornos de compilación en funcionamiento independientemente de las actividades de prueba, compilación o lanzamiento (por ejemplo, ejecución de un entorno fuera del horario laboral de los miembros de su equipo de desarrollo). 
+  Aprovisiona en exceso los recursos para sus entornos de compilación. 

 **Beneficios de establecer esta práctica recomendada:** al aumentar la utilización de los entornos de compilación, puede mejorar la eficacia general de su carga de trabajo en la nube y, al mismo tiempo, asignar los recursos a los creadores para que desarrollen, prueben y creen de forma eficaz. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Use la automatización y la infraestructura como código para incorporar los entornos de compilación cuando sea necesario y retirarlos cuando no se utilicen. Un patrón común consiste en programar períodos de disponibilidad que coincidan con las horas de trabajo de los miembros del equipo de desarrollo. Sus entornos de prueba deben parecerse mucho a la configuración de producción. Sin embargo, busque oportunidades para utilizar tipos de instancia con capacidad de ampliación, instancias de spot de Amazon EC2, servicios de base de datos de escalamiento automático, contenedores y tecnologías sin servidor para coordinar el desarrollo y la capacidad de prueba con el uso. Limite el volumen de datos para cumplir únicamente los requisitos de prueba. Si utiliza datos de producción en las pruebas, estudie las posibilidades de compartir los datos de producción y no trasladarlos. 

 **Pasos para la implementación** 
+  Utilice la infraestructura como código para aprovisionar sus entornos de compilación. 
+  Use la automatización para administrar el ciclo de vida de sus entornos de desarrollo y pruebas, y maximizar la eficiencia de sus recursos de compilación. 
+  Utilice estrategias para maximizar la utilización de los entornos de desarrollo y prueba. 
  +  Use el mínimo viable de entornos representativos para desarrollar y probar mejoras potenciales. 
  +  Utilice tecnologías sin servidor si es posible. 
  +  Use instancias bajo demanda para complementar sus dispositivos de desarrollador. 
  +  Use tipos de instancia con capacidad de ampliación, instancias de spot y otras tecnologías para alinear la capacidad de creación con el uso. 
  +  Adopte servicios nativos en la nube para obtener un acceso seguro al shell de instancias en lugar de implementar flotas de hosts bastión. 
  +  Escale automáticamente sus recursos de compilación en función de sus tareas de compilación. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Systems Manager Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html) 
+  [Instancias de rendimiento ampliable de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) 
+  [¿Qué es AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 
+ [¿Qué es AWS CodeBuild? ](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)
+ [ Instance Scheduler en AWS](https://aws.amazon.com/solutions/implementations/instance-scheduler-on-aws/)

 **Vídeos relacionados: ** 
+ [ Prácticas recomendadas de integración continua ](https://www.youtube.com/watch?v=77HvSGyBVdU)

# SUS06-BP04 Usar granjas de dispositivos administrados para pruebas
<a name="sus_sus_dev_a5"></a>

Utilice granjas de dispositivos administrados para probar eficazmente una nueva característica en un conjunto representativo de hardware.

 **Patrones comunes de uso no recomendados:** 
+  Prueba y despliega manualmente su aplicación en dispositivos físicos individuales. 
+  No utiliza el servicio de pruebas de aplicaciones para probar e interactuar con sus aplicaciones (por ejemplo, Android, iOS y aplicaciones web) en dispositivos físicos reales. 

 **Beneficios de establecer esta práctica recomendada:** el uso de granjas de dispositivos administrados para probar aplicaciones con tecnología basada en la nube proporciona una serie de ventajas: 
+  Incluyen características más eficaces para probar la aplicación en una amplia gama de dispositivos. 
+  Eliminan la necesidad de una infraestructura interna para las pruebas. 
+  Ofrecen diversos tipos de dispositivos, incluido el hardware más antiguo y menos popular, lo que elimina la necesidad de actualizaciones innecesarias de los dispositivos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

El uso de granjas de dispositivos administrados puede ayudarle a agilizar el proceso de prueba de nuevas características en un conjunto representativo de hardware. Las granjas de dispositivos administrados ofrecen diversos tipos de dispositivos, incluido el hardware más antiguo y menos popular, y evitan el impacto en la sostenibilidad para el cliente que tienen las actualizaciones innecesarias de dispositivos.

 **Pasos para la implementación** 
+  Defina los requisitos y el plan de pruebas (como el tipo de prueba, los sistemas operativos y el calendario de pruebas). 
  +  Puede utilizar [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) para recopilar y analizar datos en el cliente y dar forma a su plan de pruebas. 
+  Seleccione la granja de dispositivos administrada que pueda admitir sus requisitos de pruebas. Por ejemplo, puede utilizar [AWS Device Farm](https://docs.aws.amazon.com/devicefarm/latest/developerguide/welcome.html) para probar y comprender el impacto de sus cambios en un conjunto representativo de hardware. 
+  Utilice la integración continua/despliegue continuo (CI/CD) para programar y ejecutar sus pruebas. 
  + [ Integrating AWS Device Farm with your CI/CD pipeline to run cross-browser Selenium tests ](https://aws.amazon.com/blogs/devops/integrating-aws-device-farm-with-ci-cd-pipeline-to-run-cross-browser-selenium-tests/)(Integración de AWS Device Farm con su canalización de CI/CD para ejecutar pruebas de Selenium en varios navegadores)
  + [ Building and testing iOS and iPadOS apps with AWS DevOps and mobile services ](https://aws.amazon.com/blogs/devops/building-and-testing-ios-and-ipados-apps-with-aws-devops-and-mobile-services/)(Compilar y probar aplicaciones de iOS y iPadOS con AWS DevOps y servicios móviles)
+  Revise continuamente los resultados de sus pruebas y efectúe las mejoras necesarias. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Lista de dispositivos de AWS Device Farm](https://awsdevicefarm.info/)
+ [Visualización del panel de CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-view-data.html)

 **Ejemplos relacionados:** 
+ [Aplicación de muestra de AWS Device Farm para Android ](https://github.com/aws-samples/aws-device-farm-sample-app-for-android)
+ [Aplicación de muestra de AWS Device Farm para iOS ](https://github.com/aws-samples/aws-device-farm-sample-app-for-ios)
+ [ Pruebas web de Appium para AWS Device Farm](https://github.com/aws-samples/aws-device-farm-sample-web-app-using-appium-python)

 **Vídeos relacionados: ** 
+ [ Optimize applications through end user insights with Amazon CloudWatch RUM ](https://www.youtube.com/watch?v=NMaeujY9A9Y) (Optimizar las aplicaciones mediante la información del usuario final con Amazon CloudWatch RUM)