Atributos
Sigla: 
CI-0126
Créditos: 
4
Horas: 
5
Clasificación: 
Curso propio
Énfasis y ciclo: 
Tronco común 3.II
Descripción: 

Este es un curso introductorio de ingeniería de software, que abarca los fundamentos teóricos  y prácticos de  conceptualización, planificación, análisis, diseño, codificación y pruebas de una aplicación de software.  El curso está diseñado para estudiantes de tercer año de la carrera de Bachillerato en Computación e Informática, que lleven simultáneamente los cursos Bases de Datos y Proyecto Integrador de Ingeniería de Software y Bases de datos. En particular, este curso ofrece los conocimientos y habilidades esenciales para el curso Proyecto Integrador,  y a su vez el proyecto de dicho curso sirve para consolidar y motivar estos conocimientos y habilidades al proveer un contexto de aplicación integrado. Se espera que una vez concluido este curso y el de Proyecto Integrador de Ingeniería de Software y Bases de datos, el estudiante tenga capacidad para desarrollar software siguiendo metodologías y prácticas modernas de ingeniería de software.

Objetivo general: 

El objetivo general del curso es que los estudiantes apliquen métodos, técnicas, herramientas y estándares modernos de ingeniería de software para desarrollar aplicaciones de software de calidad, mediante estrategias de aprendizaje que integren lo teórico y lo práctico, incluyendo un fuerte componente de actividades de laboratorio.

Objetivos específicos: 

Durante este curso el estudiante desarrollará habilidades para:

  1. Describir y distinguir los métodos, técnicas y herramientas de conceptualización y planificación, mediante su discusión y aplicación en casos prácticos, para seleccionar los más apropiados según el dominio del problema y el contexto.
  2. Describir y distinguir los métodos, técnicas y herramientas de extracción y análisis de requerimientos, mediante su discusión y aplicación en casos prácticos, para seleccionar los más apropiados según el dominio del problema y el contexto.
  3. Describir y distinguir los métodos, técnicas y herramientas de diseño de software, mediante la implementación de los mismos en casos prácticos.
  4. Sistematizar su experiencia como diseñador y desarrollador de software mediante el uso de plantillas construidas con base en estándares internacionales de documentación, técnicas, procedimientos y herramientas.
  5. Utilizar herramientas para modelar el software, administrar las versiones del software y los proyectos, mediante su aplicación en prácticas guiadas de laboratorio.
Contenidos: 
Objetivo específico Eje temático Desglose
1 Introducción a la Ingeniería de Software Definición de ingeniería de software, de proceso de software, de actividades genéricas y de soporte del software.
1 Modelos de proceso de software Cascada, Incremental, Evolutivo, Proceso Unificado, Scrum, Extreme Programming, entre otros.
2 Requerimientos Conceptualización de proyectos de software, técnicas de obtención de requerimientos y modelado de requerimientos.
2 Planificación de proyectos de software Técnicas de planificación de proyectos de software, estimación del tamaño y el esfuerzo.
3 Análisis de software orientado a objetos Técnicas de modelado y especificación del análisis de un sistema de información. 
3 y 4 Diseño de software orientado a objetos Técnicas de modelado y especificación del diseño de un sistema de información.
5 Técnicas y herramientas para asegurar la calidad del software Uso de plantillas construidas con base en estándares internacionales, revisiones técnicas formales y técnicas básicas de pruebas.
6 Uso de herramientas CASE Uso de herramientas para modelar sistemas de información, administrar versiones de software, administrar proyectos de software y de pruebas.
Bibliografía: 

Libro de texto recomendado:

  1. Pressman, R. (2010). Ingeniería de Software: un enfoque práctico. Séptima Edición, México, D. F. McGraw-Hill Interamericana. ISBN: 978-607-15-0314-5.

 

Otra bibliografía de apoyo:

  1. Braude E. Ingeniería de Software Orientado a Objetos: Una perspectiva orientada a objetos. Editorial Alfaomega. 2003.  ISBN 970-15-0851-3.
  2. Bruegge Bernd. Ingeniería de Software Orientado a Objetos. Prentice-Hall, 2002. (Caps. 3, 4 y 5).
  3. Cohn, Mike. Agile Estimating and Planning 1st edition, Prentice-Hall, ISBN 978-0131479418
  4. Cohn, Mike. User Stories Applied: For Agile Software Development 1st edition, Addison-Wesley, ISBN 978-0321205681
  5. Dean Leffingwell. Agile Software Requirements. Agile Software Development Series. Alistair Cockburn and Jim Highsmith, series Editors.
  6. Fran, B., Marriott, Phil, Warzusen, Ch. (2008), CSQE PRIMER. 4 ed. @Quality Council of Indiana. 2008 Extraído el 25 de Julio del 2011 de http://www.qualitycouncil.com/samples/csqe_p.pdf  Fourth Edition.
  7. Henrik Kniberg. SCRUM y XP desde las trincheras. InforQ Enterprise Software Development Series.
  8. Karl E. Wiegers. Software Requirements. Second Edition. Microsoft Press
  9. Larman, C. (1999) UML Y PATRONES. Introducción al análisis y diseño orientado a objetos. México: Prentice Hall Hispanoamerica, S. A.. Segunda Edición. Caps 5- 9
  10. Schwaber, K; Sutherland, J. The 2020 Scrum Guide™ (2020) https://scrumguides.org/scrum-guide.html
  11. Rubin, K. (2013) Essential Scrum.  Addison-Wesley.
  12. Sommerville. I. (2011). “Ingeniería de Software”. Novena edición. Addison Wesley. Caps. 1-3.
  13. Stphen R. Scharch. Ingeniería de Software Clásica y Orientada a Objetos. Sexta Edición. 2006  Mc Graw Hill.
  14. Martin, R. C. (2009). Clean code: a handbook of agile software craftsmanship. Pearson Education.
  15. Martin, R. C. (2018). Clean architecture: a craftsman's guide to software structure and design. Prentice Hall.
  16. Freeman, E., Robson, E., Bates, B., & Sierra, K. (2008). Head first design patterns. " O'Reilly Media, Inc.".

 

Recursos estudiantiles

 

Para información sobre recursos estudiantiles disponibles en la UCR, incluyendo el Sistema de bibliotecas y la normativa universitaria vigente, favor visitar la página: https://www.ecci.ucr.ac.cr/vida-estudiantil/servicios-institucionales-para-estudiantes/guia-de-recursos-estudiantiles-de-la-ucr

LIberación de responsabilidad: 

Este no es un documento oficial. Documentos oficiales se entregan en la secretaría de la escuela.