
Posts by Jordi Mas:
- Module: provides an atomic functionality. Examples of modules are reports, connectors, functional extensions, etc.
- Pack: group all the modules necessary to enable Openbravo ERP for a mean. For example, a vertical pack that collects all the modules required to enable Openbravo ERP for a specific industry.
- Template: a configuration file plus a collection of packs and modules
- A Main Page that serves as an entry point to the projects' documentation and describes its objective and links to the related documentation.
- A Functional Specification that describes the functional requirements, use cases and other documentation that describe the needs that the module is willing to cover.
- A Technical Documentation that covers all the technical aspects to be taken into consideration when developing the module (such as database structure, etc).
- Subversion repository. The Subversion server stores a copy of the files of the project. The server retains both the most recent version and every historical version (past changes). * Trunk. Development with Subversion progresses similar to a tree. The main development occurs against the trunk.
- Branch. A split of development off of the trunk or another branch. Branches allow developments to diverge either permanently or temporarily.
- Tag. A tag or label refers to an important snapshot in time, consistent across many files. These files at that point may all be tagged with a user-friendly, meaningful name or revision number.
- Do not leave the URL field in blank, provide the project's web where users can find more information about your product.
- Do not leave the author's field in blank. It should be clear to the user who the author is.
- Package name. Use the standard package name naming conventions from Java, for example com.yourcompany.project. The package name org.openbravo is reserved for Openbravo as a company.
- If you are registering a module, use the same Single Sign-on username to register and then to associate it.
- Do not use the name of the client in the code or in the module definition
- It is fine to develop in other languages than English but the language of the module must be set accordingly
- If the module has been tested only in one database (Oracle or PostgreSQL), you might want to add that as a note in the module description ("This module should be data base independent; however it has been tested only on Oracle | PostgreSQL").
- Module: to publish the pack in the central repository
- Forums: to discuss issues for the functionality that the pack targets
- Wiki: to document the configuration and link to the rest of the resources
- Since a pack groups modules, they should not contain code, and as result, they should not require a source control system.
- We recommend to report issues, using the bug tracking system, to each particular module instead of reporting to a pack.
- We only recommend to publish files in the download area during the development cycle, you post your obx file in progress in the download area for early adopters to download and evaluate. We do not recommend to publish the files in the download service once they are released since you can already download files published in the central repository.
- When registering the project, assign it to the Openbravo ERP -> Packs category.
- Module: to publish the module in the central repository
- Code: to develop the code of the module and be able to work in a collaborative manner with other developers
- Bug Tracking: to allow users to report issues or functionality enhancements
- Wiki: to document the configuration and link to the rest of the resources
- We only recommend to publish files in the download area during the development cycle, you post your obx file in progress in the download area for early adopters to download and evaluate. We do not recommend to publish the files in the download service once they are released since you can already download files published in the central repository.
- When registering the project, assign it to the Openbravo ERP -> Modules category.
- Module: to publish the template in the central repository
- Code: to develop the configuration file
- Forums: to discuss about the template
- Bug Tracking: to track issues with the configuration file
- Wiki: to document the configuration and link to the rest of the resources
- Development Process Management. Describes the Openbravo development process from a management perspective.
- Openbravo Releases. Describes Openbravo releases and versions.
- Test cases: These area a set of well defined steps, execution preconditions, and expected results to exercise a particular program scenario or to verify compliance with a specific requirement. For managing test cases TestLink is used.
- Automated testing at Openbravo to automate the testing of Openbravo ERP using test cases.
- Unit testing using pieces of code that verify that functionality of different Openbravo ERP components. Currently in early stage using JUnit.
- Verify that bugs that this release addresses have been fixed.
- Executing test cases to make sure that the functionality works.
- Test the new functionality and make sure that works properly.
- Reporting new issue introduced in this release.
- Openbravo Issues. Openbravo bug tracking & enhancements database.
- Openbravo Code. Contains all the Openbravo ERP source code controls.
- Automated build farm. Openbravo continuous integration system.
- Openbravo's TestLink. Openbravo case management tool.
- Continuous Integration for Openbravo ERP.
- Module: provides an atomic functionality. Examples of modules are chart of accounts, translations, banking interfaces, etc.
- Pack: group all the modules necessary to enable Openbravo ERP for a country or region. For example, the Spain Localization Pack that contains a full localization package for Spain.
- Each country or region should create one and only one pack that contains all the relevant modules. A pack should be created for consistency sake even if it contains only one module.
- Each country or region could create zero or more modules (zero if it only reuses modules and does not create any geography specific modules)
- Module: to publish the pack in the central repository
- Forums: to discuss localization issues for the region that the pack targets
- Since a pack groups modules, they should not contain code, and as result, they should not require a source control system.
- We recommend to report issues, using the bug tracking system, to each particular module instead of reporting to a pack.
- We only recommend to publish files in the download area during the development cycle, you post your obx file in progress in the download area for early adopters to download and evaluate. We do not recommend to publish the files in the download service once they are released since you can already download files published in the central repository.
- When registering the project, assign it to the 'Openbravo ERP -> Localization Packs category.
- Module: to publish the module in the central repository
- Code: to develop the code of the module and be able to work in a collaborative manner with other developers
- Bug Tracking: to allow users to report issues or functionality enhancements
- Wiki:to publish documentation for the project and to coordinate work
- We only recommend to publish files in the download area during the development cycle, you post your obx file in progress in the download area for early adopters to download and evaluate. We do not recommend to publish the files in the download service once they are released since you can already download files published in the central repository.
- When registering the project, assign it to the 'Openbravo ERP -> Localization Modules category.
- Spain Localization Pack. Contains all the modules necessary to apply the localization for Spain.
- Spain Chart of accounts - General. Contains the Spanish translation for Spain
- Spain Taxes. Contains the definition of taxes for Spain.
- Spanish for Spain. Contains the Spanish translations customized for Spain.
- Localization process. Recommendations on how to structure packs and develop modules.
- Openbravo ERP localization forum for discussing and getting help on Openbravo ERP related localization issues.
- To solve doubts regarding the usage of the Openbravo Forge that you may have
- Questions on how to develop verticals and extensions through the Forge
- To answer questions regarding future plans of the Openbravo Forge
- To get Feedback and ideas for future versions
- Community is a A group of people that collaborate around a common project. An ecosystem is a group of autonomous but interdependent communities that collaborate around a number of loosely coupled objectives and projects
- The most significant innovation of version 2.50 of Openbravo ERP is the introduction of a modular architecture support that enables an Openbravo ecosystem very similar to the Linux ecosystem. Openbravo ERP itself is the core of the ecosystem and autonomous communities can collaborate on independent value added components.
- Modularity architecture & Openbravo Forge enable the Openbravo ecosystem.
- Templates to provide customized solutions for specific industry segments
- Open source is now mainstream. 50% of the companies plan to adopt open source
- People are attracted to Linux because cost
- Open source lowers risk and probability of failure
- People is planing to increase the use of open source in critical mission application
- The real value for open source applications come from ISV
- Community begins when self-interest meets software
- An open source project should be bigger than the company
- Localization can benefit tremendously from the Forge & modularity
- Openbravo is taking the rule of the enabler putting the common ground to create any localization
- Areas of prioritization for Openbravo localization efforts in the next years are : flexible Chart of Account (COA) configuration, multilingual & multicultural user interface and master data management, user interface and master data management, configurable multi-currency environment, flexible, configurable tax handling, integration to web services, transaction rounding rules, flexible transaction numbering rules, flexible, document driven, accounting rules, support for the configuration of payment methods, flexible and extensive standard reports, support for “generic” business processes. Notice that this a list of areas to work, it does not represent a commitment in terms of deliveries from Openbravo.
- Modules are the atomic building blocks and deliver the individual functional extensions. They are the lowest level of granularity and the smallest element of reuse.
- Packs are a collection of modules.
- Templates allow you to deliver a combination of modules and packs plus a configuration file as a reusable, packaged solution that installs at the click of a button.
- Dependency: a module depends on other module when it requires it to run
- All changes after 2.50 should be done using modules, including customizations, to simplify modularity
- Freedom is value for partners, customers and community members
- Projected the video truth happens from Red Hat to illustrate how disruptive innovative changes like open source end up been adopted
- There is a failure in the ERP market due to the proprietary market tradition: complex price structures, vendor lock-in. Open source means an ERP for everybody. No company has managed to delivered a win-win proposition to the ERP middle market.
- Vision: empowering the ecosystem: a modern product, 100% web based with great functionality footprint, delivered and built through freedom, with a great professional offer. It is mission critical, professional services are key to success
- Some facts about Openbravo. More than 1.250.000 downloads, 5.000 registered developers, 50 localization registered projects, estimated 1.000 implementations, 100 professional partners serving 30 different countries, 100 excellent professionals
- The time is right for the open source applications now. It has been already for open source operating system vendors like Red Hat
- Open source is the safer option nowadays (lower risk)
- At infrastructure tier open source has already consolidated (such as LAMP), now the application tier is consolidating. Increase ratio of adoption of open source solutions
- Community participation is key for better software, more secure, more international, better supported
- Lean budgets favor open source. Many open source commercial projects are seeing an increase in activity and commercial operations
- Open source and cloud computing. Open source has commoditized the software industry, the cloud computing is doing the same for hardware. Cloud computing and software as a service. Benefits: pay as go, reduced operational costs, scalability and availability.
- Talend is an open source ETL tool. Reduces the cost compared to proprietary solutions up 20 times.
- 900.000 product downloads, 20% registered users
- Challenges: high volumes of data, heterogeneity of the environment, differences in data structures, maintain the consistency of old and new systems
- Contribution between operating systems and open source applications
- Community is key to Canonical. LaunchPad.Net, Ubuntu collaboration platform, has more than 12.000 projects registered.
- Ubuntu server edition was released two years ago and it is a good platform to deploy professional applications
- Cloud computer included in next release of Ubuntu 9.04 (to be published on the 23rd of April 2009)
- IBM DB2 Express edition is available free for download and has a flexible licensing scheme
- IBM is working on supporting Openbravo ERP on top of DB2 database engine
- DB2 has compatibility layers what makes very easy to port applications to DB2 and is highly optimized for very demanding environments
- One of the largest open source vendors: every software asset we produce is open source
- Sun allows to try and run their software and have special programs for startups.
- Sun bases its growth with its partners. Sun's partner ecosystem is key to their succeed.
- Openbravo ERP runs on GlassFish, Sun's application server and is going to be packaged for OpenSolaris.
- 10.000 customers in 96 countries. 8 millions downloads, 90.000 members, 350 community projects, 50.000 forums support posts at jaspersoft.org
- Report writing is a key part of Openbravo ERP customization
- Using Jaspersoft iReport, the visual report designer, you can save time lots of time in the report creation process.
- B-Orange is a cooperation with Bonware, Advanced Projects and Products, Business Momentum.
- Zimbra and Openbravo integration. Part of the e-mail integration is now part of Openbravo ERP since version 2.40
- A demo of the integration was shown that is available on-line at wwww.businesssmomentum.eu
- Customer has 1.000 employees, 1 billion Indian ruppies turn over. Challenges: 100 desktops, independent systems for inventory and accounting, migration from a previous system. Need for new requirements not supported by their legacy system: centralized stock managed, BOM, sales commissions, etc.
- The implementation has been very successful. Users and managers are happy because the new level of flexibility and functionality gained
- Challenge: have all the different locations linked and integrated in a single system with a powerful POS system
- Openbravo POS was further develop to accommodate better the fast food restaurant that was contributed back to Openbravo POS project.
- Challenge: to automate sales, supply chain, invoicing, 200 customers, 2.000 stores doing international trade
- Benefits: reduced labour costs, post costs (40.000 euros per year), ware activities are streamline
- Plans to roll the same solution in the same industry and to enhance even further the customer business process
Using Openbravo Forge to develop extensions
June 29th, 2009 IntroductionThis post describes the best practices and polices to apply in Openbravo Forge to develop and organize an extension. These are a simplified version of the same guidelines that we use to develop Openbravo ERP core project plus some specific guidelines for the Openbravo Forge usage.
Let's start by defining some key concepts:
Before starting any development, we recommend to create a set of documentation that will guide the development and will help users in the future to understand what the module achieves.
We recommend to have the following documentation:
Source Control System
Developers can use the source control system of their choice. Openbravo Forge provides Subversion as source control system. The instructions given in this section apply only to Subversion, including the recommended repository structure for Openbravo modules. You can leverage on your source control system specific features for branching and tagging.
The following is a list of common terminology used when working with Subversion:
Subversion client. Software run by a user to access a Subversion server also called Subversion repository.
Openbravo recommends following structure when organizing the source code of your module:
project_name
* tags
* trunk
* branches
When developing a module, the main development activity occurs in the main development trunk.
All developers commit the changes against this branch. When a version is reach, a tag should be done.
If you want to work with a stable version you usually download the tagged version (a released version) and if you want to follow the development you download trunk.
We recommended the Version Control with Subversion free on-line book.
Registering Modules
As a prerequisite to publish modules into the Central Repository, you have to first register them.
This a list of recommendations when registering modules within the Central Repository from Openbravo ERP:
Use the field help to give precise instructions on how to use the module once is installed. For example, the required steps to access it from Openbravo ERP menu.
Packs
When creating a pack project in Openbravo Forge, we recommend to enable the following services in Openbravo Forge:
Additionally, we recommend:
When creating a module in Openbravo Forge, we recommend to enable the following services:
Additionally, we recommend:
A template is a configuration file plus a collection of packs and modules. We recommend to enable the following services in Openbravo Forge:
Openbravo ERP development guide that includes all the documentation on how to develop extensions
Comments Off
Contributing to Openbravo ERP QA efforts
June 26th, 2009 IntroductionQuality Assurance is key for having successful software products. Openbravo projects follow an open development process that allows everybody to take part in any part of the development process. Let me describe how you can get involved in the Quality Assurance processes for Openbravo ERP.
Before getting started we recommend that you read the following documents to get familiar with the main Openbravo development concepts and processes:
At Openbravo the following testing methodologies are combined to assurance the product's quality:
Testing early releases
In the Openbravo ERP Early Releases Discussion forum we announce new alpha and beta versions that people can help to test.
Things that you can do to help:
Have you found a bug? Please, report it to us using our bug database. Make sure that you carefully read our Bug Reporting Guidelines before submitting your bug report.
Contributing test cases
For every release of Openbravo, at Openbravo's TestLink you have the collection of cases that are executed to verify the compliance of requirements. These test cases focus on assurance the coverage of the major use cases but not all the cases.
You can contribute by providing new test cases that you think that are important for Openbravo to include as part of our test plan (collection of cases) for every release or also cases that you think are critical for a specific module, industry or market segment.
Reaching Openbravo QA team
Tools
Comments Off
Openbravo Forge User Manual available
June 25th, 2009 We have published the final version of the Openbravo Forge User Manual. The manual covers the basic usage of the Openbravo Forge and its aimed to help project administrators and users on their daily use of the Forge.The manual contains an introduction to the Forge and the services that provides, a detailed explanation of how to register projects, how users can fine tune their settings and how to use the Forge to develop, communicate and publish projects. We recommend this manual to all users using the Forge and to people willing to learn more about its capabilities.
If you have any question regarding the Openbravo Forge, do not hesitate to ask it on the Openbravo Forge forum.
Comments Off
Using Openbravo Forge to develop an Openbravo ERP localization
May 29th, 2009 Hello there,One of the earliest adopters of the Openbravo Forge since it was launched two months ago have been the localizers. They appreciate the freedom of been able to setup their project, forums and been able to publish news, files and modules in the Central Repository (before it was necessary our assistance).
In the last weeks of experience working with localization projects on the Forge we have crafted some best practices and polices to apply in Openbravo Forge to develop and organize a localization project.
Let me share them with you.
Introduction
Many countries and regions have similar requirements, like sharing the same language or functional requirement. To be able to reuse localization components, we provide the following types of projects to enable functionality delivery:
When registering your localization pack project for your region, we recommend to enable the following services in Openbravo Forge:
Additionally, we recommend:
When registering your localization modules, we recommend to enable the following services:
Additionally, we recommend:
For naming localization projects we recommend the format Name of the country + Description, except for language modules that we recommend Language name + for + country.
For example, for Spain we use the following names:
Pack
The following table contains a description of the best practices when naming packages.

