Giter VIP home page Giter VIP logo

mii_cc_ugr's Introduction

Juan Carlos GonQu

Linkedin Email

Hola! Soy Juan Carlos González Quesada, un estudiante del Máster de Ingeniería Informática en la UGR.

Algunas cosas sobre mí:

  • 🎓 Graduado en Ingeniería Informática con mención en Sistemas de Información en la UGR.
  • 🔬 Actualmente estoy terminando mis estudios de la Universidad de Granada en el Máster Profesional en Ingeniería Informática.
  • ⚽ Soy entrenador de fútbol.
  • 💻 Me encanta programar y escribir libros.
  • 📃 Tengo un artículo publicado en la HICSS sobre el paradigma de la computación granular.

Lenguajes y habilidades

cpp css sql git terminal

Proyectos y trayectoria:

⚡ Estadísticas de Github
☄️ Github Streaks

mii_cc_ugr's People

Contributors

jcgq avatar

Watchers

 avatar

Forkers

jruizd16

mii_cc_ugr's Issues

Desarrollar el método de Búsqueda por receta #32

Se desarrollará el sistema de decisión para ofrecer las recetas a los usuarios

Parámetro de entrada:
receta, nivelCalórico

Proceso:
El cliente introduce los parámetros y, con un algoritmo de machine Learning, se establece un sistema de recomendación que buscará entre todas las recetas creada, para determinar cuál es el conjunto de rectas que más se adecua a las necesidades del usuario.

Salida
Retorna una lista de recetas (En caso de éxito) o un mensaje de "error" tras no haber resultados de la búsqueda.

Testear la función validación #34

Como programador necesito comprobar que estoy desarrollando correctamente la función para validar los alimentos que el usuario añade para su receta.

Definir las estructuras de la clase Recetas

Como programador necesito contener los atributos de la clase de las recetas.
Para ello, tendremos:

  • nombre: string sin restricciones.
  • alimentos: array que contendrá un conjunto de alimentos. (Nombre del alimento y cantidad)
  • Elaboración: string sin restricciones
  • Tiempo empleado: un entero

Desarrollar el método del nivel calórico #31

Como programador necesito calcular el nivel calórico de una receta, obteniendo la información de la receta que ya ha sido aceptada y la información de los alimentos.

Parámetro de entrada:
recetas['lista de alimentos']

Proceso:
Obtener el nombre de cada alimento junto a su cantidad. Comprobar si la cantidad está dentro de los términos establecidos. Obtener las calorías de ese alimento por 100 gramos y calcularlo para la cantidad determinada por el usuario.

Salida
Retorna el nivel calórico total de la receta.

Establecer archivo para almacenar los productos #22

Como programador, necesito almacenar los datos de los alimentos que van a intervenir en las recetas.
Se necesita una estructura que permita de una manera rápida y eficiente estructurar, buscar y manejar los datos.

Para ello, usaré un archivo JSON.

Lenguaje y Framework

Definir que lenguaje utilizaré para el sistema y en que framework me apoyaré

Desarrollar la función de comparación #30

Como programador, tengo que obtener la elaboración de cada receta, para poder realizarle el cálculo de similitud TF-IDF.

De esta forma, con varios tratamientos, obtendré el nivel de similitud entre la receta a añadir y las existentes.

Parámetro de entrada:
Conjunto_recetas

Proceso:
Obtener los valores de la matriz de similaridad para poder calcular si alguno supera el 80% de similaridad.

Salida
Retorna un mensaje de éxito o fracaso según el resultado de la comprobación.

Obtener un JSON de Edamam

Como programador quiero que no haya sobrecarga de peticiones en la API y quiero almacenarlo en una estructura que sea fácil de implementar y utilizar.
Para ello, crearé un Json en donde se incluyan algunos valores de la API

[HU2] Añadir Receta

Como usuario, quiero añadir una receta al sistema, dado que tengo el "nombre de la receta", los "alimentos", la "elaboración" y el "tiempo estimado", para que me devuelva el índice calórico, la clasificación de la receta, los componentes que posee (Grasa, fibra, hidratos...)
Como el identificador único para las recetas, será el nombre, no se permitirá dos recetas con idéntico nombre, a lo que se suma, que no podrá tener una elaboración similar a otra añadida en el sistema

