I’ve been working on the OpenStack DefCore process for nearly 3 years and our number #1 challenge remains how to explain it simply.
10 days ago, the DefCore committee met face-to-face in Austin to work on documenting the process that we want to follow (see Guidelines). As we codify DefCore, our top priority is getting community feedback and explaining the process without expecting everyone to read the actual nut-and-bytes of the process.
I think of it as writing the DefCore preamble: “We, the community, in order to form a more perfect cloud….”
I don’t think we’ve reached that level of simplicity; however, we have managed to boil down our thinking into nine key points. I’m a big Tufte fan and believe that visualizations are essential to understanding complex topics. In my experience, it takes many many iterations with feedback to create excellent graphics. This triangle is my first workable pass.
An earlier version of these points were presented to the OpenStack board in December 2014 and we’ve been able to refine these during the latest DefCore community discussions.
We’re interested in hearing your opinions. Here are the current (2015-Feb-22) points:
- COMMUNITY INVOLVEMENT
- MAPPING FEATURE AVAILABILITY: We are investing in gathering data driven and community involved feedback tools to engage the largest possible base for core decisions. This mapping information will be available to the community.
- COMMUNITY CHOSEN CAPABILITIES : Going forward, we want a community process to create, cluster and describe capabilities. DefCore bootstrapped this process for Havana. Further, Capabilities are defined by tests in Tempest so test coverage gaps (like Keystone v2) translate into Core gaps that the community will fill by writing tests.
- TESTS AS TRUTH: DefCore could expand in the future, but uses Tempest as the source of tests for now. Gaps in Test will result in DefCore gaps. We are hosting final documents in the Gerrit, using the OpenStack review process to ensure that we work within the community processes.
- CLEAR RESULTS (PASS-FAIL): Vendors must pass all required core tests as defined by this process. There are no partial results. Passing additional tests is encouraged but not required.
- VENDORS SELF-TEST: Companies are responsible for running tests and submitting to the Foundation for validation against the DefCore criteria. Approved vendor reports will be available for the community.
- APPEAL PROCESS / FLAGGED TESTS: There is a “safety valve” for vendors to deal with test scenarios that are currently difficult to recreate in the field. We expect flags to be temporary.
- SCORING BASED ON TRANSPARENT PROCESS (DEFCORE): The 2015 by-laws change requires the Board and TC to agree to a process by which the Foundation can hold OpenStack Vendors accountable for their use of the trademarks.
- BOARD IS FINAL AUTHORITY: The Board is responsible for approving the final artifacts based on the recommendations. By having a transparent process, community input is expected in advance of that approval.
- TIMELY GUIDANCE: The process is time sensitive. There’s a need for the Board to produce DefCore guidance in a timely way after each release and then feed that result into the next cycle. The guidance is expected to be drafted for review at each Summit and then approved at the Board meeting three months after the draft is posted.