Open Source Business Applications

History and evolution, update and advantages

OpenSur

Open Source Business Applications

History and current maturity level

English Translation pending

Introducción

En general, Open Source (Código Abierto) refiere a cualquier programa o software cuyo código fuente y otros derechos son puestos a disposición para el uso y modificación de otros, bajo un esquema de licenciamiento que cumple la definición de la Iniciativa de Código Abierto (OSI por sus siglas en inglés) o que es de dominio público.El software Open source usualmente es desarrollado como una colaboración pública y de disponibilidad libre. En resumen, los términos del modelo de distribución requieren que:

  • El software siendo distribuido debe poder ser redistribuido a cualquiera sin restricciones.
  • El código fuente debe quedar disponible en una forma legible (así la parte receptora podrá modificarlo y mejorarlo)
  • El trabajo derivado debe ser permitido bajo las mismas condiciones de licencia.
  • Integridad del código fuente del autor (las licencias pueden requerir que las modificaciones se redistribuyan sólo como parches)
  • Sin discriminación contra personas o grupos.
  • Sin discriminación contra campos de iniciativa.
  • Distribución de licencia (la licencia aplica a todo aquel a quien se le redistribuye, cerrar el software está prohibido)
  • La licencia no debe ser específica para un producto.
  • La licencia no puede restringir otro software.
  • La licencia debe ser tecnológicamente neutral.

Historia

La tecnología basada en código abierto ha tenido una evolución a lo largo de las últimas décadas. Internet ha sido un fuerte catalizador de esta evolución, debido a la facilidad de organizar comunidades.

La oferta de código abierto ha ido aumentando su nivel de abstracción respecto a los componentes de la arquitectura de aplicaciones:

  • Plataforma de Sistemas operativos: Linux y sus variantes.
  • Lenguajes de programación: Python, Java, PHP, Perl, etc.
  • Entornos de desarrollo: Eclipse, jDeveloper, etc.
  • Componentes de arquitectura: Servidores de aplicaciones (jboss), servidores web (apache, tomcat), servidores de correo, etc.
  • Herramientas de oficina: OpenOffice y otras variantes.
  • Bases de datos: MySQL, PostgreSQL, etc.
  • Aplicaciones de negocios: Odoo (ex OpenERP), Adampiere, OpenBravo, etc.

Esto permite que una organización pueda basar completamante su arquitectura tecnológica en componentes OpenSource, reduciendo dramáticamente sus costos de licenciamiento de software. En la medida que los costos de adopción son mucho menores, permite que las organizaciones experimenten en una primera etapa, exponiéndose a riesgos menores.

En cada uno de los niveles mencionados, en parte debido a su extensión en el uso de una comunidad cada vez mayor, han incrementado su confiabilidad y robustez a lo largo del período evolutivo. 

Actualmente existe una oferta viable para su utilización en empresas, donde la gestión de la información es algo crítico. Muchísimas empresas en el mundo de tamaños muy diversos gestionan actualmente su información con aplicaciones de este tipo. A su vez la evolución se ha acelerado, planteando una proyección a futuro que hace muy atractiva la alternativa.

Situación actual de las aplicaciones de gestión integrada Open Source

En el año 2010, el Blekinge Institute of Technology realizó un estudio sobre sistemas integrados Open Source, este estudio identificó y realizó un análisis preliminar de los sistemas Open Source líderes existentes. Se identificaron los siguientes sistemas:
  • Open ERP
  • OpenBravo
  • Adempiere
  • ERP5
  • Opentaps
  • Compiere
  • WebERP
  • BlueERP
  • GNU Enterprise
Después de un análisis preliminar de cada uno, se hizo evidente que sólo 3 de estos justificaban ser analizados con mas detalle dada su oferta competitiva: Open ERP, Open Bravo y Adempiere. Los siguientes conceptos resumen las razones para no estudiar en profundidad los demás:
  • ERP5: Si bien ERP5 parece tener funcionalidades extensivas, la calidad y cantidad de la documentación disponible no fue satisfactoria como el material disponible para OpenERP, OpenBravo y Adempiere.
  • OpenTaps: OpenTaps fue promisorio al principio, sin embargo luego de un período corto de pruebas, varios problemas de funcionalidad aparecieron. Sin ser posible de conducir un testeo adecuado, se decidió dejarlo fuera de la selección.
  • Compiere: Compiere luce estable y con funcionalidad completa, sin embargo, no usa una base de datos open source (excepto Oracle Express la cual no es Open Source). Debido a que el estudio se basa en soluciones con un stack tecnológico open source, no fue seleccionado.
  • WebERP: Al momento de la revisión, WebERP no pareció tan maduro como los demás seleccionados. Tampoco tenía módulos de RRHH y gestión de proyectos.
  • BlueERP: BlueERP no contaba con documentación disponible
  • GNU Enterprise: GNU enterprise parece un sistema maduro, pero no es amigable para el usuario y no puede ser usado "out-of-the-box" como los demás. Sin embargo, resultó obvio que GNU Enterprise estaba listo para organizaciones deseando diseñar su propio y flexible sistema integrado 

