- 1. Resumen del proyecto
- 2. Herramientas
- 3. Historias de usuario
- 4. Prototipos
- 5. Planificación del proyecto
- 6. Resultado
En este proyecto se contruyó la API REST de un Fleet Management Software para consultar las ubicaciones de los vehículos de una empresa de taxis en Beijing, China.
Con las ubicaciones de casi 10 mil taxis. Se aplicaron técnicas para almacenar y consultar esta información, usando PostgreSQL.
Se decoumento los endpoints de la API en Swagger.
Se creó un proyecto Web API en C# con la plantilla "API con controladores", también se usó Entity Framework, un ORM que simplifica el acceso y manipulación de bases de datos.
Se usó vercel Postgresql, se creó tablas en la base de datos para almacenar la información entregada. Te recomendamos entonces crear dos tablas, una para almacenar la información de taxis y otra para almacenar la información de ubicaciones. Deberás definir las columnas de cada tabla de acuerdo a la información entregada.
Se definió y documento los endpoints de la APIen Swagger.
Para una API REST debes definir para cada endpoint entre otras cosas el método HTTP, url, parámetros, encabezados, códigos HTTP de respuesta y cuerpo.
Yo, como desarrolladora, quiero cargar la información almacenada hasta ahora en archivos sql en una base de datos PostgreSQL, para facilitar su consulta y análisis.
- Se debe tener en cuenta el siguiente diagrama para la implementación de las relaciones entre las tablas
- La tabla de trajectories se debe crear con el "id" que se incremente automáticamente (SERIAL) para poder insertar los valores sin necesidad de especificar un identificador
- La base de datos tiene creada la tabla de taxis
- La tabla de taxis tiene cargada la data de taxis
- La base de datos tiene creada la tabla de trayectorias
- La tabla de taxis tiene cargada la data de trayectorias
Yo como clienta de la API REST requiero un endpoint para listar todos los taxis.
- El endpoint responde para cada taxi: id y placa.
- El endpoint paginamos los resultados para asegurar que las respuestas sean más fáciles de manejar.
- Se cuenta con una documentación en Swagger para el endpoint desarrollado especificando método HTTP, url, parámetros, encabezados, códigos HTTP de respuesta y cuerpo.
- El código del endpoint debe recibir code review de al menos una compañera.
- El código endpoint debe estar cargado en un repositorio de Github.
- El código endpoint debe contar con test unitarios y e2e.
Yo como clienta de la API REST requiero un endpoint para consultar todas las ubicaciones de un taxi dado el id y una fecha.
- El endpoint responde con el id del taxi y una fecha mostrando la siguiente información: latitud, longitud y timestamp (fecha y hora).
- El endpoint paginamos los resultados para asegurar que las respuestas sean más fáciles de manejar.
- Se cuenta con una documentación en Swagger para el endpoint desarrollado especificando método HTTP, url, parámetros, encabezados, códigos HTTP de respuesta y cuerpo.
- El código del endpoint debe recibir code review de al menos una compañera.
- El código endpoint debe estar cargado en un repositorio de Github.
- El código endpoint debe contar con test unitarios y e2e.
Yo como clienta de la API REST requiero un endpoint para consultar la última ubicación reportada por cada taxi.
- El endpoint responde para cada taxi la siguiente información: id, placa, latitud, longitud y timestamp (fecha y hora).
- El endpoint paginamos los resultados para asegurar que las respuestas sean más fáciles de manejar.
- Se cuenta con una documentación en Swagger para el endpoint desarrollado especificando método HTTP, url, parámetros, encabezados, códigos HTTP de respuesta y cuerpo.
- El código del endpoint debe recibir code review de al menos una compañera.
- El código endpoint debe estar cargado en un repositorio de Github.
- El código endpoint debe contar con test unitarios y e2e.
El proyecto cuenta con tests para cada controlador Taxis y Trajectories
Me planifiqué en Git Hub projects, este me ayudo a optimizar mi proceso y hacerle seguimiento a mi avance diario.



