Prácticas recomendadas generales de desarrollo para Adobe Commerce
En este tema se describe la línea de base para un proceso de desarrollo de Adobe Commerce en buen estado. Describe procesos fundamentales, principios de codificación y principios de diseño de aplicaciones para guiar a los desarrolladores.
Estas prácticas recomendadas se han desarrollado sobre la base de años de experiencia en el desarrollo y la entrega de proyectos de Commerce. El Adobe recomienda que las iniciativas técnicas sigan estas prácticas recomendadas y que mejore los procesos y el código existentes para alinearse con ellos.
Convenciones de texto
Las palabras clave "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY" y "OPTIONAL" en este tema se deben interpretar como se describe en RFC 2119.
Proceso
- Se debe acordar una metodología de proyecto definida antes de comenzar las actividades del proyecto. PUEDE ser Scrum, Waterfall o cualquier otra metodología o combinación de metodologías, siempre y cuando se defina.
- El desarrollo NO DEBE comenzar hasta que el equipo de desarrollo disponga de una estrategia de ramificación para el sistema de control de versiones.
- El desarrollo NO DEBE comenzar hasta después de la firma de especificaciones técnicas, la firma de historias de usuarios y casos de uso y la firma de casos de prueba están disponibles para el equipo de desarrollo.
- El desarrollo NO DEBE comenzar hasta que haya al menos un entorno de desarrollo y control de calidad disponible.
- Los requisitos específicos del proyecto que son obligatorios para que se inicie el desarrollo PUEDEN documentarse en una definición de Listo.
- La firma DEBE realizarla un representante del cliente autorizado para firmar los entregables del proyecto.
- En las metodologías de proyecto Agile, PUEDEN seguir requisitos adicionales a la firma. Estos requisitos DEBEN tratarse como nuevos requisitos y DEBEN recopilarse, diseñarse y planificarse en consecuencia.
- El desarrollador DEBE probar funcionalmente todo el desarrollo antes del envío.
- Todo el desarrollo DEBE pasar pruebas automatizadas antes de enviarse para la revisión del código. Esto PUEDE configurarse como un proceso automatizado después de la creación de la solicitud de extracción.
- Todo desarrollo DEBE pasar la revisión manual del código por parte de un arquitecto técnico o desarrollador principal antes de enviarlo para garantizar la calidad.
- Todo desarrollo DEBE pasar la garantía de calidad antes de la entrega al cliente.
- Los requisitos específicos del proyecto que son obligatorios para la entrega PUEDEN documentarse en una "Definición de Listo".
Entorno
- Todos los desarrolladores DEBEN utilizar el mismo IDE. PhpStorm es el IDE recomendado para el desarrollo de Adobe Commerce.
- Todos los desarrolladores DEBEN desarrollar y probar utilizando la misma pila tecnológica que se utiliza en los (futuros) servidores de producción. Las versiones del software de esta pila tecnológica DEBEN coincidir con la versión principal y secundaria del software instalado en los servidores de producción. Consulte requisitos del sistema para obtener detalles sobre la pila de tecnología típica para Adobe Commerce.
- El administrador del sistema o el arquitecto técnico PUEDEN proporcionar al equipo un entorno de desarrollo local mantenido de forma centralizada para garantizar y promover entornos locales iguales y actualizados.
- Los desarrolladores y los ingenieros de control de calidad DEBEN tener acceso a la línea de comandos, la base de datos y los archivos de registro del entorno de control de calidad. Esto PUEDE requerir una conexión VPN.
Versiones
Las versiones de módulo DEBEN cumplir con el estándar Semantic Versioning 2.0.0.
Las dependencias en el código base de Adobe Commerce DEBEN seguir las directrices de dependencias de versión de módulo.
CONTROL DE REVISIÓN
Las confirmaciones DEBEN ir acompañadas de mensajes de confirmación significativos.
Seguridad
- NO se DEBEN usar funciones no seguras.
- DEBEN aplicarse estrategias de prevención de XSS.
- DEBEN aplicarse políticas de seguridad de contenido.
- Las nuevas instancias de Adobe Commerce DEBEN entregarse en la última versión de seguridad de una versión que aún no haya alcanzado la fecha de "Fin de las correcciones de seguridad". Consulte Política de ciclo de vida del software de Adobe Commerce.