Implementación24 de abril de 2013Antonio Cañas Vargas, acanas@ugr.esCentro de Enseñanzas Virtuales de la Universidad de Gr...
¿Quiénes crean SWAD?Antonio Manuel Aguilera Malagón (SWADroid)Daniel J. Calandria Hernández (fotos, chat)Antonio Cañas Var...
13 años de SWADInicios: 1999-20031º PID: 2003-20042º PID: 2005-20063º PID: 2006-2008CEVUG: 2008...Libre: 2010...UNA: 2012...
Servidores2004-2006Pentium 4 HTRAM 2 GB2 HD 160 GB2007-2008Core 2 DuoRAM 4 GB2 HD 500 GB2009-2010Core 2 QuadRAM 4 GB2 HD 1...
SWAD, software libre● FLOSS (Free/Libre/Open Source Software)● Software con licencia copyleft que garanticederechos de uso...
SWAD, software librehttp://www.youtube.com/watch?v=tAql6_urM4I
SWAD, software libre21/01/2010
¿Por qué liberarlo?● Motivos éticos● Motivos prácticos● Necesidad decolaboradores● Mejora del código● Difusión
Pasos para liberar SWAD1. Escribir el código en inglés (100%)2. Independizarlo de la UGR (100%)3. Traducir los mensajes a ...
Programasswad A. CañasCGI: c; base de datos: mysqlprado (no liberado) A. Cañasc; base de datos: mysqlfotomaton D. J. Calan...
CGI+MySQL+XHTML+CSS+Ajax● Cada vez que un usuario pulsa en algunaopción, Apache llama a ejecutar el programacompilado swad...
Módulo principal: escrito en C● Aprox. 150 000 líneas de código● 55 .c; 58 .h; 1 .py; 1 .js; 2 .css
Módulo principal: escrito en C● Ausencia de funciones de bibliotecaespecializadas en web● Programado desde cero, excepto:●...
Base de datoshttp://swad.ugr.es/database/img/swad_database.jpg90 tablas
Complementos● Es posible desarrollar complementos (plugins)que pueden ejecutarse en otros servidores o enmóviles. Ejemplo:...
¿Cómo colaborar?● Si no quieres/no sabes programar:● Aspectos legales● Traducción: http://swad.ugr.es/translation/● Manual...
¿Cómo colaborar?● Si quieres programar:● Hay multitud de mejoras posibles:http://swad.ugr.es/roadmap/● Ejemplos:● Editor d...
Upcoming SlideShare
Loading in...5
×

SWAD: implementación

2,412

Published on

Implementación de la plataforma SWAD (Sistema Web de Apoyo a la Docencia).

Published in: Education, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,412
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

