You are on page 1of 11

PROGRAMA DE CURSO

Modelo 2009
PROFESIONAL ASOCIADO
Y LICENCIATURA

Versión Amplia
DEPARTAMENTO: MATEMATICAS, TECNOLOGÍAS DE INFORMACIÓN Y DISEÑO
GRÁFICO
NOMBRE DEL CURSO: Programación I c/ Lab.
CLAVE: 1013M
ACADEMIA A LA QUE PERTENECE: Programación I con Laboratorio

REQUISITOS: ninguno
HORAS: 45
CRÉDITOS: 11.25
PROGRAMA(S) EDUCATIVO(S) QUE LA RECIBE(N): Ingeniería de Software
PLAN: 2009
FECHA DE REVISIÓN: Marzo 2010

Competencia a la que contribuye el curso. Producir aplicaciones de software a partir de especificaciones


de diseño y haciendo uso de las mejores prácticas que aseguren la calidad del producto. Tipo de competencia. Específica.

Descripción general del curso. Este curso provee las bases para solucionar problemas de computadoras utilizando el enfoque estructurado, centrándose
principalmente en el desarrollo de las capacidades lógicas del alumno para enfocarla a la solución de problemas. Provee de una herramienta básica para el curso de
Programación II c/Lab.
Contenido general: Algoritmos computacionales, Enfoque estructurado para solución de problemas básicos y avanzados con Java, descomposición funcional y métodos.

Unidad de Competencia I Elementos de Competencia Requerimientos de información


• Identificar los componentes básicos de una 1. Programas de Computadora
computadora digital, basado en el modelo de 1.1. Concepto de Programa de
Von Newman. Computadora
• Identificar cada uno de los elementos de un 1.2. Modelo de una computadora digital
programa de computadora, basado en el 1.3. Conceptos de Lenguajes de
modelo de Von Newman. Programación
Solucionar problemas mediante algoritmos computacionales • Diferenciar los conceptos de código fuente y 1.3.1. Historia de los lenguajes de
código objeto, de acuerdo a la terminología Programación
implementados en forma de pseudocódigo y diagramas de
general aceptada. 1.3.2. Clasificación de los Lenguajes
flujo, y que cumplan con las características esenciales de un
algoritmo computacional: finito, preciso y definido. • Identificar cada uno de los modelos de de Programación
transformación de código fuente a código 1.3.3. Diferentes Lenguajes de
objeto, de acuerdo a la terminología general Programación en el Mercado
aceptada. 1.4. Conceptos de Código fuente y código
• Crear el modelo de solución para problemas a objeto
resolverse por medio de un algoritmo 1.5. Elementos y componentes de los
computacional, donde se incluyan los programas de Computadora
2. Introducción a la programación utilizando

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
elementos de entrada-proceso-salida. Algoritmos
• Crear pseudocódigos o diagramas de flujo 2.1. Introducción a los algoritmos
escritos que solucionan problemas y que 2.2. Definición de algoritmo computacional
cumplen con las características esenciales de 2.3. Características de un algoritmo
un algoritmo computacional: finito, preciso y computacional.
definido. 2.4. Reglas para la construcción de
• Crear diagramas de flujo que solucionan algoritmos
problemas utilizando la herramienta DFD y que 2.4.1. Notación basada en
cumplen con las características esenciales de Diagramas de Flujo
un algoritmo computacional: finito, preciso y 2.4.2. Notación utilizando
definido. pseudocódigo
2.5. Solución de problemas mediante
algoritmos basados en estructuras
secuenciales
2.5.1. Análisis del problema,
identificación de los elementos
del modelo de solución.
2.5.2. Construcción del algoritmo:
Método de Refinamiento
sucesivo
2.5.3. Definición de tipos de datos
2.5.4. Reglas de construcción de
expresiones matemáticas y de
asignación
2.5.5. Expresiones para
entrada/salida de datos
2.5.6. Desarrollo de algoritmos
secuenciales
2.6. Solución de problemas mediante
algoritmos basados en estructuras
condicionales
2.6.1. Expresiones lógicas
2.6.1.1. Operadores
relacionales
2.6.1.2. Operadores lógicos
2.6.2. La estructura condicional SI
2.6.3. Desarrollo de algoritmos
utilizando estructuras
condicionales
2.7. Solución de problemas mediante
algoritmos basados en estructuras
de repetición
2.7.1. Estructura mientras
2.7.2. Desarrollo de algoritmos
utilizando estructuras de
repetición
2.7.3. Ciclos infinitos

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
2.7.4. Técnicas de terminación de un
ciclo
2.7.4.1. Por fin de conteo
2.7.4.2. Por petición del
usuario
2.7.4.3. Mediante valor
centinela
2.7.5. Técnica de Rastreo de
ejecución

