Differences between revisions 1 and 4 (spanning 3 versions)
Revision 1 as of 2004-10-17 11:28:36
Size: 6835
Editor: rluta
Comment: INit PAge
Revision 4 as of 2009-09-20 23:05:28
Size: 6716
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
!!! X Project Incubation Status TEMPLATE = Proposal for new project JCMS =
Line 3: Line 3:
This document is the template for project incubation status. Accepted by the Portals PMC on September 27, 2004.
Line 5: Line 5:
What to do to set it up: == Rationale ==
Line 7: Line 7:
* copy this file and name it <projectname>.cwiki
* add this page in incubator/site/site.xml as for other projects
* add a section in incubator/site/projects/index.xml
JCMS offers a complete platform for creating, managing, and
publishing content in your portal. JCMS integrates content repositories,
workflow, collaboration and personalization via existing open source
projects and powerful standards like WEBDAV, JCR [JcrProposal], ... . It includes
features like taxonomy, content versioning, fine grained access control,
collaborative editing, publication workflow, scheduling, indexing,
searching and more. It will support many document types like XML,
HTML, PDF, MS Office, Open office, ect. JCMS is specifically focussed
on content services for portals but can also be used for a web
based content management system or a document management application.
Line 11: Line 18:
For this file (syntax reference is at http://xml.apache.org/forrest/wiki-sample.html): The JCMS engine groups together different content stores into
the same virtual content tree. In this way, the portal application
can access to heterogenous content servers based on different
technologies (WEBDAV, JCR [JcrProposal] or proprietary content stores).
The JCMS content model is a high level object model giving an
abstraction on the underlying technology used by the content store.
The core object model is composed of "Document", "Folder","Link",
A specific application can inherit this model and extend it to fit
any specific purpose.
Line 13: Line 28:
* substitute the XYZ project name with the real one
* fill in the "Description"
* edit "Project info" to contain only effective resources
* start doing "Incubation work items"
JCMS is also proposed as the default CMS service for Jetspeed 2 [[http://portals.apache.org/jetspeed-2/]].
In order to have a complete portal integration, the JCMS project will
offer a series of JSR-168 [[http://www.jcp.org/en/jsr/detail?id=168]] portlets like content browser,
editors and content administration portlets.
Line 18: Line 33:
When an "Incubation work item" is done, place the date in the supplied space,
and if necessary update "Project info" to reflect changes in resources.
=== Criteria ===
Line 21: Line 35:
There are also sections where to place project news and incubation status reports. ==== Meritocracy ====
Line 23: Line 37:
''On the first edit of this file, please delete this notice.'' The community around JCMS is not yet fully defined so no formal
community rules are formally enforced, however given the committers
ties and experience with current Apache projects, all common Apache
community rules and guidelines are ccurrently used de facto and
will be applied within the JCMS community.
Line 25: Line 43:
{{{ -----8-<---- cut here -------8-<---- cut here -------8-<---- cut here -------8-<---- }}} ==== Community ====

There is not yet a JCMS community but there is a huge amount of
demands on the Jetspeed mailing for this kind of tools.
So, we can expect that the JCMS community will be mainly the
current Jetspeed community. Due to the fact that JCMS will support
Webdav, a lot of Slide users will be also interested by JCMS.

==== Core Developers ====

Currently, there are 2 developpers, one of them having a large experience at
Apache.
Line 28: Line 57:
!!! XYZ Project Incubation Status ==== Alignment ====
Line 30: Line 59:
This page tracks the project status, incubator-wise.
For more general project status, look on the project website.
The initial code base is targeted to run within Jetspeed, but the
goal is to allow the framework to run on any JSR-168 compliant portal solution
and any kind of java application like web services, ....
The services can be running on any Spring or PicoContainer applications
and the JCMS portlets will be JSR-168 compatible.
Line 33: Line 65:
!!! Description === Warning Signs ===
Line 35: Line 67:
The XYZ Project is a wonderful project that does things and goes places. ==== Orphaned products ====
Line 37: Line 69:
!!! News The framework being proposed is an evolution of 2 different works made by
Christophe Lombart and David Sean Taylor. Last year, David build a CMS
solution for the BBC and Which Online in the UK and at the same time,
Christophe build a document management application for the European Commission.
Line 39: Line 74:
* none yet After some discussions, they realised the interest to build a common
version of their work and publish it to the open source community.
Line 41: Line 77:
!!! Project info ==== Inexperience with open source ====
Line 43: Line 79:
* link to the main website Both developers have experience working with open source projects. David
Sean Taylor has experience as committer on other Apache projects and PMC member
of Apache Portals.
Line 45: Line 83:
* link to the page(s) that tell how to participate
  (Website,Mailing lists,Bug tracking,Source code)
  
* link to the project status file
  (Committers,non-incubation action items,project
   resources, etc)
==== Homogenous developers ====
Line 52: Line 85:
If the project website and code repository are not yet setup,
use the following table:
The current list of committers includes developers from different companies.
The committers are geographically distributed across the U.S. and Europe.
They are experienced with working in a distributed environment.
Line 55: Line 89:
|| item || type || reference
| Website | www | [http://incubator.apache.org/X/|http://incubator.apache.org/X/]
| . | wiki | .
| Mailing list | dev | incubator-dev@incubator.apache.org
| . | cvs | incubator-cvs@apache.org
| Bug tracking | . | .
| Source code | CVS | incubator-X
| Mentors | id1 | Name1 Surname1
| . | id2 | Name2 Surname2
| Committers | . | .
| Extra | . | .
  
==== Reliance on salaried developers ====
Line 68: Line 91:
!!! Incubation status reports Christophe Lombart working for Sword Technologies plan to use JCMS in
the last year quarter.
David Sean Taylor is self-employed, with no current contracts using
JCMS. However he plans to integrate JCMS into J2 to build out of the box CMS
solutions at Jetspeed.
Line 70: Line 97:
* none yet ==== No ties to other Apache products ====
Line 72: Line 99:
!!! Incubation work items As described in the Alignment section, this framework already has ties
to many Apache products. The framework is also already license-compatible with
Apache products; in fact, it is currently licensed under the Apache License 2.0.
Line 74: Line 103:
!! Project Setup ==== A fascination with the Apache brand ====
Line 76: Line 105:
This is the first phase on incubation, needed to start the project at Apache. The committers are intent on developing a strong open source community
around the JCMS framework;
Given its close relationship with Jetspeed-2 and Pluto and reliance on
Slide, we believe that hosting this community within Apache Portals TLP will
provide the best synergies.
Line 78: Line 111:
'' Item assignment is shown by the Apache id.''
'' Completed tasks are shown by the completion date (YYYY-MM-dd). ''
== Scope of the subprojects ==
Line 81: Line 113:
! Identify the project to be incubated
|| date || item
| ....-..-.. | Make sure that the requested project name does not already exist and check www.nameprotect.com to be sure that the name is not already trademarked for an existing software product.
| ....-..-.. | If request from an existing Apache project to adopt an external package, then ask the Apache project for the cvs module and mail address names.
| ....-..-.. | If request from outside Apache to enter an existing Apache project, then post a message to that project for them to decide on acceptance.
| ....-..-.. | If request from anywhere to become a stand-alone PMC, then assess the fit with the ASF, and create the lists and modules under the incubator address/module names if accepted.
The JCMS project can be split into 3 subprojects :
Line 88: Line 115:
! Interim responsibility 1. The JCMS services : all JCMS services are simple POJO components
which can be running into different containers.
Line 90: Line 118:
|| date || item
| ....-..-.. | Identify all the Mentors for the incubation, by asking all that can be Mentors.
| ....-..-.. | Subscribe all Mentors on the pmc and general lists.
| ....-..-.. | Give all Mentors access to all incubator CVS modules. (to be done by PMC chair)
| ....-..-.. | Tell Mentors to track progress in the file 'incubator/projects/{project.name}.cwiki'
The core JCMS services are :
 * The Model Service.
 * The Version Service.
 * The Security Service.
 * The Search Service.
 * The Index Service.
 * The Workflow Service.
 * The Event handler Service.
Line 96: Line 127:
! Copyright The persistence service (this is the key component which will map the
JCMS object model into the underlying model used to access a specific content store).
Line 98: Line 130:
|| date || item
| ....-..-.. | Check and make sure that the papers that transfer rights to the ASF been received. It is only necessary to transfer rights for the package, the core code, and any new code produced by the project.
| ....-..-.. | Check and make sure that the files that have been donated have been updated to reflect the new ASF copyright.
2. The JCMS engines : The target of this subproject is provided nice
integration with existing container frameworks like Spring, PicoContainer, EJB, ...
Line 102: Line 133:
! Verify distribution rights 3. The JCMS portlets : This target will provide a set of JSR-168 compatible portlets
grouped into different portlet categories : content browser, content viewer,
editor & content administration.
Line 104: Line 137:
|| date || item
| ....-..-.. | Check and make sure that for all code included with the distribution that is not under the Apache license, e have the right to combine with Apache-licensed code and redistribute.
| ....-..-.. | Check and make sure that all source code distributed by the project is covered by one or more of the following approved licenses: Apache, BSD, Artistic, MIT/X, MIT/W3C, MPL 1.1, or something with essentially the same terms.
== Identify the initial source from which the subproject is to be populated ==
 
The initial source will be donated by Christophe and David.
A snapshot can be found here:
Line 108: Line 142:
! Establish a list of active committers ! http://www.bluesunrise.com/jetspeed-2/jcms2.zip
Line 110: Line 144:
|| date || item
| ....-..-.. | Check that all active committers have submitted a contributors agreement.
| ....-..-.. | Add all active committers in the STATUS file.
| ....-..-.. | Ask root for the creation of committers' accounts on cvs.apache.org.
== Identify the ASF resources to be created ==
Line 115: Line 146:
! Infrastructure ! === mailing list(s) ===
Line 117: Line 148:
|| date || item
| ....-..-.. | Ask infrastructure to create source repository modules and grant the committers karma.
| ....-..-.. | Ask infrastructure to set up and archive Mailing lists.
| ....-..-.. | Decide about and then ask infrastructure to setup an issuetracking system (Bugzilla, Scarab, Jira).
| ....-..-.. | Migrate the project to our infrastructure.
 * jcms-ppmc via incubator.apache.org (with moderated subscriptions)
 * jcms-dev via incubator.apache.org
 * jcms-user via incubator.apache.org
Line 123: Line 152:
! Project specific === Subversion repositories ===
Line 125: Line 154:
''Add project specific tasks here.''  * incubator/jcms
Line 127: Line 156:
!! Incubation === Jira ===
Line 129: Line 158:
These action items have to be checked for during the whole incubation process.  * JCMS project with categories for Core, Engines, Portlets, Docs
Line 131: Line 160:
'' These items are not to be signed as done during incubation, as they may change during incubation. ''
'' They are to be looked into and described in the status reports and completed in the request for incubation signoff. ''
== Identify the initial set of committers ==
Line 134: Line 162:
! Collaborative Development  ||<tablebgcolor='#E0E0FF'>Raphaël Luta||Aptiwan||ASF, Portals||
 ||David S. Taylor||Bluesunrise||Portals||
 ||Christophe Lombart||Sword Technologies||||
Line 136: Line 166:
* Have all of the active long-term volunteers been identified and acknowledged as committers on the project?
* Are there three or more independent committers? (The legal definition of independent is long and boring, but basically it means that there is no binding relationship between the individuals, such as a shared employer, that is capable of overriding their free will as individuals, directly or indirectly.)
* Are project decisions being made in public by the committers?
* Are the decision-making guidelines published and agreed to by all of the committers?
== Identify Apache sponsoring individual ==
Line 141: Line 168:
! Licensing awareness

* Are all licensing, trademark, credit issues being taken care of and acknowleged by all committers?

! Project Specific

''Add project specific tasks here.''

!! Exit

''Things to check for before voting the project out.''

! Organizational acceptance of responsibility for the project

* If graduating to an existing PMC, has the PMC voted to accept it?
* If graduating to a new PMC, has the board voted to accept it?

! Incubator sign-off

* Has the Incubator decided that the project has accomplished all of the above tasks?
 * Raphaël Luta, champion and mentor for the project,
 (as defined in http://incubator.apache.org/incubation/Roles_and_Responsibilities.html)

Proposal for new project JCMS

Accepted by the Portals PMC on September 27, 2004.

Rationale

JCMS offers a complete platform for creating, managing, and publishing content in your portal. JCMS integrates content repositories, workflow, collaboration and personalization via existing open source projects and powerful standards like WEBDAV, JCR [JcrProposal], ... . It includes features like taxonomy, content versioning, fine grained access control, collaborative editing, publication workflow, scheduling, indexing, searching and more. It will support many document types like XML, HTML, PDF, MS Office, Open office, ect. JCMS is specifically focussed on content services for portals but can also be used for a web based content management system or a document management application.

The JCMS engine groups together different content stores into the same virtual content tree. In this way, the portal application can access to heterogenous content servers based on different technologies (WEBDAV, JCR [JcrProposal] or proprietary content stores). The JCMS content model is a high level object model giving an abstraction on the underlying technology used by the content store. The core object model is composed of "Document", "Folder","Link", A specific application can inherit this model and extend it to fit any specific purpose.

JCMS is also proposed as the default CMS service for Jetspeed 2 http://portals.apache.org/jetspeed-2/. In order to have a complete portal integration, the JCMS project will offer a series of JSR-168 http://www.jcp.org/en/jsr/detail?id=168 portlets like content browser, editors and content administration portlets.

Criteria

Meritocracy

The community around JCMS is not yet fully defined so no formal community rules are formally enforced, however given the committers ties and experience with current Apache projects, all common Apache community rules and guidelines are ccurrently used de facto and will be applied within the JCMS community.

Community

There is not yet a JCMS community but there is a huge amount of demands on the Jetspeed mailing for this kind of tools. So, we can expect that the JCMS community will be mainly the current Jetspeed community. Due to the fact that JCMS will support Webdav, a lot of Slide users will be also interested by JCMS.

Core Developers

Currently, there are 2 developpers, one of them having a large experience at Apache.

Alignment

The initial code base is targeted to run within Jetspeed, but the goal is to allow the framework to run on any JSR-168 compliant portal solution and any kind of java application like web services, .... The services can be running on any Spring or PicoContainer applications and the JCMS portlets will be JSR-168 compatible.

Warning Signs

Orphaned products

The framework being proposed is an evolution of 2 different works made by Christophe Lombart and David Sean Taylor. Last year, David build a CMS solution for the BBC and Which Online in the UK and at the same time, Christophe build a document management application for the European Commission.

After some discussions, they realised the interest to build a common version of their work and publish it to the open source community.

Inexperience with open source

Both developers have experience working with open source projects. David Sean Taylor has experience as committer on other Apache projects and PMC member of Apache Portals.

Homogenous developers

The current list of committers includes developers from different companies. The committers are geographically distributed across the U.S. and Europe. They are experienced with working in a distributed environment.

Reliance on salaried developers

Christophe Lombart working for Sword Technologies plan to use JCMS in the last year quarter. David Sean Taylor is self-employed, with no current contracts using JCMS. However he plans to integrate JCMS into J2 to build out of the box CMS solutions at Jetspeed.

No ties to other Apache products

As described in the Alignment section, this framework already has ties to many Apache products. The framework is also already license-compatible with Apache products; in fact, it is currently licensed under the Apache License 2.0.

A fascination with the Apache brand

The committers are intent on developing a strong open source community around the JCMS framework; Given its close relationship with Jetspeed-2 and Pluto and reliance on Slide, we believe that hosting this community within Apache Portals TLP will provide the best synergies.

Scope of the subprojects

The JCMS project can be split into 3 subprojects :

1. The JCMS services : all JCMS services are simple POJO components which can be running into different containers.

The core JCMS services are :

  • The Model Service.
  • The Version Service.
  • The Security Service.
  • The Search Service.
  • The Index Service.
  • The Workflow Service.
  • The Event handler Service.

The persistence service (this is the key component which will map the JCMS object model into the underlying model used to access a specific content store).

2. The JCMS engines : The target of this subproject is provided nice integration with existing container frameworks like Spring, PicoContainer, EJB, ...

3. The JCMS portlets : This target will provide a set of JSR-168 compatible portlets grouped into different portlet categories : content browser, content viewer, editor & content administration.

Identify the initial source from which the subproject is to be populated

The initial source will be donated by Christophe and David. A snapshot can be found here:

http://www.bluesunrise.com/jetspeed-2/jcms2.zip

Identify the ASF resources to be created

mailing list(s)

  • jcms-ppmc via incubator.apache.org (with moderated subscriptions)
  • jcms-dev via incubator.apache.org
  • jcms-user via incubator.apache.org

Subversion repositories

  • incubator/jcms

Jira

  • JCMS project with categories for Core, Engines, Portlets, Docs

Identify the initial set of committers

  • Raphaël Luta

    Aptiwan

    ASF, Portals

    David S. Taylor

    Bluesunrise

    Portals

    Christophe Lombart

    Sword Technologies

Identify Apache sponsoring individual

JcmsProposal (last edited 2009-09-20 23:05:28 by localhost)