[Low Code] Exploración de soluciones de desarrollo paralelo en escenarios ágiles y de colaboración de plataformas de código bajo | Equipo de tecnología de JD Cloud

La aparición de plataformas de desarrollo de código bajo ha mejorado en gran medida la eficiencia de la entrega de productos, pero en el escenario del desarrollo colaborativo y la iteración ágil , también se han expuesto algunos problemas.

Por ejemplo:

  • Varias personas modifican el proyecto al mismo tiempo, afectándose entre sí e incluso las modificaciones se sobrescriben entre sí;

  • Se desarrollan múltiples requisitos simultáneamente bajo el mismo proyecto, pero los requisitos no están unificados en la fecha en línea, no se pueden dividir ni lanzar, etc.

Este artículo discutirá progresivamente varias soluciones para respaldar el desarrollo paralelo basado en diferentes demandas.

La plataforma de desarrollo de código bajo (LCDP) ayuda a los usuarios a escribir aplicaciones utilizando una interfaz gráfica visual (arrastrar y soltar o método de configuración) sin el desarrollo de programación tradicional.

Los equipos de I+D de plataformas de desarrollo de código bajo a menudo invierten más experiencia en mejorar y enriquecer el proceso de creación de aplicaciones (por ejemplo, enriqueciendo las funciones que se pueden implementar mediante la construcción, optimizando la experiencia interactiva de construcción de arrastrar y soltar, etc.) , ignorando las capacidades y experiencia del proceso de entrega de proyectos.

1. Entrega general del proyecto

La mayoría de las plataformas de código bajo, especialmente aquellas con capacidades de codificación o capacidades de implementación administrada, brindarán servicios en forma de entrega general de proyectos.

Cuando el usuario activa el proceso de entrega, la plataforma de código bajo utilizará la configuración actual del proyecto, la configuración de la página, etc. para realizar la producción de código, la canalización de CI/CD y otras operaciones.

Entrega general del proyecto

Entrega general del proyecto

Entrega general del proyecto

2. Reducir la granularidad de la entrega

Para mejorar la flexibilidad de la entrega, puede reducir la granularidad de la entrega para evitar el problema del desarrollo mutuo de varias personas y el desarrollo simultáneo de múltiples requisitos hasta cierto punto. Por ejemplo, la dimensión de la página se utiliza como la unidad publicable independiente más pequeña .

Reducir la granularidad de la entrega

Reducir la granularidad de la entrega

3. Entrega en sucursal virtual

En el proceso de desarrollo de la demanda real, a menudo sucede que es necesario modificar la misma demanda en varias páginas y los contenidos modificados son interdependientes. En este momento, puede introducir un concepto similar a la rama utilizada en el proceso de desarrollo del código , asociar varias páginas con "rama", usar "rama" como unidad publicable y las páginas bajo la misma "rama" estarán en línea y se entregarán. simultáneamente.

Entrega en sucursal virtual

Entrega en sucursal virtual

Entrega en sucursal virtual

Cuando los usuarios desarrollan requisitos, pueden crear una "rama" virtual. Al crear una página bajo esta rama, la página se clasificará en esta "rama" y otras "ramas" no podrán editar esta página nuevamente. Cuando se cumplen los requisitos, todas las páginas de la "rama" se pueden publicar e implementar al mismo tiempo.

4. Ramificación y fusión

Aunque podemos definir la unidad de entrega más pequeña como una página , todavía habrá situaciones en las que varios requisitos necesiten modificar la misma página al mismo tiempo.

Las plataformas de código bajo a menudo usan la dimensión de la página para almacenar y administrar información de configuración (es decir, cada página es un archivo de configuración completo). Cuando varias personas o múltiples necesidades necesitan modificar la misma página (archivo de configuración), deben realizar varias copias. a través del proceso de fusión cuando se entrega. En este momento necesitamos introducir ramas de desarrollo , fusión de ramas , resolución de conflictos , etc.

Ramificación y fusión

Ramificación y fusión

Ramificación y fusión

Si la misma página se modifica e implementa por separado, el usuario que inicia el proceso de entrega posteriormente debe pasar por el proceso de "fusión".

En este momento, la plataforma mostrará el contenido de modificación modificado y entregado por otros usuarios o necesidades desde el momento en que el usuario comenzó a modificar la página, y lo comparará con este contenido de modificación. Si las "diferencias" no se afectan entre sí, se pueden "fusionar" automáticamente; si hay un "conflicto" en las "diferencias", el usuario debe tomar una decisión.

5. Fusión de ramas visuales

Es probable que los usuarios de plataformas de código bajo no sean investigadores, e incluso si son desarrolladores, a los usuarios les resulta difícil comprender el contenido de los archivos de configuración. En este momento, se necesita una solución visual interactiva para la fusión de sucursales y la resolución de conflictos.

Fusión de ramas visuales

En el área de vista previa de la izquierda, puede resaltar elementos que sean diferentes o conflictivos. En el área de configuración de la derecha, se muestran respectivamente los contenidos de "Estado en línea" y "Esta modificación", y el icono "Diferencia" se utiliza para resaltar el contenido de diferentes elementos de configuración. Los usuarios pueden cambiar la versión que se muestra en el área de vista previa a la izquierda haciendo clic en el icono "Diferencia". Y guárdelo después de la confirmación.

Imaginación futura-AIGC

En el proceso de desarrollo colaborativo de código bajo, puede intentar introducir AIGC para comprender y analizar la información de configuración, ayudar a los usuarios a comprender y describir el contenido modificado, descubrir problemas y lagunas y dar sugerencias al fusionar configuraciones.

AIGC

 

Autor: JD Retail Niu Xiaoguang

Fuente: Comunidad de desarrolladores de JD Cloud Indique la fuente al reimprimir

El autor de un conocido proyecto de código abierto perdió su trabajo debido a la manía: "Buscar dinero en línea" No Star, No Fix 2023 Se publican los diez principales logros de ingeniería del mundo: ChatGPT, el sistema operativo Hongmeng, la estación espacial de China y otros ByteDance seleccionados fueron "prohibidos" por OpenAI Google anuncia la extensión de Chrome más popular en 2023 Académico Ni Guangnan: Espero que los SSD nacionales reemplacen los HDD importados para desbloquear el teléfono móvil Xiaomi BL. Primero, responda una pregunta de entrevista para programadores de Java. Arm despidió a más de 70 ingenieros chinos y planeó reorganizar su negocio de software en China. ¡ OpenKylin 2.0 revela | UKUI 4.10 diseño de doble diamante, hermoso y de alta calidad! Manjaro 23.1 lanzado, con nombre en código “Vulcan”
{{o.nombre}}
{{m.nombre}}

Supongo que te gusta

Origin my.oschina.net/u/4090830/blog/10326280
Recomendado
Clasificación