SWAD: implementación
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

SWAD: implementación

on

  • 2,607 views

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

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

Statistics

Views

Total Views
2,607
Views on SlideShare
1,485
Embed Views
1,122

Actions

Likes
1
Downloads
8
Comments
0

4 Embeds 1,122

http://swad.ugr.es 752
http://openswad.org 368
url_unknown 1
http://swad 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

SWAD: implementación Presentation Transcript

  • 1. Implementación24 de abril de 2013Antonio Cañas Vargas, acanas@ugr.esCentro de Enseñanzas Virtuales de la Universidad de Granada
  • 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. 13 años de SWADInicios: 1999-20031º PID: 2003-20042º PID: 2005-20063º PID: 2006-2008CEVUG: 2008...Libre: 2010...UNA: 2012...
  • 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. 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. SWAD, software librehttp://www.youtube.com/watch?v=tAql6_urM4I
  • 7. SWAD, software libre21/01/2010
  • 8. ¿Por qué liberarlo?● Motivos éticos● Motivos prácticos● Necesidad decolaboradores● Mejora del código● Difusión
  • 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. 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. 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. 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. 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. Base de datoshttp://swad.ugr.es/database/img/swad_database.jpg90 tablas
  • 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. ¿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. ¿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