Presentación [EasyWork Framework]

La plataforma EasyWork

  Con el objetivo de tener un conocimiento lo más profundo posible del software que desarrollamos para nuestros clientes, junto con la necesidad de poder ofrecer software asequible y a la vez que seguro se creó, hace más de 10 años, nuestra plataforma base de desarrollos, denominada EasyWork Framework.
  A lo largo de estos años se han aumentado sus capacidades a la vez que se ha ido adaptando y adecuando las existentes en el proyecto inicial. En melloraSinxelas creemos firmemente en nuestra apuesta y hemos dedicado, dedicamos (y dedicaremos) una cantidad muy importante de nuestros recursos a la mejora y perfeccionamiento de nuestro software estrella.
 
   Easywork Framework a diferencia de muchos de los frameworks existentes en el mercado que suelen ser de bajo nivel, esto es, se centran en resolver una parte concreta de las necesidades de desarrollo tales como el almacenamiento, la creación de informes, gestión de la autenticación, interfaz de usuario, etc, se sitúa en un nivel de abstracción superior, proporcionando una solución completa e integrada. Aunque para su funcionamiento se ayuda muchas veces de los anteriormente mencionados frameworks, lo hace de manera transparente, permitiendo el desarrollo simplificado de sistemas corporativos complejos, multiplataforma (cumpliendo las especificaciones de .NET®), cuidando la seguridad a nivel de credenciales y roles [+], de las comunicaciones [+]  y de los procesos que constituyen la lógica de negocio [+].
 

Componentes EasyWork

                                                                         (Componentes EasyWork) 

  Para la apariencia visual utilizamos Windows.Forms tanto sobre MS .NET Framework® como sobre Mono® Project, pero es posible utilizar cualquier tecnología compatible con .NET®  e implementar las interfaces definidas por nuestra plataforma para disponer de un entorno 100% propio. Nuestra interfaz de cliente incluye los componentes típicamente requeridos para el desarrollo de aplicaciones corporativas, así pues, se pueden crear soluciones en cuestión de horas con las funcionalidades generales requeridas en las aplicaciones de gestión (gestión de datos, consultas acotadas, informes, exportación de datos, ... ). [+]

  Para la distribución y actualización de las aplicaciones basadas en EasyWork Framework utilizamos la tecnología Click Once que permite la instalación y actualización de forma automática sin necesidad de intervención del usuario. De una manera resumida, el usuario, mediante una página web inicia el proceso de instalación, quedando disponible para su uso con sólo hacer clic en el acceso directo creado en el escritorio. Desde ese momento, cada vez que se quiera utilizar la aplicación, el sistema comprobará automáticamente si existen nuevas versiones y propondrá la actualización al usuario. De este modo, las aplicaciones pueden evolucionar sin que esto implique complicados procesos de instalación y despliegue. [+]

  Como se puede observar en los esquemas de componentes y en lo ya expuesto, nuestra plataforma se basa en la arquitectura cliente-servidor. De esta manera, junto con el uso del patrón MVC o Modelo Vista Controlador nos permite separar las partes críticas y sensibles de las que no son tanto, aumentando la estabilidad y seguridad en nuestros sistemas. Además esta arquitectura la utilizamos tanto para aplicaciones remotas como para aplicaciones standalone, eliminando las diferencias en la estructura de los programas y homogeneizando el código resultante. [+]  

  Así pues, como cabe de esperar, se vuelve crítica la seguridad en las comunicaciones realizadas entre las diferentes partes del sistema. Por esta razón hemos creado nuestro propio sistema de comunicaciones, basado en estándares de serialización (SOAP, JSON, BinarySerialization.NET, etc), de encriptación (AES o Rijndael) e incluso de compresión (ZIP, 7z). En nuestro afán por tener todo bajo control, incluimos sistemas de análisis de conexiones entrantes en la parte servidora, logger de accesos y verificación de las librerías utilizadas por cada una de las partes. [+]

  Para que puedas conocer más de nuestra plataforma tenemos disponible la documentación de los componentes y APIs que la constituyen aquí y un conjunto de aplicaciones que la usan aquí.

Componentes [EasyWork Framework]


