scieee Open visual document viewer

Mainvest: Aplicación para la gestión de inversiones con elementos sociales y predicción financiera

Jiménez Nieto, Jaime

Abstract

El presente Trabajo de Fin de Grado (TFG) tiene como objetivo principal proporcionar una herramienta para la gestión de inversiones en el mercado financiero. La aplicación, denominada "Mainvest", permite a los usuarios registrados interactuar entre sí para formar una comunidad que facilite el aprendizaje colectivo sobre las dinámicas del mercado. Los usuarios pueden acceder a datos financieros de distintos activos y comunicarse a través de una sección de interacción social, donde pueden compartir mensajes, comentarios y me gusta. La aplicación web está respaldada por una base de datos que se actualiza a medida que los usuarios la utilizan, lo que permite que el sistema evolucione con el tiempo y se adapte a las necesidades de la comunidad inversora.

Full text

MAINVEST: APLICACIÓN PARA LA GESTIÓN DE INVERSIONES CON ELEMENTOS SOCIALES Y PREDICCIÓN FINANCIERA TRABAJO FIN DE GRADO CURSO 2023-2024 JAIME JIMÉNEZ NIETO DIRECTOR ANTONIO SARASA CABEZUELO GRADO EN INGENIERÍA DEL SOFTWARE FACULTAD DE INFORMÁTICA UNIVERSIDAD COMPLUTENSE DE MADRID Junio – 2024 2 DEDICATORIA A odos mis se es que idos, que hicie on has a lo imposible pa a consegui lo. 3 AGRADECIMIENTOS Me gus a ía ag adece a mi u o , po la opo unidad de ealiza es e abajo a pa e de pode desa olla las ideas que enía en la cabeza y plasma las en el p oyec o. También me gus a ía ag adece a mi amilia y amigos, po odo el apoyo ecibido a lo la go de mi ca e a. Sin ellos no es a ía esc ibiendo es o. 4 Índice Gene al DEDICATORIA 2 AGRADECIMIENTOS 3 RESUMEN 16 Capí ulo 1. In oducción 17 1.1 Mo i ación 17 1.2 Es uc u a de la memo ia 18 Capí ulo 1. In oducción 18 Capí ulo 2: Es ado del A e 18 Capí ulo 3: Tecnología empleada 18 Capi ulo 4: A qui ec u a de la Aplicación y Modelo de Da os 19 Capí ulo 5: Implemen ación y diseño de la aplicación 19 Capí ulo 6: Conclusiones y T abajo Fu u o 19 Anexo A: Especificación de equisi os 19 Anexo B: Guía de uso 19 1.3 Obje i os 19 1.4 Plan de abajo 20 Hi o 1. Especificación de Requisi os 21 Hi o 2. Cuen as de Usua io 21 Hi o 3. Ges ión de ca e as 22 Hi o 4. Me cados 22 Hi o 5. Ale as 23 Hi o 6. In e acción con usua ios 23 Chap e 1. In oduc ion 24 1.1 Mo i a ion 24 1.2 S uc u e o he Documen 25 Chap e 1: In oduc ion 25 Chap e 2: S a e o he A 25 Chap e 3: Technology Used 25 Chap e 4: Applica ion A chi ec u e and Da a Model 25 Chap e 5: Implemen a ion and Applica ion Design 26 5 Chap e 6: Conclusions and Fu u e Wo k 26 Appendix A: Requi emen s Specifica ion 26 Appendix B: Use Guide 26 1.3 Objec i es 26 1.4 Wo k Plan 27 Miles one 1: Requi emen s Specifica ion 27 Miles one 2: Use Accoun s 28 Miles one 3: Po olio Managemen 28 Miles one 4: Ma ke s 28 Miles one 5: No ifica ions 29 Miles one 6: Use In e ac ion 29 Capí ulo 2. Es ado del a e 30 2.1 Binance 30 2.2 Twi e 30 Capí ulo 3. Tecnología empleada 31 3.1 HTML5 31 3.2 SCSS 31 3.3 Boo s ap 5 31 3.4 Tailwind CSS 32 3.5 Angula 32 3.6 Typesc ip 32 3.7 Pos g eSQL 32 3.8 DBea e 33 3.9 Docke 33 3.10 Visual S udio Code 33 3.11 Pos man 33 3.12 Ligh weigh - Cha s 34 3.13 Yahoo Finance API 34 3.14 Can a 34 6 3.14 Gi hub 34 Capí ulo 4: A qui ec u a de la Aplicación y Modelo de Da os 36 4.1 A qui ec u a de la Aplicación 36 4.2 Es uc u a de la base de da os 38 4.2.1 Tabla use s 39 4.2.2 Tabla ale s 40 4.2.3 Tabla asse s 40 4.2.4 Tabla no ifica ions 41 4.2.5 Tabla pos s 41 4.2.6 Tabla eplies 41 4.2.7 Tabla social 42 4.2.8 Tabla use s_likes 42 4.2.9 Tabla walle s 43 4.2.10 Tabla walle s_asse s 43 Capí ulo 5. Implemen ación y diseño de la aplicación 44 5.1 Diseño de la aplicación 44 5.2 Implemen ación de la Aplicación Web 45 5.2.1 Sección de Usua io No Regis ado 45 Regis o de cuen a 45 6.2.2 Sección de Usua io Regis ado 47 Inicio de sesión 48 C eación de ca e a 49 Mos a ca e as 51 Modifica ca e as 52 Busca ca e a 53 Elimina ca e a 54 Modifica da os de cuen a 55 Elimina usua io 57 Mos a publicaciones 58 Mos a me gus a 59 Mos a usua ios siguiendo 61 Ve ac i os disponibles 62 Mos a in o mación de un ac i o 62 Mos a p edicción 63 7 Mos a publicaciones 64 En ia publicación 66 Responde a una publicación 67 Añadi una ale a 68 Busca usua ios / ac i os 69 Mos a / elimina no ificaciones de me gus a 69 Mos a / elimina no ificaciones de comen a ios 71 Ce a sesión de la cuen a 72 Capí ulo 7. Conclusiones y T abajo Fu u o 74 7.1 Conclusiones 74 7.2 T abajo Fu u o 74 Chap e 7. Conclusions and Fu u e Wo k 76 7.1 Conclusions 76 7.2 Fu u e Wo k 76 Bibliog a ía 78 Anexo A. Especificación de Requisi os 79 A.1 Ac o es 79 A.2 Diag amas de casos de uso 79 A.2.1. Diag ama de usua io egis ado 79 A.2.2. Diag ama de usua io no egis ado 80 A.3 Módulo de cuen as de Usua io 81 A.4 Módulo de ges ión de ca e as 96 A.5 Módulo de me cado 108 A.5 Módulo de no ificaciones 122 A.6 Módulo de In e acción con Usua io 133 Anexo B. Guía de Uso 154 B.1 Usua io egis ado 154 B.1.1 Vis a p incipal de usua io egis ado 154 B.1.2 Sección de me cado 155 B.1.2.1 Pan alla p incipal de ac i o 155 B.1.2.2 Ope a con el ac i o 158 8 B.1.2.2 Añadi ale a 162 B.1.2.3 Mos a p edicción 162 B.1.3 Sección social 162 B.1.3.1 Vis a p incipal del Tablón 163 B.1.3.2 Añadi nue a publicación 165 B.1.3.3 In e ac ua con la publicación 166 B.1.3.4 Responde publicación 167 B.1.3.5 Ve publicación 167 B.1.4 Sección de pe fil 168 B.1.4.1 Pan alla social 169 B.1.4.1.1 Pan alla Siguiendo 170 B.1.4.1.2 Pan alla Seguido es 170 B.1.4.2 Pan alla de Publicaciones 171 B.1.4.3 Pan alla de Me gus a 172 B.1.4.4 Pan alla de Ca e as 173 B.1.4.4.1 Busca ca e a 173 B.1.4.4.2 Elimina ca e a 174 B.1.4.5 Pan alla de nue a ca e a 174 B.1.4.6 Pan alla de ajus es 175 B.1.5 No ificaciones 177 B.1.5.1 No ificaciones de p ecios 178 B.1.5.1 No ificaciones de me gus a 178 B.1.5.1 No ificaciones de comen a ios 180 9 Índice Tablas Tabla 1.1 C onog ama y e apas cla e 21 Table 1.1 Schedule and Key S ages 27 Tabla 4.1 Diag ama En idad – Relación de las Tablas 39 Tabla 4.2. Tabla de usua ios 39 Tabla 4.3. Tabla de ale as 40 Tabla 4.4. Tabla de ac i os 40 Tabla 4.5. Tabla de no ificaciones 41 Tabla 4.6. Tabla de publicaciones 41 Tabla 4.7. Tabla de espues as 42 Tabla 4.8. Tabla de social 42 Tabla 4.9. Tabla in e media de usua ios y me gus a 43 Tabla 4.10. Tabla de ca e as 43 Tabla 4.11. Tabla in e media de ca e as y ac i os 43 A.1.1 Tabla de Regis a usua io 84 A.1.2 Tabla de ce a sesión 86 A.1.3 Tabla de inicia sesión 89 A.1.4 Tabla de Elimina cuen a 91 A1.5 Tabla de modifica usua io 94 A.1.6 Tabla de mos a pe fil de usua io 96 A.2.1 Tabla de c ea ca e a 99 A.2.2 Tabla de elimina ca e a 100 16 RESUMEN El p esen e T abajo de Fin de G ado (TFG) iene como obje i o p incipal p opo ciona una he amien a pa a la ges ión de in e siones en el me cado inancie o. La aplicación, denominada "Main es ", pe mi e a los usua ios egis ados in e ac ua en e sí pa a o ma una comunidad que acili e el ap endizaje colec i o sob e las dinámicas del me cado. Los usua ios pueden accede a da os inancie os de dis in os ac i os y comunica se a a és de una sección de in e acción social, donde pueden compa i mensajes, comen a ios y me gus a. La aplicación web es á espaldada po una base de da os que se ac ualiza a medida que los usua ios la u ilizan, lo que pe mi e que el sis ema e olucione con el iempo y se adap e a las necesidades de la comunidad in e so a. 17 Capí ulo 1. In oducción Es e abajo de in de g ado (TFG) consis e en la ealización de una aplicación web donde los usua ios, an e io men e egis ados, pueden hace uso de los se icios que o ece la aplicación, desde la ges ión de in e siones ealizadas en los di e en es ac i os inancie os p esen es has a la in e acción con o os usua ios. 1.1 Mo i ación En la ac ualidad, el me cado inancie o ep esen a un desa ío complejo en el que los in e so es han de oma decisiones in o madas y es a égicas pa a alcanza los obje i os plan eados. Muchos in e so es ca ecen del conocimien o necesa io pa a comp ende las dinámicas del me cado, lo que en la mayo ía de las ocasiones p o ocan decisiones mal in o madas y esul ados poco a o ables. El p oblema que se quie e esol e con es e p oyec o es la al a de accesibilidad y comp ensión en el ámbi o inancie o. La mayo ía de las aplicaciones inancie as pa en de la idea del conocimien o básico, que no nulo, del in e so y dejan de lado a odo usua io cuyo p opósi o es aden a se en el mundo inancie o. Además, exis e una escasez de he amien as que pe mi an al usua io expe imen a con el me cado sin ningún ipo de consecuencia. La p incipal di icul ad adica en c ea una pla a o ma, an o educa i a como a ac i a pa a el usau io. La aplicación iene que se capaz de p opo ciona a los usua ios in o mación e dade a pa a que, aunque no enga consecuencia, sus acciones se ean in oluc adas po hechos eales. Po ello, la aplicación equie e de he amien as de p edicción y analí icas que ayuden a los usua ios a en ende de una mejo mane a el impac o de sus acciones de in e sión. O o desa ío a ene en cuen a es acili a la in e acción social con los usua ios, ya que la colabo ación y el in e cambio de conocimien os son undamen ales pa a el ap endizaje inancie o. Po ello, es necesa io que la pla a o ma disponga de una sección donde los usua ios in e ac úen e in e cambien las es a egias que es án siguiendo pa a ob ene esul ados a o ables. 18 Po an o, el obje i o de es e p oyec o es p opo ciona una pla a o ma segu a, donde el usua io pueda ealiza in e siones ic icias en el me cado inancie o eal e in e ac ua con los dis in os usua ios pa a que compa an in o mación, opiniones y es a egias a segui con el in de amplia sus conocimien os en es e ámbi o. 1.2 Es uc u a de la memo ia El documen o se di ide en a ios capí ulos cla amen e de inidos, cada uno aba cando di e en es aspec os del p oyec o, desde la mo i ación has a el plan de abajo y la implemen ación. A con inuación, se desc ibe b e emen e el con enido de cada capí ulo: Capí ulo 1. In oducción Es e capí ulo se cen a en la explicación del p oyec o, di idiendo el mismo en a ios apa ados: mo i ación, es uc u a, obje i os y plan de abajo. En el apa ado de mo i ación se exponen los p oblemas a esol e en el ámbi o de las in e siones inancie as, des acando la al a de he amien as educa i as adecuadas y la necesidad de un en o no segu o pa a la expe imen ación. La es uc u a del documen o p esen a de mane a cla a los obje i os de la pla a o ma y el plan de abajo desa ollado du an e el p oyec o. Capí ulo 2: Es ado del A e En es e capí ulo se desc ibi án las pla a o mas que han se ido de ejemplo a la ho a de desa olla la aplicación. Capí ulo 3: Tecnología empleada En el e ce capí ulo se de allan las di e en es ecnologías que se han u ilizado a la ho a de desa olla el p oyec o 19 Capi ulo 4: A qui ec u a de la Aplicación y Modelo de Da os Es e capí ulo desc ibe la a qui ec u a u ilizada pa a la implemen ación de la aplicación y p opo ciona de alles sob e el modelo de da os y las ablas de la base de da os. Capí ulo 5: Implemen ación y diseño de la aplicación Se de alla el diseño que se ha que ido desa olla pa a la aplicación además de la implemen ación de las di e en es uncionalidades o ganizadas en módulos. Capí ulo 6: Conclusiones y T abajo Fu u o El úl imo capí ulo desc ibe las conclusiones del p oyec o, así como el abajo que se quie e ealiza en un u u o. Anexo A: Especi icación de equisi os El p ime anexo de la memo ia desc ibe los di e en es ac o es que se han enido en cuen a a la ho a de desa olla el p oyec o. Además, se ealiza una desc ipción de los casos de uso que se han implemen ado, o ganizados po módulos. Anexo B: Guía de uso Se p opo ciona un manual de usua io. 1.3 Obje i os El obje i o p incipal de es e TFG es desa olla una aplicación web que pe mi a a los usua ios ges iona in e siones ic icias mien as in e ac úan con o os usua ios a a és de una sección social in eg ada. Los obje i os especí icos son los siguien es: • Análisis del Me cado Financie o: O ece a los usua ios da os de allados sob e di e en es ac i os inancie os y su e olución a lo la go del iempo. 20 • Diseño de la Aplicación Web: C ea una in e az in ui i a y a ac i a que acili e la expe iencia del usua io y b inde odas las uncionalidades espe adas. • Implemen ación de Ca ac e ís icas Cla e: Inclui uncionalidades como la in e acción social, la c eación de ca e as de in e sión y la capacidad de comen a y eacciona a publicaciones. • Segu idad y P o ección de Da os: Ga an iza la segu idad de la in o mación pe sonal y inancie a de los usua ios egis ados en la aplicación. 1.4 Plan de abajo Es a sección de alla el plan de abajo seguido pa a el desa ollo del p oyec o, incluyendo los p incipales hi os y las echas es imadas pa a su cumplimien o. La Tabla 1.1 mues a el c onog ama del p oyec o y las e apas cla e que pe mi ie on log a los obje i os p opues os. 21 Hi o Du ación Especi icación de Requisi os 11 sep iemb e – 27 sep iemb e Cuen as de Usua io 27 sep iemb e – 8 oc ub e Ges ión de Ca e as 8 oc ub e – 2 diciemb e Me cados 4 diciemb e - 7 eb e o No i icaciones 7 eb e o - 27 eb e o In e acción con Usua ios 27 eb e o – 16 ab il Tabla 1.1 C onog ama y e apas cla e Se de alla el con enido de cada uno de los hi os desa ollados en es e p oyec o: Hi o 1. Especi icación de Requisi os El p ime hi o consis ió en ealiza el documen o donde se de inían las di e en es uncionalidades que debía de ene la aplicación. Se lle o a cabo una eunión con el u o pa a discu i ace ca de es o y se in e cambia on a ios co eos pa a ene cla o las ca ac e ís icas de la aplicación. Hi o 2. Cuen as de Usua io En la segunda e apa se implemen ó las uncionalidades necesa ias pa a que un usua io pudie a accede a la aplicación, además de pode modi ica algunos da os de su ecién ing esada cuen a. En es a ase se desa olló: • Regis o de usua io. • Login • Logou 22 • Modi icación de da os de usua io. • Mos a usua io • Eliminación del usua io. Hi o 3. Ges ión de ca e as En es a segunda ase se lle ó a cabo la implemen ación de los mo imien os que puede hace el usua io con las ca e as. Se desa olló odo el código necesa io pa a que la ges ión del usua io con sus ca e as ue a o al. • C ea ca e a • Mos a ca e a • Elimina ca e a • Busca ca e a • Modi ica ca e a Hi o 4. Me cados Es e hi o se cen ó en p esen a a los usua ios las di e sas uncionalidades disponibles en la aplicación en elación con el me cado inancie o. Los usua ios pueden e un lis ado de odos los ac i os inancie os incluidos en la aplicación y ealiza búsquedas pa a encon a ac i os especí icos. Una ez localizado el ac i o de in e és, el usua io puede ob ene in o mación ele an e, como p ecios, endencias y da os his ó icos. Además, la aplicación pe mi e comp a y ende acciones de los ac i os inancie os, b indando a los usua ios la posibilidad de ges iona sus in e siones de mane a sencilla. También se incluye una uncionalidad pa a mos a las p edicciones elacionadas con el endimien o u u o de cada ac i o, acili ando así la oma de decisiones in o madas. 23 Hi o 5. Ale as Es a ase se cen ó en la e oalimen ación que end á el usua io ealizando di e en es acciones. En conc e o se desa olla on las siguien es uncionalidades: • Ve no i icación • Elimina no i icación • Lis a no i icaciones • Añadi ale a • Elimina ale a Hi o 6. In e acción con usua ios La ase inal del desa ollo consis ió en implemen a el componen e social de la aplicación. Se decidió inclui es a uncionalidad pa a que los usua ios pudie an compa i sus expe iencias y opiniones sob e di e sos emas inancie os. Aho a, cada usua io puede segui o deja de segui a o os usua ios, busca pe sonas den o de la aplicación, y en ia publicaciones que e lejen sus pensamien os o expe iencias. Además, los usua ios pueden in e ac ua con las publicaciones de o os, ma cándolas con un "me gus a" o espondiendo con un comen a io. Todo es o se ealiza en la sección del ablón, donde se mues an las publicaciones an o de los usua ios que se siguen como de o os usua ios egis ados al aza . Es a uncionalidad social pe mi e a los usua ios no solo ges iona sus in e siones, sino ambién conec a se con o os in e esados en el mundo inancie o, c eando una comunidad más dinámica y colabo a i a. 24 Chap e 1. In oduc ion This bachelo 's hesis (TFG) consis s o de eloping a web applica ion whe e p e iously egis e ed use s can u ilize he se ices o e ed by he applica ion, anging om managing in es men s made in di e en inancial asse s o in e ac ing wi h o he use s. 1.1 Mo i a ion Cu en ly, he inancial ma ke poses a complex challenge whe e in es o s mus make in o med and s a egic decisions o achie e hei goals. Many in es o s lack he necessa y knowledge o unde s and ma ke dynamics, o en leading o unin o med decisions and un a o able ou comes. The p oblem his p ojec aims o add ess is he lack o accessibili y and unde s anding in he inancial domain. Mos inancial applica ions assume a basic le el o in es o knowledge and o e look use s who seek o del e in o he inancial wo ld. Addi ionally, he e is a sca ci y o ools ha allow use s o expe imen wi h he ma ke wi hou consequences. The main challenge lies in c ea ing a pla o m ha is bo h educa ional and engaging o use s. The applica ion mus p o ide use s wi h au hen ic in o ma ion so ha , e en hough he e a e no eal consequences, hei ac ions a e in luenced by eal e en s. The e o e, he applica ion equi es p edic ion and analy ics ools o help use s be e unde s and he impac o hei in es men ac ions. Ano he challenge is acili a ing social in e ac ion among use s, as collabo a ion and knowledge sha ing a e undamen al o inancial lea ning. Thus, he pla o m needs a sec ion whe e use s can in e ac and exchange s a egies o achie e a o able esul s. The e o e, he objec i e o his p ojec is o p o ide a secu e pla o m whe e use s can make ic i ious in es men s in he eal inancial ma ke and in e ac wi h o he use s o sha e in o ma ion, opinions, and s a egies o expand hei knowledge in his ield. 25 1.2 S uc u e o he Documen The documen is di ided in o se e al clea ly de ined chap e s, each co e ing di e en aspec s o he p ojec , om mo i a ion o he wo k plan and implemen a ion. The ollowing b ie ly desc ibes he con en o each chap e : Chap e 1: In oduc ion This chap e ocuses on explaining he p ojec , di iding i in o se e al sec ions: mo i a ion, s uc u e, objec i es, and wo k plan. The mo i a ion sec ion p esen s he p oblems o be add essed in he ield o inancial in es men s, highligh ing he lack o adequa e educa ional ools and he need o a sa e en i onmen o expe imen a ion. The documen 's s uc u e clea ly p esen s he pla o m's objec i es and he wo k plan de eloped du ing he p ojec . Chap e 2: S a e o he A This chap e desc ibes he pla o ms ha se ed as examples in de eloping he applica ion. Chap e 3: Technology Used The hi d chap e de ails he di e en echnologies used in de eloping he p ojec . Chap e 4: Applica ion A chi ec u e and Da a Model This chap e desc ibes he a chi ec u e used o implemen ing he applica ion and p o ides de ails on he da a model and da abase ables. 32 3.4 Tailwind CSS Tailwind CSS es un amewo k de diseño u ili y- i s [6] que pe mi e la c eación de in e aces al amen e pe sonalizables median e el uso de clases de u ilidad. O ece lexibilidad y con ol en el diseño de es ilos, pe mi iendo a los desa ollado es c ea diseños únicos sin la necesidad de es ilos pe sonalizados ex ensos. 3.5 Angula Angula es un amewo k de desa ollo web [7] desa ollado po Google pa a la c eación de aplicaciones web de una sola página (SPA). U iliza una a qui ec u a basada en componen es y acili a el desa ollo de aplicaciones obus as y escalables con uncionalidades como inyección de dependencias y en u amien o. 3.6 Typesc ip TypeSc ip es un lenguaje de p og amación [8] que ex iende Ja aSc ip con ca ac e ís icas de ipado es á ico. P opo ciona he amien as pa a de ec a e o es du an e el desa ollo y acili a la c eación de código más segu o y man enible. TypeSc ip es especialmen e ú il pa a p oyec os g andes y aplicaciones web complejas. 3.7 Pos g eSQL Pos g eSQL es un sis ema de ges ión de bases de da os elacional [9] de código abie o. Conocido po su obus ez y lexibilidad, Pos g eSQL admi e ca ac e ís icas a anzadas como p ocedimien os almacenados, índices complejos y ansacciones segu as. Es ideal pa a aplicaciones que equie en un manejo con iable de da os. 33 3.8 DBea e DBea e es una he amien a uni e sal pa a la adminis ación de bases de da os [10]. P opo ciona una in e az g á ica que pe mi e a los desa ollado es in e ac ua con a ias bases de da os, incluyendo Pos g eSQL. Con DBea e , se pueden ealiza a eas como consul as SQL, ges ión de esquemas y manipulación de da os de mane a isual. 3.9 Docke Docke es una pla a o ma [11] que pe mi e la c eación y ejecución de aplicaciones en con enedo es. Con Docke , los desa ollado es pueden empaque a aplicaciones y sus dependencias en un en o no po á il y consis en e. Es o acili a el despliegue, el escalado y la colabo ación en el desa ollo de so wa e. 3.10 Visual S udio Code Visual S udio Code es un edi o de código uen e [12] desa ollado po Mic oso . O ece una amplia gama de he amien as y ex ensiones pa a el desa ollo de so wa e, incluidas ca ac e ís icas como au ocomple ado, depu ación y con ol de e siones. Visual S udio Code es al amen e pe sonalizable y sopo a a ios lenguajes y amewo k. 3.11 Pos man Pos man es una he amien a de desa ollo pa a p uebas y depu ación de API [13]. Pe mi e a los desa ollado es c ea , p oba y documen a solici udes y espues as HTTP de mane a in e ac i a. Con Pos man, es posible au oma iza p uebas y colabo a en el desa ollo y man enimien o de API de mane a e icien e. 34 3.12 Ligh weigh - Cha s Ligh weigh - Cha s es una biblio eca de g á icos [14] diseñada especí icamen e pa a la isualización de da os inancie os en aplicaciones web. Desa ollada po T ading View, o ece una amplia a iedad de ipos de g á icos, como elas japonesas, líneas de endencia y g á icos de á ea, con un en oque en la elocidad y la e iciencia. Es a biblio eca es ampliamen e pe sonalizable y ácil de usa . 3.13 Yahoo Finance API La API de Yahoo Finance es una in e az de p og amación de aplicaciones [15] que p opo ciona acceso a da os inancie os, no icias y análisis de me cado de Yahoo Finance. Pe mi e a los desa ollado es ob ene in o mación en iempo eal y da os his ó icos sob e una amplia gama de ins umen os inancie os, incluyendo acciones, índices, di isas y c ip omonedas. 3.14 Can a Can a es una pla a o ma de diseño g á ico [16] en línea que pe mi e a los usua ios c ea una amplia a iedad de con enido isual, incluidos g á icos, p esen aciones, publicaciones en edes sociales y más. Con una in e az in ui i a y una amplia biblio eca de elemen os g á icos y plan illas, Can a es una he amien a popula pa a la c eación de con enido isual a ac i o y p o esional. 3.14 Gi hub Gi Hub es una pla a o ma en línea [17] que o ece se icios de alojamien o pa a p oyec os de desa ollo de so wa e u ilizando el sis ema de con ol de e siones Gi . Pe mi e a los desa ollado es colabo a en p oyec os, ealiza un seguimien o de los cambios ealizados en el código, ges iona p oblemas y solici udes de 35 inco po ación de cambios (pull eques s), y compa i y e isa el código en e equipos de desa ollo. Es ampliamen e u ilizado en la comunidad de desa ollo de so wa e debido a su acilidad de uso, su capacidad pa a acili a la colabo ación y su in eg ación con una a iedad de he amien as y se icios. 36 Capí ulo 4: A qui ec u a de la Aplicación y Modelo de Da os Es e capí ulo desc ibe la a qui ec u a u ilizada pa a la implemen ación de la aplicación y p opo ciona de alles sob e el modelo de da os y las ablas de la base de da os. 4.1 A qui ec u a de la Aplicación La aplicación implemen a una a qui ec u a basada en el modelo clien e - se ido . En es e esquema, el clien e es esponsable de en ia solici udes, mien as que el se ido p ocesa las solici udes y de uel e espues as. El clien e suele se una in e az web, mien as que el se ido maneja la lógica de la aplicación y la ges ión de da os. En el caso de la aplicación, el clien e ealiza pe iciones al se ido que ecoge y p ocesa en solici udes a la base de da os o a un se icio ex e no. Figu a 4.1.1. Esquema a qui ec u a clien e – se ido 37 Además de la a qui ec u a clien e-se ido , la aplicación sigue el pa ón de a qui ec u a hexagonal [18]. Es e pa ón posee los siguien es componen es: • Dominio: es el núcleo de la a qui ec u a hexagonal. Con iene an o las en idades como las eglas de negocio. Su p incipal a ea es diseña un modelo de negocio independien e de ecnologías o amewo ks especí icos. • Pue os: ac úan como in e aces que de inen las acciones posibles con los sis emas ex e nos. Si en como puen es en e la capa de dominio y la capa de in aes uc u a, de allando las ope aciones que los adap ado es deben se capaces de lle a a cabo. • Adap ado es: son las implemen aciones conc e as de los pue os y acili an la conexión del dominio con ecnologías y amewo ks especí icos. Ac úan como ‘ aduc o es’ en e el dominio y las capas ex e nas, adap ando las solici udes pa a que se ajus en al o ma o de ambos lados. Figu a 4.1.2. Esquema de a qui ec u a hexagonal 38 En es a implemen ación, Angula es la he amien a u ilizada pa a el desa ollo del clien e, y se es uc u a siguiendo el pa ón de a qui ec u a hexagonal. El núcleo de la aplicación con iene la lógica p incipal, mien as que los componen es de in aes uc u a y adap ado es manejan la in e acción con elemen os ex e nos, como las pe iciones a las APIS ex e nas y a la base de da os. En cuan o al se ido , se emplea Exp ess, un en o no que pe mi a esponde a las solici udes del clien e y conec a se a la base de da os Pos g eSQL. En es a aplicación, los clien es son los usua ios egis ados y no egis ados, que in e ac úan con la aplicación a a és del na egado , u ilizando di e sas pe iciones y o mula ios. La a qui ec u a hexagonal pe mi e que es as in e acciones se man engan sepa adas del núcleo, acili ando la adición o modi icación de uncionalidades sin a ec a el uncionamien o in e no de la aplicación. En conclusión, la a qui ec u a hexagonal, implemen ada con Angula , pe mi e una es uc u a lexible y man enible, mien as que el pa ón clien e-se ido ga an iza una comunicación e icien e en e el clien e y el se ido , con Pos g eSQL como base de da os. 4.2 Es uc u a de la base de da os Pa a un co ec o uncionamien o de la aplicación, el sis ema debe almacena en la base de da os la in o mación co espondien e a los usua ios, las di e en es ca e as c eadas po es os y odo la in o mación y da os ele an es del aspec o social que iene la pla a o ma, desde las publicaciones has a las pe sonas que siguen a los usua ios. Se ha c eado una base de da os en Pos g eSQL con las ablas use s, walle s, walle s_asse s, asse s, social, no i ica ions, pos s, ale s, eplies, use s_likes. 39 A con inuación, en la Tabla 4.1, se mues a el diag ama En idad Relación de las Tablas c eadas. Tabla 4.1 Diag ama En idad – Relación de las Tablas 4.2.1 Tabla use s Es a abla almacena la in o mación ele an e al usua io. En ella se almacena el id co espondien e al usua io, así como los da os in oducidos a la ho a de egis a se en la aplicación, además del impo e que ecibe cuando se egis a en la pla a o ma el cual se i á ac ualizando a medida que se ealicen in e siones. La Tabla 5.2 mues a los a ibu os de es a abla. Tabla 4.2. Tabla de usua ios 40 4.2.2 Tabla ale s En es a abla dispone de la in o mación ele an e a las ale as ma cadas po el usua io de los p ecios de los ac i os decla adas po el usua io egis ado. Es a abla con iene el id co espondien e a cada ale a además del p ecio y el ac i o que ha indicado el usua io pa a ac i a la ale a. La Tabla 4.3 mues a los a ibu os de es a abla. Tabla 4.3. Tabla de ale as 4.2.3 Tabla asse s Tabla que almacena la can idad de ac i o inancie o que ha comp ado un usua io en una ca e a. Pa a consegui es o se almacena, a pa e del id del egis o de la abla, el nomb e del ac i o y la can idad comp ada po el usua io. La Tabla 4.4 mues a los a ibu os de es a abla. Tabla 4.4. Tabla de ac i os 41 4.2.4 Tabla no i ica ions Es a abla dispone de las no i icaciones que se han p oducido en elación con la in e acción de los usua ios egis ados en la aplicación. Es a abla con iene la in o mación necesa ia pa a iden i ica si la no i icación es debido a una espues a de una publicación o si es un me gus a. La Figu a 4.5 mues a los a ibu os de es a abla. Tabla 4.5. Tabla de no i icaciones 4.2.5 Tabla pos s Pa a almacena las publicaciones que ealizan los usua ios en la pla a o ma, se ha c eado es a abla. La abla p opo ciona los da os pa a pode c ea la publicación, como el id de la publicación, el con enido de es e, el núme o de me gus a que enga, así como el núme o de espues as. La abla ambién almacena la echa de c eación además del id del usua io que la c eó. La Tabla 4.6 mues a los a ibu os de es a abla. Tabla 4.6. Tabla de publicaciones 4.2.6 Tabla eplies Las espues as que se ealicen a una publicación quedan egis adas en es a abla. La abla eplies dispone de las mismas ca ac e ís icas que la abla pos s. La Tabla 4.7 mues a los a ibu os de es a abla. 48 Po úl imo, el usua io puede conoce las publicaciones que ha dado me gus a cada usua io y conoce las publicaciones de es e desde el pe il de cada uno. Inicio de sesión En la Figu a 5.3 se puede e la pan alla de inicio de sesión en la que si el usua io in oduce los da os solici ados po la aplicación puede accede a la cuen a de es e. Figu a 5.3. Pan alla de inicio de sesión 49 El código implemen ado pa a pode inicia sesión es el que se mues a en la Figu a 5.4: Figu a 5.4 Código de inicio de sesión C eación de ca e a El usua io iene dos opciones pa a c ea una ca e a, bien desde la página p opia de un ac i o o bien desde el pe il de es e. Si op a po c ea una ca e a desde la página de un ac i o (Figu a 5.5) debe á di igi se a la sección de T ade, ubicado en la pa e in e io de echa de la pan alla. 50 Figu a 5.5 Pan alla p incipal del ac i o Una ez allí, se in oducen los campos necesa ios pa a c ea la ca e a, el nomb e y la can idad que se quie e comp a . Si la can idad a comp a supe a el o al que se iene en la ca e a no deja á c ea una nue a. Si po el con a io se decide c ea una nue a ca e a desde el pe il (Figu a 5.6), se elegi á de odos los ac i os el que se quie a comp a . El o mula io po el es o es el mismo. Figu a 5.6. Sección de c eación de ca e a 51 En la Figu a 5.7 se puede conoce el código u ilizado pa a la c eación de la ca e a: Figu a 5.7. Código de c eación de ca e a El código pa a añadi un nue o ac i o inancie o es el que se puede e en la Figu a 5.8: Figu a 5.8 Código de añadi ac i os Mos a ca e as El usua io puede conoce las ca e as que ha c eado, así como la can idad de los ac i os inancie os comp ados. En la pa e supe io de la de echa de cada ca e a se mues a el bene icio o al. 52 Figu a 5.9 Pan alla de Mis ca e as El código pa a ob ene las ca e as es el siguien e (Figu a 5.10): Figu a 5.10. Código de ob ene ca e as Modi ica ca e as El usua io puede modi ica las ca e as c eadas, ya sea comp ando un nue o ac i o pa a es a o endiendo uno exis en e en la ca e a. Pa a ello debe á di igi se a la página del ac i o que quie a ealiza la acción (ya is a en la Figu a 6.5) y en la esquina in e io de echa, en la sección de T ade debe á, en unción de lo que desea hace , si comp a o ende dicho ac i o, selecciona ca e a exis en e. Una ez elegida es a opción debe á selecciona la ca e a, de en e odas las c eadas, la que desee modi ica , al y como se mues a en la Figu a 5.11. 53 Figu a 5.11. Sección de modi ica ca e a Pa a pode modi ica la ca e a se desa olló el código de la Figu a 5.12: Figu a 5.12 Código de modi ica ca e a Busca ca e a El usua io puede busca una ca e a c eada in oduciendo en la sección de busca (Figu a 5.13), den o de la página donde se mues an odas sus ca e as, el nomb e de es a. Es a búsqueda ealiza á un il ado de la ca e a a medida que la pe sona in oduzca el nomb e 54 Figu a 5.13 Resul ado de busca ca e a El código pa a ealiza la búsqueda de la ca e a es el siguien e: Figu a 5.14 Búsqueda de ca e a Elimina ca e a Si el usua io desea elimina una ca e a, end á que di igi se a la sección de mos a las ca e as en su p opio pe il. Desde ahí selecciona á la ca e a que desea elimina y se mos a á un mensaje de con i mación ( e Figu a 5.15). Si el usua io acep a se elimina á dicha ca e a, endiendo odos los ac i os a alo de me cado. 55 Figu a 5.15 Ven ana modal de con i mación de elimina ca e a El código pa a elimina la ca e a es el siguien e (Figu a 5.16): Figu a 5.16. Código de eliminación de ca e a Modi ica da os de cuen a En la Figu a 5.17 se puede obse a la página de ajus es del usua io. Una ez allí pod á modi ica la con aseña o el nomb e de usua io. 56 Figu a 5.17 Pan alla de ajus es de usua io El código pa a modi ica , an o el nomb e de usua io como la con aseña se encuen an en la Figu a 5.18: Figu a 5.18 Código de modi ica usua io 57 Elimina usua io El usua io si lo desea puede elimina su cuen a, si lo decide, en la misma página donde modi ica los ajus es selecciona á elimina usua io, mos ando una en ana modal (Figu a 5.19) que p egun a á al usua io sob e su decisión, Si acep a, los da os del usua io queda án eliminados. Figu a 5.20. Ven ana de con i mación de elimina usua io El código pa a elimina el usua io es el siguien e (Figu a 5.21): Figu a 5.21 Código de eliminación de cuen a 64 Mos a publicaciones El usua io puede e las publicaciones c eadas, an o de odos los usua ios egis ados en la aplicación como de un il ado de publicaciones según los usua ios a los que siga. En la siguien e Figu a (Figu a 5.30) se mues a las publicaciones de odos los usua ios. Figu a 5.30. Pan alla de odas las publicaciones 65 El código pa a ob ene las publicaciones es el mos ado en la Figu a 5.31: Figu a 5.31. Código pa a ob ene las publicaciones Mien as que en es a imagen se mues an las publicaciones de los usua ios a los que sigue El código pa a consegui las publicaciones de los usua ios a los que sigue es el mos ado en la Figu a 5.32: Figu a 5.32 Código pa a ob ene las publicaciones de los usua ios a los que se sigue 66 En ia publicación Pa a en ia una publicación a la aplicación, en la página de Tablón, el usua io selecciona á la opción de Nue o pos . Una ez seleccionado se ab i á una en ana modal, al y como se mues a en la Figu a 5.33, donde el usua io in oduci á el con enido de la publicación. Figu a 5.33. Ven ana modal de c ea publicación El código pa a en ia la publicación es el mos ado en la Figu a 5.34: Figu a 5.34. Código de c eación de nue a publicación 67 Responde a una publicación Si el usua io desea esponde a una publicación exis en e en el ablón selecciona á el icono de espues a, si uado en la pa e in e io de echa de cada publicación. Una ez seleccionado, se ab i á una en ana modal simila a ealiza una nue a publicación (Figu a 5.35). Figu a 5.35. Ven ana modal pa a esponde publicación El esul ado es una ac ualización en el con ado de espues as de dicha publicación además como una no i icación al usua io pa a indica que ha habido una nue a espues a. El código pa a almacena la espues a es el siguien e (Figu a 5.36): Figu a 5.36 Código de espues a de publicación 68 Añadi una ale a Si lo desea, el usua io puede añadi una ale a pa a que se le no i ique si el p ecio de la ale a del ac i o a ha sido alcanzado. Pa a ello selecciona á la opción de añadi una ale a en la esquina in e io de echa de la página del ac i o e indica á el p ecio que desea. Figu a 5.37. Ven ana modal pa a c ea ale a En la Figu a 5.38 se mues a el código pa a almacena la ale a: Figu a 5.38 Código pa a c ea ale a 69 Busca usua ios / ac i os Si el usua io desea busca , an o un usua io como un ac i o simplemen e indica á, en la sección de búsqueda de la pa e supe io de cualquie pan alla la opción que quie a y esc ibi á el campo que quie a. Figu a 5.39 Sección de búsqueda Mos a / elimina no i icaciones de me gus a El usua io puede e quien le ha ma cado alguna publicación como me gus a desde la página de no i icaciones, en la sección de me gus a. También puede bo a dichas modi icaciones pulsando en la opción de elimina de cada no i icación. 70 Figu a 5.40 Pan alla de mos a las no i icaciones de me gus a 71 El código pa a ob ene es as no i icaciones es el siguien e: Figu a 5.41 Código pa a ob ene las no i icaciones de me gus a Mos a / elimina no i icaciones de comen a ios El usua io puede e quien le ha espondido alguna publicación desde la página de no i icaciones (Figu a 5.42), en la sección de comen a ios. También puede bo a dichas modi icaciones pulsando en la opción de elimina de cada no i icación. 72 Figu a 5.42 Pan alla de no i icaciones de comen a ios En la Figu a 5.43 se de alla el código implemen ado pa a ob ene las no i icaciones de los comen a ios. Figu a 5.43. Código de ob ención de no i icaciones de comen a ios Ce a sesión de la cuen a El usua io puede ce a sesión en su cuen a seleccionando la opción Signo ou desde el d opdown de su cuen a, si uado en la pa e supe io de echa de cualquie página. Una ez seleccionado se le apa ece á un mensaje de con i mación (Figu a 5.44). El esul ado de es o es una limpieza del almacenamien o local de la aplicación y edi igi al usua io a la página de Inicio de sesión. Figu a 5.44 Ven ana modal de con i mación de Sign ou 73 El código pa a sali de la sesión es el siguien e. Figu a 5.45 Código pa a ce a sesión. 80 Figu a 4.1 Diag ama de usua io egis ado A.2.2. Diag ama de usua io no egis ado Con lo que espec a al usua io no egis ado, la única uncionalidad que puede hace es e ipo de ac o es el egis o en la pla a o ma. En la Figu a 1.2 se ep esen a el diag ama de caso de uso elacionado con los usua ios no egis ados 81 Figu a 4.2 Diag ama de usua io no egis ado A con inuación, se desc iben los dis in os casos de uso que pueden ealiza los ac o es iden i icados en la pla a o ma. Siendo es os los siguien es: • Módulo de cuen as de Usua io • Módulo de ges ión de ca e as • Módulo de me cado • Módulo de no i icaciones • Módulo de In e acción con usua io A.3 Módulo de cuen as de Usua io Los casos pe enecien es a es e módulo son: • Regis a usua io (Tabla A.1.1) • Sali de la cuen a (Tabla A.1.2) • Inicia sesión (Tabla A.1.3) • Elimina cuen a (Tabla A.1.4) • Modi ica usua io (Tabla A.1.5) 82 • Mos a pe il de usua io (Tabla A.1.6) Siendo cada caso de uso desc i o a con inuación: Requisi o Regis a usua io Iden i icado 1.1 P io idad Al a P econdición NA Desc ipción Los usua ios pueden c ea se una cuen a en la aplicación. En ada Nomb e, apellidos, nomb e de usua io, co eo elec ónico y con aseña. Salida NA Paso Acción 83 Secuencia no mal 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal y le da click a ‘Sign up’. 2 La aplicación ca ga la pan alla de egis o. 3 El usua io ellena los campos obliga o ios con sus da os pe sonales y da click en ‘Sign up’. 4 La aplicación alida los da os in oducidos 5 La aplicación edi ige al usua io a la página p incipal Pos condición Se ha c eado una nue a cuen a en la aplicación. Excepciones 3 Se mues a el mensaje co espondien e si la con aseña no cumple con los equisi os decla ados. 3 Se mues a el mensaje co espondien e si el co eo elec ónico in oducido ya exis e 84 3 Se mues a el mensaje co espondien e si el nomb e de usua io in oducido ya exis e. 3 Se mues a el mensaje co espondien e si algún campo obliga o io no se ha ellenado. Comen a ios NA Ac o es Usua io no egis ado A.1.1 Tabla de Regis a usua io Requisi o Sali de la cuen a Iden i icado 1.2 P io idad Al a P econdición El usua io ha de es a egis ado y debe de habe en ado en la cuen a. 85 Desc ipción Los usua ios egis ados pueden sali de su cuen a egis ada en la aplicación. En ada NA Salida NA Secuencia no mal Paso Acción 1 El usua io egis ado accede a la aplicación con su sesión iniciada, se le mues a la pan alla p incipal. 2 El usua io hace click en ‘Log ou ’ 3 La aplicación mues a un mensaje p egun ando si es á segu o de su decisión. 4 El usua io egis ado hace click en ‘Sign ou ’ 86 5 La aplicación cie a su cuen a y uel e a la pan alla p incipal Pos condición Se ha ce ado la cuen a del usua io Excepciones NA Comen a ios NA Ac o es Usua io egis ado A.1.2 Tabla de ce a sesión Requisi o Inicia sesión Iden i icado 1.3 P io idad Al a P econdición El usua io ha de es a egis ado. 87 Desc ipción Los usua ios pueden inicia sesión en la aplicación. En ada Nomb e de usua io y con aseña Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal y le da click en ‘Log in. 2 La aplicación ca ga la pan alla de inicio de sesión. 3 El usua io ellena los campos obliga o ios con sus da os pe sonales y da click en ‘Log in’. 4 La aplicación comp ueba los da os in oducidos 88 5 La aplicación edi ige al usua io a la página p incipal con la sesión iniciada Pos condición La cuen a del usua io se ha iniciado en la aplicación. Excepciones 3 Se mues a el mensaje co espondien e si la con aseña asociada al nomb e de usua io no es co ec a. 3 Se mues a el mensaje co espondien e si no exis e ningún nomb e de usua io asociado al in oducido. 3 Se mues a el mensaje co espondien e si algún campo obliga o io no se ha ellenado Comen a ios NA Ac o es Usua io egis ado. 89 A.1.3 Tabla de inicia sesión Requisi o Elimina cuen a Iden i icado 1.4 P io idad Al a P econdición El usua io ha de es a egis ado y con la sesión iniciada Desc ipción El usua io puede elimina su cuen a egis ada en la aplicación. En ada NA Salida NA Secuencia no mal Paso Acción 96 Comen a ios NA Ac o es Usua io egis ado. A.1.6 Tabla de mos a pe il de usua io A.4 Módulo de ges ión de ca e as Los casos pe enecien es a es e módulo son: • C ea ca e a (Tabla A.2.1) • Elimina ca e a (Tabla A.2.2) • Mos a ca e a (Tabla A.2.3) • Busca ca e a (Tabla A.2.4) • Modi ica ca e a (Tabla A.2.5) • Lis a ca e a (Tabla A.2.6) A con inuación, se desc ibe cada uno de ellos Requisi o C ea ca e a Iden i icado 2.1 P io idad Media 97 P econdición El usua io debe de ene la sesión iniciada Desc ipción El usua io puede c ea una nue a ca e a. En ada Nomb e de la ca e a Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io hace click en ‘Mis ca e as’ 3 La aplicación mues a la página p incipal de las ca e as del usua io 98 4 El usua io hace click en ‘Nue a’ 5 La aplicación ab e una nue a en ana modal. 6 El usua io in oduce el nomb e de la ca e a en el campo co espondien e y da click en ‘C ea ’. Pos condición La ca e a se ha c eado Excepciones 4 Se mos a á el mensaje co espondien e si el usua io ha alcanzado el lími e de ca e as disponibles. 6 Se mos a á el mensaje co espondien e si el usua io in oduce un nomb e pa a la ca e a no álido. Comen a ios NA 99 Ac o es Usua io egis ado. A.2.1 Tabla de c ea ca e a Requisi o Elimina ca e a Iden i icado 2.2 P io idad Media P econdición El usua io debe de ene la sesión iniciada Desc ipción El usua io puede elimina una ca e a exis en e. En ada NA Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 100 2 El usua io hace click en ‘Mis ca e as’ 3 La aplicación mues a la página p incipal de las ca e as del usua io 4 El usua io hace click en ‘Elimina ca e a’ 5 La aplicación ab e una nue a en ana modal. 6 El usua io hace click en ‘Elimina ’. Pos condición La ca e a se ha eliminado Excepciones 4 Se mos a á el mensaje co espondien e si el usua io no iene ca e as disponibles. Comen a ios NA Ac o es Usua io egis ado. A.2.2 Tabla de elimina ca e a 101 Requisi o Mos a ca e a Iden i icado 2.3 P io idad Media P econdición El usua io debe de ene la sesión iniciada. Desc ipción El usua io puede e los da os de una de sus ca e as. En ada NA Salida In o mación de la ca e a seleccionada Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 102 2 El usua io hace click en ‘Mis ca e as’ 3 La aplicación mues a la página p incipal de las ca e as del usua io 4 El usua io hace click en la ca e a a mos a . 5 La aplicación mues a la página de la ca e a. Pos condición NA Excepciones 2 Se mos a á el mensaje co espondien e si el usua io no dispone de ca e as. Comen a ios NA Ac o es Usua io egis ado. 103 A.2.3 Tabla de mos a ca e a Requisi o Busca ca e a Iden i icado 2.4 P io idad Baja P econdición El usua io debe de ene la sesión iniciada Desc ipción El usua io puede busca una de sus ca e as. En ada Nomb e de la ca e a Salida Ca e a encon ada Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io hace click en ‘Mis ca e as’ 104 3 La aplicación mues a la página p incipal de las ca e as del usua io. 4 El usua io ellena el campo de busca ca e as 5 La aplicación mues a una lis a de ca e as que coincide con los il os de búsqueda 6 El usua io hace click en la ca e a buscada. Pos condición NA Excepciones 4 Se mos a á el mensaje co espondien e si la búsqueda no ha enido esul ados. Comen a ios NA Ac o es Usua io egis ado. A.2.4 Tabla de busca ca e a 105 Requisi o Modi ica ca e a Iden i icado 2.5 P io idad Media P econdición El usua io debe de ene la sesión iniciada y ca e as disponibles Desc ipción El usua io puede modi ica una ca e a En ada Valo de los ac i os a modi ica Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 112 3 La aplicación mues a la página p incipal del me cado jun o con los ac i os inancie os. 4 El usua io in oduce el ac i o inancie o a busca y hace click en ‘Busca ’. 5 La aplicación mues a los ac i os inancie os que concue dan con el campo in oducido. Pos condición NA Excepciones NA Comen a ios NA Ac o es Usua io egis ado. A.3.2 Tabla de Busca ac i o Requisi o Mos a ac i o inancie o 113 Iden i icado 3.3 P io idad Al a P econdición El usua io debe de ene la sesión iniciada. Desc ipción El usua io puede e la lis a de ac i os disponibles en la aplicación En ada NA Salida In o mación del ac i o inancie o Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io hace click en ‘Me cado’ 114 3 La aplicación mues a la página p incipal del me cado jun o con los ac i os inancie os. 4 El usua io hace click en el ac i o inancie o a solici a in o mación. 5 La aplicación mues a la in o mación de su ac i o inancie o. Pos condición NA Excepciones NA Comen a ios NA Ac o es Usua io egis ado. A.3.3 Tabla de mos a ac i o inancie o 115 Requisi o Mos a p edicción Iden i icado 3.4 P io idad Al a P econdición El usua io debe de ene la sesión iniciada. Desc ipción El usua io puede e la p edicción de un ac i o inancie o. En ada NA Salida Da os de la p edicción Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 116 2 El usua io hace click en ‘Me cado’ 3 La aplicación mues a la página p incipal del me cado jun o con los ac i os inancie os. 4 El usua io hace click en el ac i o inancie o a p edeci . 5 La aplicación mues a la in o mación del ac i o inancie o. 6 El usua io hace click en ‘P edeci ’. 7 La aplicación mues a la p edicción del alo del ac i o. Pos condición NA 117 Excepciones NA Comen a ios NA Ac o es Usua io egis ado. A.3.4 Tabla de mos a p edicción Requisi o Comp a acciones del ac i o Iden i icado 3.5 P io idad Al a P econdición El usua io debe de ene la sesión iniciada. Desc ipción El usua io puede ealiza la comp a de una can idad de acciones de un ac i o. 118 En ada Can idad de acciones a comp a Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io hace click en ‘Me cado’ 3 La aplicación mues a la página p incipal del me cado jun o con los ac i os inancie os. 4 El usua io hace click en el ac i o a comp a . 5 La aplicación ca ga la página p incipal del ac i o 119 6 El usua io hace click en ‘Comp a ’. 7 El usua io in oduce la can idad a comp a y hace click en ‘Comp a ’. Pos condición El usua io ha ealizado la comp a de una can idad del ac i o inancie o. Excepciones NA Comen a ios NA Ac o es Usua io egis ado. A.3.5 Tabla de comp a acciones Requisi o Vende acciones del ac i o Iden i icado 3.6 120 P io idad Al a P econdición El usua io debe de ene la sesión iniciada. Desc ipción El usua io puede ende una can idad de un ac i o inancie o especí ico. En ada Can idad pa a ende Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io hace click en ‘Me cado’ 121 3 La aplicación mues a la página p incipal del me cado jun o con los ac i os inancie os. 4 El usua io hace click en el ac i o a ende 5 La aplicación ca ga la página p incipal del ac i o 6 El usua io hace click en ‘Vende ’ 7 El usua io in oduce la can idad a ende y hace click en ‘Vende ’. Pos condición El usua io ha ealizado la en a de una can idad del ac i o inancie o. Excepciones NA 128 Comen a ios NA Ac o es Usua io egis ado. A.4.3 Tabla de lis a no i icaciones Requisi o Añadi ale a Iden i icado 4.4 P io idad Media P econdición El usua io debe de ene la sesión iniciada Desc ipción El usua io puede añadi una no i icación En ada Valo del ac i o inancie o Salida Mensaje de con i mación 129 Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 3 La aplicación mues a odos los ac i os inancie os disponibles. 4 El usua io hace click en el ac i o inancie o a pone una ale a. 5 La aplicación mues a la página p incipal del ac i o inancie o. 6 El usua io hace click en ‘Añadi ale a’ 7 La aplicación mues a una en ana modal donde el 130 usua io añade el alo del ac i o inancie o Pos condición La ale a del ac i o inancie o se ha añadido. Excepciones 7 Se mos a á el mensaje co espondien e si el usua io añade un campo inco ec o Comen a ios NA Ac o es Usua io egis ado A.4.4 Tabla de añadi ale a Requisi o Elimina ale a Iden i icado 4.5 131 P io idad Media P econdición El usua io debe de ene la sesión iniciada y una no i icación asociada a ese ac i o Desc ipción El usua io puede elimina una ale a. En ada NA Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io hace click en ‘No i icaciones’. 3 La aplicación mues a la página de las no i icaciones y ale as del usua io 132 4 El usua io hace click en la ale a a elimina 5 La aplicación mues a la in o mación de dicha ale a. 6 El usua io hace click en ‘Elimina a ea’ 7 La aplicación mues a un mensaje de a iso. 8 El usua io hace click en ‘Elimina ’ Pos condición La no i icación se ha eliminado. Excepciones 3 Se mues a el mensaje co espondien e si el usua io no iene ninguna ale a c eada. Comen a ios NA Ac o es Usua io egis ado. A.4.5 Tabla de elimina ale a 133 A.6 Módulo de In e acción con Usua io Los casos pe enecien es a es e módulo son: • Segui usua io (Tabla A.5.1) • Busca usua io (Tabla A.5.2) • Deja de segui usua io (Tabla A.5.3) • En ia publicación (Tabla A.5.4) • Comen a publicación (Tabla A.5.5) • In e acciona con una publicación (Tabla A.5.6) • Mos a ablón (Tabla A.5.7) • Mos a publicación (Tabla A.5.8) • Segui usua io (Tabla A.5.9) A con inuación, se desc ibe cada uno de ellos Requisi o Segui usua io Iden i icado 5.1 P io idad Baja P econdición El usua io debe de ene la sesión iniciada 134 Desc ipción El usua io puede segui a o o usua io egis ado en la aplicación En ada Nomb e del usua io Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io in oduce el nomb e del usua io a busca en el campo de búsqueda. 3 El usua io hace click en ‘Busca ’. 135 4 La aplicación mues a una lis a con los usua ios que coinciden con el campo in oducido. 5 El usua io hace click en el usua io buscado. 6 La aplicación mues a el pe il del usua io. 7 El usua io hace click en ‘Segui ’ Pos condición El usua io ha comenzado a segui a o o usua io egis ado. Excepciones 4 Se mos a á el mensaje co espondien e si a aplicación no ha encon ado usua ios coinciden es. 136 6 Se mos a á el mensaje co espondien e si el usua io a segui iene el pe il p i ado. Comen a ios NA Ac o es Usua io egis ado. A.5.1 Tabla de segui usua io Requisi o Busca usua io Iden i icado 5.2 P io idad Media P econdición El usua io debe de ene la sesión iniciada Desc ipción El usua io puede busca a o o usua io egis ado en la aplicación 137 En ada Nomb e del usua io Salida Da os del pe il del usua io buscado Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io in oduce el nomb e del usua io a busca en el campo de búsqueda. 3 El usua io hace click en ‘Busca ’. 4 La aplicación mues a una lis a con los usua ios que coinciden con el campo in oducido. 144 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io hace click en la publicación a comen a 3 La aplicación mues a la publicación, así como sus opciones. 4 El usua io hace click en ‘Comen a ’ 5 La aplicación ab e una en ana modal. 6 El usua io in oduce el comen a io en el campo especí ico y hace click en ‘Comen a ’. Pos condición La publicación se ha ac ualizado 145 Excepciones 4 Se mos a á el mensaje co espondien e si el usua io no iene publicaciones Comen a ios NA Ac o es Usua io egis ado. A.5.5 Tabla de comen a publicación Requisi o In e acciona con una publicación Iden i icado 5.6 P io idad Baja P econdición El usua io debe de ene la sesión iniciada. 146 Desc ipción El usua io puede in e acciona en una publicación En ada NA Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io hace click en la publicación a in e acciona 3 La aplicación mues a la publicación, así como sus opciones. 4 El usua io hace click en ‘Me gus a’ 147 Pos condición La publicación se ha ac ualizado Excepciones 4 Se mos a á el mensaje si el usua io no iene publicaciones Comen a ios NA Ac o es Usua io egis ado. A.5.6 Tabla de in e acciona en una publicación Requisi o Mos a ablón Iden i icado 5.7 P io idad Al a P econdición El usua io debe de ene la sesión iniciada 148 Desc ipción El usua io puede e el ablón con las publicaciones de los usua ios a los que sigue. En ada NA Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal donde puede e la lis a de publicaciones. Pos condición NA Excepciones NA Comen a ios NA 149 Ac o es Usua io egis ado. A.5.7 Tabla de mos a ablón Requisi o Mos a publicación Iden i icado 5.8 P io idad Media P econdición El usua io debe de ene la sesión iniciada Desc ipción El usua io puede e el con enido de una publicación En ada NA Salida NA Paso Acción Secuencia no mal 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 150 2 La aplicación mues a una lis a de las publicaciones asociadas al usua io 3 El usua io hace click en la publicación a la que quie e solici a in o mación 4 La aplicación mues a la publicación con oda su in o mación. Pos condición NA Excepciones NA Comen a ios NA Ac o es Usua io egis ado. A.5.8 Tabla de mos a publicación Requisi o Segui usua io Iden i icado 5.9 151 P io idad Baja P econdición El usua io debe de ene la sesión iniciada Desc ipción El usua io puede segui a o o usua io egis ado en la aplicación En ada Nomb e del usua io Salida NA Secuencia no mal Paso Acción 1 El usua io accede a la aplicación, se le mues a la pan alla p incipal. 2 El usua io in oduce el nomb e del usua io a busca en el campo de búsqueda. 152 3 El usua io hace click en ‘Busca ’. 4 La aplicación mues a una lis a con los usua ios que coinciden con el campo in oducido. 5 El usua io hace click en el usua io buscado. 6 La aplicación mues a el pe il del usua io. 7 El usua io hace click en ‘Segui ’ Pos condición El usua io ha comenzado a segui a o o usua io egis ado. Excepciones 4 Se mos a á el mensaje co espondien e si a aplicación no ha encon ado usua ios coinciden es. 153 6 Se mos a á el mensaje co espondien e si el usua io a segui iene el pe il p i ado. Comen a ios NA Ac o es Usua io egis ado. A.5.9 Tabla de segui usua io