En conclusión, el proceso de desarrollo de una aplicación de biblioteca digital se
beneficia enormemente del uso de UML, una arquitectura cliente-servidor, y una comprensión clara de los requerimientos funcionales. Los diagramas UML, incluyendo los de Clases, Estados y Interacción de Objetos, proporcionan una representación visual y detallada de la estructura y el comportamiento del sistema. Permiten una mejor comunicación entre los miembros del equipo de desarrollo y ayudan a identificar posibles problemas antes de la implementación. La elección de una arquitectura cliente-servidor se alinea perfectamente con las necesidades de una aplicación de biblioteca digital, ya que facilita la escalabilidad, el mantenimiento y la seguridad del sistema. La separación clara entre la lógica del cliente y del servidor permite un desarrollo más organizado y eficiente. Concluir sobre el aprendizaje de UML para el desarrollo de una aplicación de biblioteca digital implica reconocer los desafíos inherentes a este proceso y los logros alcanzados hasta el momento. A medida que avanzamos en la creación de esta aplicación, se hace evidente que el uso de UML y la implementación en Android Studio han sido componentes fundamentales de este viaje. Incluso con un prototipo, se puede apreciar el valor del modelado UML en la comprensión y representación de la estructura y el flujo de la aplicación. Sin embargo, este proceso no ha estado exento de desafíos, especialmente para aquellos que se aventuran por primera vez en el mundo del desarrollo de aplicaciones y el modelado. Para quienes están abordando este proyecto por primera vez, tanto la creación del prototipo, como el uso de UML pueden presentar dificultades significativas. La curva de aprendizaje puede ser pronunciada, ya que la comprensión de los conceptos y su aplicación práctica en el desarrollo de software requiere tiempo y dedicación. La traducción de los diagramas a código ejecutable puede ser un proceso complejo y desafiante, especialmente para aquellos que aún no han adquirido experiencia en el desarrollo de aplicaciones móviles. Por último, la importancia de los requerimientos funcionales radica en comprender las necesidades del usuario y garantizar que la aplicación cumpla con sus expectativas. Estos actúan como guía durante todo el proceso de desarrollo, asegurando que la aplicación brinde una experiencia satisfactoria al usuario final.