Componentes y APIs


  Easywork Framework permite, gracias a la utilización de elementos intermedios propios y al uso intensivo del concepto de Interfaces (define el qué pero no el cómo ), abstraer los detalles de bajo nivel tales como las librerías o entornos de ejecución utilizados dentro del sistema de la aplicación desarrollada, permitiendo la evolución de sus diferentes partes sin interferencias.

  Además en EasyWork Framework utilizamos tecnologías con un alto nivel de madurez, con el fin de obtener resultados altamente estables y aumentando al máximo el ciclo de vida útil del producto final.

  A continuación, a modo informativo, detallamos las librerías habitualmente utilizadas en nuestros entornos y ponemos a su disposición la definición de las APIs correspondientes a las diferentes versiones de nuestra plataforma. 

Acceso a la API de las diferentes versiones de EasyWork Framework:

  • EasyWork v3:
    • Versión: 3.18.100
    • Estado: en desarrollo.
    • Soporte: no.
    • Entorno de ejecución: .NET 3.5 y superiores.
    • Documentación: no disponible por el momento.

     

    • Versión: 3.12.201
    • Estado: actual.
    • Soporte: si, completo.
    • Entorno de ejecución: .NET 2.0 y superiores.
    • Documentación: aquí.

     

    • Versión: 3.12.102
    • Estado: restringida.
    • Soporte: si, sólo bugs.
    • Entorno de ejecución: .NET 2.0 y superiores.
    • Documentación: aquí.

     

    • Versión: 3.11.101
    • Estado: obsoleta.
    • Soporte: no.
    • Entorno de ejecución: .NET 2.0 y superiores.
    • Documentación: aquí.

     

    • Versión: 3.11.100
    • Estado: obsoleta.
    • Soporte: no.
    • Entorno de ejecución: .NET 2.0 y superiores.
    • Documentación: aquí.
  • EasyWork v2:
    • Versión: 2.x.x
    • Estado: obsoleta.
    • Soporte: no.
    • Entorno de ejecución: .NET 2.0 y superiores.
    • Documentación: aquí.
  • EasyWork v1:
    • Versión: 1.x.x
    • Estado: obsoleta.
    • Soporte: no.
    • Entorno de ejecución: .NET 2.0 y superiores.
    • Documentación: aquí

Conjunto de librerías propias:

  • EasyGCalendar
    Librería encargada de abstraer las comunicaciones, autenticación, peticiones   resultados usadas para interactuar con los servicios Google® Calendar.
    Especificación .NET® requerida: 3.5 o superior.
  • EasyPlanning
    Librería que incluye el módulo de planning de tareas diario, semanal y como opción la sincronización de las tareas con Google® Calendar.
    Especificación .NET® requerida: 2.0, 3.5 o superior (según opciones).
  • EasyScan
    Librería que incluye el módulo de soporte a la captura mediante escáners de imágenes, tanto a archivos en formato imagen como archivos en formato PDF.
    Especificación .NET® requerida: 2.0 o superior.
  • PDFTemplateItextSharp
    Librería que permite definir mediante plantillas XML documentos que serán rellenados con los datos indicados y generados en archivos PDF. Desarrollado en colaboración con Cheemon Wong y disponible en CodePlex
    Especificación .NET® requerida: 2.0 superior.
  • EasyWork.Billing
    Librería que incluye nuestro módulo de facturación base. Incluye clientes, presupuestos, proformas, facturas, tarifas, gastos, impresiones personalizables, etc.
    Especificación .NET® requerida: 2.0 superior.
  • EasyDMS
    Librería que incluye nuestro módulo de gestión de archivos. Permite añadir las funcionalidades de adjuntos en cualquier ámbito del programa. Además permite, gracias a su lógica de negocio personalizable, diseñar y auditar el acceso a los archivos.

Conjunto de librerías de terceros:

  • Google.Apis
    Librería encargada de dar soporte a las conexiones con los servicios de Google® Calendar.
  • Newtonsoft.Json
    Librería que da soporte a la serialización JSON.
  • System.Data.SQLite
    Librería encargada de proveer acceso y operaciones en bases de datos SQLite.
  • MySql.Data
    Librería encargada de proveer acceso y operaciones en bases de datos MySQL.
  • ICSharpCode.SharpZipLib
    Librería encargada de manejar la compresión / descompresión de archivos o flujos de información en formato ZIP.
  • Itextsharp
    Librería de creación y manipulación de archivos en formato PDF.
  • Mono.SANE
    Librería para el control de dispositivos escáner de imágenes usando SANE.
  • Interop.WIALib
    Librería para el control de dispositivos escáner de imágenes usando WIA.
  • FirebirdSql.Data.FirebirdClient
    Librería encargada de proveer acceso y operaciones en bases de datos Firebird. 
  • LumenWorks.Framework.IO
    Librería de lectura y escritura de archivos en formato CSV.