Openbravo 3 : Technology
Openbravo delivers the world's premier open source ERP reference platform through superior software engineering, collaborative, agile development processes, and a firm belief that truly great software must be beautiful--not just on the outside, but all the way through.
Principles
Openbravo technology is built on these foundational principles:
- deliver great 100% web based user experiences, with "zero client install"
- use a model-driven approach to describe functionality in business rules (rather than code), making it easy to configure and extend
- support modular software extensions, enabling distributed development of functionality
- ensure easy upgrades from version to version, enabling full customer control of the application life cycle and a sustainable ROI
- support freedom of choice in deployment options, with scalable cloud or on-premise installations, to enable traditional, hybrid, and SaaS deployments across a wide range of company sizes
- build for the entire world, with full support for Unicode, multiple languages, multiple localizations, multiple currencies, and multiple organizations, accounting schema, warehouses, tenants, etc. in a single instance
- always build with best in class, mainstream open source technologies
Following these principles provides the greatest value, choice, and opportunity for all Openbravo stakeholders: our end customers, business partners, open source community, investors, and employees.
Open source truly can provide a better way to bring the benefits of a modern, web based ERP to companies of all sizes, and Openbravo's world class technology is key to providing a real alternative to legacy ERP business as usual.
System Components
The Openbravo 3 platform is built with best in class, industry standard open source technologies in all layers of the architecture--to ensure high performance, ongoing innovation, and broad availability of skilled developers. Below is a list of the major system components, and here is a list of the official system requirements, with version-specific details.
The key server-side components include:
- Language: Openbravo uses Java® 2 SE on the server.
- Database: The PostgreSQL™ and Oracle® databases are both fully supported.
- Server Operating System: Openbravo supports Microsoft Windows Server®, standard Linux® distributions, and other server operating systems that support Java 2 SE.
- Java frameworks: Red Hat's JBoss Hibernate™ is used for database-independent object/relational mapping, while JBoss Weld™ provides dependency injection and contextual lifecycle management.
- Java Servlet Container: Apache Tomcat™ is shipped as the reference container.
- Web Server: The Apache HTTP server is deployed as the default web server.
- Reporting / BI: Openbravo embeds Jaspersoft's JasperReports® for flexible dimensional reporting, to create and print business documents like purchase orders and invoices, and to meet other reporting and analysis needs.
Now let’s discuss the user interface, which is 100% web based for true "zero install" deployment.
- Google Chrome
- Firefox
- Microsoft Internet Explorer
- Apple Safari
- easy for beginners, with
- high performance and productivity for the most demanding power users.
Javascript and standards-based Ajax techniques are used to deliver a highly productive user experience in modern web browsers, including recent versions of:
The primary Javascript library used by Openbravo is Isomorphic Software's Smartclient, which includes a wide selection of excellent user interface components that Openbravo uses to deliver an ERP user experience that is:
ERP Platform
The Openbravo 3 open source platform enables the creation of cost-effective, incrementally upgradeable enterprise business applications--with a comprehensive set of core ERP functionality (outlined here), combined with these key technical capabilities:
Model-driven development environment
With Openbravo, ERP business analysts express data, data relationships, and basic application functionality through the active application dictionary, and rely on the Openbravo 3 platform to:
- dynamically render a set of powerful standard application screens
- automatically generate a set of REST Web Services (both XML and JSON) for platform-neutral, standards-based interoperability
- control access to data and functionality by role and organization
This approach allows non-technical business people to fully control their business applications, and quickly transition from prototype to production. Once in production, screens can be further tailored (field sequence, field show/hide, etc.), with specific screen versions made available to specific roles and organizations--allowing a single Openbravo 3 instance to effectively serve complex, dynamic companies that include subsidiaries with different needs.
Modularity
Openbravo provides a rich set of module-related services to allow new ERP functionality to be be created, catalogued, discovered, installed, modified, and upgraded in a granular, controlled manner. The following capabilities are provided:
- package functionality into modules, Packs and Industry Templates
- publish packaged functionality to a curated module central repository for a single, quality assured, distribution mechanism
- support both free open source modules and commercial modules
- require that commercial modules also include all of the source code, by compiling from the source as an integrated part of the module installation process
- provide license control for commercial modules
- easily browse and install packaged functionality from the central reporsitory, directly through the browser
- identify module version dependencies, and automatically install dependent modules as needed
- support tracking of module maturity through the entire module life cycle (Test, QA, QA Approved, Confirmed Stable, Canceled)
- provide a “scan for updates” feature to allow customers to easily identify and install new versions of modules, in accordance with their maturity preferences
- for example, a Production instance is normally set to only install a new module version with a status of Confirmed Stable--which means that it has been used in the field for at least 40 days without a critical defect.
These services, collectively known as "Modularity", allow Openbravo customers to start with the lean Openbravo core ERP Platform, and incrementally deploy just the modules they need to run their business exactly how they want to, as well as to easily adapt their ERP over time to changing business conditions. Note that from the end user perspective, functionality installed through modules is fully integrated, and cannot be distinguished from functionality originally included in the core distribution.
Finally, modularity is key to the tremendous growth and vitality of the global Openbravo ecosystem. By working together to create and optimally reuse proven native Openbravo ERP software assets, the Openbravo community is able to provide unique added value to all stakeholders.
Rich Internet Application (RIA) Architecture
The Openbravo 3 platform implements a complete, end to end Rich Internet Application (RIA) architecture, to enable the creation of dynamic and versatile user interfaces--with "zero install" for the client. This high-performance, component-based architecture is fully harmonized with the modularity services discussed above, enabling full extensibility and full control over all aspects of the user interface. Please click here for details.

