Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • demeter demeter
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 9
    • Issues 9
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Manuel de Blas
  • demeterdemeter
  • Wiki
    • 3.ers
  • 3.1 Planificación

Last edited by ManuelDeBlas Nov 20, 2025
Page history
This is an old version of this page. You can view the most recent version or browse the history.

3.1 Planificación

Metodología

Como metodología de trabajo para el proyecto se empleará Combat Agile[]. Esta metodología se basa en el marco de trabajo Scrum[], heredando todas sus fases y productos. Los desarrollos basados en Scrum dividen el trabajo en Sprints, los cuales son etapas de aproximadamente 4 semanas de duración. A lo largo de cada Sprint se realizan una serie de hitos que permiten identificar el trabajo pendiente y auditar si el desarrollo progresa hacia el objetivo.

Los hitos de Scrum son los que se describen a continuación:

  1. Sprint Planning:
    Se define el trabajo del Product Backlog (PB) que se realizará durante el Sprint. Los desarrolladores desglosan cada ítem del PB seleccionado en tareas concretas llamadas Issues. Durante esta reunión también se establece el objetivo del Sprint para constituir el Sprint Backlog, que incluye el objetivo del Sprint, los PBIs seleccionados y los Issues generados a partir de estos PBIs.

  2. Daily Scrum:
    Reunión diaria de máximo 15 minutos en la que el equipo informa sobre las tareas realizadas, las pendientes y los impedimentos encontrados.

  3. Sprint Review: Al finalizar el Sprint, se presenta el trabajo completado a todo el personal interesado en este, especialmente al cliente, para recibir retroalimentación y actualizar el PB según sea necesario.

  4. Sprint Retrospective:
    El equipo analiza cómo ha trabajado durante el Sprint y propone mejoras a implementar en los siguientes Sprints. En esta reunión se abordan únicamente aspectos metodológicos, no relacionados con el producto.

Basándose en los principios del Manifiesto Ágil[] y en Scrum, la metodología Combat Agile se caracteriza por cinco puntos clave:

  1. Flexible: La configuración del equipo se adapta en función del trabajo que haya que realizar.
  2. Eficiente: Emplea un enfoque "only-once" que fomenta la autodocumentación y el diseño emergente, siguiendo buenas prácticas y promoviendo la colaboración entre perfiles funcionales y técnicos mediante Behavior-Driven Development (BDD).
  3. Accesible: Se implementa utilizando la mínima cantidad de herramientas específicas para evitar que surjan barreras técnicas.
  4. Enfocado: Prioriza las tareas que generan mayor valor y reducen al máximo la incertidumbre del proyecto.
  5. Lean[]: Se revisa cada proceso para optimizar su eficiencia en cada iteración.

Arquitectura

La arquitectura de la aplicación se basará en un enfoque Full Stack[], con el frontend desarrollado en Vue.js versión 3[] y el backend utilizando el arquetipo de defensa Medusa (basado en Spring Boot[], el framework más utilizado de Java[]) y MySQL[] como gestor de base de datos. Tan solo se desarrollará el cliente web para ordenador ya que no se prevé que la aplicación tenga que ser utilizada desde ningún otro dispositivo.

Tecnología

El frontend en Vue.js ofrece una interfaz de usuario dinámica y receptiva, permitiendo una interacción fluida y eficiente con el backend. Mediante llamadas API RESTful[], el frontend se comunica con el backend para ejecutar operaciones basadas en los permisos de cada usuarios. El backend gestiona la lógica de negocio y las operaciones de datos utilizando el arquetipo Medusa, que integra Spring Data JPA[], su propia seguridad y autenticación contra Active Directory[], y emplea Spring Data REST[] para exponer la API con endpoints HATEOAS de nivel 3[]. Por último, MySQL proporciona un almacenamiento rápido y eficiente para datos estructurados.

Calendario de plazos

El desarrollo de Deméter se dividirá en diferentes Sprints hasta alcanzar, como mínimo, un MVP[].

Plazos Sprint
1 abril - 15 mayo 1
20 mayo - 16 junio 2
1 - 30 septiembre 3
1 - 28 octubre 4
29 octubre - 18 noviembre 5

Otras tecnologías y entornos

  • FrontEnd: Desarrollo basado en HTML5[], CSS[] y JavaScript[], utilizando Vue.js versión 3 con Options API[] y Bootstrap[] versión 5.
  • Herramientas de desarrollo: IDE Eclipse[] para Java y Spring Boot; IDE Visual Studio Code[] para el frontend.
  • Control de versiones: Uso de Git[] para control de versiones, con repositorio en GitLab[].
  • Cliente API REST: Postman[] y Bruno[].
Clone repository
  1. Especificación y formulación del problema
    1. Introducción
    2. Definición del problema
    3. Descripción del proceso actual
    4. Actores
    5. Alcance y limitaciones
    6. Analistas
  2. Estudio de Viabilidad del Sistema (EVS)
    1. Mind Map
    2. Impact Map
    3. Alternativas
      1. Sage HR
      2. OrangeHRM
      3. Deméter
      4. Matriz de decisión
  3. Especificación de Requisitos del Sistema (ERS)
    1. Planificación
    2. Historias de Usuario
    3. Product Backlog
    4. Diseño de la Interfaz de Usuario
    5. Diagramas
  4. Definición del MVP
  5. Sprint 1
    1. Sprint Planning
    2. Sprint Review
    3. Sprint Retrospective
  6. Sprint 2
    1. Sprint Planning
    2. Plan de pruebas
    3. Sprint Review
    4. Sprint Retrospective
  7. Sprint 3
    1. Sprint Planning
    2. Sprint Review
    3. Sprint Retrospective
  8. Sprint 4
    1. Sprint Planning
    2. Plan de pruebas
    3. Sprint Review
    4. Sprint Restrospective
  9. Sprint 5
    1. Sprint Planning
    2. Sprint Review
    3. Sprint Retrospective
  10. Manual de desarrollador
    1. Guía de instalación
    2. Estructura del backend
    3. Estructura del frontend
  11. Conclusiones
  12. Siglas
  13. Referencias