Definir estructura JSON #22

La estructura de cada alimento del archivo será la siguiente:
[{
"nombre": "kiwi",
"nutrientes": [{
"ENERC_KCAL": "61.0"
}, {
"PROCNT": "1.14"
}, {
"FAT": "0.52"
}, {
"CHOCDF": "14.66"
}, {
"FIBTG": "3"
}],
"clasificacion": "saludable"
}]

El identificador será el nombre, tendrá distintos tipos de nutrientes y una clasificación interna de Edamam sobre su aportación a la salud

Crear la clase Recetas

Crear de forma inicial la clase Recetas, para comenzar el proyecto.
La clase no tendrá funcionalidad. Solo la cabecera y estructura de datos.

Testear el nombre #51

Comprobar que el nombre de la receta no esté vacío y tenga una longitud mínima

Procesar los alimentos y exportarlos al JSON #22

Como programador, necesito buscar la manera de extraer ciertos alimentos en el formato indicado.
De esta forma, ya tendré la forma de almacenar y añadir ingredientes de donde obtendré el aporte calórico.

Establecer la función de búsqueda de recetas #10

Como programador tengo que crear un método que con los argumentos: "receta", "nivel calórico" y "lista de ingredientes", obtenga una lista de recetas después de utilizar un sistema de recomendación. De esta forma, supliré una de las necesidades del usuario.

Testear tiempo de preparación #51

Se añadirá el número total de minutos, por lo que debe ser un número entero positivo y mayor a 5 (Entendiendo que ninguna receta tarda menos de ello)

[HU1] Buscar receta

Como usuario quiero buscar una receta que se asemeje a otra, dado que tengo el nombre de la receta (a la que quiero que sea similar), el índice calórico que no quiero superar y una lista de alimentos, que quiero que puedan aparecer en los ingredientes, para que me devuelva una lista de recetas en donde poder elegir cuál de ella se adapta mejor a mis necesidades.
La receta similar, no será obligatoria, puesto que se podrá obtener una lista con los ingredientes y no superior al índice calórico. A lo que se añade, que puede no existir la receta similar en la "base de datos"

Obtener datos de la API

Como usuario administrador, necesito poder obtener los alimentos y todas las características de ellos (calorías, composición, aporte nutricional (higratos, fibra, vitamina) en cualquier momento... Para poder añadir y clasificar las recetas mediante su índice calórico.

Desarrollar la validación de las unidades de medida #29

Como programador tengo que comprobar que una receta que acaba de ser introducida por un usuario, no es similar a una ya creada en la base de datos

Parámetro de entrada:
recetaNueva

Proceso:
Comparar con el conjunto de recetas, el nivel de similitud de esta con todas las creadas. Si alguna de ellas supera el 90% de similitud, será eliminada.

Salida
Retorna un mensaje en donde se avisa del estado de la comparación

Loguearse en la Api

Para poder utilizar la API Edamam, será necesario darse de alta y cumplir los requisitos para su funcionamiento.

Implementación del Test de Invoke #34

Como programador necesito que al realizar la opción invoke test, se ejecutan los test.
Al principio, serán algunos de prueba para comprobar que todo se ejecuta de forma correcta.

Establecer la función del cálculo calórico #3

Como programador, necesito establecer una función que se llamará una vez que se haya comprobado que los ingredientes y la receta es correcta, para poder suplir una de las necesidades del usuario. Para ello, y con ayuda del JSON, calcularemos el nivel clórico de la receta, junto a otros valores de interés.

Testear el constructor

Comprobar todos los campos del constructor. De esta forma, evitaremos que se cree un objeto incorrecto.

Testear conjunto de alimentos (1) #51

Se hará una comprobación inicial:
Los alimentos deberán estar separados por ";"
Cada nombre de alimento deberá ser válido (Registrado en el JSON)
Cada unidad de medida utilizada debe ser válida

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.