Compartir a través de


Recomendaciones para estandarizar herramientas y procesos

Se aplica a esta recomendación de la lista de verificación de Excelencia Operacional Bien Diseñada: Power Platform

OE:04 Optimice los procesos de desarrollo y control de calidad de software siguiendo prácticas de desarrollo y pruebas contrastadas en el sector. Para una designación inequívoca de roles, estandarice las prácticas en todos los componentes, como herramientas, control de código fuente, patrones de diseño de aplicaciones, documentación y guías de estilo.

Esta guía describe las recomendaciones para definir estándares para herramientas y procesos de desarrollo. Definir prácticas consistentes conduce a un equipo de carga de trabajo eficiente y a un trabajo de alta calidad. Los equipos de alto rendimiento utilizan herramientas y procesos probados en el sector para minimizar el esfuerzo desperdiciado y los posibles errores de código.

Estrategias clave de diseño

El primer paso para optimizar las prácticas de desarrollo es estandarizar herramientas y procesos. Siempre que sea posible, utilice soluciones probadas en el sector en lugar de desarrollar las suyas propias. Para todas las herramientas y procesos estandarizados, proporcione formación para garantizar que sus equipos puedan utilizarlos de manera eficiente.

Para definir estándares que ayuden a optimizar sus prácticas de desarrollo, considere las siguientes recomendaciones.

Utilizar herramientas disponibles para la plataforma

Priorice el uso de Power Platform Tools y, en caso contrario, utilice herramientas listas para usar conocidas y maduras, y estandarice su uso. Los equipos de ingeniería altamente eficaces adoptan las mejores herramientas de su clase. Evite desarrollar soluciones para la planificación, el desarrollo, las pruebas y la colaboración. Elija herramientas que cumplan con los requisitos de su carga de trabajo.

Las herramientas deben proporcionar las siguientes funciones:

  • Planificación del trabajo y administración del trabajo pendiente
  • Control de versiones y repositorios
  • Canalizaciones de implementación
  • Pruebas
  • Desarrollo y revisión de código

En algunos casos, una herramienta o un conjunto de herramientas pueden proporcionar varias funciones. Asegúrese de comprender las capacidades de sus herramientas y sus limitaciones para que satisfagan sus requisitos en todas las funciones.

Determine si debe invertir en características premium de la plataforma o en versiones premium de las herramientas. Considere el tiempo y el esfuerzo que implica desarrollar sus propias soluciones en comparación con las funciones que ofrecen las herramientas premium. Considere los costes únicos frente a los costes periódicos. En la mayoría de los casos, las herramientas disponibles en el mercado proporcionan un mayor valor a su equipo. Por ejemplo, Entornos gestionados ofrece funciones listas para usar para configurar un mensaje de incorporación de creador o limitar el uso compartido de forma proactiva. Desarrollar estas funciones usted mismo requiere desarrollo y un esfuerzo continuo mantenimiento que puede resultar más costoso que invertir en Entornos administrados.

Utilice herramientas de IA cuando sea práctico. Las herramientas de IA pueden ayudar con el desarrollo, la revisión y la optimización del código.

Establecer un marco de gobernanza para el codesarrollo

Establecer un marco de gobernanza de codesarrollo eficaz para garantizar la coherencia y repetibilidad en proyectos definidos por el fabricante y equipos de fusión.

Estandarice su sistema y sus prácticas de control de código fuente

Adopte un sistema de control de código fuente como Azure DevOps. Azure DevOps Proporciona servicios de desarrollo para que los equipos de soporte planifiquen el trabajo, colaboren en el desarrollo de código y creen e implementen aplicaciones. Exporte una solución de su entorno de desarrollo que contenga sus aplicaciones y personalizaciones, desempaquete su solución y almacene los componentes en su sistema de control de código fuente.

Asegúrese de que el control de versiones de la solución sea preciso, siguiendo las pautas de sprint y de desarrollador establecidas en Implemente prácticas de Scrum para su equipo en Azure Boards. Los resultados de las pruebas de la solicitud de extracción pueden tomar la forma de capturas de pantalla o videos que muestran la funcionalidad que se está construyendo. Automatizar el proceso de gobernanza de solicitudes de extracción ayuda a garantizar la calidad del código sin necesidad de una revisión manual de comprobaciones básicas, como las versiones de la solución.

Cree plantillas para brindar eficiencia y consistencia promover. Todos los aspectos de las operaciones del equipo se benefician de la estandarización y la simplificación, desde las tareas de incorporación y las presentaciones de revisión de historias hasta las plantillas de elementos de trabajo diseñadas para ahorrar tiempo y brindar orientación a los equipos al definir historias de usuario, características, errores y tareas.

