osdc 2008 apache ofbiz talk
Post on 16-Apr-2017
2.615 Views
Preview:
TRANSCRIPT
OSDC 2008 Talk
Implementing a Custom B2B System Using Apache Ofbiz:
Stories from the front line
Guy Gershoniguy@conchus.com
http://www.conchus.com/
Theme created bySakari Koivunen and Henrik OmmaReleased under the LGPL license.
Outline
Our situation
What is Ofbiz
Our Development Journey
Conclusion
Our Situation
Client required B2B E-commerce solution
Small number of users (around 4000)
Huge range of products (around 100,000)
Complex and large orders ($10,000+ not unusual)
System to be expanded to act as portal to:
information stored on ERP
access custom business processes (which we had to implement :-) )
Our Situation (cont)
Constrains
Small budget
Small development team
Pressure to release functioning system early
Vague and fluid requirements
Our Situation (cont)
We decided to give Ofbiz a go because:
Cost
$0 to buy and after contacting one of the authors relatively cheap support if we got into trouble.
OOTB (Out of the Box) functionality provided
E-commerce and Order Management was there
Good quality code build from the data model up
We felt confident the applications and frameworks would grow nicely as our system evolved
What is Ofbiz - Overview
Ofbiz = Open For Business
Enterprise Automation Software
Part of Apache: http://ofbiz.apache.org/
Started in 2001
Founders
David E. Jonesjonesde@ofbiz.org
Andy Zeneskijaz@ofbiz.org
Apache License Version 2.0
Framework AND Applications
What is Ofbiz The Inspiration (Code)
What is Ofbiz The Inspiration (Data Model)
What is Ofbiz - Technologies
Written in Java BUT logic can be written in
Beanshell, Groovy
Jython
Ofbiz XML language called Minilang
Is a set of Java web application so sits happily in any Java Web or Application Container
Composed of two sections
Framework
Applications
What is Ofbiz Framework AND Applications
+
What is Ofbiz - Framework
Framework Elements (some)
Entity Engine (so good!!!)
How we interact with database
Service Engine
How we interact with the system
User Interaction
Request Mapper
Screen Widget Thingy
XML form generation
What is Ofbiz Framework (cont)
Framework Integration
Integration of third party tools for:
Reporting (Jasper and FOP)
Workflow (Shark)... deprecated
IO tools for reading and writing
CSV files
Fixed width files (was very useful)
Framework Tools
For traversing and managing framework elements.
What is Ofbiz Framework: Entity Engine
Ofbiz does not do ORM but keeps data relational
Works for many DBs and can transparently use multiple DBs in a single system
Also supports replication at the framework level!!!
Gives user tools for CRUD operations
Entity model and seed data written in XML
What is Ofbiz Framework: Entity Engine - Entity Model
...
...
What is Ofbiz Framework: Entity Engine - Seed Data
...
What is Ofbiz Framework: Entity Engine Data Model
Implementation of The Data Model Resource Book by Len Silverston
Highly flexible and comprehensive with over 700 tables and useful seed data in default install
What we really loved about the system
What is Ofbiz Framework: Entity Reference Tool
What is Ofbiz Framework: Service Engine
Can be written in:
Java, Jython, Beanshell/Groovy
Minilang (Ofbiz XML language)
Anything you want with customised handler
Filtering of data coming in/out of service
Have ECA (Event Condition Action)
Transactional
Synchronous, Asynchronous and Scheduled
What is Ofbiz Framework: Service Reference Tool
What is Ofbiz Framework: Integration
All the parts of the framework work well with each other i.e.
Entity Created
CRUD Services created based on Entity
Form created based on Entity
What is Ofbiz Applications (Marketing Speak)
Open source enterprise automation software project i.e.
Open Source ERP
Open Source CRM
Open Source E-Business / E-Commerce
Open Source SCM (Supply Chain Management)
etc.
What is Ofbiz Applications (What You See)
Applications
E-commerce
Product Management
Price Management
User and Party Mangement
Workeffort Application
Accounting Application
etc.
What is Ofbiz Applications: Accounting App
What is Ofbiz Applications: Ecommerce App
Our Development Journey
Requirements Gathering
What does the client want
What can Ofbiz do
Exploring Ofbiz processes and data model helped us clarify clients requirements (we were geeks not business analysts)
Importing Data
From existing ERP (Fixed width tango)
From divisions (saved $$$ for client)
From customers (CSV and MS Excel magic for non-GUI bulk entry)
Our Development Journey (cont)
Exporting Data
Orders to existing ERP
Generating customer reports, orders and invoices etc (50,000+ pages per month... yes we email most of them now)
Customisation of Applications
Work on e-commerce and order managements
Our Development Journey (cont)
Creating own Application
Originally created own Accounting app
Now Ofbiz has own Accounting app
Web portal for existing ERP
Created marketing CMS
Used Drupal (PHP)
integrated Ofbiz and Drupal with CAS (Central Authentication Server)
Our Development Journey (cont)
Recruiting Talent
Not many Ofbiz experts around
Working with Ofbiz developers
Excellent response time on mailing lists
Getting code added to trunk...
Conclusion: Is it for me?
Ramp up time
Support and training
Problem domain relates to Ofbiz
Is technology sexy?
Conclusion: Is it for me? (cont)
Alternatives
Ofbiz based:
Opentaps http://www.opentaps.org/
Neogia http://www.neogia.org/
Java based:
Compiere http://www.compiere.com/
Conclusion: Happy Hacking
Docs
Website
http://ofbiz.apache.org
http://docs.ofbiz.org/display/OFBADMIN/OFBiz+Documentation+Index
Related Books
http://docs.ofbiz.org/display/OFBADMIN/OFBiz+Related+Books
Book
http://www.packtpub.com/apache-ofbiz-development-beginners-tutorial/book
Conclusion: Happy Hacking (cont)
Videos
Framework videos
http://docs.ofbiz.org/display/OFBTECH/Framework+Introduction+Videos+and+Diagrams
Old conference videos
http://ofbiz.apache.org/VideosConf.html
Demo
https://demo.hotwaxmedia.com/ecommerce
https://demo.hotwaxmedia.com/webtools
Questions?
Click to edit the title text format
Click to edit the outline text format
Second Outline Level
Third Outline Level
Fourth Outline Level
Fifth Outline Level
Sixth Outline Level
Seventh Outline Level
Eighth Outline Level
Ninth Outline Level
top related