Metodología de Desarrollo
Ciclo de vida del software
Para este proyecto se ha seguido una metodología Ágil basada en iteraciones, permitiendo una adaptación rápida a los descubrimientos técnicos realizados durante el desarrollo (especialmente en la integración de Git Bare y las APIs de IA).
Fases del proyecto
- Investigación y Análisis: Estudio de las herramientas actuales (Stow, dotdrop) y análisis de la técnica Git Bare.
- Diseño de Arquitectura: Definición del contrato de la API REST y del modelo de datos local/remoto.
- Desarrollo del Core (Sprints):
- Sprint 1: Motor de escaneo y lógica de Git en Python.
- Sprint 2: Backend Java y gestión de tareas.
- Sprint 3: Integración de IA y servicios de polling.
- Sprint 4: Interfaz gráfica (PySide6).
- Pruebas e Integración: Validación de los flujos de datos entre cliente y servidor.
- Documentación: Redacción de la memoria técnica y manuales de usuario.
Herramientas de desarrollo
- Control de Versiones: Git y GitHub para el alojamiento del código.
- Gestión de Dependencias:
uvpara el entorno Python yMavenpara el proyecto Java. - Entornos de Desarrollo (IDE): Visual Studio Code y IntelliJ IDEA.
- Diseño de UI: Qt Designer para la creación de las interfaces gráficas.