Jump to: navigation, search

Difference between revisions of "Development Resources/HOWTO/Creation Reviews"

((6) The Review Process)
Line 119: Line 119:
# after receiving check-in approval from Eclipse Legal via IPZilla, you can check in the initial code contribution and your project is alive and well.  
# after receiving check-in approval from Eclipse Legal via IPZilla, you can check in the initial code contribution and your project is alive and well.  
''This page is moderated by Anne Jacko and Bjorn Freeman-Benson (Eclipse Foundation)''
''This page is moderated by the EMO''
[[Category:How to Contribute]]
[[Category:How to Contribute]]

Revision as of 10:25, 2 November 2009

Guidelines for Creation Reviews

See "6.3.1 Creation Reviews" and "6.3 Reviews" in the Eclipse Development Process.

The purpose of the Creation Review is to assess the community and membership response to the proposal, to verify that appropriate resources are available for the project to achieve its plan, and to serve as a committer election for the project's initial Committers. The Eclipse Foundation strives not to be a repository of code dumps and thus projects must be sufficiently staffed for forward progress.

(1) What are the Requirements?

As a project proposal leader, you may ask the question "when can we hold a Creation Review for our proposal?"; the primary answer is: "we will hold the Creation Review as soon as you are confident that you have sufficient community support for the proposal". The EMO will assist you in making that decision using (at least) the following criteria: (Note that these criteria are mostly qualitative and thus - except for a few cases - there are no "right answers". The expectation is that proposers will have good answers for questions around these criteria in order to pass the Creation Review.)

REnough Developers.
The project has sufficient committed developers to achieve its goals. The Eclipse Foundation is not a place to "abandon in public" code; rather, the Eclipse Foundation strives to have active projects with active communities and thus enough developers to move the project along.

RClear and Concise Description.
If the community found any aspects of the proposal confusing, unclear, or using unfamiliar jargon, those areas must be clarified. This is a hard and fast requirement: because the Eclipse community must be able to evaluate the proposal. To do that, they must be able to understand the proposal and thus it must be clear and straightforward and free of marketing-speak.

Successful Eclipse projects extend and enhance the Eclipse tool suite, and thus successful Eclipse projects are those that collaborate with existing Eclipse, or other open source, projects. Again, it can be hard to start a collaboration before demonstrating the technology, but at the same time it is never too early to start discussing collaborations with other projects. Additionally, it never hurts to join and help an existing project to start establishing those social networks that will make future collaborations on the new project possible.

For each place this new project overlaps an existing Eclipse project, what does the overlapee say about the potential overlap? (Note that the overlapee's opinion is not required to be positive, but that it is important for new projects to understand where they fit and for existing projects to understand what new developments might be coming along.)

RExtensible frameworks and exemplary tools.
Is this project visibly committed to producing both extensible frameworks and exemplary tools built on top of those frameworks? Eclipse is dependent on its projects producing both frameworks for the ecosystem to extend, and end-user tools to attract the critical mass of users which enable the ecosystem to exist.

RSufficient Time for the Community.
The minimum time from posting a proposal to a Creation Review is no less than two weeks. Anything less than two weeks of general accepted business days would not be giving the Eclipse membership sufficient notice of new initiatives.

GEvidence of Activity.
Proposals that are more than three months old without having been created as a Project are, perhaps, not sufficiently supported by the community as the original proposers believed. Thus proposals older than three months have a somewhat greater burden of proof that they will be viable Eclipse Projects.

(2) Mentors

RProposals are required to have at least two Mentors before scheduling a Creation Review (see "6.1 Mentors"). The name, corporate affiliation(s), and current Eclipse projects/roles must be listed in the on-line version of the proposal and in the docuware for the Creation Review.

The proposal leads are responsible for recruiting the mentors. Mentors are not recuited or assigned by the EMO. The EMO will provide advice on who the proposal leads might approach as mentors, but neither the proposers nor the suggested mentors are obligated to act on that advice.

Mentors must be existing members of the Architecture Council (see the membership page).

(3) Committers

RThe Creation Review acts as the new committer election for the initial Committers and thus the on-line version of the proposal and the docuware must contain the same level of nomination justification and background as an election would.

The Creation Review archival documents must include short nomination bios of the proposed initial committers. These bios should discuss their relationship to, and history with, the incoming code and/or their involvement with the area/technologies covered by the proposal. The goal is to help keep any legacy contributors connected to new project and explain that connection to the current and future Eclipse membership, as well as justify the initial Committers' participation in a meritocracy. (See William Rowe's similar comment at Apache).

(4) What are the Best Practices?

In addition to the required pre-requisites (1 above), the Eclipse membership is interested in a number of "evidence of best practice" indicators.

Does the project have a community of contributors and users, outside the core developers, who are willing to work towards making this a success? This is a bit of a Catch-22 situation because it is sometimes hard to attract a community before any milestones or releases, but it is also true that projects with limited developers and even fewer users tend not to have much technical impact.

Is this a single company project or a multi-organization effort? If all the committers and contributors are in the same organization or have financial ties to the same organization, the project is at a greater risk of being de-staffed. Brand new projects are not required to be diverse, but projects cannot graduate from incubation without appropriate diversity.

GTechnical Scope.
Does the project have a technology scope and focus which will have a reasonable likelihood of success? Projects that are too big will definitely fail; projects that are too small are unlikely to be interesting.

