Objetivos - camilo1691/proyecto_mantenimiento_automotor_bakend GitHub Wiki

3. OBJETIVOS

3.1 Objetivo General

Desarrollar e implementar el Sistema de Mantenimiento Preventivo Automotor (SMPA), una plataforma tecnológica integral basada en arquitectura web y móvil, para la empresa de servicios de taxi con una flota de 2,000 vehículos, que permita centralizar la gestión de mantenimiento preventivo y correctivo, automatizar alertas técnicas, trazar el historial completo de cada vehículo, controlar el inventario de repuestos, conectar a todos los actores del ecosistema (administración, mecánicos, conductores y dueños de taxi) mediante una aplicación unificada, y establecer un sistema de reportería analítica para la toma de decisiones basada en datos, con una fecha tentativa de puesta en marcha para mediados de mayo de 2026.


3.2 Objetivos Específicos

Objetivo 1: Gestión Centralizada de la Flota Vehicular

Diseñar e implementar el módulo de Gestión de Flota que permita crear fichas técnicas digitales para cada uno de los 2,000 vehículos, consolidando información de placas, marcas, modelos, años, kilometraje actual, documentos legales (SOAT, Revisión Técnico-Mecánica, tarjeta de operación), asignación de conductores y historial médico completo de mantenimientos, garantizando una única fuente de verdad accesible para todos los usuarios autorizados.

Objetivo 2: Automatización de Alertas Preventivas

Desarrollar un motor de reglas configurable que genere alertas automáticas basadas en parámetros técnicos personalizables por tipo de vehículo (kilometraje acumulado, tiempo de operación, condiciones críticas reportadas y vencimientos legales), con notificaciones multicanal (push, email y SMS) y escalamiento jerárquico, para anticipar intervenciones de mantenimiento antes de que ocurran fallas mecánicas.

Objetivo 3: Digitalización de Operaciones de Taller

Construir el módulo de Gestión de Taller que permita crear, asignar y dar seguimiento a órdenes de trabajo digitales, registrar mano de obra y repuestos utilizados, adjuntar evidencia fotográfica de servicios realizados, y gestionar firmas digitales de recepción y entrega de vehículos, eliminando el uso de libretas de papel y archivos Excel desconectados.

Objetivo 4: Empoderamiento del Conductor mediante Aplicación Móvil

Desarrollar una aplicación móvil nativa (Android e iOS) para los conductores de la flota, que les permita reportar novedades técnicas con geolocalización y fotos, consultar el historial y próximos mantenimientos de su vehículo asignado, validar kilometraje mediante fotografía del tacómetro, y completar checklists de inspección pre-operación obligatorios, facilitando la comunicación en tiempo real con el área de mantenimiento.

Objetivo 5: Control de Inventario y Abastecimiento de Repuestos

Implementar el módulo de Gestión de Inventario que permita administrar un catálogo maestro de repuestos con códigos OEM y genéricos, gestionar múltiples bodegas o almacenes, establecer niveles de stock mínimo y máximo con puntos de reorden automáticos, generar órdenes de compra sugeridas, y trazar la asignación de repuestos a órdenes de trabajo específicas con costeo preciso por vehículo.

Objetivo 6: Transparencia con Dueños de Taxi mediante Portal Web

Crear un portal web de acceso restringido para los dueños de taxi que operan en modelo de arrendamiento o administración, que les permita consultar en tiempo real el estado de mantenimiento, historial de servicios realizados, costos incurridos y próximas intervenciones programadas de sus vehículos, generando confianza y reduciendo conflictos contractuales.

Objetivo 7: Reportería Analítica y Inteligencia de Negocios

Establecer el módulo de Reportes y Analisis con dashboards interactivos que visualicen indicadores clave de desempeño (disponibilidad de flota, costos por vehículo y por kilómetro, cumplimiento del plan preventivo vs. correctivo, comparativos de proveedores), permitiendo la exportación de datos a Excel y PDF, y facilitando la toma de decisiones estratégicas basada en información actualizada y confiable.

Objetivo 8: Capacitación y Adopción de Usuarios

Diseñar e implementar un programa de capacitación integral dirigido a los cinco perfiles de usuarios del sistema (administradores, supervisores, mecánicos, conductores y dueños de taxi), que incluya manuales de usuario, video tutoriales, sesiones presenciales y virtuales, y un sistema de soporte técnico inicial, garantizando la adopción efectiva del SMPA y minimizando la resistencia al cambio en la transición desde los procesos manuales actuales.

Objetivo 9: Integración de Módulos en Plataforma Unificada

Integrar los ocho módulos del SMPA (Gestión de Flota, Alertas, Taller, App Móvil, Inventario, Portal Dueños, Reportes y Administración del Sistema) en una plataforma tecnológica unificada, con base de datos centralizada, sincronización en tiempo real, control de acceso basado en roles y permisos, y auditoría completa de acciones realizadas por cada usuario.


3.3 Objetivos Técnicos

Arquitectura y Desarrollo del Backend

Desarrollar el backend del SMPA utilizando Spring Boot (opción recomendada) o Quarkus (alternativa cloud-native), implementando una arquitectura escalable, con APIs RESTful seguras (JWT/OAuth2) que soporten la concurrencia de 2,000 vehículos y permitan crecer hasta 5,000 unidades sin degradación del rendimiento.

Comparativa: Spring Boot vs Quarkus

