<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta content="Apache Forrest" name="Generator">
<meta name="Forrest-version" content="0.8-dev">
<meta name="Forrest-skin-name" content="pelt">
<title>Project roles</title>
<link type="text/css" href="skin/basic.css" rel="stylesheet">
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
<link type="text/css" href="skin/profile.css" rel="stylesheet">
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
<link rel="shortcut icon" href="favicon.ico">
</head>
<body onload="init()">
<script type="text/javascript">ndeSetTextSize();</script>
<div id="top">
<!--+
    |breadtrail
    +-->
<div class="breadtrail">
<a href="http://www.apache.org/">apache</a> &gt; <a href="http://forrest.apache.org/">forrest</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
</div>
<!--+
    |header
    +-->
<div class="header">
<!--+
    |start group logo
    +-->
<div class="grouplogo">
<a href="http://www.apache.org/"><img class="logoImage" alt="Apache" src="images/apache-forrest.png" title="The Apache Software Foundation"></a>
</div>
<!--+
    |end group logo
    +-->
<!--+
    |start Project Logo
    +-->
<div class="projectlogo">
<a href="http://forrest.apache.org/"><img class="logoImage" alt="Forrest" src="images/project-logo.gif" title="Apache Forrest"></a>
</div>
<!--+
    |end Project Logo
    +-->
<!--+
    |start Search
    +-->
<div class="searchbox">
<form action="http://www.google.com/search" method="get" class="roundtopsmall">
<input value="forrest.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google');" size="25" name="q" id="query" type="text" value="Search the site with google">&nbsp; 
                    <input name="Search" value="Search" type="submit">
</form>
</div>
<!--+
    |end search
    +-->
<!--+
    |start Tabs
    +-->
<ul id="tabs">
<li>
<a class="unselected" href="index.html">Welcome</a>
</li>
<li class="current">
<a class="selected" href="contrib.html">Developers</a>
</li>
<li>
<a class="unselected" href="versions/index.html">Versioned Docs</a>
</li>
<li>
<a class="unselected" href="pluginDocs/index.html">Plugins</a>
</li>
<li>
<a class="unselected" href="tools/index.html">Tools</a>
</li>
</ul>
<!--+
    |end Tabs
    +-->
</div>
</div>
<div id="main">
<div id="publishedStrip">
<!--+
    |start Subtabs
    +-->
<div id="level2tabs"></div>
<!--+
    |end Endtabs
    +-->
<script type="text/javascript"><!--
document.write("Last Published: " + document.lastModified);
//  --></script>
</div>
<!--+
    |breadtrail
    +-->
<div class="breadtrail">

             &nbsp;
           </div>
<!--+
    |start Menu, mainarea
    +-->
<!--+
    |start Menu
    +-->
