The Ja-Jakarta Project
Apache Jakarta Project

プロジェクト運営ガイドライン

最終更新: $Date: 2003/11/07 17:32:06 $

このドキュメントは、Ja-Jakartaプロジェクトとそのサブプロジェクトのガイドラインを定義します。 たとえば、メンバーのさまざまな区分と投票権、議論を投票によって解決する方法、及び提案やプロジェクトのコードベースに変更を加える場合に従う手続きについて定義しています。

変更又は追加がある場合は、その内容をgeneralメーリングリストで討論してから、プロジェクト運営委員会の超多数決による承認で承認します。 各サブプロジェクトは、さらに独自のガイドラインを採用してもよいですが、その場合はこのガイドラインを拡張するだけに止め、決して相反してはいけません。

役割と責任

このプロジェクトの人々の想定される役割と責任は、実績に基づいています。 誰でも、どの役割の人も手助けできます。 このプロジェクトに長期間、又は価値ある貢献をおこなった人は、投票権及びソースリポジトリに直接コミットする権利を得ます。

ユーザ (Users)

ユーザは、このプロジェクトのプロダクトを使用する人たちです。 この役割の人たちは、直接コードに貢献したりしませんが、プロダクトを使用し、バグを報告し、機能追加を要求したり、他のユーザを手助けしたり、質問や回答がFAQの作成に使用されたりします。 これは一番重要な部分であり、ユーザが存在しなければ、このプロジェクトの存在意義もありません。

ユーザがコードに貢献したり、ドキュメントのパッチを投稿しはじめた時に、彼らは開発者になります。

開発者 (Developers)

開発者は、コードやドキュメントのパッチを書いたり他の方法でこのプロジェクトに積極的に貢献する人たちです。 ボランティアによる貢献は量の大小に関わらず常に認められます。 あるソースコードファイルに貢献したすべての開発者の名前が、その作者の一覧に追加されます。

コミッタ (Committers)

このプロジェクトのあるサブプロジェクトに頻繁に価値ある貢献をおこなった開発者、及びすでに他のサブプロジェクトに対して頻繁に価値ある貢献をおこなっており、あるサブプロジェクトに対する貢献も期待できる開発者は、そのサブプロジェクトの「コミッタ」に昇格できます。 コミッタは、ソースコードリポジトリに対する書き込み権限を持ち、プロジェクトの将来に関係する事項に関する投票権を得ます。

開発者がコミッタになるためには、他のコミッタから推薦される、又は他のコミッタに自分を推薦してくれるように依頼する必要があります。 ある開発者が推薦されたら、すべてのコミッタによる投票をおこないます。

コミッタ候補者は、推薦してくれるコミッタに次のフォーマットで自分に関する情報を送ってください。

氏名 (ふりがな): 山田 太郎 (やまだ たろう)
メールアドレス: yamada@foo.co.jp
今までの貢献内容と抱負: Tomcat 5のドキュメントの日本語訳に参加しました。
日本語訳に加えて、今後は日本語化作業にも協力したいと思っています。

合意による承認が得られれば、その開発者はコミッタに昇格し、そのサブプロジェクトのソースコードリポジトリへの書き込み権限が与えられます。 書き込み権限を与えられる前に、コミッタはこのガイドラインを読んで理解し、守ることに同意しなければいけません。

また、コミッタが何からの理由で6ヶ月以上活動しなかった、又は活動できないことを申し出た場合、コミッタの地位を失います。 さらに、コミッタが当プロジェクトに対して悪影響を与える行動をした場合は、PMCの超多数決による承認によりコミッタの地位を失うことがあります。

現在のコミッタの一覧及びその担当サブプロジェクトの一覧は、メンバー一覧に掲載します。

リリースマネージャ (Release Manager)

リリースマネージャは、サブプロジェクトでおこなう作業計画を提案し、その管理をおこないます。 リリースマネージャは、サブプロジェクトでおこなう作業ごとに任命されます。

コミッタがリリースマネージャになるためは、他のコミッタから推薦される、又はコミッタ自ら立候補する必要があります。 コミッタの推薦又は立候補があった場合には、すべてのコミッタによる投票をおこないます。 合意による承認が得られれば、そのコミッタはリリースマネージャとなります。 以後は、担当した作業の具体的な作業計画を作成して投票をおこない、可決された場合には,その作業計画の管理をおこないます。