Evaluar métricas para cuantificar la efectividad

Los equipos de desarrollo y control de calidad solo pueden mejorar cuando cuantifican su eficacia. Para cuantificar la efectividad, deben identificar las métricas que miden la velocidad del desarrollador y definir indicadores clave de rendimiento (KPI).

Algunos ejemplos de estas métricas son:

  • Plazo de entrega: el tiempo que tarda un tarea o una historia de usuario en pasar del backlog a una implementación de producción.
  • Tiempo medio de resolución: el tiempo promedio que se dedica a corregir errores o defectos en el código.
  • Tasa de fallos de cambio: porcentaje de cambios que resultan en un fallo.

Para ayudar a las partes interesadas y al equipo de carga de trabajo a realizar un seguimiento fácil de la velocidad, visualice los KPI mediante paneles u otras herramientas de generación de informes.

Estandarizar la forma en que el equipo de carga de trabajo escribe, revisa y documenta el código

Estandarice la forma en que el equipo de carga de trabajo escribe, revisa y documenta el código mediante una guía de estilo. Un estilo estándar facilita la colaboración y ayuda a incorporar nuevos desarrolladores. Para trabajar de forma eficaz, los nuevos desarrolladores necesitan saber cómo opera el equipo de carga de trabajo. Una guía de estilo con estándares claramente definidos puede facilitar su proceso de formación.

La guía de estilo debe cubrir:

  • Convenciones de nomenclatura para soluciones, artefactos, controles, acciones, entornos, bifurcaciones y compilaciones
  • Estándares de gestión de errores
  • Patrones o bibliotecas comunes

Realice un seguimiento de las decisiones de arquitectura para ayudar a los equipos a mantener una comprensión actualizada de la carga de trabajo y permitir que los nuevos miembros del equipo conozcan las decisiones de diseño tomadas durante el ciclo de vida de la carga de trabajo. Incluya en su documento de decisión de arquitectura las herramientas y tecnologías que se consideraron, el motivo de la decisión y los requisitos funcionales y no funcionales que se tuvieron en cuenta en las decisiones. Registre las decisiones para evitar repetir explicaciones o repetir discusiones con nuevos miembros o partes interesadas.

Implementar estándares y directrices para abordar la deuda técnica

La plataforma y la tecnología cambian rápidamente y se implementan periódicamente nuevas funciones y capacidades. Adopte la mentalidad de que la deuda técnica es necesaria para los entregables de su equipo de carga de trabajo. Esta mentalidad motiva a su equipo a considerar y abordar la deuda técnica periódicamente para evitar la acumulación. Aborde la deuda técnica como una tarea periódica en el trabajo pendiente. Asegúrese de tener procesos implementados para mantenerse actualizado con los cambios de la plataforma, tanto las nuevas funciones como las obsoletas, y trabaje en un plan de acción sobre cómo abordar los cambios en su carga de trabajo.

Por ejemplo, una característica del producto podría quedar obsoleta o ser reemplazada por una versión diferente. El equipo de carga de trabajo debe priorizar la finalización de la transición a la nueva función para evitar afectar la carga de trabajo. El equipo puede crear una solución o un control personalizado, que con el tiempo se convierte en parte de la plataforma. Su equipo de carga de trabajo debe realizar la transición a esa característica de la plataforma, lo que reduce la deuda técnica y el mantenimiento de su propia carga de trabajo.

Utilice patrones de diseño de aplicaciones probados en la industria para garantizar que su aplicación sea confiable, de alto rendimiento y segura. Utilice estos patrones para ahorrar tiempo y esfuerzo en lugar de desarrollar sus propias soluciones para su aplicación. Elija los patrones que beneficien su carga de trabajo. Revise periódicamente los patrones de diseño para asegurarse de utilizar los patrones correctos a medida que evoluciona su carga de trabajo.

Implementar un enfoque de desplazamiento a la izquierda para las pruebas

Implemente un enfoque de desplazamiento a la izquierda para las pruebas realizando pruebas unitarias de modo anticipado y frecuente durante todo el proceso de desarrollo. Las pruebas frecuentes en cada entorno de desarrollo ayudan a los desarrolladores a ganar confianza en sus aplicaciones.