Criterios de Evaluación

Desempeños Productos Conocimientos


• Un organizador gráfico sobre las etapas de los
lenguajes de programación. Debe Incluir la
descripción de cada etapa de los lenguajes de
programación, y por cada una, incluir los
lenguajes de programación representativos.

• Lista de expresiones aritméticas en notación


algorítmica evaluadas por el alumno.
Esta evaluación debe realizarse conforme a
las reglas de precedencia y asociatividad
establecidas para tal fin.

• Lista de expresiones aritméticas traducidas del


campo de Matemáticas a notación algorítmica.
Las expresiones deben traducirse a
expresiones aritméticas en notación algorítmica
considerando las reglas aplicables a
operadores y operandos, así como las reglas de
precedencia y asociatividad.

• Lista de expresiones lógicas en lenguaje natural


traducidas a notación algorítmica. Las
expresiones traducidas deben cumplir con la
notación algorítmica considerando las reglas
aplicables a operadores y operandos, así como
las reglas de precedencia y asociatividad.

• Lista de expresiones lógicas evaluadas por el


alumno. Esta evaluación debe realizarse
conforme a las reglas de precedencia y
asociatividad establecidas para tal fin.

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
• Algoritmos computacionales resueltos para
varios problemas utilizando diagramas de flujo,
pseudocódigo y mediante la herramienta DFD.
Los algoritmos además deben:
a. Seguir una secuencia lógica para resolver
el problema.
b. Deben Identificarse correctamente los
elementos del modelo de solución.
c. Emplear la notación de diagramas de flujo y
pseudocódigo de acuerdo a las reglas
establecidas para tal fin.
d. Deben incluir estructuras secuenciales,
condicionales y de control.
e. Creados en papel y también utilizando la
herramienta DFD.

Unidad de Competencia II Elementos de Competencia Requerimientos de información


• Identificar los elementos principales de la 3. Introducción al Lenguaje de Programación
plataforma Java, de acuerdo al modelo Java
establecido por el fabricante. 3.1. Descripción de la plataforma JAVA
• Identificar las reglas para la construcción de 3.2. Ciclo de desarrollo de una aplicación
una clase en el lenguaje Java. Java
• Identificar las reglas aplicables a la 3.2.1. Edición de Código Fuente
construcción de expresiones aritméticas, de 3.2.2. Compilación y corrección de
entrada-salida y de asignación, dentro del errores.
Crear programas en Java que resuelvan problemas básicos lenguaje Java. 3.2.3. Ejecución de programas.
susceptibles de ser resueltos con la aplicación de estructuras • Identificar los distintos elementos que forman 3.2.4. Depuración.
secuenciales parte del modelo de integración de la 3.3. Representación de Clases en JAVA
herramienta IDE NetBeans y la plataforma 3.3.1. Reglas para nombrar una
Java, de acuerdo a lo establecido por el clase
fabricante de la herramienta. 3.3.2. Sintaxis para la declaración de
• Aplicar el ciclo de desarrollo de Java a la una clase
creación de programas básicos basado en la 3.3.3. Sintaxis para la declaración de
herramienta NetBeans. atributos
3.3.4. El método main()
3.4. Tipos de datos primitivos
3.4.1. Descripción
3.4.2. Sintaxis para la declaración de
variables
3.5. La clase String
3.5.1. Declaración de variables
3.5.2. Métodos de importancia
3.5.3. charAt()

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
3.5.4. length()
3.6. Declaración, uso y evaluación de
expresiones aritméticas
3.6.1. Expresiones de asignación
3.6.2. Operadores y expresiones
aritméticas.
3.6.3. Reglas de precedencia y
asociatividad
3.6.4. Algoritmo para evaluación de
expresiones
3.7. Expresiones para entrada/Salida de
datos
3.7.1. Uso de la clase Scanner para
obtener información del Teclado
3.7.2. Uso de la consola para salida
de datos
3.7.3. Uso de la clase JOptionPane
3.8. Desarrollo de aplicaciones Java
utilizando algoritmos secuenciales

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
Criterios de Evaluación
Desempeños Productos Conocimientos
• Lista de expresiones aritméticas en Java
evaluadas por el alumno. Deben
evaluarse conforme a las reglas de
precedencia y asociatividad del lenguaje.