<div id="menu">
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Getting involved</div>
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
<div class="menuitem">
<a href="contrib.html" title="Everyone is a developer and has something to contribute">Contributing</a>
</div>
<div class="menuitem">
<a href="mail-lists.html" title="Discussion mail lists are the heart of the project: dev, user, svn">Mail lists and discussion</a>
</div>
<div class="menuitem">
<a href="issues.html" title="Issue tracker manages known issues and desired enhancements">Reporting bugs and issues</a>
</div>
<div class="menuitem">
<a href="forrest-friday.html" title="ForrestFriday monthly get-together">ForrestFriday IRC</a>
</div>
<div class="menuitem">
<a href="events.html" title="List of upcoming related conferences and meetings">Events</a>
</div>
<div onclick="SwitchMenu('menu_selected_1.1.6', 'skin/')" id="menu_selected_1.1.6Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Project</div>
<div id="menu_selected_1.1.6" class="selectedmenuitemgroup" style="display: block;">
<div class="menuitem">
<a href="guidelines.html" title="Open development guidelines to encourage participation">Project guidelines</a>
</div>
<div class="menuitem">
<a href="committed.html" title="Notes about contribution">Being committed</a>
</div>
<div class="menupage">
<div class="menupagetitle">Project roles</div>
</div>
</div>
</div>
<div onclick="SwitchMenu('menu_1.2', 'skin/')" id="menu_1.2Title" class="menutitle">Resources and Infrastructure</div>
<div id="menu_1.2" class="menuitemgroup">
<div class="menuitem">
<a href="asf-infrastructure.html" title="Explain the ASF infrastructure">Introduction</a>
</div>
<div class="menuitem">
<a href="mail-lists.html" title="Discussion mail lists are the heart of the project: dev, user, svn">Mail lists</a>
</div>
<div class="menuitem">
<a href="issues.html" title="Issue tracker manages known issues and desired enhancements">Issue management</a>
</div>
<div class="menuitem">
<a href="svn.html" title="Access to the Subversion (SVN) version control system">Version control</a>
</div>
<div class="menuitem">
<a href="http://forrest.zones.apache.org/" title="Demonstrations and testbed at forrest.zones.apache.org">Demonstrations</a>
</div>
<div class="menuitem">
<a href="gump.html">Gump integration</a>
</div>
<div onclick="SwitchMenu('menu_1.2.7', 'skin/')" id="menu_1.2.7Title" class="menutitle">Planning notes</div>
<div id="menu_1.2.7" class="menuitemgroup">
<div class="menuitem">
<a href="plan/index.html">Overview</a>
</div>
<div class="menuitem">
<a href="plan/internal-xhtml.html">Internal XHTML</a>
</div>
</div>
<div class="menuitem">
<a href="todo.html">Todo</a>
</div>
</div>
<div onclick="SwitchMenu('menu_1.3', 'skin/')" id="menu_1.3Title" class="menutitle">Best Practices and Procedures</div>
<div id="menu_1.3" class="menuitemgroup">
<div class="menuitem">
<a href="howto-dev.html" title="Describes tips and procedures for efficiently developing with Forrest.">Development tips</a>
</div>
<div class="menuitem">
<a href="subversion_bestpractices.html" title="Best practice notes for Subversion">Subversion</a>
</div>
<div class="menuitem">
<a href="documentation_bestpractices.html" title="Best practice notes for documentation">Documentation</a>
</div>
<div class="menuitem">
<a href="howto-howto.html" title="Instructions for writing             a new howto-document">Write a How-to</a>
</div>
<div onclick="SwitchMenu('menu_1.3.5', 'skin/')" id="menu_1.3.5Title" class="menutitle">Committer notes</div>
<div id="menu_1.3.5" class="menuitemgroup">
<div class="menuitem">
<a href="zone.html" title="Notes for committers to manage forrest.zones.apache.org">Zone management</a>
</div>
<div class="menuitem">
<a href="procedures/release/How_to_release.html" title="Instructions on preparing and creating a new Forrest release.">How to release</a>
</div>
<div class="menuitem">
<a href="procedures/How_to_publish_docs.html" title="Instructions on publishing the Forrest             Website">Publishing Forrest documentation</a>
</div>
</div>
</div>
<div onclick="SwitchMenu('menu_1.4', 'skin/')" id="menu_1.4Title" class="menutitle">Proposals</div>
<div id="menu_1.4" class="menuitemgroup">
<div class="menuitem">
<a href="proposal-asf-forrestbot.html">ASF Forrestbot</a>
</div>
</div>
<div id="credit"></div>
<div id="roundbottom">
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
<!--+
  |alternative credits
  +-->
<div id="credit2">
<a href="http://apachecon.com/2007/EU/"><img border="0" title="ApacheCon Europe 2007" alt="ApacheCon Europe 2007 - logo" src="http://apache.org/ads/ApacheCon/2007-europe-125x125.png" style="width: 125px;height: 125px;"></a><a href="http://people.apache.org/calendar.html#200711"><img border="0" title="ApacheCon US 2007" alt="ApacheCon US 2007 - logo" src="http://apache.org/ads/ApacheCon/2007-usa-125x125.png" style="width: 125px;height: 125px;"></a>
</div>
</div>
<!--+
    |end Menu
    +-->
<!--+
    |start content
    +-->
<div id="content">
<div title="Portable Document Format" class="pdflink">
<a class="dida" href="roles.pdf"><img alt="PDF -icon" src="skin/images/pdfdoc.gif" class="skin"><br>
        PDF</a>
