DPDK patches and discussions
 help / color / mirror / Atom feed
From: "O'Driscoll, Tim" <tim.o'driscoll@intel.com>
To: "dev@dpdk.org" <dev@dpdk.org>
Subject: [dpdk-dev] Technical Steering Committee (TSC)
Date: Thu, 14 May 2015 20:55:23 +0000	[thread overview]
Message-ID: <26FA93C7ED1EAA44AB77D62FBE1D27BA54D43080@IRSMSX102.ger.corp.intel.com> (raw)

At Tuesday's Beyond DPDK 2.0 call, one topic we discussed was decision making and whether we need a Technical Steering Committee (TSC). As a follow-up to that discussion, I'd like to propose that we create a TSC for DPDK to guide the long-term strategic direction of the project.


Justification
-------------

The role of the Maintainer is to be the gate-keeper for the project, and to only accept contributions that are properly implemented, properly reviewed, and consistent with the agreed project scope/charter. However, it shouldn't be the responsibility of the Maintainer to be the final decision maker (after community discussion) on issues affecting the strategic direction of the project. Instead, this should be determined by a higher level body that's representative of the DPDK community.

Having a TSC should help to provide a clear direction/strategy for the project, and help to resolve complex issues which don't reach a consensus on the mailing list in a timely manner.

There were arguments at the call that a TSC is not required. The alternative view though is why would we not put one in place? The TSC could review its own progress after 6 months, and if the members don't consider it to be productive, then it could be disbanded. I see little effort and zero risk in trying this, with the potential gain of a clearer decision making process and a better defined project strategy. 


Scope
----- 

Issues the TSC should consider should include:
- Project scope/charter. What is and isn't within the scope of the project? What happens if somebody wants to upstream a new library/capability and it's not clear whether it fits within DPDK or not? As a random example, if somebody wanted to upstream a DPDK-enabled TCP/IP stack to dpdk.org, should that be accepted or rejected?
- Performance vs functionality considerations. If we need to make a change and there's an unavoidable performance impact to doing so (maybe something like extending the mbuf again), does that change get accepted or not? In most cases you can probably work around situations like this by making them optional, but that might not always be possible. If it's not, who decides whether performance or functionality is more important?
- Replacing existing functionality versus adding new alternatives. An example of this might be Cuckoo Hash. Does that replace the existing hash implementation, or should it be provided as an alternative? Who decides this? That could be more of an operational issue, but it's borderline.
- Competitive Positioning. Monitor the competitive landscape and determine any impacts to future DPDK strategy. 
- Unresolved issues. Provide a decision on issues that don't reach a consensus on the mailing list in a timely manner.


Composition
-----------

Composition of the TSC should reflect contributions to the project, but be balanced so that no single party has an undue influence. It should also be kept to a manageable size(maybe 7?).

The TSC should elect its own chair, who would have the deciding vote in the event that the TSC was deadlocked. Once in place, the TSC should approve any new members.

Specific details on membership can be discussed and agreed later, if we agree on the creation of a TSC.

             reply	other threads:[~2015-05-14 20:55 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-14 20:55 O'Driscoll, Tim [this message]
2015-05-19 14:43 ` Stephen Hemminger
2015-05-19 15:34   ` Neil Horman
2015-05-19 15:45     ` Thomas Monjalon
2015-05-19 17:34       ` Neil Horman
2015-05-19 20:21         ` O'Driscoll, Tim
2015-05-20 19:04 ` Dave Neary

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=26FA93C7ED1EAA44AB77D62FBE1D27BA54D43080@IRSMSX102.ger.corp.intel.com \
    --to=tim.o'driscoll@intel.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).