• Lista de expresiones aritméticas traducidas


del campo de Matemáticas a Java. Deben
traducirse a expresiones aritméticas en
Java considerando las reglas aplicables a
operadores y operandos, así como las
reglas de precedencia y asociatividad.

• Código fuente de al menos 10 programas


básicos en Java. Que deben cumplir lo
siguiente:
a. Dar respuesta al problema planteado.
b. Estar organizados dentro de un
proyecto del IDE NetBeans.
c. La definición de la estructura de una
clase en Java debe realizarse
considerando sus elementos básicos:
encabezado, sentencias import,
sentencia package, declaración del
método main().
d. Incluir en el código el pseudocódigo y
los elementos del modelo de solución.
e. Las instrucciones de Entrada/Salida y
expresiones aritméticas deben
utilizarse en un programa básico en
Java de acuerdo a las reglas
establecidas en el lenguaje de
programación.
f. Incluir el pseudocódigo y modelo de
solución para cada uno de los códigos
mencionados en el punto anterior.

Unidad de Competencia III Elementos de Competencia Requerimientos de información

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
4. Solución de Problemas empleando
• Identificar las distintas sentencias condicionales sentencias de control.
y sus reglas de utilización dentro de Java para 4.1. Expresiones lógicas.
la creación de programas. 4.1.1. Operadores relacionales
• Identificar las distintas sentencias de repetición 4.1.2. Operadores Lógicos
y sus reglas de utilización en Java para la 4.2. Reglas de precedencia y
creación de programas. asociatividad.
• Utilizar los arreglos en Java, en conjunto con 4.3. Sentencias condicionales.
Crear programas en Java que resuelvan problemas sentencias de repetición dentro de un programa 4.3.1. Sentencia if – else
algorítmicos y que requieren sentencias secuenciales, Java. 4.3.2. If anidados.
condicionales y de repetición, así como arreglos, para su • Integrar el uso de sentencias condicionales, de 4.3.3. if – else if
implementación. repetición y arreglos dentro de programas en 4.3.4. Sentencia switch
Java que den respuesta a problemas 4.4. Sentencias para ciclos.
susceptibles de ser resueltos con estos 4.4.1. Sentencia for
elementos. 4.4.2. Sentencia while
4.4.3. Sentencia do – while
4.4.4. Sentencias anidadas
4.5. Manipulación de Arreglos
4.5.1. Declaración
4.5.2. Longitud del arreglo, uso de
length
4.5.3. Manipular el contenido de la i-
ésima posición.
4.5.4. Asignar un valor.
4.5.5. Obtener el valor.
4.6. Desarrollo de aplicaciones utilizando
estructuras de repetición

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
Criterios de Evaluación
Desempeños Productos Conocimientos
• Código fuente de al menos 10 programas
en Java que utilicen sentencias
secuenciales y condicionales para la
solución de problemas.

• Adicionalmente, el código fuente de al