また、リリースマネージャが何らかの理由で活動できなくなったことを申し出た場合は、リリースマネージャを解任され、必要に応じて新しいリリースマネージャを選出します。

システム管理者 (System Administrators)

システム管理者は、オフィシャルサーバの管理をおこなう人たちであり、オフィシャルサーバに対する特権を持ちます。 システム管理者は、PMCによる超多数決による承認に基づいてコミッタから選出されます。

プロジェクト運営委員会 (PMC)

価値ある貢献を頻繁におこなったコミッタは、プロジェクト運営委員会のメンバーに昇格できます。 これは、Ja-Jakartaプロジェクトの正式な管理主体であり、プロジェクト全体の方向性の設定に責任を持ちます。

PMCについて詳しく知りたければ、プロジェクト運営委員会の規則を見てください。 現在のPMCメンバーの一覧は、メンバー一覧に掲載します。

連絡

メンバーがいつでも互いに連絡できるように、いくつかのメーリングリストを運用しています。

メーリングリストに参加する方法は、メーリングリストを見てください。

プロジェクトの活動のために新しいメーリングリストが必要になった場合には、コミッタの合意による承認に基づいて、管理者に作成を依頼できます。

このプロジェクトのメーリングリストは、次のように分類されます。 ただし、ここに挙げられているのは主要なメーリングリストだけであり、他にもコミッタからの依頼に基づいて実験用、一時連絡用のメーリングリストが設置されています。

generalメーリングリスト

これは、このプロジェクトの一般連絡用メーリングリストです。 翻訳作業以外の一般的な事項は、ここで議論します。 誰でも参加できます。

transメーリングリスト

これは、翻訳連絡用メーリングリストです。 翻訳に関する事項は、ここで議論します。 誰でも参加できます。

reportメーリングリスト

これは、このプロジェクト以外の人からの報告を受け取るためのメーリングリストです。 このプロジェクトのWebサイトや成果に問題に問題を見つけた場合には、ここに投稿してください。 誰でも投稿できます。

server-userメーリングリスト

これは、オフィシャルサーバ利用者の連絡用メーリングリストです。 オフィシャルサーバの利用方法に関する事項など、オフィシャルサーバ利用者同士で連絡を取り合いたい場合だけ使用します。 それ以外の議論は、generalメーリングリストでおこないます。 オフィシャルサーバ利用者だけが参加できます。

adminメーリングリスト

これは、サーバ管理者の連絡用メーリングリストです。 投票が必要になる議論は、generalメーリングリストでおこないます。 サーバ管理者だけが参加できます。

pmcメーリングリスト

これは、PMCの連絡用メーリングリストです。 基本的に運営に関する議論は、generalメーリングリストでおこないますが、どうしてもPMCの間だけで連絡を取りたい場合だけ使用します。 PMCメンバーだけが参加できます。

pmc-announceメーリングリスト

これは、PMCからのアナウンスとその討論用メーリングリストです。 generalの唯一の違いは、メールアーカイブをWebで一般公開しないことです。 たとえば、PMCメーリングリストで検討していた話(例、企業との協調など)を、本プロジェクト限定で告知する場合に使用します。

意思決定

意志決定に参加することを開発者すべてに対して奨励しますが、 議決自体は、コミッタの地位を持っている人たちだけで行われます。 つまりこのプロジェクトは、「最低限の人数の実力重視主義(Minimum Threshold Meritocracy)」によって投票を実施します。

アクションアイテム

すべての決定は、「アクションアイテム」を中心におこないます。 大部分のアクションアイテムには、賛成の投票が必要です。 投票は、多数決による承認又は合意による承認のどちらかによっておこなうことができます。

アクションアイテムは以下の項目を含んでいます。

長期計画

長期計画は、グループメンバーがそのプロジェクトでおこなう作業についてのアナウンスであり、投票は不要です。 しかし、それに賛同しない、又はよりよい方法があると考えられる場合には、その意見を表明しなければいけません。

短期計画

短期計画は、ある開発者が特定のドキュメント又はコードに対して行っている作業についてのアナウンスです。 他の開発者は、それを回避したり、自分の変更と調整する必要があるかもしれません。

リリース計画

リリース計画は、リリースマネージャが、すべての開発者にリリース予定を知らせるためにおこないます。 リリース計画は、リリースマネージャが投票を呼びかけます。 各事項に対しては、多数決による承認が、プロダクトに関する変更を伴う場合には、合意による承認が必要です。

パブリックリリース

