12
Steering OTB: an introduction to the new OTB PSC Welcome, agenda, useful information OTB development team 3 - 5 june 2015, Toulouse

ORFEO ToolBox Project Steering committee

  • Upload
    otb

  • View
    52

  • Download
    3

Embed Size (px)

Citation preview

Page 1: ORFEO ToolBox Project Steering committee

Steering OTB: an introduction to the new OTB PSCWelcome, agenda, useful information

OTB development team

3 - 5 june 2015, Toulouse

Page 2: ORFEO ToolBox Project Steering committee

Introduction

The aim of this presentation is:

I To describe how Orfeo ToolBox project worked until PSC creation

I To explain what the PSC is and how it works

I To sketch the possibilities offered by this new, more open governance

Page 3: ORFEO ToolBox Project Steering committee

How OTB worked before PSC: the benevolent dictatorship dynasty

Who makes feature requests

I Users from Orfeo CNES program (main funding source for 8 years)

I CNES team (based on feedback from ml and orfeo)

I Users from mailing list

Who decides

I CNES team (b.d.: Jordi, then Jordi + Emmanuel, then Jordi + Manuel, thenJulien + Manuel)

I With the support of CS dev team

Who actually writes code

I CS dev team (funded by CNES, reconducted through 4 consecutive call fortenders) at 75%

I CNES team at 20%

I Contributors at 5% (most ofthen goes through CNES or CS dev team)

So CNES gathers, decides and funds everything (hopefully with consideration for usersand contributors)

Page 4: ORFEO ToolBox Project Steering committee

The making of (a release of) Orfeo ToolBox

1. CNES decides what major changes (features and infra) will be made

2. The dev team starts iterating scrum sprints (around 2 weeks each)

3. At each sprint end, CNES reviews with the dev team the next sprint and releasescopes to accomodate urgent/new requests

4. After 4 to 6 sprints (or when the scope is achieved to a satisfactory level), theRelese Candidate is announced

5. If no major issue shows up, the Release Candidate becomes the final release

Page 5: ORFEO ToolBox Project Steering committee

Ok, but this worked for 8 years, why changing now?

For transparency

I Users do not know the mid-term directions of the project

I Users are often informed afterward of major changes

I No insight on motivations behind some decisions

I Difficult to participate in decision making

I OTB is a big project now, someone may want to get involved more deeply

For more, easier contributions

I Question: what is the process for contributing code to OTB?

I Question: how can I know if my contribution will be accepted?

I Question: if I contribute a lot, do I get a grip on decision making?

For sustainability

I What if, one day, CNES stops funding OTB at the current level?

I We need new actors to be able to get involved in OTB!

Page 6: ORFEO ToolBox Project Steering committee

Introducing Orfeo ToolBox Project Steering Committee (starts march 2015)

The PSC statementVerbatim from the PSC status:

I The aim of the OTB Project Steering committee (PSC) is to provide high levelguidance and coordination for the ORFEO ToolBox.

I It provides a central point of contact for the project and arbitrates disputes. It isalso a stable base of ”institutional knowledge” to the project and tries its best toinvolve more developers.

I It should help to guarantee that OTB remains open and company neutral.

... and its scope

I Roadmaps

I Communication

I Users support and documentation

I Contribution management

I Release planning

I Handling of legal issues

Page 7: ORFEO ToolBox Project Steering committee

PSC Members and roles

I All members have equal standing and voice in the PSC

I The PSC seats are non-expiring

I PSC members may resign their position, or be asked to vacate their seat after aunanimous vote of no confidence from the remaining PSC members

I Members can be assigned roles corresponding to each category of the PSC scope

The expectations on PSC members are:

I Be willing to commit to the OTB development effort

I Be responsive to requests for information from fellow members

I Be able and willing to attend on-line meetings

I Act in the best interests of the project

Page 8: ORFEO ToolBox Project Steering committee

Decision making in PSC

When is a vote required?

1. Request for changesI Anything that could cause backward compatibility issuesI Adding substantial amounts of new codeI Changing inter-subsystem APIs, or objects

2. Addition or removal of PSC members (including the selection of a new Chair)

3. Release process

4. Changing PSC rules and processes

5. Anything else that might be controversial

Voting process

I Proposals are written up and submitted on the otb-developers mailing list fordiscussion and voting

I Proposals are available for review at least 3 days before vote is closed

I Anyone is encouraged to comment and vote, though ultimately only PSCmembers vote are counted

I Vote are casted by +1/-1. Acceptance if at least +2 and no veto (-1)

Page 9: ORFEO ToolBox Project Steering committee

Current PSC members

In March 2015, CNES nominated 3 persons deeply involved in OTB as initial PSCmembers. They are responsible for defining PSC rules and establishing a fullyfunctioning PSC.

Name Affiliation RoleManuel Grizonnet (chair) CNES Infrastructure, release planning, legal issuesJordi Inglada CNES/CESBIO User support and documentation, roadmapsJulien Michel CNES Communication, contributions

?!?! ... but wait!

I This is (almost) the full dynasty of benevolent dictactors!

I Yes, but ...

Page 10: ORFEO ToolBox Project Steering committee

... There are new possibilities! (1/2)

You can become a PSC member

I Anyone showing a substantial and ongoing involvement in OTB is eligible to benominated to the OTB PSC

I The PSC is not only composed of OTB developers as there are many ways to joinand contribute to the project

I Remember: an active membership will take time and effort

I Note that the PSC is not a legal entity!

You can submit RFCs

I If you have an important contribution you want to make, you can submit a RFC

I It will be discussed, decided, and logged publicly

I You will be able to discuss a target release for the contribution to be included

I Remember: contributions 6= feature requests!

I An alternate way for contributions exists: remote modules (see dedicatedpresentation)

Page 11: ORFEO ToolBox Project Steering committee

... There are new possibilities! (2/2)

You can comment on RFCs

I You are encouraged to comment every RFC you want

I ... or even vote!

I Ultimately only PSC members gets their vote counted, their decision shall reflectthe opinions from all participants

You can submit feature requestsOne member of the PSC is responsible for roadmaps and will receive and track featurerequests

You know what is going onNew RFCs, releases, new PSC members, status ... everything is discussed and loggedpublicly

Page 12: ORFEO ToolBox Project Steering committee

Final thoughts

I The PSC is young (the entity, not its members ...)

I It is a tool that can be adapted to best serve the interest of Orfeo ToolBox

I Anything can be discussed and modified: processes, scope, rules, members ...

I We hope to be more than 3 members in the future!