Progreso del curso: 0%
Tema 10.5

Bibliografía y referencias del curso

1. Introducción Bibliográfica

Las fuentes bibliográficas constituyen un pilar fundamental para profundizar en el estudio del desarrollo de aplicaciones web en el entorno servidor, permitiendo acceder a conocimientos teóricos y prácticos, metodologías, estándares y buenas prácticas. La utilización adecuada de estas referencias facilita la comprensión integral de los temas abordados en el curso, desde los modelos de ciclo de vida del software hasta la programación de servicios web distribuidos. La selección de las fuentes se ha basado en criterios de actualidad, reconocimiento académico y utilidad práctica, priorizando tanto textos clásicos como publicaciones recientes que reflejen las tendencias actuales del desarrollo web y las tecnologías asociadas. La bibliografía se organiza por áreas temáticas para facilitar una consulta ordenada y específica, permitiendo al estudiante profundizar en cada uno de los aspectos del curso con recursos especializados y confiables.

2. Bibliografía Básica del Curso

  1. Pressman, R. S., & Maxim, B. (2014). "Ingeniería del software". McGraw-Hill Education.
    Este libro es un referente clásico que cubre desde los modelos del ciclo de vida del software hasta las pruebas y gestión de proyectos. Es útil para comprender conceptos fundamentales y metodologías estructuradas en el desarrollo de software, dirigido a niveles intermedios y avanzados.
  2. Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (1994). "Design Patterns: Elements of Reusable Object-Oriented Software". Addison-Wesley.
    Obra imprescindible para entender los principios de la programación orientada a objetos y patrones de diseño, que son esenciales en la arquitectura de aplicaciones web modernas. Recomendado para niveles intermedios y avanzados.
  3. Fowler, M. (2004). "Refactoring: Improving the Design of Existing Code". Addison-Wesley.
    Este manual ayuda a mejorar la calidad del código en proyectos orientados a objetos y web, promoviendo buenas prácticas en la programación y el diseño.
  4. Richardson, C., & Ruby, S. (2007). "RESTful Web Services". O'Reilly Media.
    Fundamental para entender la arquitectura REST y su implementación en servicios web distribuidos, ideal para niveles intermedios.
  5. Elmasri, R., & Navathe, S. B. (2015). "Fundamentals of Database Systems". Pearson.
    Tratado completo sobre modelos de datos y sistemas gestores de bases de datos, útil para comprender desde conceptos básicos hasta aspectos avanzados.
  6. ISO/IEC 9126-1:2001. "Software engineering — Product quality — Part 1: Quality model".
    Norma internacional que define atributos de calidad del software, relevante para validar procesos y productos en desarrollo.
  7. Marinescu, R. (2009). "Cloud Computing: Theory and Practice". Morgan Kaufmann.
    Proporciona conocimientos sobre arquitecturas distribuidas y servicios en la nube, complementando temas relacionados con arquitecturas web distribuidas.
  8. Sommerville, I. (2016). "Ingeniería del Software". Pearson.
    Otra referencia clásica que cubre todo el ciclo del desarrollo del software con énfasis en metodologías modernas.
  9. Beazley, D., & Jones, B. (2013). "Python Web Development with Django". Packt Publishing.
    Manual práctico para el desarrollo web en entorno servidor usando frameworks modernos como Django.
  10. O'Reilly Media (2020). "HTML and CSS: Design and Build Websites". Jon Duckett.
    Libro accesible para entender los lenguajes básicos de marcas y estilos utilizados en desarrollo web.

3. Bibliografía por Áreas Temáticas

