

# 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** 
+  **Conozca y comunique los objetivos de sostenibilidad de su organización:** conozca los objetivos de sostenibilidad de su organización, como la reducción de carbono o la administración del agua. Convierta estos objetivos en requisitos de sostenibilidad para sus cargas de trabajo en la nube. Comunique estos requisitos a las partes interesadas clave. 
+  **Añada requisitos de sostenibilidad a su cartera de proyectos:** añada requisitos para la mejora de la sostenibilidad a sus tareas pendientes de desarrollo. 
+  **Itere y mejore:** utilice un [proceso de mejora iterativo](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/improvement-process.html) para identificar, evaluar, priorizar, probar y desplegar estas mejoras. 
+  **Realice pruebas con el producto mínimo viable (MVP): ** desarrolle y pruebe posibles mejoras utilizando los componentes representativos mínimos viables para reducir el coste y el impacto ambiental de las pruebas. 
+  **Optimice el proceso:** mejore y agilice continuamente sus procesos de desarrollo. Por ejemplo, automatice su proceso de entrega de software mediante canalizaciones de integración y entrega continuas (CI/CD) para probar y desplegar posibles mejoras con el fin de reducir el nivel de esfuerzo y limitar los errores provocados por los procesos manuales. 
+  **Formación y concienciación:** organice programas de formación para los miembros de su equipo para instruirlos sobre la sostenibilidad y cómo sus actividades afectan a los objetivos de sostenibilidad de la organización. 
+  **Evalúe y ajuste:** evalúe continuamente la repercusión 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: ** 
+  [«AWS re:Invent 2023 - Sustainable architecture: Past, present, and future»](https://www.youtube.com/watch?v=2xpUQ-Q4QcM) 
+  [«AWS re:Invent 2022 - Delivering sustainable, high-performing architectures»](https://www.youtube.com/watch?v=FBc9hXQfat0) 
+  [AWS re:Invent 2022 - Architecting sustainably and reducing your AWS carbon footprint](https://www.youtube.com/watch?v=jsbamOLpCr8) 
+  [«AWS re:Invent 2022 - Sustainability in AWS global infrastructure»](https://www.youtube.com/watch?v=NgMa8R9-Ywk) 
+  [«AWS re:Invent 2023 - What’s new with AWS observability and operations»](https://www.youtube.com/watch?v=E8qQBMDJjso) 

 **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**: utilice un proceso y un calendario para evaluar nuevas características 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. 
+  **Realice un inventario:** realice un inventario del software y arquitectura de su carga de trabajo e identifique 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. 
+  **Conozca el procedimiento de actualización: ** aprenda a actualizar los componentes de su carga de trabajo.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2024-06-27/framework/sus_sus_dev_a3.html)
+  **Utilice la automatización:** automatice las actualizaciones para reducir el nivel de esfuerzo para desplegar nuevas características 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/) 

 **Vídeos relacionados: ** 
+  [«AWS re:Invent 2022 - Optimize your AWS workloads with best-practice guidance»](https://www.youtube.com/watch?v=t8yl1TrnuIk) 
+  [«All Things Patch: AWS Systems Manager»](https://www.youtube.com/watch?v=PhIiVsCEBu8) 

 **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** 
+  **Utilizar la infraestructura como código:** utilice la infraestructura como código para aprovisionar los entornos de compilación. 
+  **Utilizar la automatización:** use la automatización para administrar el ciclo de vida de sus entornos de desarrollo y prueba, y sacar el máximo partido a la eficiencia de los recursos de compilación. 
+  **Sacar el máximo partido del uso:** utilice estrategias para sacar el máximo partido del uso 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: ** 
+  [AWS re:Invent 2023 - Continuous integration and delivery for AWS](https://www.youtube.com/watch?v=25w9uJPt0SA) 

# 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** 
+  **Definir los requisitos de pruebas:** establezca 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. 
+  **Seleccionar un conjunto de dispositivos administrados:** seleccione un conjunto de dispositivos administrados que pueda hacer frente a sus requisitos de prueba. 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. 
+  **Utilizar la automatización:** utilice la automatización y la integración continua/despliegue continuo (CI/CD) para programar y ejecutar las 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/) 
  +  [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/) 
+  **Revisar y ajustar:** revise continuamente los resultados de sus pruebas y efectúe las mejoras que sean 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: ** 
+  [AWS re:Invent 2023 - Improve your mobile and web app quality using AWS Device Farm](https://www.youtube.com/watch?v=__93Tm0YCRg) 
+  [AWS re:Invent 2021 - Optimize applications through end user insights with Amazon CloudWatch RUM](https://www.youtube.com/watch?v=NMaeujY9A9Y) 