Detailed and quasi-definitive program for the Paris CPS/ERP5 sprint
Here is the detailed program for the 3 days. About 20 developers are expected, from Nuxeo, Nexedi Capgemini and Unilog, plus Jean-Marc Orliaguet, of Chalmers University and CPSSkins fame.
25/08: talks, panels and discussions
Welcome, coffee and croissants (9h-10h)
Morning session (10h-13h):
CPS architecture: strength, weaknesses, current roadmap
Florent Guillaume
ERP5: strength, weaknesses, current roadmap
Jean-Paul Smets
CPSSKins architecture: strength, weaknesses, current roadmap
Jean-Marc Orliaguet
What users like/would like in CPS/ERP5 ?
Project managers / marketing people panel
Lunch (13h-14H): pizzas, coke, free discussion
Afternoon session: (14h-midnight...)
Reuse and integration: how to better integrate CPS and ERP5, CPSSkins
and CPS, how to better reuse components from one project in another one
FG, JPS, JMO panel
Other projects
(Other people might have other projects, please tell us a bit in
advance using the mailing list)
Design and task assignements
From there on, we will probably have 2 or 3 groups working on
different projects
Mini-tutorials
CPS
ERP5
CPSSkins
Unit testing
26/08, 27/08:
Morning briefing (10h-10h15)
Pair programming fun (10h15-17h45)
Evening debriefing (17h45-18h)
More programming fun (18h-xxx)
And here is a list of potential projects.
CPS/ERP5 integration
Here is a list of integration tasks (by order of priority) between ERP5
and CPS which Nexedi is interested in for this sprint. Each task can be
achieved in short time (ie. 2 days).
1- setup a working CMF environment which contains both ERP5 and CPS
tools (and classes) (-> provides single login to dual environment) -
Maybe this is already done by ERP5SyncML with the exception of 2-
2- make sure zsqlcatalog is compatible with CPS (-> provides unified
worklists and search engine). ERP5 does not work without zsqlcatalog.
3- use CPS portal rendering technology for the first page of ERP5 (->
provides unified portalt UI)
4- allow adding ERP5 mini modules inside CPS workspaces (-> allows to
add ERP5 like features to existing CPS portals)
5- Publish ERP5 CRM entities inside CPS directory (ie. add a CPS meta
directory adapter)
---------------------------------
Here are the integration tasks Nexedi is not interested in for this
coming sprint but which might be very interesting for a future sprint
once both teams understand fully what already exist on each side:
1- Versioning of ERP5 documents. The versioning concept is probably
impossible to understand for ERP5 customers and would likely break the
relational system in ERP5. For example, versioning an invoice does not
make much sense. However, it might be useful in some cases (ie.
versioning of BOMs). Implementing versioning in ERP5 would be great if
both social and technical aspects are well solved.
2- Publication of ERP5 documents into CPS sections. This is something we
really want and which would allow a lot of experimentation on the
interoperability between ERP5 PropertySheet and CPS Schemas, on the use
of ERP5 forms to modify CPS contents or on the use of CPS layouts to
modify ERP5 contents. It takes much more than 2 days and requires the
above priorities to be completed first.
3- Use of CPS documents inside ERP5 documents (ex. add a CPS OpenOffice
document inside an ERP5 Sale Opportunity). This is something we really
want and we have no idea how to do yet and preserve at the same the
design principle which we have in ERP5 that "the system should still
work if parts of it are taken out". This task is also a good occasion to
study the interoperability between ERP5 PropertySheet and CPS Schemas
and the interoperability between CPS layouts and ERP5 Forms.
4- Widget reusability: ERP5 has some very useful widgets (ex. ListBox,
MatrixBox). CPS has other very useful widgets (ex. Calendar). It would
be very nice if widgets could be reused on both sides. I have the
feeling that it would be not too difficult to find a common way of
designing reusable widgets.
CPS/CPSSkins integration
To be discussed with JMO
Plone -> CPS migration
Using CPSIO