Director
D. Javier Gutiérrez Rodríguez
(Lenguajes y Sistemas Informáticos)

Unidad Promotora
Departamento de Lenguajes y Sistemas Informáticos

Impartición
Del 05/07/2014 al 31/07/2014

Modalidad
A distancia
(Recursos propios)

Idioma de impartición
Español

95,00 €
(tasas incluidas)


5,50 LRU


Prácticas
No


Folleto informativo

Preinscripción
Del 01/06/2014 al 20/06/2014


Matrícula
Del 01/06/2014 al 20/06/2014

Objetivos


<p>El objetivo de este curso es acercar las técnicas de desarrollo y prueba de código, como TDD(*) y BDD(**) al entorno Python y las herramientas y frameworks más comunes.</p><p>No es necesario un gran conocimiento del lenguaje Python ni conocimiento previo sobre pruebas del software. </p><p>(*) Test-Driven Development o Desarrollo Dirigido por Pruebas<br />(**) Behaviur-Driven Development o Desarrollo Dirigido por Pruebas.</p>

Competencias


Capacidad de análisis y síntesis.

Capacidad de organizar y planificar.

Solidez en los conocimientos básicos de la profesión.

Habilidades para recuperar y analizar información desde diferentes fuentes. Resolución de problemas.

Habilidad para comunicar con expertos en otros campos.

Capacidad de crítica y autocrítica.

Procedimiento de evaluación


Pruebas, Participación

Requisitos


Requisitos específicos de admisión a los estudios

  • No

Módulos / Asignaturas


Modalidad de impartición: A distancia

Fechas de inicio-fin: 05/07/2014 - 07/07/2014

Horario: en

Contenido

Antes de empezar a escribir pruebas repasaremos algunos conceptos básicos de Python de programación orientada a objetos, como métodos y clases, herencia, métodos estáticos, propiedades, etc.

También practicaremos con el entorno de programación creando proyectos, entornos virtuales instalando librerías y subiendo código a Github

Modalidad de impartición: A distancia

Fechas de inicio-fin: 08/07/2014 - 10/07/2014

Horario: en

Contenido

En este módulo se presentan las pruebas unitarias y las buenas prácticas necesarias para escribir buenas pruebas .

Algunas de las herramientas que veremos serán unittest, nose / coverage, expects y sure

Modalidad de impartición: A distancia

Fechas de inicio-fin: 11/07/2014 - 17/07/2014

Horario: en

Contenido

En este módulo estudiaremos el ciclo de TDD y veremos cómo empezar a aplicarlo en Python y cómo mantenerlo durante todo el desarrollo.

También estudiaremos los malos olores y las refactorizaciones más populares y trabajaremos con dobles de prueba para aislar las dependencias del código, simular elementos que aún no hemos construido y diseñar nuestras interfaces mientras escribimos código.

Algunas de las herramientas que utilizaremos serán MagicMocks y Mockito.

Modalidad de impartición: A distancia

Fechas de inicio-fin: 18/07/2014 - 24/07/2014

Horario: en

Contenido

En este módulo se presenta el desarrollo dirigido por comportamiento o BDD. Aprenderemos a escribir historias de usuario y escenarios y automatizaremos las pruebas de dichos escenarios con las herramientas Behave y Lettuce y los dobles de prueba vistos en el módulo anterior.

Modalidad de impartición: A distancia

Fechas de inicio-fin: 25/07/2014 - 31/07/2014

Horario: en

Contenido

En este último módulo plantearemos retos y ejercicios basados en frameworks y librerías concretas y plantearemos soluciones basadas en todo lo que hemos visto con anterioridad.

Estos retos estarán basados en trabajar con ficheros del sistema, con la fecha del sistema, con API-Rest, servidores web, almacenes de datos, etc.

Algunas de las herramientas que usaremos serán HTTPretty, MongoDB, Django, Flask, etc.

Profesorado


Personal Académico

  • Dª. Carmen Ruiz Cutilla - Atos- Origin
  • D. Javier Gutiérrez Rodríguez . Universidad de Sevilla - Lenguajes y Sistemas Informáticos
  • Dª. María José Escalona Cuaresma . Universidad de Sevilla - Lenguajes y Sistemas Informáticos

Profesorado

  • Dª. Carmen Ruiz Cutilla - Atos- Origin
  • D. Javier Gutiérrez Rodríguez . Universidad de Sevilla - Lenguajes y Sistemas Informáticos
  • Dª. María José Escalona Cuaresma . Universidad de Sevilla - Lenguajes y Sistemas Informáticos