menos 10 programas en Java que utilicen
sentencias secuenciales, condicionales y
de repetición para la solución de problemas.

Los programas deben cumplir con lo


siguiente:
a. Estar completos y correctos, dando
respuesta al problema planteado.
b. Estar organizados dentro de un
proyecto del IDE NetBeans.
c. El código debe incluir el pseudocódigo
y el modelo de solución para el
problema.
d. Utilizar las sentencias condicionales y
de repetición de acuerdo a las reglas
establecidas en el lenguaje. Incluir en
el código el pseudocódigo y los
elementos del modelo de solución.
e. Utilizar las sentencias condicionales y
de repetición de forma que contribuyan
a resolver el problema planteado.
f. Si el caso lo requiere, declarar y utilizar
las variables de arreglos de forma que
contribuyan a resolver el problema
planteado.
g. Incluir el diagrama de flujo en DFD y
modelo de solución para cada uno de
los códigos mencionados en el punto
anterior.

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
Unidad de Competencia IV Elementos de Competencia Requerimientos de información
• Identificar la estructura de un método, aplicable 5. Solución de problemas con el uso de
a una clase en Java. métodos en Java
• Aplicar el método de descomposición funcional 5.1. Uso de la descomposición funcional
en la identificación de los posibles métodos de para solución de problemas
Crear programas con métodos en Java que den respuesta a una clase. complejos
problemas que por su complejidad requieran la técnica de • Desarrollar un programa en Java a partir de los 5.2. Aplicar métodos para solución de
descomposición funcional. métodos identificados mediante la problemas
descomposición funcional. 5.2.1. Sintaxis de declaración de
métodos.
5.2.2. Regla para nombrar métodos
5.2.3. Reglas de ámbito
5.2.4. Declaración de variables
locales
5.2.5. Paso de parámetros
5.2.6. Retorno de resultado.
5.3. Desarrollo de aplicaciones utilizando
métodos.

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
Criterios de Evaluación
Desempeños Productos Conocimientos
• Código fuente de al menos 10 programas
en Java que utilicen métodos para la
solución de problemas. Los programas
creados en Java deben cumplir con lo
siguiente:
a. Los métodos deben declararse de
acuerdo a las especificaciones
indicadas por el profesor.
b. Los métodos deben utilizarse de forma
que contribuyan a resolver el problema
planteado.
c. El programa desarrollado en java debe
dar respuesta al problema planteado.

• Código fuente del proyecto final de la


materia. El programa debe cumplir con lo
siguiente:
d. Sólo deben implementarse los métodos
definidos en el documento sobre
proyecto final.
e. Todos los métodos deben funcionar sin
problemas y producir la solución
deseada.
f. El código fuente de la aplicación debe
formar parte de un proyecto en el IDE
NetBeans.

Actitudes:
• Trabajo en equipo, al realizar las asignaciones extraclase.
• Activo, en la participación en clase.
• Colaborador, en las actividades dentro del aula
• Responsable, en la entrega de trabajos extraclase
• Ordenado, en cuanto a la presentación de sus documentos
• Puntual, en la asistencia a las sesiones de clase.

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.
Evaluación del curso.
Ponderaciones para calificación final del curso:

o Unidad I : 20
o Unidad II: 20
o Unidad III: 20
o Unidad IV: 40
100% (cumplimiento total de criterios)

Bibliografía.
DEAN S, JOHN; DEAN H. RAYMOND; “INTRODUCCION A LA PROGRAMACION CON JAVA”, Editorial McGrawHill, México, Primera Edición.
DECKER, RICK; “PROGRAMACION CON JAVA; INTRODUCCION A LA PROGRAMACION EN JAVA”, INTERNATIONAL THOMSON EDITORES,
México, Segunda Edición.
SCHILDT, HERBERT; “FUNDAMENTOS DE PROGRAMACION EN JAVA 2”, McGrawHill, Colombia, Primera Edición.

Propiedad Intelectual del Instituto Tecnológico de Sonora (registro ante indautor en trámite). Modelo curricular 2009.