プロジェクトの役割

Android オープンソース プロジェクト(AOSP)には、さまざまな役割を担う個人が含まれます。Android のプロダクト マネジメント、主要なフレームワークとプラットフォームのエンジニアリング プロセスについては、Google が担当しています。ただし、AOSP では、Google だけでなく、あらゆる関係者からの貢献を想定しています。このページでは、プロジェクトに参加する関係者が担当する役割について説明します。

Android に関する情報を探したり、Android の開発に貢献したりすることに関心をお持ちであれば、誰でも AOSP リソースを使用できます。メーリング リストへの参加、質問、パッチの貢献、バグの報告、送信されたパッチの確認、ツールの使用も行えます。Android コードの使用を開始するには、貢献をご覧ください。

コントリビューター

コントリビューターとは、AOSP のソースコードに対して、貢献を行う人を指します。コントリビューターには、Google や他の企業の従業員だけでなく、企業に所属しない個人開発者もなることができます。コントリビューターには特に区分はありません。全員が同じツール(git、Repo、Gerrit)を使用します。コードレビューの手順も同じで、コードスタイルにも同じ要件が求められます。

デベロッパー

デベロッパーは、Android デバイスで動作するアプリケーションを作成します。デベロッパーとコントリビューターが持つスキルはほぼ同じことが多いですが、デベロッパーは貢献を行うよりも、プラットフォームを使用することの方が多く、AOSP からすればデベロッパーはユーザーになります。厳密には、デベロッパーは AOSP における個別の役割ではありませんが、頻繁に言及されるものです。

検証者

検証者は、変更のリクエストに対してテストを行います。品質の高いコードを大量にプロジェクトに送信すると、プロジェクト リーダーから検証者になるよう依頼される場合があります。

承認者

承認者には、AOSP の中でも経験が豊富で、プロジェクトに対して技術面または設計面で優れた貢献のあったメンバーが選ばれます。承認者は、コードレビューの際に、変更を含めるか除外するかを決定します。承認者の選出は、プロジェクト リーダー(通常は Google の従業員)によって行われます。特定のプロジェクトに対して、専門性を発揮した検証者をリーダーに昇格させる場合もあります。

プロジェクト リーダー

Android は多数のサブプロジェクトで構成されています。各サブプロジェクトは、Git リポジトリ内の個別の Git ファイルとして確認できます。プロジェクト リーダーは、個々の Android プロジェクトのエンジニアリングを監督するシニア コントリビューターです。通常、これらのプロジェクト リーダーは Google の従業員で、個々のプロジェクトにおいて、次の内容を担当します。

  • プロジェクトのロードマップ、開発、リリース サイクル、バージョニング、品質保証(QA)など、プロジェクトの技術面をすべて統括します。
  • 予定されている Android プラットフォームのリリースに合わせて、QA によるテストが期日までにプロジェクトで確実に行われるようにします。
  • 送信されたパッチについて、検証者と承認者を指定します。
  • 変更をレビューする際には、公平で偏りのない姿勢で臨みます。技術的なメリットと Android の戦略との整合性を考慮して、パッチを承認または却下します。
  • 変更内容を適宜確認し、変更を承認しなかった場合は、十分なコミュニケーションに努めます
  • 必要に応じて、プロジェクトのウェブサイトを維持管理して、プロジェクトに固有の情報やドキュメントを掲載します。
  • 技術面でな競合の問題を解決するためのファシリテーターとして行動します。
  • プロジェクトの代表者となり、プロジェクトに関する質問の連絡先を務めます。