Programación Eficiente y Métricas de Calidad
Datos Generales
Nombre de la asignatura Nivel de formación Clave de la asignatura
Programación Eficiente y Métricas de Calidad Licenciatura CU018
Prerrequisitos Area de formación Departamento
75 - Departamento de Sistemas de Información
Academia Modalidad Tipo de asignatura
PROGRAMACION Presencial Curso-Taller
Carga Horaria
Teoría Práctica Total Créditos
40 40 80 8
Trayectoria de la asignatura
Fundamentos de Programación - Estructura de Datos - Programación Orientada a Objetos
Contenido del programa
Presentación

La programacion eficiente es un paradigma que ayuda con tecnicas y metricas utiles para estimar las caracteristicas de un sistema de informacion las cuales incluyen el tiempo de ejecucion, el rendimiento del sistema, entre otros, esto para crear una planificacion en el desarrollo de un sistema informatico lo cual tiene la intension de minimizar errores durante su ejecucion.





Objetivos del programa
Objetivo general

El estudiante debera identificar la manera de estimar la caracteristica de un sistema de informacion como: rendimiento, tiempo de ejecucion, estandares, etc; para efectuar planificaciones en el desarrollo o puesta en marcha de un sistema y minimizar errores durante su ejecucion.

Contenido
Contenido temático

Unidad I - Introduccion a la programación eficiente.

Unidad II - Complejidad computacional.

Unidad III - Metricas de calidad.

Unidad IV - Tipos de modelos de calidad.

Unidad V - Analisis y Calidad de Software.

Unidad VI - Metricas usando tecnicas agiles.





Contenido desarrollado

Unidad I - Introduccion a la programación eficiente.     (6 hrs. teoria - 6 hrs practica)

Objetivo particular: Revisar la introduccion a la medicion de software a traves de tecnologias y tecnicas que permitan integrar medidas, metricas e indicadores.

Historia de la medicion en el software

Tecnologia de la medicion de software

Precision y exactitud

Escalas de medicion

Medidas, metricas e indicadores


Unidad II. Complejidad computacional.    (6 hrs teoria, 6 hrs. practica)
Objetivo particular: Identificar las tecnicas utilizadas para medir la complejidad del software.

Orden de la complejidad

Analisis de complejidad

El metodo Horner

Algoritmos deterministas y no deterministas



Unidad III. Metricas de calidad.    (8 horas teoria - 8 hrs practica)
Objetivo particular: Revisar y estudiar las metricas utilizadas en el analisis de software.

  • Modelos de procesos
  • Medida, metrica e indicador
  • Clasificacion de metricas
  • Ingenieria de requerimientos
  • Control de riesgos
  • Tipos de metricas
    • Rendimiento
    • Exactitud
    • Configuracion
    • Usabilidad
    • Eficiencia
    • Metricas de McCabe
    • Metricas de Li Henry
    • Metricas de Lorenz y Kidd
    • Metricas de Halstead
    • Lineas de codigo
    • Puntos de funcion



Unidad IV. Tipos de Modelos de calidad.    (10 hrs teoria - 10 hrs practica)
Objetivo particular: Identificar y analizar los modelos utilizados para realizar el analisis en la calidad de software.

  • Estimacion
    • Cocomo
    • Modelos Putnam
    • Metodos basados en analisis de puntos de funcion
  • Calidad
    • Modelo de MCCALL
    • Modelo ISO 9126.


Unidad V. Analisis y Calidad de Software.   (5 hrs teoria - 5 hrs practica) Objetivo particular: Identificar y realizar el analisis de calidad de software.


  • Implementacion y mantenimiento
  • Aseguramiento de la Calidad del Software (SQA)
  • Derecho informatico aplicado al software


Unidad VI. Metricas Usando tecnicas agiles.    (6 hrs teoria - 6 hrs practica) Objetivo particular: Identificar la aplicabilidad de las tecnicas agiles en el analisis de la calidad del software.

  • Introduccion
  • Programacion extrema
  • Scrum
  • Metricas de iteracion: Sprint BurnDown Char
  • Metricas de producto: Release BurnDown Chart, Velocit
  • Metricas asociadas: Builds diarios, costos de calidad, y de calidad pobre






Actividades prácticas
Trabajos de investigacion, Practicas en Laboratorio, Analisis y Planteamiento de sus proyectos de aplicaciones.
Metodología

Metodos de enseñanza-aprendizaje:

  • Descriptivo
  • Analitico
  • Deductivo

Tecnicas de aprendizaje:

  • Individuales
  • Laboratorio
  • Estudio de casos

Actividades de aprendizaje:

  • Practicas de laboratorio
  • Ejercicios en casa y tareas
  • Casos practicos

Recursos didacticos a utilizar:

  • Pintarrón
  • Cañón
  • Equipo de cómputo
  • Internet
Evaluación

20%  - Mapas conceptuales

20%  - Actividades en clase

30%  - Prácticas de laboratorio

30%  - Proyecto Integrador





Bibliografía

Libro

Tecnicas Cuantitativas para la Gestion de Proyectos de Ingenieria del Software

Tuya González, Pablo Javier. (2007) Netbiblo No. Ed 1

ISBN: 9788497452045

Libro

Ingeniería de Software. Un Enfoque práctico

Pressman Roger S. (2010) Mcgraw-hill No. Ed séptima

ISBN: 978-607-15-0314-5

Libro

Software Development Metrics

Dave Nicolette (2015) Manning Publications No. Ed 1

ISBN: 9781617291357

Libro

Agile Metrics in Action: How to Measure and Improve Team Performance

Christopher W. H. Davis (2015) Manning Publications No. Ed 1

ISBN: 9781617292484

Libro

Software Metrics: A Rigorous and Practical Approach

Fenton Norman and Bieman James (2015) CRC Press, Taylor & Franc No. Ed 3

ISBN: 9781439838235

Libro

Measurement of Software Quality Factors using CK Metrics

Rashmi Gupta (2017) LAP LAMBERT Academic Publ No. Ed 1

ISBN: 978-3659893315

Libro

Estimation of Software Metrics Using Function Point Analysis

Barthwal Varun (2013) LAP LAMBERT Academic Publ No. Ed 1

ISBN: 978-3659345029

Libro

Effective Unit Testing: A Guide for Java Developers

Lasse Koskela (2013) Manning Publications No. Ed 1

ISBN: 978-1935182573

Otros materiales

-

Perfil del profesor
Licenciado en carreras relacionadas con las Tecnologías de Información, Ciencias de la Computación. Experiencia en el desarrollo de software y las técnicas para el análisis de sistemas computacionales, así como la aplicación de tecnologías ágiles.
Lugar y fecha de su aprobación
Zapopan, Jalisco, Octubre de 2019
Instancias que aprobaron el programa
Academia de Programación - Colegio Departamental