ingeniería en sistemas de...

21
Universidad Tecnológica Nacional Facultad Regional San Francisco Ingeniería en Sistemas de Información Construcción de Software PLANIFICACIÓN CICLO LECTIVO 2016

Upload: others

Post on 25-Sep-2019

3 views

Category:

Documents


0 download

TRANSCRIPT

Universidad Tecnológica Nacional Facultad Regional

San Francisco

Ingeniería en Sistemas de Información

Construcción de Software

PLANIFICACIÓN CICLO LECTIVO

2016

Ingeniería en Sistemas de Información Construcción de Software

Página 2 de 20

ÍNDICE

ÍNDICE .............................................................................................................................................. 2

PROFESIONAL DOCENTEACARGO .......................................................................................... 3

UBICACIÓN ...................................................................................................................................... 4

OBJETIVOS ...................................................................................................................................... 5

ORGANIZACIÓNDECONTENIDOS ............................................................................................ 6

PROGRAMAANALÍTICO .............................................................................................................. 8

CRITERIOSDEEVALUACIÓN .....................................................................................................10

EVALUACIÓN ..................................................................................................................................10

AUTOEVALUACIÓN .........................................................................................................................10

PLANDETRABAJO ........................................................................................................................11

METODOLOGÍA ............................................................................................................................12

BIBLIOGRAFÍA ..............................................................................................................................13

ARTICULACIÓN ............................................................................................................................14

ARTICULACIÓN CONELÁREA ..........................................................................................................14

TEMAS RELACIONADOS CON MATERIASDELÁREA ...........................................................................15

ARTICULACIÓN CONELNIVEL .........................................................................................................16 TEMAS RELACIONADOS CON MATERIASDELNIVEL ..........................................................................17

ARTICULACIÓN CONLASCORRELATIVAS .........................................................................................18

TEMAS RELACIONADOS CONLASCORRELATIVAS .............................................................................19

ORIENTACIÓN ...............................................................................................................................20

DELÁREA .......................................................................................................................................20 DE LAASIGNATURA ........................................................................................................................20

Ingeniería en Sistemas de Información Construcción de Software

Página 3 de 20

PROFESIONAL DOCENTE A CARGO

Docente Categoría Título Profesional

Calorio, Adrián José Adjunto interino simple Ingeniero en Sistemas de Información

Ingeniería en Sistemas de Información Construcción de Software

Página 4 de 20

UBICACIÓN

Dentro del contexto curricular prescripto se ubica en:

Carrera: Ingeniería en Sistemas de Información Plan: 2008

Orientación: Ingeniería de Software Área: Programación Nivel: Tercero

Carga Horaria Semanal: 8 Régimen: Cuatrimestral

Distribución horaria

Formación

Total de

horas

Teórica Práctica

Teoría

Práctica

Laboratorio

Formación

experimental

Resolución de

problemas de

Ingeniería

Proyecto y

diseño

Práctica profesional supervisada

64 64 128

Ingeniería en Sistemas de Información Construcción de Software

Página 5 de 20

OBJETIVOS

Se espera que el alumno logre:

Escribir código con buenas costumbres deprogramación.

Saber distinguir entre código de calidad y códigoamateur.

Adquirir y evaluar conceptos tales como la programación defensiva y ocultamiento deinformación.

Asumir la importancia de programar pensando en la calidad del códigofuente.

Comprender la necesidad de ser disciplinado en la programación de software y en el uso de susherramientas.

Ingeniería en Sistemas de Información Construcción de Software

Página 6 de 20

ORGANIZACIÓN DE CONTENIDOS

Prerrequisitos de la construcción Contenidos Conceptuales: Introducción a los prerrequisitos de

la construcción de software. Necesidad de los distintos prerrequisitos.

Contenidos Procedimentales: Identificación de los elementos fundamentales a tener en cuenta en cadaprerrequisito.

Contenidos Actitudinales: Despertar la inquietud de que existen ciertas necesidades a cumplir con calidad antes de comenzar acodificar.

Diseño Contenidos Conceptuales: Pasos en la construcción de una

rutina. Herramientas a utilizar. Principios a aplicar en la codificación. Características de rutinas de altacalidad.

Contenidos Procedimentales: Pseudocodio. Buenos nombres de rutinas. Programación defensiva. Utilización de parámetros. Módulos con buenascostumbres.

Contenidos Actitudinales: Que el alumno utilice herramientas de diseño que ayuden a la calidad del código. Que el alumno valore la importancia de los buenos nombres derutinas.

Datos Contenidos Conceptuales: Tipos de datos. Principios autilizar

