GreenSky ERP

GreenSky ERP Descripción

GreenSky es un sistema de gestión de recursos orientado a agricultores para administrar tierras y trabajar en el proceso de siembra, cultivo y cosecha con múltiples herramientas para automatizar y reducir los costos de seguridad alimentaria y acelerar el trabajo para los agricultores, capataces y expedidores.

Fase de inicio

Nuestro cliente nos ha contactado solicitando un equipo capaz de construir un sistema complejo utilzando AngularJS / NodeJs para proporcionar un ERP orientado a granjeros. Durante esta primera fase, hemos elegido una arquitectura para el sistema basada en una API Restful (aplicación nodejs back-end) con una aplicación web sólida (aplicación Angular frontend).

Definimos la aplicación base del servidor (API backend) basado en el framework ExpressJS y una base de datos PostgreSQL, integrando Swagger y SequelizeJS (ORM) asegurando que todos los elementos estén en su lugar para permitir futuras escalamiento cuando sea necesario.

Empezamos desde cero con la nueva aplicación AngularJS para implementar la interfaz. La aplicación web se ha diseñado con las nuevas recomendaciones de UI/UX integrando Material Design con Fuse Theme para llegar a una aplicación web robusta.

La primera parte del proceso fue comprender las reglas comerciales dadas y trabajar en conjunto con nuestro cliente para sugerir cambios y mejoras. También hemos dado consejos sobre la versión de la aplicación Node y AngularJs, realizando actualizaciones cuando se lanzó una nueva versión. Trabajamos para elegir las mejores características de servidor y hosting para alojar ambas aplicaciones (backend y frontend).

Finalizamos un primer documento de requerimientos y un diagrama para comenzar a trabajar en el desarrollo. Aunque tuvimos que volver a actualizarlo varias veces durante el desarrollo para asegurarnos de que cubrimos los requisitos para las nuevas características solicitadas.

Fase de desarrollo

Como punto de partida, hemos integrado el generador de documentaciones Swagger en la aplicación de NodeJs para mantener una documentación actualizada de cada endpoint. Esto nos permitió crear fácilmente la API Restful con toda la documentación necesaria para los desarrolladores que trabajan en la aplicación web (cliente) durante todo el proceso de desarrollo y nos permite reducir el tiempo de trabajo para ellos. 

Creamos una aplicación base para que podamos expandir múltiples módulos para cada nueva característica.

Dividimos a nuestro equipo para que trabajen en paralelo, un equipo se centró en el diseño de UI/UX implementando páginas con angular y el otro equipo trabajando en el servidor back-end y los endpoints para el API RESTful. Desplegamos Docker para los entornos de desarrollo.

Dos equipos diferentes trabajando al mismo tiempo nos permitieron trabajar más rápido en la fase de desarrollo. También nos permitió tener un conocimiento compartido y establecer reuniones con ambos equipos para asegurarnos de que los usuarios experimenten (UX) en toda la plataforma.

Hemos integrado un tema con la herramienta Material angular, este es un gran enfoque para ahorrar tiempo en el desarrollo aplicando nuevas funcionalidades.

En cuanto a la arquitectura del sistema, hemos implementado un nivel de acceso a la página y un sistema de permisos para controlar quién puede ver una sección.

Hay varias secciones en el sistema de gestión. Puede encontrar secciones comunes como administración de usuarios y páginas estáticas, pero también implementamos secciones complejas con diferentes herramientas increíbles:

  • Granjas y administración de parcelas: es un módulo angular para crear granjas y parcelas asociadas. Este es un modulo clave para comenzar el proceso. Dentro este módulo de angular el usuario puede usar Google Map para arrastrar marcadores y establecer fácilmente la geolocalización de cada bloque.
  • Calendario de productores: hemos implementado una página tipo grilla donde el usuario puede crear tareas, asignar tareas a uno de los empleados y establecer fechas de inicio/fin para cada tarea. Cada usuario puede agregar notas y marcar tareas como completadas.
  • Año fiscal: hemos implementado una función para administrar todo en función del año fiscal. Esto hace que sea mucho más fácil para los agricultores hacer la verificación de la temporada.
  • Gestión de documentos: sabemos que todavía se necesita documentación en papel y que los documentos son una parte clave del proceso. Es por eso que ayudamos a definir y desarrollar el módulo de documentos para cargar y asociar documentos con cada rancho y bloque. El usuario puede usar cualquier formato e incluso tomar una foto con un smartphone y subirlo como documento.

Como parte de la configuración del servidor, hemos implementado setup automáticos para la aplicación de pruebas a fin de ahorrar tiempo liberando cambios, así como cronjobs para mejorar el rendimiento en algunas tareas pesadas (workers).

La aplicación está actualmente en fase de mantenimiento.


Etiquetado como

Etiquetas

Serfe info(at)serfe.com https://www.serfe.com/images/serfe_logo_text.png https://www.serfe.com/images/serfe_logo_text.png FALUCHO 2032, S3016LDB, SANTO TOME, SANTA FE, ARGENTINA 1-305-5375397