blob: 451c821d991593dc3bbae76db64cb9a7e7552a98 [file] [log] [blame]
Dan Morrill3cd199f2009-11-06 14:04:16 -08001page.title=People and Roles
2doc.type=source
3@jd:body
Dan Morrill3cd199f2009-11-06 14:04:16 -08004<p>The Android Open Source Project (AOSP) includes individuals working in a variety
5of roles. As noted in <a href="{@docRoot}about/philosophy.html">Our
Dan Morrill55de6812009-11-15 15:46:36 -08006Philosophy</a>, Google is responsible for Android product management
7and the engineering process for the core framework and platform; however,
8the project considers contributions from any source, not just Google. This
9page describes the kinds of roles that interested parties can take on.</p>
Dan Morrill3cd199f2009-11-06 14:04:16 -080010<p>Anyone who is interested in exploring and contributing to Android can use the
11Android Open Source Project resources. Anyone can join the mailing lists, ask
12questions, contribute patches, report bugs, look at submitted patches, and use
13the tools. To get started with the Android code, see <a
14href="{@docRoot}source/index.html">Get Involved</a>.</p>
15
Dan Morrill3cd199f2009-11-06 14:04:16 -080016<h2>Contributor</h2>
17<p>A "Contributor" is anyone making contributions to the AOSP source code,
Dan Morrill55de6812009-11-15 15:46:36 -080018including both employees of Google or other companies, as well as
Dan Morrill3cd199f2009-11-06 14:04:16 -080019external developers who are contributing to Android on their own behalf.
Dan Morrill55de6812009-11-15 15:46:36 -080020There is no distinction between Contributors who are employed by
21Google, and those who are not: all engineers use the same git/gerrit tools,
Dan Morrill3cd199f2009-11-06 14:04:16 -080022follow the same code review process, and are subject to the same requirements
23on code style and so on.</p>
24<p/>
25
26<h2>Developer</h2>
27<p>A "Developer" is an engineer writing applications that run on Android
28devices. There is, of course, no difference in skillset between a "Developer"
Dan Morrill55de6812009-11-15 15:46:36 -080029and a "Contributor"; AOSP simply uses "Developer" to help identify our audience.
Dan Morrill3cd199f2009-11-06 14:04:16 -080030Since the key purpose of Android is to cultivate an open development platform,
Dan Morrill55de6812009-11-15 15:46:36 -080031"Developers" are one of the key customers of the Android platform. As such, we
Dan Morrill3cd199f2009-11-06 14:04:16 -080032talk about them a lot, though this isn't technically a separate role in the
33AOSP <i>per se.</i></p>
34<p/>
35
36<h2>Verifier</h2>
37<p>"Verifiers" are responsible for testing change requests. After individuals
38have submitted a significant amount of high-quality code to the project, the
39Project Leads might invite them to become Verifiers.</p><p><i>Note: at this
40time, generally Verifiers are the same as Approvers.</i></p>
41<p/>
42
43<h2>Approver</h2>
44"Approvers" are experienced members of the project who have demonstrated their
45design skills and have made significant technical contributions to the
46project. In the code-review process, an Approver decides whether to include or
Dan Morrill55de6812009-11-15 15:46:36 -080047exclude a change. Project Leads (who are typically employed by Google) choose
Dan Morrill3cd199f2009-11-06 14:04:16 -080048the Approvers, sometimes promoting to this position Verifiers who have
49demonstrated their expertise within a specific project.</p>
50<p/>
51
52<h2>Project Leads</h2>
53<p>Android consists of a number of sub-projects; you can see these in the git
Dan Morrill55de6812009-11-15 15:46:36 -080054repository, as individual .git files. Tech Leads are senior Contributors who
55oversee the engineering for individual Android projects. Typically these tech
56leads will be Google employees. A Project Lead for an individual project is
57responsible for the following:</p>
Dan Morrill3cd199f2009-11-06 14:04:16 -080058<ul>
59 <li>Lead all technical aspects of the project; for example, the project
60 roadmap, development, release cycles, versioning, and QA.</li>
61 <li>Ensure that the project is QA-ed in time for scheduled Android platform
62 releases.</li>
63 <li>Designate Verifiers and Approvers for submitted patches.</li>
64 <li>Be fair and unbiased while reviewing changes. Accept or reject patches
65 based on technical merit and alignment with the Android platform.</li>
66 <li>Review changes in a timely manner and make best efforts to communicate
67 when changes are not accepted.</li>
68 <li>Optionally maintain a web site for the project for information and
69 documents specific to the project.</li>
70 <li>Act as a facilitator in resolving technical conflicts.</li>
71 <li>Be the public face for the project and the go-to person for questions
72 related to the project.</li>
73</ul>