Upload
abdelhaq-moufaddel
View
212
Download
0
Embed Size (px)
Citation preview
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
1/24
Openbravo Get TogetherTechnology DayDeveloping with Openbravo
Barcelona, April 2008Speaker: Rok Lenardic
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
2/24
Page 2PR-OB Get Together Barcelona - April 2008
Development Challenges and Openbravo Development Environment
Tools Used
Development Process
Migrations/Upgrades
Contributions
Agenda
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
3/24
Page 3PR-OB Get Together Barcelona - April 2008
ArchitectureOpenbravo Get Together Developing with Openbravo
The MDD (Model DrivenDevelopment) leads to:
SEPARATE DESIGN fromARCHITECTURE/PLATFORM
A higher quality of code (drasticREDUCTION OF MANUAL CODE)
A higherPRODUCTIVITY andefficiency
The MVC Model (Model, View,Control) allows for:
The DE-COUPLING of developmentareas
Sustainable APPLICATION GROWTH
An EASIER MAINTENANCE of thecode
Development Environment Main Advantages
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
4/24
Page 4PR-OB Get Together Barcelona - April 2008
Quick FactsOpenbravo Get Together Developing with Openbravo
44M ./database
452K ./src-db21M ./lib
112K ./legal
3.7M ./src-trl
4.9M ./src-wad
19M ./src
16K ./WebContent
44M ./config
17M ./web
4.3M ./src-core
24K ./.settings
156M .
almost 7000 files
64 developers (trunk
contributors) to date
Java
XML/HTMLPL/SQL
Javascript
Oracle/Postgres
Tomcat
520 database tables
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
5/24Page 5PR-OB Get Together Barcelona - April 2008
Development ChallengesOpenbravo Get Together Developing with Openbravo
ODE
COMPLEXITY of THEPROJECT DISTRIBUTEDDEVELOPMENT
MDA CONCEPT
SVN
Enable large number of developersthat are geographically distributed tocooperate
Provide a central repository fordistribution of our software
Provides easy MERGE/DIFFcapabilities
DDLUTILS
Replaces binary dumps with xml text f iles
This way, tracking and merge of metadata anddatabase model development is possible
ECLIPSE + ANT
File/class browser
Code completion
Warnings and errors before compilation
Complex project build
Fast deployment and debugging
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
6/24
Page 6PR-OB Get Together Barcelona - April 2008
Openbravo Development EnvironmentOpenbravo Get Together Developing with Openbravo
ODE is a framework of:
Tools (Eclipse, SVN, etc) Methodologies (source control, development cycle, etc.)
Processes (sequences)
We use it to make the following tasks more efficient
Editing/navigating/controlling source code
Debugging
Testing Deploying
ODE supports Oracle and PostgreSQL based development environments.
Supports the development of various elements (Openbravo ERP core contributions,modules and custom code)
http://wiki.openbravo.com/wiki/Openbravo_Development_Environment_ODE
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
7/24
Page 7PR-OB Get Together Barcelona - April 2008
Development ChallengesOpenbravo Get Together Developing with Openbravo
ODE
COMPLEXITY of THEPROJECT DISTRIBUTEDDEVELOPMENT
MDA CONCEPT
SVN
Enable large number of developersthat are geographically distributed tocooperate
Provide a central repository fordistribution of our software
Provides easy MERGE/DIFFcapabilities
DDLUTILS
Replaces binary dumps with xml text f iles
This way, tracking and merge of metadata anddatabase model development is possible
ECLIPSE + ANT
File/class browser
Code completion
Warnings and errors before compilation
Complex project build
Fast deployment and debugging
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
8/24
Page 8PR-OB Get Together Barcelona - April 2008
Development ChallengesOpenbravo Get Together Developing with Openbravo
ODE
COMPLEXITY of THEPROJECT
DISTRIBUTEDDEVELOPMENT
MDA CONCEPT
SVN
Enable large number of developersthat are geographically distributed tocooperate
Provide a central repository fordistribution of our software
Provides easy MERGE/DIFFcapabilities
DDLUTILS
Replaces binary dumps with xml text f iles
This way, tracking and merge of metadata anddatabase model development is possible
ECLIPSE + ANT
File/class browser
Code completion
Warnings and errors before compilation
Complex project build
Fast deployment and debugging
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
9/24
Page 9PR-OB Get Together Barcelona - April 2008
Development ChallengesOpenbravo Get Together Developing with Openbravo
ODE
COMPLEXITY of THEPROJECT
DISTRIBUTEDDEVELOPMENT
MDA CONCEPT
SVN
Enable large number of developers that aregeographically distributed to cooperate
Provide a central repository for distributionof our software
DDLUTILS
Replaces binary dumps with xml text f iles
This way, tracking and merge of metadata anddatabase model development is possible
ECLIPSE + ANT
File/class browser
Code completion
Warnings and errors before compilation
Complex project build
Fast deployment and debugging
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
10/24
Page 10PR-OB Get Together Barcelona - April 2008
Development Environment ID SolutionOpenbravo Get Together Developing with Openbravo
ISSUE: Several People Changing the Metadata Inside the ApplicationDictionary
Adding a new window
Adding/removing a field
etc.
SOLUTION: Developer Environment ID prefix
Every contributor (RW access to the trunk) gets an ID(AD_DEVELOPER.xml) Issued by Openbravo
10000-99999 range for core contributions
100-999 for custom projects
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
11/24
Page 11PR-OB Get Together Barcelona - April 2008
Development Challenges and Openbravo Development Environment
Tools Used
Development Process
Migrations/Upgrades
Contributions
Agenda
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
12/24
Page 12PR-OB Get Together Barcelona - April 2008
Tools Used Eclipse Europa for Java EEOpenbravo Get Together Developing with Openbravo
http://wiki.openbravo.com/wiki/Installation_and_setup_of_Eclipse_IDE
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
13/24
Page 13PR-OB Get Together Barcelona - April 2008
Tools Used Eclipse + SubversiveOpenbravo Get Together Developing with Openbravo
O b G t T th D l i ith O b
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
14/24
Page 14PR-OB Get Together Barcelona - April 2008
Tools Used DdlUtilsOpenbravo Get Together Developing with Openbravo
https://dev.openbravo.com/websvn/dbsourcemanagerhttp://wiki.openbravo.com/wiki/Database_sources_management
compare.database.structure
create.database
create.database.script
create.database.structure
database.lib
export.database
export.database.data
export.database.masterdata
export.database.sampledata
export.database.structure
import.database.data
import.database.masterdata
import.database.sampledata
save.database.model
update.database
update.database.script
update.database.structure
O b G t T th D l i ith O b
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
15/24
Page 15PR-OB Get Together Barcelona - April 2008
Other ToolsOpenbravo Get Together Developing with Openbravo
Firebug Addon for Firefox: Debug Javascript, HTML, CSS,...
SqlDeveloperby Oracle: Browse the Database and Debug PL
iReports for Jasper Reports: WYSIWYG editor of reports that Openbravouses
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
16/24
Page 16PR-OB Get Together Barcelona - April 2008
Development Challenges and Openbravo Development Environment
Tools Used
Development Process
Migrations/Upgrades
Contributions
Agenda
Openbravo Get Together Developing with Openbravo
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
17/24
Page 17PR-OB Get Together Barcelona - April 2008
Development ProcessOpenbravo Get Together Developing with Openbravo
Openbravo Get Together Developing with Openbravo
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
18/24
Page 18PR-OB Get Together Barcelona - April 2008
Development ProcessOpenbravo Get Together Developing with Openbravo
Openbravo Get Together Developing with Openbravo
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
19/24
Page 19PR-OB Get Together Barcelona - April 2008
Repository Structure that Aids Community InvolvementOpenbravo Get Together Developing with Openbravo
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
20/24
Page 20PR-OB Get Together Barcelona - April 2008
Development Challenges and Openbravo Development Environment
Tools Used
Development Process
Migrations/Upgrades
Contributions
Agenda
Openbravo Get Together Developing with Openbravo
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
21/24
Page 21PR-OB Get Together Barcelona - April 2008
Migration to the new Environment/VersionOpenbravo Get Together Developing with Openbravo
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
22/24
Page 22PR-OB Get Together Barcelona - April 2008
Development Challenges and Openbravo Development Environment
Tools Used
Development Process
Migrations/Upgrades
Contributions
Agenda
Openbravo Get Together Developing with Openbravo
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
23/24
Page 23PR-OB Get Together Barcelona - April 2008
Development ContributionsOpenbravo Get Together Developing with Openbravo
Several Ways of Contributing to the Project improve/write documentation (Wiki)
write a blog (see planet.openbravo.com)
report bugs (sourceforge)
Localization (https://dev.openbravo.com/websvn/localization)
ideas and feature requests (sourceforge)
Core
fixes (patches) - sourceforge
becoming OB developer(developer ID) commit privileges todev.openbravo.com
7/30/2019 developingwithopenbravorleppt-1209139450549546-9
24/24
Page 24PR-OB Get Together Barcelona - April 2008
Thank you!
Openbravo Get Together