Para ayudar a crear su estrategia de prueba con un enfoque de desplazamiento a la izquierda, considere los siguientes principios:

  • Escriba pruebas en el nivel más bajo posible. Favorezca las pruebas con la menor cantidad de dependencias externas y ejecute pruebas como parte de la compilación.
  • Escriba pruebas una vez y ejecútelas en todas partes, incluida la producción. Escriba pruebas que pueda ejecutar en cada entorno de desarrollo sin tener en cuenta factores específicos de un entorno, como configuraciones o secretos cifrados.
  • Diseñe su carga de trabajo para las pruebas. Cuando desarrolle su aplicación, convierta la capacidad de prueba en un requisito.
  • Considere la propiedad de la prueba, que se basa en la propiedad de la carga de trabajo. Su equipo de carga de trabajo es dueño de sus pruebas y no debe depender de otros equipos para probar su código.
  • Automatice las pruebas tanto como sea posible. El código automatizado alivia la carga de su equipo de carga de trabajo y exige una calidad constante.

Exija que su equipo de carga de trabajo comprenda las prácticas de seguridad relacionadas con el desarrollo y el control de calidad. Los miembros del equipo deben seguir estas prácticas sin excepción. Obtenga más información en Recomendaciones para asegurar un ciclo de vida de desarrollo.

Facilitación de Power Platform

Los pipelines tienen como objetivo democratizar la gestión del ciclo de vida de las aplicaciones (ALM) para los clientes de Dynamics 365 al incorporar automatización de ALM y capacidades de integración continua y entrega continua (CI/CD) al servicio. Power Platform Power Platform

Las notas de implementación generadas por Copilot en los pipelines generan un resumen de la solución y completan previamente el campo de notas de implementación, lo que brinda a cualquier persona que vea la solicitud o el registro de implementación suficiente contexto para comprender qué hace la solución y qué contiene.

Microsoft Power Platform Las herramientas de compilación para Azure DevOps se pueden usar para automatizar tareas comunes de compilación e implementación relacionadas con aplicaciones creadas en Power Platform.

Las acciones de GitHub permiten a los desarrolladores crear flujos de trabajo automatizados del ciclo de vida del desarrollo de software. Power Platform Con las Acciones de GitHub para Microsoft Power Platform, puede crear flujos de trabajo en su repositorio para crear, probar, empaquetar, lanzar e implementar aplicaciones, automatizar tareas y administrar bots y otros componentes integrados en Power Platform.

Power Apps La API web del verificador proporciona un mecanismo para ejecutar comprobaciones de análisis estático contra personalizaciones y extensiones de la Microsoft Dataverse plataforma.

Test Studio le permite crear pruebas de IU de extremo a extremo para su aplicación de lienzo.

Automatice pruebas con Azure Pipelines.

La herramienta de revisión de código Power CAT le permite realizar revisiones de código.

El Kit Power CAT Copilot Studio permite configurar copilotos y pruebas. Al ejecutar pruebas individuales contra las Copilot Studio API (Direct Line), las respuestas del copiloto se evalúan en comparación con los resultados esperados.

ALM Accelerator es una herramienta de código abierto que consta de un conjunto de aplicaciones, scripts y canales diseñados para automatizar el proceso de integración continua/entrega continua.

Microsoft Power Platform CLI(PAC CLI) es una herramienta de línea de comandos que admite la importación y exportación de soluciones, así como el empaquetado y desempaquetado de archivos fuente de soluciones. Power Platform Power Platform PAC CLI está disponible como una herramienta de línea de comandos independiente o como una extensión para Visual Studio Código.

Otras herramientas y servicios que pueden ayudarle a estandarizar sus prácticas de desarrollo son:

  • Azure DevOps, una colección de servicios que puede utilizar para crear una práctica de desarrollo colaborativa, eficiente y consistente. Azure DevOps agrupa las siguientes soluciones:

    • Azure Pipelines, un servicio en la nube que proporciona servicios de compilación y lanzamiento para respaldar la CI/CD de sus aplicaciones.
    • Azure Boards, una herramienta de gestión del trabajo basada en web que admite prácticas ágiles como Scrum y Kanban.
    • Azure Repos, una herramienta de control de versiones que admite el sistema de control de versiones distribuido Git y el sistema de control de versiones Team Foundation.
    • Azure Test Plans, una solución de gestión de pruebas basada en navegador que proporciona las capacidades necesarias para las pruebas manuales planificadas, las pruebas de aceptación del usuario, las pruebas exploratorias y la recopilación de comentarios de las partes interesadas.
  • Proyectos de GitHub, una herramienta de gestión del trabajo que puedes usar para crear tableros Kanban, informes, paneles de control y otras funciones.

Gobernanza del codesarrollo

Pasos siguientes