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