• Presentación de la asignatura

      Queremos darte la bienvenida a la asignatura Diseño Software, publicada como recurso educativo abierto (REA) de la Universidad Rey Juan Carlos.

      El desarrollo de aplicaciones software constituye uno de los pilares fundamentales de la sociedad digital actual. Desde aplicaciones móviles y servicios web hasta sistemas industriales o plataformas de inteligencia artificial, el software está presente en prácticamente todos los ámbitos. Para afrontar el desarrollo de aplicaciones cada vez más complejas es necesario emplear metodologías, técnicas y herramientas que permitan construir sistemas robustos, escalables y fáciles de mantener a lo largo de su ciclo de vida.

      En este contexto, el objetivo general de la asignatura Diseño Software es proporcionar los conocimientos y competencias necesarios para analizar, diseñar, implementar y probar aplicaciones utilizando el paradigma de Programación Orientada a Objetos (POO), el paradigma predominante en el desarrollo de software moderno. A lo largo de la asignatura, el estudiante aprenderá los principios fundamentales de este paradigma y adquirirá las habilidades necesarias para desarrollar aplicaciones de calidad mediante el uso de técnicas propias de la ingeniería del software.

      Como lenguaje de programación se utilizará C++, uno de los lenguajes más representativos de la programación orientada a objetos, con el que se implementarán los principales conceptos de este paradigma, como las clases, los objetos, la encapsulación, la herencia y el polimorfismo.

      Además de la implementación, el diseño de una aplicación constituye una etapa esencial para garantizar su correcta organización y evolución. Para ello, se empleará UML (Unified Modeling Language) como lenguaje estándar de modelado, utilizando principalmente los diagramas de clases para representar la estructura del software y las relaciones entre sus componentes, así como los diagramas de actividad para describir el flujo de ejecución y el comportamiento de los procesos del sistema.

      Asimismo, la asignatura introduce el estudio de los patrones de diseño, soluciones reutilizables a problemas recurrentes en el desarrollo de software orientado a objetos. El uso de estos patrones permite construir aplicaciones más flexibles, reutilizables y fáciles de mantener, favoreciendo además un desarrollo más eficiente y una mayor calidad del software.

      Finalmente, en la pestaña de "Materiales consolidados" podrás encontrar la colección de materiales en abierto y, en la pestaña de "Temario", acceder a ellos organizados por los diferentes temas de la asignatura.