Outline of proposed 2.0 language specification development process - STIXProject/specifications GitHub Wiki

  1. Performed by the SC as a whole and its various members (this set of activity could occur pre-official 2.0 kickoff and in parallel with work on 1.2.1)
  2. Codify relevant use cases for STIX (these will be captured on the STIX wikis) 1. Identify potential use cases 1. Codify rough initial outline for each use case 1. Evaluate and coordinate use case discussion at the TC level 1. Identify initial consensus scoping of use cases 1. Iteratively discuss and refine use cases while codifying their evolutionary detail 1. Confirm consensus scoping of use cases
  3. Each contributor (this set of activity could occur pre-official 2.0 kickoff and in parallel with work on 1.2.1)
  4. Review current content of trackers STIXProject/schemas STIXProject/specifications (NOTE: the language specification relevant issues will likely eventually be merged into the STIXProject/specification tracker) 1. Add new entries for issues you want to raise that are not currently present 1. Identify issues that you think should be in scope for consideration for 2.0 (NOTE: This does not mean assigning a STIX 2.0 label to the issue within the tracker. That will need to be done at the SC level as described below)
    • We will need to work on a technical mechanism for supporting centralized coordination of this but for now feel free to capture it yourself in whatever form is most convenient 1. Assert your prioritization of issues based on importance
    • We will need to work on a technical mechanism for supporting centralized coordination of this but for now feel free to capture it yourself in whatever form is most convenient 1. Contribute initial thoughts on issues into trackers
  5. SC as a whole (this set of activity would be post-official 2.0 kickoff and the basis of the formal 2.0 work)
  6. Select work product editors
  7. Review set of issues suggested as in scope for 2.0 1. Identify consensus scoping of issues for consideration 1. Identify and eliminate unnecessary duplication between issues (merge/consolidate where appropriate) 1. Identify cross-dependencies and impacts between in-scope issues 1. Identify use cases relevant to each issue 1. Identify consensus prioritization of in-scope issues based on importance 1. Prioritize in-scope issues based on dependence (which issues should be resolved before others as their resolution impacts the others) and importance
  8. Based on priority, focus on 1-3 issues at a time discussing on list, iterating on potential refinements/changes and capturing specifics into trackers 1. For proposed refinements/changes identify use case justification as well as use cases negatively affected 1. As each issue settles, assert initial consensus and move on to other issues
    1. As later issues settle towards consensus their discussion and proposed refinements/changes may effect previously settled issues and may require they be revisited.
    2. One potential consensus may be to remove the issue from 2.0 scope consideration
  9. Once all in-scope issues have settled 1. STIX 2.0 specification work product editors capture totality of refinements/changes into specification documents 1. All SC members review STIX 2.0 specification documents containing totality of proposed refinements/changes and offer comments 1. STIX 2.0 specification work product editors discuss and iterate on comments until documents settle