Tecnologías para Desarrollo Orientado a Servicios (posgrado) Desarrollo de Software Orientado a Servicios (pregrado) Mg. Elsa Estévez Universidad Nacional del Sur
T.2 Contenidos 1 1) lenguaje XML extensible Markup Language 2) protocolo estándar para transmisión de mensajes entre servicios: SOAP Simple Object Access Protocol 3) lenguaje para descripción de servicios: WSDL Web Services Description Language 4) estándares para describir y descubrir servicios: UDDI Universal Description, Discovery and Integration
T.3 Contenidos 2 5) desarrollo basado en componentes (DBC) 6) arquitectura orientada a servicios: SOA Service Oriented Architecture 7) integración de servicios en la Web
T.4 Contenidos: XML 1) introducción: motivación, generalidades, origen, W3C 2) lenguaje: Unicode, XML, DTD, namespaces 3) tecnologías XML: validación XML Schema, acceso XPath, transformaciones - XSLT 4) procesamiento de XML en Java: 1) usando estructura de árboles: DOM 2) usando eventos: SAX 3) usando reglas: XSLT
T.5 Contenidos: SOAP 1) introducción: historia, definición, propiedades 2) estructura de mensajes: sobre, encabezado, cuerpo del mensaje, pedidos, respuestas, errores, extensiones 3) modelo de procesamiento: intermediarios, nodos y roles, reglas de procesamiento, uso de encabezados 4) modelo de datos: reglas de codificación, pedidos y respuestas 5) estilos de comunicación: basado en documentos, basado en llamadas a procedimientos remotos. 6) asociación con protocolos de comunicaciones: HTTP. 7) envío de datos binarios: SOAP con archivos adjuntos
T.6 Contenidos: WSDL 1) introducción: descripción de servicios, lenguaje para descripción de servicios (WSDL), WSDL y lenguajes de definición de interfaces (IDLs) 2) estructura del lenguaje: definiciones, tipos, mensajes, partes de mensajes, tipos de puertos, operaciones, binding de operaciones, puertos, servicios, documentación, importación. 3) primitivas de transmisión: una vía, requerimiento-respuesta, notificación, solicitud-respuesta. 4) extensiones funcionales y no funcionales. 5) WSDL y su implementación en un lenguaje de programación
T.7 Contenidos: UDDI 1) introducción: repositorio de servicios, categorías, conceptos 2) UDDI: entidad de negocio, entidad de servicio, binding, modelos técnicos, aserciones del editor, identificadores de servicios, categorías de servicios 3) registros: implementaciones, publicaciones, búsquedas
T.8 Contenidos: DBC 1) introducción: definiciones, componentes y objetos, principios de componentes, arquitectura de sistemas: interfaces, contratos. 2) desarrollo basado en componentes: modelos de componentes, el proceso de desarrollo. 3) modelización: conceptos de UML, modelos de casos de uso. modelos de tipos de negocios, especificación de interfaces y componentes 4) integración de componentes, wrapping de componentes, ensamble de aplicaciones a partir de componentes, 5) herramientas:.net, Enterprise Java Beans (EJB), proyecto Mono
T.9 Contenidos: SOA 1) introducción: servicios, roles, operaciones, propiedades, tipos de servicios 2) arquitectura orientada a servicios: a) elementos de la arquitectura, b) capas de la arquitectura, c) fundamentos de SOA, d) bus de servicios, e) aplicaciones de SOA. 3) caso de estudio
T.10 Contenidos: Integración 1) modelos de servicios para integración de aplicaciones 2) componentes de integración: servicios web y diferentes arquitecturas 3) estrategias para integración de desarrollos orientados a servicios
T.11 Bibliografía 1 1) XML in a Nutshell - Elliotte Rusty Harold, W.Scott Means, 2004 2) Building Web Services with Java, Making sense of XML, SOAP, WSDL, and UDDI (2nd ed.) Steve Graham, et. al. Sams Publishing, 2004 3) Web Services Concepts, Architectures and Applications Gustavo Alonso, Fabio Casati, Harumi Kuno, Vijay Machiraju Springer, 2004 4) Service-Oriented Architecture A Field Guide to Integrating XML and Web Services Thomas Erl - Pearson Education, 2004. 5) J2EE Web Services Richard Monson-Haefel Pearson Education, 2004.
T.12 Bibliografía 2 6) Component Software, Beyond Object-Oriented Programming - Clemens Szyperski - Addison Wesley, 1998. 7) UML Components, A Simple Process for Specifying Component-Based Software - John Cheesman John Daniels - Addison-Wesley, 2001. 8) Large-Scale Component-Based Development - Alan W. Brown - Prentice Hall, 2000. 9) Business Component Factory - Peter Herzum, Oliver Sims - Wiley Computer Publishing, 2000.
T.13 Bibliografía 3 10) Designing Flexible Object-Oriented Systems with UML - Charles Richter - Macmillan Technical Publishing, 1999. 11) Building Systems from Commercial Components - Kurt Wallnau - Scott Hissam Robert Seacord - Addison Wesley, 2002. 12) Entreprise SOA, Service oriented Architecture BestPractices, Dirk Krafzig, Karl Banke, Dirk Slama - Pearson Education, 2005. 13) Web Services and Service-Oriented Architectures, Douglas Barry Morgan Kaufmann Publishers, 2003.
T.14 Bibliografía 4 1) Website de World Wide Web Consortium: http://www.w3.org 2) Website de Organization for the Advancement of Structured Information Standards (OASIS): http://www.oasis-open.org
T.15 Agradecimiento Este curso se ha desarrollado en base al material de los siguientes cursos: XML Technology and Java, preparado y dictado por Dr. Tomasz Janowski, UNU-IIST Web Services and Java Ambos cursos fueron desarrollados y dictados en United Nations University International Institute of Software Technology (UNU- IIST), Macao SAR, China.
T.16 Materia de Pregrado Formar grupos de 2-3 personas. Entregar el desarrollo y la documentación de una aplicación. Presentación de trabajos 22 y 24 de noviembre
T.17 Materia de Posgrado Entrega de un trabajo de investigación con un tema relacionado a la materia el: 13 de diciembre
T.18 Transparencias Las transparencias pueden contener errores involuntarios. Las transparencias son una guía de los temas dados. Se aconseja leer la bibliografía correspondiente. Las transparencias se publican en la página de la materia: http://cs.uns.edu.ar/~ece/tdos
T.19 Horarios y Aulas Martes de 14hs a 16hs Aula 38B Jueves de 14hs a 16hs Laboratorio
T.20 Tiempo de Decisión Interesados: anotarse