リリースマネージャが完成したと判断した時には、リリースマネージャがパブリックリリースに関する投票の呼び掛けを行います。 パブリックリリースをおこなうためには、多数決による承認が必要です。 リリースマネージャは、パブリックリリースをおこなう前に、投票結果を集計しなければいけません。

変更

プロジェクトの変更には、合意による承認が必要です。 これは、各コミッタが呼びかけることができます。

アクションアイテムの投票

アクションアイテムの投票は、次のようにおこないます。 投票者は、賛成か反対だけでなく、その作業をおこなうかどうかについての意志も示さなければいけません。

コミッタ又はリリースマネージャは、メーリングリストでアクションアイテムの投票を呼び掛けることができます。 投票を呼び掛けるメッセージは、題名が"[投票]"で始まり、本文に投票のアクションアイテムの要約を一行づつ書きます。

アクションアイテムの投票は、次の4つに分類されます。

+1 「アクションアイテムを実行するべきで、手伝います。」
+0 「棄権」又は「アクションアイテムを支持しますが、手伝えません。」
-0 「棄権」又は「アクションアイテムを支持しませんが、別の案も手伝えません。」
-1 「アクションアイテムを実行すべきではありません。私はその根拠を説明又は別の案を提案します。」

アクションアイテムの承認には、次の2種類のどちらかが必要です。

合意による承認
合意の表明が必要なアクションアイテムは、少なくとも3票の+1の投票と反対票がないことが必要です。

多数決による承認
多数決を必要とするアクションアイテムは、少なくとも3票の+1の投票-1の投票数より、+1の投票数が多くなければいけません。

誰かが-1を投票するまで待つ必要はありませんが、遅れて投票された場合でも考慮し、投票結果を再集計なければいけません。 なお、予定日時が決まっているような場合には、投票期限を設定できます。

開発者とコミッタは、誰でも投票できます。 ただし、有効票となるのは、投票権を持つコミッタ以上に限られます。

投票結果

アクションアイテムに関して-1の投票を受け取った場合には、"[投票結果]"から始まる題名のメッセージに、投票結果をまとめて投稿するまでは、承認されたと見なされません。 投票をおこなったコミッタは、5日以内に結果を投票してください。

提案方法

提案は正式なアクションアイテムでありませんが、提案のメッセージは、題名が"[提案]"から始まります。 正式な投票をおこなう前に、提案をおこなうことを強く奨励します。 提案に関してコメントがあったら、それを反映して、投票のドキュメントとして再投稿できます。

開発者リストに投稿されるメッセージの大部分は、短期計画か長期計画のどちらかを含んでいますが、長期計画は提案の形式でおこなわれます。

他の事項に関する投票

アクションアイテム以外の事項に関する投票にも、傾向を知るために同様な方法が使用されます。

+1 「賛成」又は「同意」
+0 「保留」又は「意見なし」
-0 「保留」又は「不確実」
-1 「反対」又は「同意できない」
プロジェクト運営委員会の規則
背景

Ja-Jakartaプロジェクト運営委員会 (PMC)は、2000年9月にMLの一部のアクティブメンバーから組織しました。

役割

PMCは、Ja-Jakartaプロジェクトの戦略的指針と成功に関して責任を負います。 プロジェクトの繁栄追求と全ての指揮の確実な実施がこの管理機構には求められます。 全ての開発計画、ボトルネックの緩和、争いの解決、 そしてプロジェクトの包括的な技術的成功に取り組まなければなりません。

義務

PMCは、次の項目に関して責任を持たねばいけません。

  • プロジェクトの問題の積極的な討論、戦略的方向付け、及び進行の促進
  • 新しいサブプロジェクトの考察と承認
  • 活動しなくなったサブプロジェクトの撤退とコミッタの解任
  • サブプロジェクトの投票と拒否権に関する扱いにくい意義の調停
  • プロジェクトのWebサイト、メーリングリスト、コードリポジトリ、及び関連サービスのセキュリティと信頼性
  • プロジェクト及びサブプロジェクトに関する法的問題
  • プロジェクト及びサブプロジェクトの範囲の整備
ミーティング

PMCは、可能な限りgeneralメーリングリストで仕事をするべきです。 しかし、慎重に処理するべき仕事は、非公開のPMCメーリングリストでおこなってもかまいません。 PMCは、そのメンバーのほとんどが参加する定期的なミーティングを開催することもできます。 これらのミーティングは、遠隔会議や、PMCが効果的だと考えた他の方法でオンラインで開催できます。 PMCは、generalメーリングリスト又はpmc-announceメーリングリストに、この議事録を報告しなければいけません。

