openerp r&d

74
OpenERP R&D Projects

Upload: odoo

Post on 10-May-2015

10.239 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: OpenERP R&D

OpenERP R&D Projects

Page 2: OpenERP R&D

Introduction

Antony Lesuisse

Page 3: OpenERP R&D

Agenda: R&D Projects (part 1)

• OpenERP Apps

• Release Policy

• Packaging

• R&D Processes– Bug Reports Lifecycle

– R&D Projects Lifecycle

– Merge proposals Lifecycle

• Web Client v6.1

Page 4: OpenERP R&D

OpenERP Apps

Page 5: OpenERP R&D

OpenERP Apps

• Origin: Loempia project by stw, chs

• For end users– User-friendly, easy access to applications

– One Stop Library

• For Community

– Instant mass visibility

– Auto-import of new modules and versions

– Statistics about popularity

– Ownership of code branches

Page 6: OpenERP R&D

OpenERP Apps

• Categories

• Call for contributions!– update branch layout

• <branch>/<module_name>/__openerp__.py

– update description and screenshots

• Phase out extra-addons

• Future: rating, speed

Page 7: OpenERP R&D

Release Policy & Packaging

Antony Lesuisse

Page 8: OpenERP R&D

Release Cycle

Page 9: OpenERP R&D

Packaging

• Cleanup setup.py

• Nightly Builds

• .rpm packages submitted to Fedora/RedHat

• .deb packages for Debian-based

Page 10: OpenERP R&D

R&D / Community Processes

Olivier Dony

Page 11: OpenERP R&D

Daily feedback is huge!

Page 12: OpenERP R&D

Daily feedback is huge!

Page 13: OpenERP R&D

Nobody can handle this alone!

• We defined feedback processes– Bug reports

– Feedback

– Merge proposals

• We created dedicated Teams– Qualify the feedback

– Follow-up

• We monitor– Dashboards

– Continuous Improvements

Page 14: OpenERP R&D

Bug Lifecycle

Page 15: OpenERP R&D

Bug Lifecycle

Page 16: OpenERP R&D

Bug Lifecycle

Page 17: OpenERP R&D

Continuous Testing

Buildbot• Auto branch import

• Full test suite

• Email feedback

buildbot.openobject.com

Runbot• Auto branch import

• Online live install

runbot.openerp.com

Page 18: OpenERP R&D

Bug Lifecycle

Page 19: OpenERP R&D

Bug Lifecycle

Page 20: OpenERP R&D

Monitoring

Page 21: OpenERP R&D

Full picture OpenERP 2011

Page 22: OpenERP R&D

R&D Projects Lifecycle

• Project organization– Inception: internal, feedback.openerp.com

– Projects product backlogs

– Project Lead

– Sprint review 2 weeks

– Project branches

• Feature branches (usually one product backlog)

• Merged by project lead

– Project validation

– Merged into trunk

Page 23: OpenERP R&D

Project Validation Steps

• Keep trunk branch stable

Page 24: OpenERP R&D

Feature & Merge Proposal Lifecycles

Page 25: OpenERP R&D

Merge Proposal Monitoring

Page 26: OpenERP R&D

OpenERP Web Client

Antony Lesuisse

Page 27: OpenERP R&D

OpenERP Web Client

Page 28: OpenERP R&D

OpenERP Client Web 6.0

• New design

• Still a classical web 1.0 application

• HTML generated server side

• GET POST

• Some client side Javascript– Mix of serverside and client side

– Unclear semantics

Page 29: OpenERP R&D

OpenERP Web 6.0 vs 6.1

Page 30: OpenERP R&D

OpenERP Web 6.1

Web 2.0 HTML5

• Clean architecture

• Fast

• Linkable

• Embeddable

• Modular (chat,mobile,geoviewlist)

• Frontend Framework for ERP based applications

Page 31: OpenERP R&D

OpenERP Web Architecture

Page 32: OpenERP R&D

OpenERP Web Architecture

• WebClient Chrome– Header

– Footer

– Login

– Menu

– Loading

Page 33: OpenERP R&D

OpenERP Web Architecture

• ActionController– ViewManager

• ListView

– ListWidgets

• FormView

– FormWidgets

• GanttView

Page 34: OpenERP R&D

OpenERP Web Architecture

Page 35: OpenERP R&D

OpenERP Web Fast

Page 36: OpenERP R&D

OpenERP Web Fast

Page 37: OpenERP R&D

OpenERP Web Modularity

Page 38: OpenERP R&D

OpenERP Web Technical Ecosystem

Page 39: OpenERP R&D

OpenERP Web addons

Page 40: OpenERP R&D

OpenERP Web Linkable

Page 41: OpenERP R&D

OpenERP Web Linkable

• Using hash #url

• Controller serialize() part of their state

• domain.com/#menu/12/crm_lead/24/form

• Controller can unserialize() to restore their state

• Add link icon

Page 42: OpenERP R&D

OpenERP Web Embeddable

Page 43: OpenERP R&D

OpenERP Web Embeddable

• Embed button

• <script>generatedcode</script>

• Paste script snippet to paste to any webpage

• No need to interface openerp server.– Share permission using records rules

– JSONP tranport

Page 44: OpenERP R&D

OpenERP Web Plaform

• Leverage the existing controllers and widget

• Easy access to openerp objects

• Transform existing wizard into web apps

• Example:– POS

– Contact form

– E-commerce shopping cart

– Survey module

Page 45: OpenERP R&D

OpenERP Web Mobile

• Subclasses the normal controllers

• Use JQuery UI mobile widgets

Page 46: OpenERP R&D

OpenERP Web Roadmap

• Workshop tomorrow in room– Share your ideas on:

http://pad.openerp.com/webclientimprovements

• Launchpad branch:– lp:~openerp-dev/openobject-client-web/trunk-proto61

– Contributions welcome!

• Roadmap

– 80% done 1.5 month

– 20% will take 50% of total time

– Estimated 1.5 month more

Page 47: OpenERP R&D

KeynoteOpenERP Vision

Fabien Pinckaers

Page 48: OpenERP R&D

R&D Strategy

Antony Lesuisse

Page 49: OpenERP R&D

R&D Strategy

• 3 main types of developments– New features

• Added value for customers

– Usability

• No added value

• Helps new users

– Core improvement

• No visible value for customer

• Long-term productivity

Page 50: OpenERP R&D

R&D Strategy

Community/Partners

• New features

– Paid by customers

• Usability

– Training cheaper than UI improvements

• Core improvements

– Specific development when needed

• Examples:

– Improvement to 1 YAML test

– Bugfixes

– Medical

– Country-specific payroll

Publisher

• New features

– Only if useful for mass

• Usability

– Publisher's role

• Core improvements

– Major refactoring

• Examples:

– YAML tests for all modules

– Global refactoring

– new Web client

– Generic Payroll

Page 51: OpenERP R&D

Projects (part 2)

• Projects– Communication and sharing tools: portal, …

– Usability

– Core improvement: emails, import openerp

– Third-party integration

– Payroll

– Point of Sale

Page 52: OpenERP R&D

Communication & Sharing

Olivier Dony

Page 53: OpenERP R&D

Sharing Module

• Introduced in v6.0

• Improved in trunk/v6.1

• Web add-on

• Read-only / Full access

• Automatically computes

access rights for

appropriate restrictions

Page 54: OpenERP R&D

Portal Module

• (Re)-introduced in trunk / v6.1

• Easier setup via share module

• Maintains settings for a group of users:– Access rights and filters

– Dedicated menus

– Homepage widgets

• Example:– New Partner Portal (more on this on Friday!)

Page 55: OpenERP R&D

Next, in communication tools...

• Email notifications for business flows

• One-click sharing of single documents

• Replacing “internal requests” with emails

• ...

Page 56: OpenERP R&D

Usability

Fabien Pinckaers

Page 57: OpenERP R&D

Core improvements

Olivier Dony

Page 58: OpenERP R&D

Email subsystem: unification

• Before: mix and match of email features:– Core framework (tools.email_send)

– Mail Gateway module (e.g. crm history)

– Email template (marketing campaign)

– Etc..

• Interoperability problem: different models

• No consistency

Page 59: OpenERP R&D

Email subsystem: unification

• After:– One single model for each concept (mail, server...)

– Layered architecture, each feature at the right

level

Page 60: OpenERP R&D

“import openerp”

• Promised last year

• Now available in trunk:

• More cleanup coming

Page 61: OpenERP R&D

Third-party integration

Thibaut François

Page 62: OpenERP R&D

Vision

● First step : develop comprehensive software

● Second step : Integration with third party

software

– Salesforce

– Sugarcrm

– Quickbook

– …..

Page 63: OpenERP R&D

Easy to use

• Embedded module, no external scripts

• oriented end user

– No complex configuration

– Simple wizard

• Just provide login, or a file to upload

• Import just what you need

Page 64: OpenERP R&D

How ?

Connection to Web service

Import data file

Mapping:field, link

Create/updateData in openerp

Page 65: OpenERP R&D

Enough talk, more demo

Demonstration : Sugarcrm

Page 66: OpenERP R&D

CRM Workshop

• Workshop tomorrow in room 3

• Share your ideas: http://pad.openerp.com/crm-marketing-plugins

Page 67: OpenERP R&D

Payroll

Quentin de Paoli

Page 68: OpenERP R&D

Payroll Project

• Objectives

– Make a generic payroll engine

• Powerfull

• Easy to complete with countries specificities

• Compliant with all payroll concepts possible

• Easy to use

– Proof it's working with « belgian/indian payroll »

modules

• Based on generic payroll

• No need to create specific python code

– Integrate the payroll with the accounting and HR

Page 69: OpenERP R&D

Payroll Project

• Progress– Generic payroll

engine

– Reporting on

generic payroll

– Belgian/Indian

payroll

– Integration with

accounting

Progress (%)

0

20

40

60

80

100

120

Generic Payroll EngineReporting on generic payrollBelgian payrollIntegration with accounting

Page 70: OpenERP R&D

Payroll Project - Objects

• Salary Rules– Determines an amount to add/subtract on the

employee payslip

– Determines an amount to be paid to a contribution

register

• Contribution Registers– Third party to whom the amount have to be

paid/collected

Page 71: OpenERP R&D

Payroll Project - Objects

• Salary Structure– Contains a set a rule

– Hierachical

• Salary Heads

– Groups logically the rules

– Hierachical

Page 72: OpenERP R&D

Payroll Project - Computing

• Payslip

– Salary can be based on contract wage or worked days/hours

– Connected with holidays

– Multi-contracts

• Rule

– Can be computed using

• Any field on employee/payslip/contract

• Any input in the tab « Worked Days »

• Any rule/head already computed

Page 73: OpenERP R&D

Payroll Project

• Workshop tomorrow in room 2– Share your knowledge

– Test some of your country specificities

• Give feedback on

http://pad.openerp.com/payroll

Page 74: OpenERP R&D

Point of Sale

Antoine Huvelle