Tamaño Texto

-A A +A

Departamento de Ingeniería de Software

Descripción del Departamento:

El Departamento de Ingeniería de Software se encarga de promover la enseñanza de las mejores prácticas de la ingeniería del software, asegurando bajo un enfoque ético, el brindar conocimiento de los más altos estándares aplicados en el proceso de administración del desarrollo, mantenimiento y control de calidad de los productos software que se construyen. 

Administra 24 asignaturas que apoyan la formación en el área curricular de Ingeniería de Software, de los estudiantes de la Licenciatura en Ingeniería de Sistemas y Computación, Licenciatura en Ingeniería de Sistemas de Información,  la Licenciatura en Desarrollo de Software y la Licenciatura en Redes de  Computadora.  Administra la carrera de Licenciatura en Ingeniería de Software que consta de IX semestres, 56 asignaturas y 207 créditos.

Objetivos del Departamento:

  • Revisar y mejorar los contenidos de asignaturas que administra el Departamento, en conjunto con las extensiones regionales del país.
  • Fortalecer el proceso de enseñanza aprendizaje con bibliografía, herramientas y técnicas actualizadas, innovadoras y competentes.
  • Propiciar la actualización docente a través de seminarios o cursos formales, en el uso y aplicación de nuevas herramientas y enfoques metodológicos que les permitan fortalecer el desarrollo de los cursos que imparten en cada periodo académico.
  • Incentivar la organización y realización de Jornadas de actualización en la Ingeniería del Software, dirigidas a docentes, estudiantes y profesionales de las distintas regiones del país.
  • Generar y ejecutar programas de actualización continua de perfeccionamiento y especialización en Ingeniería de Software para el personal docente del departamento y para las necesidades del mercado nacional.
  • Ejecutar proyectos de investigación y de aplicación científica en las especialidades, apoyando el funcionamiento de las unidades de investigación en la Facultad y de los programas de investigación a nivel de la Universidad.
  • Realizar  estudios que permita elaborar propuestas de nuevas carreras que respondan a las nuevas necesidades del mercado nacional.
  • Administrar y dar seguimiento en forma integral a los proyectos de trabajo de graduación y las tesis a nivel de maestría.

