Please use this identifier to cite or link to this item:
http://hdl.handle.net/10553/117590
Title: | Desarrollo de un sistema de gestión de APIs en la plataforma Moonshot | Authors: | Santana Batista, Saulo | Director: | Hernández Cabrera, José Juan Aramburu Martínez De Estíbaliz, Iñigo |
UNESCO Clasification: | 120317 Informática | Issue Date: | 2022 | Abstract: | Tras el año de experiencia realizando prácticas extracurriculares en la empresa Moonshot Innovation hemos visto la oportunidad de realizar un trabajo de finde de carrera que cubra la necesidad de crear un API Developer Portal. Esta necesidad viene dada por los propios usuarios de la plataforma que solicitan la posibilidad de conocer cómo funcionan estas API´s y poder interactuar con ellas. La realización de este trabajo facilitará la colaboración entre Moonshot Innovation y otras personas o empresas ajenas a esta para que desarrollen sus propios módulos dentro de la aplicación, favoreciendo así la personalización de cada ecosistema. Esta comunicación se basa en que Moonshot ofrece el uso de su API a desarrolladores externos a la empresa y por tanto esta requiere de ser documentada para el entendimiento de sus usuarios. Es necesario que la documentación sea interactiva y sencilla para el usuario, por eso, para la realización de este trabajo se ha tenido en cuenta la opinión de usuarios reales que nos han permitido conocer su experiencia. Además, esta cuenta con un apartado de pruebas (sandbox) para realizar pruebas e interactuar con las API´s en tiempo real mejorando la experiencia del usuario. También se han añadido otras dos funcionalidades que complementan a la propia documentación. En primer lugar, este proyecto cuenta con un apartado donde se describen en diferentes lenguajes de programación que código tendría que escribir un desarrollador para poder realizar una petición a las API´s. Estos fragmentos de códigos están divididos en función de los módulos que ofrece Moonshot Innovation. Los lenguajes de programación disponibles por el momento son Java, Python y Javascript. Por otro lado, también se ha desarrollado otra funcionalidad que consiste en la creación de unas plantillas que definen cual es la estructura de los objetos que tienen que enviarse en las peticiones que se mandan a las API´s, divididas por el tipo de entidad que se maneja en la plantilla. Además de la estructura de cada objeto, también se ha añadido un ejemplo para que sea más sencillo de entender e implementar. La duración de este trabajo de fin de carrera han sido 300 horas, las cuales están divididas en las siguientes tareas: prototipo funcional, recolección de información de los endpoints, implementación de la página web, transcribir la información a Swagger, implementación de las dos funcionalidades descritas anteriormente y la realización de pruebas. La motivación de este trabajo viene dada por la visión a futuro de la empresa, ya que documentar estas API´s será un incentivo para que desarrolladores de software ajenos a la empresa puedan desarrollar sus propios módulos de software utilizando las API´s en cuestión. Además, se incrementa el valor de negocio añadiendo un nuevo módulo disponible para todos aquellos que sean participes de un ecosistema, y aunque este módulo está principalmente enfocado para los desarrolladores de software, la idea inicial es que todas las personas que sean dueñas o formen parte de un ecosistema puedan tener estos recursos disponibles. Por otro lado, esta motivación también viene dada por las ganas de expandir mis conocimientos y vivir el proceso de crear un proyecto real del que tendré opiniones y objeciones de usuarios reales. Desde el primer momento que entré en esta empresa mis conocimientos no han parado de aumentar y pensé que esta era una oportunidad perfecta para seguir ese camino de mejorar como desarrollador de software aumentando mis conocimientos en el área de API Management y en el desarrollo y documentación de una API´s REST. La realización de este trabajo ha sido una gran experiencia, porque este proyecto me ha forzado a desarrollar un producto software creado y pensado para usuarios reales, donde no solo su experiencia es vital para la empresa, sino que también está sometido a la mejora continua por los propios comentarios de los usuarios que serán los encargados de validar los requisitos e identificar otros nuevos durante la vida del producto. | Department: | Departamento de Informática y Sistemas | Faculty: | Escuela de Ingeniería Informática | Degree: | Grado en Ingeniería Informática | URI: | http://hdl.handle.net/10553/117590 |
Appears in Collections: | Trabajo final de grado |
En el caso de que no encuentre el documento puede ser debido a que el centro o las/os autoras/es no autorizan su publicación. Si tiene verdadero interés en el contenido del mismo, puede dirigirse al director/a o directores/as del trabajo cuyos datos encontrará más arriba.
Show full item recordPage view(s)
157
checked on Nov 9, 2024
Download(s)
119
checked on Nov 9, 2024
Google ScholarTM
Check
Share
Export metadata
Items in accedaCRIS are protected by copyright, with all rights reserved, unless otherwise indicated.