Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1 DATOS GENERALES
ÁREA S/A
PRE-REQUISITO TEM-636
2 INTRODUCCION
Los continuos adelantos en informática y telecomunicaciones están cambiando la manera como se
desarrolla el software. En particular, el incesante aumento de la potencia de los ordenadores
personales, el abaratamiento de los costos del hardware y la aparición de redes de datos de
cobertura global han hecho posible una infraestructura especialmente favorable para el uso de los
sistemas abiertos y distribuidos.
Estos cambios han provocado, entre otras cosas, que los métodos de diseño y desarrollo de software
tradicionales (vistos en las asignaturas de Ingeniería del Software y Análisis y Diseño con Patrones)
sean insuficientes, puesto que, más o menos implícitamente, asumen que la aplicación a desarrollar
se ejecutará en un entorno básicamente centralizado. Por lo tanto, los métodos tradicionales son
incapaces de gestionar de manera natural la complejidad de los requisitos de este nuevo tipo de
sistemas.
Página 1|6
Esta asignatura sirve como introducción a los conceptos y métodos fundamentales sobre los cuales
se fundamenta el diseño y desarrollo de aplicaciones empresariales basadas en componentes, y así
se complementan los conocimientos adquiridos en las asignaturas previas.
La arquitectura de los sistemas de software permite describir de una manera abstracta y de alto nivel
tanto la funcionalidad del sistema como otros muchos aspectos no funcionales de este (distribución,
fiabilidad, seguridad, adaptabilidad, prestaciones, etc.). Esta descripción del sistema suele definirse
partiendo de un estilo arquitectónico, una clasificación de los sistemas de software en grandes
familias que siguen un patrón estructural común. Entre los estilos arquitectónicos más usuales para
los sistemas distribuidos hay los sistemas organizados en múltiples capas, los sistemas cliente-
servidor o los sistemas peer-to-peer.
En esta asignatura se aborda la programación orientada a componentes, un paradigma de
programación que proporciona mecanismos apropiados para el desarrollo y la implementación de
componentes de software distribuidos. Asimismo, se hace especial hincapié en las herramientas de
la versión Java EE
El diseño de la aplicación en términos de componentes de software tiene que refinarse,
posteriormente, para adaptarlo e implementarlo en una tecnología de componentes distribuidos
concreta. En nuestro caso concreto, se describe con detalle la plataforma Java Enterprise Edition
(Java EE). Ésta es una plataforma abierta basada en componentes que permiten desarrollar,
desplegar y gestionar aplicaciones distribuidas con arquitecturas multinivel.
Finalmente, para dar una visión más general del estado tecnológico actual, también se comentan
otras plataformas y tecnologías distribuidas como por ejemplo CORBA, .NET, y especialmente los
servicios web.
3 MARCO REFERENCIAL
La asignatura es de naturaleza teórica - práctica, está destinada a ampliar y profundizar los
conocimientos sobre los sistemas distribuidos que se han popularizado en la actualidad y que tiene
como ámbito de estudio las redes como, por ejemplo: Internet, redes de teléfonos móviles, redes
corporativas, redes de empresas, etc.
4 JUSTIFICACION
La materia de Tecnologías Emergentes II es de suma importancia para la formación de profesionales
en la carrera de Ingeniería de Sistemas puesto que hoy en día la tecnología de información
prácticamente ha ingresado en todas las áreas del conocimiento y se necesita contar con el
conocimiento necesario para encarar proyectos de tecnologías de la información y por lo tanto deben
tener las competencias para adaptarse en los espacios laborales tanto públicos como privados.
Asimismo, la asignatura permitirá al estudiante resolver los problemas asociados a la realización de
sistemas complejos, donde la distribución de sus componentes es un requerimiento, como el caso
de sistemas web o aplicaciones empresariales.
Página 2|6
En consecuencia, los componentes teóricos, prácticas de laboratorio y la investigación tanto
personal como grupal de la asignatura permitirán contar con las herramientas para encaminar
proyectos de tecnologías de información y consolidar la formación sólida del futuro profesional.
5 OBJETIVOS
6 CONTENIDOS MINIMOS
4. Persistencia de datos
5. Web Services
7 CONTENIDOS ANALITICOS
Página 3|6
2. Arquitectura para el desarrollo de aplicaciones empresariales
2.1. Servidores de aplicaciones
2.2. Arquitectura de los servidores de aplicación
2.3. Contenedores
2.4. Componentes
2.5. Servicios
4. Persistencia de datos
4.1. Introducción
4.2. Introducción a JDBC
4.3. Pool de conexiones
4.4. JNDI API
4.5. Tratamiento de excepciones
4.6. Creación y ejecución de sentencias SQL
4.7. Tratamiento de los datos y el interfaz resultset
4.8. Mapeo Objeto Relacional ORM
4.9. Entidades
4.10. Mapeo de entidades por excepcion
4.11. Mapeo de tablas, llaves primarias, atributos, etc.
4.12. Mapeo con XML
4.13. Mapeo de relaciones
4.14. Estrategias de mapeo de herencia
4.15. Generación de una aplicación JSF a partir de entidades JPA
4.16. Consultas sobre Entidades
4.17. Entity Manager
4.18. JPQL
4.19. Consultas dinámicas, nombradas y nativas
4.20. Concurrencia y bloqueos optimista y pesimista
Página 4|6
5. Web Services
5.1. Introducción
5.2. Tipos de Web Services
5.3. Creación de un Web Service RESTful a partir de una base de datos existente
5.4. Test del RESTful web service
5.5. Desarrollo de un cliente para RESTful web service
9 RECURSOS DIDACTICOS
Los recursos didácticos que se utilizaran son;
Pizarra
Marcadores
Laboratorio
Computadora
Data show / Video conferencia
Plataforma virtual
Página 5|6
La evaluación se pondera sobre 100 puntos, la nota mínima de aprobación es de 51 puntos y para
el segundo turno se habilitan los estudiantes que tengan una calificación mayor a los 40 puntos.
Participación en clases 10
Proyecto de curso 20
TOTAL 100
11 BIBLIOGRAFIA
Ingeniería de software
Ian Sommerville, Pearson, 2011
Java EE 7 Recipe
Josh Juneau, 2013
Página 6|6