Additional links
Comments Off
Openbravo Wiki Archive namespace
May 13th, 2009 Openbravo Wiki has currently more than 2.000 articles. Many of these articles are legacy documents that belong to older versions of our projects: user manuals, design documents, old coordination documents, etc. A search in Openbravo Wiki returns as results many legacy documents that are no longer useful making more challenging for users to find the information that they are looking for. With the new categorization system, that was introduced some weeks back, the situation has improved since categories are more usable but there is still room for improvement.To address this situation, we have created the Openbravo Wiki archive namespace. We have started to move all the articles that we consider legacy to this new namespace. The idea is to keep in the main namespace only documentation that is valid for the current stable version, Openbravo ERP R2.50 nowadays. Additionally, we have modified the search UI for Openbravo Wiki enhance the search user experience.
I think that these changes will improve greatly the experience of all users looking for information.
I want also mention that creation of new categories has been blocked. This has been done to prevent the proliferation of categories that ignored our current category system. Please, contact the Wiki administrators if you need a new category.
Comments Off
Openbravo Forge chat meeting on Monday 11st of May 2009
May 7th, 2009 Since the launch of Openbravo Forge a little more than a month ago, we have received lots of questions and ideas. During the Openbravo World Conference lots of people had questions on how the Forge can help them to be more productive and get more exposure on what they do, something that I briefly explained a few days back.I would like to organize a chat with all of you to discuss about the Forge. Mainly to:
Date: Monday 11st of May at 14.00 GMT + 1 (16.00 local time in Spain due to daylight savings). Check the World Clock if you want to check the time in your area.
Where: IRC Network FreeNode at the #openbravo channel
Language: English
I will appreciate if you can participate in the meeting if you have ideas or questions about the Forge.
Comments Off
Openbravo World Conference 2009 presentations available
April 28th, 2009 The presentations of the Openbravo World Conference 2009 have been just published.There are also some pictures available from the event.
Enjoy!
Comments Off
Openbravo Community Awards winners
April 21st, 2009 Openbravo has organized the Openbravo Community Awards to honor individuals and companies for their outstanding contributions to the Openbravo ERP and POS projects during 2008.Openbravo Community during the last weeks has nominated first and voted later the people that made a difference for them with their contributions. During the Openbravo World Conference, that occurred last weekend, we revealed the winners of every category.

