scieee Open visual document viewer

Creactiva: Aplicación para el fomento de la Escritura Creativa

Duque Escobar, Genesis Brigitti; Jaramillo Pulido, Luis Alberto; Rivas Fernández, Gonzalo

Abstract

El objetivo de este Trabajo de Fin de Grado es crear una aplicación web que permita la realización de desafíos y escritos literarios, promoviendo de esta manera la escritura creativa. Para su uso, se ha añadido un sistema de cuentas de usuario basado en roles, así como herramientas para permitir a los usuarios organizarse y participar en la creación mediante un editor de texto y un sistema de almacenamiento multimedia. Este proyecto contempla la posibilidad de coordinar la actividad creativa con la comunidad educativa, dando la posibilidad a profesores a establecer unas pautas que impulsen a los estudiantes interesados a realizar nuevas creaciones como respuesta a retos literarios de diversas temáticas. Se tiene en cuenta la existencia de diferentes intereses creativos y se ha diseñado un sistema que agrupe a los usuarios con intereses afines. A la hora de usar la aplicación se debe usar una cuenta de usuario a la que se le haya concedido acceso por un responsable de la aplicación.

Full text

C eac i a: Aplicación pa a el omen o de la Esc i u a C ea i a C eac i a: Applica ion o he p omo ion o C ea i e W i ing Po Genesis B igi i Duque Escoba Luis Albe o Ja amillo Pulido Gonzalo Ri as Fe nández G ado en Ingenie ía In o má ica. G ado en Ingenie ía del So wa e. Facul ad de In o má ica Di igido po Co a Requena Hidalgo Ad ián Riesco Rod íguez Mad id, 2020–2021 Ag adecimien os En p ime luga , que emos ag adece a Ad ián Riesco Rod íguez po sus consejos y con- inua ayuda du an e el p oyec o. A con inuación, a Co a Requena Hidalgo po con ia nos es a idea y apo a sus conocimien os sob e la ma e ia. También que íamos da las g a- cias a Es eban A mas po da nos acceso a las he amien a Sha eLa ex pa a ealiza es e documen o y a Ma ia Jhenay Escoba González po p o ee las ilus aciones empleadas en la aplicación. Gonzalo Quie o ag adece a mis amigos Rocío, Ma ina, Albe o, Ja ie , En ique y ambos Ca los po su apoyo en los momen os complicados, y a mis compañe os de la Uni e sidad po acompaña me, no hab ía sido lo mismo sin ellos. También quie o ag adece a mi amilia po odo el apoyo y el ánimo que me han dado du an e la ca e a, es g acias a ellos que haya llegado has a aquí. Genesis Quie o ag adece a mi mad e po b inda me la opo unidad de consegui mis sueños y po se la muje que siemp e admi a é y ama é en es a ida. A mi pad e, po en ia me odos los días su amo y apoyo. A oda mi amilia, po que 7258 km no impidie on que sus consejos y ca iños llega án has a mi,g acias. También da las g acias a mis amigos Héc o , Ma isabel, Ad iana, K is el y B enda po es a a mi lado y b inda me la ayuda cuando pasaba po momen os muy di íciles. Po ul imo, a odas muje es que luchan po ompe las ba e as y se elices consiguiendo sus me as. Luis Quie o ag adece a amigos y compañe os po los buenos momen os que he pasado jun o a ellos, haciendo que el paso po la uni e sidad haya sido una muy buena expe iencia. Y ambién quie o ag adece a mi amilia, en especial a mi mad e y a mi he mana po sus buenos consejos, comp ensión y apoyo incondicional que me han b indado du an e odo es e iempo y que g an pa e de lo conseguido ambién es de ellos. iii C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM i Resumen El obje i o de es e T abajo de Fin de G ado es c ea una aplicación web que pe mi a la ealización de desa íos y esc i os li e a ios, p omo iendo de es a mane a la esc i u a c ea i a. Pa a su uso, se ha añadido un sis ema de cuen as de usua io basado en oles, así como he amien as pa a pe mi i a los usua ios o ganiza se y pa icipa en la c eación median e un edi o de ex o y un sis ema de almacenamien o mul imedia. Es e p oyec o con empla la posibilidad de coo dina la ac i idad c ea i a con la comuni- dad educa i a, dando la posibilidad a p o eso es a es ablece unas pau as que impulsen a los es udian es in e esados a ealiza nue as c eaciones como espues a a e os li e a ios de di e sas emá icas. Se iene en cuen a la exis encia de di e en es in e eses c ea i os y se ha diseñado un sis ema que ag upe a los usua ios con in e eses a ines. A la ho a de usa la aplicación se debe usa una cuen a de usua io a la que se le haya concedido acceso po un esponsable de la aplicación. Palab as cla e: Esc i u a c ea i a, Aplicación web, Reac JS, NodeJS, Exp essJS, Ja- asc ip , Axios, Esc i o, Desa ío, SQL. Abs ac The main goal o his Deg ee Thesis is o c ea e a web applica ion ha eases he c ea ion o li e a y challenges and w i ings, suppo ing c ea i e w i ing. In o de o aid in i s usage, a ole-based accoun sys em has been added, as well as ools ha enables s uden o ganiza ion and con en c ea ion h ough a ex edi o and a media s o age sys em. This p ojec akes in o accoun he possibili y o joining c ea i e and educa i e ac i i- ies, allowing eache s o c ea e a se o ules in o de o push in e es ed s uden s in o de eloping new li e a y c ea ions o di e se hemes. A sys em ha g oups use s wi h si- mila as es has been designed in o de o acknowledge he exis ence o di e en c ea i e in e es s. An accoun wi h adminis a o pe missions is equi ed in o de o use he app. Keywo ds: C ea i e w i ing, Web app, Reac JS, NodeJS, Exp essJS, Ja asc ip , Axios, W i ing, Challenge, SQL. i Sob e T EF LO NX Te lon X(cc0 1.0(documen ación) MIT(código))es una plan illa de L A T EX c eada po Da id Pacios Izquie do con echa de Ene o de 2018. Con a i- buciones de uso CC0. Es a plan illa ue desa ollada pa a acili a la c eación de documen ación p o esional pa a T abajos de Fin de G ado, T abajos de Fin de Más e o Doc o ados. La e sión usada es la X V:X O e lea V2 wi h XeLaTeX, ma gin 1in, bib Con ac o Au o : Da id Pacios Izquie o Co eo: [email p o ec ed] ASCII: [email p o ec ed] Despacho 110 - Facul ad de In o má ica ii Índice gene al Página 1. In oducción 1 1.1. Mo i ación .................................. 1 1.2. Obje i os ................................... 1 1.3. Me odología.................................. 2 1.4. A edelaaplicación ............................. 2 1.5. Es uc u a de la memo ia . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.6. Reposi o io .................................. 3 2. In oduc ion 4 2.1. Mo i a ion................................... 4 2.2. Objec i es................................... 4 2.3. Me hodology ................................. 5 2.4. A used on he pla o m . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.5. Documen S uc u e ............................. 5 2.6. Reposi o y................................... 6 3. Tecnologías 7 3.1. Se ido Node.js ............................... 7 3.2. Clien eReac JS................................ 7 3.3. Basesdeda os ................................ 8 3.3.1. XAMPP................................ 8 3.3.2. MySQL ................................ 8 3.4. Ges ióndep oyec os ............................. 8 3.4.1. T ello ................................. 8 3.4.2. GoogleD i e ............................. 9 3.5. Con olde e siones ............................. 9 3.5.1. Gi hub................................. 9 3.5.2. Gi ................................... 9 3.5.3. Gi k aken............................... 9 3.6. P o o ipo Balsamiq Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.7. Comunicación Google Mee . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.8. Memo iaSha ela ex ............................. 10 3.9. Biblio ecas................................... 10 3.9.1. Mul e ................................. 10 3.9.2. Reac D a Wysiwyg . . . . . . . . . . . . . . . . . . . . . . . . 10 3.9.3. Axios ................................. 10 3.10.Diseñoweb .................................. 10 iii C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 3.10.1.CSS .................................. 11 3.10.2. Reac -Boo s ap . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 4. A qui ec u a 12 4.1. Pa óndediseño ............................... 12 4.2. Es uc u a de la A qui ec u a de la aplicación . . . . . . . . . . . . . . . 13 4.2.1. Backend................................ 13 4.2.2. F on end ............................... 13 4.3. Basededa os................................. 14 4.4. Au en icación basada en okens . . . . . . . . . . . . . . . . . . . . . . . 14 4.4.1. Funcionamien o del Token JWT en la aplicación . . . . . . . . . 15 4.5. Funcionalidades P incipales . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.5.1. Usua ios................................ 15 4.5.2. Desa íos................................ 16 4.5.3. Esc i os ................................ 16 4.5.4. G upos ................................ 17 4.5.5. Equipos................................ 17 4.5.6. Mensaje ía .............................. 18 4.6. P o o ipo ................................... 18 5. Modelo de da os 20 5.1. Modelo en idad- elación . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.2. Basededa osSQL.............................. 22 5.2.1. Usua io ................................ 23 5.2.2. G upo................................. 23 5.2.3. Desa ío ................................ 24 5.2.4. Esc i o................................. 24 5.2.5. Equipo ................................ 25 5.2.6. Ca ego ía ............................... 26 5.2.7. Equipoes udian e . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 5.2.8. G upoes udian e . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 5.2.9. Mensaje ía .............................. 26 5.2.10. Mul imediadesa ío . . . . . . . . . . . . . . . . . . . . . . . . . . 27 5.2.11. Mul imediadesa ío . . . . . . . . . . . . . . . . . . . . . . . . . . 27 6. Guía de uso 29 6.1. Gene al .................................... 29 6.1.1. Módulo inicia y egis a usua io . . . . . . . . . . . . . . . . . . 29 6.1.2. Módulo pe il del usua io . . . . . . . . . . . . . . . . . . . . . . 31 6.1.3. Módulo modi ica da os . . . . . . . . . . . . . . . . . . . . . . . 31 6.1.4. Módulo able o............................ 32 6.1.5. Módulo ale as sob e e o es . . . . . . . . . . . . . . . . . . . . . 33 6.2. Usua iop o eso ............................... 34 6.2.1. Módulo g upos p o eso . . . . . . . . . . . . . . . . . . . . . . . 34 6.2.2. Módulo es udian es . . . . . . . . . . . . . . . . . . . . . . . . . . 36 6.2.3. Módulo pe il del es udian e . . . . . . . . . . . . . . . . . . . . . 37 6.2.4. Módulo solici an es . . . . . . . . . . . . . . . . . . . . . . . . . . 39 6.2.5. Módulo c ea g upo . . . . . . . . . . . . . . . . . . . . . . . . . 40 6.2.6. Módulo compone y edi a un desa ío . . . . . . . . . . . . . . . . 40 ix C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 1.5. Es uc u a de la memo ia Es e documen o se compone de los siguien es apa ados: En el capí ulo 2 se ecoge la e sión en inglés de es e capí ulo. En el capí ulo 3 se exponen las ecnologías empleadas pa a la ealización de C eac- i a. En el capí ulo 4 se explica la a qui ec u a escogida pa a da o ma a la aplicación, así como un p ime p o o ipo y sus equisi os. En el capí ulo 5 se desa olla la capa de in eg ación de la pla a o ma, en ando en de alle en la es uc u a y qué u ilidad iene cada en idad del modelo de da os. En el capí ulo 6 se incluye una guía que explica paso po paso cómo in e ac ua con C eac i a. En el capí ulo 7 se ano an las di e en es apo aciones que ha hecho cada miemb o del equipo al p oyec o. En el capi ulo 8 se exponen los esul ados de una pues a en con ac o con u u os usua ios de la aplicación. En el capí ulo 9 se desc iben las conclusiones inales ob enidas as la ealización de es e abajo, así como las posibles nue as uncionalidades que se pod ían p opone en el u u o pa a C eac i a. En el capí ulo 10 se ecoge la e sión en inglés del capí ulo 9, conclusiones y abajo u u o. En el apa ado A del anexo, el glosa io, se encuen a una pequeña lis a de é - minos donde se de inen a ios concep os elacionados con el uncionamien o de la aplicación. 1.6. Reposi o io EL código de la C eac i aes á disponible en el siguien e eposi o io: h ps://gi hub.com/ GenesisDuque/TFG-Esc i u aC ea i a.gi 3 Capí ulo 2 In oduc ion This chap e de ails he objec i es o he app, as well as he mo i a ion behind i s de e- lopmen . 2.1. Mo i a ion C ea i e w i ing has adicionally used pen and pape as i s main pla o m o i s ac i- i y. E en hough hese mediums p o ide ce ain eedomm, hey also come wi h se e al impo an inco eniences when aced agains digi al mediums, like lack o in e ac i i y o he need o a dedica ed ime and en i onmen in which he ac o w i ing akes pla- ce. On he o he hand, al hough some digi al c ea i e w i ing ools do exis , mos o hem limi he w i e ’s c ea i i y by hei lack o accesibili y o poo o ma op ions. Bo h mediums— adi ional and digi al—ha e shown ha hey lack o a inspi a ional componen ha pushes he w i e o c ea e. Because o his, he C eac i a app has been de eloped wi h he colabo a ion o s a om he Facul ad de Ciencias de la In o mación a he Uni e sidad Complu ense de Mad id, wi h he goal o p o iding a pla o m ha suppo s c ea i i y by accep ing bo h ex and media submissions. Teache s can in e ac wi h s uden s by challenging hem o c ea e new pieces. Gi en he app na u e as a web pla o m i can be accessed by any de ice wi h access o he In e ne , aking ad an age o he p e alence o he use o he sma phone. This ool allows eache s o gi e eedback o hei s uden ’s c ea ions. 2.2. Objec i es The main goal o his p ojec is o c ea e a mee ing poin whe e eache s can inspi e s uden c ea i i y h ough challenges o di e en hemes. To c ea e a space whe e s uden s can c ea e by coope a ing. To allow he use o media in o de o u he suppo his ac i i y. To omen s uden inspi a ion ia eache made challenges. To make con en c ea ion mo e accessible and com o able. 4 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM To ease use o ganiza ion as allowing eache s c ea e g oups o s uden s wi h simila c ea i e as es. 2.3. Me hodology The agile me hodology Sc umban has been chosen o his p oyec because i p o ides lexibili y while planning asks as well as e iciency in hei handling. This me hodology p o ides anspa ency as i keeps ongoing asks isible and gi es eedom on how hey ae comple ed. Because o his each membe in he de elopmen eam can choose which asks can hey wo k on om he a ailable ones, as well as moni o hei p og ess by accesing a pla o m ha so s hese asks by hei comple ion s a us. A he beggining he e was a mee ing held e e y i een days wi h he pu pose o ob aining he p ojec equisi es. This was made h ough he c ea ion o use s o ies ha a e collec ed wi hin he P oduc Backlog. THe esul ing eamwo k has consis ed in se e al small i e a ions ha we e o ganized h ough a boa d c ea ed using he web ool T ello ha man ained he p og ess o he wo k low using ags o ma k each ask p og ess (WIP/Wo k in p og ess) ha esul ed in di iding he boa d in h ee sec ions; To Do,Doing, and Done, keeping a maximum numbe o asks in each ca ego y ha made impossible o c ea e a new ask un il hose in de elopmen we e closed. Mee ings we e held each Tuesday. In hese mee ings new unc ionali ies om he cu en i e a ion we e p esen ed, as well as planning which use s o ies and asks would be wo ked on nex . 2.4. A used on he pla o m All isual asse s ha e been de eloped in exclusi e o he use in he pla o m by he eam membe s and hei collabo a o s. 2.5. Documen S uc u e The es o he documen is o ganized as ollows: Chap e 3 exposes he echnologies used in he de elopmen o C eac i a. Chap e 4 explains he pla o m s uc u e as well as i s i s p o o ype and equi- emen s. Chap e 5 explains in de ail he app da a s uc u e, as well as how each o i s pa s wo k wi hin he pla o m. Chap e 6 includes a use guide o C eac i a. 5 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Chap e 7 lis s he di e en addi ions o he p ojec made by each o he eam membe s. Chap e 8 shows he esul s o a mee ing wi h u u e use s o he app. Chap e 9 desc ibes he concluding ema ks on he de elopmen o he pla o m, as well as he ways ha C eac i a could be expanded. Chap e 10 holds an english ansla ion o Chap e 9, concluding ema ks and u u e wo k. Appendix A o he annexed documen s, he glossa y, holds a sho lis o e ms ela ed o he inne wo kings o he app as well as hei de ini ions. 2.6. Reposi o y C eac i a´s code is a ailable in he ollowing eposi o y: h ps://gi hub.com/GenesisDuque/ TFG-Esc i u aC ea i a.gi 6 Capí ulo 3 Tecnologías En es a sección p esen amos las ecnologías y he amien as u ilizadas pa a el desa ollo del p oyec o. 3.1. Se ido Node.js Node.JS [1] es un en o no de desa ollo mul ipla a o ma pa a Ja aSc ip de código abie o di igido p incipalmen e a se ido es web. Al a a se el p oyec o de una aplicación web se ha op ado po es a ecnología pa a la implemen ación del se ido . Se ha elegido es a ecnología po que pe mi e maneja a ios e en os y al o á ico de usua ios como p o eso es y es udian es. Asimismo, sopo a nume osas conexiones con- cu en es, pe mi iendo disminui el cos e de in aes uc u a si en un u u o se decidiese con inua con el p oyec o con un en oque más di igido al negocio. O as de las azones es la e iciencia que b inda en iempo eal de uso de da os; las ope acio- nes de en ada/salida son sin bloqueo cuando un se ido web hace una pe ición y espe a una espues a, ambién po que es á o ien ado a e en os asínc onos, y al es a basado en e en os y sin bloqueos hace que sea li iano, e icien e y posea un g an endimien o. 3.2. Clien e Reac JS Reac JS [1] es un amewo k basado en Ja aSc ip que pe mi e c ea in e aces de usua- io. Es a ecnología se ha seleccionado en la implemen ación del lado del clien e po muchas azones, una de ellas es el buen endimien o que p opo ciona al ejecu a la aplicación. Al usa i ual DOM, pe mi e cambia pa es de la in e az sin ende iza oda la aplicación en compa ación de o as aplicaciones web, al es a inculada una componen e a una u l no hay necesidad de eca ga la página, siendo las componen es las que se eca gan, es o hace que la in e acción con la aplicación esul e más dinámica. O a azón es la sepa ación comple a en e el lado del se ido y el lado del clien e, al ene lo sepa ado nos b inda la posibilidad de pode abaja en equipo, pe mi e di idi 7 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM el abajo, como ene pe sonas que abajan en el se ido y o os en el clien e. O o mo i o es po que es á o ien ado a componen es, es modula median e componen es, nos pe mi e eu iliza código, cada pa e de la página se puede di idi en componen es, e i ando duplica código innecesa iamen e. 3.3. Bases de da os Pa a la base de da os se han empleado las siguien es he amien as. 3.3.1. XAMPP Como se ido web se ha u ilizado XAMPP [2], que incluye MySQL[3] pa a la ges ión de la base de da os, se ha encon ado ideal po que ha pe mi ido abaja de o ma ápida desde un p ime momen o sin eque i iempo en su ejecución o en con igu aciones a compa ación de o os se ido es web. Es un se ido independien e de pla a o ma de código lib e, es g a ui o e incluye bases de da os MySQL. 3.3.2. MySQL MySQL[3] es un ges o de bases de da os que habi ualmen e iene in eg ado con se ido es web, compo ándose como un sis ema elacional que gua da da os en ablas sepa adas, es deci , abaja como un modelo clien e-se ido , almacenando un conjun o de da os que son o ganizados en o ma de ablas y cada una de es as ablas es án elacionadas en e si. 3.4. Ges ión de p oyec os Pa a la o ganización del equipo de abajo se han empleado las siguien es he amien- as. 3.4.1. T ello Como ges o de p oyec os en línea se ha usado T ello [4]. Se ha conside ado que es a he amien a se adecúa a la me odología empleada Sc umban. Es e ges o de p oyec os posee un sis ema de a je as que ha pe mi ido la ep esen ación de los a e ac os de la me odología ágil como son P oduc Backlog,Sp in Backlog, en e o os. O o de los usos ha sido pa a la o ganización de a eas, lis as, e en os, y un egis o de ac i idades. Todo lo p opo cionado po es a he amien a ha sido de g an u ilidad pa a pone en p ác ica la me odología ágil Sc umban. 8 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 3.4.2. Google D i e Como se icio de alojamien o de a chi os se ha op ado po Google d i e al es a odo el equipo más amilia izado con la he amien a, se ha u ilizado pa a aloja iche os co- mo documen os de in es igación de alguna ecnología nue a, pa a la o ganización de la memo ia, pa a los esquemas de ep esen ación de la base de da os y la p esen ación del p oyec o,mockups en e o os. 3.5. Con ol de e siones Pa a la ges ión del p oyec o se han empleado las siguien es he amien as. 3.5.1. Gi hub Gi Hub [5] se ha empleado como eposi o io emo o pa a la ges ión del p oyec o, usa es a he amien a nos ha pe mi ido abaja de o ma colabo a i a, median e el seguimien o y compa ición de un eposi o io de e siones en común. 3.5.2. Gi Gi [6] es un sis ema de con ol de e siones de código abie o y g a ui o, que ha sido de u ilidad pa a adminis a y ealiza un seguimien o del his o ial de código uen e, egis ando cambios ealizados en un a chi o o conjun os de a chi os en el p oyec o, y la posibilidad de pode e isa o es au a e siones an e io es. 3.5.3. Gi k aken Gi k aken [7] es una in e az g á ica mul ipla a o ma pa a Gi , que ha pe mi ido hace odas las ope aciones de ges ión del con ol de e siones desde una aplicación de esc i o- io. 3.6. P o o ipo Balsamiq Cloud Balsamiq Cloud [8] es una he amien a de diseño de in e az de usua io u ilizado pa a c ea p o o ipos o diseños pa a una aplicación web, se ha empleado en la elabo ación del p ime diseño de la aplicación p esen ada al clien e, y que ha ayudado pa a en ende de o ma más de allada los equisi os del clien e. 9 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 3.7. Comunicación Google Mee Google Mee es una aplicación o se icio de comunicación, se ha u ilizado es a he amien a pa a las euniones de equipo y p esen aciones del p oyec o al clien e. 3.8. Memo ia Sha ela ex Sha eLa ex es un edi o en linea de Lá ex que pe mi e abaja de o ma colabo a i a y sido empleado pa a la elabo ación de la memo ia. 3.9. Biblio ecas Aquí se p esen an las biblio ecas empleadas en la aplicación. 3.9.1. Mul e Mul e [9] es un middlewa e pa a Exp ess y Node.js, es un módulo empleado en el lado del se ido , su uso es la ges ión de iche os mul imedia de desa íos y esc i os. Cuando un usua io de la aplicación (p o eso o es udian e), ag ega iche os mul imedia a un desa ío o a un esc i o, se suben a un di ec o io ./public/mul imedia del se ido . 3.9.2. Reac D a Wysiwyg Reac D a Wysiwyg [10] es una biblio eca de Reac Js empleado pa a la c eación de un edi o de ex o cuya inalidad es elabo a ex os na a i os en los desa íos y esc i os. Es e edi o pe mi e con ola la apa iencia del ex o y desa olla una amplia gama de composición de ex o en iquecido que an desde es ilos de ex os básicos has a unciones más complejas. 3.9.3. Axios Axios [11] es una biblio eca de Ja asc ip que pe mi e ealiza pe iciones HTTP a un se ido y ealiza ope aciones CRUD, se ha u ilizado en el lado del clien e pa a en ia pe iciones desde el na egado al se ido . 3.10. Diseño web Los siguien es ins umen os son he amien as, lenguajes y biblio ecas pa a el diseño g á ico, es uc u ación y ag egación de componen es isuales. 10 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 3.10.1. CSS Es una hoja de es ilos en cascada aplicada en iche os de ex ensión HTML, a ec ando a los obje os de inidos pa a mejo a la isualización y es ilo al como su colo o amaño. 3.10.2. Reac -Boo s ap Reac Boo s ap [12] es una he amien a de código abie o pa a la usabilidad en el diseño web a a és de la impo ación de plan illas o componen es basados en HTML yCSS, eemplazando el Boo s ap,ja asc ip y dependencias con JQUERY, lo que la con ie e en una buena biblio eca ex e na como opción a la ho a de desa olla las in e aces. 11 Capí ulo 4 A qui ec u a En es a sección se explica la a qui ec u a de la aplicación web, del pa ón de diseño empleado, bases de da os, uncionalidades, p o o ipo y guía de uso. 4.1. Pa ón de diseño El pa ón de diseño u ilizado en el p oyec o es el pa ón Modelo-Vis a-Con olado , se ha op ado po es e pa ón de diseño po que pe mi e que el p oyec o sea escalable, modula , y de ácil man enimien o, pe mi iendo la eu ilización de los componen es. O o mo i o es que p opo ciona una sepa ación cla a de donde iene que i cada ipo de lógica, sepa ando la aplicación en es componen es lógicos: modelo, is a y con olado . Capa del modelo: En la aplicación es la lógica de negocio en la aplicación, elacionando los da os que la aplicación a u iliza , como consul as,ac ualizaciones, c eación de da os y eliminación de la misma.El modelo no i ica los cambios de es ado pa a que la is a se ac ualice. Capa de la is a: La capa donde el usua io in e ac úa con la aplicación median e una in e az de usua io, en iando las pe iciones al con olado . Capa del con olado : Es la lógica de la aplicación, ecibe solici udes de la is a y ejecu a las acciones en el modelo. En el p oyec o la sepa ación se ealiza median e dos ca pe as se e yclien , donde el se ido con iene la capa del con olado y el modelo, mien as que el clien e con iene oda la la implemen ación de la in e az de la aplicación. Además se ha implemen ado una capa de se icio en el clien e, con la inalidad de acili a la lógica en e la is a y el dominio de la aplicación, y que es e dominio sea eu ilizado po múl iples is as, implemen ándose los se icios del es udian e, p o eso y usua io gene al. En el p oyec o an o los se icios del es udian e como del p o eso con iene las uncionalidades p opias según el ol, mien as que el se icio de usua io con iene las uncionalidades comunes en e el es udian e y el p o eso omando como ejemplo inicia sesión y egis o. 12 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Po lo an o, pa a mejo a nues o p ime p o o ipo se op a po diseña componen es isuales eu ilizables pa a odos oles de usua ios. A con inuación en ende si cada cambio o ag egación e a sa is ac o io y cómodo, y eo ganiza los elemen os p incipales median e cuad ículas pa a adap a se a di e en es pan allas. Figu a 4.2: C ea desa ío (p ime boce o) Figu a 4.3: Lis a es udian es (p ime boce o) 19 Capí ulo 5 Modelo de da os En es e capí ulo se de alla la es uc u a del modelo de da os que se emplea en la capa de in eg ación de la aplicación C eac i a. 5.1. Modelo en idad- elación En la igu a 5.1 se mues a el diag ama En idad Relación del modelo de da os de C eac- i a, mos ando las elaciones que exis en en e las di e en es en idades que lo o man y sus a ibu os. Figu a 5.1: Modelo en idad elación A con inuación, se desa olla el diag ama an e io así como las elaciones que ep esen a: Usua io: Consis e en los usua ios de la aplicación. Se di ide en es oles, iden i icados po el a ibu o “ ol”, siendo es os p o eso , es udian e y adminis ado . Es a en idad con iene da os pe sonales ales como nomb e, apellidos y co eo elec ónico usado 20 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM pa a el egis o, y de la misma o ma los a ibu os empleados pa a el uncionamien o de la aplicación, como la con aseña, el ol y la u a que di ige a la imagen de pe il del usua io. El co eo de egis o es único y no se puede c ea más de un usua io po di ección de co eo. El a ibu o “ac i o” pe mi e iden i ica si un usua io ha sido acep ado po un adminis ado y po an o, si se le pe mi e acceso a la pla a o ma. G upo: Es a en idad ecoge los da os de los g upos. C eados po los p o eso es, ag upan a di e en es es udian es dependiendo de sus in e eses c ea i os. Además de un iden i icado , cuen an con el iden i icado del p o eso que lo c eó, así como el nomb e del g upo y el campo ac i o, que iden i ica si el g upo es á aún en uso o no. Desa ío: Con iene oda la in o mación e e en e a los desa íos li e a ios. C eados po los p o eso es, pe enecen a un g upo conc e o. Pueden se accedidos po los es udian es, quienes pueden c ea esc i os pa a en en a se al e o p esen ado. Cuen an con su p opio iden i icado , así como el iden i icado del g upo al que pe enecen. Tienen la echa inicio y la echa del in del in e alo en el que el desa ío es á ac i o. Con ienen un í ulo, así como una desc ipción que de alla las no mas del e o y además si el desa ío es colabo a i o, es deci , si puede se en en ado po un equipo o po es udian es indi iduales. Especi ica la o ma de cali icación designada po el p o eso , que si e pa a ija el o ma o en el que se da á espues a a los esc i os de ese desa ío. Añade un iden i icado que indica si es isible y accesible o no. Esc i o: Son los ex os li e a ios c eados po los es udian es como con es ación a un desa ío. Con iene su p opio iden i icado , así como aquellos de su esc i o o equipo c eado , el g upo en el que ue c eado y el desa ío al que se en en a. Cuen a con un nomb e a modo de í ulo, así como el ex o en el que consis e el esc i o. Con iene la in o mación sob e si es colabo a i o o no. Añade ambién la pun uación o o gada po el p o eso , así como los posibles comen a ios que haya podido hace el mismo sob e el con enido del esc i o así como los da os sob e la úl ima echa de edición y de un iden i icado que indica si es ac i o y isible o no. Un es udian e o equipo solo puede c ea un esc i o po cada desa ío. Equipo: Fo mados po los es udian es, los equipos son o maciones que se en en an a desa íos colabo a i os, c eando esc i os en conjun o. Pe enecen a un único g upo y como al, solo pueden con ene es udian es de ese mismo g upo. Incluye un iden i icado uní oco, así como el iden i icado del g upo al que pe enecen y el iden i icado del c eado , o líde del equipo. Con iene ambién in o mación sob e el nomb e del equipo y de si se encuen a ac i o y u ilizable o desac i ado. Mensaje ía: Es a en idad ep esen a los mensajes que pueden en ia los es udian es. Su unción p incipal es la de asis i en la c eación de equipos colabo a i os e incluye un sis ema de in i aciones pa a el mismo. Mul imediadesa ío: Es a en idad iden i ica los enlaces a a chi os mul imedia que pe enecen a un desa ío. Los a chi os que son e e enciados po es os enlaces esiden en el almacenaje del se ido . Mul imediaesc i o: Es a en idad ep esen a los enlaces a a chi os mul imedia que pe enecen a un esc i o. Con iene una mane a de iden i ica el o den en el que es os a chi os se añaden pa a acili a la c eación de ob as que consis en en más de un a chi o, como las no elas isuales. 21 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM En e es as en idades exis en elaciones que ienen cie as limi aciones como pa e de su diseño: Un p o eso puede ges iona a ios g upos, pe o un g upo solo puede se ges ionado po un p o eso . Un p o eso puede ges iona múl iples desa íos, pe o un desa ío solo puede se ges ionado po un p o eso . Cada es udian e puede pe enece a a ios g upos y cada g upo puede con ene a a ios es udian es. Cada es udian e puede c ea a ios esc i os, pe o cada esc i o solo puede se c eado po un es udian e. Cada es udian e puede pe enece a más de un equipo y un equipo puede con ene más de un es udian e. Cada esc i o solo puede con es a a un desa ío. Cada desa ío puede se con es ado po múl iples esc i os. Va ios adminis ado es pueden ges iona a a ios usua ios y a ios usua ios pueden se ges ionados po a ios adminis ado es. Va ios p o eso es pueden ges iona a a ios es udian es y a ios es udian es pueden se ges ionados po a ios p o eso es. Un desa ío puede ene a ios a chi os mul imedia elacionados. Un a chi o mul imedia puede es a elacionado solo con un desa ío a la ez. Un esc i o puede ene a ios a chi os mul imedia elacionados. Un a chi o mul imedia puede es a elacionado solo con un esc i o a la ez. Un es udian e puede ene a ios mensajes a la ez. Cada mensaje solo es á elacionado con su ecep o y su emi en e. 5.2. Base de da os SQL Se ha empleado SQL pa a la c eación de la base de da os. Es e sis ema nos pe mi e c ea bases elacionales suje as a cie as no mas, así como c ea elaciones en e las di e en es ablas. Se pueden pone limi aciones a los a ibu os de las mismas, como es ablece los campos iden i icado es como únicos. SQL pe mi e ambién es ablece compo amien os au omá icos den o de la base de da os, po ejemplo, elimina odos los da os e e idos a un usua io si es e es eliminado, de mane a que no queda in o mación pe dida e inaccesible en la base de da os al ealiza ope aciones sob e la misma. De es a mane a ambién se pueden gene a es icciones, como de ec a au omá icamen e que no exis an epe iciones en campos únicos o incluso gene a iden i icado es nue os de o ma au omá ica al c ea una ila en una abla. El lenguaje ambién posibili a c ea ablas in e medias, es uc u as auxilia es que enca nan cie as elaciones en e ablas que engan a ibu os p opios. En la mayo pa e de las ablas se ha empleado un a ibu o llamado “ac i o” que ep esen a el es ado de un elemen o. Si se desea elimina un elemen o, en luga de bo a lo de la base de da os, se desac i a, haciendo que se le igno e po pa e de la lógica de 22 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM la aplicación, no obs an e, es a decisión se ha omado pa a ene una pe sis encia de los da os y que en ningún caso se pueda pe de in o mación aliosa. Se desa olla a con inuación la es uc u a de cada una de las ablas, así como la u ilidad de cada uno de sus a ibu os. 5.2.1. Usua io Es a en idad ep esen a a odos los usua ios egis ados. Es os ienen disponibles una se ie de unciones u o as dependiendo de su ol. Un usua io solo puede accede a la pla a o ma si ha sido acep ado en la aplicación. Es a abla con iene los siguien es a ibu os: id: Campo numé ico que iden i ica de mane a uní oca a un usua io. Se gene a au omá icamen e cuando se c ea el pe il y no puede habe dos usua ios con el mismo iden i icado . Es la cla e p ima ia de la en idad. co eo: Email p o is o a la ho a de c ea el pe il. Es único y no puede habe dos usua ios con el mismo co eo. Se emplea pa a inicia sesión como usua io y puede se u ilizado como cla e de búsqueda pa a p o eso es y adminis ado es. passwo d: Con aseña de la cuen a del usua io. Se encuen a enc ip ada pa a mayo segu idad. Se necesi a in oduci jun o con el co eo elec ónico pa a pode inicia sesión. nomb e: Nomb e del usua io. Puede habe más de un usua io con el mismo nomb e. En cie os lis ados puede usa se pa a il a los dis in os usua ios. apellidos: Apellidos del usua io. Puede habe más de un usua io con los mismos apellidos. En cie os lis ados pueden usa se pa a il a y busca en e los dis in os usua ios. ac i o: Campo que indica si un usua io es á acep ado en la pla a o ma o no. Si no lo es á, no pod á inicia sesión en la aplicación. Es e campo puede se manipulado po p o eso es y adminis ado es. ol: Es e campo si e pa a iden i ica qué p i ilegios iene un usua io. Puede designa a un usua io como es udian e, p o eso o adminis ado . u a: Con iene la u a de la imagen de pe il del usua io, que se gua da en el almacenamien o del se ido . 5.2.2. G upo Es a en idad ep esen a a los conjun os de es udian es o ganizados po p o eso es en o no al in e és en un ema en común. Cada g upo es c eado y ges ionado po un único p o eso , que puede añadi a es udian es al mismo. Una ez el g upo iene es udian es, el p o eso puede p opone desa íos exclusi amen e a los in eg an es de ese g upo. Los adminis ado es pueden manipula cualquie g upo sin impo a su c eado , así como los es udian es que pe enecen al mismo. Es a abla con iene los siguien es a ibu os: id: Es e campo iden i ica de o ma uní oca a cada g upo y se gene a au omá icamen e cuando se c ea un g upo nue o. No pueden exis i dos g upos con el mismo iden i icado . Es la cla e p ima ia de la en idad. 23 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM idp o eso : Iden i icado del p o eso que c eó el g upo. nomb e: Nomb e que iden i ica al g upo. Pueden exis i a ios g upos con el mismo nomb e. Puede se cambiado en cualquie momen o po el p o eso que lo o ganiza. ac i o: Es e campo iden i ica si el g upo sigue igen e o si ha sido desac i ado y po an o no puede u iliza se. 5.2.3. Desa ío Es a en idad ep esen a los e os que puede p opone un p o eso a los es udian es de un g upo. Su con enido puede se is o y edi ado po el p o eso que los c eó y solo puede se accedido po los es udian es del g upo al que pe enece. Es a abla con iene los siguien es a ibu os: id: Iden i icado uní oco empleado pa a disce ni en e desa íos. Dos desa íos no pueden ene el mismo iden i icado y es e se gene a au omá icamen e al c ea el desa ío en la base de da os. Es la cla e p ima ia de es a en idad. idG upo: Es el iden i icado del g upo al que pe enece. Un desa ío solo puede pe enece a un g upo. í ulo: Con iene el í ulo del e o. Va ios desa íos pueden ene el mismo í ulo. desc ipción: Tex o que con iene odas las pau as que han de segui se pa a en en a se al e o. Dos desa íos pueden ene la misma desc ipción. ipoCali icación: De ine el ipo de espues a que puede da el p o eso a la ho a de cali ica un esc i o que con es e al desa ío. Puede se numé ica o en o ma de comen a ios. idCa ego ía: Iden i icado de la ca ego ía a la que pe enece el desa ío. Las ca ego ías pe mi en sabe a qué géne o li e a io pe enece el es o y pueden ayuda a guia al es udian e a c ea un esc i o adecuado. colabo a i o: Es e a ibu o pe mi e sabe si un desa ío es colabo a i o y po an o puede se en en ado po equipos, o indi idual, y solo puede se en en ado po es udian es en soli a io. echaini: Con iene la echa de inicio del desa ío. Ayuda a e qué in e alo de iempo ha es ado abie o el desa ío a espues as. echa in: Con iene la echa de cie e del desa ío. una ez pasado el plazo de iempo, el desa ío se conside a ce ado. ac i o: Es a a iable indica si el desa ío es á ac i o y disponible, o desac i ado y po lo an o inaccesible. 5.2.4. Esc i o Es a en idad ep esen a los ex os li e a ios que pueden c ea los es udian es pa a en en a se a los desa íos p opues os po los p o eso es. Pueden se edi ados múl iples eces po 24 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM los es udian es. De la misma mane a, los p o eso es pueden e isa sus con enidos y da una espues a en o ma o de cali icaciones o comen a ios. Al igual de los desa íos, pueden se an o indi iduales, c eados po es udian es, o colec i os, c eados po equipos de es udian es. Es a abla con iene los siguien es a ibu os: id: Iden i icado uní oco de la en idad. Se gene a au omá icamen e al c ea un nue o esc i o en la base de da os. Dos esc i os no pueden ene el mismo iden i icado . Es la cla e p ima ia de la en idad. idG upo: Iden i icado del g upo al que pe enece el esc i o. Un esc i o solo puede pe enece a un g upo. idDesa ío: Iden i icado del desa ío al que con es a. Un esc i o solo puede en en a se a un desa ío y a la ez, un esc i o siemp e debe se c eado pa a un desa ío. idEsc i o : Iden i icado del es udian e que c eó el esc i o. Si se es ablece que es un esc i o colabo a i o, es e iden i icado ep esen a el del equipo que lo c eó. Un esc i o solo puede pe enece a un es udian e o equipo. nomb e: Tí ulo del esc i o. Puede habe múl iples esc i os con el mismo nomb e. Puede se usado pa a il a en búsquedas. ex o: Con enido del esc i o. Puede habe esc i os con el mismo ex o. pun uación: Cali icación o o gada po un p o eso sob e el esc i o. comen a io: Respues a y c í icas hechas po un p o eso que co ige el esc i o. colabo a i o: Es e a ibu o iden i ica si el esc i o pe enece a un desa ollo colabo a i o, y po an o pe enece a un equipo, o si es indi idual y pe enece a un es udian e en soli a io. inalizado: Es e a ibu o indica si el esc i o es á e minado y lis o pa a co egi . echa: Es e a ibu o indica la echa de ac ualización del esc i o. ac i o: Es e a ibu o indica si el esc i o desa ío es á ac i o y disponible, o desac i ado y po lo an o inaccesible. 5.2.5. Equipo Es a en idad ep esen a los equipos o ganizados y o mados po es udian es pa a en en a se a desa íos en un g upo dado. Cada es udian e sólo puede es a en un equipo de cada g upo y es e equipo siemp e ha de ene un líde . Si el líde del equipo desea abandona el equipo y aún quedan miemb os en él, debe elegi un suceso an es de abandona lo. Es a abla con iene los siguien es a ibu os: id: Iden i icado uní oco de la en idad. Se gene a de o ma au omá ica cuando un nue o equipo es c eado en la base de da os. Dos equipos no pueden ene el mismo iden i icado . Es la cla e p ima ia de la en idad. nomb e: Es el nomb e del equipo. Dos equipos pueden ene el mismo nomb e sin impo a el g upo al que pe enecen. ac i o: Es el a ibu o que ep esen a si un equipo es accesible y isible o no. 25 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM idC eado : Es el iden i icado del líde ac ual del equipo. Cada equipo solo puede ene un líde y siemp e ha de ene uno. Si el líde de un equipo desea abandona lo y quedan más miemb os en él, debe escoge se un nue o líde p ime o. idG upo: Es e a ibu o iden i ica al g upo al que pe enece el equipo. Un equipo solo puede pe enece a un g upo. 5.2.6. Ca ego ía Es a en idad ep esen a un enume ado de ca ego ías a las que puede pe enece un desa ío de mane a que pueda se clasi icado según géne o li e a io. Es a abla con iene los siguien es a ibu os: id: Iden i icado uní oco de la ca ego ía. No pueden exis i dos ca ego ías con el mismo nomb e. nomb e: Con iene el nomb e de la ca ego ía. 5.2.7. Equipoes udian e Es a en idad ep esen a la elación que exis e en e los es udian es y los equipos a los que pe enecen. Un es udian e solo puede o ma pa e de un equipo en cada g upo. Es a abla con iene los siguien es a ibu os: id: Iden i icado uní oco de elación. Es la cla e p ima ia de la en idad. idEquipo: Es e a ibu o con iene el iden i icado del equipo de la elación. idEs udian e: Es e a ibu o con iene el iden i icado del es udian e de la elación. 5.2.8. G upoes udian e Es a en idad ep esen a la elación que exis e en e los es udian es y los g upos a los que pe enecen. Los es udian es son añadidos a los g upos po los p o eso es o adminis ado es. Múl iples alumnos pueden o ma pa e de múl iples g upos. Es a abla con iene los siguien es a ibu os: id: Iden i icado uní oco de la elación. Es la cla e p ima ia de la en idad. idG upo: Es e a ibu o con iene el iden i icado del g upo de la elación. idEs udian e: Es e a ibu o con iene el iden i icado del es udian e de la elación. 5.2.9. Mensaje ía Es a en idad ep esen a la uncionalidad de los mensajes y los da os implíci os en ellos. Es os mensajes se emplean p incipalmen e en e es udian es pa a la o ganización de los equipos de mane a que o man un sis ema de in i aciones. Es a abla con iene los siguien es a ibu os: 26 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM id: Iden i icado uní oco de en idad. No puede habe dos mensajes con un mismo iden i icado . Es la cla e p ima ia de la en idad. idEmiso : Iden i icado del usua io emiso del mensaje. idRecep o : Iden i icado del usua io ecep o del mensaje. idC eado : Iden i icado del usua io c eado del g upo en caso de que el mensaje consis a en la in i ación a un equipo. mensaje: Es e a ibu o con iene el ex o del mensaje. Dos mensajes pueden ene el mismo mensaje. ipo: Es e campo conc e a si el mensaje es una in i ación o una no i icación gene al. echa: Es e campo con iene cuándo se en ió el mensaje. ac i o: Es e campo pe mi e sabe si el mensaje es isible o no. 5.2.10. Mul imediadesa ío Es a en idad ep esen a odos los a chi os mul imedia de los que dispone un desa ío. Puede exis i más de un solo a chi o po desa ío, pe o un a chi o solo puede pe enece a un desa ío a la ez. Es a abla con iene los siguien es a ibu os: id: Iden i icado uní oco de la en idad. No puede habe dos enlaces de mul imedia de un desa ío iguales. Es la cla e p ima ia de la en idad. idDesa ío: Iden i icado del desa ío al que pe enece es e a chi o mul imedia. Un a chi o solo puede pe enece a un desa ío cada ez. u a: Es e a ibu o con iene la di ección exac a del se ido donde se aloja el a chi o mul imedia. echa: Es e a ibu o con iene el momen o en el que ue c eada la asociación en e el a chi o y el desa ío. 5.2.11. Mul imediadesa ío Es a en idad ep esen a odos los a chi os mul imedia de los que dispone un esc i o. Puede exis i más de un solo a chi o po desa ío, pe o un a chi o solo puede pe enece a un esc i o a la ez. Se ha enido en cuen a que en el caso de la elabo ación de elemen os na a i os como las no elas isuales es impo an e man ene un o den en e los di e en es a chi os que pe enezcan a un esc i o. Es a abla con iene los siguien es a ibu os: id: Iden i icado uní oco de la en idad. No puede habe dos enlaces de mul imedia de un esc i o iguales. Es la cla e p ima ia de la en idad. idEsc i o : Iden i icado del esc i o que ha c eado el esc i o al que pe enece el a chi o mul imedia. No puede es a elacionado con más de un esc i o . idDesa ío: Iden i icado del desa ío al que con es a el esc i o. Jun o con idEsc i o , pe mi e iden i ica el esc i o al que pe enece o mando una cla e compues a. 27 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM u a: Es e a ibu o con iene la di ección exac a del se ido donde se aloja el a chi o mul imedia. echa: Es e a ibu o con iene el momen o en el que ue c eada la asociación en e el a chi o y el esc i o. o den: Es e a ibu o numé ico pe mi e es ablece un o den en e los dis in os a chi os que pe enezcan a un mismo esc i o, que pe mi e c ea secuencias de o ma in encionada. Es a uncionalidad es muy ú il a la ho a de c ea no elas isuales o dis in as iñe as elacionadas de o ma cohesi a. 28 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM (paso 2 en la igu a 6.12). Además se puede obse a un bo ón “C ea desa io” en la pa e supe io de echa de la pes aña (paso 3 en la igu a 6.12), que al se pulsado nos pe mi e c ea un nue o desa ío. Figu a 6.12: Desa íos de un g upo Esc i os: Al selecciona la pes aña “Esc i os” (paso 1 en la igu a 6.13), el p o eso puede elegi un desa ío (paso 2 en la igu a 6.13) desde el cual se il a á una lis a con odos los esc i os ealizados po los es udian es pa a dicho g upo. Si el p o eso desea ag ega comen a ios de co ección an es de la echa in del desa ío puede acciona el bo ón “Edi a Esc i o” (paso 3 en la igu a 6.13), y luego se edi igido a la en ana de edición. Figu a 6.13: Esc i os de un g upo Equipos: Al selecciona la pes aña “Equipos” (paso 1 en la igu a 6.14) se lis a los equipos del g upo elegido, acili ando la búsqueda a a és de un il o (paso 2 en la igu a 6.14). El bo ón “Ve equipo” una ez accionado edi igi á a una nue a en ana con la in o mación y de alles del equipo (paso 3 en la igu a 6.14). 35 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.14: Equipos de un g upo Es udian es: Al selecciona la pes aña “Es udian es” (paso 1 en la igu a 6.15) se lis a los es udian es del g upo, log ándose il a una búsqueda po el nomb e o co eo de los es udian es (paso 2 en la igu a 6.15). El bo ón de “Ve pe il” (paso 3 en la igu a 6.15) una ez accionado edi igi á a una nue a en ana del pe il del es udian e seleccionado. Figu a 6.15: Lis a de es udian es 6.2.2. Módulo es udian es Desde es a sección se mues a una lis a con odos los es udian es dados de al a en la pla a o ma (paso 1 en la igu a 6.51). La búsqueda de un de e minado es udian e puede se lige a a a és del il o ag egado, ya sea po nomb e o co eo elec ónico (paso 2 en la igu a 6.51). Además, con a á con la opción “Ve pe il”, un enlace el cual edi igi á a la página de “pe il del es udian e” ( e igu a 6.17 ) 36 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.16: Lis a de es udian es 6.2.3. Módulo pe il del es udian e Sob e es a is a el p o eso iene dos pes añas con las siguien es uncionalidades: Da os: Al pulsa en es a pes aña, igu a 6.17 (paso 1), se mues an los da os del es udian e seleccionado. Figu a 6.17: Pe il del Es udian e Luego, desplazando la página se encuen a la opción de “In i a a un g upo”, donde el p o eso puede in i a a dicho es udian e a cualquie a de sus g upos seleccionando uno de ellos, e igu a 6.18 (paso 2). 37 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.18: Pe il del Es udian e A con inuación, o a de las opciones es “Expulsa del g upo”, cuya acción del p o eso es selecciona uno de los g upos y pulsa “Expulsa ” como se puede e en la igu a 6.19 (paso 3). Figu a 6.19: Pe il del Es udian e Esc i os: Es a pes aña as se seleccionada (paso 1 y 3 en la igu a 6.20) se mues an unas a je as las cuales con ienen con el nomb e del desa ío y del esc i o, odas ellas co espondien e al es udian e elegido (paso 2 en la igu a 6.20). Pueden se il adas po el nomb e del desa ío o po í ulo del esc i o (paso 2 en la igu a 6.20)y al pulsa sob e ellas nos lle a a la en ana de “Edi a esc i o” como se mues a en la igu a 6.26 38 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.20: Pe il del Es udian e 6.2.4. Módulo solici an es En es a sección se lis a a los es udian es que han decidido egis a se en la aplicación y cuyas cuen as es án a la espe a de se ac i adas po un p o eso . Si algún p o eso desea ac i a a uno de esos es udian es, solo iene que busca usando el il ado o no pa a acili a el e en o (pasos 1 y 2 en la igu a 6.51). Luego, as pulsa el bo ón “Ve pe il”, se á di igido a una nue a is a desde la cual puede acep a la solici ud al como se mues a en el paso 3 de la igu a 6.51. Figu a 6.21: Lis a de alumnado solici an e 39 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.22: Acep a solici ud 6.2.5. Módulo c ea g upo En es a en ana el p o eso puede c ea un g upo nue o, pa a lo cual debe ing esa un nomb e (paso 1 en la igu a 6.23), pulsa “Acep a ” y con i ma el e en o (paso 2 en la igu a 6.23). Figu a 6.23: C ea g upo 6.2.6. Módulo compone y edi a un desa ío En es e espacio el p o eso puede es ablece un nue o desa ío ing esando el nomb e, una desc ipción o los equisi os del e o, subi elemen os mul imedia, coloca ho a y echa in, elegi una ca ego ía y el ipo de cali icación. Una ez ellenado los campos en onces puede pulsa “En ia ” pa a ac i a el desa ío o “Cancela ” en caso con a io ( e igu as 6.24 y 6.25). 40 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.24: C ea un desa ío Figu a 6.25: Valida desa ío c eado Análogamen e, la is a de edi a un desa ío es simila a la de c ea desa ío con la di e encia de que se mues an los da os gua dados con an e io idad de su c eación o edición. 6.2.7. Módulo edi a un esc i o En p ime luga , el p o eso pod á obse a que en el espacio de “De alles del desa ío” se encuen an los equisi os y iche os mul imedia que él o ella han ag egado ( e igu a 6.26). 41 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.26: Edi a esc i o “De alles del desa ío” En segundo luga , el espacio “Esc i o del es udian e” es el ex o que el alumno o los alumnos han edi ado. Desde el cual el p o eso puede comen a , co egi , cali ica o da po e minado el esc i o ( e igu as 6.27 y 6.28). Figu a 6.27: Edi a esc i o “Esc i o del es udian e 1” Figu a 6.28: Edi a esc i o “Esc i o del es udian e 2” 42 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 6.2.8. Módulo in o mación del equipo El p o eso pod á e la in o mación de un equipo, al como sus miemb os (paso 1 en la igu a 6.29), sus esc i os (paso 2 en la igu a 6.29) de la misma o ma que se mues a en la igu a 6.20 y el pe il de cada miemb o (paso 3 en la igu a 6.29) como en las igu as 6.19 y 6.18. Figu a 6.29: in o mación del equipo 6.3. Usua io es udian e Es e ol pe mi e a los es udian es de la aplicación c ea los esc i os pa a los desa íos acep ados. También ienen la posibilidad de c ea y ges iona equipos de es udian es. 6.3.1. Módulo g upos es udian e Al inicia es a en ana el es udian e puede selecciona un g upo (paso 1 en la igu a 6.30) y una opción de ges ión sob e el g upo (paso 2 en la igu a 6.30), las cuales explica emos a con inuación. Figu a 6.30: Selección de g upos y ges ión. 43 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM C ea esc i o: Cuando el es udian e escoge la opción “C ea esc i o”, ca ga á un g upo de pes añas ales como: Desa íos: Se lis a los desa íos ac i os y disponibles que el es udian e puede acep a al pulsa “C ea esc i o”(paso 3 en la igu a 6.31). Si es e bo ón no es a disponible en onces el es udian e ya con iene un esc i o ac i o sob e dicho desa ío. Figu a 6.31: Lis ado de desa íos. Desa íos en equipo: Se lis a los desa íos ac i os y disponibles pa a los equipos que pueden se acep ados al pulsa “C ea esc i o” (paso 3 en la igu a 6.32). Si es e bo ón no es a disponible en onces el equipo del es udian e ya con iene un esc i o ac i o sob e dicho desa ío. Figu a 6.32: Lis ado de desa íos en equipo. Esc i os: Cuando el es udian e escoge la opción “Esc i os”, ca ga á un g upo de pes añas ales como: Esc i os: Se lis a los esc i os de cada desa ío acep ados po el es udian e de modo indi idual, desde el cual puede accede al edi o de ex o pulsando en “Edi a ” (paso 3). 44 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.45: Mensaje ía. 6.4. Usua io Adminis ado El ol de “Adminis ado ” pe mi e la adminis ación de oda la pla a o ma, desde la ges ión de g upos de los p o eso es has a la ges ión de solici udes de nue os usua ios. 6.4.1. Módulo g upos adminis ado Desde es a is a se enume a los g upos ac i os exis en es de los p o eso es, como se obse a en la igu a 6.46. En la pa e supe io se mues a un buscado pa a aplica un il ado en la búsqueda de g upos,jun o a la in o mación esumida de cada g upo se mues a el bo ón “Ve G upo”, que lle a a su is a de allada. Figu a 6.46: Ges iona g upos. 6.4.2. Módulo usua ios Es a en ana mues a la lis a de odos los usua ios egis ados ( e igu a 6.47). Pulsando el bo ón “Ve pe il” se accede a la ges ión del usua io seleccionado. 51 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.47: Lis a de usua ios dados de al a. 6.4.3. Módulo solici an es Es a is a ecopila una lis a de usua ios, an o p o eso es como alumnos, que han comple ado el egis o y es án a la espe a de su ap obación ( e igu a 6.48). Al accede desde el bo ón “Ve pe il” el adminis ado puede e la in o mación del nue o usua io y ap oba la solici ud de egis o ( e igu a 6.49). Figu a 6.48: Da os del g upo. 52 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.49: Da os del g upo. 6.4.4. Módulo in o mación del g upo En es a en ana podemos e la in o mación co espondien e a un g upo en las siguien es pes añas: Da os: Desde es e espacio el adminis ado puede enomb a y desac i a el g upo (paso 1), así como iden i ica al p o eso c eado del g upo y e su pe il (paso 2), obse e la igu a 6.50. Figu a 6.50: Da os del g upo. Es udian es: Se despliega el lis ado de los es udian es miemb os del g upo seleccionado, desde el cual podemos accede al pe il de cada uno pulsando “Ve pe il” (paso 1), obse e la igu a 6.51. 53 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.51: Lis ado de es udian es. 6.4.5. Módulo pe il del es udian e Da os: El adminis ado desde es a pes aña puede in i a (paso 1) o expulsa a un es udian e de un g upo (paso 2) y desac i a la cuen a (paso 3), e la igu a 6.53 . Figu a 6.52: Pe il del es udian e. Figu a 6.53: Ges iona pe il del es udian e. 54 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Esc i os: Sob e es a acción el adminis ado solo puede isualiza los esc i os que el es udian e es a ealizando o ha inalizado (paso 1), e la igu a 6.54 . Figu a 6.54: Esc i os del es udian e. 6.4.6. Módulo pe il del p o eso Da os: En es a pes aña se expone los da os del p o eso y el adminis ado pulsando “desac i a usua io” pod á inu iliza la cuen a del p o eso como se mues a en la igu a igu a 6.55. Figu a 6.55: Pe il del p o eso . G upos: Se lis an los g upos c eados po el p o eso como se puede e en la igu a 6.56, y el adminis ado pulsando “Ve g upo” se edi igi á a la igu a 6.50. 55 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 6.56: G upos del es udian e. 56 Capí ulo 7 Con ibuciones indi iduales En es e capi ulo cada uno de los in eg an es de C eac i a explica á sus con ibuciones al p oyec o, de o ma que se pueda alo a el abajo ealizado indi idualmen e.Cabe des aca que es e p oyec o du an e su desa ollo ue compues o equi a i amen e en e odos los miemb os des acando la buena comunicación, es ue zo y mo i ación. 7.1. Luis Albe o Ja amillo Pulido Mi con ibución en el p oyec o pa a el desa ollo de la aplicación se ha lle ado a cabo a a és de a ias e apas es uc u ándose de la siguien e o ma. 7.1.1. P ime a oma de con ac o con el clien e Nues a p ime a eunión se celeb ó el pasado mes de oc ub e ía Google Mee con nues o u o Ad ián Riesco y nues a “clien e” Co a Requena. En es a p ime a oma de con ac o se nos expuso de o ma más de allada la emá ica del abajo in de g ado y una idea ap oximada de la aplicación web a desa olla . Se me encomendó la a ea de man ene pe iódicamen e la comunicación po co eo pa a celeb a las euniones en e los p o eso es y mis compañe os. 7.1.2. E apa de In es igación Du an e es a e apa después de habe nos eunido en una p ime a ins ancia con el clien e, me p opuse a ealiza una labo de búsqueda de aplicaciones simila es como iDeas o W i ing,S o y Plane ,Li e au as en e o os, con la inalidad de mejo a la comp ensión sob e la aplicación. También en es a e apa colabo é en la elabo ación de las uncionalidades que a a eque i la aplicación y en la elección de las ecnologías que se an a u iliza en el p oyec o. Como no disponía de conocimien o p e io sob e algunas ecnologías como NodeJS y Reac JS, comencé a in es iga de dis in as uen es como ideo u o iales de you ube, web 57 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM o apun es que me p es a on mis compañe os. Es o me ayudó a adqui i un mayo g ado de conocimien o y ap i udes pa a el desa ollo del p oyec o. 7.1.3. Diseño del P o o ipo Pos e io men e decidimos elabo a el p o o ipo de la aplicación u ilizando la he amien a Balsamiq Cloud pa a isualiza esul ados p o isionales y pode mos a los al clien e, con el in de de e mina una mejo comp ensión de los eque imien os del clien e. Po ello nos epa imos las is as de los oles de la aplicación: adminis ado , p o eso y es udian e en e los es miemb os del equipo, enca gándome del diseño de los mockups de la is a del es udian e en el p o o ipo. 7.1.4. Ges ión del p oyec o An es de empeza el p oceso de desa ollo del p oyec o, e a necesa io o ganiza nues o en o no de abajo. En una p ime a ins ancia c eé un documen o Excel pa a o ganiza las a eas en el D i- e. Es e documen o nos se i ía pa a i apun ando los equisi os de la aplicación como his o ias de usua io. El p oblema que nos encon amos usando una hoja de cálculos de Excel, es la di icul ad de ges iona el p oyec o cuando exis en muchos equisi os, siendo di ícil hace un seguimien o de las a eas de mis compañe os, cuando exis en muchas his o ias de usua ios, esul ando la colabo ación imp oduc i a po la mala ges ión del iempo y del equipo. Po ello asladé a mi equipo la necesidad de una he amien a de ges ión de p oyec o como T ello. En es a pla a o ma de ges ión de p oyec os me enca gué de o ganiza odos los a e ac os de la me odología Sc umban como el P oduc Backlog ySp in Backlog, y u iliza el lími e de abajo en p og eso To Do,Doing,Done, pa a es a al an o de odo el lujo de abajo de las a eas de mis compañe os y hace una mejo ges ión del iempo y del equipo. 7.1.5. Colabo ación en el Reposi o io Todo el equipo podía abaja conjun amen e en un mismo p oyec o a a és de un eposi o io emo o común de Gi hub. Mi abajo en es a pa e se basa en la colabo ación de la ges ión del p oyec o median e el seguimien o del p oyec o, ealización de cambios, ac ualización o inco po ación de nue as uncionalidades en la aplicación. En un p ime momen o odas las ope aciones de ges ión del con ol de e siones se hacían a a és de la línea de comandos del Gi . Más adelan e mi compañe a Génesis nos sugi ió el uso de una aplicación clien e de Gi llamada Gi k aken, que nos pe mi ía hace odas las ges iones del p oyec o desde una in e az de clien e, haciendo que odo el p oceso de la ges ión del eposi o io esul e más sencillo. 58 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 7.1.6. Diseño de la Base de da os Colabo é en el diseño de la base de da os en la e apa inicial de desa ollo, diseño de la base de da os pa a cada uno de los oles, de inición de las ablas de la aplicación, elaciones en e ablas, e c. Du an e odo el p oceso de desa ollo de la aplicación a medida que se iba inco po ando nue as uncionalidades ag egué nue as ablas a la base de da os como equipos, mensaje ía, mul imedia de desa ío y mul imedia de esc i os. 7.1.7. Implemen ación Una ez de inido nues a o ganización de abajo, p ocedimos a la pa e de la implemen ación del p oyec o. Conseguí hace una p ime a e sión de conexión de la base de da os del se ido con el clien e y del inicio de sesión, siendo después mejo ada po mi compañe a Genesis, y ambién una e sión inicial de las is as del adminis ado , p o eso y es udian e. Después nos di idimos el abajo, en es a pa e me enca gue de oda la uncionalidad del es udian e y pa e de las uncionalidades del p o eso . Las uncionalidades que he implemen ado lo he es uc u ado en es secciones, unciones gene ales de la aplicación, unciones del ol del es udian e, y unciones del ol del p o eso . Funciones gene ales de la aplicación Las unciones gene ales de la aplicación he conside ado las uncionalidades comunes en ambos oles de p o eso es y es udian es. Edi o de ex o: Pe mi e al p o eso o es udian e esc ibi los ex os de los desa íos o esc i os en un edi o de ex o en iquecido, se ha dado la posibilidad de apo a a iedad de es ilos en iquecidos a sus ex os median e el acoplamien o de es e API a la aplicación. Calenda io: API u ilizada pa a que el p o eso pueda ag ega una echa de du ación al desa ío. Es o lo hace a a és de un selec o de echa y ho a, median e un widge de in e az g á ica de usua io. Regis o de his o ial de colabo ación del esc i o: T abajé en el desa ollo de una p ime a e sión de egis o median e Socke .io, que gua dase en un bo ado del esc i o, el his o ial de apo aciones de cada es udian e del equipo al hace un esc i o colabo a i o. Es a implemen ación no se e minó de desa olla , pe o se ha enido en cuen a como abajo u u o. Mul imedia en desa íos y esc i os: Los p o eso es o es udian es ienen la opción de apo a más ecu sos a sus desa íos o esc i os median e la inco po ación de con enido mul imedia como ídeos, iche os de audio e imágenes, o eliminación de los a chi os mul imedia en desa íos o esc i os. Almacenamien o mul imedia en desa íos y esc i os: Implemen é la uncionalidad de subi los con enidos mul imedia a un se ido web u ilizando una pla a o ma de 59 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM se icio de alojamien o en la nube Cloudina y, el incon enien e que enía es que e a de pago cuando excedías de un limi e de capacidad de alojamien o de a chi os en la pla a o ma, po eso decidimos que el almacenamien o mul imedia de los desa íos o esc i os uese en el se ido local. Después de ello me enca gué de la implemen ación de es a uncionalidad, donde cada p o eso o es udian e dispone de una ca pe a pe sonal en el se ido , en el cual cada desa ío o esc i o iene una ca pe a p opia donde se almacena el con enido mul imedia de sus desa íos o esc i os. También me ocupé de la implemen ación de la c eación de una ca pe a pe sonal del usua io donde se almacena la o o de pe il del p o eso o es udian e. Modales de con i mación y modales in o ma i os: Modales de con i mación y modales in o ma i os cuando un usua io ejecu a una acción en la pla a o ma. A isos: A isos en la pla a o ma cuando no exis en desa íos, g upos, esc i os, mensajes y equipos. Fo o de pe il: Subida y ac ualización de la o o de pe il del es udian e al se ido . Funciones del ol de Es udian e Es as son las uncionalidades implemen adas en el ol del es udian e. Lis ado de g upos: Pe mi e al es udian e lis a odos los g upos a los que pe enece. Lis ado de desa íos: Pe mi e al es udian e lis a los desa íos según el ipo de desa ío: indi iduales o colabo a i os. En la aplicación se puede accede de dos o mas, seleccionando un g upo y lis ando el desa ío del g upo del es udian e, y la o a o ma es lis a odos los desa íos de dis in os g upos. C eación de esc i os: Pe mi e al es udian e la c eación esc i os indi iduales o colabo a i os, median e el en ío y alidación de los da os del esc i o. En esc i os colabo a i os pe mi e que cualquie miemb o del equipo puede c ea un esc i o. Edición de esc i os: El es udian e puede edi a un esc i o indi idual o colabo a i o si dispone de un equipo, median e la ac ualización y alidación de odos los campos del esc i o. En esc i os colabo a i os pe mi e que odos los in eg an es del equipo puedan edi a un mismo esc i o. Lis ado de esc i os: El es udian e puede lis a odo ipo de esc i os ya sean indi iduales o colabo a i os. En la aplicación se puede accede de dos mane as, seleccionando un g upo, lis ando los esc i os con su co espondien e desa ío del g upo del es udian e, y la o a mane a es lis a odos los esc i os de dis in os g upos del es udian e. Lis ado de mensajes: Los es udian es ienen la opción de lis a odos los mensajes ecibidos en su bandeja. En ío de mensaje: En la aplicación exis en dos o mas de en ío de mensaje ía o solici udes, la p ime a o ma es cuando un es udian e sin equipo en ía una solici ud o mensaje a un p opie a io pa a uni se a un equipo, y la o a o ma es cuando un p opie a io 60 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 7.3.3. Mecanismos gene ales de la aplicación: Sis ema de il ado po búsqueda dinámica: Empleado en múl iples luga es de la aplicación, es a he amien a de búsqueda il a al in oduci una cla e de búsqueda al ins an e sin necesidad de pulsa un bo ón de busca . Pe mi e u iliza dis in os campos de los da os pa a il a la in o mación. No malización del sis ema de a je as en la is a: O dena los dis in os ipos de in o mación en dis in as a je as a las que se puede accede desde un índice supe io . Sis ema de a o de e o es: Se ha implemen ado un sis ema de edi ecciones que mues an cuándo ha habido un e o in e no en el se ido o si el usua io ha solici ado ecu sos inexis en es, asegu ando así que nunca pie da el con ol sob e el lujo de la aplicación. Sis ema de sus i ución de imágenes de pe il: Coloca una imagen po de ec o si un usua io no dispone de imagen de pe il en di e en es lis ados y is as de pe il. Sis ema de adap ación de en anas al ol: Algunas uncionalidades, como los lis ados emplean las mismas clases independien emen e de qué ol las acceda pa a mejo a su man enibilidad. Es e sis ema pe mi e a es as clases adap a se a las necesidades de cada ipo de usua io y mos a la in o mación más ele an e dependiendo de cuál sea el usua io conec ado. Es uc u ado y diseño del se ido de da os: Una sepa ación cla a en e los di e en es componen es del uncionamien o del se ido , de mane a que se man enga el encapsulamien o y se pueda iden i ica de una mane a cla a y es uc u ada cada una de las unciones del mismo. Sepa a las unciones que pe enecen a cada uno de los oles de los usua ios, las unciones empleadas en común y la uncionalidad de la au en icación e ing eso. 7.3.4. Apo aciones a la memo ia: La memo ia ha sido ealizada de o ma colabo a i a po los miemb os del equipo. Po lo an o, se mues an a con inuación los apa ados ealizados comple amen e po la pe sona o en los que haya con ibuido. Palab as cla e: Enume ado de palab as cla e pa a acili a la búsqueda y ca ego ización del p oyec o. In oducción: Realización y aducción del capí ulo en el que incluyen los apa ados de la mo i ación de la c eación del p oyec o y los obje i os que se pe siguen con su desa ollo. Resumen: C eación y aducción del capí ulo in oduc o io que da una b e e desc ipción del p oyec o de C eac i a. Modelo de da os: Desa olla el esquema del diseño de la in o mación empleada po la aplicación. Añade el modelo en idad- elación como una mane a de isualiza oda la es uc u a de un is azo, así como el desa ollo de la base de da os SQL, donde se de alla cada en idad que o ma pa e de la misma. 67 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Conclusiones y abajo u u o: C eación y aducción del capí ulo que con iene los pensamien os inales y e lexiones de C eac i a, así como las posibilidades de expandi la en el u u o. Glosa io: Es e apa ado de ine a ios concep os en los que se basa el uncionamien o de la aplicación. 7.3.5. C onología Du an e la época inicial del desa ollo, mien as plani icábamos cómo es uc u a la aplicación, p opuse emplea las ecnologías de NodeJS yExp essJS pa a c ea la pa e del backend de la aplicación, ya que son ecnologías que pueden se pueden adap a a di e sos sis emas de manejo de la is a. P o eí de ma e ial e in o mación al equipo sob e cómo emplea es as ecnologías según nues as necesidades en el p oyec o. Con ibuí en la ealización de mockups pa a gene a un p o o ipo de la pa e isual de la aplicación, p incipalmen e de la pa e de las en anas p o eso . O ganizé un espacio colabo a i o en Google D i e pa a que el equipo pudiese ene siemp e disponible un espacio donde compa i cualquie a chi o o diag ama que empleásemos du an e el desa ollo. Al desconoce g an pa e de cómo uncionaba Reac JS, es u e consul ando di e so ma e ial, en pa e p opo cionado po el equipo pa a ap ende sob e el mismo y ealicé un pequeño p oyec o de p ueba pa a e cómo empeza de ce o a usa la. De o ma simila es u e abajando sob e cómo emplea la he amien a de con ol de e siones Gi pa a pode abaja en ándem con el es o del equipo. Me enca gué de diseña la pa e del esquema de da os que se e ie e a los usua ios de ipo p o eso . Pa icipé en la sesión conjun a donde odo el equipo diseñó en de alle la implemen ación de la base de da os. Una ez log ados es os a ances en común, el equipo p ocedió a gene a la es uc u a básica sob e la que se basa C eac i a, y cuando ya es aba c eado el esquele o que conec a la pa e de la is a con el se ido de da os, se dis ibuye on las a eas en e los miemb os del equipo. Du an e es e desa ollo me enca gué de las pa es de la uncionalidad del adminis ado y del p o eso , así como algunas mejo as gene ales. Du an e la p epa ación de la p esen ación que se ealizó con el pe sonal de la Facul ad de Ciencias de la In o mación, c eé la encues a que se epa ió a los asis en es y con ibuí a la p esen ación de diaposi i as ag egando la pa e de los p o eso es, ambién exponiéndola du an e la eunión. Po úl imo colabo é a ealiza y aduci di e sos capí ulos de la documen ación del p oyec o. 68 Capí ulo 8 E aluación de la encues a ealizada sob e C eac i a Una ez ealizadas las uncionalidades más impo an es de nues a aplicación y mejo as en la calidad de es ilo y diseño, se decidió po p esen a una demos ación de la pla a o ma a un g upo de dieciséis p o eso es de la Uni e sidad Complu ense de Mad id, el más e de esc i u a c ea i a. El obje i o al hace es a p esen ación[13] e a ecoge di e sas opiniones si C eac i a cumplía la expec a i as de uno de los usua ios u u os a u iliza la aplicación. Al inaliza la exposición se dio inicio a una onda de p egun as donde la mayo ía de los p o eso es se ie on in e esados p onunciando cues iones y de las cuales su gie on ideas de implemen a a u u o. Si bien, dada po e minada la p esen ación se en ía una in i ación a los co eos de odos los pa icipan es pa a ealiza una encues a sob e C eac i a. La siguien e in o mación ep esen a las p egun as y las espues as de la encues a [14]. Respues a 1 Respec o a la noción sob e los obje i os de C eac i a el 100 % de los encues ados opina on que ha sido explici o la desc ipción de las uncionalidades, o o gando la máxima no a con un “Muy de acue do” ( e el igu a 8.1) . Figu a 8.1: Resolución sob e la noción explici a de C eac i a . 69 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Respues a 2 De acue do a los da os ob enidos el 50 % de los encues ados opina on que ha sido muy sencillo e in ui i o, o o gando la máxima un “Muy de acue do”, mien as que el o o 50 % le ha asignado con un “De acue do” ( e el g á ico 8.2). Figu a 8.2: Respues as sob e la expe iencia del usua io. Respues a 3 Las opiniones ob enidas ace ca de la solici ud de acceso de los es udian es sea con olada po los p o eso es, el 100 % de los encues ados a i man un “sí” sob e man ene dichas es icciones en la aplicación ( e el g á ico 8.3). Figu a 8.3: Resolución sob e el con ol de acceso a los es udian es. Respues a 4 Respec o en ag ega uncionalidades de los encues ados, en es e caso los p o eso es echa an en al a, el 100 % con es a on con una opinión pe sonal sob e lo que a ellos les gus a ía e en la aplicación, éase en el g á ico 8.4 70 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM Figu a 8.4: Ag egación de ideas ex as pa a C eac i a . Respues a 5 Es a úl ima cues ión de la encues a e a de o ma opcional, donde se pedía a los encues ados conoce sus á eas de abajo, ya que, con es os da os se consegui ía analiza el pe il de los usua ios C eac i a, uno de los encues ados pa icipan es espondió a es a p egun a como podemos obse a en el g á ico 8.5 Figu a 8.5: Pe il de usua ios pa a C eac i a . En conclusión, la can idad de los da os no han sido su icien es pa a ealiza un análisis deduc i o de cada una de las p egun as y pode con as a en de alle los po cen ajes debido a que el alcance de los p o eso es encues ados solo ue on dos de dieciséis pa icipan es en la p esen ación de la aplicación. Aún así, du an e la p esen ación se ecibie on una se ie de opiniones muy posi i as po pa e de a ios de los asis en es, exp esando que deseaban emplea es a he amien a en su labo educa i a. 71 Capí ulo 9 Conclusiones y abajo u u o Es e capí ulo con iene las e lexiones inales as el abajo ealizado y las posibilidades que iene de se expandido en el u u o. 9.1. Conclusiones En es e p oyec o se ha desa ollado una pla a o ma web pa a p omo e la esc i u a c ea i a. Pa a ello se ha o ganizado la comunidad de usua ios en p o eso es que p oponen desa íos y alumnos que siguen es as pau as pa a c ea nue as ob as li e a ias. Se dispone de un sis ema de g upos pa a pode o ganiza a los usua ios según sus in e eses a la ho a de esc ibi , así como un sis ema pa a apo a comen a ios y suge encias sob e los esc i os exis en es. De igual mane a se ha dado una mayo libe ad c ea i a al usua io desa ollando un sis ema que pe mi a acep a a chi os mul imedia como audio o ídeo pa a complemen a sus esc i os. Se han empleado nue as ecnologías pa a el desa ollo de una in e az sencilla y dinámica que sea cómoda de u iliza y, al mismo iempo, no di icul e la a ea c ea i a. En consecuencia, el equipo ha in es igado ecnologías web como Reac JS pa a su uso en la pa e isual del p oyec o, así como el uso de NodeJS yExp essJS pa a la implemen ación del se ido , es uc u ando el modelo de in eg ación con una base de da os elacional en SQL. Con o me el desa ollo ha ido a anzando, se ha expandido el p oyec o al in eg a di e sos componen es como ecnologías de au en icación y enc ip ado pa a aumen a la segu idad de la aplicación o biblio ecas como Ma e ialIU oReac Boo s ap pa a mejo a su aspec o isual. Se han empleado di e sas he amien as pa a ealiza el abajo en g upo de o ma emo a, se ha empleado Gi hub pa a man ene un con ol de e siones. Pa a ges iona el lujo del p oyec o se ha c eado un able o en T ello, donde se o ganizan las a eas y su es ado de desa ollo. Se ha man enido la comunicación median e euniones u ina ias empleando he amien as como Google Mee yDisco d. Al se C eac i auna pla a o ma ideada pa a que si a de complemen o a las clases de la Facul ad de Ciencias de la In o mación se ha o o gado el de echo de admisión de nue os es udian es a los usua ios que os en en el ol de p o eso es, pe mi iendo así man ene una comunidad c ea i a den o del en o no académico. 72 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 9.2. T abajo u u o C eac i a iene la in ención de se una pla a o ma i a usada pa a omen a la c ea i idad. Po an o exis en algunas unciones que pod ían añadi se a la misma pa a hace aún más comple a la expe iencia de usua io. Con es a in ención se man u o una eunión con miemb os de la comunidad educa i a de la Facul ad de Ciencias de la In o mación, buscando sus opiniones sob e la aplicación y u u as uncionalidades que pod ían añadi se. Las ideas p incipales sob e líneas de abajo u u as se ían las siguien es: Posibilidad de expo a los esc i os en o ma o PDF imp imible. Man ene un sis ema de e siones de los esc i os, pe mi iendo su lec u a y e isión. Es a unción ambién pe mi i ía al es udian e ol e a e siones an e io es pa a e oma su abajo desde o o pun o de is a. Posibilidad de que a ios es udian es abajen simul áneamen e sob e el mismo esc i o cuando es e sea colabo a i o. Inclusión de un sis ema de mensaje ía simul áneo pa a es as si uaciones. Posibilidad de que los p o eso es puedan inclui comen a ios sob e pa es espe- cí icas del ex o de un esc i o pa a da más de alle a sus opiniones y suge encias. Posibilidad de los es udian es a con es a dichos comen a ios. Un sis ema de plan illas pa a los p o eso es, de mane a que puedan o ganiza se desa íos simila es con una mayo comodidad. Posibilidad de c ea una biblio eca que ecoja los esc i os de los es udian es pa a consumo gene al de los usua ios. Ampliación del sis ema de mensaje ía pa a que los es udian es puedan solici a a los p o eso es se incluidos en sus g upos. Posibilidad de enlaza unos esc i os con o os, pe mi iendo así la c eación de sagas li e a ias y o os abajos elacionados. Ampliación simila del sis ema de desa íos pa a c ea una modalidad encadenada que pe mi a la c eación de esc i os sucesi os. 73 Capí ulo 10 Concluding ema ks and ongoing wo k This chap e con ains he inal hough s on he wo k done as well as he ways i could be expanded in he u u e. 10.1. Concluding ema ks This p ojec consis s in he de elopmen o an online pla o m ha suppo s c ea i e w i ing. In o de o achie e his goal, he pla o m’s use communi y has been spli be ween eache s ha c ea e li e a y challenges and s uden s ha ace hese challenges by making new a is ic wo k. A g oup sys em has been implemen ed ha so s use s based on hei in e es s as well as a sys em ha acili a es p o iding eedback on exis ing w i ings. A highe le el o c ea i e eedom has been g an ed o he use by adding a media s o age sys em ha allows he usage o images, audio, and ideo iles o complemen hei w i ings. The eam has u ilized new ecnologies in he c ea ion o a dynamic and simple in e ace ha is com o able o use and, a he same ime, does no hampe he c ea i e expe ience. Because o his, he eam has in es iga ed echologies like Reac JS o he isual pa o he p ojec , as well as NodeJS and Exp essJS in he se e implemen a ion, using a ela ional SQL da abase in o de o so he da a in as uc u e. As de elopmen on he p ojec ad anced, i was expanded by in eg a ing new componen s like au hen ica ion and enc yp ion echnologies, used o aise he pla o m secu i y, and lib a ies like Ma e ialIU and Reac Boo s ap, used o enhace he isuals aspec s o he app. As he eam has wo ked on he p ojec by emo e means, di e se ools like Gi hub ha e been used o e sion con ol. A T ello boa d has been used o keep he wo k low o ganized by so ing he di e en asks by hei le el o de elopmen . Online ools like Google Mee s and Disco d ha e been used o hos weekly mee ings. Since C eac i ais mean o use as a suppo ool on Facul ad de Ciencias de la In o mación´s cou ses, eache s ha e he igh o admi new s uden s on he pla o m, gi ing hem he ools o keep a c ea i e comuni y in a lea ning en i omen . 74 C eac i a: Applica ion o he p omo ion o C ea i e W i ing UCM 10.2. Fu u e wo k C eac i a has he goal o be a li e pla o m ha is used o omen c ea i i y. Because o his, he e a e some ea u es ha could be added o imp o e he use expe ience. Wi h his in mind he eam hos ed a mee ing wi h membe s o he educa i e communi y om he Facul ad de Ciencias de la In o mación in o de o ga he eedback on he app and possible u u e addi ions. The main lines o u u e wo k a e he ollowing: Possibili y o expo ing w i ings as p in able PDF iles. Keeping a e sion con ol sys em o w i ings, ha suppo s bo h eading and checking hem. This ea u e would allow s uden s o go back o p e ious wo k and esuming hei w i ing om a di e en poin o iew. Possibili y o s uden s wo king in andem on he same w i ing i i is collabo a i e. I could include a cha sys em suppo ing communica ion be ween w i e s. Possibili y o ache s pu ing commen s on speci ic pa s o he ex o a w i ing ha would le hem make mo e p ecise ema ks. Possibili y o he s uden s o answe hese commen s. A empla e sys em o eache s, ha could ease he c ea ion o simila challenges. Possibili y o c ea ing a lib a y ha houses all w i ings om s uden s o e e yone o enjoy. Expanding he messaging sys em in o de o allow s uden s o ask eache s o in ie hem o hei g oups. Possibili y o linking w i ings o one ano he , allowing he c ea ion o li e a y sagas as well as o he ela ed wo ks. Expanding he challenge sys em in he same manne in o de o c ea e a chain challenge mode ha enables he c ea ion o successi e w i ings. 75 Bibliog a ía [1] A. Nandaa, Beginning API De elopmen wi h Node. js. Pack Publishing, Limi ed, 2008. h ps://ebookcen al.p oques .com/lib/uni e sidadcomplu ense-ebooks/ eade .ac ion?docID=5477671. [2] A. F iends, “Documen a ion: Xampp.” h ps://www.apache iends.o g/es/ aq_ windows.h ml. [3] Y. L. S. J. S. M. K. G. Elizabe h Na amo e, Jason Ge ne , Beginning PHP5, Apache, and MySQL Web De elopmen . John Wiley Sons, Inco po a ed, 2005. h ps://ebookcen al.p oques .com/lib/uni e sidadcomplu ense-ebooks/ eade . ac ion?docID=225829. [4] R. Shah, “How o use ello.” h ps://blog. ello.com/ how- o-use- ello- o-w i e-a-book. [5] A. P. Umesh R Sha ma, Gi Hub Essen ials. Pack Publishing, Limi ed, 2018. h ps://ebookcen al.p oques .com/lib/uni e sidadcomplu ense-ebooks/ eade . ac ion?docID=5446049. [6] R. Somasunda am, Gi : Ve sion Con ol o E e yone. Pack Publishing, Limi ed, 2013. h ps://ebookcen al.p oques .com/lib/uni e sidadcomplu ense-ebooks/ eade .ac ion?docID=1119761&que y=. [7] S. G. Pé ez, “Con ol de e siones: Gi k aken.” h ps://medium.com/@se gupe6/ con ol-de- e siones-po -qu%C3%A9-gi k aken-ee1 30b4a18 . [8] B. Team, “Documen a ion: Balsamiq.” h ps://balsamiq.com/wi e ames/cloud/ docs/in o/. [9] D. Megida, “Uploading iles using node.js and mul e .” h ps://blog.log ocke .com/ uploading- iles-using-mul e -and-node-js/. [10] J. Pu i, “Reac d a wysiwyg.” h ps://jpu i.gi hub.io/ eac -d a -wysiwyg/#/ docs. [11] T. A. A. Re e ence, “Ma zab iskie.” h ps://axios-h p.com/docs/api_in o. [12] T. Reac , “Reac boo s ap.” h ps:// eac -boo s ap.gi hub.io/ge ing-s a ed/ in oduc ion/. [13] C eac i a, “P esen ación de c eac i a.” h ps://docs.google.com/p esen a ion/ d/1-zi Mi_NX-Z50iz3mSwgiauFPIXFYh6IDFujiLcg43o/edi #slide=id. gd448e9a636_0_49. 76