Skip to content

Project Incubation Process

natashadsilva edited this page Apr 4, 2016 · 3 revisions

IBM Streams Projects will have the following process for project Incubation.

There are two types of projects:

  • Incubation Project - projects that are new and working towards graduating to IBMStreams project.
  • IBM Streams Project - projects that have matured and has proven to be viable

Incubation Project

When a new project is first created, the project will be in incubation phase.

IBMStreams Project

An IBMStreams project is a project that has matured enough where it has proven to be viable. To graduate from incubation, project needs to demonstrate the following: * Project have at least one stable release (not pre-release), and follows semantic versioning (http://semver.org/) * Project is properly documented * Project has samples and instructions to help clients get started easily * Project has been sufficiently tested (functional, stress, performance tests, etc.) * Project has instructions on how to get started with development and contributing to project. * Project has a website that contains information and documentation of the project (e.g. github.io pages) * Project is encouraged to have a clear release plan * Project must have at least one active committer - where committer actively work on new features and/or provide support to the project.

From Incubation Project to IBMStreams Project

To graduate from incubation to IBMStreams project, project committers will: * Open an issue in the IBM Streams Administration Repository * In the issue, describe how the project has met criteria to graduate from incubation. * It is recommended to have a `GRADUATION_STATUS.md` file at the root of the project to maintain status, copied from : https://github.com/IBMStreams/administration/blob/master/TEMPLATE_GRADUATION_STATUS.md * Managing Committee members will review the proposal and vote * If there are enough +1 votes, then the project can graduate from incubation to IBMStreams project.

Tagging Projects

For each project, we will add a tag on the project page to identify if the project is in incubation phase.