en la creación de variables. Convenciones paranombres.

Contenidos Procedimentales: Creación de tipos de datos. Tipos e Inicialización de variables. Elección de un buen nombre de variable. Creación de convenciones paranombres.

Contenidos Actitudinales: Que el alumno valore la importancia de los buenos nombres de variables, como así también el uso de las variables adecuadas a cadacaso.

Control Contenidos Conceptuales: Estructuras de control.

Organización del código. Estructuras de control inusuales. Expresionesbooleanas.

Contenidos Procedimentales: Buenas formas de utilización de las distintas estructuras de control. Domesticación de los anidamientos profundos. Reducción de la complejidad en las expresionesbooleanas.

Contenidos Actitudinales: Que el alumno haga un buen uso de las distintas estructuras decontrol.

Ingeniería en Sistemas de Información Construcción de Software

Página 7 de 20

Consideraciones constantes Contenidos Conceptuales: El estilo de programación como

documentación del código. Técnicas para comentarios. Como el tamaño del código afecta a laconstrucción.

Contenidos Procedimentales: Claves para comentarios efectivos. Tipos y estilos de comentarios. Efectos del tamaño sobre las actividades de desarrollo y sobre loserrores.

Contenidos Actitudinales: Que el alumno asuma la importancia de los buenos comentarios en elcódigo.

Mejorar la calidad Contenidos Conceptuales: Características de la calidad del

software. Técnicas para mejorar la calidad del software. Revisiones.Inspecciones.

Contenidos Procedimentales: Comparación de las distintas técnicas de calidad. Identificación de los pasos involucrados en las revisiones e inspecciones como así también de los actoresinvolucrados.

Contenidos Actitudinales: Que el alumno tenga una visión general sobre las distintas técnicas de control de la calidad del código y la importancia de suaplicación.

Ingeniería en Sistemas de Información Construcción de Software

Página 8 de 20

PROGRAMA ANALÍTICO

Eje TemáticoNº1: Prerrequisitos de laconstrucción

Introducción. Prerrequisito de la definición del problema. Prerrequisito de los requerimientos. Prerrequisito de la arquitectura. Prerrequisito de la elección del lenguaje de programación. Convenciones de programación.

Eje TemáticoNº2: Diseño

Rutinas Pasos en la construcción de una rutina. PDL. Diseño de la rutina. Codificación de la rutina. Características de rutinas de alta calidad. Razones para crear una rutina. Buenos nombres de rutinas. Cohesión y acoplamiento de rutinas. Longitud de una rutina. Programación defensiva. Utilización de parámetros.

Módulos Cohesión y acoplamiento de módulos. Ocultamiento de información. Razones para crear módulos.

Eje TemáticoNº3: Datos

Creación de tipos de datos. Tipos de datos enumerados. Guías para la inicialización de datos. Consideraciones en la elección de nombres de variables. Temas generales sobre el uso de variables. Variables globales.

Eje TemáticoNº4: Control

Organización de código lineal. Uso de condicionales. Sentencias If. Sentencias CASE. Selección del tipo de bucle. Control del bucle. Estructuras de control inusuales. Expresiones booleanas. Bloques de sentencias. Domesticar los anidamientos profundos. Estructuras de control y complejidad.

Eje TemáticoNº5: Consideracionesconstantes

Documentación delcódigo Código autodocumentado. El estilo de programación como documentación. Claves para comentarios efectivos. Técnicas para comentarios.

Tamaño del programa Como el tamaño del programa afecta a la construcción. Efecto del tamaño del proyecto sobre las actividades de desarrollo. Efecto del tamaño del proyecto sobre los errores.

Ingeniería en Sistemas de Información Construcción de Software

Página 9 de 20

Eje TemáticoNº6: Mejorar lacalidad

Características de la calidad del software. Técnicas para mejorar la calidad del software. Efectividad relativa de las técnicas. Revisiones. El papel de las revisiones en la calidad del software. Inspecciones. Otros tipos de revisiones.

Ingeniería en Sistemas de Información Construcción de Software

Página 10 de 20

CRITERIOS DE EVALUACIÓN

Evaluación: Se realizará el seguimiento y evaluación de los alumnos a través de la

asistencia a clases, presentación y aprobación de los trabajos prácticos.

La condición de alumno regular será alcanzada con la realización y aprobación de los trabajos prácticos encomendados y la asistencia mínima exigida.

Autoevaluación:

Será realizada utilizando el instrumento elaborado desde Secretaría Académica y aprobado por Consejo Académico.

Ingeniería en Sistemas de Información Construcción de Software

