The N-brain rule

Glenn Brunette's post on the Two Man Rule reminded me of a topic I've been meaning to write about for a while. 

One of the successful teams on Junkyard Wars/Scrapheap Challenge was the NERDS.  They had a "two brain rule" for design changes -- no team member could unilaterally make a design change mid-build without another team member agreeing to the change.

Inside the solaris development community, we have a fairly strict N-brain rule, with N being 3 (or greater) depending on the scale and nature of the change.
This applies to all changes, regardless of how small.

N changes depending on a bunch of factors:
  • How big of a change it is
  • How obvious a change it is
  • When in the release cycle it's happening -- late in the release cycle we require two code reviewers.
Our development processes are "shrink to fit"; but the minimal case has N=3. 

Brain #1 is the engineer responsible for the change.
Brain #2 is the code reviewer.
Brain #3 is the "RTI" (Request to Integrate) approver.

In short, unless you can convince two (or more) other people that your change makes sense, is worth making, and is fully baked, it has no business being in a general purpose system like Solaris.

Changes with more significant impact require other levels of review.. more on that later.

UPDATE:  to clarify based on a question I got out of band: in the reduced case shown above, none of the people in the review process are managers.
Comments:

Post a Comment:
  • HTML Syntax: NOT allowed
About

sommerfeld

Search

Top Tags
Archives
« April 2015
SunMonTueWedThuFriSat
   
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
  
       
Today