Desarrollo de un terminal de punto de venta, parte de servicios y sistemas

Arranz Rodríguez, Enrique (2017). Desarrollo de un terminal de punto de venta, parte de servicios y sistemas. Thesis (Master thesis), E.T.S.I. de Sistemas Informáticos (UPM).

Description

Title: Desarrollo de un terminal de punto de venta, parte de servicios y sistemas
Author/s:
  • Arranz Rodríguez, Enrique
Contributor/s:
Item Type: Thesis (Master thesis)
Masters title: Ingeniería Web
Date: July 2017
Subjects:
Freetext Keywords: Integración continua, desarrollo ágil, despliegue automático, test automático Continuous Integration, Agile development, automatic deploy, automatic test
Faculty: E.T.S.I. de Sistemas Informáticos (UPM)
Department: Sistemas Informáticos
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[thumbnail of TFM_ENRIQUE_ARRANZ_RODRIGUEZ.pdf]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (2MB) | Preview
[thumbnail of TFM_ENRIQUE_ARRANZ_RODRIGUEZ_ANEXOS1.zip] Archive (ZIP) - Personal Archivo Digital UPM only
Download (181MB)
[thumbnail of TFM_ENRIQUE_ARRANZ_RODRIGUEZ_ANEXOS2.zip] Archive (ZIP) - Personal Archivo Digital UPM only
Download (90MB)
[thumbnail of TFM_ENRIQUE_ARRANZ_RODRIGUEZ_ANEXOS3.zip] Archive (ZIP) - Users in campus UPM only
Download (253B)

Abstract

Este proyecto consiste en el desarrollo de un terminal de punto de venta. En concreto, en este PFM se tratará al apartado de servicios y sistemas para logar una configuración de integración y despliegue continuo.

La integración continua (IC) es una práctica de desarrollo de software mediante la cual los desarrolladores combinan los cambios en el código en un repositorio central de forma periódica, tras lo cual se ejecutan pruebas automáticas. El servicio de integración continua detecta los envíos al repositorio compartido y crea y ejecuta de forma automática pruebas de unidad en los cambios en el código para detectar al instante cualquier error funcional o de integración.
Con el despliegue continuo, se crean, pruebas, y preparan automáticamente los cambios en el código y se entregan para la fase de producción. Esta funcionalidad, amplia la integración continua al implementar todos los cambios en el código en un entorno de pruebas, pre-producción y producción.

En el desarrollo de este proyecto, se ha realizado el estudio de varias tecnologías de despliegue continuo para ampliar la integración continua existente en el proceso de desarrollo. Como resultado de dicho estudio, se obtiene Heroku. Es una plataforma como servicio de despliegue continuo, es decir, es un servidor de aplicaciones que nos permite automatizar el despliegue. El resultado de dicha automatización, es la posibilidad de inclusión en el proceso de integración continua de los test funcionales del API REST, mejorando así el proceso de desarrollo.

En la automatización de los test, se ha realizado una división en dos fases. Una primera fase en la cual se realizarán los test unitarios y de integración, en esta fase solo será necesaria tener una base de datos. Una segunda fase de testing funcional de API REST, para la cual se necesitará la aplicación desplegada.

ABSTRACT

This project consists of the development of a POS terminal. Specifically, this PFM will address the section on services and systems to achieve a configuration of integration and continuous deployment.

Continuous integration (IC) is a software development practice whereby developers combine code changes in a central repository periodically, after which automatic tests are run. The seamless integration service detects submissions to the shared repository and automatically creates and runs unit tests on changes to the code to instantly detect any functional or integration errors.
With continuous deployment, code changes are automatically created, tested, and prepared and delivered to the production phase. This functionality extends seamless integration by implementing all code changes in a testing, pre-production, and production environment.

In the development of this project, the study of several technologies of continuous deployment has been carried out to extend the continuous integration existing in the development process. As a result of this study, Heroku is obtained. It is a platform as a continuous deployment service, that is, it is an application server that allows us to automate the deployment. The result of this automation is the possibility of including in the process of continuous integration of functional tests of the API REST, thus improving the development process.

In the automation of the tests, a two-phase division was made. A first phase in which the unit and integration tests will be performed, in this phase it will only be necessary to have a database. A second phase of REST API functional testing, for which the deployed application will be needed.

More information

Item ID: 48210
DC Identifier: https://oa.upm.es/48210/
OAI Identifier: oai:oa.upm.es:48210
Deposited by: Biblioteca Universitaria Campus Sur
Deposited on: 23 Oct 2017 06:43
Last Modified: 23 Oct 2017 06:43
  • Logo InvestigaM (UPM)
  • Logo GEOUP4
  • Logo Open Access
  • Open Access
  • Logo Sherpa/Romeo
    Check whether the anglo-saxon journal in which you have published an article allows you to also publish it under open access.
  • Logo Dulcinea
    Check whether the spanish journal in which you have published an article allows you to also publish it under open access.
  • Logo de Recolecta
  • Logo del Observatorio I+D+i UPM
  • Logo de OpenCourseWare UPM