Página 11 de 20

PLAN DE TRABAJO

Eje temático Nº 1: Prerrequisitos de la construcción

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

1 y 2

Unidad 1

Clase

Interrogación

Aulataller

Análisis de casos

Seguimiento

Comprensión de conocimientos

Cuestionario

Conceptual

- MCCONELL (Code Complete)

Eje temático Nº 2: Diseño

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

3 a 5 Unidad 2:Rutinas

Unidad 3:Módulos

Clase

Interrogación

Aulataller

Seguimiento

Comprensión de conocimientos

Cuestionario

Conceptual

Práctico

-MCCONELL (Code Complete)

-MCCONELL (Code Complete 2)

Eje temático Nº 3: Datos

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

De 6 a 9

Unidad 4

Clase

Interrogación

Aulataller

Seguimiento

Comprensión de conocimientos

Cuestionario

Conceptual

Práctico

-MCCONELL (Code Complete)

-MCCONELL (Code Complete 2)

Eje temático Nº 4: Control

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

10 y 11

Unidad 5

Clase

Interrogación

Aulataller

Seguimiento

Comprensión de conocimientos

Cuestionario

Conceptual

Práctico

-MCCONELL (Code Complete)

-MCCONELL (Code Complete 2)

Eje temático Nº 5: Consideraciones constantes

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

De 12 a 14

Unidad 6: Documentación del código

Unidad 7: Tamaño del programa

Clase

Interrogación

Aulataller

Seguimiento

Comprensión de conocimientos

Cuestionario

Conceptual

Práctico

-MCCONELL (Code Complete)

Ingeniería en Sistemas de Información Construcción de Software

Página 12 de 20

Eje temático Nº 6: Mejorar la calidad

Semana Contenidos Metodología Evaluación Nivel de

Profundidad Bibliografía

15 y 16

Unidad 8

Clase

Interrogación

Aulataller

Seguimiento

Comprensión de conocimientos

Cuestionario

Conceptual

Práctico

-MCCONELL (Code Complete)

Ingeniería en Sistemas de Información Construcción de Software

Página 13 de 20

METODOLOGÍA

Clases en aula y en el laboratorio.

Teoría Duración: 4 horas semanales a cargo del profesor.

Tendrán el carácter de teórico-prácticas. En las mismas se impartirán los conocimientos claves del contenido de la

materia, presentando y evaluando buenas costumbres de programación destinadas a lograr código de buena calidad.

