Publicación: Desarrollo de un portal de wikis
dc.contributor.advisor | Enrique Amigó Cabrera | |
dc.contributor.author | Ruiz Montes, Antonio | |
dc.date.accessioned | 2024-09-11T09:47:58Z | |
dc.date.available | 2024-09-11T09:47:58Z | |
dc.date.issued | 2024-07-04 | |
dc.description.abstract | Desde hace unos 30 años, las wikis se han mostrado como una herramienta versátil y muy accesible a la hora de compartir conocimiento en comunidades. En este PFG (Proyecto Fin de Grado) propongo un diseño de desarrollo para una de ellas y muestro los pasos que envuelven la construcción de software. Usando Java como lenguaje articulador de codificación y basando la solución en una arquitectura de APIs, se ofrecen detalles de las diferentes tecnologías para su construcción así como de la evolución que el propio proyecto va sufriendo en la fase de implementación. Hay dos aspectos en los que he querido poner especial énfasis, en este caso, no tanto sobre los procesos formales a nivel de ingeniería del software, sino sobre aspectos que tienen un impacto directo sobre el producto final y el proceso de implementación y mantenimiento. De una parte, la idea de montar una arquitectura de APIs persigue buscar mucha flexibilidad en la solución final, de modo tal que sea útil cuándo haya que hacer evoluciones, ya que ofrecerá un bajo acoplamiento; pero también de cara a mejorar sus disponibilidad Hoy en día se espera que una aplicación ofrezca un alto % de disponibilidad. Utilizando APIs, desplegadas en servidores específicamente ideados para ello como pudieran ser OpenShift[res.1] y al utilizar APIs diferentes, no será problemático analizar qué aspecto de la aplicación (qué API concretamente), necesitará más recursos, facilitando así que los mismos se puedan distribuir de la forma más óptima posible. El otro aspecto en el que he querido hacer especial hincapié ha sido en la fase de pruebas. Estas, habitualmente, están formadas por test de regresión y test de integración principalmente, sin embargo, yo he querido poner el foco en los test unitarios. Estos están enfocados no al conjunto de la aplicación, sino a cada una de sus partes del modo más individual posible: los métodos y funciones. Una buena construcción de estos test permiten detectar diseños incorrectos en código. Esto es, la función o método puede hacer lo que se espera de ella, pero no cumple correctamente con el principio responsabilidad única[res.2]. Un buen test unitario nos alertará de esto de diversas formas y nos hará plantearnos rediseñar nuestro código. Adicionalmente, según construyamos código nuevo, estos test nos alertaran de cambios o funcionamientos no esperados en otras partes del código, todo en una fase previa a someter el código a otro tipo de pruebas más globales. Esto nos llevará a conseguir un producto con muchas garantías de que haga lo que se espera de él. El resultado final de este trabajo es una wiki en la que se permite registrar libros y capítulos, donde existen roles con diferentes funciones y un lenguaje de marcado básico que permite la conversión de texto plano a Html. | es |
dc.description.abstract | For about 30 years, wikis have proven to be a versatile and highly accessible tool for sharing knowledge within communities. In this Final Degree Project (PFG), I propose a development design for one of them and outline the steps involved in software construction. Using Java as the coding language and basing the solution on an API architecture, I provide details of the different technologies for its construction as well as the evolution the project undergoes during the implementation phase. There are two aspects I wanted to emphasize, not so much on the formal processes at the software engineering level, but on aspects that have a direct impact on the final product and the implementation and maintenance process. On one hand, the idea of setting up an API architecture aims to seek a lot of flexibility in the final solution, making it useful when evolutions are needed, as it will offer low coupling; but also to improve its availability. Nowadays, an application is expected to offer a high percentage of availability. By using APIs deployed on servers specifically designed for this, such as OpenShift, and by utilizing different APIs, it will not be problematic to analyze which aspect of the application (which specific API) will need more resources, thus facilitating the most optimal distribution of these resources. The other aspect I wanted to emphasize was the testing phase. These usually consist mainly of regression tests and integration tests. However, I wanted to focus on unit tests. These are not aimed at the entire application but at each of its parts as individually as possible: methods and functions. A good construction of these tests allows for the detection of incorrect designs in the code. That is, the function or method may do what is expected of it, but it does not correctly comply with the single responsibility principle. A good unit test will alert us to this in various ways and will make us reconsider redesigning our code. Additionally, as we build new code, these tests will alert us to unexpected changes or behaviors in other parts of the code, all in a phase prior to subjecting the code to more global types of tests. This will lead us to achieve a product with many guarantees that it will do what is expected of it. The final result of this work is a wiki that allows the registration of books and chapters, where there are roles with different functions and a basic markup language that enables the conversion of plain text to HTML. | en |
dc.identifier.citation | Ruiz Montes, Antonio (2024) Desarrollo de un portal de wikis. Trabajo Fin de Grado. Universidad de Educación a Distancia (UNED) | |
dc.identifier.uri | https://hdl.handle.net/20.500.14468/23703 | |
dc.language.iso | es | |
dc.publisher | Universidad de Educación a Distancia (UNED) | |
dc.relation.center | Facultades y escuelas::E.T.S. de Ingeniería Informática | |
dc.relation.degree | Grado en Ingeniería Informática | |
dc.relation.department | Lenguajes y Sistemas Informáticos | |
dc.rights | info:eu-repo/semantics/openAccess | |
dc.rights.uri | https://creativecommons.org/licenses/by-nc-nd/4.0/deed.es | |
dc.subject | 12 Matemáticas::1203 Ciencia de los ordenadores ::1203.17 Informática | |
dc.subject.keywords | Ágiles | es |
dc.subject.keywords | API | es |
dc.subject.keywords | Java | es |
dc.subject.keywords | Junit | es |
dc.subject.keywords | MongoDB | es |
dc.subject.keywords | RESTfull | es |
dc.subject.keywords | Selenium | es |
dc.subject.keywords | Spring | es |
dc.subject.keywords | sprint | es |
dc.subject.keywords | test | es |
dc.subject.keywords | wiki | es |
dc.title | Desarrollo de un portal de wikis | es |
dc.type | proyecto fin de carrera | es |
dc.type | bachelor thesis | en |
dspace.entity.type | Publication |
Archivos
Bloque original
1 - 1 de 1
Cargando...
- Nombre:
- TFG_Portal de Wikis_ANTONIO RUIZ MONTES.pdf
- Tamaño:
- 3.71 MB
- Formato:
- Adobe Portable Document Format
Bloque de licencias
1 - 1 de 1
No hay miniatura disponible
- Nombre:
- license.txt
- Tamaño:
- 3.62 KB
- Formato:
- Item-specific license agreed to upon submission
- Descripción: