Release Management
Contents |
Project description
The Release Management team is responsible of the release cycle of the Openbravo project, focused on coordinating and improving the creation of official releases. It is also primarily responsible for many development tools and processes such as code reviews, the issue tracking system, source code management (SCM), continuous integration and inculcation of agile development practices.
Developers
- Jaime Torre <jaime.torre at openbravo dot com>
- Juan Pablo Aroztegi <juanpablo.aroztegi at openbravo dot com>
Project goals
The goals of Release Management are to continually improve the quality, timeliness and overall procedures for creating official Openbravo releases. This project is very much focused on ensuring that the initial quality of every official release is as high as possible. To make this possible, it ensures that all the processes around this one do their task efficiently and in agile way: source code management (SCM), branching policies, code reviewing, continuous builds and tests, development practices for the engineering team and the product release cycle.
Subprojects
The Release Management project has the following subprojects:
Packaging
This project develops the different Openbravo ERP deployment methods.
- Bitrock: installer, upgrader and setup tool.
- Openbravo Network: DVD ISO, VMware, Xen. Update system, infrastructure maintenance and patch management.
- Community Appliances: VMware, Xen.
- Openbravo on-demand (SaaS) (undefined).
There are 3 stages in every packaging method:
- Preparation: development of the initial version of the tool and the process. It's done once, but it may be rewritten depending on the project needs.
- Execution: it consists on releasing a deployment method once it's developed. This should evolve towards an automated task.
- Maintenance: little modifications and adjustments.
Development tools
Source Code Management (SCM)
The SCM project aims to make the distributed coding process as fluid as possible. Currently Openbravo uses Subversion for this task. It involves the following tasks:
- Source code viewer (currently WebSVN).
- Documentation (general usage, repositories structure).
- Policies (committing, branching).
- Automation (Development environment ID).
- Statistics and metrics.
- Automatic commit notifications (Mailing lists, IRC).
- Study and benchmark alternatives (real distributed systems, better merge support).
Issue tracker
This project consists of the enhancements and maintenance of the Openbravo Issue Tracking System (issues.openbravo.com).
Release cycle
The Release cycle project aims to organize what's going to be included in the release and what not and criterias for the acceptance of a release.
- Release policy.
- Release planning.
- Release acceptance criteria.
- Release periodicity.
- Code freezes.
Continuous Integration
This project develops automated tools for the different periodic Openbravo builds and tests.
- Build farm: development test build machines.
- Developer's Edition.
- Automated tests.
- Advanced testing.
Development practices
This project helps to identify, create and implement processes or products to efficiently manage the release of code and overall the engineering process Also it helps to coordinate disparate source trees, projects, teams and components.
- Code reviews.
- Automatic code analyzers.
- Assigned code review tasks.
- Unit tests.
- Agile methodologies.
- Change management.
- Technical designs
- Metrics on the previous items.
Online demo
The online demo project aims to create a grid of fast and stable demo servers, ensuring that the "live" experience is as positive as possible. The Openbravo online demo service offers the latest available stable version, ideal for testing.
Current demo servers:
- America: USA (demo.openbravo.com)
- Europe: Spain (demo2.openbravo.com)
It consists of 3 stages:
- Preparation: development of the demo systems, the update system and the monitoring tool.
- Update: updating the demo systems every time a new stable release is available.
- Maintenance: fix minor issues, monitor the system.
Categories: Development | Release Management