GMaturity Plan.
The proposal needs to define the destination/end-game/ultimate objectives for the project. What is the expected time scale for this project? Which is the destination top-level PMC for this project? For example, does this project expect to investigate technology for two years and then have proven itself sufficiently to be integrated into the Platform as a component? Does this project expect to be integrated into a the Web Tools Platform as a sub-project (and thus continue to exist, but under that PMC)? Etc. Note that this section is about a plan, not a commitment, but it does need to be a realistic and believable plan.

GFollowing Eclipse Rules.
The Eclipse Foundation attempts to minimize the number of restrictions and rules placed on projects but there are a few. Because it is the responsibility of each Eclipse committer and project lead to understand and implement this minimal set of standards, a proposal team that shows a disregard (either deliberate or through a lack of effort) for these policies (such as the press guidelines) does not endear themselves to the Eclipse community.

(5) Preparing the Docuware

The "docuware" for a Review has traditionally been a slide deck however there is no reason to use slides: a short report/document would work equally well if not better (reports are information dense relative to slides, and that's a good attribute).

RIn any case, the docuware must be/have:

  • Neutral File Format. The docuware must be published in an operating-system neutral file format. PPT and DOC files are not considered neutral. PDF is currently the best choice and thus we require docuware to be published in PDF. The EMO can convert Open Office and Microsoft Office to PDF if you are unable to do so.
  • Archival Quality. The docuware must be comprehensible and complete on its own without requiring explanation by a human presenter. Archival quality is required because the docuware will be available on the eclipse.org website in perpetuity; future Eclipse users, adopters, and even new project committers will consult it long after the review conference call has been completed.
  • Correct Copyright and License. The docuware is being written (and thus copyrighted) by you, not by the Eclipse Foundation, and thus the copyright statement needs to be by you (or your employer). Similarly, the content should be licenses under the EPL.
  • Usable for a Phone Conversation. Remembering that most conversations about the docuware will be done over voice, email, IM, or other electronic media - not in a face-to-face situation - the docuware must have page and/or paragraph numbers so that the two parties in conversation can easily refer to the same section or slide.

RThe docuware must cover the issues from (1)-(4) above. In addition, it must include:

  • Brief, executive summary of the project proposal
  • Comments about the community response to the proposal both positive and, if any, negative
  • Is this an existing project that is moving some or all of its code to Eclipse?
    If yes, 
          a)  Describe extent of move (e.g. some, all, module)
          b)  Where is the code hosted?
          c)  Please list existing domain names associated with this code:  ___________________
          d)  Please list any trademarks that may apply to the project name:  ___________________
          e)  What license was it previously hosted under?
          f)  Can we get a list of all past and present contributors and committers?
  • Initial implementation focus - the next step after the Creation Review will be full speed ahead implementation, so the project team had better have an initial implementation direction
  • Confirmation that the project members and new candidates have read and understand the Eclipse Development Process and their responsibilities towards the community and especially in regards to IP issues.
  • Future directions - it's always a good idea to have some idea of where the project is planning to go.

(6) The Review Process

Once the review content has been created, the operational side of a Creation Review is:

  1. Schedule the review by sending email to emo@eclipse.org. (Depending on when you read this, you may have already completed this step.)
    • Reviews are scheduled at most twice a month, usually on Wednesdays, usually in the morning (USA)/afternoon (Europe)/night (Asia).
    • Reviews are grouped up to four at a time.
  2. At least one week in advance of the review, you (the proposal lead) sends the docuware to emo@eclipse.org for posting.
    • The EMO posts the docuware via the website (through the wonders of database-driven web pages, the docuware is automatically linked from the proposal and from the review notice).
  3. The EMO announces the review and the "official review communication channel" (usually the newsgroup):
    • via the eclipse.org/projects web page (as soon as the review is scheduled)
    • via the reviews and announcements RSS feed (as soon as the review is scheduled and again when the docuware is posted)
    • via email to the committers and membership-at-large mailing lists (at least one week in advance of the review conference call)
  4. If, during the review period, any Eclipse member requests, via the official review communication channel, that the conference call be held, then it will be held at the scheduled time. If, however, no Eclipse members so requests, then the call is skipped and the creation review succeeds by default.
  5. If the conference call is held at the previously scheduled date and time:
    • The proposal lead must attend the call.
    • The proposal's mentors must attend the call.
    • These calls tend to be short (15-20 minutes). The purpose of the call is for the team to answer any questions from the community that have not otherwise been answered by the written material and/or discussions in the newsgroup.

(7) After a Successful Review

After the successful review, and the approval of the Creation Review by the EMO:

  1. the EMO will ask you to fill out the New Project Provisioning Form
  2. once your website CVS directory is created, you will provide content for the webpages including:
    1. The incubation graphic so that your new project is allowed to participate in the Parallel IP process.
    2. The project status infrastructure and standard left menu
  3. send email to emo@eclipse.org asking for your project to be marked as "incubation (conforming)" in the Foundation's project database. The EMO will check your website for conformance as per the Board's requirements - this is a required step for participation in the Parallel IP process.
  4. you submit a Contribution Questionnaire for your initial code contribution using the portal. Note in the comments that you are requesting a [http://www.eclipse.org/projects/dev_process/parallel-ip-process.php Parallel IP process approval to check the initial code into the source code repository before the entire IP review is completed.
  5. after receiving check-in approval from Eclipse Legal via IPZilla, you can check in the initial code contribution and your project is alive and well.

This page is moderated by the EMO