Aspecto Spring Boot Quarkus
Descripción Framework maduro del ecosistema Java con amplia adopción empresarial Framework cloud-native diseñado para contenedores y arquitecturas serverless
Pros • Documentación extensa y comunidad grande<br>• Fácil encontrar desarrolladores en el mercado latinoamericano<br>• Integración nativa con Spring Data, Security, Cloud<br>• Ideal para aplicaciones empresariales monolíticas<br>• Estabilidad probada en sistemas de misión crítica • Tiempo de arranque ultrarrápido (menos de 1 segundo)<br>• Menor consumo de memoria RAM (ideal para microservicios)<br>• Optimizado para Kubernetes y contenedores<br>• Programación reactiva nativa<br>• Hot reload en desarrollo
Contras • Mayor consumo de memoria que Quarkus<br>• Tiempos de arranque más lentos (3-10 segundos)<br>• Menos optimizado para contenedores y serverless • Curva de aprendizaje más pronunciada<br>• Comunidad más pequeña, menos recursos de aprendizaje<br>• Algunas librerías de Java no optimizadas para GraalVM<br>• Menos maduro para aplicaciones monolíticas grandes
Mejor para Equipos medianos, desarrollo rápido, mantenimiento a largo plazo, sistemas empresariales tradicionales Arquitecturas de microservicios, despliegue en cloud, escalabilidad automática, DevOps avanzado
Recomendación Opción principal para SMPA por facilidad de mantenimiento y disponibilidad de talento Opción si se prioriza despliegue en Kubernetes, costos de infraestructura cloud o arquitectura de microservicios

> Decisión para SMPA: Se utilizará Spring Boot como framework principal, dado que el proyecto requiere estabilidad, facilidad de mantenimiento a largo plazo y disponibilidad de desarrolladores en el mercado local. Quarkus se considerará para módulos específicos de alta concurrencia si se requiere escalamiento horizontal masivo en el futuro.


Desarrollo del Frontend

Desarrollar el frontend web utilizando React (opción recomendada) o Angular, con diseño responsive que garantice la usabilidad en equipos de escritorio, tablets y dispositivos móviles, cumpliendo estándares de accesibilidad web (WCAG).

Comparativa: React vs Angular

Aspecto React Angular
Descripción Biblioteca de JavaScript para construir interfaces de usuario Framework completo de desarrollo frontend basado en TypeScript
Pros • Gran flexibilidad y ecosistema de librerías (Material-UI, Ant Design)<br>• Curva de aprendizaje moderada<br>• React Native disponible para futura app móvil nativa<br>• Comunidad muy activa, muchos recursos<br>• Ideal para aplicaciones con datos dinámicos y formularios complejos • Framework completo con arquitectura estructurada (MVC)<br>• TypeScript nativo con tipado estricto<br>• Ideal para equipos grandes, estándares rígidos de código<br>• Angular Material para componentes empresariales<br>• Inyección de dependencias integrada
Contras • Requiere elegir y configurar librerías adicionales (enrutamiento, estado)<br>• Menos estructurado, puede llevar a código inconsistente<br>• JSX puede ser extraño para desarrolladores Java puros • Curva de aprendizaje más pronunciada<br>• Verboso, más código boilerplate<br>• Menos flexible, opinionado en su estructura<br>• Migraciones entre versiones pueden ser complejas
Mejor para Aplicaciones con interfaces dinámicas, equipos ágiles, proyectos que requieren flexibilidad Grandes aplicaciones empresariales, equipos con desarrolladores Java, proyectos que requieren estructura rígida
Recomendación Opción principal para SMPA por facilidad de integración con backend Java y flexibilidad para formularios de mantenimiento Opción si el equipo tiene más experiencia en TypeScript o se requiere arquitectura muy estructurada

> Decisión para SMPA: Se utilizará React como biblioteca principal, aprovechando su flexibilidad para formularios complejos de mantenimiento y la posibilidad futura de usar React Native para la app móvil de conductores.


Desarrollo de la Aplicación Móvil

Desarrollar la aplicación móvil para conductores utilizando React Native (si se eligió React en frontend) o tecnología híbrida progresiva (PWA), compatible con Android 8.0+ e iOS 14+, con funcionalidades offline que permitan registrar datos sin conexión y sincronizarlos automáticamente al recuperar señal.


Base de Datos y Almacenamiento

Implementar una base de datos relacional PostgreSQL o MySQL, con esquema normalizado que soporte la trazabilidad histórica de mantenimientos, repuestos y usuarios, respaldos automáticos diarios, y replicación para alta disponibilidad.

Establecer almacenamiento en cloud para evidencia fotográfica y documentos, con retención mínima de 5 años y políticas de encriptación en tránsito y en reposo.


Seguridad y Cumplimiento

Implementar autenticación multifactor (MFA) para usuarios administrativos, encriptación de datos sensibles (información de conductores y dueños), y cumplimiento con normativas de protección de datos personales (Ley 1581 de 2012 en Colombia o equivalente).

Garantizar disponibilidad del sistema del 99.5% (tiempo de inactividad máximo mensual de 3.6 horas), con monitoreo continuo y plan de recuperación ante desastres.


Escalabilidad y Rendimiento

Diseñar la arquitectura para soportar 2,000 vehículos activos en el lanzamiento, con capacidad de escalamiento horizontal hasta 5,000 vehículos sin requerir rediseño completo del sistema.

Optimizar consultas y reportes para tiempos de respuesta inferiores a 3 segundos en el dashboard principal, incluso con el volumen histórico de datos acumulados.