4.0 KiB
CancerCare
Descripción
CancerCare es una aplicación web diseñada para ayudar a personas diagnosticadas con cáncer a controlar su evolución durante el tratamiento, llevar un seguimiento de sus síntomas, citas médicas, medicación y evolución general.
La plataforma permite a cada usuario gestionar su información de forma segura y compartir resúmenes relevantes con su médico, facilitando la comunicación entre paciente y profesional sanitario.
Objetivo
Proporcionar una herramienta digital para:
- registrar y controlar síntomas
- gestionar citas médicas
- mantener un seguimiento de tratamientos
- mantener un historial de evolución
- compartir información resumida con el médico
- mejorar la organización y la comunicación entre paciente y profesionales
Usuarios
La aplicación estará pensada para distintos tipos de usuarios:
- Paciente
- Médico
- Administrador
Funcionalidades principales
Paciente
- Registro e inicio de sesión
- Edición de perfil personal
- Registro de síntomas
- Registro de citas y revisiones
- Seguimiento de tratamientos y medicación
- Historial clínico básico
- Exportación de resúmenes en PDF
- Envío de información a su médico
- Recordatorios y alertas
Médico (para más adelante)
- Registro e inicio de sesión
- Asociación con pacientes
- Visualización del historial del paciente
- Consulta de síntomas y evolución
- Recepción de resúmenes compartidos
- Gestión de seguimiento clínico
Administrador
- Gestión de usuarios
- Control de permisos
- Supervisión de la plataforma
- Administración de roles
Tecnologías previstas
La aplicación se desarrollará como una solución web, accesible desde ordenador, tablet y móvil.
Frontend
- HTML
- CSS
- JavaScript
- Bootstrap
Backend
- Java
- Spring Boot
Seguridad
- Spring Security
- Autenticación por usuario y contraseña
- Roles y permisos por tipo de usuario
Base de datos
- MySQL
Arquitectura recomendada
- Frontend responsivo con Bootstrap
- Backend en Spring Boot
- API REST
- Persistencia con MySQL
- Seguridad con Spring Security
- Autenticación basada en usuarios y roles
Modelo de datos previsto
La aplicación gestionará información sobre:
- usuarios
- pacientes
- médicos
- citas
- síntomas
- tratamientos
- medicación
- historial médico
- documentos o resúmenes compartidos
Casos de uso
- Un paciente registra sus síntomas diarios.
- El sistema guarda la información en la base de datos.
- El paciente añade una cita con su médico.
- El médico accede al resumen de evolución del paciente.
- El paciente exporta un informe en PDF y lo comparte con su profesional sanitario.
Importancia del proyecto
Este proyecto tiene un valor real para personas que necesitan un seguimiento constante de su salud durante el tratamiento, y además ayuda a los profesionales médicos a tener acceso más rápido a información útil y organizada.
Fase inicial (MVP)
Se propone desarrollar una primera versión con estas funcionalidades:
- Registro e inicio de sesión
- Gestión de perfil
- Registro de síntomas
- Registro de citas
- Historial de evolución
- Exportación de resumen para compartir con el médico
Estado del proyecto
Proyecto en fase de diseño e ideación inicial.
Entorno local con Docker
Docker Compose levanta MySQL 8.4 y conserva los datos en un volumen entre reinicios:
docker compose up -d
La base de datos queda disponible en localhost:3306, con el nombre cancercare. Para detener el servicio:
docker compose down
Los valores de conexión predeterminados son solo para desarrollo local y se pueden sustituir con variables de entorno o un archivo .env. schema.sql crea las tablas automáticamente la primera vez que MySQL inicializa el volumen; schema.mmd contiene el diagrama entidad-relación. Si ya existe un volumen de datos, MySQL no vuelve a ejecutar los scripts de inicialización. El backend y el frontend todavía no están implementados, así que por ahora solo se ejecuta la base de datos.