The Individual Awards acknowledge people that have allocated time and resources to make Openbravo POS or ERP better project. The winners in the group are:
Best Quality Assurance. An individual with outstanding contributions in the area of Quality Assurance
Goes to Naveen Chanda for his participation in the Openbravo ERP 2.40 alpha 2 and 2.35 MP4 testing cycles on a number of platforms and for his active participation in Openbravo ERP forums.
Finalists: Paulo Leandro, Juan Reyes, Ville Lindfors, Jignesh, Ronny G.
Best localizer. An individual with outstanding contributions in the area of localization.
Goes to Mohammad Jaffar Fahmi for his work translating Openbravo POS to Arabic, the most popular locale for Openbravo POS.
Finalists: Kenzo Repole, Jens Wilke.
Best developer. An individual with outstanding contributions in the area of software development.
Goes to Andrej Svininykh for this work on developing several features for Openbravo POS and integrating some new devices like scales and receipt printers.
Finalists: Ville Lindfors, Ronny G, Ben Sommerville.
Best support participant. An individual with outstanding participation in Openbravo support channels.
Goes to Telepieza for his work dedicated in documenting HOWTOs for Openbravo ERP in Spanish (55 of them are currently available).
Finalists: Enric Alegre, Miguel Marquez, Victor Gaspar, Jimm.
The Technology Awards recognize outstanding projects lead by companies or organizations build on top of Openbravo technology. The winners in the group are:
Best localization. An organization with outstanding contributions in the area of localization.
Goes to Amorebieta-Etxanoko Udala for leading the Euskara language translation for Openbravo POS
Finalists: CBT Open, Apal Informatique, Mancomun.org
Best implementation. An organization that has performed an outstanding implementation of Openbravo in a challenging environment.
Goes to Conasa for their work on developing and installing a vertical solution for religious services based on Openbravo ERP 2.40 with PostgreSQL.
Finalists: Qualian Technologies, Microgenesis, Open Sistemas.
Best development. An organization that has performed an outstanding development based on Openbravo.
Goes to Open Sistemas for their work developing many features, now part of Openbravo POS, aimed at the fast food business (for client Bocatta).
Finalists: Open Sistemas and Software Engineering Research Center.
Open Sistemas after receiving their awardCongratulations to all the winners and nominees, everybody's contributions are important.
Thanks to everybody that has participated in the nomination and voting process.
Comments Off
Openbravo World Conference – Community Day 2
April 20th, 2009 This is a follow up of my summary of the 1st day of the community days. These are the insights from the second day of the community days. I have not summarized all the sessions as some were demos. Feel free to send me your insights if you want me to include them in this post.Building an Open Source ERP Ecosystem through Modularity and Core Contribution. Paolo Juvara
Key ideas:
Key ideas:

