Download ASIGNATURA:_Configuración y Explotación de Sistemas Informáticos

Document related concepts
no text concepts found
Transcript
Curso:
Centro:
Estudios:
Asignatura:
Ciclo:
Curso:
Cuatrimestre:
Carácter:
Créditos teóricos:
Créditos prácticos:
Profesor:
Área:
Departamento:
2006/2007
Escuela Politécnica Superior de Almería
Ingeniero en Informática
Programación de Red
2º
4º
1º
Optativa (Oferta Bianual)
3
3
Antonio Leopoldo Corral Liria
Lenguajes y Sistemas Informáticos
Lenguajes y Computación
TEMARIO
PROGRAMA DE TEORÍA:
TEMA 1: Una perspectiva para la programación basada en objetos distribuidos.
1.1 Visión global de la programación distribuida. Una revisión del modelo cliente/servidor.
1.1.1 La lógica de una aplicación distribuida: lado cliente y lado servidor.
1.1.2 La arquitectura N-nivel: una solución para la lógica de negocio.
1.1.3 Sistemas distribuidos.
1.2 Una visión global de los objetos distribuidos.
1.3 Lenguajes comunes para la programación distribuida: Java, Perl, Tcl/Tk, etc.
1.4 Los componentes software distribuidos.
1.4.1 Descripción de un componente software.
1.4.2 Los modelos de componentes distribuidos: CORBA, DCOM y EJB.
1.5 Técnicas más usuales para la programación distribuida del lado cliente.
1.5.1 La lógica de presentación basada en Applets.
1.5.2 Los componentes JavaBeans.
1.6 Técnicas más usuales para la programación distribuida del lado servidor.
1.6.1 Alternativas a CGI: ASP, LiveWire, SSI, etc.
1.6.2 Los componentes basados en Servlets.
TEMA 2: Desarrollo de aplicaciones distribuidas utilizando Java.
2.1 Los JavaBeans e Enterprise JavaBeans. El lado cliente frente al lado servidor.
2.2 Java Applets. Introducción, ventajas e inconvenientes.
2.3 Java Servlets. Introducción, ventajas e inconvenientes.
2.4 Java RMI (Remote Method Invocation): Comunicación entre objetos para Java.
2.4.1 Introducción a las aplicaciones RMI. RMI y el modelo de referencia OSI.
2.4.2 Implementar un servidor RMI.
2.4.3 Crear un programa cliente.
2.4.4 Compilar y ejecutar un ejemplo.
2.4.5 Ventajas e inconvenientes de RMI.
TEMA 3: Interoperabilidad entre objetos de una aplicación distribuida. CORBA.
3.1 Las técnicas middleware. Una perspectiva general: CORBA y EJB.
3.2 La perspectiva OMG: CORBA (Common Object Request Broker Architecture).
3.2.1 Descripción del modelo de componentes CORBA.
3.2.2 La interfaz ORB: los stubs (cliente) y los skeletons (servidor).
3.2.3 Comunicación entre ORBs: el protocolo IIOP.
3.2.4 IDL y el mapping de IDL a Java.
3.2.5 Interoperatividad en CORBA.
3.2.6 El adaptador de objetos portable (POA).
3.3 El servicio de nombres de OMG.
3.4 El servicio de trading de OMG.
3.5 El servicio de eventos de OMG.
3.6 Aplicaciones multi-thread.
3.7 Nuevas características de CORBA 3.0.
TEMA 4: Servicios Web.
4.1 Introducción a Servicios Web.
4.2 XML (Extensible Markup Language).
4.3 UDDI (Universal Description, Discovery, and Integration).
4.4 SOAP (Simple Object Access Protocol).
4.5 Java y Servicios Web.
4.6 Aspectos de Seguridad para Servicios Web.
TEMA 5: JBoss. Un Servidor de aplicaciones J2EE
5.1 Tecnología JBoss.
5.2 Enterprise JavaBeans: EJBs.
5.3 Instalación y puesta en funcionamiento de JBoss.
5.4 Despliegue de una aplicación sencilla en JBoss.
5.5 Conexión con el sistema de gestión de bases de datos MySQL.
PROGRAMA DE PRÁCTICAS DE LABORATORIO:
El objetivo principal del programa de prácticas será la realización de aplicaciones utilizando Java-RMI,
programación Java con CORBA, Servicios Web con Java y JBoss (J2EE y Enterprise Java Beans).
Práctica 1. Desarrollo de una aplicación GUI de reserva de habitaciones de un hotel utilizando JavaRMI.
ƒ Implementar un servidor RMI.
ƒ Implementar un programa cliente.
ƒ Compilar y ejecutar la aplicación.
Practica 2: Java-RMI versus CORBA. Desarrollo de una aplicación GUI de reserva de habitaciones de
un hotel utilizando Java ORBs. Para ello se deberán de incluir:
• Especificación de la interface en IDL.
• Compilación de la especificación IDL.
• Implementación de objetos.
• Implementación y ejecución de servidores.
• Implementación de colecciones de objetos dinámicas (factoría).
• Implementación de clientes como aplicaciones y/o como applets.
• Extensiones de la aplicación utilizando otros servicios CORBA, como por ejemplo referencias
a objetos persistentes.
Práctica 3: Servicios Web.
• Implementación de la misma práctica (reserva de habitaciones de un hotel) y de una
calculadora como un servicio Web. Creación de la interfaz con WSDL.
• Implementación servidores que hagan uso de los servicio Web implementados.
Práctica 4. Creación de un ejemplo sencillo con JBoss.
• Instalación y puesta en funcionamiento de JBoss.
• Creación y empaquetamiento de la aplicación sencilla.
• Ejecución de la aplicación.
• Vista de la aplicación desde la consola de administración.
• Desinstalación de la aplicación.
BIBLIOGRAFÍA:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
M. Fleury, S. Stark, N. Richards, JBoss Inc.: JBoss 4.0. The Official Guide. SAMS. 2005.
D. Scott, T. Marrs: JBoss at Work: A Practical Guide, O´Reilly, 2005.
B. Burke, S. Laobourey, R. Monson-Haefel: Enterprise JavaBeans. O´Reilly. 2004.
D. Chappell, T. Jewell: Java Web Services. O'Reilly. 2002.
R. Nagappan, R. Skoczylas, R.P. Sriganesh: Developing Java Web Services: Architecting
and Developing Secure Web Services Using Java. John Wiley & Sons. 2003.
M. Henning, S. Vinoski: Programación Avanzada en CORBA con C++. Addison Wesley.
2002.
G. Brose, A. Vogel, K. Duddy: Java Programming with CORBA. John Wiley & Sons.
2001.
A. Gurygé: Web Services. Theory and Practice. Elsevier Digital Press. 2004.
Sun: The Java Web Services Tutorial, http://java.sun.com/webservices/tutorial.html. 2004.
J. McGovern, S. Tyagi, M. E. Stevens, S. Mathew: Java Web Services Architecture,
Morgan Kaufmann. 2003.
P. Cauldwell et al: Profesional XML Web Services. Wrox Press. 2001.
F.J. Cevallos: Java 2: Curso de Programación. Ra-Ma. 2002.
R. Orfali, D. Harkey; Client/Server Programming with Java and CORBA. John Wiley &
Sons. 1998.
R. Hoque, T. Sharma; Programming Web Components. McGraw-Hill. 1998.
J. Siegel; CORBA. Fundamentals and Programming. John Wiley & Sons. 1998.
EVALUACIÓN:
1. Prácticas obligatorias (60% de la nota final). Éstas deben ser superadas para poder
realizar el examen final. Además, estas afectarán en un 60% a la nota final de la asignatura en
caso de aprobar el examen, caso de suspenderlo, no afectarán a la nota final de la asignatura.
2. Examen final (40% de la nota final): Convocatoria ordinaria (Febrero 2005).
3. Examen extraordinario (40% de la nota final): Convocatorias extraordinarias que decida
la Escuela Politécnica Superior de la Universidad de Almería (Diciembre 2004 (caso de
haberse matriculado en cursos académicos anteriores) o Septiembre 2005).
OBSERVACIONES:
Se recomienda haber cursado las siguientes asignaturas en las ingenierías técnicas en informática:
Sistemas de Información Distribuidos, Nuevas Tecnologías de la Programación y Programación
Orientada a Objetos.