Your SlideShare is downloading. ×
0
Openbravo Get Together Technology Day   Packaging Solutions Barcelona, April 2008 Speaker: Ismael Ciordia
Agenda Concepts and Objectives Packaged solutions in 2.40 Next steps
Concepts and Objectives Openbravo Get Together – Packaging Solutions <ul><li>Module:  an optional and independent piece of...
Concepts and Objectives Openbravo Get Together – Packaging Solutions <ul><li>An Openbravo module is and independent piece ...
Concepts and Objectives Openbravo Get Together – Packaging Solutions <ul><li>When developing or maintaining a module the d...
Concepts and Objectives Openbravo Get Together – Packaging Solutions Objective of Openbravo Industry Templates is to gain ...
Agenda Concepts and Objectives Packaged solutions in 2.40 Next steps
Packaged solutions in 2.40 Openbravo Get Together – Packaging Solutions <ul><li>In Openbravo 2.40 it is possible to develo...
Packaged solutions in 2.40 – How to create a Packaged Solution Openbravo Get Together – Packaging Solutions <ul><li>It fol...
Agenda Concepts and Objectives Packaged solutions in 2.40 Next steps
Next steps Openbravo Get Together – Packaging Solutions Objective is to enable Users without development skills to create ...
Thank you! Openbravo Get Together
Upcoming SlideShare
Loading in...5
×

Packaging Solutions - Ismael Ciordia

1,248

Published on

One of the coolest improvements in the 2.40 release is the capacity to create Industry Templates that will dramatically reduce the implementation cost and time of Openbravo. During this session, Industry Templates will be presented from a theoretical and practical point of view: its concepts, what can be included within an Industry Template, how to create, distribute and maintain them, etc.

Published in: Business, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,248
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
83
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Packaging Solutions - Ismael Ciordia"

  1. 1. Openbravo Get Together Technology Day Packaging Solutions Barcelona, April 2008 Speaker: Ismael Ciordia
  2. 2. Agenda Concepts and Objectives Packaged solutions in 2.40 Next steps
  3. 3. Concepts and Objectives Openbravo Get Together – Packaging Solutions <ul><li>Module: an optional and independent piece of software that implements a new functionality not included in Openbravo core (eg. a report, a set of tables and windows to manage a business process, a PayPal connector, …) </li></ul><ul><li>Industry Template: a simple mechanims that provides everything that is needed to operate Openbravo ERP in a given industry </li></ul>
  4. 4. Concepts and Objectives Openbravo Get Together – Packaging Solutions <ul><li>An Openbravo module is and independent piece of software </li></ul><ul><ul><li>Functionality implemented within the module is independent </li></ul></ul><ul><ul><li>This software is independent in the whole life cycle: development and maintenance. It should only take care of fulfilling the interface </li></ul></ul><ul><ul><li>In an Openbravo instance installation of modules is independent from its dependencies (just check them) and could be done at any time. Since it is optional it could be also uninstalled at any time </li></ul></ul><ul><li>Module dependencies </li></ul><ul><ul><li>A module has a set of dependencies (Openbravo core, other modules) </li></ul></ul><ul><ul><li>The interface with its dependencies should be clear. This interface is a “contract” that should be guaranteed </li></ul></ul><ul><ul><li>The simplest way to describe dependencies is by a list of packages required and and for each package a list of supported versions </li></ul></ul><ul><ul><li>Dependencies are one-way: from the module to the packages it depends on, never the opposite (only to keep the interface stable) </li></ul></ul>
  5. 5. Concepts and Objectives Openbravo Get Together – Packaging Solutions <ul><li>When developing or maintaining a module the developer only takes care of the internal functionality of the module and of the interface with its dependencies </li></ul><ul><li>It allows distributed and decoupled development. </li></ul><ul><li>It isolates the development and maintenance in a single point </li></ul><ul><li>The interface should be simple and stable to be efficient </li></ul>Objective of Openbravo modules is to gain effectiveness in the development process ... ...
  6. 6. Concepts and Objectives Openbravo Get Together – Packaging Solutions Objective of Openbravo Industry Templates is to gain effectiveness in the implementation process <ul><li>An Openbravo Industry Template… </li></ul><ul><ul><li>...aims to reduce the implementation time and cost and lowering the barriers of adoption of Openbravo. Because of that, the user experience if of paramount importance. It must very easy for a user not having technical or system implementation skills and having very little knowledge of Openbravo to select and deploy an Industry Template. </li></ul></ul><ul><ul><li>A secondary goal is to enable partners with industry specific expertise to package their expertise in the form of a template and to distribute it to the whole Openbravo user community. </li></ul></ul>
  7. 7. Agenda Concepts and Objectives Packaged solutions in 2.40 Next steps
  8. 8. Packaged solutions in 2.40 Openbravo Get Together – Packaging Solutions <ul><li>In Openbravo 2.40 it is possible to develop any Openbravo functionality in isolated development branches </li></ul><ul><li>Code has been structured to allow easy merge from different sources </li></ul><ul><li>It allows “packaging” solutions within a development branch and deploy those solutions to end customers </li></ul><ul><li>It is based on development tools (SCM) such as Subversion </li></ul>
  9. 9. Packaged solutions in 2.40 – How to create a Packaged Solution Openbravo Get Together – Packaging Solutions <ul><li>It follows the same development process as when implementing Openbravo in a Customer: </li></ul><ul><ul><li>Identify functional requirements for the Industry you want to prepare the packaged solution </li></ul></ul><ul><ul><li>Prepare the development branch from the latest Openbravo maintenance branch and configure the development environment (ID’s configuration) </li></ul></ul><ul><ul><li>Develop all the new functionality and configure Openbravo core modules to get the functional requirements </li></ul></ul><ul><ul><li>Follow best practices: is better to implement new functionality by using the Application Dictionary than with manual code: request new Usability Patterns if needed! </li></ul></ul><ul><ul><li>Freeze and perform QA processes </li></ul></ul><ul><li>Openbravo maintenance patches can be applied to the packaged solution branch to be merged with its own fixes. From here a consolidated maintenance patch can be delivered to Customers using the packaged solution </li></ul><ul><li>Installation of packaged solution in customers: </li></ul><ul><ul><li>From sources: create a customer branch from the branch of your packaged solution </li></ul></ul><ul><ul><li>Prepare an installer using BitRock technology (using Openbravo files) </li></ul></ul>
  10. 10. Agenda Concepts and Objectives Packaged solutions in 2.40 Next steps
  11. 11. Next steps Openbravo Get Together – Packaging Solutions Objective is to enable Users without development skills to create Industry Templates <ul><li>Modularity from a User perspective </li></ul><ul><ul><li>The experience of the user of deploying modules should be similar to the one of Firefox plugins: you should be able to browse a catalog of modules, install, deploy and upgrade them directly from the Openbravo Administration UI. You should also be able to uninstall modules. </li></ul></ul><ul><ul><li>Finally, the author of a module should be able to indicate which versions of Openbravo are compatible with it and which other modules if any it depends on. The installation of a module should validate that these dependencies are met. </li></ul></ul><ul><li>Industry Templates as a configuration file </li></ul><ul><ul><li>List of modules included </li></ul></ul><ul><ul><li>Configuration file for Openbravo core modules and optional modules </li></ul></ul><ul><ul><li>Code is not included in a Industry Template </li></ul></ul><ul><li>It will be straightforward to move from current packaged solutions to modules and Industry Templates: do not wait for the next release to start! </li></ul>
  12. 12. Thank you! Openbravo Get Together
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×