Dpto. de Computación y T.I.
Universidad Simón Bolívar
 

Sistemas de Programas (CI-3715)

Programas


Programa Sinóptico

Introducción a los problemas y métodos para desarrollar software de mediana envergadura. El modelo de la cascada y el modelo de desarrollo incremental. Introducción a la captura y análisis de requerimientos. Modelado de software. Diseño de software. La prueba informal (informal testing) de software. Introducción al trabajo en equipo y a  la planificación y seguimiento de proyectos de desarrollo de software.
 

Programa Detallado

Introducción a la Ingeniería del software: El desarrollo de software de mediana envergadura, necesidad de trabajo disciplinado en equipo, etapas en el ciclo de vida del software, modelo de la cascada, modelo de desarrollo incremental, factores críticos, definición e importancia de la IS . Software orientado a objetos.

Planificación de un proyecto de software: Planteamiento del problema, captura de metas, requerimientos funcionales y atributos de un software. Riesgos sencillos de un desarrollo.

Modelado orientado a objetos: Necesidad de múltiples modelos. La notación UML.

Análisis orientado a objetos: Roles del analista, el usuario y el patrocinador. El modelo de uso: actores, casos de uso. Prototipado de pantallas. El modelo estructural: clases, atributos, métodos, herencia y asociaciones.

Diseño orientado a objetos:  Arquitectura de capas: presentación, aplicación, almacenamiento. Evaluación de diseños según criterios como facilidad de uso, eficiencia, seguridad, complejidad, flexibilidad, auditabilidad y esfuerzo. El modelo de clases. Diagramas de secuencias de eventos del sistema. Contratos. El uso de uno de los siguientes tipos de diagramas en el diseño detallado: diagrama de colaboración,  diagrama de interacción o ONN (Object Navigation Notation). Principios de diseño: experticia, acoplamiento y cohesión. El uso de patrones de diseño como  observador (model-view-controller, publish-subscribe), iterador, estrategia, apoderado (proxy), decorador, fábrica abstacta y compuesto.

Programación Java.

Pruebas informales (testing): Definición. Barreras psicológicas. Planificación y seguimiento del proceso de pruebas basado en el registro de fallas y defectos. Pruebas unitarias. Pruebas de integración. Pruebas de sistemas.

Documentación: Elaboración de manuales. El manual de instalación. El manual del usuario.

Control de proyectos: Nociones básicas de trabajo en equipo, roles (por ej. miembro, coordinador de proyecto, editor técnico, webmaster, coordinador de base de datos, coordinador de arquitectura), hojas de registro de trabajo, el uso del web site del equipo, planificación, control, seguimiento, coordinación de reuniones, manejo de agenda, distribución explícita de tareas, identificación y manejo de riesgos sencillos, ética del ingeniero de software, estimación informal de tiempo, caminos críticos y análisis post-hoc (postmortem).
 
 

Vigencia

Desde Abril 2001.


Esta página fue creada entre el 18 de abril de 2001.
Ultima actualización: 20 de abril de 2001.
Por favor dirija sus comentarios al Prof. Alejandro Teruel.