carcontrol(softtauja.ujaen.es/bitstream/10953.1/4225/1/tfg_moya_reyes, raúl.pdf ·...

66
Escuela Politécnica Superior de Jaén UNIVERSIDAD DE JAÉN Trabajo Fin de Grado CARCONTROL(SOFT PROTOTIPO PARA PROPORCIONAR A EMPRESAS UN SERVICIO PARA EL CONTROL DE SU FLOTA DE VEHÍCULOS ALUMNO: RAÚL MOYA REYES Tutor: José Ramón Balsas Almagro Dpto: Departamento de Informática Junio, 2015

Upload: others

Post on 12-Mar-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

! ! !

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

!

! !

Escuela!Politécnica!Superior!de!Jaén! UNIVERSIDAD DE JAÉN

Trabajo!Fin!de!Grado!

!

CARCONTROL(SOFT+PROTOTIPO+PARA+PROPORCIONAR+A+EMPRESAS+UN+SERVICIO+PARA+EL+CONTROL+DE+SU+FLOTA+DE+

VEHÍCULOS+

ALUMNO:+RAÚL+MOYA+REYES+

Tutor:! José!Ramón!Balsas!Almagro!

Dpto:! Departamento!de!Informática!

!

!

!

!

Junio,+2015++

Page 2: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

! ! !

!

! !

Page 3: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

! ! !

!

!

Tabla+de+contenidos+

1.# Introducción#........................................................................................................................#1#

1.1.# Propósito#...................................................................................................................#1#

1.2.# Objetivos#...................................................................................................................#2#

1.3.# Metodología#..............................................................................................................#2#

1.4.# Estructura#del#documento#........................................................................................#3#

2.# Análisis#.................................................................................................................................#4#

2.1.# Análisis#preliminar#.....................................................................................................#4#

2.2.# Propuesta#de#solución.#..............................................................................................#6#

2.3.# Requisitos#del#sistema.#..............................................................................................#8#

2.4.# Planifcación#de#tareas#...............................................................................................#9#

2.5.# Estudio#de#viabilidad#...............................................................................................#12#

2.6.# Modelo#del#dominio#................................................................................................#16#

2.7.# Casos#de#uso#...........................................................................................................#17#

2.8.# Analisis#de#la#interfaz#..............................................................................................#21#

3.# Diseño#................................................................................................................................#23#

3.1.# Diagrama#de#clases#.................................................................................................#23#

3.2.# Diagramas#EntidadNRelación#...................................................................................#26#

3.3.# Diagrama#de#secuencia#...........................................................................................#28#

3.4.# Diseño#de#la#interfaz#...............................................................................................#30#

4.# Implementación#................................................................................................................#33#

4.1.# Arquitectura#............................................................................................................#33#

4.2.# Detalles#sobre#implementación#..............................................................................#35#

5.# Conclusión#.........................................................................................................................#37#

5.1.# Retrospectiva#..........................................................................................................#37#

5.2.# Mejoras#y#trabajos#futuros#......................................................................................#38#

6.# Bibliografía#........................................................................................................................#39#

Apéndice#I.#Manual#de#instalación#del#sistema.#.......................................................................#41#

Apéndice#II.#Descripción#de#contenidos#suministrados.#...........................................................#49#

Apéndice#III.#Acceso#a#instalación#de#pruebas.#.........................................................................#51#

Apéndice#IV.#Manual#de#usuario.#..............................................................................................#54#

Page 4: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

! ! !

!

Page 5: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 1!

1.+ INTRODUCCIÓN+

CarControlHSoft!es!un!sistema!para!la!gestión!y!control!de!flotas!de!vehículos.!

Se! va! a! realizar! una! breve! descripción! general! del! proyecto,! la! metodología! de!

desarrollo!y!una!explicación!del!contenido!de!este!documento.!

1.1.+ Propósito+

Obtener! información! en! tiempo! real! sobre! nuestras! flotas! de! vehículos! nos!

ayuda!a!ser!más!eficientes!y!a!reducir!costes,!por!lo!que!un!sistema!que!nos!ayude!a!

gestionarlas!se!vuelve!esencial.!

En! este! momento,! la! mayoría! de! los! sistemas! existentes! para! la! gestión! y!

control! de! vehículos! se! caracterizan! por! tener! dos! problemas! generales,! son!muy!

rudimentarios!utilizando!tecnologías!totalmente!desfasadas!y!no!son!alcanzables!por!

pequeñas!y!medianas!empresas,!por!los!sobrecostes!que!les!supone!un!sistema!de!

estas!características.!Además,!la!integración!con!software!interno!de!las!empresas!es!

casi!impensable.!El!nicho!de!mercado!es!bastante!amplio,!ya!que!se!puede!controlar!

todo! tipo! de! vehículos,! por! ejemplo,! ambulancias,! vehículos! alquilados! (coches,!

motos,!camiones,!etc.),!taxis!o!cualquier!flota!de!vehículos!propios.!

CarControl! va! a! desarrollar! un! sistema! para! proporcionar! a! empresas! o!

instituciones! un! software! como! servicio! (SaS[3])! para! la! gestión! y! control! de! sus!

vehículos,!además!de!una!API!(REST)!para!conseguir!mayor!integración.!

Se!instalará!un!hardware!en!los!vehículos,!obteniendo!acceso!para!su!gestión!

y!control,!además!de!añadir!funcionalidades!al!vehículo!para!interactuar!con!él.!Todo!

gestionado! desde! un! panel! web! propio! de! CarControl,! dando! la! posibilidad! de!

conexión!a!nuestra!API.!

Este! sistema! nos! podría! dar! el! control! completo! del! vehículo! como! recibir!

información!de!avería!o!accidente,!conocer!su!ubicación!o!interactuar!con!él,!incluso!

pudiendo!inmovilizarlo!en!cualquier!momento,!todo!ello!en!tiempo!real.!

!

Page 6: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 2!

1.2.+ Objetivos+

Los! objetivos! que! se! quieren! cumplir! para! lanzar! un! prototipo! del! sistema!

anteriormente!descrito!son:!

H! Realizar! un! estudio! sobre! tecnologías! para! geolocalización,! sistemas!

eléctricos,! servicios! web,! servidores! y! hardware! libre! para! ver! las!

posibilidades!que!existen!para!el!desarrollo!de! los!distintos!componentes!

(sistema,!software!y!hardware!del!vehículo,!etc.).!

H! Analizar!los!requisitos!para!el!desarrollo!de!un!sistema!SaaS!basado!en!la!

web!que!permita!su!explotación!por!varias!empresas!y!les!permita!gestionar!

de!forma!independiente!sus!flotas!de!vehículos.!

H! Desarrollar!un!prototipo!de!sistema!combinando!hardware!y!software,!para!

su!montaje!en!vehículos.!

H! Diseñar!e! implementar!un!prototipo!del!sistema!utilizando! las! tecnologías!

necesarias! para! programación! orientada! a! servicios,! aplicaciones!

empresariales!y!sistemas!en!tiempo!real.!

Una!vez!alcanzados!estos!objetivos,!el!proyecto!se!dará!por!finalizado.!

1.3.+ Metodología+

Debido! a! la! naturaleza! del! proyecto,! se! realizarán! cambios! durante! todo! el!

desarrollo.! Esto! se! debe! a! que! es! un! sistema! nuevo! del! que! no! tienen! claros! los!

requisitos!ni! los!posibles! conflictos!entre! las!distintas! tecnologías!empleadas.!Está!

presente!la!necesidad!de!adaptarse!a!las!situaciones!imprevistas!por!lo!que!se!utilizará!

una!metodología!de!desarrollo!ágil.!Además,!se!necesitará! tiempo!para! formación,!

búsqueda!de!información!y!análisis!de!herramientas!y/o!tecnologías.!

Por!tanto,!se!seguirán!las!fases!descritas!en!la!metodología!de!desarrollo!ágil!

SCRUM!realizando!sprint!de!2!semanas!de!duración!combinados!con!técnicas!de!XP!

como!pair!programing!o!code!refactoring.!Se!utilizarán!los!primeros!sprint!para!realizar!

análisis,!formación,!etc.,!es!decir,!un!estudio!preliminar!del!sistema.!Seguidamente!se!

realizara!el!diseño!proporcionando!un!diagrama!UML!utilizando!patrones!de!diseño.!

!

Page 7: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 3!

1.4.+ Estructura+del+documento+

El!presente!documento!se!ha!organizado!de!la!siguiente!manera:!

!

H! Introducción:!Básicamente!una!descripción!general!del!proyecto!y!la!

metodología!a!seguir.!

!

H! Análisis:!Incluye!la!descripción!del!contexto!del!que!se!parte!y!para!el!que!

se!realizará!el!desarrollo,!los!requisitos!del!sistema,!una!propuesta!de!

solución,!la!planificación!de!tareas,!un!estudio!de!viabilidad,!casos!de!uso!

y!diagrama!entidad!relación.!

!

H! Diseño:!Algunos!diagramas!principales!de!clases!y!de!secuencia!forman!

parte!de!este!apartado,!además!del!diseño!de!la!interfaz.!

!

H! Implementación:!Se!puede!encontrar!un!esquema!de!arquitectura,!detalles!

generales!sobre!la!implementación!y!las!pruebas!realizadas.!

!

H! Conclusión:!Descripción!sobre!aspectos!generales!del!proyecto,!

explicando!que!se!puede!mejorar!y!por!qué,!y!algunas!guías!sobre!el!

futuro!de!la!aplicación.!

!

H! Apéndices:!Son!un!conjunto!de!documentos!anexos!que!ayudarán!a!

completar!la!documentación.!Entre!ellos!están:!manual!de!instalación,!

manual!de!usuario,!descripción!de!los!contenidos!suministrados!y!acceso!

a!una!instalación!de!pruebas.!

!

! +

Page 8: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 4!

2.+ ANÁLISIS+

Se! va! a! realizar! un! refinamiento! en! detalle! del! sistema! para! aclarar,! en! la!

medida!de! lo!posible,! los!requisitos.!Además,!buscar!una!solución!que!cumpla!con!

estos!requisitos!y!realizar!un!estudio!de!viabilidad,!añadirá!un!plus!de!información!que!

nos!ayudará!a!encaminar!mejor!el!proyecto.!!!

!

2.1.+ Análisis+preliminar+

El! internet! de! las! cosas[6]! está!produciendo!un!boom! tecnológico!a!nuestro!

alrededor.! Todo! está! interconectado.! Se! puede! saber! en! todo!momento! una! gran!

cantidad!de!información,!como!dónde!estamos,!lugares!de!interés!cercanos,!si!hemos!

apagado!la!luz!de!casa!o!comprobar!si!tenemos!comida!en!la!nevera.!

Pero,!¿qué!está!pasando!con!los!vehículos?!En!realidad,!este!tema!está!mucho!

más!avanzado!de!lo!que!se!piensa.!Las!grandes!compañías!de!las!tecnologías!de!la!

información,! como! Google! o! Apple,! y! otras! empresas! no! tan! conocidas,! están!

orientando!gran!parte!de!sus!esfuerzos!a!los!vehículos.!Coches!eléctricos,!autónomos,!

seguros!y,!por!supuesto,! interconectados,!aparecen!en! las!noticias!a!menudo.!Aún!

así,!tienen!un!largo!camino!por!recorrer.!!

En! estos! momentos! se! necesita! algo! viable! y! funcional! que! nos! cubra! la!

carencia!de!información!que!se!necesita!acerca!de!vehículos.!Las!empresas!necesitan!

algún! método! para! gestionar! y! controlar! sus! vehículos.! De! ahí! nace! la! idea! de!

CarControlHSoft.!

En!EEUU! las!empresas!aseguradoras!y! las!entidades!bancarias,!añaden!un!

dispositivo!a! los!vehículos!que!aseguran!o! financian,!pudiendo! inmovilizarlos!si! se!

detectan!infracciones!o!irregularidades!en!los!pagos[7].!En!España,!esta!práctica!no!

está!extendida,!aunque!grandes!empresas!automovilísticas,!disponen!de!un!sistema!

de!seguimiento,!bastante!rudimentario,!para!identificar!los!vehículos.!

!

Page 9: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 5!

Existen! dos! aplicaciones! que! pueden! ser! competencia! directa! con! este!

proyecto:!

H!SatData:!Consiste!en!un!hardware!conectado!al!vehículo!y!un!software!privado!

instalado!en!la!empresa.!No!utiliza!cuotas!mensuales.!!

H!Link200:!Es!un!proyecto!de!TomTom.!Consiste!en!un!hardware!conectado!al!

OBDII!del!vehículo.!Hay!que!pagar!una!suscripción!mensual!al!servicio!y!una!cuota!

mensual!por!vehículo.!

Nuestro!sistema!es!accesible!desde!cualquier!sistema!operativo,!sin!tener!que!

instalar!nada!y!sin!miedo!a!perder!los!datos.!Con!estas!características!mejoramos!el!

servicio! que! ofrece! SatData,! que! bajo! nuestra! opinión! es! un! producto! totalmente!

desfasado.! Link200! quizá! sea! una! competencia!mucho!mayor.! Ofrece! un! servicio!

dispone!de!ningún!método!de!comunicación!con!el!vehículo,!se!limita!a!una!conexión!

a!la!centralita!de!un!coche.!Nuestro!proyecto!dispondrá!de!una!pantalla!y!un!chat!en!

tiempo!real.!Además,!no!existe!limite!de!modelo!ni!tipo!de!vehículo,!mejorando!así!el!

sistema!Link200.!

Podemos!definir!algunas!características!interesantes!que!un!sistema!como!éste!

podría!incluir:!

H! Inmovilizado!del!vehículo.!Por!ejemplo,!si!el!vehículo!es!robado,!podríamos!

detenerlo!al!instante.!

H! Restringir!áreas.!Por!ejemplo,!sería!útil!que!según!el!uso!que!le!vayamos!a!

dar!a!un!vehículo!alquilado!nos!ajustasen!el!precio.!El!servicio!que!te!deben!

prestar!si!alquilas!un!vehículo!y!sales!del!país!con!él,!no!es!el!mismo!y!su!

precio! tampoco! debería! serlo.! Si! pudieramos! restringir! áreas,! podríamos!

ajustar!mejor!el!precio!del!alquiler.!

H! Localización!GPS.!Por!ejemplo,!obtener!la!posición!exacta!de!un!vehículo,!

nos!facilitaría!enormemente!la!asistencia!en!carretera,!pudiendo!avisar!a!la!

grúa!más!cercana!o!el!camino!más!corto!hasta!el!vehículo.! Imagina!una!

autopista,! hay! que! elegir! el! acceso! más! cercano! guiandose! por! las!

indicaciones!del!usuario.!Con!la!información!GPS!no!habría!error.!

Page 10: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 6!

H! Velocidad.!Por!ejemplo,!muchas!empresas!se!hacen!cargo!de!las!multas!de!

tráfico!de!sus!trabajadores.!Penalizar!a!estos!por!una!conducción!peligrosa!

es! interesante.! Obteniendo! la! velocidad,! tenemos! información! relevante!

para!este!uso.!

H! Identificación! del! conductor.! Por! ejemplo,! saber! que! persona! conduce!

cualquiera!de! los!vehículos!de!nuestra!empresa!nos!ayuda!a!gestionar!a!

nuestros!trabajadores!de!forma!más!eficiente.!

H! Distintos! sensores.! Por! ejemplo,! el! nivel! de! combustible,! temperatura,!

presión!de!los!neumáticos.!etc.!

H! Distintos!actuadores!para!controlar!el!vehículo.!Por!ejemplo,!encender!las!

luces,!la!alarma,!subir!las!ventanillas,!etc.!

H! Método!de!contacto!con!la!empresa!para!solicitar!información.!Por!ejemplo,!

un!chat!para!tener!comunicación!directa!con!la!empresa!a!la!que!le!hemos!

alquilado!el!vehículo!por!si!necesitamos!cualquier!tipo!de!información.!

H! Envío!de!una!alerta!SOS!a! la!empresa.!Por!ejemplo,! si! el! conductor!del!

vehículo!sufre!un!accidente!podría!avisar!a!la!empresa!rapidamente.!

!

Las! posibilidades! son! infinitas! aunque! habría! que! analizar! las! tecnologías!

necesarias!para!poder!implementar!de!forma!eficiente!estas!características.!

!

2.2.+ Propuesta+de+solución.+

Dada! la! envergadura! de! proyecto,! es! necesario! comenzar! realizando! un!

producto!mínimo!viable!(MVP)!definiendo!las!características!imprescindibles.!Esto!nos!

ayudará!en!el!desarrollo!futuro!de!un!sistema!que!cubra!todas!las!características!que!

demande!el!mercado.!

!

!

Page 11: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 7!

Bajo!nuestro!punto!de!vista,!las!características!necesarias!a!desarrollar!en!este!

MVP!serán:!

H! Inmovilizado!del!vehículo.!

H! Localización!GPS.!

H! Velocidad.!

H! Identificación!del!conductor.!

H! Estado!del!vehículo!(parado!o!en!funcionamiento).!

H! Chat!(con!operador!de!su!empresa).!!

H! Envío!de!una!alerta!SOS!a!la!empresa.!

Se!desarrollará!un! sistema!que!proporcione!una!API!Rest! para! la! lógica!de!

negocio,!dando!la!posibilidad!de!conectar!cualquier!tipo!de!cliente.!Conectada!a!esta,!

una!aplicación!web!donde!una!empresa!pueda!gestionar!sus!conductores!y!vehículos,!

viendo!la!posición,!velocidad,!etc.!Además,!cada!vehículo!incluirá!una!Raspberry!Pi!

Model!B!para!realizar!el!control!del!mismo!y!una!pantalla!!que!incluirá!una!aplicación!

para!facilitar!la!comunicación!entre!empresa!y!vehículo.!

Siendo!un!sistema!SaaS,! las!tecnologías!webs!estarán!muy!presentes.!Para!

alcanzar!el!objetivo,!se!necesitará!la!unión!de!las!siguientes!tecnologías:!

H! Java[4]:! Lenguaje!de!programación!multiplataforma!propiedad!de!Oracle.!

Se!usará!con!un!framework!web.!

H! REST:! La! Transferencia! de! Estado! Representacional! (Representational!

State!Transfer)!es!un!estilo!de!arquitectura!software!para!sistemas!basados!

en!web.!Se!usará!para!generar!una!API!de!conexión.!

H! MVC[5]:!Modelo!vista!controlador,!es!un!patrón!de!arquitectura!de!software!

que!separa!los!datos!y!la!lógica!de!negocio!de!una!aplicación!de!la!interfaz!

de! usuario! y! el! módulo! encargado! de! gestionar! los! eventos! y! las!

comunicaciones.!

H! Hardware!abierto!de!bajo!coste:!se!utilizará!un!ordenador!de!placa!reducida!

(SBC)!de!bajo!coste!desarrollado!en!Reino!Unido!llamado!Raspberry!Pi[9].!

Con!este,!podremos!interactuar!con!el!vehículo.!

Page 12: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 8!

Además,! otras! tecnologías! comúnmente! usadas! en! aplicaciones! web! como!

Javascript,!HTML5,!CSS3,!etc!serán!parte!del!sistema.!

2.3.+ Requisitos+del+sistema.+

Como!hemos!comentado!anteriormente,!debido!a! la!naturaleza!del!proyecto,!

los! requisitos! del! sistema[1]! no! están! cerrados.! Esto,! por! una! parte,! enriquece! el!

proyecto! desarrollando! funcionalidades! que! en! principio! no! se! pensaron.! Por! otra!

parte,! es! un! problema,! ya! que! podría! hacer! que! el! proyecto! se! alargue! de! forma!

indefinida.! En! cualquier! caso,! vamos! a! definir! unos! requisitos! que! nos! ayuden! a!

encaminar!el!proyecto.!

H! Requisitos!funcionales!

o! La!empresa!podrá!añadir,!eliminar,!modificar!y!ver!sus!vehículos.!

o! La!empresa!podrá!añadir,!eliminar,!modificar!y!ver!sus!conductores.!

o! La!empresa!dispondrá!de!un!chat!para!comunicarse!con!el!vehículo.!

o! La!empresa!podrá!inmovilizar!un!vehículo!en!tiempo!real.!

o! La!empresa!podrá!consultar!la!información!de!cada!vehículo!en!tiempo!

real.!

o! La!empresa!recibirá!notificaciones!en!tiempo!real.!

o! El!vehículo!podrá!enviar!una!alerta!de!sos!a!la!empresa.!

o! El!vehículo!dispondrá!de!un!chat!para!comunicarse!con!su!empresa.!

o! El!vehículo!recibirá!alertas!y!notificaciones!en!tiempo!real.!

o! El!vehículo!enviará!información!de!los!sensores!disponibles.!

!

H! Requisitos!no!funcionales!

o! La!empresa!podrá!conectar!cualquier!tipo!de!cliente.!

o! El!vehículo!dispondrá!de!una!pantalla.!

o! El!vehículo!dispondrá!de!tarifa!de!datos.!

o! El!vehículo!podrá!seguir!en!funcionamiento!si!el!sistema!falla.!

Con!este!listado,!tenemos!una!base!suficiente!para!encaminar!el!proyecto!hacia!

el!punto!que!queremos.!

!

Page 13: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 9!

2.4.+ Planifcación+de+tareas+

En! la! filosofía! ágil,! la! planificación!de! las! tareas! se! realiza! a! corto! plazo,! la!

tendencia! actual! es! utilizar! todas! las! características! que! nos! sean! útiles! de! cada!

metodología.!Planificar!todas!las!tareas!nos!proporcionará!una!visión!general!(aunque!

no!tiene!que!cumplirse!exactamente)!sobre!cómo!evolucionará!el!desarrollo.!!

Definamos! cada! una! de! las! tareas! y! sus! subtareas! indicando! un! perfil! del!

equipo!que!será!el!encargado!de!realizarlas:!

1.! Análisis.!

a.! Estudio!de!tecnologías.!Analista.!

b.! Análisis!de!requisitos.!Analista.!

c.! Recopilación!de!bibliografía.!Analista.!

2.! Diseño.!

a.! Diseño!preliminar.!Analista.!

b.! Diseño!detallado.!Analista.!

3.! Análisis!de!la!interfaz.!

a.! Boceto!wireframe.!Diseñador!UI/UX.!

b.! Diseño!de!prototipo.!Diseñador!UI/UX.!

4.! Maquetación!HTML.!

a.! Interfaz!HTML!de!AdminClient.!Programador.!

b.! Interfaz!HTML!de!CarClient.!Programador.!

5.! Implementar!lógica!de!negocio!y!conexión!DB.!

a.! Configuración!de!Spring!con!los!distintos!módulos.!Programador.!

b.! Desarrollo!de!los!modelos,!beans!y!otros!patrones.!Programador.!

c.! Integración!de!Hibernate.!Programador.!

6.! Implementar!servicios!web!como!recursos.!

a.! Integrar!Jersey!para!implementar!API!REST.!Programador.!

b.! Implementar!URLs!para!obtener!los!recursos.!Programador.!

7.! Implementar!AdminClient!utilizando!MVC.!

a.! Implementar!modelos!y!controladores.!Programador.!

b.! Integrar!HTML!generando!vistas.!Programador.!

8.! Conexión!de!AdminClient!con!CoreService.!Programador.!

Page 14: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 10!

9.! Implementar!CoreRealTime.!

a.! Instalación! de! Node.js! y! todos! los! paquetes! necesarios.!

Programador.!

b.! Implementación! de! servidor! web! con! Express! y! web! socket.!

Programador.!

c.! Implementación!de!simulador.!Programador.!

10.!!!Conexión!de!AdminClient!con!CoreRealTime.!Programador.!

11.!!!Conexión!de!CarClient!con!CoreRealTime.!

a.! Integración!de!HTML!con!MV*!utilizando!Backbone.!Programador.!

b.! Integración!de!socket.!Programador.!

12.!!!Implementar!circuito!de!relés!para!el!control!del!vehículo.!Programador.!

13.!!!Implementar!CarControl.!

a.! Implementar!GPIO.!Programador.!

b.! Implementar!GPS.!Programador.!

14.!!!Conexión!de!CarControl!con!CoreRealTime.!Programador.!

15.!!!Instalar!Raspbian!con!los!drivers!de!Piscreen.!Programador.!

16.!!!Configurar!Raspbian!y!realizar!backup.!Programador.!

17.!!!Deployment!en!servidor.!

a.! Instalación!del!sistema,!servidores!y!paquetes.!Programador.!

b.! Deploy!de!todas!las!aplicaciones.!Programador.!

18.!!!Configurar!dominio!Senior!Developers.!Programador.!

19.!!!Refactoring!&!Testing.!Tester.!!

!

!

!

!

!

!

!

Page 15: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 11!

Veamos!estas!tareas!en!un!diagrama!jerárquico!de!tareas.!

Diagrama'2.4.1!

La! fecha! límite! de! entrega! es! 02/03/2015.! Planificaremos! sprints! de! dos!

semanas! (5! días! hábiles! a! jornada! completa)! por! lo! que! debemos! desarrollar! el!

proyecto!en!10!sprint!(inicio!del!desarrollo!20/10/2015).!

Diagrama'2.4.2'

'

'

Page 16: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 12!

2.5.+ Estudio+de+viabilidad+

Para!corroborar!que!nuestro!proyecto!es!viable!y!puede!tener!continuidad!en!el!

tiempo,!necesitamos!analizar!el!dinero!necesario!para!poder!desarrollarlo.!Además,!

tenemos!que!calcular!los!gastos!mensuales!fijos!posteriores!al!desarrollo!y!de!cada!

producto!vendido.!

Gastos!en!material!

Concepto! Cantidad! Precio! Total!

Mac!Mini! 7! 515!€! 3605!€!

Pantalla!Dell!24”! 7! 229!€! 1603!€!

Raspberry!Pi!Model!B! 1! 41,95!€! 41,95!€!

Kit!relé!20A! 1! 7,60!€! 7,60!€!

Kit!fuente!de!alimentación!USB! 1! 8,91!€! 8,91!€!

Pantalla!TFT!Raspberry!2,8”! 1! 29,90!€! 29,90!€!

Kit!leds,!resistencias!y!cables! 1! 6!€! 6!€!

! ! TOTAL! 5302,36!€!

Tabla'2.5.1'

La!vida!útil!de!este!material!es!aproximadamente!de!3!años.!Si!dividimos! la!

cantidad!total!entre!este!periodo,!obtenemos!127,49!€!al!mes.!A!esta!cantidad,!hay!

que!sumarle!5!€!al!mes!del!servidor!para!realizar!test!y!55,40!€!al!mes!de!la!conexión!

a!internet.!

Esto!genera!un!total!en!material!de!187,89!€!/!mes.!

!

Page 17: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 13!

Gastos!en!personal[10]!

Concepto! Cantidad! Precio! Total!

Analista! 1! 2917!€! 2917!€!

Programador! 3! 2334!€! 7002!€!

Diseñador! 1! 1667!€! 1667!€!

Tester! 1! 1500!€! 1500!€!

! ! TOTAL! 13086!€!

Tabla'2.5.2'

El!personal! trabajará!5!días!a! la!semana!a! jornada!completa! lo!que!supone!

13086!€!al!mes.!!

Gastos!de!explotación!

Concepto! Cantidad! Precio! Total!

Raspberry!Pi!Model!B! 1! 41,95!€! 41,95!€!

Kit!relé!20A! 1! 7,60!€! 7,60!€!

Kit!fuente!de!alimentación!USB! 1! 8,91!€! 8,91!€!

Pantalla!TFT!Raspberry!2,8”! 1! 29,90!€! 29,!90!€!

Kit!leds,!resistencias!y!cables! 1! 6!€! 6!€!

! ! TOTAL! 94,36!€!!

Tabla'2.5.3'

Page 18: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 14!

La!vida!útil!de!este!material!es!aproximadamente!de!3!años.!Si!dividimos! la!

cantidad!total!entre!este!periodo,!obtenemos!2,62!€!al!mes.!A!esta!cantidad,!hay!que!

sumarle!20!€!al!mes!del!servidor!para!producción!y!29,95!€!al!mes!de!la!conexión!a!

internet!con!tarifa!de!datos.!

Esto!genera!un!total!en!explotación!de!52,57!€!/!mes.!

!

Una! vez! que! tenemos! todos! los! datos! necesarios! podemos! hacer! algunos!

cálculos!simples!para!estimar!el!desembolso!inicial!y!los!gastos!mensuales!durante!el!

desarrollo!del!proyecto.!

Veamos!una!aproximación:!

H! Al!inicio!de!nuestra!actividad,!necesitamos!adquirir!los!equipos!informáticos!

y!un!hardware!para!realizar!pruebas,!esto!nos!supone!un!coste!de!1127,34!

(187,89!€!/!mes).!

H! Necesitamos!contratar!al!personal.!Podríamos!saber!cuál!sería!el!coste!en!

horas! de! cada! uno! y! calcularlo! en! consecuencia,! pero! es! más! realista!

contratar! al! equipo! a! tiempo! completo! ya! que! habrá! que! realizar! otras!

muchas!tareas!a!nivel! interno!en!la!empresa.!Por!tanto,!necesitaremos!al!

menos!6!meses!de!trabajo!del!equipo!completo,!lo!que!supone!un!coste!en!

nóminas!de!78516!(13086!€!/!mes).!

Necesitamos!un!fondo!de!80000!€!para!poder!desarrollar!el!proyecto.!

El!modelo!de!negocio!que!mejor!se!adapta!a!la!problemática!que!se!resuelve!

con!este!proyecto!es!el!pago!por!suscripción.!Nuestro!coste!por!vehículo!es!de!52,57!

€!y!los!gastos!de!la!empresa!al!mes!son!13273,89!€.!Suponiendo!una!subscripción!

mensual!de!25!€!por!vehículo,!necesitaríamos!600!vehículos!para!empezar!a!obtener!

ingresos!(con!una!media!de!5!vehículos!por!empresa,!podría!rondar!las!60!empresas).!

A!partir!de!esa!cantidad,!se!pueden!abaratar!los!pagos!mensuales,!realizar!ofertas,!

etc.!También!podemos!establecer!permanencias!o!un!pago!inicial!para!evitarla,!con!lo!

que!nos!aseguramos!clientes!durante!periodos!más!largos!de!tiempo.!

Page 19: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 15!

Nuestro! primer! objetivo! comercial! será! mantener! más! de! 300! vehículos!

suscritos! al! servicio,! consiguiendo! tracción! y! algo! de! facturación.! El! siguiente,!

conseguir!5!nuevos!vehículos!cada!mes.!!

Un!años!después!de!alcanzar!el!primer!objetivo,!esperamos!tener!60!vehículos!

nuevos,! que! nos! proporcionarán! unos! ingresos! de! 250! €! al! mes.! De! esta! forma!

tendremos!ingresos!de!forma!exponencial.!Calculamos!el!beneficio!anual!(ingresos!H!

gastos!=!beneficio):!

H! 1º!año,!conseguir!60!vehículos:!!

(360!vehículos!x!25!€)!H!(13273,89!gastos)!=!H4273!€!/!mes!=!H51276!el!

primer!año.!

•! Acumulando!el!gasto!del!desarrollo,!nos!encontraríamos!en!H131276!

€,!es!decir!tendríamos!perdidas.!

H! 2º!año,!conseguir!120!vehículos:!!

(480!vehículos!x!25!€)!H!(13273,89!gastos)!=!H1273!€!/!mes!=!H15276!el!

segundo!año.!

•! Acumulando!las!pérdidas!anteriores,!nos!encontraríamos!en!H146552!

€,!es!decir!tendríamos!perdidas.!

H! 3º!año,!conseguir!240!vehículos:!

(720!vehículos!x!25!€)!H!(13273,89!gastos)!=!4727!€!/!mes!=!56724!al!

tercer!año.!

•! Acumulando!las!pérdidas!anteriores,!nos!encontraríamos!en!H89828!

€,!es!decir!recuperando!parte!de!las!perdidas!de!los!años!anteriores.!

Como!vemos,!a!partir!del!3º!año,!nuestros!ingresos!se!disparan!con!cifras!de!

700!vehículos.!Según!estadísticas!de!la!DGT[11],!hay!más!de!30!millones!de!vehículos!

en!España!al!inicio!de!2013,!por!lo!que!700!vehículos!no!parecen!ser!demasiados.!

!

Page 20: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 16!

2.6.+ Modelo+del+dominio+

Realizamos! un!modelo! conceptual! de! todos! los! temas! relacionados! con! un!

problema!y!describimos!las!distintas!entidades,!sus!atributos,!papeles!y!relaciones,!

además!de!las!restricciones!que!rigen!el!dominio!del!problema.!

Podemos!identificar!los!siguientes!conceptos:!

H! Empresa!

H! Vehículo!

H! Conductor!

H! Ruta!

H! Posición!

H! Alerta!

H! Chat!

H! Comentario!

H! Cliente!Raspberry!Pi!

H! Cliente!para!empresa!

H! REST!

Con! el! fin! de! representar! los! conceptos! clave! del! problema! y! una! visión!

estructural,!creamos!el!modelo!de!dominio.!Este!nos!ayuda!a! limitar!el!alcance!del!

problema.!

!

Diagrama'2.6'

Page 21: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 17!

Como!vemos!en!el!diagrama,!no!todos!los!conceptos!son!parte!del!modelo!de!

datos,!algunos!son!otros!componentes.!

El!eje!central!de! la!aplicación!es!el!vehículo.!Este!contiene! listas!de!alertas,!

rutas! y! chats.!Cada!uno!de!estos! conceptos! solo! van!a!pertenecer! a!un! vehículo.!

Además,!cada!vehículo!contiene!un!conductor.!

Cada! empresa! gestiona! una! serie! de! vehículos.! Estas! serán! accesibles!

mediante!un!API!REST!

2.7.+ Casos+de+uso+

Para!complementar!el!modelo!de!domino! realizamos!algunos!casos!de!uso.!

Estos! describen! el! proceso! para! realizar! una! acción! en! el! sistema,! ayudan! a!

determinar!la!funcionalidad!y!características!desde!el!punto!de!vista!del!usuario.!

Existen!dos!tipos!de!usuarios!que!utilizaran!nuestros!sistema:!conductores!de!

los! vehículos! y! administradores! de! la! empresa.! Como! no! todos! los! casos! de! uso!

pueden!ser!útiles,!proponemos!representar!los!siguientes:!

H! Consultar!la!información!de!un!vehículo.!

H! Detener!un!vehículo.!

H! Enviar!SOS!a!la!empresa.!

Consultar+la+información+de+un+vehículo.+

'

Diagrama'2.7.1+

Page 22: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 18!

Caso!de!uso! Consultar!información!de!un!vehículo!

Actor!primario! Empresa!

Sistema! Sistema!

Participantes! Empresa,!CoreService!

Nivel! Objetivo!empresa!

Condición!previa! Estar!logueado!en!el!sistema!

Operaciones!básicas! !

1! Seleccionar!la!opción!del!menú!

“vehículos”!

2! Seleccionar!el!vehículo!del!listado!

Alternativas! !

H! H!

Tabla'2.7.1'

Detener+un+vehículo.+

Diagrama'2.7.2+

Page 23: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 19!

Caso!de!uso! Consultar!información!de!un!vehículo!

Actor!primario! Empresa!

Sistema! AdminClient!

Participantes! Empresa,!CoreRealTime,!Vehicle,!

CoreService!

Nivel! Objetivo!empresa!

Condición!previa! Estar!logueado!en!el!sistema!

Operaciones!básicas! !

1! Seleccionar!la!opción!del!menú!

“vehículos”!

2! Seleccionar!el!vehículo!del!listado!

3! Pulsar!el!botón!detener!vehículo!

4! Aceptar!para!el!vehículo!

Alternativas! !

4.A! ¿Quiere!detener!el!vehículo?!

4.A.1! Si,!se!detiene!cuando!sea!posible!

4.A.2! No,!se!vuelve!al!vehículo!sin!hacer!nada!

Tabla'2.7.2'

+

+

Page 24: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 20!

Enviar+SOS+a+la+empresa.+

Diagrama'2.7.3+

Caso!de!uso! Consultar!información!de!un!vehículo!

Actor!primario! Conductor!

Sistema! CarClient!

Participantes! Conductor,!CoreRealTime,!Empresa,!

CoreService!

Nivel! Objetivo!conductor!

Condición!previa! Tener!conexión!a!internet!

Operaciones!básicas! !

1! Seleccionar!opción!del!menu!SOS!

2! Aceptar!enviar!SOS!

Alternativas! !

2.A! Se!enviará!si!no!indica!lo!contrario.!

2.A.1! Cancelar,!no!hacer!nada.!

Tabla'2.7.3'

Page 25: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 21!

2.8.+ Analisis+de+la+interfaz+

Se!ha!realizado!un!análisis!previo!de!la!interfaz!para!madurar!la!idea.!Podemos!

identificar! dos! interfaces! gráficas,! la! del! panel! de! administración! para! la! empresa!

(AdminClient)!y!la!interfaz!que!aparece!en!la!pantalla!del!vehículo!(CarClient).!

El!diseño!de!la!interfaz!de!usuario!incluye!seleccionar!y!ordenar!los!elementos!

de!la!interfaz!para!permitir!a!los!usuarios!interactuar!con!la!funcionalidad!del!sistema.!

Podemos! ver! un! wireframe! de! ambas! interfaces! para! representar! el! esqueleto! o!

estructura!visual!de!las!mismas.!

AdminClient+

Imagen'2.8.1'

CarClient+

Imagen'2.8.2'

Page 26: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 22!

Como! vemos,! contienen! todos! los! elementos!mencionados! y! nos! ayudan! a!

visualizar!mucho!mejor!el!concepto.!AdminClient!usa!una!proporción!panorámica!de!

16:9!mientras!que!CarClient!es!más!parecida!a!4:3.!

Se! ha! tenido! encuenta! la! coherencia! a! la! hora! de!maquetar! y! diseñadar! la!

aplicación.!Las!ventanas!y! los!botones!presentan!el!mismo!estilo!y!aparecen!en!el!

mismo! lugar,!para!mejorar! la!experiencia!y!usabilidad!del!usuario,!creando!así!una!

aplicación!muy!intuitiva.!Además,!ambas!aplicaciones!tienen!el!menú!a!la!izquierda,!

ya!que!nuestros!clientes!potenciales!serán!occidentales.!

!

!

! +

Page 27: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 23!

3.+ DISEÑO+

En!este!punto,!vamos!a!describir!la!definición!de!la!arquitectura,!componentes,!

interfaces!y!otras!características!del!sistema.!

3.1.+ Diagrama+de+clases+

La!aplicación!está!compuesta!por!5!partes!diferenciadas!e!interconectadas.!Las!

vamos!a!definir!en!este!diagrama!de!paquetes:!

Diagrama'3.1.1!

Vamos!a!realizar!una!implementación!orientada!a!objetos,!por!tanto,!diseñar!un!

diagrama!de!clases!nos! facilitará!el! trabajo.!Para!que!se!entienda!mejor,! vamos!a!

explicar!por!separado!las!5!partes.!

Coreservice+

Será!el!núcleo!del!sistema,!tres!de!las!4!partes!restantes!estarán!conectadas!a!

esta.!Contendrá!la!lógica!de!negocio,!conexión!a!base!de!datos!y!ofrecerá!cada!uno!

de!los!recursos!REST.!

Page 28: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 24!

Diagrama'3.1.2!

Como!se!puede!apreciar,! se!ha!simplificado! la! representación!de! los!getter,!

setter!y!los!métodos!CRUD!(crear,!obtener,!actualizar!y!eliminar)!de!los!objetos.!

En!este!diseño,!se!usarán!algunos!patrones.!En!general,!las!clases!utilizarán!

experto! en! información,! alta! cohesión! y! bajo! acoplamiento.! Además,! todos! los!

modelos!que!se!persistirán!utilizarán:!

H! Patrón!DAO!(objeto!de!acceso!a!los!datos)!!con!un!manejador!de!entidades!

de!ORM!Hibernate,!

H! Patrón!DTO!(objeto!de!transferencia!de!datos)!para!serializar!los!objetos!de!

forma!simple!y!ofrecerlos!como!recursos!REST.!

Page 29: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 25!

Existe!una!clase!que!hace!de!interfaz!al!resto!del!sistema,!EnterpriseBean.!Es!

un!Bean! de!Spring[2],! que! por! su! naturaleza! implementa! los! patrones!Singleton! y!

Creación.!Se!encarga!de!construir! los!objetos!y!realizar!inyección!de!dependencias!

entre! los! modelos.! La! inyección! de! dependencias! es! usada! también! en! la!

implementación!de!los!Bean!en!Spring,!pero!se!realiza!de!forma!automática!mediante!

anotaciones.!

AdminClient+

Será! un! cliente! para! las! empresas.! Facilitará! el! acceso! y! control! de! las!

empresas! a! sus! vehículos.! Permitirá! añadir,! eliminar,! actualizar! y! ver! vehículos! y!

conductores.!Dispondrá!de!un!chat!para!la!comunicación!del!vehículo.!Recibirá!alertas!

y!notificaicones!del!vehículo.!Se!conectará!a!CoreService!a!través!de!REST.!No!es!

necesario!un!diagrama!de!clases!de!esta!parte!ya!que!los!modelos!son!los!mismos!

descritos!en!CoreService!y!gran!parte!del!código!no!es!orientado!a!objetos.!

Dispondrá!de!conexión!en!tiempo!real!con!el!sistema.!Para!ello,!será!necesario!

implementar!sockets.!Utilizará!DTOs!para!la!transferencia!de!datos!REST.!!

CarClient+

Será!el!cliente!ejecutado!en!el!vehículo.!Dispondrá!de!una!interfaz!gráfica!para!

que!desde!el!vehículo!se!pueda!interactuar!con!la!empresa.!Se!utilizarán!sockets!en!

su!mayor!parte.!La!programación!orientada!a!objetos!no!es!una!caractarística!que!

destacará!y!no!queda!claro!que!con!programación!estructurada!no!sea!suficiente!para!

su!implementación.!

CoreRealTime+

Será! el! núcleo! del! sistema! de! tiempo! real.! Hará! de! intermediario! entre! las!

distintas!aplicaciones!para!notificar,!mediante! sockets,! todo! lo!que!ocurre!en! cada!

momento.!!

+

+

Page 30: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 26!

CarControl+

Será!un!script!para!controlar!el!hardware! incrustado!en!el!vehículo.!Utilizará!

sockets!y!se!conectará!a!CoreRealTime.!No!es!orientado!a!objetos!por!lo!que!no!se!

incluye!diagrama!de!clases.!

3.2.+ Diagramas+Entidad(Relación+

No!se!generará!un!diagrama!entidad! relación!en!el!diseño,!ya!que!vamos!a!

utilizar!un!ORM!(Hibernate)!para!la!persistencia!de!objetos.!Este!será!el!encargado!de!

autogenerar! las! tablas! de! la! base! de! datos! correspondiente! al! CoreServices!

(encargado!de!persistir!los!datos).!!

Los!objetos! a! persistir! son!Business,!Vehicle,!Chat,!Comment,!Alert,!Way! y!

Position.! Para! poder! persistir! las! relaciones,! comprobaremos! que! se! crean! tablas!

intermedias!con!los!identificadores!de!los!objetos.!

'Diagrama'4.2!

!

Page 31: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 27!

Los!siguientes!puntos!confirmarán!si!las!tablas!están!normalizadas:!

H! 1FN!

o! Todos!los!atributos!son!atómicos.!!

o! La!tabla!contiene!una!clave!primaria!única.!

o! La!clave!primaria!no!contiene!atributos!nulos.!

o! No!existe!variación!en!el!número!de!columnas.!

o! Los!Campos!no!clave!se!identifican!por!la!clave.!

H! 2FN!

o! Está!en!1FN!y! los!atributos!que!no!forman!parte!de!ninguna!clave!

dependen!de!forma!completa!de!la!clave!principal.!

H! 3FN!

o! Está! en! 2FN! y! no! existe! ninguna! dependencia! funcional! transitiva!

entre!los!atributos!que!no!son!clave.!

Podemos!afirmar!que!el!ORM!ha!creado!la!base!de!datos!de!forma!correcta.!

!

!

!

!

!

!

!

!

!

!

!

Page 32: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 28!

3.3.+ Diagrama+de+secuencia+

Vamos!a!mostrar! la! interacción!que!se!produce!entre! los!objetos!de!nuestro!

sistema! en! el! tiempo,! basandonos! en! los! casos! de! uso! descritos! anteriormente,!

mediante! diagramas!de! secuencia.!Con!ellos! quedarán!más! claros! los! detalles! de!

implementación!de!cada!escenario.!Los!diagramas!de!secuencia!descritos!son:!

H! Consultar!la!información!de!un!vehículo.!

H! Detener!un!vehículo.!

H! Enviar!SOS!a!la!empresa.!

Consultar+la+información+de+un+vehículo+

'

Diagrama'3.3.1!

Como!observamos,!la!empresa!solicita!el!listado!de!vehículos.!El!controlador!

los!obtiene!del!servicio!REST!y!los!muestra.!Después,!la!empresa!elige!el!vehículo!del!

que!desea!obtener! la! información.!Este!es!solicitado!al!controlador!que!a!su!ver! lo!

obtiene! mediante! el! servicio! REST! y! se! lo! muestra! a! la! empresa! con! toda! la!

información!relacionada.!

Page 33: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 29!

Detener+un+vehículo.+

'Diagrama'3.3.2+

Este!proceso!es!similar!al!anterior,!ya!que!para!poder!detener!el!vehículo!antes!

hay!que!obtenerlo.!Una!vez!que!estamos!visualizando!la!información!del!vehículo,!la!

empresa!puede!solicitar!que!se!detenga.!Esta!solicitud!llega!al!socket!que!notifica!al!

vehículo!para!que!active!el!hardware!necesario!para!detenerse.!

Enviar+SOS+a+la+empresa.+

'Diagrama'3.3.2'

Page 34: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 30!

!

Enviar!una!alerta!debe! requerir! de!demasiado!esfuerzo,! ya!que!es!un! tema!

delicado!y!debería!ser!muy!rápido.!Por! tanto,!el!conductor!solo! tiene!que!pulsar!el!

botón!de!SOS!y!el!sistema!se!encargará!de!realizar! todo!el!proceso.!La!aplicación!

mostrará! una! alerta! en! el! vehículo! y! enviará! la! petición! de! SOS! al! socket.! Este!

notificará!mediante!el!manager!correspondiente!a!la!aplicación!de!la!empresa.!

!

3.4.+ Diseño+de+la+interfaz+

Siguiendo! el! wireframe! creado! en! el! análisis,! nos! disponemos! a! crear! un!

prototipo.!Este!debe!ser!construido!en!poco!tiempo,!usando!los!programas!adecuados!

y!no!se!debe!utilizar!muchos!recursos.!

Se!han!utilizado!metáforas!para!representar!los!iconos.!El!layout!esta!basado!

en!dos!columnas,!una!para!el!menú!y!otra!para!el!contenido.!

AdminClient+

Imagen'3.4.1!

+

+

Page 35: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 31!

+

CarClient+

'

Imagen'3.4.2!

!

Los!colores!no!han!sido!escogidos!aleatoriamente,!sino!que!además!de!tener!

armonía,!se!han!buscado!unas!cualidades!específicas:!

H! El! color! verde! representa! la! aceptación,! al! contrario! del! color! rojo,! que!

además!representa!atención.!

H! No! se! han! utilizado! colores! muy! saturados! para! no! desviar! la! vista! del!

conductor!que!debe!ir!atendiendo!a!la!carretera.!

H! El! color!principal!escogído!en!el!modelo! (azul!oscuro,!como!el! fondo!del!

reloj)!cumple!una!función!muy! importante,!al!ser!un!color!oscuro!y!de!un!

brillo! y! saturación! concretos! no! deslumbra! con! baja! luminosidad.! Se! ha!

pensado!así!porque!el!salvapantallas!(reloj)!aparecerá! la!mayor!parte!del!

tiempo!en!la!pantalla!y!nos!ayuda!a!conseguir!una!mejor!experiencia!tanto!

de!día!como!de!noche.!

!

!

Page 36: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 32!

3.5.+ Circuito+electrónico+

Se!ha!diseñado!el!siguiente!circuito!para!controlar!el!vehículo:!

Circuito'3.1'

Se!necesitará!un!hardware!que!pueda!controlar!3!pines!de!entrada!y!salida!a!

3,3V.!El!pin!22,!controlará!si!el!vehículo!está!en!funcionamiento.!El!pin!17!se!utilizará!

para!indicar!si!el!vehículo!ha!sido!bloqueado,!siendo!el!pin!23!el!encargado!del!control!

del!bloqueo.!

!

+! +

Page 37: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 33!

4.+ IMPLEMENTACIÓN+

Una! vez! que! tenemos! clara! la! especificación! técnica,! en! la! medida! de! los!

posible,!vamos!a!realizar!el!desarrollo.!

4.1.+ Arquitectura+

! Tenemos!que!definir!de!forma!clara!la!arquitectura!hardware!del!sistema!y!las!

tecnologías!que!vamos!a!emplear!en!cada!una!de!las!partes!que!lo!componen.!

! La!arquitectura!hardware!estará!compuesta!por!partes:!

H! Servidor!Ubuntu:!Sistema!operativo!linux!para!servidores.!Se!utilizará!para!

desplegar! las! aplicaciones! desarrolladas! en! sus! correspondientes!

servidores.!Utilizaremos!un!equipo!con!2!Gb!de!memoria!ram,!2!núcleos!y!

40!Gb!de!SSD.!

H! Raspberry!Pi[9]:!Hardware!libre!de!bajo!coste.!Necesitaremos!una!pantalla!

y!un!circuito!para!el!control!del!vehículo.!Además!se!utilizará!para!ejecutar!

el!cliente!para!el!vehículo.!

Cada!uno!de!los!vehículos!integrará!una!Raspberry!Pi!con!todo!lo!necesario.!A!

modo!orientativo,!podemos!ver!el!resultado!en!la!siguiente!imagen:!

!

Page 38: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 34!

En!este!diagrama!de!arquitectura!podemos!ver!de!forma!gráfica!la!estructura!

hardware!y!las!tecnologías!que!se!van!a!usar!en!cada!parte.!

!!

Diagrama'4.1'

'

'

'

Page 39: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 35!

4.2.+ Detalles+sobre+implementación+

Este! proyecto! engloba! una! gran! cantidad! de! tecnologías.! Que! todas! ellas!

trabajen!juntas!no!es!una!tarea!sencilla.!

A! nivel! hardware,! la! Rapsberry! Pi! se! ha! configurado! de! tal!modo! que! todo!

funciona!mientras! las!esta!no! interceda.!De!esta! forma,!si! la!Raspberry!Pi!deja!de!

funcionar,!el!vehículo!podría!ser!utilizado!sin!problemas.!

A!nivel!software,!hay!dos!tecnologías!que!se!repiten,!REST!y!Sockets.!Ambas!

se!utilizan!para!la!comunicación!entre!las!aplicaciones.!En!general!se!utilizan!DTOs!

para! la! transferencia! de! datos,!mapeando! los! objetos! correspondientes,! nunca! se!

persisten!objetos!tal!cual!se!reciben.!Otro!apunte!a!tener!en!cuenta!es!que!todos!los!

ids! son! autogenerados! desde! el! sistema,! utilizando! como! prefijo! el! objeto! que! lo!

contiene.!!

Vamos!a!enumerar!gran!parte!de!las!tecnologías!utilizadas,!explicando!por!qué!

se!han!elegido:!

H! Java[4]:!!

o! BackHend.!Se!ha!utilizado!el!framework!Spring!para!la!lógica!de!negocio.!

En!la!capa!de!presentación!se!utiliza!el!paquete!Jersey!de!Spring!para!

generar! un! API! Rest.! Utilizar! una! tecnología! tan!madura! como! Java!

como! base! de! nuestra! aplicación! nos! aporta! una! robustez! que! no!

podemos!encontrar!en!otras!tecnologías.!

o! FrontHend.! Se! ha! desarrollado! la! aplicación! para! la! empresa! que!

administrará!sus!vehículos!utilizando!Servelts,!JSP,!etc!para!desarrollar!

una!aplicación!web!MVC.!Utilizar!Java!en!este!cliente!ha!sido!más!una!

elección!para!diversificar!las!tecnologías!y!demostrar!que!la!integración!

se!puede!realizar!sin!problemas!que!por!cualquier!otro!motivo.!

H! MySQL:!!

o! Se! ha! utilizado! para! almacenar! la! información! utilizando! el! ORM!

Hibernate.!Es!una!de! las!bases!de!datos! relacionales!más!utilizadas.!

Existen!drivers!para!casi!todos!los!ORM!de!este!sistema!de!gestión!de!

bases!de!datos.!

Page 40: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 36!

!

H! Javascript:!!

o! BackHend.! Se! ha! implementado! un!miniHframework!MVC[5]! utilizando!

Express.js!y!Socket.io!sobre!un!servidor!Node.js.!Usar!esta!tecnología!

para!gestionar! todo!el!sistema!en!tiempo!real!hace!que!todo!funcione!

infinitamente!más!rápido.!

o! FrontHend.!Se!ha!utilizado!en!todos!los!clientes!web!para!gestionar!las!

funcionalidades! en! tiempo! real! utilizando! Socket.io.! Además,! la!

aplicación! para! el! vehículo! seguirá! la! metodología! Single! Page! y!

utilizaremos!Backbone[8]! para! crear! una! aplicación!web!MV*.!Utilizar!

Backbone! simplifica! enormemente! el! manejo! del! DOM! y,m! unido! a!

socket,!se!convierten!en!una!mezcla!realmente!eficiente.!

!

H! Python:!!

o! Se!implementarán!sockets!para!la!comunicación!entre!la!Raspberry!Pi!y!

el!servidor!en!Node.js.!Además!se!controlará!la!entrada!y!salida!de!la!

Raspberry!mediante!la!biblioteca!en!GPIO!desarrollada!en!Python.!De!

igual!modo,!se!utilizará!la!biblioteca!para!GPS.!Que!la!biblioteca!GPIO!

para! la!Raspberry!esté!escrita!en!Python!condiciona!enormemente! la!

tecnología!a!utilizar.!Implementar!la!conexión!con!sockets.io!se!ha!vuelto!

una!tarea!compleja.!

!

! !

Page 41: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 37!

5.+ CONCLUSIÓN+

Una!vez!implementado!el!sistema,!realizar!una!restrospectiva!del!proceso!nos!

ayudará!a!mejorar!en!próximos!desarrollos.!

5.1.+ Retrospectiva+

La! primera! preguna! que! nos! podemos! hacer! es,! ¿se! han! cumplido! los!

objetivos?!Completamente.!Los!cuatro!puntos!marcados!como!objetos!al!inicio!de!este!

documento! se! han! completado! en! mayor! o! menor! medida.! Quizá,! la! parte! mas!

compleja!ha!sido!definir,!planificar!y!diseñar!un!sistema!del!que!desde!un!principio!no!

se!tenía!claro!como!iba!a!evolucionar.!Intentar!limitar!el!alcance!y!definir!un!diseño!

antes!de!la!implementación!ha!hecho!que!alguna!parte!no!corresponda!con!la!realidad.!

Además,!un!sistema!tan!complejo!como!este,!hace!que!los!diagramas!tenga!que!ser!

simplificados.!

Una!vez!implementado!el!sistema,!en!general,!la!elección!de!las!tecnologías!ha!

sido! bastante! acertada.! La! combinación! de! nuevas! tecnologías! con! otras! muy!

maduras!da!como!resultado!aplicaciones!bastante!robustas.!Raspberry!Pi!a!aportado!

con! un! coste! bastante! bajo! una! parte! muy! importante! del! sistema,! el! control! de!

vehículos.! Por! el! contrario,! Java! no! termina! de! alcanzar! la! velocidad! que! otras!

tecnologías! proporcionan,! eso! sin! contar! que! uno! de! los! dolores! de! cabeza! más!

grandes!ha!sido!que!Tomcat!funcione!correctamente!(además!de!consumir!bastantes!

recursos).!!

Personalmente,! el! mayor! reto! ha! sido! hacer! que! tecnologías! muy! distintas!

funcionen!sincronizadas!por!un!objetivo!común.!Realmente!es!muy!enriquecedor!ver!

como!con!tu!esfuerzo!consigues!que!al!pulsar!un!botón!en!una!página!web,!puedas!

ser!capaces!de!parar!un!vehículo!que!puede!estar!circulando!a!miles!de!kilómetros.!A!

su!vez,!hace!que!el!desarrollo!tenga!una!complejidad!añadida,!mas!aún!si!cabe.!

En! definitiva,! ha! supuesto! un! buen! complemento! a! la! formación! adquirida!

durante!el!grado.!Javascript!y!Socket!no!han!sido!dos!tecnologías!que!se!toquen!de!

forma! avanzada! (al! menos! en! el! año! cursado).! Aún! así,! las! aplicaciones! webs! y!

empresariales!con!Java!me!han!sido!muy!útiles!y!han!quedado!bastante!afianzados!

Page 42: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 38!

después!de!enfrentarme!a!una!aplicación!de!esta!envergadura.!Utilizar!patrones!de!

diseño,! programaicón! orientada! a! objetos! y! metodologías! ágiles! ha! facilitado! la!

implementación!del!sistema!enormemente.!

5.2.+ Mejoras+y+trabajos+futuros+

Al!ser!un!prototipo!y!a!que!el!sistema!puede!crecer!casi!de!forma!infinita,!las!

mejoras!son!muchas.!Aún!así,!si!nos!centramos!en!refinar!el!prototipo!desarrollado!

podemos!acotar!la!lista.!

H! Evitar!recargar!la!página!siempre!que!sea!posible!es!una!característica!que!

aporta!velocidad.!La!experiencia!de!usuario!es!mucho!mejor.!!

H! Utilizar!Backbone!en!el!cliente!de!administración!para!la!empresa,!mejoraría!

la!gestión!del!DOM,!que!está!muy!relacionado!con!el!punto!anterior.!

H! Implementar!seguridad!en!las!comunicaciones.!

H! Mejorar!el!reinicio!de!la!Raspberry!Pi.!Iniciar!el!sistema!completo!hace!que!

sea!bastante!lento.!Añadirle!una!batería!nos!ahorraría!algunos!reinicios.!

H! Utilizar! una! pantalla! más! grande.! Supondrían! un! sobre! coste! pero! la!

experiencia!de!usuario!sería!mejor.!

H! Añadir! un! sistema!de! control! por! voz! intentando! que! el! conductor! no! se!

despiste!mientras!conduce.!

H! Añadir!un!sistema!que!detecte!de!forma!automática!accidente.!

H! Añadir!nuevos!sensores!y!actuadores!para!añadir!nuevas!funcionalidades!

con! los! vehículos,! como! avisar! si! el! vehículo! se! está! quedando! sin!

combustible!o!si!los!neumáticos!no!tienen!la!presión!adecuada.!

Hay!funcionalidades!que!directamente!no!se!han!implementado!por!no!tener!

demasiada!relevancia!en!el!ambito!en!el!que!queríamos!centrarnos.!Poder!editar!tu!

perfil!de!usuario,!mantener!un!historico!de!actividad!de!un!conductor!o!tener!un!panel!

principal! real! con! información! relevante,! son! características! que! podrían!

implementarse! en! futuros! desarrollos! ya! que! el! sistema! está! completamente!

preparado!para!afrontar!estas!mejoras.!

! !

Page 43: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 39!

6.+ BIBLIOGRAFÍA+

Libros+

[1]!Roger!S.!Pressman,! Ingeniería!del!software.!Un!enfoque!práctico.!7a!ed.!

Madrid:!McGrawHill/Interamericana!de!España,!2010!

[2]! W.! Wheeler! and! J.White,! Spring! in! Practice.! Safari,! 2012.! [Online].!

Disponible!en!Recursos!Electrónicos!de!la!Universidad!de!Jaén!

[3]!Ricardo!Puttini,!Cloud!Computing:!Concepts,!Technology!&!Architecture.!

Edition:!1st !

Texto+en+internet+

![4]!E.!Jendrok!et!al.!(Junio,!2013)!The!Java!EE!7!Tutorial.!Oracle.![Online]!

Disponible!en:!https://docs.oracle.com/javaee/7/tutorial/index.html!Acceso:!Jun.!

2015.!

[5]!Modelo!Vista!Controlador.!Wikipedia.![Online]!Disponible!en:!

http://es.wikipedia.org/wiki/Modelo%E2%80%93vista%E2%80%93controlador.!

Acceso:!!Jun,!2015.!

[6]!Internet!de!las!cosas.!Wikipedia.![Online]!Disponible!en:!

https://es.wikipedia.org/wiki/Internet_de_las_cosas!Acceso:!Jun,!2015.!

[7]!A!Financial!Engine!ShutHoff!Switch.!Freakonomics.![Online]!Disponible!en:!

http://freakonomics.com/2009/04/23/aHfinancialHengineHshutHoffHswitch/!Acceso:! ! Jun,!

2015.!

[8]!Backbone!Tutorial.!Backbone.![Online]!Disponible!en:!http://backbonejs.org/!!

Acceso:!!Jun,!2015.!

[9]!Learn!resources.!RaspberryPi.![Online]!Disponible!en:!

https://www.raspberrypi.org/resources/learn/!Acceso:!!Jun,!2015.!

!

Page 44: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 40!

[10]! Gastos! en! personal.! TuSalario.! [Online]! Disponible! en:!

http://www.tusalario.es/!Acceso:!!Jun,!2015.!

![11]! Estadísticas! de! vehículos.! DGT.! [Online]! Disponible! en:!

http://www.dgt.es/es/seguridadHvial/estadisticasHeHindicadores/parqueH

vehiculos/provHyHtiposHvehiculos/!Acceso:!!Jun,!2015.! !

Page 45: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 41!

!

+++++

++++++ APÉNDICE+I.+MANUAL+DE+INSTALACIÓN+DEL+SISTEMA.+

!

!

! !

Page 46: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 42!

Antes!de!comenzar!la!instalación,!necesitamos!una!máquina!para!utilizarla!de!

servidor.!Hemos!optado!por!una!maquina!virtual!en!Digital!Ocean,!un!servicio!IaaS,!

con!Ubuntu!15.04!x64!con!2Gb!de!ram!2!núcleos!y!40Gb!de!SSD.!El!sistema!ha!sido!

probado!en!máquinas!con!4!veces!menos!recursos!y!ha!funcionado!sin!problemas.!

Una!vez!instalado!el!sistema,!pasamos!a!realizar!la!configuración!de!la!zona!

horaria:!

cat /etc/timezone

!

! Si! obtenemos! 'Europe/Madrid'! todo! está! correcto,! si! no! es! así,! podemos!

configurarla!con!el!siguiente!comando.!

sudo dpkg-reconfigure tzdata

!

El!siguiente!paso!es!la!instalación!de!todos!los!servicios!necesarios.!

MySQL+

sudo apt-get install mysql-server mysql-client sudo mysql_install_db sudo mysql_secure_installation sudo mysql restart mysql -u root –p create database carcontol; !

!

!

!

!

Page 47: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 43!

Apache2+

Se! utiliza! Apache! como! servicor! principal,! haciendo! de! servidor! para! la!

aplicación!de!CarClient!y!de!proxy!para!el!resto.!

sudo apt-get install apache2 sudo vi /etc/apache2/sites-available/default sudo vi /etc/apache2/ports.conf (cambiar el puerto) sudo service apache2 restart sudo a2enmod proxy sudo a2enmod proxy_http sudo service apache2 restart

!

Configuramos!los!virtual!host!de!cada!una!de!las!aplicaciones:!

Proxy!Tomcat!

<VirtualHost *:80> ProxyRequests off ProxyPreserveHost on ServerName carcontrol-soft.tk ServerAlias www.carcontrol-soft.tk ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ ProxyPassReverseCookieDomain localhost carcontrol-soft.tk ProxyPreserveHost On ErrorLog ${APACHE_LOG_DIR}/tomcat-error.log CustomLog ${APACHE_LOG_DIR}/tomcat-access.log combined </VirtualHost> <VirtualHost *:80> ProxyRequests off ProxyPreserveHost on ServerName api.carcontrol-soft.tk ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ ProxyPassReverseCookieDomain localhost api.carcontrol-soft.tk ProxyPreserveHost On ErrorLog ${APACHE_LOG_DIR}/tomcat-error.log CustomLog ${APACHE_LOG_DIR}/tomcat-access.log combined </VirtualHost>

!

Page 48: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 44!

Proxy!Node!

<VirtualHost *:80> ServerName realtime.carcontrol-soft.tk ProxyRequests off ProxyPreserveHost on ProxyPass / http://localhost:3000/ ProxyPassReverse / http://localhost:3000/ ProxyPassReverseCookieDomain localhost realtime.carcontrol-soft.tk ProxyPreserveHost On ErrorLog ${APACHE_LOG_DIR}/node-error.log CustomLog ${APACHE_LOG_DIR}/node-access.log combined </VirtualHost>

!

CarClient!

<VirtualHost *:80> ServerName client.carcontrol-soft.tk DocumentRoot /var/www/carclient ErrorLog ${APACHE_LOG_DIR}/carclient-error.log CustomLog ${APACHE_LOG_DIR}/carclient-access.log combined </VirtualHost>

Tomcat8+

Hay!que!instalar!Java7,!uso!el!de!oracle!desde!el!repositorio!de!webupd8team:!

sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java7-installer java -version

!

Ahora!instalamos!Tomcat8!

sudo apt-get install tomcat8 sudo apt-get install tomcat8-admin

!

Page 49: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 45!

Ahora!en!/var/lib/tomcat8/conf/server.xml!hay!que!añadir!el!siguiente!fragmento!

de!código!para!añadir!los!host!dentro!de!tomcat:!

<Host name="carcontrol-soft.tk" appBase="webapps/adminclient"

autoDeploy="true"> <Alias>carcontrol-soft.tk</Alias> <Alias>www.carcontrol-soft.tk</Alias> <Context path="" docBase="${catalina.base}/webapps/adminclient"/> </Host> <Host name="api.carcontrol-soft.tk" appBase="webapps/coreservice"

autoDeploy="true"> <Alias>api.carcontrol-soft.tk</Alias> <Context path="" docBase="${catalina.base}/webapps/coreservice"/> </Host>

Instalo+Git+

Instalamos!git!y!lo!configuramos!para!clonar!el!repositorio:!

sudo apt-get install git sudo ssh-keygen cat id_rsa.pub git clone [email protected]:XXX

!

Instalar+Node.js,+NPM+y+Forever+

curl -sL https://deb.nodesource.com/setup | sudo bash - sudo apt-get install nodejs ln -s /usr/bin/nodejs /usr/bin/node sudo apt-get install npm sudo apt-get install build-essential sudo npm install forever --g

!

Con!esto,!ya!tenemos!todo!lo!necesario!instalado!en!nuestro!servidor.!

!

!

Page 50: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 46!

Ahora!vamos!a!describir!el!proceso!de!instalación!de!una!Raspberry!Pi.!

Lo!primero!es!descargar!el!sistema!operativo!Raspbian!con! los!drivers!de! la!

Piscreen!de!la!página!oficial!del!fabricante,!adafruit.!https://learn.adafruit.com/adafruitH

pitftH28HinchHresistiveHtouchscreenHdisplayHraspberryHpi!

Lo!siguiente!es!instalar!Raspbian!con!los!drivers!de!Piscreen!en!la!SD!desde!

Mac!OSx.!

diskutil list diskutil unmountDisk /dev/<disk# from diskutil> sudo dd bs=1m if=image.img of=/dev/<disk# from diskutil>

! !

! Es!el!momento!de!instalar!los!divers!GPIO!con!la!biblioteca!escrita!en!Python:!

diskutil wget ‘http://downloads.sourceforge.net/project/raspberry-gpio-

python/RPi.GPIO-0.5.11.tar.gz’ tar zxvf RPi.GPIO-0.5.11.tar.gz cd RPi.GPIO-0.5.11 sudo apt-get install python-dev sudo python setup.py install

!

Después!instalamos!el!cliente!en!Python!para!sockets!llamado!socketIOHclient:!

sudo apt-get install python-pip sudo pip install -U socketIO-client

!

Tenemos! que! configurar! el! sistema! operativo! para! que! al! arrancar! inicie!

Chromium!en!modo!kiosco:!

!

!

Page 51: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 47!

sudo apt-get update sudo apt-get dist-upgrade sudo apt-get install matchbox chromium x11-xserver-utils ttf-

mscorefonts-installer xwit sqlite3 libnss3 sudo reboot

!

Cuando!se!vuelva!a!iniciar,!configuramos!el!autologin:!

sudo nano /etc/inittab En!este!archivo!buscamos!la!línea:!

1:2345:respawn:/sbin/getty!115200!tty1!

y!la!sustituimos!por:!

1:2345:respawn:/bin/login!Hf!pi!tty1!</dev/tty1!>/dev/tty1!2>&1!

Acto!seguido,!añadimos!en!/etc/rc.local!

su -l pi -c startx !

A!continuación,!en!la!home,!creamos!un!archivo!llamado!.xinitrc!y!escribimos:!

#!/bin/sh killall -TERM chromium 2>/dev/null; killall -TERM matchbox-window-manager 2>/dev/null; sleep 2; killall -9 chromium 2>/dev/null; killall -9 matchbox-window-manager 2>/dev/null; xset -dpms xset s off xwit -root -warp $( cat /sys/module/*fb*/parameters/fbwidth ) $( cat

/sys/module/*fb*/parameters/fbheight ) matchbox-window-manager -use_titlebar no -use_cursor no & chromium --app=http://client.carcontrol-

soft.tk/?cr=gh2333&cif=b233344

Page 52: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 48!

Para!añadirle!un!toque!personalizado,!vamos!a!cambiar!el!splash!del!sistema!

por!le!logo!del!proyecto!(una!imagen!jpg!en!la!home):!

sudo apt-get install fbi sudo mv logotipo.jpg /etc/splash.jpg

!

Creamos!el!archivo!/etc/init.d/asplashscreen!y!escribimos:!

#! /bin/sh do_start () { /usr/bin/fbi -T 1 -noverbose -a /etc/splash.png exit 0 } case "$1" in start|"") do_start ;; restart|reload|force-reload) echo "Error: argument '$1' not supported" >&2 exit 3 ;; stop) # No-op ;; status) exit 0 ;; *) echo "Usage: asplashscreen [start|stop]" >&2 exit 3 ;; esac :

!

Por!último,!para!asignarlo!al!inicio!ejecutamos:!

sudo chmod a+x /etc/init.d/asplashscreen sudo insserv /etc/init.d/asplashscreen

! +

Page 53: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 49!

+

+

+!

APÉNDICE+II.+DESCRIPCIÓN+DE+CONTENIDOS+SUMINISTRADOS.+

!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

! !

Page 54: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 50!

INTRODUCCIÓN+

En!este!apartado!vamos!a!explicar!de!que!tratan!cada!uno!de!los!contenidos!

suministrados!para!facilitar!su!comprensión.!!

CONTENIDO+SUMINISTRADO+

Se! han! entregará! un! CD! con! las! diferentes! carpetas! y! archivos! que!

describiremos!a!continuación:!

H! Memoria:!Es!el!documento!en!el!que!nos!encontramos.!Es!una!de!las!partes!

clave!para!entender!el!desarrollo!del!proyecto,!el!pensamiento!del!alumno!y!

el!procedimiento!que!este!ha!seguido!a!la!hora!de!realizarlo.!Es!explicado!

paso!a!paso,!con!imágenes,!tablas!y!diagramas!de!referencia!para!que!todo!

sea!mucho!más!visual!y!comprensible.!

H! Codigo!fuente:!Es!la!implementación!del!sistema.!Contiene!cada!una!de!las!

aplicaciones!descritas!y!todo!lo!necesario!para!su!despliegue!en!un!servidor!

(clases,! scripts,! bibliotecas! necesarias,! dependencias! de! paquetes,!

ejecutables,!etc.)!

H! Contenidos!auxiliares:!Es!una!carpeta!que!contiene!todas!las!imágenes!y!

los!diagramas!que!han!sido! incluidos!en! la!memoria.!Debido!al! tamaño!y!

dificulta! de! estos,! es! posible! que! no! se! vean! correctamente! en! este!

documento,!ya!que!se!ha!tenido!que!reducir!el!tamaño!para!su!exposición,!

sin!dejar!de!cumplir!la!normativa!del!formato.!Para!solventar!este!problema!

y!poder!consultarlo!de!forma!cómoda,!se!incluyen!los!originales!a!un!mayor!

tamaño.!

!

!

!

!

! !

Page 55: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 51!

+

+

+

+

APÉNDICE+III.+ACCESO+A+INSTALACIÓN+DE+PRUEBAS.+

!

! !

Page 56: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 52!

Se!ha!realizado!un!despliegue!de!todas!las!aplicaciones!siguiendo!el!manual!

de!instalación!descrito!en!el!apartado!anterior.!Se!ha!utilizado!una!máquina!virtual!en!

Digital!Ocean!con!2Gb!de!ram!2!núcleos!y!40Gb!de!SSD.!Se!ha! instalado!Ubuntu!

15.04! x64! como! sistema! operativo! de! la! máquina.! Además,! se! ha! registrado! un!

dominio!.tk!en!freenom.com.!

Los!datos!de!conexión!para!el!servidor!son!los!indicados!en!la!tabla!AI.1.!

Tipo! Contenido!

Ip! 188.166.64.54!

Apache! 188.166.64.54:80!

Tomcat! 188.166.64.54:8080!

Nodejs! 188.166.64.54:3000!

Tabla'AI.1.!

Para!establecer!una!conexión!con!el!servidor!utilizamos!el!protocolo!Secure!

Shell!(SSH)!utilizando!el!usuario!root!escribiendo!el!siguiente!comando:!

ssh [email protected]

La'contraseña'de'acceso'sera'omitida'por'seguridad.'

'

Se!ha! configurado! el! dominio! carcontrolHsoft.tk! para! acceder! a! la! aplicación!

AdminClient.! Además! se! han! configurado! subdominios! para! el! acceso! al! resto! de!

aplicaciones:!!

H! Para!acceder!a!CoreService:!api.carcontrolHsoft.tk!

H! Para!acceder!a!CoreRealtime:!realtime.carcontrolHsoft.tk!

H! Para!acceder!a!CarClient:!client.carcontrolHsoft.tk!

Page 57: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 53!

Esta!configuración!se!ha!realizado!para!facilitar!el!acceso!a!cada!una!de!las!

aplicaciones!y!no!usar!la!ip,!el!puerto!y!el!contexto!de!cada!aplicación!en!cada!servidor.!

Se! han! creado! datos! de! ejemplo! para! poder! utilizar! las! funcionalidades! sin!

necesidad!de!introducir!datos.!

Se!ha!habilitado!un!usuario!de!pruebas!con!los!siguientes!datos:!

H! Usuario:!“b233344”!

H! Contraseña:!“123456”!(se!ha!omitido!la!comprobación!de!la!contraseña!

para!facilitar!el!acceso)!

! !

Page 58: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 54!

+!

!

!

!

!

!

APÉNDICE+IV.+MANUAL+DE+USUARIO.+

!

! !

Page 59: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 55!

AdminClient+

Al!entrar!en!carcontrolHsoft.tk,!lo!primero!que!tenemos!que!hacer!es!introducir!

nuestros!datos,!usuario!y!contraseña.!Después!pulsamos!en!entrar.!

!

! !

Una!vez!dentro!de!la!aplicación!podemos!ver!el!listado!de!vehículos.!Debemos!

hacer!click!en!la!opcion!de!menú!“vehículos”!y!en!la!opción!“listado!de!vehículos”.!Nos!

aparecerá!una!página!como!la!siguiente:!

!

!

Page 60: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 56!

Desde! este! listado,! podemos! seleccionar! un! vehículo! para! consular! su!

información.!Podemos!hacer!click!en!el!simbolo!del!ojo!o!directamente!en!la!fila.!Al!

entrar!a!un!vehículo!veremos!una!página!similar!a:!

!

En!esta!página!podremos!consultar!la!velocidad,!la!posición,!las!ultimas!rutas,!

información!general,! etc.!Además,!podemos!detener!el! vehículo!pulsando!el! boton!

“Bloquear!el!vehículo”.!Al!pulsarlo!nos!aparecerá!un!mesjase:!

!

Al!pulsar!en!sí,!el!vehículo!recibirá!una!señal!para!que!se!detenga.!

Page 61: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 57!

Además! de! estas! funcionalidades,! los! vehículos! se! pueden! crear,! editar! y!

eliminar.! Si! volvemos! al! menu! y! pulsamos! en! “conductores”! y! a! continuación! en!

“listado!de!conductores”!nos!aparecerá!una!página!como!la!siguiente:!

!

Si! hacemos! click! en! cualquiera! de! ellos,! entramos! a! una! página! en! la! que!

podemos!ver!la!información!de!ese!conductor.!

!

!

Page 62: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 58!

Si!volvemos!al!menú!y!hacemos!click!en!“chat”,!nos!aparecerá!un!listado!de!

vehículos!con!los!que!poder!hablar.!Si!seleccionamos!un!vehículo,!nos!aparecera!un!

chat!como!el!siguiente:!

!

Por!último,!si!volvemos!al!menú,!selecionamos!“Alertas”!y!a!continuación!un!

vehículo,!podremos!ver!las!distintas!alertas!que!se!han!producido!en!un!vehículo.!

!

! !

Page 63: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 59!

CarClient+

En!cada!vehículo,!se!ha!incrustado!una!aplicación.!Al!encender!el!vehículo,!nos!

aparece!un!reloj.!!

!

Al! tocar! la! pantalla,! nos! aparece! la! página! de! chat.! Podemos! hablar!

directamente!con!nuestra!empresa.!

!

Page 64: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 60!

En! el! menú! de! la! izquierda! tenemos! la! opción! de! alertas! (simbolo! de! la!

campana),!donde!podremos!ver!cada!una!de!las!alertas!que!se!han!producido!en!el!

vehículo.!

!

Por!último,!podemos!enviar!una!señal!SOS!a!nuestra!empresa.!Simplemente!

tenemos! que! pulsar! sobre! el! botón! SOS! y! nos! aparecerá! un! mensaje! como! el!

siguiente:!

!

Page 65: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 61!

Si!no!pulsamos!cancelar,!la!alerta!se!enviará!automáticamente.!

Para!volver!al!reloj,!solo!tenemos!que!pulsar!sobre!el!botón!del!reloj!en!el!menú!

o!esperar!20!segundo!sin!tocar!la!pantalla.!

+ +

Page 66: CARCONTROL(SOFTtauja.ujaen.es/bitstream/10953.1/4225/1/TFG_Moya_Reyes, Raúl.pdf · Raúl!Moya!Reyes! ! CarControlHSoft! Escuela!Politécnica!Superior!de!Jaén! ! 2! 1.2.+Objetivos+

Raúl!Moya!Reyes! ! CarControlHSoft!

Escuela!Politécnica!Superior!de!Jaén! ! 62!

+