Los sistemas de información, aplicaciones y software de todo tipo forman parte integral de nuestras vidas. Desde el software de nuestro computador, teléfono celular o el software comercial que manejamos en la empresa, a todos nos ha pasado alguna vez que el ‘sistema’ o software no funciona de la manera correcta o funciona con defectos.
Son múltiples las causas de los defectos y sería muy difícil, en ocasiones, encontrar la causa raíz de los defectos de un software. Sin embargo, estos funcionamientos inapropiados o defectos pueden ser minimizados si se realizan correctamente procesos de pruebas de software en diferentes niveles que aporten fiabilidad a la calidad del software.
A continuación se presenta el curso Construcción de Software y pruebas en el cual los participantes comprenderán las buenas prácticas en construcción de software, la importancia de las pruebas de software y conocerán su proceso desde la planeación, análisis y diseño de las pruebas en la etapa de ingeniería y diseño del ciclo de vida de software, hasta la ejecución y evaluación de las pruebas.
Al finalizar el curso los participantes podrán:
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Bibliografía |
---|---|---|---|---|
1 | 3 | Presentación del curso. Introducción. Retos de desarrollo, y la validación y verificación del software | ||
2 | 2 | Práctica | ||
3 | 3 | Principales conceptos del trabajo en equipo, incluyendo responsabilidades para tareas concretas y estructura de reuniones y horario de trabajo | ||
4 | 2 | Definición del proyecto semestral | ||
5 | 3 | Los roles y responsabilidades en un equipo de software. Resolución de conflictos en los Equipo. Riesgos asociados con equipos virtuales (comunicación, percepción, la estructura) | ||
6 | 2 | Práctica. Trabajo en proyecto semestral |
Total de Horas: 15
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
1 - 6 | 12 | Lecturas, Tareas semanales y resolución de problemas en temas vistos |
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Bibliografía |
---|---|---|---|---|
7 | 3 | El papel del riesgo en el ciclo de vida. Categorías de riesgo : Seguridad, mercado, financiero, tecnología, recursos humanos, calidad, estructura y proceso | ||
8 | 2 | Práctica | ||
9 | 3 | manejo de release. Entornos de programación que automatizan los procesos de construcción de software (Ej. Construcción automática) | ||
10 | 2 | Herramientas de integración: Conceptos y mecanismos |
Total de Horas: 10
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
7 - 10 | 8 | Lecturas, Tareas semanales y trabajo en proyecto semestral |
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Bibliografía |
---|---|---|---|---|
11 | 3 | Construcción (Desarrollo). Estándares en el desarrollo de software | ||
12 | 2 | Práctica. Refactoring. | ||
13 | 3 | Desarrollo Formal de Software | ||
14 | 2 | Taller | ||
15 | 3 | Sistemas de reingeniería. Reuso. Segmentos de código. Librerias y frameworks. Componentes. Lineas de productos | ||
16 | 2 | Práctica | ||
17 | 3 | Calidad de Software (Software reliability, system reliability and failure behavior) | ||
18 | 2 | Trabajo en proyecto semestral |
Total de Horas: 20
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
11 - 18 | 16 | Lecturas, Tareas semanales y trabajo en proyecto semestral |
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Bibliografía |
---|---|---|---|---|
19 - 28 |
Total de Horas: 25
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
19 - 28 | 20 | Lecturas, Tareas semanales y trabajo en proyecto semestral |
Sesión | Horas teóricas | Prácticas acompañadas | Temas | Bibliografía |
---|---|---|---|---|
29 | 3 | Evolución del Software | ||
30 | 2 | Práctica | ||
31 | 3 | Mantenimiento de Software. Características del software mantenible | ||
32 | 2 | Taller |
Total de Horas: 10
Sesión | Horas de trabajo independiente | Temas | Bibliografía |
---|---|---|---|
29 - 32 | 8 | Lecturas, Tareas semanales y trabajo en proyecto semestral |
(A) La habilidad para aplicar conocimientos de matemáticas, ciencias e ingeniería.
(B) La habilidad para analizar un problema e identificar los requerimientos necesarios para su definición y solución.
(C) La habilidad para diseñar, implementar y evaluar procesos y sistemas computacionales.
(D) La habilidad para funcionar en equipos de trabajo.
(E) El entendimiento de la responsabilidad profesional y ética.
(F) La habilidad para comunicarse efectivamente.
(G) La habilidad para analizar los impactos de la computación y la ingeniería en las personas, organizaciones y la sociedad.
(H) El reconocimiento de la necesidad de, y la habilidad para, continuar con el desarrollo profesional.
(I) La habilidad para usar las técnicas, destrezas y herramientas modernas para la práctica de la computación.
(J) La habilidad para aplicar los fundamentos y principios de las matemáticas y de la computación en el modelamiento y diseño de sistemas computacionales de manera que se demuestre comprensión de las ventajas y desventajas en las decisiones de diseño.
(K) La habilidad para aplicar los principios de diseño y desarrollo de software en la construcción de sistemas de diferente complejidad.
Resultados de Programa | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | G | H | I | J | K | |
Relevancia | 3 | 2 | 5 | 2 | 2 | 2 | 5 |
Escala: (1) baja relevancia - (5) alta relevancia.
El curso es presencial y con participación y trabajo en clase. Se asignarán investigaciones, ejercicios y lecturas. Durante la sesión se expondrán los conceptos acompañados de ejemplos, se fomentará la participación de los estudiantes. Se realizará una exposición por cada estudiante relacionada con temas de Ingeniería de Software. Se desarrollará a lo largo del semestre un Proyecto en grupos con entregas y sustentaciones parciales.
Resultados del Programa | Indicadores de Desempeño | Objetivos/Contenido del Curso | Actividades de aprendizaje | Instrumentos de medición |
---|---|---|---|---|
(A) Aplicación de Conocimientos | (A1) Identificar los fundamentos científicos y los principios de ingeniería que rigen un proceso o sistema. (Conocimiento) (A2) Resolver problemas relacionados con la disciplina y otras áreas por medio de la utilización de conocimientos, modelos y formalismos de las ciencias de la computación, las matemáticas y la ingeniería. (Aplicación) (A3) Analizar conjuntos de datos. (Análisis) | Capítulo 1 | Exposiciones del profesor, solución de ejercicios y lecturas | Exámenes |
(B) Análisis de problemas y requerimientos | (B3) Sintetizar la información, evidencias y hechos necesarios para analizar un problema. (Análisis - Síntesis). | Obj. 3,6 / Cap. 2,3 | Exposiciones del profesor, Talleres y desarrollo de proyectos | Exámenes, miniproyecto, proyecto semestral y tareas |
(C) Diseño | (C1) Utilizar estándares de codificación en la implementación de componentes de software. (Aplicación). (C2) Identificar componentes, interacciones, relaciones e interfaces entre componentes. (Análisis). (C4) Evaluar un componente de software de acuerdo a su complejidad temporal y espacial. (Evaluación). | Capítulos 2,3,4 | Solución de ejercicios y lecturas | Proyectos y tareas |
(D) Trabajo en equipo | (D2) Participar en tareas y en la toma de decisiones. (Respuesta - Afectivo). (D3) Integrar diferentes puntos de vista, información, críticas y retroalimentación para proponer una solución. (Síntesis). (D4) Definir tareas, roles y responsabilidades. (Aplicación). | Obj. 1,2,5,6 | Desarrollo de proyectos (2) | Mniproyecto y Proyecto semestral |
(F) Comunicación efectiva | (F1) Producir textos de manera efectiva teniendo en cuenta la estructura, coherencia, flujo, ortografía y correcto uso del lenguaje. (Aplicación). (F2) Comunicarse de manera efectiva de acuerdo al público objetivo haciendo uso correcto del lenguaje, estilo, tiempo y expresión corporal. (Aplicación). (F3) Utilizar recursos gráficos para comunicar y expresar una idea. (Aplicación). (F4) Defender ideas con precisión y claridad. (Evaluación). | Capítulos 2,3,4 | Proyectos y tareas | Presentaciones orales y reportes escritos |
(I) Uso de herramientas y técnicas | (I1) Utilizar herramientas de desarrollo de software. (Aplicación). (I2) Utilizar herramientas de diseño, modelamiento y simulación. (Aplicación). (I3) Combinar herramientas de software y hardware para resolver un problema. (Síntesis). (I4) Demostrar flexibilidad para adaptarse a diferentes paradigmas y lenguajes de programación. (Valuación). | Capítulos 2,3,4 | Laboratorios y lecturas | Proyecto y tareas |
(K) Desarrollo de software | (K2) Implementar e integrar componentes de software respetando los criterios de diseño. (Aplicación). (K3) Establecer invariantes y propiedades de componentes de software. (Análisis). (K4) Evaluar y verificar soluciones de software con respecto a las restricciones y requerimientos establecidos. (Aplicación - Evaluación). | Todos | Proyectos (2) | Exámenes, miniproyecto y proyecto semestral |
La tabla muestra que aspectos de las competencias de Comunicación Escrita, Lectura Crítica y Razonamiento Cuantitativo son evaluados a través de los factores ABET correspondientes. Por otra parte, las competencias de Ciudadanía e Inglés se favorecen gracias a la metodología del curso y también, gracias a los factores ABET correspondientes.
Resultados de Programa | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | G | H | I | J | K | |
Ciudadanía | U | U | |||||||||
Comunicación escrita | E | ||||||||||
Lectura crítica | E | ||||||||||
Inglés | U | ||||||||||
Razonamiento cuantitativo | E | E |
E- Se evalúa. U - Se usa
La Carrera de Ingeniería de Sistemas y Computación plantea los siguientes objetivos educacionales, El estudiante graduado de la carrera será capaz de:
Resultados de Programa | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
A | B | C | D | E | F | G | H | I | J | K | |
EO1 | X | X | X | X | |||||||
EO2 | X | X | X | X | X | ||||||
EO3 | X | X | X | ||||||||
EO4 | X | X | X | ||||||||
E05 | X |
Instrumento | Porcentaje | A | B | C | D | E | F | G | H | I | J | K |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Parcial I | 25 % | 55 % | 20 % | 25 % | ||||||||
Parcial II | 25 % | 20 % | 50 % | 20 % | 10% | |||||||
Proyecto | 30 % | 15 % | 30% | 10 % | 45 % | |||||||
Tareas | 5 % | 100 % | ||||||||||
Talleres | 15 % | 50 % | 50 % |
No está permitido el uso de notas de clase, bibliografía, calculadoras, computadores personales, teléfonos celulares ni ningún otro equipo electrónico.
Obligatoria
Salón de clase con computador y proyector. Laboratorio de Ingeniería de Sistemas y Computación.