domingo, 22 de junio de 2008

Curso: Introducción a la Ingeniería del Software

Voy a dar un curso sobre Ingeniería de Software en la Facultad de Ingeniería de la UBA con algo más que un toque Ágil!

Objetivo del curso

Conocer los conceptos y herramientas de la ingeniería del software.

Dirigido a

Personas que cubren roles de Analistas de Negocio, Tester Funcionales, Administradores de Proyectos, Escritores Técnicos, Diseñadores Gráficos y otros roles, que tienen relación con proyectos de desarrollo de software sin tener educación formal en el área de software.
Personas que desear comenzar una carrera de especialización sobre Ingeniería de Software.

Al finalizar el curso

Los asistentes habrán conocido las áreas de la Ingeniería del Software, teniendo un entendimiento inicial de cada una de ellas, manejando la terminología relacionada. Habrán realizado prácticas en computadores y conocido alguna herramienta de soporte en cada una de las áreas.
Esto les permitirá interactuar en forma más efectiva en equipos de desarrollo de productos en los que el software es un componente importante.
Servirá como base para profundizar en los temas de interés.

Detalle de los contenidos

Conceptos

Detalle

Conceptos generales

Concepto de Proceso y Modelo. Características de producto (software), y de los procesos de desarrollo. Prácticas. La ingeniería del software y su relación con la ingeniería de sistemas y procesos de negocio.

Modelos de proceso

RUP, Incremental, Ágil. Métricas.

Requerimientos

Obtención de requerimientos, escritura, herramientas y modelización. Modelado de datos, modelado de dominio. User stories, Use Cases, especificación basada en ejemplos.

Herramientas y práctica.

Diseño y Arquitectura

Niveles de diseño. Concepto de patrones de diseño. Modelos lógicos y físicos. Patrones de arquitectura: cliente / servidor, multicapas, Orientado a Servicios. UML básico. Diseño de interfase usuaria. Modelos ejecutables. Diseño orientado a la prueba.

Herramientas y práctica.

Codificación

Compiladores e interpretados. Tipos: fuerte y débilmente tipados, procedurales, orientados a objetos, programación por eventos. Herencia y encapsulamiento. Cohesión y acoplamiento. Inversión del control.

Herramientas y práctica.

Calidad y Prueba

Inspecciones, desarrollo en pares, técnicas de prueba: caja blanca, caja negra, orientada a riesgos. Administración y métricas: cobertura, densidad de defectos.

Herramientas y práctica.

Procesos de soporte

Control de configuraciones y versiones. Build e integración continua. Administración de proyectos de software.

Herramientas y práctica.

Fecha de inicio

45 hs, 15 clases semanales de 3hs cada una.
Inicio: 1ro de Septiembre (lunes de 19 a 22 hs)

2 comentarios:

Anónimo dijo...

Es necesario ser graduado para realizar alguno de los dos cursos?

Juan Gabardini dijo...

No, no es necesario ser graduado.
Los cursos tienen un enfoque eminentemente práctico, por lo que para aprovechar más los cursos, es importante tener buen manejo de PC y en el caso de testing, alguna experiencia o conocimiento de desarrollo.