Post on 03-Apr-2020
transcript
1. DESARROLLO DE APLICACIONES EN AMBIENTES WEB Y MÓVILES
ISIE-DWM-2015-01
2. Perfil de la especialidad y su aportación al perfil de egreso
2.1Perfil
Seleccionar y aplicar tecnologías de información y comunicación en el desarrollo de proyectos
que integren infraestructura Web y dispositivos móviles.
Implementar mecanismos de seguridad Web y protección de datos.
Aplicar tecnologías actuales de Base de Datos en el desarrollo de aplicaciones Web y
móviles.
2.2Aportación
Integrar soluciones computacionales con diferentes tecnologías, plataformas o dispositivos.
Desarrollar, implementar y administrar software de aplicación que cumpla con los estándares
de calidad con el fin de apoyar la productividad y competitividad de las organizaciones.
Identificar y comprender las tecnologías de hardware para proponer, desarrollar y mantener
aplicaciones eficientes.
Desarrollar una visión empresarial para detectar áreas de oportunidad que le permitan
emprender y desarrollar proyectos aplicando las tecnologías de la información y comunicación
Poseer habilidades metodológicas de investigación que fortalezcan el desarrollo cultural,
científico y tecnológico en el ámbito de sistemas computacionales y disciplinas afines.
3. Objetivo de la especialidad
El estudiante desarrollará aplicaciones en ambientes Web y Móviles para dar solución a problemas
de diversos ámbitos que requieran la utilización de tecnologías computacionales actuales.
4. Competencias Especificas y Genéricas
Competencias específicas:
Utilizar técnicas de modelado para la solución de problemas específicos.
El módulo de especialidad Desarrollo de Aplicaciones ambientes Web y Móviles aportan al
perfil de egreso las siguientes competencias específicas:
Desarrollar aplicaciones Web que involucre el uso de Java y C#, juntos con herramientas de
desarrollo para Web.
Desarrollar aplicaciones Web que involucren almacenamiento y búsqueda de información
Analizar, diseñar e implementar soluciones Web empresariales robustas y optimizadas.
Identificar las implicaciones actuales de la programación móvil.
Identificar las características de los diferentes emuladores para dispositivos móviles
Habilidad para coordinar y participar en proyectos interdisciplinarios
Planear y ejecutar los servicios e instalaciones de las bases de datos para garantizar su
manipulación eficiente.
Identificar necesidades de la organización en el usos y manejo de información.
Desarrolla, mantiene e implementa sistemas de información particulares en alguna actividad
específica o de aplicación global en la organización, permitiendo obtener beneficios como una
operación sencilla, eficiente y segura, de la información que el sistema produce.
Competencias genéricas
Competencias instrumentales:
• Habilidad en el uso de tecnologías de información y comunicación.
• Capacidad de análisis, síntesis y abstracción.
• Capacidad de organizar y planificar
• Capacidad para identificar, plantear y resolver problemas.
• Capacidad para gestionar y formular proyectos.
• Capacidad de comunicación oral y escrita.
• Habilidad para buscar, analizar, clasificar y sintetizar información proveniente de fuentes
diversas.
• Toma de decisiones
Competencias interpersonales:
• Capacidad para trabajar en equipo interdisciplinario.
• Capacidad crítica y autocrítica.
• Capacidad de comunicarse con profesionales de otras áreas.
• Compromiso ético.
• Habilidades interpersonales.
Competencias sistémicas:
• Capacidad de aplicar los conocimientos en la práctica.
• Capacidad de generar nuevas ideas (creatividad).
• Iniciativa y espíritu emprendedor.
• Preocupación por la calidad
• Capacidad de aprender
• Habilidad para trabajar en forma autónoma.
• Habilidades de investigación.
• Capacidad de aprender.
• Búsqueda del logro.
• Liderazgo.
5. Estructura curricular de la especialidad
Desarrollo de aplicaciones en ambientes Web y móviles
No.1 Semestre Nombre de la asignatura Créditos
1 7º. Desarrollo Web con Java 1-4-5
2 7º. Desarrollo de aplicaciones .Net 1-4-5
3 8º. Tópicos Selectos de BD 2-3-5
4 8º. Tópicos de seguridad Web 1-4-5
5 8° Desarrollo Aplicaciones Móviles 1-4-5
6. Elaboración de programas de estudio
6.1 Desarrollo Web con Java
1. Datos Generales de la asignatura
Nombre de la asignatura:
Clave de la asignatura:
SATCA1:
Desarrollo Web Con Java.
DWB-1501
(1-4-5)
1
Carrera: Ingeniería en Sistemas Computacionales.
2. Presentación
Caracterización de la asignatura Desarrollo Web con Java.
Las aplicaciones Web constituyen algo muy cotidiano que ha revolucionado el entorno dado el alto
crecimiento que ha tenido el Internet en la actualidad siendo un soporte para las más diversas y
versátiles soluciones. Esta materia aporta al perfil del egresado los fundamentos teóricos y
prácticos para el desarrollo de aplicaciones Web con Java.
La materia se encuentra estructurada en 5 temas. En el primer tema se introduce al alumno en la
tecnología. En el segundo tema se abordan los conceptos principales del lenguaje Java Server
Page (JSP). En el tercer tema se mejora la habilidad de programar en el lenguaje Java para el
desarrollo de soluciones empresariales con Servlets. En el cuarto tema se expone como se
realizan las conexiones de las aplicaciones WEB a las bases de datos, utilizando JDBC. En el
quinto tema se abordan el uso de componentes JavaBeans y EJB.
La asignatura se relaciona con las materias de Programación, Bases de Datos, Ingeniería de
Software, Sistemas Operativos y Redes de Computadora.
Las competencias adquiridas le permitirán al estudiante cursar materias relacionadas con el Desa-
rrollo de Sistemas y realizar proyectos integradores.
Intención didáctica
Se recomienda que el enfoque de este curso sea fundamentalmente práctico tocando aspectos
teóricos que faciliten la comprensión formal de los temas a tratar. En el tema inicial del curso, se
sugiere tratar los conceptos teóricos de la tecnología JEE en este momento se propone realizar
actividades que incluyan la instalación de la plataforma de desarrollo JEE. En el segundo tema se
abordan los conceptos principales del lenguaje Java Server Page (JSP) de forma netamente
práctica con actividades que implican el desarrollo de ejercicios de programación
fundamentalmente basados en los componentes de la vista de una aplicación Web, como pueden
ser formularios y despliegue de resultados. En el tercer tema se mejora la habilidad de programar
en el lenguaje Java para el desarrollo de soluciones empresariales con Servlets, parte importante
que se constituye para el desarrollo del controlador de una aplicación Web. En el cuarto tema se
expone como se realizan las conexiones de las aplicaciones WEB a las bases de datos, utilizando
JDBC. En el quinto tema se abordan el uso de componentes JavaBeans y EJB, que se
constituyen como la parte del modelo de negocios de la aplicación Web.
Todas las actividades de desarrollo deberán ser documentadas por el estudiante de manera que
pueda demostrar competencias genéricas como son: expresión escrita y oral, el cuarto tema
incluirá mecanismos de conectividad JDBC para dar persistencia de información en bases de
datos.
Las competencias específicas que el alumno lograra en el desarrollo de aplicaciones Web
deberán ser las suficientes como para lograr que esas aplicaciones sean funcionales y de calidad
profesional, debidamente validadas y con interfaces agradables.
Se recomienda que todas las actividades realizadas en el curso sean debidamente propuestas y
guiadas por el facilitador realizando evaluaciones formativas y sumativas. Las actividades podrán
realizarse en equipo donde el alumno podrá demostrar sus competencias genéricas, trabajo
colaborativo, participación en equipo, etc.
3. Participantes en el diseño y seguimiento curricular del programa
Lugar y fecha de elaboración o revisión Participantes Observaciones
Instituto Tecnológico de
Zacatepec.
Departamento de Sistemas y
Computación.
Academia de sistemas y
Computación.
Reunión para el desarrollo de
Especialidades del 23 de
Febrero de 2015.
M.C. Humberto Tiburcio
Zúñiga,
Lic. Venancio Bárcenas
Martínez,
Ing. Yanet Castrejón
Hernández,
M.C. Norma J. Ontiveros
Hernández,
M.T.I. Jesús Ángel Peña
Ramírez,
M.T.I. José Pedro Aragón
Hernández,
Ing. Raymundo Real
Palencia.
Dra. Ana Celia Campos
Hernández,
Dr. Sócrates Espinoza
Salgado y
Lic. Ofelia Espinosa Baca.
Programa aprobado en el pleno de
la Academia de Sistemas y
Computación.
Esta materia forma parte de la
especialidad: Desarrollo de Aplicaciones en Ambientes Web y Móviles, para la Carrera
Ingeniería en Sistemas
Computacionales, Plan de estudios
ISIC-2010-224.
4. Competencia(s) a desarrollar
Competencia(s) específica(s) de la asignatura
Desarrolla aplicaciones web en plataforma Java que permita al estudiante resolver problemas en el
contexto actual del manejo de información por Internet.
5. Competencias previas
Programa aplicaciones computacionales en lenguajes de programación orientados a
objetos.
Implementa sistemas de información siguiendo la metodología de la Ingeniería de
software.
Modela sistemas de bases de datos para la gestión eficiente de la información.
Implementa infraestructura de hardware y software para proveer soporte de desarrollo
sobre Internet.
6. Temario
No. Temas Subtemas
1 Introducción a la
plataforma JEE
1.1 Arquitectura J2EE.
1.2 Estructura de una aplicación Web.
1.3 Instalación y Configuración de J2EE.
1.4 Modelo Vista Controlador (MVC).
2 Desarrollo de JSP 2.1 Introducción a las páginas JSP.
2.2 Secuencias de comandos.
2.3 Acciones JSP.
2.4 Directivas JSP.
2.5 Manejo de formularios con JSP.
2.6 Manejo de excepciones con JSP.
2.7 Sesiones con JSP.
3 Desarrollo de
Servlets
3.1 Introducción.
3.2 Arquitectura del API Servlets.
3.3 Ciclo de vida de los Servlets.
3.4 Atención de peticiones Get y Post.
3.5 Redirección de peticiones a otros recursos.
3.6 Manejo de sesiones.
3.7 Seguimiento de sesiones.
3.8 Desarrollo de archivos JAR.
3.9 Documentación con Javadoc.
4 Conectividad a bases
de datos
4.1 Integración del driver JDBC.
4.2 Creación del pool de conexiones.
4.3 Verificación de la conexión JDBC.
4.4 Creación de recursos JDBC.
5 JavaBeans y EJB 5.1 Definición.
5.2 Estructura de un JavaBean.
5.3 Beans de sesión.
5.4 Beans de entidad.
5.5 Beans dirigidos por mensaje.
5.6 Manejo de transacciones con EnterpriseBeans.
7. Actividades de aprendizaje de los temas
Nombre de tema
Introducción a la plataforma JEE.
Competencias Actividades de aprendizaje
Específica(s):
Implementa la infraestructura de la plataforma
JEE para el desarrollo de aplicaciones Web.
Realizar una búsqueda bibliográfica por
equipos de diversas fuentes de información
sobre la estructura de las aplicaciones Web y
resumir en cuadro sinóptico, en sesión grupal
obtener conclusiones.
Genéricas:
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Habilidad de investigación.
- Capacidad para aprender.
Instalar y configurar JEE
Nombre de temaDesarrollo de JSP.
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla aplicaciones Web utilizando la
tecnología Java Server Page (JSP).
Genéricas:
- Capacidad de análisis y síntesis.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad crítica y autocrítica.
- Habilidad de investigación.
- Capacidad para aprender.
- Capacidad de aplicar los conocimientos en
la práctica.
A partir de material relativo al tema sintetizar
en una metodología la forma de desarrollar
aplicaciones Web con JSP. Intercambio
grupal al final de la actividad.
Realizar prácticas de laboratorio.
Nombre de temaDesarrollo de Servlets.
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla aplicaciones Web con Servlet.
Genéricas:
- Capacidad de análisis y síntesis.
Exposición magistral del profesor en torno al
desarrollo de aplicaciones web con Servlets.
Se producirá debate grupal a partir del
cuestionario que resuma la exposición del
profesor.
Realizar prácticas de laboratorio.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad crítica y autocrítica.
- Habilidad de investigación.
- Capacidad para aprender.
- Capacidad de aplicar los conocimientos en
la práctica.
Nombre de temaConectividad a bases de datos.
Competencias Actividades de aprendizaje
Específica(s):
Aplica los pasos básicos para la conexión de
bases de datos usando el API JDBC.
Genéricas:- Capacidad de análisis y síntesis.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad de aplicar los conocimientos en
la práctica.
Realizar una búsqueda bibliográfica por
equipos de diversas fuentes de información
sobre el driver JDBC y resumir en tabla
comparativa.
Realizar prácticas de laboratorio.
Nombre de temaJavaBeans y EJB.
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla aplicaciones Web con la integración
de JavaBeans y Enterprise JavaBeans.
Genéricas:- Capacidad de análisis y síntesis.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad de aplicar los conocimientos en
A partir de material relativo al tema sintetizar
la forma de desarrollo de aplicaciones Web
con JavaBeans y EJB. Sintetizar
procedimiento a seguir.
Realizar prácticas de laboratorio.
la práctica.
8. Práctica(s)
Prácticas:
1. Instalación y configuración de un contenedor de Servlets y JSP (se sugiere el Tomcat),
creando y probando un sitio con un caso simple de JSP y Servlets para efecto de prueba
del servicio.
2. Dar solución con JSPs a problemas específicos propuestos por el profesor, haciendo uso
de formularios incluyendo su validación.
3. Dar solución con Servlets a problemas específicos propuestos por el profesor, que reciban valores desde formularios, procesen información y generen resultados como vista de salida.
4. Desarrollar programas con Servlets que establezcan conexión con base de datos para
implementar las operaciones de inserción, borrado, consulta y modificación de registros.
5. Desarrollar EnterpriseJavaBeans que permitan implementar la lógica de negocio de una
aplicación distribuida, instalando previamente un contenedor de EJBs (se sugiere JBoss).
9. Proyecto de asignatura
Desarrollar una aplicación Web que resuelva un problema del mundo real. Se sugiere que el
producto se constituya como una herramienta de apoyo a las materias de la Carrera de Ingeniería
en Sistemas Computacionales, o como apoyo a la automatización de algún proceso de la gestión
educativa.
La aplicación deberá cumplir con las siguientes especificaciones:
1. La filosofía de diseño se basará en MVC (Modelo Vista-Controlador).
2. La Vista deberá ser desarrollada con JSPs, el Controlador se implementará con Servelets
y el Modelo se desarrollará con JavaBeans y/o EJBs.
3. La información deberá hacerse persistente en Bases de Datos que puedan ser accedidos
con JDBC.
4. El proyecto deberá entregarse funcionando y debe fundamentarse a partir de los aspectos
siguientes:
Base Teórica.
Planeación del Proyecto.
Evidencia de la Ejecución realizada.
Conclusiones y Recomendaciones.
10. Evaluación por competencias
Tema 1:
- Cuadro sinóptico
- Rúbrica del trabajo Grupal.
- Instalar y configurar JEE.
Tema 2:
- Metodología de trabajo.
- Rúbrica del trabajo grupal.
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
Tema 3:
- Cuestionario.
- Rúbrica del trabajo grupal
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
Tema 4:
- Tabla comparativa
- Rúbrica del trabajo grupal
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
Tema 5:
- Síntesis del procedimiento
- Rúbrica del trabajo grupal
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
11. Fuentes de información
1. Deitel, Deitel. (2008). Java como programar, 7a. edición. España: Ed. Pearson, Prentice Hall.
2. Jendrock, E., Ball J., Carson D., Evans I., Fordin S., Haase K., The Java EE 6 Tutorial for Sun
Java System Application Server. (2006). The Java’ EE 5 Tutorial (3rd Edition). España:
Addison Wesley.
3. Jim, K. (2003). J2EE: Manual de referencia. España: MacGrawHill.
4. Reese, G. (2003). Java Database best Practices. USA: O’Reilly.
5. Hanna P. Manual de referencia JSP. (2002). España: McGraw-Hill.
6. Richard M. Haefel, B., Labourey S. (2010). Enterprise JavaBeans 4 edition. USA: O'Reilly.
7. Reese, G., (2000). Database Programming with JDBC and Java, 2nd Edition, USA: O'Reilly.
5.7 Desarrollo de aplicaciones .Net
1. Datos Generales de la asignatura
Nombre de la asignatura:
Clave de la asignatura:
SATCA2:
Carrera:
Desarrollo de aplicaciones .NET.
DWB-1502
(1-4-5)
Ingeniería en Sistemas
2
Computacionales.
2. Presentación
Caracterización de la asignatura Desarrollo de aplicaciones .NET.
Esta asignatura aporta al perfil del Ingeniero en Sistemas Computacionales, la capacidad para
desarrollar habilidades en el desarrollo de aplicaciones .NET, así como trabajo de equipo,
comunicación efectiva y toma de decisiones, que le permitan un desempeño eficiente en su
ámbito personal y profesional.
Esta materia deberá cursarse en el séptimo semestre, teniendo como precedente la materia de
Programación WEB, donde se proporcionan al alumno las bases para modelar las aplicaciones
web con tecnología java.
La materia se encuentra estructurada en 4 temas. En el primer tema se introduce al alumno en la
tecnología. En el segundo tema se desarrolla la habilidad de programar en el lenguaje C#
abarcando desde aplicaciones de consola hasta aplicaciones de escritorio. El tercer tema expone
como se realizan las conexiones de las aplicaciones desarrolladas con .NET a las bases de datos.
En el cuarto tema se analizará la forma de desarrollar formularios Web con ASP para las
aplicaciones Web.
La asignatura se relaciona con las materias de Programación, Bases de Datos, Ingeniería de
Software, Sistemas Operativos y Redes de Computadora.
Intención didáctica
El temario está organizado en cuatro temas; en el primer tema se introduce al alumno en la
tecnología. En el segundo tema se desarrolla la habilidad de programar en el lenguaje C#
abarcando desde aplicaciones de consola hasta aplicaciones de escritorio. El tercer tema expone
como se realizan las conexiones de las aplicaciones desarrolladas con .NET a las bases de datos.
En el cuarto tema se analizará la forma de desarrollar formularios Web con ASP para las
aplicaciones Web.
3. Participantes en el diseño y seguimiento curricular del programaLugar y fecha de
elaboración o revisión Participantes Observaciones
Instituto Tecnológico de
Zacatepec.
Departamento de Sistemas y
Computación.
Academia de sistemas y
Computación.
Reunión para el desarrollo de
Especialidades del 23 de
Febrero de 2015.
M.C. Humberto Tiburcio
Zúñiga,
Lic. Venancio Bárcenas
Martínez,
Ing. Yanet Castrejón
Hernández,
M.C. Norma J. Ontiveros
Hernández,
M.T.I. Jesús Ángel Peña
Ramírez,
M.T.I. José Pedro Aragón
Hernández,
Ing. Raymundo Real
Palencia.
Dra. Ana Celia Campos
Hernández,
Dr. Sócrates Espinoza
Salgado y
Lic. Ofelia Espinosa Baca.
Programa aprobado en el pleno de
la Academia de Sistemas y
Computación.
Esta materia forma parte de la
especialidad: Desarrollo de Aplicaciones en Ambientes Web y Móviles, para la Carrera
Ingeniería en Sistemas
Computacionales, Plan de estudios
ISIC-2010-224.
4. Competencia(s) a desarrollar
Competencia(s) específica(s) de la asignaturaEl alumno conocerá y aplicará las tecnologías .NET para el desarrollo de aplicaciones Web y
móviles.
Escribir páginas Web con ASP.NET.
Aumentar la separación del código del contenido y la modularidad de su código.
Usar y definir controles propios ya sean Web o no.
Mostrar y modificar datos de una base de datos usando ADO.NET.
Manipular y actualizar datos usando DataSets de ADO.NET
Leer, escribir, editar y validar documentos XML, así como convertir y transformar datos XML.
Implementar servicios WEB con .NET
Plantear la arquitectura y configurar los aspectos de una aplicación .NET.
5. Competencias previas Programa aplicaciones computacionales en lenguajes de programación orientados a objetos.
Implementa sistemas de información siguiendo la metodología de la Ingeniería de software.
Modela sistemas de bases de datos para la gestión eficiente de la información.
Implementa infraestructura de hardware y software para proveer soporte de desarrollo sobre
Internet.
6. Temario
No. Temas Subtemas
1 Fundamentos del
lenguaje C#.
1.1 Introducción a C#.
1.2 Estructura básica de un programa.
1.2.1. Tipos De Datos.
1.2.2. Operadores.
1.3 Toma de decisiones.
1.4 Ciclos.
1.5 Funciones y métodos.
1.5.1. Funciones matemáticas.
1.5.2. Funciones para gestionar cadenas.
1.5.3. Funciones definidas por el usuario
1.6 Arreglos.
1.7 Estructuras y enumeraciones.
2 Interfaces gráficas de
usuario con C#.
2.1.Windows Forms Básicos.
2.2.Diseño de la interfaz.
2.3.Manejo de eventos.
2.4.Creación de Controles.
3 Conectividad a bases
de datos.
3.1. Introducción a ADO.NET.
3.2. Componentes de ADO.NET.
3.3. Conjunto de datos.
3.4 Proveedores de datos.
3.5 Acceso a bases de datos con ADO.NET.
3.6 Manipulación de datos con DataSet y DataReader.
4 ASP.NET. 4.1. Introducción a ASP.NET.
4.2.Formularios Web.
4.2.1. Controles HTML.
4.2.2. Controles Web.
4.3. Creación de un proyecto ASP.NET.
4.4. Objetos integrados de ASP.NET.
4.5. Configuración.
7. Actividades de aprendizaje de los temas
Nombre de temaFundamentos del lenguaje C#.
Competencias Actividades de aprendizaje
Específica(s):
Diseñar y desarrollar programas en el lenguaje
de programación C#.
Genéricas:
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Habilidad de investigación.
- Capacidad para aprender.
1. Conocer la sintaxis del lenguaje.
2. Diseñar soluciones computacionales.
3. Desarrollar programas en C#.
Nombre de temaInterfaces gráficas de usuario con C#.
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla interfaces gráficas de usuario con
C#.
Genéricas:
1. Conocer los controles comunes de las
interfaces gráficas de usuario
2. Diseño de interfaces gráficas de usua-
rio.
3. Diseñar soluciones computacionales.
- Capacidad de análisis y síntesis.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad crítica y autocrítica.
- Habilidad de investigación.
- Capacidad para aprender.
- Capacidad de aplicar los conocimientos en
la práctica.
Nombre de temaConectividad a bases de datos.
Competencias Actividades de aprendizaje
Específica(s):
Manipular y actualizar datos con ADO.NET.
Genéricas:
- Capacidad de análisis y síntesis.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad crítica y autocrítica.
- Habilidad de investigación.
- Capacidad para aprender.
- Capacidad de aplicar los conocimientos en
la práctica.
1. Configurar conexiones a bases de
datos.
2. Crear aplicaciones que muestren y
modifiquen datos de una base de datos
usando ADO.NET
Nombre de temaASP.NET.
Competencias Actividades de aprendizaje
Específica(s):
Crear formularios Web con ASP.NET
1. Crear formas Web usando controles
Web.
2. Crear controladores de eventos para
los controles.
Genéricas:- Capacidad de análisis y síntesis.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad de aplicar los conocimientos en
la práctica.
8. Práctica(s)
1. Investigar la tecnología .NET y contextualizar las aplicaciones cliente y Web desarrolladas
con esta plataforma.
2. Desarrollar programas de escritorio que permitan resolver problemas simples propuestos por
el profesor como por ejemplo: Calculo de factorial, cálculos de áreas, operaciones entre
números, cálculos de impuestos, etc.
3. Desarrollar programas para ilustrar la utilización de los distintos controles en el diseño de
formas para Windows.
4. Desarrollar programas que permitan realizar conexión con base de datos para insertar,
borrar, consultar y modificar registros.
5. Desarrollar aplicaciones que impliquen formularios en Web.
9. Proyecto de asignatura
Desarrollar una aplicación Web que resuelva un problema del mundo real. Se sugiere que el
producto se constituya como una herramienta de apoyo a las materias de la Carrera de Ingeniería
en Sistemas Computacionales, o como apoyo a la automatización de algún proceso de la gestión
educativa.
La aplicación deberá cumplir con las siguientes especificaciones:
1. La filosofía de diseño se basará en MVC (Modelo Vista-Controlador).
2. La Vista deberá ser desarrollada con JSPs, el Controlador se implementará con Servelets
y el Modelo se desarrollará con JavaBeans y/o EJBs.
3. La información deberá hacerse persistente en Bases de Datos que puedan ser accedidos
con JDBC.
4. El proyecto deberá entregarse funcionando y debe fundamentarse a partir de los aspectos
siguientes:
Base Teórica.
Planeación del Proyecto.
Evidencia de la Ejecución realizada.
Conclusiones y Recomendaciones.
10. Evaluación por competencias
Tema 1:
- Cuadro sinóptico
- Rúbrica del trabajo Grupal.
- Instalar y configurar JEE.
Tema 2:
- Metodología de trabajo.
- Rúbrica del trabajo grupal.
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
Tema 3:
- Cuestionario.
- Rúbrica del trabajo grupal
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
Tema 4:
- Tabla comparativa
- Rúbrica del trabajo grupal
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
Tema 5:
- Síntesis del procedimiento
- Rúbrica del trabajo grupal
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
11. Fuentes de información
1. Stellman, A., Greene, J., (16 DE SEPTIEMBRE DE 2013). Head First C#. USA: O'Reilly
Media; Edición3.
2. Ceballos F. J., (2008). Aplicaciones .NET multiplataforma. Madrid. RA-MA.
3. Arrioja Landa Cosío Nicolas. (FECHA) Curso de programación C#. Desarrolladores.
MEGAPUNTO.
5.8 Tópicos Selectos de Bases de Datos
1. Datos Generales de la asignatura
Nombre de la asignatura:
Clave de la asignatura:
SATCA3:
Carrera:
Tópicos Selectos de Bases de Datos.
DWD-1503
(2-3-5)
Ingeniería en Sistemas Computacionales.
3 Sistema de Asignación y Transferencia de Créditos Académicos
2. Presentación
Caracterización de la asignatura Tópicos Selectos de Bases de Datos.
La información ha llegado a ser considerada un recurso fundamental de toda organización. Por
un lado, encontramos que los usuarios cada vez demandan sistemas más flexibles y eficientes
lo que obliga a poner mayor atención en los datos y su estructura; por otro lado, los diseñadores
de sistemas de información se han convencido de la trascendencia que tiene la gestión de los
datos para conseguir un desarrollo coherente y eficaz de los sistemas. Esto ha hecho que las
bases de datos ocupen un primer plano en el área de las tecnologías de la información.
La gestión de bases de datos ha evolucionado de ser una aplicación informática especializada a
ser una parte esencial de un entorno informático moderno y, como consecuencia, el
conocimiento acerca de las nuevas propuestas en sistemas de bases de datos se ha convertido
en una parte fundamental.
En la gestión de base de datos y sus tópicos, es importante identificar, diseñar, desarrollar los
mecanismos de almacenamiento, visualización y manipulación de la información; así como
identificar y aplicar modelos pertinentes en el diseño e implementación de base de datos para la
gestión de la información en las organizaciones.
Esta asignatura proporciona al estudiante los conocimientos básicos para resolver problemas
de aplicaciones de la vida cotidiana y de la ingeniería utilizando un modelo de bases de datos
adecuado. Está diseñada para el logro de cuatro competencias específicas dirigidas a la
comprensión de los dominios de: Bases de Datos Semi-estructuradas (XML), bases de datos
orientadas a objetos, creación y explotación de almacenes de Datos (Data Warehouse) y las
nuevas tendencias tecnológicas en el campo de bases de datos.
Intención didáctica
La asignatura pretende proporcionar al alumno las nuevas tendencias en bases de datos.
Se organiza el temario en cuatro temas.
En el primer tema se estudian las Bases de Datos Semi-estructuradas (XML
Por otro lado, debido a las limitaciones impuestas por el modelo relacional, por ejemplo en el
manejo de datos complejos, se han propuesto nuevos modelos que las resuelvan, tal es el caso
de las bases de datos orientadas a objetos que se presentan en el segundo tema.
En el tercer tema se presenta la creación y explotación de almacenes de Datos (Data Warehouse)
Y, finalmente, en el cuarto tema, se presentan los conocimientos sobre algunas de las nuevas
tendencias en bases de datos.
Se proponen actividades de aprendizaje que permitan al estudiante el desarrollo de las
competencias requeridas, y se propone adecuarlas al contexto.
3. Participantes en el diseño y seguimiento curricular del programa
Lugar y fecha de elaboración o revisión Participantes Observaciones
Instituto Tecnológico de
Zacatepec.
Departamento de Sistemas y
Computación.
Academia de sistemas y
Computación.
Reunión para el desarrollo de
Especialidades del 23 de
Febrero de 2015.
M.C. Humberto Tiburcio
Zúñiga,
Lic. Venancio Bárcenas
Martínez,
Ing. Yanet Castrejón
Hernández,
M.C. Norma J. Ontiveros
Hernández,
M.T.I. Jesús Ángel Peña
Ramírez,
M.T.I. José Pedro Aragón
Hernández,
Programa aprobado en el pleno de
la Academia de Sistemas y
Computación.
Esta materia forma parte de la
especialidad: Desarrollo de Aplicaciones en Ambientes Web y Móviles, para la Carrera
Ingeniería en Sistemas
Computacionales, Plan de estudios
ISIC-2010-224.
Ing. Raymundo Real
Palencia.
Dra. Ana Celia Campos
Hernández,
Dr. Sócrates Espinoza
Salgado y
Lic. Ofelia Espinosa Baca.
4. Competencia(s) a desarrollar
Competencia(s) específica(s) de la asignatura
Aplicar tópicos en el tratamiento de información en problemáticas relacionadas con
encriptación en bases de datos, bases de datos orientadas a objetos y sistema de gestión
de contenidos.
5. Competencias previas
Diseñar y manipular bases de datos relacionales.
Administrar bases de datos utilizando un sistema de gestión de bases de datos.
Manipular información estadística de la base de datos.
6. Temario
No. Temas Subtemas
1 Bases de Datos
Semi-estructuradas
(XML).
1.1 Definición de datos semi-estructurados.
1.2 Introducción a XML.
1.3 Consultando datos con XPath, XQuery y SQL/XML.
1.4 Motores de consulta XML.
2 Sistemas de Bases
de Datos Orientadas
a Objetos.
2.1 El modelo de datos orientado a objetos.
2.1.1. Características de los SGBDOO.
2.1.2. Tipos de SGBDOO.
2.1.3. Productos.
2.2. El estándar ODMG.
2.3. Identidad y estructura de objetos.
2.4. Encapsulamiento, herencia y polimorfismo en BDOO.
2.5. Persistencia, concurrencia y recuperación en BDOO.
3 Creación y
Explotación de
Almacenes de
Datos (Data
Warehouse).
3.1 Introducción a los Almacenes de Datos.
3.2 Procesamiento Analítico en Línea (OLAP).
3.3 Modelos de Datos: ROLAP, MOLAP, HOLAP.
3.4 Operadores Multidimensionales.
3.5 Minería de Datos.
4 Tendencias
Tecnológicas.
4.1 Introducción a las tecnologías emergentes en bases de datos.
4.2 Manejo de Nube.
4.3 NoSql.
4.4 BigData.
7. Actividades de aprendizaje de los temas
Nombre de tema
Bases de Datos Semi-estructuradas (XML).
Competencias Actividades de aprendizaje
Específica(s):
Implementa bases de datos semi-estructuradas
para dar persistencia a información en formatos
XML.
Genéricas:- Habilidad de investigación.
- Capacidad de aplicar los conocimientos en
la práctica.
- Capacidad de generar nuevas ideas.
- Optimiza soluciones.
- Usa el pensamiento lógico, algorítmico,
heurístico, analítico y sintético.
Realizar una búsqueda bibliográfica por
equipos de diversas fuentes de información
sobre bases de datos semi-estructuradas.
Los diferentes formatos se resumen en un
cuadro sinóptico y en sesión grupal se
obtienen conclusiones.
Usar formatos XML.
Nombre de tema
Sistemas de Bases de Datos Orientadas a Objetos.
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla base de datos orientada a objetos para manipular información con mayor eficiencia.
Genéricas:- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Habilidad de investigación.
- Capacidad para aprender.
- Capacidad de análisis y síntesis.
- Capacidad crítica y autocrítica.
- Habilidad de investigación.
A partir de material relativo al tema sintetizar
en una metodología la forma de desarrollar
aplicaciones de bases de datos orientadas a
objetos. Intercambio grupal al final de la
actividad.
Realizar prácticas de laboratorio.
Nombre de tema
Creación y Explotación de Almacenes de Datos (Data Warehouse).
Competencias Actividades de aprendizaje
Específica(s):
Diseña almacenes de datos para la
manipulación de grandes cantidades de
información.
Genéricas:
- Capacidad de análisis y síntesis.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad crítica y autocrítica.
- Habilidad de investigación.
- Capacidad para aprender.
- Capacidad de aplicar los conocimientos en
la práctica.
Exposición magistral del profesor en torno al
desarrollo de almacenes de datos para la
manipulación de grandes cantidades de
información. Se producirá debate grupal a
partir del cuestionario que resuma la
exposición del profesor.
Realizar prácticas de laboratorio.
Nombre de tema
Tendencias Tecnológicas.
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla una visión actualizada para
contextualizarse en las tecnologías emergentes
de bases de datos.
Genéricas:- Capacidad de análisis y síntesis.
Realizar una búsqueda bibliográfica por
equipos de diversas fuentes de información
sobre las nuevas tendencias tecnológicas y
resumir en una tabla.
Realizar prácticas de laboratorio.
- Habilidad para buscar y analizar.
- Trabajo en equipo.
- Capacidad de aplicar los conocimientos en
la práctica.
8. Práctica(s)
Prácticas:
1. Diseñar una base de datos semi-estructurada para consultar datos con XPath,
XQuery y SQL/XML.
2. Implementar un caso de base de datos orientado a objetos utilizando un manejador que lo
soporte.
3. Desarrollar un cubo de información a través de una tecnología como OLAP que permita
generar distintas vistas de información de acuerdo a un problema dado.
4. Desarrollar un ejemplo de acceso a información con una tecnología actual como
almacenamiento en la nube, BigData, o NoSql.
9. Proyecto de asignatura
Desarrollar una aplicación Web que resuelva un problema del mundo real implementando
tecnologías emergentes de bases de datos. Se sugiere que el producto se constituya como una
herramienta de apoyo a las materias de la Carrera de Ingeniería en Sistemas Computacionales, o
como apoyo a la automatización de algún proceso de la gestión educativa.
La aplicación deberá cumplir con las siguientes especificaciones:
1. La filosofía de diseño se basará en MVC (Modelo Vista-Controlador).
2. La Vista deberá ser desarrollada con JSPs, el Controlador se implementará con Servelets
y el Modelo se desarrollará con JavaBeans y/o EJBs.
3. La información deberá hacerse persistente en Bases de Datos.
4. El proyecto deberá entregarse funcionando y debe fundamentarse a partir de los aspectos
siguientes:
Base Teórica.
Planeación del Proyecto.
Evidencia de la Ejecución realizada.
Conclusiones y Recomendaciones.
10. Evaluación por competencias
Tema 1:
- Cuadro sinóptico
- Rúbrica del trabajo Grupal.
- Instalar y usar formatos XML.
Tema 2:
- Metodología de trabajo.
- Rúbrica del trabajo grupal.
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
Tema 3:
- Cuestionario.
- Rúbrica del trabajo grupal
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
Tema 4:
- Elaboración de Tabla.
- Rúbrica del trabajo grupal
- Desenvolvimiento en el desarrollo de la práctica de laboratorio.
- Informe de la práctica de laboratorio.
11. Fuentes de información
1. Ramez A. Elmasri, Shamkant B., (2002). Fundamentos de Sistemas de Bases de Datos,
5ª. Edición: Addison Wesley.
2. K. Burleson D. (1994). Practical Application of Object-Oriented Techniques to Relational
Databases: OMG.
3. Date C. J., (2009). Introducción a los Sistemas de Bases de Datos, 7a. edición: Prentice
Hall.
4. Taylor D. A. (1992). Wiley. Object-Oriented Information Systems: Planning and
Implementation. John Wiley & Sons Inc.
5. Silberschatz, Korth, Sudarshan, (2006). Fundamentos de Bases de Datos, 4ª. Edición, Mc
Graw Hill.
6. Batini Ceri Navathe, (1998). Diseño Conceptual de Base de Datos, Edición Addison-
Wesley.
5.9 Tópicos de Seguridad Web
1. Datos Generales de la asignatura
Nombre de la asignatura:
Clave de la asignatura:
SATCA4:
Tópicos de Seguridad Web
DWB-1504
1-4-5
4 Sistema de Asignación y Transferencia de Créditos Académicos
Carrera: Ingeniería en Sistemas Computacionales
2. Presentación
Caracterización de la asignatura
La seguridad informática es una característica esencial en los actuales contextos
computacionales, en donde el recurso de la información puede verse altamente comprometido
sino se toman las medidas adecuadas de protección y preservación de datos. Hoy en día existe la
necesidad de desarrollar sistemas en la web, y el tema de seguridad es sin duda un punto muy
importante.
Esta materia aporta al perfil del Ingeniero en Sistemas Computacionales, los conocimientos,
habilidades, y metodologías para implementar seguridad informática bajo políticas internas de las
organizaciones y estándares aceptados, que permitan plantear soluciones y protección de datos
en el desarrollo de aplicaciones web haciendo uso de herramientas de software y hardware
adecuadas.
La materia se encuentra dividida en cuatro temas, en el primer tema se da una introducción a los
conceptos y principios de la seguridad informática. En el segundo tema se estudian aspectos rela-
cionados a la seguridad en infraestructura de aplicaciones. En el tercer tema se exponen los me-
canismos de autenticación que generalmente se implementan en los desarrollos Web. Por último,
se aborda el desarrollo de perfiles, aspecto importante en la validación de usuarios que acceden a
información confidencial a través de los desarrollos Web.
La asignatura se relaciona con las materias de programación Web, bases de datos, redes de com-
putadoras, sistemas operativos y desarrollo de sistemas.
Para cursar esta materia se requiere tener las competencias previas de programación Web, Bases
de Datos y Redes de Computadoras.
Las competencias adquiridas le permitirán al estudiante cursar materias relacionadas con el Desa-
rrollo de Sistemas y realizar proyectos integradores.
Intención didáctica
El docente debe enfatizar la realidad existente, relacionada con el contexto en el que se ejecutan
las aplicaciones web en donde la seguridad es un aspecto fundamental a considerar. Así mismo,
se debe concientizar al estudiante que las transacciones realizadas sobre las aplicaciones en
internet requieren un soporte tecnológico que garantice su legalidad.
Se recomienda que el enfoque de este curso sea fundamentalmente práctico tocando aspectos
teóricos que faciliten la comprensión formal de los temas a tratar. El primer tema, Introducción de
Seguridad, le permitirá al estudiante conceptualizar aspectos fundamentales de seguridad de
cómputo, abordando políticas y procedimientos de seguridad, así como mecanismos de
encriptación. En el segundo tema, Seguridad en Infraestructura Web, se aborda la seguridad en la
capa de transporte, tratando principalmente los protocolos de tunelización SSL/TLS, ubicándolos
adecuadamente dentro del modelo de protocolos TCP/IP. Además el estudiante aplicará el
concepto de Infraestructura de Clave Pública (PKI) y sus componentes, con el fin de mostrar su
utilidad en la generación de certificados digitales, también se aborda la seguridad en servidores
que tiene como intención el estudio de la seguridad del lado del servidor, incluyendo temas que
ilustran la operación de servidores con servicios configurados de forma segura. También se
incluyen conceptos de seguridad perimetral como el uso de cortafuegos, sistemas de detección de
intrusos y canales seguros con VPNs. El tercer tema estudia un requisito esencial de la seguridad
como es la autenticación, indispensable en el desarrollo de aplicaciones Web que soliciten acceso
a usuarios, creación y seguimiento de sesiones, etc. En el cuarto tema se trata el manejo de
perfiles exponiendo mecanismos genéricos que controlen el correcto y eficiente acceso a módulos
de una aplicación dependiendo de las características y derechos de los usuarios, bajo la premisa
de que no todos los usuarios pueden acceder a los mismos módulos ni tampoco con los mismos
permisos.
Todas las actividades de desarrollo deberán ser documentadas por el estudiante de manera que
pueda demostrar competencias genéricas como son: Trabajo en equipo, capacidad de aplicar los
conocimientos en la práctica, expresión escrita y oral. Se recomienda que todas las actividades
realizadas en el curso sean debidamente propuestas y guiadas por el facilitador realizando
evaluaciones formativas y sumativas. Las actividades podrán realizarse en equipo donde el
alumno podrá demostrar sus competencias genéricas, trabajo colaborativo, participación en
equipo, etc.
Las competencias específicas que el alumno logrará en la asignatura, deberán ser las suficientes
como para lograr que las aplicaciones Web sean funcionales, seguras y de calidad profesional,
debidamente validadas y con interfaces agradables.
3. Participantes en el diseño y seguimiento curricular del programa
Lugar y fecha de elaboración o revisión Participantes Observaciones
Instituto Tecnológico de
Zacatepec.
Departamento de Sistemas y
Computación.
Academia de sistemas y
Computación.
Reunión para el desarrollo de
Especialidades del 23 de
Febrero de 2015.
M.C. Humberto Tiburcio
Zúñiga,
Lic. Venancio Bárcenas
Martínez,
Ing. Yanet Castrejón
Hernández,
M.C. Norma J. Ontiveros
Hernández,
M.T.I. Jesús Ángel Peña
Ramírez,
M.T.I. José Pedro Aragón
Hernández,
Ing. Raymundo Real
Palencia.
Dra. Ana Celia Campos
Hernández,
Dr. Sócrates Espinoza
Salgado y
Lic. Ofelia Espinosa Baca.
Programa aprobado en el pleno de
la Academia de Sistemas y
Computación.
Esta materia forma parte de la
especialidad: Desarrollo de Aplicaciones en Ambientes Web y Móviles, para la Carrera
Ingeniería en Sistemas
Computacionales, Plan de estudios
ISIC-2010-224.
4. Competencia(s) a desarrollar
Competencia(s) específica(s) de la asignaturaImplementa mecanismos de seguridad en infraestructura de software y hardware para el
desarrollo de aplicaciones Web.
5. Competencias previas
Implementa sistemas de infraestructura de software y hardware en redes para dar
solución a problemas que impliquen una correcta administración de recursos
computacionales.
Desarrolla programas de cómputo basados en modelado de objetos para resolver
problemas reales en diferentes contextos.
Implementa Sistemas de base de datos basadas en SQL para el almacenamiento
estructurado y eficiente acceso de información.
6. Temario
No. Temas Subtemas
1 Introducción a la Seguridad 1.1 Requerimientos de seguridad (privacidad,
integridad, disponibilidad, autenticación).
1.2 Sistemas criptográficos de clave privada y
de clave pública.
1.3 Primitivas criptográficas(firmas digitales,
estampas de tiempo, funciones hash,
MACs).
1.4 Infraestructura de clave pública.
2 Seguridad en Infraestructura Web 2.1 Seguridad en la capa de transporte (SSL,
TLS, DTLS)
2.2 Servidores seguros
2.3 Firewall e IDS
2.4 Protocolos tunelizados y VPN
3 Autenticación 3.1 Mecanismos de autenticación
3.2 Sesiones de trabajo
3.2.1 Creación y seguimiento.
3.2.2 Eliminación
3.2.3 Personalizar
3.3 Control de los datos de autenticación
3.3.1 Bitácoras
4 Desarrollo de Perfiles 4.1 Estructura de perfiles
4.2 Desarrollo e implementación de perfiles
4.3 Definición de usuarios
4.4 Definición de permisos
4.5 Mapeo de programas
7. Actividades de aprendizaje de los temas
Nombre del Tema
Introducción a la seguridad
Competencias Actividades de aprendizaje
Específica(s):
Define los conceptos de seguridad informática
para establecer políticas y procedimientos de
seguridad y conocer los mecanismos
encriptación.
Genéricas:
- Habilidad para buscar y analizar
- Representa e interpreta conceptos en
diferentes formas: gráfica, escrita y verbal
- Habilidades básicas para elaborar
diagramas
- Trabajo en equipo
- Aplicar conocimientos a la práctica.
Búsqueda de información en internet.
Realizar lecturas sobre seguridad de
cómputo y contestar cuestionarios
Utilizar herramientas (OpenSSL, PGP)
disponibles para aplicar mecanismos
de encriptación, crear llaves,
certificados y firmas.
Nombre del tema
Seguridad en infraestructura Web
Competencias Actividades de aprendizaje
Específica(s):
Implementar infraestructura de seguridad en
servidores basada en protocolos de seguridad
SSL/TLS, para dar soporte al desarrollo y
ejecución de aplicaciones Web.
- Búsqueda de información en Internet
sobre la seguridad en la capa de
transporte y realizar exposiciones.
- Instalar y configurar servidores con
seguridad: SSH, HTTPS, etc.,
- Configurar cortafuegos simples que
Genéricas:
- Capacidad de análisis y síntesis
- Habilidad para buscar y analizar
- Trabajo en equipo
- Capacidad crítica y autocritica
- Habilidad de investigación
- Capacidad para aprender
- Capacidad de aplicar los conocimientos en
la práctica.
permitan filtrar tráfico de red en base a
políticas permisivas y restrictivas.
Nombre del Tema
Autenticación
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla módulos de autenticación que
controlen el acceso seguro a las aplicaciones
Web.
Genéricas:
- Trabajo en equipo
- Capacidad crítica y autocritica
- Capacidad para aprender
- Capacidad de aplicar los conocimientos en
la práctica.
Desarrollar un módulo de autenticación de
usuarios con mecanismos de
encriptación.
Desarrollar un esquema de creación,
seguimiento y cierre de sesiones de
trabajo.
Nombre del Tema
Desarrollo de Perfiles
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla módulos de seguridad para control
de acceso a usuarios basado en perfiles.
Desarrollar un modelo de base de datos
para definir los perfiles.
Desarrollar los módulos que implementen
el esquema de perfiles propuesto.
Genéricas:
- Capacidad de análisis y síntesis
- Trabajo en equipo
- Capacidad crítica y autocritica
- Capacidad para aprender
- Capacidad de aplicar los conocimientos en
la práctica.
8. Práctica(s)
Prácticas
1 Aplicar algoritmos de cifrado de información simétricos y asimétricos.
Obtener valores Hash de cadenas de información dadas.
Cifrar y descifrar archivos con firma digital.
2 Crear un servidor HTTP seguro sobre SSL con un certificado digital autofirmado.
Configurar un servidor SSH para realizar conexiones remotas seguras y transferencia de
archivos seguros.
Instalar, configurar y probar un firewall para permitir o denegar accesos.
3 Crear un usuario que se autentique con una contraseña cifrada con MD5.
Desarrollar un módulo que cree, de seguimiento, defina tiempo de vida y cierre una
sesión de trabajo a partir de un usuario autenticado.
4 Desarrollar un módulo que permita definir las características del contexto de sesión de
un usuario para un perfil determinado.
9. Proyecto de asignatura
Desarrollar una aplicación Web que resuelva un problema del mundo real. La aplicación deberá
montarse en un servidor WEB seguro con cifrado SSL, instalando un certificado digital
autofirmado.
La aplicación deberá cumplir con las siguientes especificaciones:
1. Debe estar basado en la filosofía de diseño MVC (Modelo Vista Controlador).
2. El sistema deberá implementarse de forma modular. En donde la función de cada módulo
este específicamente definida.
3. Deberá contar con un módulo de autenticación, que valide las credenciales del usuario
para su acceso al sistema.
4. Deberá contar con un módulo que implemente perfiles, que determinen los permisos de
acceso de cada usuario, a los distintos módulos del sistema.
5. El documento del proyecto deberá fundamentarse a partir de los siguientes aspectos:
- Base teórica
- Planeación del proyecto
- Evidencia de la ejecución realizada
- Conclusiones y recomendaciones
10. Evaluación por competencias
Realizar evaluación diagnóstica al iniciar el curso y retroalimentar al alumno.
Motivar y llevar a cabo la evaluación entre pares.
Realizar evaluaciones mediante: cuestionario teórico, desarrollo de prácticas de laboratorio,
tarea y ejercicios.
Desarrollar proyecto integrador.
11. Fuentes de información
1. Egan, M. (2004).The Executive Guide to Information Security, Estados Unidos: Editorial
Addison Wesley.
2. Oppliger, R. (2009). SSL and TLS Theory and Practice, Estados Unidos: Editorial
ArtechHouse.
3. Knudsen, J. (1998). Java Crytography, Estados Unidos: O´Reilly.
4. Hunter, J., Crawford, W. (2001). Java Server Programming, Estados Unidos: O´Reilly.
5. Oaks, S. (1998). Java Security, Estados Unidos: O´Reilly.
6. Murach, J., Urban, M. (2014). Java Servlets and JSP, Estados Unidos: Ray Halliday
7. Kurniawan, B. (2012). Servlet & JSP: A Tutorial, Estados Unidos: BrainySoftware.com
5.10 Desarrollo Aplicaciones Móviles
1. Datos Generales de la asignatura
Nombre de la asignatura:
Clave de la asignatura:
SATCA5:
Carrera:
Desarrollo de Aplicaciones Móviles
DWB-1505
1-4-5
Ingeniería en Sistemas Computacionales
2. Presentación
Caracterización de la asignatura
Los dispositivos móviles se caracterizan por su constante evolución y convergencia tecnológica
desde capacidades limitadas hasta avanzadas, tanto en términos de poder de proceso como de
memoria, interfaz de usuario y energía, así como por el uso de interfaces de comunicación
inalámbricos, tanto de área personal como local o de área extensa.
Esta materia aporta al perfil del egresado los principios del diseño y desarrollo de aplicaciones
para dispositivos móviles, integrando desarrollos de diferentes tecnologías. Permitiendo el
desarrollo cultural, científico y tecnológico en el ámbito de Sistemas Computacionales que
requieran desarrollos en tecnología móvil para dar soluciones a problemas en un contexto
5 Sistema de Asignación y Transferencia de Créditos Académicos
interdisciplinario.
La materia se encuentra dividida en cuatro temas, en el primer tema se da una introducción a los
conceptos y principios de la computación móvil. En el segundo tema se estudian los aspectos fun-
damentales del desarrollo de aplicaciones móviles en plataforma Android, plataforma que en la
actualidad ocupa el primer lugar de participación en el mercado de las tecnologías móviles. En el
tercer tema se expone un panorama general al desarrollo de aplicaciones en otras plataformas
móviles importantes como son: Firefox OS, J2ME e IOS. Por último, se abordan distintos mecanis-
mos de almacenamiento de datos utilizados en tecnología móvil para persistencia de la informa-
ción.
La asignatura se relaciona con las materias de programación y desarrollo de sistemas.
Para cursar esta materia se requiere tener las competencias previas de diseño de algoritmos y
programación Orientado a Objetos.
Las competencias adquiridas le permitirán al estudiante cursar materias relacionadas con el Desa-
rrollo de Sistemas y realizar proyectos integradores.
Intención didáctica
Se recomienda que el enfoque de este curso sea fundamentalmente práctico tocando aspectos
teóricos que faciliten la comprensión formal de los temas a tratar. En el tema inicial del curso, se
sugiere tratar los conceptos teóricos de la computación móvil y las características principales de
las distintas plataformas móviles de la actualidad, en este momento se propone realizar
actividades que incluyan la instalación de distintos ambientes de desarrollo de aplicaciones
móviles. En el segundo tema que trata de Android debe ser tratada de forma netamente práctica
con actividades que implican el desarrollo de aplicaciones en esta plataforma basadas en el
modelo de programación MVC, en el tercer tema se abordará de forma general otras plataformas
de desarrollo como J2ME, IOS, Firefox OS, también de forma práctica.
Todas las actividades de desarrollo deberán ser documentadas por el estudiante de manera que
pueda demostrar competencias genéricas como son: expresión escrita y oral, el cuarto tema
incluirá temas sobre persistencia de datos en aplicaciones móviles con base de datos embebidas
SQLite, mecanismo de conectividad JDBC y acceso a la nube. Se recomienda que todas las
actividades realizadas en el curso sean debidamente propuestas y guiadas por el facilitador
realizando evaluaciones formativas y sumativas. Las actividades podrán realizarse en equipo
donde el alumno podrá demostrar sus competencias genéricas, trabajo colaborativo, participación
en equipo, etc.
Las competencias específicas que el alumno lograra en el d desarrollo de aplicaciones móviles
deberán ser las suficientes como para lograr que esas aplicaciones sean funcionales y de calidad
profesional, debidamente validadas y con interfaces agradables.
3. Participantes en el diseño y seguimiento curricular del programa
Lugar y fecha de elaboración o revisión Participantes Observaciones
Instituto Tecnológico de
Zacatepec.
Departamento de Sistemas y
Computación.
Academia de sistemas y
Computación.
Reunión para el desarrollo de
Especialidades del 23 de
Febrero de 2015.
M.C. Humberto Tiburcio
Zúñiga,
Lic. Venancio Bárcenas
Martínez,
Ing. Yanet Castrejón
Hernández,
M.C. Norma J. Ontiveros
Hernández,
M.T.I. Jesús Ángel Peña
Ramírez,
M.T.I. José Pedro Aragón
Hernández,
Ing. Raymundo Real
Palencia.
Dra. Ana Celia Campos
Hernández,
Dr. Sócrates Espinoza
Salgado y
Lic. Ofelia Espinosa Baca.
Programa aprobado en el pleno de
la Academia de Sistemas y
Computación.
Esta materia forma parte de la
especialidad: Desarrollo de Aplicaciones en Ambientes Web y Móviles, para la Carrera
Ingeniería en Sistemas
Computacionales, Plan de estudios
ISIC-2010-224.
4. Competencia(s) a desarrollar
Competencia(s) específica(s) de la asignaturaDesarrolla aplicaciones para dispositivos móviles para dar soluciones a problemas en el
contexto social actual.
5. Competencias previas Implementa sistemas de infraestructura de redes para dar solución a problemas que
impliquen una correcta administración de recursos computacionales.
Desarrolla programas de cómputo basados en modelado de objetos para resolver
problemas reales en diferentes contextos.
Implementa Sistemas de base de datos basadas en SQL para el almacenamiento
estructurado y eficiente acceso de información.
6. Temario
No. Temas Subtemas
1 Introducción 1.5 Computación Móvil.
1.6 Usos y Beneficios de las tecnologías Mó-
viles
1.7 Tecnologías inalámbricas.
1.8 Sistemas operativos Móviles
2 Android 2.1 Arquitectura de Android
2.2 Herramientas de desarrollo SDK, Eclipse y
Android Studio
2.3 Estructura de una aplicación.
2.4 Layouts, Vistas y Recursos.
2.5 Manejo de eventos.
2.6 Actividades e intents.
2.7 Sockets, HTTP y Servicios Web.
2.8 Características avanzadas.
3 Panorama de otras plataformas 3.1 HTML5 (Firefox OS)
3.2 Plataformas que soporten J2ME
3.3 IOS
3.4 Windows Phone
4 Almacenamiento de Datos 4.6 Preferencias
4.7 Ficheros
4.8 XML
4.9 Base de datos
4.10 Proveedores de contenidos
4.11 Internet
7. Actividades de aprendizaje de los temas
Nombre del Tema
Introducción
Competencias Actividades de aprendizaje
Específica(s):
Define los principales aspectos involucrados en
la computación móvil.
Genéricas:- Habilidad para buscar y analizar
- Trabajo en equipo
- Habilidad de investigación
- Capacidad para aprender
Búsqueda de información en internet.
Elaborar cuestionarios teóricos y/o mapas
mentales.
Práctica de instalación y/o configuración de
Sistemas operativos móviles y redes
inalámbricas.
Nombre del Tema
Android
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla aplicaciones en plataforma Android
utilizando un ambiente de desarrollo.
Genéricas:
- Capacidad de análisis y síntesis
- Habilidad para buscar y analizar
- Trabajo en equipo
- Capacidad crítica y autocritica
- Habilidad de investigación
- Capacidad para aprender
- Capacidad de aplicar los conocimientos en
la práctica.
Instalar las herramientas de desarrollo
Utilizar guías para desarrollar aplicaciones
de cada subtema.
Pruebas en emulador y en dispositivos
móviles
Desarrollo de Proyectos integradores.
Nombre del Tema
Panorama de otras plataformas
Competencias Actividades de aprendizaje
Específica(s):
Describe las características principales de otras
tecnologías para el desarrollo de aplicaciones
móviles.
Genéricas:
- Capacidad de análisis y síntesis
- Habilidad para buscar y analizar
- Trabajo en equipo
- Capacidad crítica y autocritica
- Habilidad de investigación
- Capacidad para aprender
- Capacidad de aplicar los conocimientos en
la práctica.
Búsqueda de información en internet
Práctica de instalación de herramientas
de desarrollo para otros plataformas
móviles
Desarrollo de aplicaciones sencillas
(J2ME, Firefox OS, etc.).
Nombre del Tema
Almacenamiento de Datos
Competencias Actividades de aprendizaje
Específica(s):
Desarrolla aplicaciones móviles que permitan
conservar datos en archivos, bases de datos o
servicios a través de la red.
Genéricas:
- Capacidad de análisis y síntesis
- Habilidad para buscar y analizar
- Trabajo en equipo
- Capacidad de aplicar los conocimientos en
la práctica.
Búsqueda de información en internet
Desarrollar aplicaciones que accedan a
datos en tarjeta SD, BD SqLite, Content
Providers, en la nube, etc.
8. Práctica(s)
Prácticas
1 Investigar los diversos contextos móviles de las aplicaciones de la actualidad.
Configuración de redes Wireless y Ad Hoc.
Probar Android en una PC a través de una distribución Live CD.
2 Instalar, configurar y actualizar las herramientas de desarrollo de Android y configurar el
emulador (SDK de Android con Eclipse y/o Android studio).
Desarrollar aplicaciones móviles cuya interfaz incluya etiquetas, botones, campos de texto,
cajas de dialogo, spinners, radio button, checkbox, tabs y menús.
Desarrollar aplicaciones que utilicen multimedia (audio, video,imagenes).
Desarrollar aplicaciones que permiten enviar y recibir mensajes o llamadas.
Desarrollar aplicaciones que se conecten a sitio remotos desde dispositivos móviles,
utilizando sockets o conexiones HTTP.
Todas las aplicaciones se debe probar en emulador y/o dispositivo móvil.
3 Dependiendo de la existencia de la plataforma operativa y el software de desarrollo.
Instalar las herramientas de desarrollo.
Desarrollar aplicaciones sencillas en al menos una de las otras plataformas.
Probarlas en emuladores y de preferencias en dispositivos reales.
4 Crear y leer información desde archivos almacenados en tarjeta SD
Crear una base de datos en SqLite, y realizar operaciones CRUD a través de una
aplicación móvil.
Acceder a archivos desde servicios de la red.
Crear aplicaciones que permitan utilizar información de otras aplicaciones a través de un
Content Provider.
9. Proyecto de asignatura
Desarrollar una aplicación móvil que resuelva un problema sencillo del mundo real. Se sugiere que
el producto se constituya como una herramienta de apoyo a las materias de la carrera de
Ingeniería en Sistemas Computacionales en las áreas de Redes
La aplicación deberá cumplir con las siguientes especificaciones:
1. Debe estar basado en la filosofía de diseño MVC (Modelo Vista Controlador).
El modelo deberá estar desarrollado por actividades, la vista con Layout y componente
visuales. Y el modelo en la medida posible deberá ser implementado con JavaBeans o
POJOs
2. Deberá incluirse acceso a datos persistentes ya sea:
a) acceso memoria SD
b) acceso a base de datos JDBC
c) acceso a datos en BD embebida SqLite
3. El documento del proyecto deberá fundamentarse a partir de los siguientes aspectos:
- Base teórica
- Planeación del proyecto
- Evidencia de la ejecución realizada
- Conclusiones y recomendaciones
10. Evaluación por competencias
Realizar evaluación diagnóstica al iniciar el curso y retroalimentar al alumno.
Motivar y llevar a cabo la evaluación entre pares.
Realizar evaluaciones mediante: cuestionario teórico, desarrollo de prácticas de laboratorio,
tarea y ejercicios.
11. Fuentes de información
1. API Guides (s.f). Android. Recuperado el 08 de mayo de 2015.
http://developer.android.com/guide/index.html
2. Meier, R. (2010). Professional Android 2 Application Development. Indiana: Wiley
Publishing, Inc.
3. Murphy, M. L. (2008-2009). The Busy Coder’s Guide to Android Development, USA:
CommonsWare, LLC.
4. Kumar, V. (2006). Mobile Database Systems, NJ, USA: Wiley
5. Burnette, E. (2010). Hello, Android. Introducing Google´s Mobile Development Platform ,
USA: Susannah Daviddson Pfalzer
6. Wallace, J. (2011). Android Apps For Absolute Beginners, USA: Aprres
7. Lee, W. (2011). Beginning Android Application Develpmente, Indiana: Wiley Publishing,
Inc.
8. Gramlich, N. (2007). Android Programming. Recuperado 08 de mayo de 2015.
http://andbook.anddev.org/