投票

PMCメンバーだけが、PMCの投票の提案や、PMCの議題について拘束力のある投票をおこなうことができます。 PMCメンバーに対する投票の呼びかけは、PMC議長がおこないます。

PMCの投票権は、現在のPMCのメンバーが持ちます。 すべてのPMCメンバーは、投票を呼び掛けられた時に、正式投票するか保留することが求められます。 継続的に投票をおこなわなかった、又は参加しなかったPMCメンバーは、PMCの地位を失うことがあります。

大部分のPMCの行動には、超多数決による承認 (super-majority vote)が必要です。 これでは、提案された行動に対して、現在のPMCメンバーの3/4以上が賛成しなければいけません。 現在のPMCメンバー数の3/4の計算結果が整数にならない時には、その結果を最も近い整数に丸めます(.5以上は切り上げます)。

一部のPMCの行動は、単純多数決による承認が必要です。 これでは、提案された行動に対して、現在のPMCメンバーの過半数が賛成しなければいけません。

議長

PMC議長の任期は一年間です。 議長の選出は、generalメーリングリスト上か、PMCメンバーの大部分が参加するミーティング上でおこないます。 議長は、PMCメンバーの単純多数決による承認によって選出されます。 すべてのPMCメンバーは、投票又は保留しなければいけません。 もし、投票結果が同数だった場合には、次にgeneralメーリングリストでサブプロジェクトのコミッタを含めた多数決による承認をおこなって決定します。

議長は、いつでもPMCメンバーの辞職を伴わずに、議長を辞職できます。 議長は、任期を終えた後に再選されることもできます。 任期中の議長は、PMCメンバーの地位を保持します。

会計係

PMC会計係の任期は1年です。選出方法は議長に準じます。 会計係は、Ja-Jakartaプロジェクトにおける金銭の管理を担当します。 主な実務は次の通りです。

  • 銀行口座に対する金銭の出納管理。
  • 出納は適宜記帳し、コミッタが閲覧可能な状態を保つ。
  • 納税実務(必要のある場合のみ)。
  • プロジェクトメンバー全員に対する収支報告(年に1度・概要のみ・ PMC事前承認必要・メーリングリストで行う)
厳正かつ慎重に金銭を扱うことが会計係には求められます。 会計係は、PMCメンバーの辞職を伴わずにいつでも辞職できます。 その場合、後任者が決まるまでの期間は任期とみなします。 また、任期を終えた後に再選されることもできます。 任期中の会計係は、PMCメンバーの地位を保持します。

メンバーの資格

PMCメンバーには、任期がありません。 現在のPMCメンバーの一覧は、メンバー一覧に掲載します。 すべてのPMCメンバーは、一つ以上のJa-Jakartaプロジェクトのアクティブなコミッタでなければいけません。 できれば、より多くのJa-Jakartaプロジェクト、そしてJakartaプロジェクトのコミッタであるとよいでしょう。

新規メンバーの追加

PMCメンバーは、サブプロジェクトのコミッタを新しいPMCメンバーに推薦できます。 候補者は、PMCに参加することには常時で持続的な貢献が必要になることを認識して、軽く考えないようにしなければいけません。 超多数決による承認で認められれば、候補者はPMCメンバーになります。

メンバーの辞任と解任

PMCメンバーは、いつでも辞職できます。 また、議長又は他のメンバーを、PMCメンバーによる超多数決による承認に基づいて解任できます。

サブプロジェクトの作成

PMCメンバーは、新しいサブプロジェクトの作成を提案できます。 提案は、そのプロジェクトを起こす理由と、コミッタの初期メンバーを同定できるような、そのプロジェクトの範囲を含んでいなければいけません。 新しいサブプロジェクトの作成は、PMCの超多数決による承認を得る必要があります。 一人以上のPMCメンバーが新しいサブプロジェクトのコミッタになることが望ましいですが、必須ではありません。

一般メンバーの解任

プロジェクト又はプロジェクトメンバーに悪影響を与える行為をおこない、及びその事実が指摘されても改善の見込みがない一般メンバー(システム管理者、リリースマネージャ、コミッタ、又は開発者など)に対しては、PMCメンバーの超多数決による承認によって解任できます。 これにはMLからの退会なども含みます。


Copyright © 1999-2004, The Ja-Jakarta Project