SWAD: implementación

  1. 1. Implementación24 de abril de 2013Antonio Cañas Vargas, acanas@ugr.esCentro de Enseñanzas Virtuales de la Universidad de Granada
  2. 2. ¿Quiénes crean SWAD?Antonio Manuel Aguilera Malagón (SWADroid)Daniel J. Calandria Hernández (fotos, chat)Antonio Cañas Vargas (desarrollo, coordinación, admin,)Juan Miguel Boyero Corral (SWADroid)Adrián Gómez Anaya (WikiSwad)Diego Montesinos Hervás (iSWAD)Francisco A. Ocaña Lara (F.A.Q.)Helena Rodríguez Gijón (SWADroid)...y una larga lista de colaboradores, a los que estamos muyagradecidos
  3. 3. 13 años de SWADInicios: 1999-20031º PID: 2003-20042º PID: 2005-20063º PID: 2006-2008CEVUG: 2008...Libre: 2010...UNA: 2012...
  4. 4. Servidores2004-2006Pentium 4 HTRAM 2 GB2 HD 160 GB2007-2008Core 2 DuoRAM 4 GB2 HD 500 GB2009-2010Core 2 QuadRAM 4 GB2 HD 146 GB2 HD 1 TB2010...2 Xeon QuadRAM 24 GB4 HD 146 GB4 HD 500 GB
  5. 5. SWAD, software libre● FLOSS (Free/Libre/Open Source Software)● Software con licencia copyleft que garanticederechos de uso, copia, modificación y redistribución● Free software (libre, ≠freeware)● 1983, centrado en la libertadde los usuarios● GPL, GFDL● Open source● 1998, centrado en el modelode desarrollo cooperativo
  6. 6. SWAD, software librehttp://www.youtube.com/watch?v=tAql6_urM4I
  7. 7. SWAD, software libre21/01/2010
  8. 8. ¿Por qué liberarlo?● Motivos éticos● Motivos prácticos● Necesidad decolaboradores● Mejora del código● Difusión
  9. 9. Pasos para liberar SWAD1. Escribir el código en inglés (100%)2. Independizarlo de la UGR (100%)3. Traducir los mensajes a 9 idiomas (70%)4. Añadir cabeceras AGPL a los archivos (100%)5. Publicar el código fuente (100%)http://swad.ugr.es/source/6. Publicar procedimiento de instalación (100%)7. Usar sistema de control de versiones git (0%)8. Subir a la forja GitHub (0%)9. Automatizar instalación (0%)
  10. 10. Programasswad A. CañasCGI: c; base de datos: mysqlprado (no liberado) A. Cañasc; base de datos: mysqlfotomaton D. J. Calandriac++, OpenCV de Intelfoto_mediana/foto_promedio D. J. Calandriac, OpenCV de Intelchat D. J. Calandriaservidor: c++; cliente: Applet Java; protocolo IRCSWADroid (app Android) J. M. Boyero, A. Aguilera, H. Rodríguezcliente: JavaiSWAD (app iOS) D. Montesinoscliente: Objective C
  11. 11. CGI+MySQL+XHTML+CSS+Ajax● Cada vez que un usuario pulsa en algunaopción, Apache llama a ejecutar el programacompilado swad● Hasta 2000 veces por minuto (30 por segundo)● Normalmente 350 veces por minuto (6 por segundo)● El programa swad consulta la BD, genera todoel código XHTML de la página, y lo envía a lasalida estándar
  12. 12. Módulo principal: escrito en C● Aprox. 150 000 líneas de código● 55 .c; 58 .h; 1 .py; 1 .js; 2 .css
  13. 13. Módulo principal: escrito en C● Ausencia de funciones de bibliotecaespecializadas en web● Programado desde cero, excepto:● Base de datos: MySQL C APIhttp://dev.mysql.com/doc/refman/5.0/en/c-api.html● Cifrado: SHA-256 y SHA-512http://www.ouah.org/ogay/sha2/● SOAP: gSOAPhttp://www.cs.fsu.edu/~engelen/soap.html
  14. 14. Base de datoshttp://swad.ugr.es/database/img/swad_database.jpg90 tablas
  15. 15. Complementos● Es posible desarrollar complementos (plugins)que pueden ejecutarse en otros servidores o enmóviles. Ejemplo: SWADroidhttp://swad.ugr.es/ws/● Los complementos interactúan con el programaswad a través de un servicio web SOAP convarias operaciones o funciones descritas en elWSDL:http://swad.ugr.es/ws/swad.wsdl● ¿Implementar también REST?
  16. 16. ¿Cómo colaborar?● Si no quieres/no sabes programar:● Aspectos legales● Traducción: http://swad.ugr.es/translation/● Manuales: http://swad.ugr.es/wiki/● Diseño gráfico● Administración de titulaciones● Difusión
  17. 17. ¿Cómo colaborar?● Si quieres programar:● Hay multitud de mejoras posibles:http://swad.ugr.es/roadmap/● Ejemplos:● Editor de texto con formato, enlaces, imágenes, fórmulas...● Maquetación con CSS● Lo más fácil es desarrollar complementos u otrosmódulos independientes del programa swad● Ejemplos:● Servicios para smartphones (ampliar SWADroid, versión para iOS)● Pizarra
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×