</div>
<div class="trail">Font size: 
	          &nbsp;<input value="Reset" class="resetfont" title="Reset text" onclick="ndeSetTextSize('reset'); return false;" type="button">      
	          &nbsp;<input value="-a" class="smallerfont" title="Shrink text" onclick="ndeSetTextSize('decr'); return false;" type="button">
	          &nbsp;<input value="+a" class="biggerfont" title="Enlarge text" onclick="ndeSetTextSize('incr'); return false;" type="button">
</div>
<h1>Project roles</h1>
<div id="minitoc-area">
<ul class="minitoc">
<li>
<a href="#overview">Overview</a>
</li>
<li>
<a href="#roles">The roles</a>
<ul class="minitoc">
<li>
<a href="#pmc-member">PMC Member</a>
</li>
<li>
<a href="#pmc-chair">PMC Chair</a>
</li>
<li>
<a href="#release-manager">Release Manager</a>
</li>
<li>
<a href="#forrest-friday-coordinator">ForrestFriday Coordinator</a>
</li>
<li>
<a href="#issue-tracker-coordinator">Issue Tracker Coordinator</a>
</li>
<li>
<a href="#documentation-coordinator">Documentation Coordinator</a>
</li>
<li>
<a href="#subversion-monitor">Subversion Monitor</a>
</li>
<li>
<a href="#legal-monitor">Legal Monitor</a>
</li>
<li>
<a href="#developer">Developer</a>
</li>
</ul>
</li>
</ul>
</div>
    
<a name="N1000D"></a><a name="overview"></a>
<h2 class="underlined_10">Overview</h2>
<div class="section">
<p>
        There are many tasks that need to be done to keep the project flowing.
        With the tasks being well-defined, the hope is that various people will
        be able to assist to carry out the role and so not rely on a couple of
        individuals to do all the work.
      </p>
<p>
        There are no roles for "leadership" of technical areas. We don't have
        the concept of leadership at the ASF. Rather these are "functional
        roles".
      </p>
<p>
        This is not intended to put pressure on people to force them to do work
        nor "pull their weight". If they do not manage to do a task, then
        someone else will be able to do it. Of course, shared load means a
        healthy project.
      </p>
<p>
        Most roles have minimal tasks and are not too onerous. For example, for
        the "Documentation Coordinator", the only job might be to publish the
        documentation every Friday. Sure it can be done at other times and other
        people can do it too, but at least it gets done once per week.
      </p>
<p>
        Having a person doing a role does not mean that everyone can leave it to
        them and rely on them. Anyone else can dive in and do the job (for
        example, publish the docs twice per week). The more people who are
        familiar with the role, the better. Perhaps the person who is primarily
        doing that role will notice that there can be improvements to how they
        are doing it.
      </p>
<p>
        If a person is dissatisfied with the way a particular role is being done
        then find a way to offer constructive criticism, perhaps by assisting or
        by enhancing the role documentation.
      </p>
<p>
        Most of the roles (except of course the Developer role) can only be
        carried out by PMC members because commit access is required.
      </p>
</div>
    
<a name="N10029"></a><a name="roles"></a>
<h2 class="underlined_10">The roles</h2>
<div class="section">
<p>
        These are the main roles, including the obvious ones. There are probably
        other roles that need to be defined also. Each role should have some
        continually enhanced documentation about it, so that any person can do
        the tasks.
      </p>
<a name="N10032"></a><a name="pmc-member"></a>
<h3 class="underlined_5">PMC Member</h3>
<p>
          This is well-defined in our <a href="guidelines.html">project
          guidelines</a> and in the top-level ASF docs.
        </p>
<a name="N10040"></a><a name="pmc-chair"></a>
<h3 class="underlined_5">PMC Chair</h3>
<p>
          This is well-defined in our <a href="guidelines.html">project
          guidelines</a> and in the top-level ASF docs.
        </p>
<a name="N1004E"></a><a name="release-manager"></a>
<h3 class="underlined_5">Release Manager</h3>
<p>
          Tasks are defined in <a href="procedures/release/How_to_release.html">How to Release
          Forrest</a>
        
</p>
<p>
          Only one person can do this role, although other people can assist.
          There is a lot of knowledge invested in this role. Document it as much
          as possible.
        </p>
<a name="N1005F"></a><a name="forrest-friday-coordinator"></a>
<h3 class="underlined_5">ForrestFriday Coordinator</h3>
<p>
          The tasks are defined in
          <a href="forrest-friday.html">ForrestFriday</a>.
        </p>
