Diseño y desarrollo de una herramienta de programación de laboratorios de biología portátiles: Bioblocks 3.0

García Blanco, Alejandro (2019). Diseño y desarrollo de una herramienta de programación de laboratorios de biología portátiles: Bioblocks 3.0. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S. de Ingenieros Informáticos (UPM), Madrid, España.

Description

Title: Diseño y desarrollo de una herramienta de programación de laboratorios de biología portátiles: Bioblocks 3.0
Author/s:
  • García Blanco, Alejandro
Contributor/s:
Item Type: Final Project
Degree: Grado en Ingeniería Informática
Date: January 2019
Subjects:
Faculty: E.T.S. de Ingenieros Informáticos (UPM)
Department: Inteligencia Artificial
Creative Commons Licenses: Recognition - No derivative works - Non commercial

Full text

[thumbnail of TFG_ALEJANDRO_GARCIA_BLANCO.pdf]
Preview
PDF - Requires a PDF viewer, such as GSview, Xpdf or Adobe Acrobat Reader
Download (845kB) | Preview

Abstract

Bioblocks 3.0 tiene como objetivo ser una plataforma en la que el usuario pueda crear y compartir experimentos biológicos, orientada a un amplio rango de usuarios, desde la formación académica (colegios) hasta la creciente comunidad de biología de Do It Yourself (DIY). Este proyecto de TFG es la continuación de la anterior versión de Bioblocks (Bioblocks 2.0), desarrollada durante el curso 2017-2018 por estudiantes de la facultad y bajo el entorno Bitbloq. Debida a la mala experiencia con el desarrollo usando Bitbloq, tanto con la documentación y el soporte por parte de BQ como con el aspecto técnico de la plataforma, el primer objetivo de este proyecto ha sido buscar una plataforma alternativa sobre la que trabajar o, en su ausencia, diseñar y desarrollar las partes necesarias. Llevado a cabo por un grupo de 4 alumnos (3 en el curso de los Trabajos de Fin de Grado correspondientes y el otro apoyando durante su Practicum), el proyecto ha tenido dos fases claramente separadas: 1) búsqueda de una solución alternativa a Bitbloq con la que desarrollar y 2) el diseño y programación de las distintas funcionalidades de la aplicación. Para la primera fase, empecé evaluando la beta de Scratch versión 3, que resultó estar muy orientada a las animaciones de su público objetivo (niños), y cuyo sistema de extensiones era demasiado poco flexible para lo que queríamos usarlo. Buscando alternativas, encontré la plataforma PXT de Microsoft y a esto lo siguió un período de pruebas y conversaciones entre el equipo para determinar si utilizar PXT como la base del proyecto, que resultó en mi propuesta de utilizar un componente de PXT como base, PXT-Blockly (principalmente Blockly con el diseño de Scratch), y desarrollar nosotros tanto un backend como el resto del frontend con una serie de tecnologías, principalmente Vue JS en frontend y Node JS en el servidor. Durante la segunda fase del proyecto me centré principalmente en la parte de conectar bloques de hardware de Blockly con un renderizado de los mismos y sus conexiones utilizando la librería Paper.JS, así como en el desarrollo de un entorno protegido en el que poder permitir la ejecución de extensiones diseñadas por la comunidad de forma segura, y la creación de una pequeña API para que dichas extensiones puedan añadir bloques a Blockly.--ABSTRACT--Bioblocks 3.0’s goal is to be a platform where the user can design a share biology experiments, targeting a broad range of users, anywhere from school to the increasingly large Do It Yourself (DIY) community. This final degree project is the continuation of a previous Bioblocks version, 2.0, developed during the 2017-2018 academic year by students of the university on the Bitbloq environment. Due to the overall bad experience with the environment, both in terms of the support received by BQ and in regards to the technical complexity of it, the first goal of the Bioblocks 3.0 project has been to find a different platform or, be it not found, design and develop the necessary parts. The project has been developed by a group of 4 alumni (3 as part of their respective final degree projects, and one supporting as part of their Practicum), and it has consisted of two clearly separated phases: 1) the search for an alternative to Bitbloq with which to develop the project with, and 2) the design and development of the functionalities of Bioblocks afterwards. For the first phase, I evaluated Scratch v3, which resulted to be too oriented to the creation of animation and for its target audience (kids), as well as featuring a very inflexible extension system for what we wanted to do. While looking for alternatives, I found Microsoft’s PXT platform, which seemed to be a good alternative. What followed was a period of testing and talks within the team to agree on whether to use PXT as the base of the project. This work resulted in my proposal to use PXT-Blockly (a PXT component, a fork of Blockly to add the Scratch design) and develop a backend and the rest of the frontend primarily using Node JS and Vue JS (respectively). During the second phase I focused specifically on connecting blocks designed in Blockly with canvas rendering based on the Paper.JS library, as well as on designing a sandbox environment in which to securely allow execution of user-provided code for extensions. Alongside this development, I designed a small API so that said user-made extensions can add blocks to Blockly

More information

Item ID: 54215
DC Identifier: https://oa.upm.es/54215/
OAI Identifier: oai:oa.upm.es:54215
Deposited by: Biblioteca Facultad de Informatica
Deposited on: 08 Mar 2019 13:22
Last Modified: 08 Mar 2019 13:24
  • 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