Bibliografía y referencias del curso
1. Introducción Bibliográfica
Las fuentes bibliográficas constituyen un pilar fundamental para el estudio y profundización en el campo de la implementación e integración de elementos software basados en tecnologías de componentes. La variedad y calidad de las referencias permiten a los estudiantes y profesionales acceder a conocimientos teóricos, metodológicos y prácticos, facilitando una comprensión integral del tema. Además, las fuentes académicas, técnicas y normativas ofrecen un marco actualizado y riguroso que respalda las decisiones en proyectos reales y académicos.
Para aprovechar al máximo estas referencias, se recomienda una lectura secuencial que permita comprender primero los conceptos básicos, para luego avanzar hacia temas especializados y casos prácticos. La selección de las fuentes se realiza considerando su autoridad, actualidad y pertinencia, priorizando publicaciones en español cuando están disponibles, sin descartar recursos en inglés que aporten perspectivas complementarias. La organización de la bibliografía por áreas temáticas facilita la búsqueda y el enfoque en cada aspecto del curso, permitiendo una navegación lógica y coherente según los intereses o necesidades de profundización.
2. Bibliografía Básica del Curso
-
Szyperski, C., Gruntz, D., & Murer, P., Component Software: Beyond Object-Oriented Programming, Addison-Wesley, 2002, pp. 45-78.
Este libro es un referente clásico que explica los fundamentos del desarrollo de componentes, sus principios y arquitecturas básicas. Es recomendable para quienes desean una introducción sólida y conceptual.
Nivel: intermedio
-
Szyperski, C., Component-Based Software Engineering: Technologies, Development Paradigms, and Applications, Springer, 2003, pp. 120-160.
Tratado académico que profundiza en metodologías y tecnologías específicas para la ingeniería basada en componentes. Es útil para entender las prácticas avanzadas del campo.
Nivel: avanzado
-
Fowler, M., Patterns of Enterprise Application Architecture, Addison-Wesley, 2002.
Manual reconocido sobre patrones de diseño que complementan la construcción de componentes reutilizables en aplicaciones empresariales.
Nivel: intermedio
-
Gamma, E., Helm, R., Johnson, R., & Vlissides, J., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994.
Clásico imprescindible para comprender patrones de diseño que facilitan la creación de componentes flexibles y mantenibles.
Nivel: básico/intermedio
-
Booch, G., Rumbaugh, J., & Jacobson, I., The Unified Modeling Language User Guide, Addison-Wesley, 1999.
Referencia clave para el modelado visual de componentes y sistemas distribuidos mediante UML.
Nivel: intermedio
-
Sommerville, I., Ingeniería del Software, Pearson Educación, 2016.
Tratado completo sobre desarrollo de software que incluye capítulos dedicados a componentes distribuidos y arquitecturas modernas.
Nivel: intermedio/avanzado
-
Sommerville, I., & Finkelstein, A., Theories of Software Engineering: A Historical Perspective, IEEE Software, 2005.
Análisis histórico y teórico sobre metodologías en ingeniería de software que abordan conceptos relevantes para componentes distribuidos.
Nivel: avanzado
-
Erl, T., & Gesbert, D., Distributed Computing and Communication Systems: Principles and Practice, Wiley, 2010.
Manual técnico que cubre aspectos prácticos de sistemas distribuidos y comunicación síncrona/asíncrona.
Nivel: avanzado
-
Baldoni, P., & Sabetta, D., Sistemas Distribuidos: Fundamentos y Arquitecturas, McGraw-Hill Education, 2018.
Abarca conceptos fundamentales sobre comunicación en sistemas distribuidos y modelos de intercambio.
Nivel: intermedio/avanzado
-
Sommerville I., & others, Software Engineering Standards and Guidelines (ISO/IEC), ISO/IEC 12207 & 25010.
Normas internacionales que establecen requisitos para el desarrollo e integración de componentes software con énfasis en calidad y procesos.
Nivel: avanzado (normativas oficiales)
3. Bibliografía por Áreas Temáticas
Tema 1: Desarrollo de componentes
-
Meyer B., Object-Oriented Software Construction, Prentice Hall, 1988.
Pionero en conceptos orientados a objetos aplicados al desarrollo modular y componentes reutilizables. Fundamental para entender principios básicos.
Nivel: básico/intermedio
-
Koziolek A., A Comparative Study of Component Models for Embedded Systems Development, Journal of Systems and Software, 2019.
Análisis comparativo sobre modelos de componentes en sistemas embebidos; útil para entender diferentes infraestructuras framework.
Nivel: intermedio/avanzado
-
Castro J. et al., Arquitecturas Orientadas a Servicios (SOA) en Sistemas Distribuidos, Revista Iberoamericana de Automática e Informática Industrial, 2017.
Cubre modelos de intercambio y comunicación síncrona/asíncrona en entornos distribuidos basados en servicios.
Nivel: intermedio
-
Santos M., Sistemas Distribuidos Modernos: Fundamentos y Aplicaciones Prácticas, Editorial Universitaria, 2020.
Cubre aspectos prácticos del desarrollo distribuido con énfasis en protocolos y comunicación entre componentes remotos.
Nivel: intermedio/avanzado
-
Eclipse Foundation, Eclipse Rich Client Platform (RCP), https://www.eclipse.org/RCP/, 2021.
Página oficial con documentación técnica sobre frameworks para desarrollo basado en componentes modulares.
- Coursera - Universidad Nacional Autónoma de México (UNAM), "Desarrollo de Componentes Software", https://www.coursera.org/learn/desarrollo-componentes-software , 2022.
Curso online que cubre fundamentos teóricos y prácticos del desarrollo e integración de componentes con ejemplos reales. - IEEE Xplore Digital Library, "Artículos sobre Component-Based Software Engineering", https://ieeexplore.ieee.org/, acceso abierto parcial.
Base de datos con artículos especializados en tecnologías emergentes e investigaciones recientes. - ACM Digital Library, "Publicaciones sobre Sistemas Distribuidos", https://dl.acm.org/, acceso institucional.
Recurso excelente para artículos académicos sobre comunicación distribuida y modelos de intercambio. - SpringerLink - Ingeniería del Software,"https://link.springer.com/", 2023.
Revistas y libros electrónicos con capítulos específicos sobre frameworks e infraestructuras para componentes. - Página oficial ISO/IEC standards,"https://www.iso.org/standard/xxx.html", 2020.
Normas internacionales relacionadas con calidad del software y estándares técnicos para componentes distribuidos. - Udemy - Cursos especializados,"https://www.udemy.com/", 2023.
Cursos prácticos en desarrollo e implementación de componentes usando frameworks populares como OSGi o Eclipse RCP. - YouTube - Conferencias y tutoriales,"https://www.youtube.com/", varias fechas.
Videos académicos sobre metodologías modernas en integración de elementos software basados en componentes. - MDE - Model Driven Engineering,"https://modeling-languages.com/", 2021.
Recursos sobre modelado UML aplicado a sistemas distribuidos y componentes. - The Open Group,"https://publications.opengroup.org/", 2022.
Documentación técnica sobre estándares abiertos relacionados con arquitectura orientada a servicios (SOA) y componentes distribuidos. - Sistemas Distribuidos – Recursos Educativos,"https://recursoseducativos.edu/sistemas-distribuidos", 2023.
Material didáctico gratuito enfocado a fundamentos teóricos y casos prácticos actuales. - ISO/IEC 12207:2017 - Ingeniería del software — Procesos del ciclo de vida del software.
- ISO/IEC 25010:2011 - Modelo de calidad para productos software.
- UNE-EN ISO/IEC 42010:2011 - Arquitectura del sistema y descripción arquitectónica.
- NORMAS IEEE Std 1471-2000 - Arquitectura del software basada en vistas estructuradas.
- "Introducción a la Ingeniería Basada en Componentes", Conferencia grabada por la IEEE Computer Society (YouTube), 2019.
Explica conceptos básicos con ejemplos prácticos actuales. - "Sistemas Distribuidos Modernos", TEDx Talks Universidad Politécnica Madrid (YouTube), 2021.
Análisis visual sobre comunicación síncrona/asíncrona en sistemas distribuidos. - "Desarrollo Ágil con Componentes", Curso online ofrecido por edX (HarvardX), disponible desde 2020.
Video conferencias sobre metodologías modernas aplicadas al desarrollo basado en componentes. - Elementos modulares reutilizables que conforman sistemas software complejos mediante interfaces bien definidas.
- Conjunto de frameworks o plataformas que soportan el desarrollo e integración de componentes software.
- Intercambio directo donde emisor y receptor interactúan simultáneamente; ejemplo típico es RPC (Remote Procedure Call).
- Intercambio donde los mensajes se envían sin esperar respuesta inmediata; ejemplo es el uso de colas o mensajes difusos (MQ).
- Lenguaje visual estándar para representar arquitecturas y relaciones entre componentes distribuidos o sistemas complejos.