Se ejemplificaran los conceptos en diferentes lenguajes de programación (Pascal, C, Ada, Visual Basic, C#)

La teoría será reafirmada mediante la realización de cuestionarios que los alumnos deberán responder en grupo en clase utilizando los conocimientos recién adquiridos y su propia experiencia.

Práctica y laboratorio Duración: 4 horas semanales a cargo del profesor.

En las mismas se impartirán guías de ejercicios grupales. Se codificaran

rutinas y programas en el lenguaje de programación que el alumno considere apropiado (teniendo en cuenta la disponibilidad de lenguajes en el laboratorio).

Trabajos prácticos Se realizarán aplicaciones simples en las cuales el alumno deberá ir

aplicando los conocimientos adquiridos en la teoría y práctica.

Ingeniería en Sistemas de Información Construcción de Software

Página 14 de 20

BIBLIOGRAFÍA

LISTA ALFABÉTICA DE REFERENCIAS

(Bibliográficas y No bibliográficas)

OBLIGATORIA:

MCCONELL, Steve. Code complete: [a practical handbook of software construction].

[1st ed.]

Microsoft Press, 1993.

ISBN: 9781556154843.

(Al 2016: 1 ejemplar/es en Colección UTN)

MCCONELL, Steve. Code complete 2: [a practical handbook of software construction].

2nd ed.

Microsoft Press, 2004.

ISBN: 9780735619678.

(Al 2016: 1 ejemplar/es en Colección UTN)

Ingeniería en Sistemas de Información Construcción de Software

Página 15 de 20

ARTICULACIÓN

Articulación con el Área:

Asignatura Carga Horaria Porcentaje

Construcción de Software 128 17.02 %

Matemática discreta 96 12.77 %

Algoritmos y estructuras de datos 160 21.28 %

Sintaxis y semántica de los lenguajes 128 17.02 %

Paradigmas de programación 112 14.89 %

Gestión de datos 128 17.02 %

Ingeniería en Sistemas de Información Construcción de Software

Página 16 de 20

Temas relacionados con materias del área:

Matemática discreta Tema relacionado

Estructuras de control Unidad 5 – Eje temático Nº 4: Control

Algoritmos y estructuras de datos

Tema relacionado

Tipos de datos Unidad 4 – Eje temático Nº 3: Datos

Estructuras de datos Unidad 4 – Eje temático Nº 3: Datos

Variable puntero ambiente local y global

Unidad 4 – Eje temático Nº 3: Datos

Expresiones condicionales

Unidad 5 – Eje temático Nº 4: Control

Subprogramas Unidad 2: Rutinas y Unidad 3: Módulos – Eje temático Nº 2: Diseño

Sintaxis y semántica de los lenguajes

Tema relacionado

El proceso del desarrollo del software

Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción

Abstracción de datos Unidad 4 – Eje temático Nº 3: Datos

Tipos de datos Unidad 4 – Eje temático Nº 3: Datos

Estructuras de control Unidad 5 – Eje temático Nº 4: Control

Gestión de datos Tema relacionado

Concepto de dato estructurado

Unidad 4 – Eje temático Nº 3: Datos

Ingeniería en Sistemas de Información Construcción de Software

Página 17 de 20

Articulación con el Nivel:

Asignatura Carga Horaria Porcentaje

Construcción de Software 128 21.48

Gestión de datos 128 21.48

Diseño de Sistemas 238 39.93

Ingeniería en Software 102 17.11

Ingeniería en Sistemas de Información Construcción de Software

Página 18 de 20

Temas relacionados con materias del nivel:

Gestión de Datos Tema relacionado

Concepto de dato estructurado

Unidad 4 – Eje temático Nº 3: Datos

Diseño de Sistemas Tema relacionado

Modelos involucrados en la construcción de un sistema

Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción

Carta de estructura Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción

Diseño de interfaces Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción

Ing. En Software Tema relacionado

Convenciones de nombres

Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción Unidad 2 – Eje temático Nº 2: Rutinas Unidad 4 – Eje temático Nº 3: Datos

Estándares de software Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción Unidad 2 – Eje temático Nº 2: Rutinas Unidad 4 – Eje temático Nº 3: Datos

Clasificación de las cualidades del software

Unidad 8 – Eje temático Nº 6: Mejorar la calidad

Ingeniería en Sistemas de Información Construcción de Software

Página 19 de 20

Articulación con las correlativas:

Asignatura Para cursar Para rendir

Cursada Aprobada Aprobada Cursada

Construcción de Software

Análisisde Sistemas

Gestiónde Datos

Algoritmos y Estructura de Datos

Análisisde Sistemas

Gestiónde Datos

Diseñode Sistemas

Ingeniería en Sistemas de Información Construcción de Software

Página 20 de 20

Temas relacionados con las correlativas:

Gestión de Datos Tema relacionado

Concepto de dato estructurado

Unidad 4 – Eje temático Nº 3: Datos

Algoritmos y estructura de datos

Tema relacionado

Tipos de datos Unidad 4 – Eje temático Nº 3: Datos

Estructuras de datos Unidad 4 – Eje temático Nº 3: Datos

Variable puntero ambiente local y global

Unidad 4 – Eje temático Nº 3: Datos

Expresiones condicionales

Unidad 5 – Eje temático Nº 4: Control

Subprogramas Unidad 2: Rutinas y Unidad 3: Módulos – Eje temático Nº 2: Diseño

Análisis de sistemas Tema relacionado

Ciclo de vida Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción

Determinación de requerimientos

Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción

Especificación de procesos

Unidad 2 – Eje temático Nº 2: Rutinas

Diseño arquitectónico Unidad 1 – Eje temático Nº 1: Prerrequisitos de la construcción

Ingeniería en Sistemas de Información Construcción de Software

Página 20 de 20

ORIENTACIÓN

Del Área:

OBJETIVOS:

Los objetivos que persigue el área de programación son formar e informar acerca de metodología, técnicas y lenguajes de programación, como herramientas básicas para el desarrollo de software y el estudio de disciplinas que permitan crear nuevastecnologías.

ASIGNATURAS DEL ÁREA:

El nuevo material de aprendizaje debe relacionarse significativamente, para integrarse en su estructura cognoscitiva previa, modificándola y produciendo un conocimiento duradero y sólido.

Si se producen aprendizajes verdaderamente significativos, se consigue uno de los objetivos principales de la educación: Asegurar la funcionalidad de los aprendido.

Es necesario encarar lo teórico-práctico como forma de generación de conocimiento, considerando dicha práctica como praxis y no como aplicación.

De la Asignatura:

Introducir en el análisis y la evaluación de buenos costumbres de programación.