Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 28 Next »

Draft

This is a draft document being circulated for review and comments

Inspired by Apache, via Globus

Nomenclature

Process

The JA-SIG Incubation Process is holistically the activities and mechanism whereby open source software projects are proposed, incubated, evaluated, progressed, and become full-fledged JA-SIG sponsored projects

Incubation WG

The Incubation Working Group (Incubation WG) are the people who oversee this process. (Also known as IWG)
~susan.bramhall@yale.edu to be initial chair of IWG

Mentor

The Mentor is a particular person assigned by the Incubation Working Group to shepherd a candidate project through incubation

Board

The JA-SIG Board leads JA-SIG, overseeing and supporting the Working Group and the process they execute

Projects

Software to incubated, progressing from Candidate Project status through in-incubation Incubated Project status and ideally emerging as a fully-fledged Sponsored Project.

The JA-SIG Incubation Working Group (IWG)

The JA-SIG Incubation Working Group will oversee the process through which new projects move from a Candidate Project to an accepted Incubated Project, through review, to a fully sponsored project. The JIWG is responsible for

  • assisting proposed projects in conforming to JA-SIG guidelines
  • assigning a Project Mentor, a member of the community assigned to help the Incubated Project reach acceptance
  • evaluating progress of the Incubated Project on a regular (quarterly?) basis and recommending escalation to a sponsored project, continued support, or retirement, according to established criteria

Process

This process describes how a candidate project would progress from submission to full acceptance as a JA-SIG Project.

1. Incubation Requested

A Candidate project is proposed to the Incubation WG via a proposal sent to incubation@ja-sig.org which contains basic information, and answers the following set of qualifying questions:

  1. A proposed name for the project
  2. The short preface for the mailing lists, if this project is accepted (*-dev, *-user, etc).  Incubating portlets will use the existing portlet mailing lists.
  3. A proposed Project Lead, with contact information
  4. A list of the proposed initial committers for the project
  5. An overview of the aims of the project
  6. A technology overview
  7. An overview of any current user base or user community
  8. An overview of how the project relates to other parts of JA-SIG
  9. A summary of why the project would enhance and benefit higher education
  10. A pointer to any current information (for example, an existing Web page) for the project

This proposal would be expected to be less than 3 pages in length.

2. Review of Submission

The Incubation WG

  1. Discuss the project
  2. Vote on its acceptability

3. Acceptance as a Project under Incubation

Once a project has been accepted for incubation, JA-SIG Incubation working group (IWG) would then:

  1. Accept the project, which officially becomes a candidate project in incubation under the auspices of JA-SIG
  2. Nominate a Mentor for the project, typically a JA-SIG community stakeholder who will act as a bridge between the IWG and the project (mentor would also then serve as a member of the IWG)
  3. Assist the candidate project in the initial start-up to use the JA-SIG resources like SVN, Wiki, Issue Tracker, and mailing lists. These resources should be set up in JA_SIG infrastructure unless IWG decides otherwise. 
    1. SVN: It is expected that new portlet projects would begin in the sandbox area of the JA-SIG SVN and move to the portlets SVN when promoted to sponsored status.  Other new projects would begin a new project under the JA-SIG SVN. 
    2. JIRA: Each incubating project would get its own JIRA project.
    3. WIKI: Each incubating project would have its own WIKI space on the JA-SIG wiki server.  Incubating portlets will use the exisitng portlet space.
    4. Lists: Incubating portlets will use the existing portlet mailing lists while each regular projects will have its own mailing list.
  4. Assist the candidate project in performing appropriate licensing, contribution, trademark, and other legal arrangements

The candidate project should now:

  1. Indicate that the project is in incubation (though not yet fully sponsored/supported by JA-SIG)
  2. Display the JA-SIG logo to indicate affiliation
  3. Use JA-SIG infrastructure for development and collaboration unless an alternate infrastructure is agreed by IWG to be more appropriate.

Note: Releases of projects in incubation are not officially endorsed by JA-SIG

The minimum requirements that a project must meet to exit the state of incubation (and should be working on fulfilling as part of the incubation process) are:

Legal

These requirements are dependent on approval of a JA-SIG licensing policy. 

  • All code properly licensed
  • No non-licensed or license-incompatible dependencies in the code base;
  • Software license grant complete;
  • Contributor License Agreements on file (both individual and corporate agreement);
  • Copyright agreement in all source files
  • Check of project name for trademark issues.  JA-SIG will assist in trademark registration for project name.

Community

  • Demonstrate an active and diverse development community. Preferably the list of original committers will have grown beyond the original set (and institution) in the proposal, but this is not a requirement.
  • Demonstrate that the project has a reasonable expectation for support in the future, for example, if any single contributor leaves the project continued support will exist;
  • The above implies that new committers are admitted according to JA-SIG practices;

Governance

  • A project steering committee has been created to oversee the project or the project committers and an existing steering commitee agree that an existing steering committee will steer the project.  In the case of portlets a new steering committee is probably not required.  Initially the JA-SIG uPortal Steering Committee will oversee portlets as well.  Once the process grows to large for that committee the intention is to appropriately group portlets for the process of governance. 
  • JA-SIG voting practices have been adopted and are standard practice
  • The project has weathered and resolved conflicts where they have arisen. Good-natured and well-meaning disagreement of vision, requirements, and implementation are a reality of community source development. JA-SIG desires that incubated projects work through these "growing pains", as the software is developed and additional committers and adopters become involved, before emerging from incubation. Incubation provides an opportunity to face conflict with the assistance of an Incubation Mentor and the support of the Incubation Working Group. 
  • Release plans are developed and executed in public by the committers
    • At least one release has occurred during the Incubation process.
    • Engagement by the incubated community with the larger JA-SIG community.  The incubated project may engage on a technical level by integrating with an existing JA-SIG projects.  It is also desirable for the prospective project to have been presented / discussed at the JA-SIG Unconference or annual conference.

Alignment & Synergy

  • Integration with other JA-SIG projects where appropriate
  • Develop synergistic relationship with other JA-SIG projects wherever possible

Infrastructure

  • SVN module has been created on JA-SIG server
  • Three required mailing lists have been used
  • Issue tracker is being used (JIRA)
  • Roadmap for project is present in Confluence
  • Project website is current
  • All non-sensitive (i.e. passwords, etc) information in the above tools is publicly accessible

4. Periodic Review

Projects in incubation will undergo periodic reviews (at least quarterly) which may have one of four outcomes:

  1. The project will be promoted into a fully sponsored JA-SIG project
  2. The project will remain in Incubation 
  3. The project will be asked to hibernate after a period of little activity (it may move out of hibernation at a later date)
  4. The project will be asked to retire due to lack of progress

5. Promotion to full-fledged product

The project may be promoted to a fully sponsored JA-SIG project when it meets Legal, governance, community, alignment & synergy and Infrastructure requirements outlined above.  When requirements are met the IWG will recommend to the board that the project be promoted to sponsored status.  Final acceptance of sponsored project must be approved by the board.

Notes

Since there are a number of other sites (Google, SourceForge) where a project can get started before applying for JA-SIG incubation, JA-SIG does not currently offer a "contrib" space for projects not yet in the incubation stage. 

05-06-2008 Note that this policy has been revised as of the St. Paul JA-SIG Conference discussions on this topic.  A "contrib" will be made available, after all.  -jjmarkow 

  • No labels