Matt Asay during his key note.
Localization: Opening New Markets and Developing Unchartered Territory. Richard Morley
Key ideas:
Key ideas:
Comments Off
Openbravo World Conference – Community Day 1
April 20th, 2009 Saturday was the first day of the Openbravo World Conference community days. There were around 200 attendees. Lots of conversations and ideas floating around.In the next days we will be publishing the slides of all the sessions. Let me share with you some insights from the first day of the community days.

Word from the CEO: empowering the ecosystem. Manel Sarasa
Key ideas:
Key ideas:
Richard Daley during his key note.Openbravo in the Ecosystem: Integrate it into the Information System. Sandra Massé
Talend is fully integrated with Openbravo ERP allowing data extract, load and transformation with other systems to Openbravo.
Key ideas:
Canonical and Openbravo are working together to make Openbravo ERP ready for the Ubuntu Linux distribution.
Key ideas:
IBM is working with Openbravo to adapt Openbravo ERP for DB2 database engine.
Key ideas:
Sun has been working with Openbravo to enhance the support for OpenSolaris and GlassFish in Openbravo ERP.
JasperReports is the default report engine behind Openbravo ERP and POS projects.
Key ideas:
Business Momentum have created B-Orange, a solution that integrates Openbravo ERP, Alfresco, Zimbra, Funambol and Magento.
Key ideas:
Implementing Openbravo ERP on a construction equipment company in India.
Key ideas:
Implementing Openbravo POS in Bocatta, one of the largest fast food chain in Spain.
Key ideas:
Implementing Openbravo ERP in a caravan accessory customer.
Key ideas:
Comments Off