If this diagram makes your brain hurt, you may prefer to simply experience the Openbravo 3 user interface for yourself! :) If so, please click here for access to Openbravo's demo software.
Ecosystem
While Openbravo is committed to the very best technology, to fulfill our mission of “Opening ERP’s Future”, we also need you--and we invite you to join the Openbravo revolution by participating in any or all of these online initiatives:
- Openbravo Wiki: the official source of all Openbravo-related documentation. Browse the wiki to learn more about Openbravo’s technology , functionality, how to install, how to create your own modules, and much more. If you are experienced in a certain area of Openbravo, feel free to enhance or extend the wiki-based content.
- Openbravo Forge: the web based, public project repository that supports the development of Openbravo, and all of its related open source and commercial modules. Openbravo Forge provides a broad set of services for each project (which generally corresponds to a module). Here are some of the key ones:
- Forums - to ask/answer questions, discuss functionality, share ideas, and generally collaborate around a specific project. Be sure to search a project’s forums before asking a question--it has probably already been asked and answered! The ERP forums are here.
- Project Wiki - to quickly publish and maintain documentation and information about the project. Note that the wiki section of many major projects (like the core ERP and Point of Sale projects) point to the standalone Openbravo wiki noted above.
- Project Bug Tracking - to report defects and track their status. Note that the Bug Tracking section of many major projects point to the standalone Openbravo Issue Tracker noted below.
- Code - version-controlled source code repository (Mercurial strongly recommended, SVN also available). Here is the complete Openbravo code repository, including access to our test automation.
- Module - the module section of each project actually points to Openbravo's Central Repository, which provides a central control point for the distribution of all functionality to Openbravo instances. A complete list of available modules can be found here.
- Openbravo Public Issue Tracker: report issues here and track their status. Remember to search for issues BEFORE reporting a new one.
- Openbravo Planet (Blogs): find great timely information about Openbravo.
- Openbravo Demo: the easiest way to quickly experience the latest stable version of Openbravo 3.
- Openbravo Live Builds: the place to experience the latest development builds, which are automatically built every day through our continuous integration process.
- Openbravo Downloads: go here when you want to pilot Openbravo with your own data.
- Openbravo Exchange: an easy to browse listing of the major commercial modules available in the Central Repository
- Openbravo Roadmap: see what the Openbravo development team is working on.
- Openbravo User Voice: suggest and vote on features (to influence what we are working on)!
- Openbravo Twitter: follow us for frequent updates on all aspects of Openbravo
Please feel free to join the Openbravo ecosystem and leverage these free and open resources to help you more effectively learn, apply, extend, and profit from the amazing technology behind Openbravo’s world class ERP platform.