<p>
          Each month someone needs to co-ordinate the IRC session and be the
          main channel operator, maintain the logfile and commit it to the
          events SVN.
        </p>
<p>
          Ensure that the session is summarised.
        </p>
<p>
          This role can possibly be done by someone who is not a committer.
          However, a logfile and summary need to be committed to SVN.
        </p>
<a name="N10076"></a><a name="issue-tracker-coordinator"></a>
<h3 class="underlined_5">Issue Tracker Coordinator</h3>
<p>
          Add new Components, e.g. for each new plugin.
        </p>
<p>
          Other general Admin tasks.
        </p>
<p>
          Add new committers to the forrest-administrators group.
        </p>
<p>
          Add/enhance <a href="issues.html">Filters</a>.
        </p>
<p>
          Review issues to ensure that they are properly categorised. This is
          best done as soon as a new issue comes in.
        </p>
<p>
          Review the list of unscheduled issues.
        </p>
<p>
          Each month get the project to review the outstanding major issues that
          are scheduled for the upcoming release.
        </p>
<a name="N10096"></a><a name="documentation-coordinator"></a>
<h3 class="underlined_5">Documentation Coordinator</h3>
<p>
          Publish the documentation at least once per week.
        </p>
<p>
          Various people make edits to the source files, but often the
          documentation is not generated and published. Also people add new
          entries to site-author/status.xml but the changes.html needs to be
          regularly generated from it.
        </p>
<p>
          This role is not actually about doing the documentation. That should
          be up to everyone.
        </p>
<p>
          Generating and publishing the main docs is very easy using a local
          forrestbot: See <a href="procedures/How_to_publish_docs.html">How to publish Forrest
          documentation</a>.
        </p>
<a name="N100AD"></a><a name="subversion-monitor"></a>
<h3 class="underlined_5">Subversion Monitor</h3>
<p>
          Ensure that svn:eol-style settings are "native" for all text files.
        </p>
<p>
          Ensure no line-endings issues.
        </p>
<p>
          Regularly run xml-tidy. (Not yet ready.)
        </p>
<p>
          Regularly run java-tidy. (Not yet ready.)
        </p>
<p>
          There are already some Perl scripts and other tools in the
          "<a href="https://svn.apache.org/repos/private/committers">committers</a>"
          SVN in the "tools" directory.
        </p>
<a name="N100C7"></a><a name="legal-monitor"></a>
<h3 class="underlined_5">Legal Monitor</h3>
<p>
          Regularly run a script which verifies and inserts missing license
          headers to source files.
        </p>
<p>
          Regularly ensure that there are appropriate matching licenses to
          accompany each supporting product that we redistribute.
        </p>
<p>
          This should have continual oversight by the PMC as a whole, but the
          monitoring is something that needs to be done regularly, and
          definitely prior to each release.
        </p>
<p>
          There are already some Perl scripts and other tools in the
          "<a href="https://svn.apache.org/repos/private/committers">committers</a>"
          SVN in the "tools" and "relicense/src/perl" directories.
        </p>
<a name="N100DE"></a><a name="developer"></a>
<h3 class="underlined_5">Developer</h3>
<p>
          The above roles are only for PMC Members. How can the Developers be
          involved? That is easy: do the Developer Role.
        </p>
<p>
          Help out with commenting on the Issue Tracker, fixing the issues,
          contributing to discussion, contributing patches, turning discussion
          into clear documentation.
        </p>
<p>
          This is incredibly valuable and will enable the project to grow. After
          time, you will probably be elected as Committer/PMC Member and when
          comfortable, can take on one of the Project Management Roles.
        </p>
</div>
  
</div>
<!--+
    |end content
    +-->
<div class="clearboth">&nbsp;</div>
</div>
<div id="footer">
<!--+
    |start bottomstrip
    +-->
<div class="lastmodified">
<script type="text/javascript"><!--
document.write("Last Published: " + document.lastModified);
//  --></script>
</div>
<div class="copyright">
        Copyright &copy;
         2002-2007 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
</div>
<!--+
    |end bottomstrip
    +-->
</div>
</body>
</html>