Una pequeña introducción a los tres sistemas seleccionados:

  • OpenBravo: OpenBravo está basado en web, es un sistema Open Source principalmente dirigido a empresas pequeñas y medianas, distribuido bajo la licencia pública de OpenBravo, basada en la licencia pública de Mozilla. La licencia asegura acceso público al código fuente y permiso para modificarlo libremente. El proyecto OpenBravo está entre los primeros diez proyectos mas activos de Sourceforge. Openbravo fue diseñado como una única aplicación: todas las funcionalidades comparten una misma arquitectura, filosofía, reglas e interfaz de usuario, y todo está integrado en forma transparente. Actualmente ofrece funcionalidades básicas como Open Source y otras funcionalidades mas avanzadas tienen costo.
  • Adempiere: Adempiere es una vertiente del proyecto Compiere, luego de un largo y gradual deterioro entre Compiere Inc. y su comunidad. Generado por la idea que Compiere limitaría radicalmente la funcionalidad de código abierto para posicionar la versión "Compiere Enterprise" una solución cerrada. El software se licencia bajo la licencia pública general y ofrece funcionalidad de ERP, CRM y SCM.
  • OpenERP: OpenERP se publica bajo la licencia pública general (GNU, GPL). Open ERP es conocido por ser muy completo y extremadamente modular, con mas de 350 módulos disponibles. Está basado en una arquitectura robusta  MVC (Modelo – Vista – Controlador), con un servidor distribuido, flujos de trabajo flexibles, una base de datos orientada a objetos, una interfaz gráfica dinámica, una interfaz de integración XML- RPC (Extensible Markup Language – remote procedure call), y reportes customizables. OpenERP se conocía antes como TinyERP. Actualmente expandió su cobertura funcional también a sistemas de gestión de contenido, unificándolos con la funcionalidad del ERP.

Ventajas de las aplicaciones de gestión integrada Open Source

Con una aplicación de tipo Open Source podemos esperar ahorros en costos de licencias. Sin embargo, deben considerarse también los costos de implementación y mantenimiento para evaluar el beneficio en forma completa. 

Los costos de aplicaciones Open Source son visibles y transparentes desde el inicio del proceso de implementación, mientras que los proveedores de aplicaciones propietarias son buenos escondiendo sus costos de mediano y largo plazo. Muchas empresas que decidieron implementar aplicaciones propiestarias a costos del doble del precio original. 

De acuerdo a varios estudios sobre implementaciones de aplicaciones integradas (ERPs) propietarias:

  • 28% de las implementaciones respetaron el presupuesto y los plazos, satisfaciendo las necesidades de la empresa,  
  • 49% excedieron el presupuesto, plazos y alcance original 
  • 23% fueron abandonados antes de terminar.

Además de las ventajas relativas al costo, las aplicaciones integradas de tipo open source, pueden ofrecer la ventaja adicional de una mejor cobertura de las necesidades gracias a su escalabilidad.
Algunas ventajas de las aplicaciones integradas de gestión (ERPs) de tipo Open Source:

  • Flexibilidad: El código fuente queda disponible en forma gratuita, por lo tanto es mas flexible para adecuar (tanto por personal propio como externo), e integrar con otros aplicativos existentes. En general con una disponibilidad de recursos y documentación en forma gratuita en internet muy buena. En general los proveedores de aplicaciones propietarias tienen la tendencia a implementar menor cantidad de estándares, por lo tanto en general usan sus propios protocolos, los cuales no son válidos fuera de los límites del propio proveedor, lo cual resulta en quedar atado al proveedor.
  • Calidad: Las aplicaciones de gestión Open Source se distinguen por una alta calidad en el nivel técnico. Esta calidad superior puede ser el resultado del compromiso de los proveedores de aplicaciones Open Source con los desafíos técnicos.
  • Capacidad de adaptación a las prácticas de la organización: Para los proveedores de aplicaciones propietarias, depende del cliente adaptar sus procesos a las al sistema, justificándolo con el hecho de tener implementadas las mejores prácticas en sus productos. Las aplicaciones Open Source ofrecen al cliente la posibilidad de adaptar el sistema a su entorno y prácticas de negocio.
  • Modelo de infraestructura adecuado para PYMES: Las aplicaciones propietarias tienen un modelo de infraestructura costosa que a veces no se adapta a la realidad económica de las PYMES. Mas aún, al nivel técnico, las aplicaciones propietarias incurren en costos de implementación altos, que son inconvenientes para las PYMES. Actualmente, muchos proveedores de aplicaciones propietarias, están intentando atraer al segmento de  PYMES ofreciendo soluciones con menores costos de implementación. Un ejemplo de esto es SAP Business One, si bien la oferta es bastante limitada en alcance y funcionalidad.
  • Sin costos ocultos: muchos proveedores de aplicaciones propietarias, atraen clientes ofreciendo paquetes a precios aceptables, pero rápidamente quedan limitados, por ejemplo por la cantidad de usuarios. Una vez que una organización adopta una aplicación propietaria, puede encontrarse envuelta en una costosa batalla por escalar el sistema si la necesidad hace subir la cantidad de usuarios.
  • Posibilidad de desarrollos específicos: Los proveedores de aplicaciones propietarias intentan mantener el control sobre el conjunto de módulos funcionales que una organización puede necesitar. Si el cliente desea realizar desarrollos específicos en el sistema, es dificil garantir que esos desarrollos serán compatibles con el mismo.
  • Independencia del proveedor: Adoptando aplicaciones integradas Open Source, el cliente no está a merced del proveedor de software. El soporte al producto es provisto por la "comunidad" y el cliente está en una posición mas fuerte frente al proveedor.
  • Libertad para actualizaciones: una organización que elige adoprtar aplicaciones integradas Open Source, puede elegir actualizar versiones cuando quiera. Hacerlo internamente o hacer competir a varios proveedores para seleccionar la mejor oferta.