Área de Conocimiento en el Departamento:

  1. Requerimientos de Software: Esta área de conocimiento considera la obtención, análisis, especificación y validación de los requerimientos, así como el rol que juegan dentro del proceso de desarrollo de software.
  2. Diseño de Software: Esta área se encarga de generar modelos que sirven como “planos” para la construcción. Típicamente se divide en dos tipos:
    • Diseño arquitectónico - Describe la estructura y organización de alto nivel de un sistema. Identifica los componentes e interfaces entre éstos. 
    • Diseño detallado - Describe individualmente cada componente con suficiente detalle para ser construido. Considerando la persistencia de datos, sistemas distribuidos, peticiones concurrentes, manejo de eventos, recuperación a fallas, etc. El diseño de software requiere entender a fondo principios como la abstracción, acoplamiento, cohesión, descomposición, encapsulación y el uso de patrones como base para diseñar sistemas robustos.
  3. Construcción de Software: Esta área de conocimiento se encarga de la creación de software útil a través de la programación, depuración (debugging), pruebas unitarias e integración de componentes. La construcción trabaja con la creación y aplicación de algoritmos, escenarios de usuarios, especificaciones, entre otros, para la resolución de problemas, así como su implementación utilizando herramientas de programación.
  4. Pruebas de Software: consisten en la verificación dinámica del comportamiento real de un producto software comparado con su comportamiento esperado en un conjunto finito de casos de prueba seleccionados de un dominio de ejecuciones típicamente infinito. Las pruebas se realizan para evaluar la calidad de un producto a través de la detección de fallas en éste.  Las pruebas deben abarcar el proceso completo de desarrollo,  su planeación comienza durante las primeras etapas del proceso de requerimientos, y los planes y procedimientos de prueba se deben desarrollar y refinar durante el ciclo completo de desarrollo.
  5. Calidad del Software: El área de conocimiento de calidad se enfoca en la aplicación de técnicas estáticas para evaluar y mejorar la calidad del software. Involucra los subprocesos de aseguramiento de calidad, verificación, validación, revisión y auditoria. Además considera tópicos como la clasificación de defectos, control estadístico de calidad, modelos de predicción y análisis de tendencias.
  6. Mantenimiento de Software: El mantenimiento se refiere a las modificaciones a un producto de software previamente liberado para prevenir fallas (preventivo), corregirlas (correctivo), mejorar su desempeño (perfectivo) o adaptarlo a cambios en el ambiente (adaptativo). Algunos temas clave en el mantenimiento son el rediseño de procesos, análisis de impacto, pruebas de regresión, y outsourcing del mantenimiento.
  7. Administración de la Configuración del Software (SCM): SCM es la disciplina de identificar la configuración en distintos puntos del tiempo con el propósito de controlar los cambios a ésta, manteniendo su integridad y trazabilidad durante el ciclo completo de vida del software. SCM va más allá del simple control de versiones, y requiere saber identificar los elementos de configuración, definir un proceso de control de cambios, auditar y reportar el estatus de la configuración, y administrar la integración y liberación del sistema completo.
  8. Administración de la Ingeniería del Software: Esta área de conocimiento es lo que típicamente llamamos Administración de Proyectos o Project Management. Consiste en la aplicación de actividades administrativas —como la planificación, coordinación, medición, monitoreo, control y reporte— para asegurar que el desarrollo y mantenimiento de software se lleva a cabo de manera sistemática, disciplinada y cuantificable. Entre los tópicos más importantes de esta área de conocimiento están la planificación de proyectos, estimación de esfuerzo, asignación de recursos, administración de riesgo, manejo de proveedores, manejo de métricas, evaluación, y cierre de proyectos, entre otros.
  9. Proceso de Ingeniería de Software: Esta área de conocimiento considera un proceso para las actividades técnicas y administrativas que deben realizarse para adquirir, desarrollar, mantener y retirar software; éste es considerado como un primer nivel de procesos. Adicionalmente existe un segundo nivel, o meta-nivel, que se enfoca en la definición, implantación, evaluación, mejora y administración del cambio de los procesos de primer nivel.
  10. Herramientas y Métodos de Ingeniería de Software: Las herramientas permiten la automatización de tareas repetitivas y bien definidas, habilitando al ingeniero de software para que se concentre en los aspectos creativos del proceso. Existen una gran cantidad de herramientas para asistir todas las áreas de conocimiento, desde la administración de requerimientos hasta las pruebas automatizadas. Los métodos de ingeniería de software establecen una estructura para sistematizar las actividades con el objetivo de aumentar las posibilidades de éxito. Los métodos pueden aplicar técnicas heurísticas (informales), formales, y basadas en prototipos.

Referencia: Software Engineering Body of Knowledge (SWEBOK)

Docentes Tiempo Completo:

  1. Karla Arosemena 
  2. Belén Bonilla (Licencia por estudios)
  3. Vanessa Castillo
  4. Eduardo Caballero
  5. Geovanny Caballero
  6. Evet Clachar
  7. Clifton E. Clunie B. 
  8. Ana Gloria Cordero de Hernández
  9. Amílcar Díaz
  10. Geralis Garrido
  11. José Mendoza
  12. Jeanette Riley
  13. Juan Saldaña
  14. Gisela Torres de Clunie
  15. Elba Valderrama
  16. María Vélez
  17. Rebeca Vergara
  18. Nilda Yangüez

Docentes Tiempo Parcial: 

  1. Germán Alonso
  2. Gionella Araujo
  3. Gloria Bennet
  4. Teodolinda Brinceño
  5. Sonia Camarena
  6. Pedro Castillo
  7. Danis Chiari
  8. Milka de Gracia
  9. María De Jesús Díaz
  10. Manuel Estévez
  11. Manuel Flores
  12. Belén González
  13. Elida González
  14. Elisleila González
  15. José González
  16. Serafina González
  17. José Grimaldo
  18. Nadia Lee
  19. Thelma López
  20. Andrés Miranda 
  21. Mitzi Miranda 
  22. Maritza Morales 
  23. Sidia Moreno
  24. Yuraisma Moreno
  25. Modul Nunehar
  26. Carmen Ortega
  27. Yamileth Quezada
  28. Ericka Quintero
  29. Hilda Quiróz
  30. Liliana Reyes
  31. Celsa Sánchez
  32. Ensy Santamaría de Tello
  33. Eduardo Snape
  34. Lineth Tristán 
  35. Julio Urriola
  36. Domingo Villagra

Carrera del Departamento:

Licenciatura en Ingeniería de Software


Jefe del Departamento

Ing. Walter A. Bonilla E.
[email protected]
Hoja de vida (.PDF, 178.62 KB)
560-3610