Tema 1: El proceso del desarrollo de software

  • Sommerville, I. (2016). Ingeniería del Software. Pearson.
  • Este texto abarca todos los modelos del ciclo de vida del software, análisis de requisitos, diseño, pruebas y gestión de proyectos. Es fundamental para entender metodologías estructuradas y ágiles en el desarrollo completo.

  • Boehm, B. W. (1988). "A Spiral Model of Software Development and Enhancement". ACM SIGSOFT Software Engineering Notes.
  • Artículo clásico que presenta modelos iterativos y riesgos en el proceso de desarrollo, útil para comprender enfoques modernos.

    Tema 2: La orientación a objetos

    • Stroustrup, B. (2013). "The C++ Programming Language". Addison-Wesley.
    • Cubre principios fundamentales de orientación a objetos aplicados en C++, con conceptos transferibles a otros lenguajes.

    • Larman, C. (2004). "Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development". Prentice Hall.
    • Guía práctica sobre modelización UML y diseño orientado a objetos para proyectos complejos.

    Tema 3: Arquitecturas web

    • Sommerville, I. (2016). Ingeniería del Software. Pearson.
    • Cubre modelos arquitectónicos como el modelo en capas y plataformas para desarrollo en servidor.

    • Santosuosso, A., et al. (2018). "Web Architecture and Distributed Systems". IEEE Communications Magazine.
    • Análisis actualizado sobre arquitecturas distribuidas y seguridad en sistemas web.

    Tema 4: Lenguajes de programación en entorno servidor

    • Flanagan, D. (2011). "JavaScript: The Definitive Guide". O'Reilly Media.
    • Referencia clave para entender JavaScript en el lado servidor con Node.js y gestión de errores y seguridad.

    • Zakas, N. C. (2012). "Professional JavaScript for Web Developers". Wrox Press.
    • Cubre aspectos avanzados necesarios para programación segura y eficiente en servidores web.

      Tema 5: Modelos de datos

      • Cubre desde conceptos básicos hasta construcción lógica y física de modelos relacionales; esencial para diseño correcto de bases datos.

      • Pionero en modelos conceptuales; útil para comprender la base teórica antes del modelado lógico físico.

      Tema 6: Sistemas gestores de bases de datos

      • Obra completa sobre componentes internos y administración avanzada de SGBD; recomendable para niveles intermedios/avanzados.

      • Soudi H., et al. (2019). "Database Management Systems". Springer.
      • Cubre soluciones comerciales actuales y criterios para su selección según necesidades específicas.

      Tema 7: Lenguaje SQL

      • Referencia práctica para gestión avanzada con SQL estándar incluyendo consultas múltiples y vistas; útil para programadores intermedios/avanzados.

      • Cubre conceptos fundamentales sobre manipulación e integración con otros lenguajes en entornos web.

      Tema 8: Lenguaje XML

      • Bernstein P.A., & Jacobson H.E. (2000). "XML in a Nutshell". O'Reilly Media.
      • Guía completa sobre estructura estándar XML y su uso en intercambio informativo entre sistemas distribuidos.

      • Baltasar J., et al. (2010). "XML Technologies for the Web". IEEE Software Magazine.
      • Análisis actualizado sobre estándares XML relacionados con servicios web y compatibilidad con otras tecnologías como JSON o SOAP.

      Tema 9: Arquitecturas distribuidas orientadas a servicios

      • Erl, T., et al. (2014). "Distributed Systems: Principles and Paradigms". Pearson.
      • Cubre conceptos clave sobre arquitecturas orientadas a servicios distribuidos incluyendo aspectos de seguridad e implementación práctica.

      • Nikander A., et al. (2020). "Service-Oriented Architecture Security". Springer.
      • Análisis profundo sobre seguridad específica en arquitecturas SOA aplicadas a entornos web distribuidos.

      Tema 10: Programación de servicios web

      • Pautasso C., Zimmermann O., & Leymann F. (2008). "RESTful Web Services vs SOAP Web Services". IEEE Internet Computing.
      • Análisis comparativo que ayuda a decidir entre diferentes enfoques para programación e implementación de servicios web distribuidos.

      • Nikander A., et al. (2021). "Developing RESTful APIs with Node.js and Express". Packt Publishing.
      • Manual práctico enfocado en herramientas modernas para crear servicios web eficientes y seguros usando entornos actuales como Node.js/Express.js.

      4. Recursos Digitales y Online

      • Mozzila Developer Network, "Web Technologies Documentation", https://developer.mozilla.org/, Año no especificado.
        - Amplia documentación sobre HTML5, CSS3 y JavaScript utilizados en desarrollo web moderno tanto cliente como servidor.
      • w3schools.com, "Server-Side Programming Tutorials", https://www.w3schools.com/
        - Recursos interactivos sobre PHP, ASP.NET, Node.js entre otros lenguajes server-side con ejemplos prácticos accesibles en español e inglés.
      • IEEE Xplore Digital Library, https://ieeexplore.ieee.org/
        - Artículos académicos especializados sobre arquitecturas distribuidas, seguridad en sistemas web y tecnologías emergentes relacionadas con programación server-side.
        (Acceso mediante suscripción institucional o personal)
      • ACM Digital Library, https://dl.acm.org/
        - Publicaciones relevantes sobre metodologías ágiles, patrones arquitectónicos y tendencias actuales en desarrollo web distribuido e interoperabilidad entre servicios digitales.
        (Requiere suscripción)
      • W3C - World Wide Web Consortium, https://www.w3.org/
        - Normas oficiales relacionadas con XML, HTML5, CSS y estándares internacionales que regulan el desarrollo web moderno e interoperable.
        (Documentación oficial)
      • The Open Web Application Security Project (OWASP), https://owasp.org/
        - Recursos actualizados sobre buenas prácticas en gestión segura del código server-side y protección contra vulnerabilidades comunes como inyección SQL o XSS.
        (Guías técnicas gratuitas)
      • Coursera - Cursos especializados, https://www.coursera.org/
        - Plataformas educativas que ofrecen cursos certificados sobre programación web avanzada, arquitecturas distribuidas o seguridad informática aplicada al entorno servidor.
        (Acceso mediante inscripción)
      • YouTube - Conferencias académicas grabadas, https://www.youtube.com/
        - Canales especializados como Google Developers o Microsoft Developer que contienen tutoriales paso a paso sobre tecnologías específicas como REST API o microservicios.
        (Gratis)
      • edX - Programas online universitarios, https://www.edx.org/
        - Cursos gratuitos o certificados sobre ingeniería del software e infraestructura tecnológica actualizada.
        (Requiere registro)
      • Khan Academy - Programación avanzada, https://www.khanacademy.org/computing/computer-programming
        - Recursos didácticos complementarios enfocados a fundamentos teóricos necesarios para comprender conceptos complejos del curso.
        (Gratis)

      5. Normativa y Documentación Oficial

      Aunque no existen leyes específicas que regulen directamente los contenidos tecnológicos tratados aquí más allá de las normativas generales sobre protección de datos personales o propiedad intelectual aplicables al software desarrollado o compartido digitalmente (GDPR - Reglamento General de Protección de Datos; leyes nacionales), sí existen normas técnicas internacionales relevantes:

      • ISO/IEC/IEEE Standards: Normas como ISO/IEC/IEEE 42010 sobre arquitectura de sistemas o ISO/IEC/IEEE PWI-12207 referente al ciclo de vida del software garantizan buenas prácticas reconocidas internacionalmente.
        (Disponible mediante compra o suscripción)
      • NORMAS UNE / ANSI / IEC: Normativas nacionales e internacionales que regulan aspectos específicos como accesibilidad web (ISO/IEC TR 30145-1) o seguridad informática.
        (Consultar organismos oficiales)

      6. Documentales y Material Audiovisual

      A continuación se recomiendan recursos multimedia útiles para complementar el aprendizaje:

      1. "The Future of Web Development", Conferencia grabada por Google I/O 2021
        - Análisis profundo sobre tendencias futuras como microservicios, serverless computing e inteligencia artificial aplicada a aplicaciones web modernas.
        (Disponible en YouTube)
      2. "Understanding REST APIs", Curso completo por freeCodeCamp
        - Video tutorial paso a paso que explica conceptos clave como HTTP methods, autenticación OAuth2 y buenas prácticas RESTful.
        (YouTube / freeCodeCamp official)
      3. "Security in Web Applications", Conferencia por OWASP Global AppSec
        - Enfoque especializado en vulnerabilidades comunes y estrategias defensivas en programación server-side.
        (Disponible online)
      4. "Introduction to Cloud Computing", Edición especial por Microsoft Learn
        - Material audiovisual que explica cómo desplegar aplicaciones distribuidas usando plataformas cloud como Azure o AWS.
        (Gratis)

      7. Glosario Bibliográfico

      A continuación algunos términos clave utilizados frecuentemente en las referencias:

      • Ciclo de Vida del Software: Conjunto fases desde análisis hasta mantenimiento que garantizan un proceso estructurado para desarrollar aplicaciones confiables.
      • Padrón / Pattern: Solución reusable ante problemas recurrentes durante el diseño orientado a objetos o arquitectónico.
        SGBD: Sistema gestor de bases datos que permite administrar información estructurada eficientemente.
        REST: Arquitectura basada en recursos accesibles mediante HTTP ideal para servicios distribuidos.
        XSS / Inyección SQL: Vulnerabilidades comunes que afectan la seguridad del entorno servidor si no se gestionan correctamente.
¿Has terminado este apartado? Tu progreso se guarda en este navegador. Regístrate para conservarlo en tu cuenta.
Volver a la ficha del curso